Loading...
Searching...
No Matches
etl::ifsm_state Class Referenceabstract

Interface class for FSM states. More...

`#include <fsm.h>`

## Public Member Functions

etl::fsm_state_id_t | get_state_id () const
| Gets the id for this state.
void | add_child_state (etl::ifsm_state &state)
template<typename TSize>
void | set_child_states (etl::ifsm_state **state_list, TSize size)

## Protected Member Functions

| ifsm_state (etl::fsm_state_id_t state_id_)
| Constructor.
virtual | ~ifsm_state ()
| Destructor.
etl::fsm & | get_fsm_context () const

## Friends

class | etl::fsm
| Allows ifsm_state functions to be private.
class | etl::hfsm
template<typename, typename, etl::fsm_state_id_t, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename, typename>
class | etl::fsm_state

## Additional Inherited Members

Static Public Attributes inherited from etl::private_fsm::ifsm_state_helper< T >
static ETL_CONSTANT fsm_state_id_t | No_State_Change = etl::integral_limits<fsm_state_id_t>::max
static ETL_CONSTANT fsm_state_id_t | Pass_To_Parent = No_State_Change - 1U
static ETL_CONSTANT fsm_state_id_t | Self_Transition = No_State_Change - 2U

## Detailed Description

Interface class for FSM states.

## Member Function Documentation

## add_child_state()

void etl::ifsm_state::add_child_state | ( | etl::ifsm_state & | state | ) |

inline

Adds a child to this state. Only of use when part of an HFSM.

## set_child_states()

template<typename TSize>

void etl::ifsm_state::set_child_states | ( | etl::ifsm_state ** | state_list,
|  | TSize | size )

inline

Adds a list of child states. Only of use when part of an HFSM.

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

- include/etl/fsm.h