#include <exit.h>
Public Member Functions | |
Exit (Simulation *sim, TimeConverter *period, bool single_rank) | |
Create a new ExitEvent. | |
bool | refInc (ComponentId_t) |
Increment Reference Count for a given Component ID. | |
bool | refDec (ComponentId_t) |
Decrement Reference Count for a given Component ID. | |
void | execute (void) |
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 |
Generic print-print function for this Activity. | |
Friends | |
class | boost::serialization::access |
Causes the simulation to halt
SST::Exit::Exit | ( | Simulation * | sim, | |
TimeConverter * | period, | |||
bool | single_rank | |||
) |
Create a new ExitEvent.
sim | - Simulation Object | |
period | - Period upon which to check for exit status | |
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().
void SST::Exit::execute | ( | void | ) | [virtual] |
Function which will be called when the time for this Activity comes to pass.
Implements SST::Activity.
References SST::Simulation::getCurrentSimCycle(), SST::TimeConverter::getFactor(), SST::Simulation::getSimulation(), and SST::Simulation::insertActivity().
void SST::Exit::print | ( | const std::string & | header, | |
Output & | out | |||
) | const [inline, virtual] |
Generic print-print function for this Activity.
Subclasses should override this function.
Reimplemented from SST::Action.
References SST::Activity::getDeliveryTime(), SST::Activity::getPriority(), and SST::Output::output().