|
Embedded Template Library 1.0
|
#include <hfsm.h>
Public Member Functions | |
| hfsm (etl::message_router_id_t id) | |
| Constructor. | |
| void | start (bool call_on_enter_state=true) ETL_OVERRIDE |
| virtual void | reset (bool call_on_exit_state=false) ETL_OVERRIDE |
Public Member Functions inherited from etl::fsm | |
| fsm (etl::message_router_id_t id) | |
| Constructor. | |
| template<typename TSize > | |
| void | set_states (etl::ifsm_state **p_states, TSize size) |
| void | receive (const etl::imessage &message) ETL_OVERRIDE |
| Top level message handler for the FSM. | |
| etl::fsm_state_id_t | transition_to (etl::fsm_state_id_t new_state_id) |
| Invoke a state transition. | |
| bool | accepts (etl::message_id_t) const ETL_OVERRIDE |
| etl::fsm_state_id_t | get_state_id () const |
| Gets the current state id. | |
| ifsm_state & | get_state () |
| Gets a reference to the current state interface. | |
| const ifsm_state & | get_state () const |
| Gets a const reference to the current state interface. | |
| bool | is_started () const |
| Checks if the FSM has been started. | |
| ETL_DEPRECATED bool | is_null_router () const ETL_OVERRIDE |
| bool | is_producer () const ETL_OVERRIDE |
| bool | is_consumer () const ETL_OVERRIDE |
| fsm (etl::message_router_id_t id) | |
| Constructor. | |
| template<typename TSize > | |
| void | set_states (etl::ifsm_state **p_states, TSize size) |
| Set the states for the FSM From a pointer to etl::ifsm_state and size. | |
| void | receive (const etl::imessage &message) ETL_OVERRIDE |
| Top level message handler for the FSM. | |
| etl::fsm_state_id_t | transition_to (etl::fsm_state_id_t new_state_id) |
| Invoke a state transition. | |
| bool | accepts (etl::message_id_t) const ETL_OVERRIDE |
| Does this FSM accept the message id? Yes, it accepts everything! | |
| etl::fsm_state_id_t | get_state_id () const |
| Gets the current state id. | |
| ifsm_state & | get_state () |
| Gets a reference to the current state interface. | |
| const ifsm_state & | get_state () const |
| Gets a const reference to the current state interface. | |
| bool | is_started () const |
| Checks if the FSM has been started. | |
| ETL_DEPRECATED bool | is_null_router () const ETL_OVERRIDE |
| bool | is_producer () const ETL_OVERRIDE |
| bool | is_consumer () const ETL_OVERRIDE |
| virtual void | receive (const etl::imessage &)=0 |
| virtual void | receive (etl::message_router_id_t destination_router_id, const etl::imessage &message) |
| virtual void | receive (etl::shared_message shared_msg) |
| virtual void | receive (etl::message_router_id_t destination_router_id, etl::shared_message shared_msg) |
| virtual void | receive (const etl::imessage &)=0 |
| virtual void | receive (etl::message_router_id_t destination_router_id, const etl::imessage &message) |
| virtual void | receive (etl::shared_message shared_msg) |
| virtual void | receive (etl::message_router_id_t destination_router_id, etl::shared_message shared_msg) |
| virtual bool | accepts (etl::message_id_t) const=0 |
| bool | accepts (const etl::imessage &msg) const |
| virtual bool | accepts (etl::message_id_t) const=0 |
| bool | accepts (const etl::imessage &msg) const |
| virtual void | receive (const etl::imessage &)=0 |
| virtual void | receive (etl::message_router_id_t destination_router_id, const etl::imessage &message) |
| virtual void | receive (etl::shared_message shared_msg) |
| virtual void | receive (etl::message_router_id_t destination_router_id, etl::shared_message shared_msg) |
| virtual void | receive (const etl::imessage &)=0 |
| virtual void | receive (etl::message_router_id_t destination_router_id, const etl::imessage &message) |
| virtual void | receive (etl::shared_message shared_msg) |
| virtual void | receive (etl::message_router_id_t destination_router_id, etl::shared_message shared_msg) |
| virtual bool | accepts (etl::message_id_t) const=0 |
| bool | accepts (const etl::imessage &msg) const |
| virtual bool | accepts (etl::message_id_t) const=0 |
| bool | accepts (const etl::imessage &msg) const |
Public Member Functions inherited from etl::successor< imessage_router > | |
| successor () | |
| Default constructor. | |
| successor (successor_type &s) | |
| Construct from a successor type. | |
| void | set_successor (successor_type &s) |
| Set the successor. | |
| void | append_successor (TSuccessor &s) |
| Append a successor. | |
| void | clear_successor () |
| Clear the successor. | |
| void | clear_successor_chain () |
| Clear the successor chain. | |
| successor_type & | get_successor () const |
| bool | has_successor () const |
| Does this have a successor? | |
Additional Inherited Members | |
Public Types inherited from etl::successor< imessage_router > | |
| typedef imessage_router | successor_type |
The HFSM class. Builds on the FSM class by overriding the receive function and adding state hierarchy walking functions.
Reset the HFSM to pre-started state.
| call_on_exit_state | If true will call on_exit_state() for the current state. Default = false. |
Reimplemented from etl::fsm.
Starts the HFSM. Can only be called once. Subsequent calls will do nothing.
| call_on_enter_state | If true will call on_enter_state() for the first state. Default = true. If the first state has child states then they will be recursively entered. |
Reimplemented from etl::fsm.