SST
13.1.0
Structural Simulation Toolkit
|
#include <exit.h>
Public Member Functions | |
Exit (int num_threads, bool single_rank) | |
Create a new ExitEvent. More... | |
bool | refInc (ComponentId_t, uint32_t thread) |
Increment Reference Count for a given Component ID. | |
bool | refDec (ComponentId_t, uint32_t thread) |
Decrement Reference Count for a given Component ID. | |
unsigned int | getRefCount () |
SimTime_t | getEndTime () |
void | setEndTime (SimTime_t time) |
SimTime_t | computeEndTime () |
void | execute (void) override |
Function which will be called when the time for this Activity comes to pass. | |
void | check () |
void | print (const std::string &header, Output &out) const override |
unsigned int | getGlobalCount () |
Public Member Functions inherited from SST::Activity | |
void | setDeliveryTime (SimTime_t time) |
Set the time for which this Activity should be delivered. | |
SimTime_t | getDeliveryTime () const |
Return the time at which this Activity will be delivered. | |
int | getPriority () const |
Return the Priority of this Activity. | |
void | setOrderTag (uint32_t tag) |
Sets the order tag. | |
uint32_t | getOrderTag () const |
Return the order tag associated with this activity. | |
uint64_t | getQueueOrder () const |
Returns the queue order associated with this activity. | |
std::string | toString () const override |
Get a string represenation of the event. More... | |
Public Member Functions inherited from SST::Core::MemPoolItem | |
void * | operator new (std::size_t size) noexcept |
Allocates memory from a memory pool for a new Activity. | |
void | operator delete (void *ptr) |
Returns memory for this Activity to the appropriate memory pool. More... | |
Public Member Functions inherited from SST::Core::Serialization::serializable | |
virtual const char * | cls_name () const =0 |
virtual uint32_t | cls_id () const =0 |
virtual std::string | serialization_name () const =0 |
Additional Inherited Members | |
Static Public Attributes inherited from SST::Core::Serialization::serializable | |
static constexpr uint32_t | NullClsId = std::numeric_limits<uint32_t>::max() |
Protected Types inherited from SST::Core::Serialization::serializable | |
enum | cxn_flag_t { ConstructorFlag } |
Protected Member Functions inherited from SST::Action | |
void | endSimulation () |
Called to signal to the Simulation object to end the simulation. | |
void | endSimulation (SimTime_t end) |
Protected Member Functions inherited from SST::Activity | |
void | setPriority (uint64_t priority) |
Set the priority of the Activity. | |
std::string | getDeliveryTimeInfo () const |
Gets the delivery time info as a string. More... | |
void | serialize_order (SST::Core::Serialization::serializer &ser) override |
ImplementVirtualSerializable (SST::Activity) void setQueueOrder(uint64_t order) | |
Set a new Queue order. | |
Static Protected Member Functions inherited from SST::Core::Serialization::serializable | |
static void | serializable_abort (uint32_t line, const char *file, const char *func, const char *obj) |
SST::Exit::Exit | ( | int | num_threads, |
bool | single_rank | ||
) |
Create a new ExitEvent.
sim | - Simulation Object |
single_rank | - True if there are no parallel ranks |
Exit needs to register a handler during constructor time, which requires a simulation object. But the simulation class creates an Exit object during it's construction, meaning that Simulation::getSimulation() won't work yet. So Exit is the one exception to the "constructors shouldn't take simulation pointers" rule. However, it still needs to follow the "classes shouldn't contain pointers back to Simulation" rule.
References SST::Activity::setPriority().