58 const std::string &_cause,
61 cause(_cause), code(c), repeat(r)
68 return "global simulation loop exit";
87 "exitSimLoop called with a delay and auto serialization. This is "
88 "currently unsupported.");
95 :
Event(Sim_Exit_Pri, IsExitEvent),
96 cause(_cause), code(c), repeat(r)
113 return "simulation loop exit";
140 :
Event(Sim_Exit_Pri), cause(_cause), downCounter(counter)
162 return "counted exit";
void serialize(CheckpointOut &cp) const override
Serialize an object.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
const char * description() const override
Return a C string describing the event.
void serialize(CheckpointOut &cp) const override
Serialize an object.
virtual const char * description() const
#define UNSERIALIZE_SCALAR(scalar)
Tick curTick()
The current simulated tick.
uint64_t Tick
Tick count type.
CountedExitEvent(const std::string &_cause, int &_downCounter)
#define warn_if(cond,...)
Conditional warning macro that checks the supplied condition and only prints a warning if the conditi...
const char * description() const override
Return a C string describing the event.
#define SERIALIZE_SCALAR(scalar)
The main global event class.
void exitSimLoop(const std::string &message, int exit_code, Tick when, Tick repeat, bool serialize)
Schedule an event to exit the simulation loop (returning to Python) at the end of the current cycle (...
std::ostream CheckpointOut
void serialize(CheckpointOut &cp) const override
Tick simQuantum
Simulation Quantum for multiple eventq simulation.
void unserialize(CheckpointIn &cp) override
Unserialize an object.