SST  14.1.0
StructuralSimulationToolkit
SST::Activity Class Referenceabstract

Base class for all Activities in the SST Event Queue. More...

#include <activity.h>

Inheritance diagram for SST::Activity:
SST::Core::MemPoolItem SST::Core::Serialization::serializable SST::Core::Serialization::serializable_base SST::Action SST::Event SST::CheckpointAction SST::Clock SST::Exit SST::InteractiveAction SST::OneShot SST::SimulatorHeartbeat SST::StopAction SST::SyncManager SST::CoreTest::MessageMesh::MessageEvent SST::CoreTestCheckpoint::coreTestCheckpointEvent SST::CoreTestComponent::coreTestComponentEvent SST::CoreTestMemPoolTest::MemPoolTestEvent1 SST::CoreTestMemPoolTest::MemPoolTestEvent2 SST::CoreTestMemPoolTest::MemPoolTestEvent3 SST::CoreTestMemPoolTest::MemPoolTestEvent4 SST::CoreTestMemPoolTest::MemPoolTestPerformanceEvent SST::CoreTestMessageGeneratorComponent::coreTestMessage SST::EmptyEvent SST::Interfaces::StringEvent SST::Interfaces::TestEvent SST::NullEvent

Data Structures

class  greater
 Class to use as the greater than operator for STL functions or sorting algorithms (used if you want to sort opposite the natural soring order). More...
 
class  less
 Class to use as the less than operator for STL functions or sorting algorithms. More...
 

Public Member Functions

virtual void execute (void)=0
 Function which will be called when the time for this Activity comes to pass. More...
 
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.
 
virtual bool isEvent ()
 
virtual bool isAction ()
 
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...
 
virtual void print (const std::string &header, Output &out) const
 
- Public Member Functions inherited from SST::Core::Serialization::serializable_base
virtual const char * cls_name () const =0
 
virtual uint32_t cls_id () const =0
 
virtual std::string serialization_name () const =0
 

Protected Member Functions

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.
 

Additional Inherited Members

- Static Public Attributes inherited from SST::Core::Serialization::serializable
static constexpr uint32_t NullClsId = std::numeric_limits<uint32_t>::max()
 
- Static Public Attributes inherited from SST::Core::Serialization::serializable_base
static constexpr uint32_t NullClsId = std::numeric_limits<uint32_t>::max()
 
- Protected Types inherited from SST::Core::Serialization::serializable_base
enum  cxn_flag_t { ConstructorFlag }
 
- Static Protected Member Functions inherited from SST::Core::Serialization::serializable_base
static void serializable_abort (uint32_t line, const char *file, const char *func, const char *obj)
 

Detailed Description

Base class for all Activities in the SST Event Queue.

Member Function Documentation

◆ execute()

virtual void SST::Activity::execute ( void  )
pure virtual

Function which will be called when the time for this Activity comes to pass.

Implemented in SST::NullEvent, SST::SyncManager, SST::OneShot, SST::Exit, SST::CheckpointAction, SST::SimulatorHeartbeat, SST::StopAction, and SST::InteractiveAction.

◆ getDeliveryTimeInfo()

std::string SST::Activity::getDeliveryTimeInfo ( ) const
inlineprotected

Gets the delivery time info as a string.

To be used in inherited classes if they'd like to overwrite the default print or toString()

References getOrderTag(), getPriority(), and getQueueOrder().

Referenced by toString().

◆ toString()

std::string SST::Activity::toString ( ) const
inlineoverridevirtual

Get a string represenation of the event.

The default version will just use the name of the class, retrieved through the cls_name() function inherited from the serialzable class, which will return the name of the last class to call one of the serialization macros (ImplementSerializable(), ImplementVirtualSerializable(), or NotSerializable()). Subclasses can override this function if they want to add additional information.

Reimplemented from SST::Core::MemPoolItem.

Reimplemented in SST::CoreTestMemPoolTest::MemPoolTestEvent4, SST::Clock, SST::CoreTestMemPoolTest::MemPoolTestEvent3, SST::CoreTestMemPoolTest::MemPoolTestEvent2, and SST::CoreTestMemPoolTest::MemPoolTestEvent1.

References getDeliveryTimeInfo().


The documentation for this class was generated from the following file: