![]() |
OS
v1.8.0
Documentation
|
The state callback argument to handle the state-machine dynamics and provide execution information. Some methods can be written to perform state-transitions. More...
#include <fsm.hpp>
Public Member Functions | |
| void | nextState (state &s, historyMode m=historyMode::NO_HISTORY) noexcept |
| Produce a transition to the desired state. | |
| void | startState (state &s) noexcept |
Set the nested initial state ( sub-state ). This The application writer should change this field to set the initial transition if the current state is a parent(or composite state). Using this method only takes effect when the state is executed under the signalID::SIGNAL_START signal. | |
| bool | timeoutSet (const index_t i, const qOS::duration_t t) noexcept |
| Set the time for the selected built-in timeout inside the target FSM. | |
| bool | timeoutStop (const index_t i) noexcept |
| Stop the time count for the selected built-in timeout. | |
| state & | thisState (void) noexcept |
| Get a reference to state being evaluated. | |
| stateMachine & | thisMachine (void) noexcept |
| Gets a reference to the state machine in which this state is contained. | |
| signalID | signal (void) const noexcept |
| Get the Signal ID currently being evaluated for this state. | |
| status | lastStatus (void) const noexcept |
| The last state return status. | |
Public Attributes | |
| void * | SignalData |
| void * | Data |
| void * | StateData |
The state callback argument to handle the state-machine dynamics and provide execution information. Some methods can be written to perform state-transitions.
|
inlinenoexcept |
The last state return status.
|
inlinenoexcept |
Produce a transition to the desired state.
| [in] | s | The state object. |
| [in] | m | The transition to history mode. This argument can be ignored ( default = sm::historyMode::NO_HISTORY ). |
|
inlinenoexcept |
Get the Signal ID currently being evaluated for this state.
|
inlinenoexcept |
Set the nested initial state ( sub-state ). This The application writer should change this field to set the initial transition if the current state is a parent(or composite state). Using this method only takes effect when the state is executed under the signalID::SIGNAL_START signal.
| [in] | s | The state object. |
|
inlinenoexcept |
Gets a reference to the state machine in which this state is contained.
|
inlinenoexcept |
Get a reference to state being evaluated.
|
noexcept |
Set the time for the selected built-in timeout inside the target FSM.
| [in] | i | The index of the requested timeout (0, 1, 2 ... (Q_FSM_MAX_TIMEOUTS-1) ) |
| [in] | t | The specified time given in milliseconds. |
true on success, otherwise returns false.
|
noexcept |
Stop the time count for the selected built-in timeout.
| [in] | i | The index of the timeout (0, 1, 2 ... (Q_FSM_MAX_TIMEOUTS-1) ) |
true on success, otherwise returns false. | void* qOS::sm::handler_t::Data |
The user storage pointer. If the FSM its running as a task, this will point to the event_t structure
| void* qOS::sm::handler_t::SignalData |
The data with which the signal is associated
| void* qOS::sm::handler_t::StateData |
The state user storage pointer