Finite State Machine (FMS) controller. More...
#include <finite_state_machine.h>
Public Member Functions | |
FiniteStateMachine (const FiniteStateMachine &)=delete | |
FiniteStateMachine & | operator= (const FiniteStateMachine &)=delete |
void | Initialize (std::initializer_list< MachineState< T > * > states, T entrypoint) |
Initalize the FSM. More... | |
T | GetState () const noexcept |
Get the FSM current state. More... | |
MachineState< T > * | GetMachineState () const |
Get the current machine state object. More... | |
void | Transit (T previousState, T nextState) override |
Tranit from the current state to a new state. More... | |
Finite State Machine (FMS) controller.
FMS controller is responsible for transiting between added states to the machine
T | State enumeration type |
|
inline |
Get the current machine state object.
|
inlinenoexcept |
Get the FSM current state.
|
inline |
Initalize the FSM.
states | Machine state list |
entrypoint | Entrypoint state to initialize the FSM |
|
inlineoverridevirtual |
Tranit from the current state to a new state.
previousState | Previous state that the FSM is transiting from |
nextState | Next state that the FSM is transiting to |
Implements ara::com::helper::AbstractStateMachine< T >.