$darkmode
engine::SimulationMachine Class Reference
Inheritance diagram for engine::SimulationMachine:
Collaboration diagram for engine::SimulationMachine:

Public Member Functions

void run (SimulationContext &ctx)
 
void run_machine (StateId initial, SimulationContext &ctx)
 
void pause ()
 
void resume ()
 
void stop ()
 
void succeed ()
 
void fail ()
 
void reset ()
 
void abort ()
 
StateId handle_interrupt (StateId nominal, StateId interrupt, SimulationContext &ctx) override
 
 DEFINE_STATE (CONNECT, Connect)
 
 DEFINE_STATE (START, Start)
 
 DEFINE_STATE (STEP_BEGIN, StepBegin)
 
 DEFINE_STATE (STEP_SIMULATORS, StepSimulators)
 
 DEFINE_STATE (STEP_CONTROLLERS, StepControllers)
 
 DEFINE_STATE (STEP_END, StepEnd)
 
 DEFINE_STATE (PAUSE, Pause)
 
 DEFINE_STATE (RESUME, Resume)
 
 DEFINE_STATE (SUCCESS, Success)
 
 DEFINE_STATE (FAIL, Fail)
 
 DEFINE_STATE (ABORT, Abort)
 
 DEFINE_STATE (STOP, Stop)
 
 DEFINE_STATE (RESET, Reset)
 
 DEFINE_STATE (KEEP_ALIVE, KeepAlive)
 
 DEFINE_STATE (DISCONNECT, Disconnect)
 

Friends

void to_json (cloe::Json &j, const SimulationMachine &m)
 

Member Function Documentation

◆ handle_interrupt()

StateId engine::SimulationMachine::handle_interrupt ( StateId  nominal,
StateId  interrupt,
SimulationContext ctx 
)
inlineoverridevirtual

Handle an interrupt.

This method will be called between states, with the nominal state that would have occurred being passed along.

Implements engine::StateMachine< State< SimulationMachine, SimulationContext >, SimulationContext >.

Here is the call graph for this function:

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