|
| async_simple_state_impl (const std::string &_name, async_behavior_uptr _do_action, behavior_uptr _entry_action=behavior_uptr(), behavior_uptr _exit_action=behavior_uptr(), const event_ids &_deferred_events=event_ids(), event_sptr _error_event=event_sptr()) |
|
virtual | ~async_simple_state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
void | execute_do_behavior (const event &_event, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
void | execute_exit_behavior (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
void | stop_do_behavior () const |
|
| async_state_machine (const std::string &_name, event_processing_callback *const _event_processing_callback=SX_NULLPTR) |
| Constructor. More...
|
|
virtual | ~async_state_machine () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | fire_event (const event_sptr &_event) SX_OVERRIDE |
| Enqueue the given event for firing. More...
|
|
virtual bool | run () SX_OVERRIDE |
| Starts the state machine. When starting the state machine, the initial transitions are searched and executed. Without running the state machine, it is not possible to fire events. More...
|
|
void | halt_and_join () |
| Stops and joins the state machine. When stopping the state machine, all the events remaining in the queue of events will be processed and the event processing thread will be then stopped and joined. The state machine will also check for active asynchronous simple states and will stop the do behavior for all of them. More...
|
|
virtual void | halt () SX_OVERRIDE |
| Stops the state machine. When stopping the state machine, all the events remaining in the queue of events will be processed and the event processing thread will be then stopped and joined. The state machine will also check for active asynchronous simple states and will stop the do behavior for all of them. More...
|
|
void | join () |
| Joins the thread of the state machine. More...
|
|
bool | wait (const sxe::milliseconds _timeoutInMs) const |
| Waiting given amount of time for the state machine to terminate (or to stop). More...
|
|
void | wait () const |
| Wait for the machine to terminate (or to stop). More...
|
|
bool | terminated () const |
| Check if the state machine is terminated or stopped. More...
|
|
virtual bool | push (const event_sptr &_event) SX_OVERRIDE |
| Enqueue the given event for firing. More...
|
|
| behavior_exception (const event_sptr &_event) |
|
virtual | ~behavior_exception () SX_NOEXCEPT SX_OVERRIDE |
|
const event_sptr | get_error_event () const |
|
| event_creation_request (const sxe::time_point< sxe::system_clock > &_time, const event_sptr _event, const handle_type _handle) |
|
| ~event_creation_request () SX_NOEXCEPT |
|
| event_creation_request (event_creation_request &&) |
|
event_creation_request & | operator= (event_creation_request &&) |
|
sxe::time_point< sxe::system_clock > | get_time () const |
|
handle_type | get_handle () const |
|
event_sptr | get_event () const |
|
template<typename ... args> |
| state_machine_defect (const state_machine_element &_element, const std::string &_message, args ... _args) |
|
| ~state_machine_defect () SX_NOEXCEPT |
|
const state_machine_element & | get_element () const |
|
const std::string & | get_message () const |
|
| states_nesting_comparer () |
|
| ~states_nesting_comparer () SX_NOEXCEPT |
|
bool | operator() (const state &_lhs, const state &_rhs) const |
|
bool | operator() (const state *const _lhs, const state *const _rhs) const |
|
| states_nesting_comparer_ascending () |
|
| ~states_nesting_comparer_ascending () SX_NOEXCEPT |
|
bool | operator() (const state &_lhs, const state &_rhs) const |
|
bool | operator() (const state *const _lhs, const state *const _rhs) const |
|
| timed_event_creator (async_state_machine &_async_state_machine) |
| Constructor. More...
|
|
| ~timed_event_creator () SX_NOEXCEPT |
|
handle_type | create_event_creation_request (const sxe::time_point< sxe::system_clock > &_time_till_event_is_fired, const event_sptr _event) |
| Creates an event creation request. More...
|
|
handle_type | create_event_creation_request (const sxe::milliseconds &_time, const event_sptr &_event) |
| Creates an event creation request. More...
|
|
bool | cancel (const handle_type _handle) |
| Cancels the event creation request with the given handle if the event is still in the queue of the event creator. More...
|
|
void | run () |
| Starts the event creator. This has to be called before creating timed events. More...
|
|
void | halt () |
| Stops the event creator. The event creator needs to be stopped before it is destroyed (if it was started). Else the internal thread is not cleaned-up correctly. More...
|
|
void | join () |
| Joins the event creator thread. More...
|
|
void | halt_and_join () |
| Stops and joins the event creator thread. The event creator needs to be stopped before it is destroyed (if it was started). Else the internal thread is not cleaned-up correctly. More...
|
|
| transition_impl (const event_id _event_id, vertex &_source, vertex &_target, const sxy::transition_kind _kind=transition_kind::EXTERNAL, constraint_uptr _guard=constraint_uptr(), behavior_uptr _behavior=behavior_uptr()) |
|
| transition_impl (const event_ids _event_ids, vertex &_source, vertex &_target, const sxy::transition_kind _kind=transition_kind::EXTERNAL, constraint_uptr _guard=constraint_uptr(), behavior_uptr _behavior=behavior_uptr()) |
|
virtual | ~transition_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual const vertex & | get_source () const SX_OVERRIDE |
|
virtual const vertex & | get_target () const SX_OVERRIDE |
|
virtual vertex & | get_target () SX_OVERRIDE |
|
virtual const constraint * | get_guard () const SX_OVERRIDE |
|
virtual const behavior * | get_behavior () const SX_OVERRIDE |
|
virtual sxe::uri | get_uri () const SX_OVERRIDE |
|
virtual const state_machine_element * | get_parent () const SX_OVERRIDE |
|
virtual sxy::transition_kind | get_kind () const SX_OVERRIDE |
|
virtual void | add_ancestor_uri (sxe::uri &_uri) const SX_OVERRIDE |
|
virtual void | on_transition_behavior (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual bool | check_guard (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual bool | can_accept_event (const event_id _event) const SX_OVERRIDE |
|
| behavior_impl (const behavior_function &_function) |
|
virtual | ~behavior_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual void | operator() (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
| build_transition_steps_visitor (transition &_current_transition, transition_steps &_transitions_steps, const event &_event, event_collector &_event_collector) |
|
virtual | ~build_transition_steps_visitor () SX_NOEXCEPT SX_OVERRIDE |
|
virtual void | visit (const composite_state &_composite_state) SX_OVERRIDE |
|
virtual void | visit (const simple_state &_simple_state) SX_OVERRIDE |
|
virtual void | visit (const final_state &_final_state) SX_OVERRIDE |
|
virtual void | visit (const initial_pseudostate &_initial_pseudostate) SX_OVERRIDE |
|
virtual void | visit (const choice &_choice) SX_OVERRIDE |
|
virtual void | visit (const junction &_junction) SX_OVERRIDE |
|
virtual void | visit (const join &_join) SX_OVERRIDE |
|
virtual void | visit (const fork &_fork) SX_OVERRIDE |
|
virtual void | visit (const entry_point &_entry_point) SX_OVERRIDE |
|
virtual void | visit (const exit_point &_exit_point) SX_OVERRIDE |
|
virtual void | visit (const deep_history &_deep_history) SX_OVERRIDE |
|
virtual void | visit (const shallow_history &_shallow_history) SX_OVERRIDE |
|
virtual void | visit (const terminate_pseudostate &_terminate_pseudostate) SX_OVERRIDE |
|
transition * | get_next_transition () const |
|
bool | reached_end_of_transition () const |
|
| check_if_all_incoming_transitions_sources_are_active_visitor () |
|
virtual | ~check_if_all_incoming_transitions_sources_are_active_visitor () SX_NOEXCEPT SX_OVERRIDE |
|
virtual void | visit (const composite_state &_composite_state) SX_OVERRIDE |
|
virtual void | visit (const simple_state &_simple_state) SX_OVERRIDE |
|
bool | get_result () const |
|
| choice_impl (const std::string &_name) |
|
virtual | ~choice_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
| composite_state_impl (const std::string &_name, behavior_uptr _entry_action=behavior_uptr(), behavior_uptr _exit_action=behavior_uptr(), const event_ids &_deferred_events=event_ids()) |
|
virtual | ~composite_state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual region & | add_region (region_uptr _region) SX_OVERRIDE |
|
virtual region & | add_region (const std::string &_region_name) SX_OVERRIDE |
| Creates a region with the given name and adds it to the parent composite state. More...
|
|
virtual const regions & | get_regions () const SX_OVERRIDE |
|
virtual regions & | get_regions () SX_OVERRIDE |
|
virtual region * | get_region (const std::string &_region_name) const SX_OVERRIDE |
|
bool | is_complete () const SX_OVERRIDE |
|
virtual const deep_history * | get_deep_history () const SX_OVERRIDE |
|
virtual deep_history & | add_deep_history (deep_history_uptr _deep_history) SX_OVERRIDE |
|
virtual deep_history & | add_deep_history (const std::string &_deep_history_name) SX_OVERRIDE |
| Creates a deep history with the given name and adds it to the parent composite state. More...
|
|
virtual shallow_history * | get_shallow_history () const SX_OVERRIDE |
|
virtual shallow_history & | add_shallow_history (shallow_history_uptr _shallow_history) SX_OVERRIDE |
|
virtual shallow_history & | add_shallow_history (const std::string &_shallow_history_name) SX_OVERRIDE |
| Creates a shallow history with the given name and adds it to the parent composite state. More...
|
|
virtual const raw_const_entry_points | get_entry_points () const SX_OVERRIDE |
|
virtual entry_point & | add_entry_point (entry_point_uptr _entry_point) SX_OVERRIDE |
|
virtual entry_point & | add_entry_point (const std::string &_entry_point_name) SX_OVERRIDE |
| Creates an entry point with the given name and adds it to the parent composite state. More...
|
|
virtual const raw_const_exit_points | get_exit_points () const SX_OVERRIDE |
|
virtual exit_point & | add_exit_point (exit_point_uptr _exit_point) SX_OVERRIDE |
|
virtual exit_point & | add_exit_point (const std::string &_exit_point_name) SX_OVERRIDE |
| Creates an exit point with the given name and adds it to the parent composite state. More...
|
|
virtual vertex * | get_pseudostate (const std::string &_name_of_pseudostate) const SX_OVERRIDE |
|
virtual size_t | get_region_index (const region *const _region) const SX_OVERRIDE |
|
virtual size_t | get_parent_region_index () const SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_complex_state_visitor (complex_state_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_state_visitor (state_visitor &_visitor) const SX_OVERRIDE |
|
virtual bool | is_orthogonal () const SX_OVERRIDE |
|
| compound_transition_impl () |
|
virtual | ~compound_transition_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual transition_steps & | get_transition_steps () SX_OVERRIDE |
|
virtual const vertex & | get_last_target () const SX_OVERRIDE |
|
virtual const compound_transitions & | get_sub_compound_transitions () const SX_OVERRIDE |
|
virtual void | add_sub_compound_transition (compound_transition_uptr _sub_compound_transition) SX_OVERRIDE |
|
virtual region * | get_LCA_region () SX_OVERRIDE |
|
virtual composite_state * | get_LCA_composite_state () SX_OVERRIDE |
|
virtual transition_kind | get_transition_kind () SX_OVERRIDE |
|
virtual bool | check_if_starts_with (const transition &_incoming_transition) SX_OVERRIDE |
|
virtual bool | create_and_check_transition_path (transition &_start_transition, const event &_event, event_collector &_event_collector) SX_OVERRIDE |
|
| compound_transition_step (const raw_transitions &_transition_step) |
|
virtual | ~compound_transition_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual const raw_transitions & | get_transitions () const SX_OVERRIDE |
|
virtual const vertex & | get_unique_source () const SX_OVERRIDE |
|
virtual const vertex & | get_unique_target () const SX_OVERRIDE |
|
virtual const exit_point * | get_exit_point () const SX_OVERRIDE |
|
virtual const entry_point * | get_entry_point () const SX_OVERRIDE |
|
virtual const raw_const_vertices | get_target_vertices () SX_OVERRIDE |
|
void | execute_transition_behaviors (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
| constraint_impl (const constraint_function &_function) |
|
virtual | ~constraint_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | operator() (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
| deep_history_impl (const std::string &_name) |
|
virtual | ~deep_history_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
| entry_point_impl (const std::string &_name) |
|
virtual | ~entry_point_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
| execution_state_do_step (const state &_state) |
|
virtual | ~execution_state_do_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | execute_behavior (event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual void | accept (execution_step_visitor &_visitor) const SX_OVERRIDE |
|
const state & | get_state () const |
|
| execution_state_enter_step (state &_state) |
|
virtual | ~execution_state_enter_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | execute_behavior (event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual void | accept (execution_step_visitor &_visitor) const SX_OVERRIDE |
|
const state & | get_state () const |
|
| execution_state_exit_step (state &_state) |
|
virtual | ~execution_state_exit_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | execute_behavior (event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual void | accept (execution_step_visitor &_visitor) const SX_OVERRIDE |
|
const state & | get_state () const |
|
| execution_transition_step (transition_step &_transition_step) |
|
virtual | ~execution_transition_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | execute_behavior (event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual void | accept (execution_step_visitor &_visitor) const SX_OVERRIDE |
|
const transition_step & | get_transition_step () const |
|
| exit_point_impl (const std::string &_name) |
|
virtual | ~exit_point_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
| final_state_impl (const std::string &_name) |
|
virtual | ~final_state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual behavior * | get_entry_behavior () const SX_OVERRIDE |
|
virtual behavior * | get_exit_behavior () const SX_OVERRIDE |
|
virtual const regions & | get_regions () const SX_OVERRIDE |
|
virtual regions & | get_regions () SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_state_visitor (state_visitor &_visitor) const SX_OVERRIDE |
|
virtual bool | is_event_deferred (const event_id &_event_id) const SX_OVERRIDE |
|
| fork_impl (const std::string &_name) |
|
virtual | ~fork_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | add_incoming_transition (transition &_incoming_transition) SX_OVERRIDE |
|
| initial_pseudostate_impl (const std::string &_name) |
|
virtual | ~initial_pseudostate_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
virtual transition * | get_transition () const SX_OVERRIDE |
|
virtual void | add_incoming_transition (transition &_incoming_transition) SX_OVERRIDE |
|
| join_impl (const std::string &_name) |
|
virtual | ~join_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check_if_all_source_states_of_incoming_transitions_are_active () const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | add_outgoing_transition (transition &_outgoing_transition) SX_OVERRIDE |
|
| junction_impl (const std::string &_name) |
|
virtual | ~junction_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
| region_impl (const std::string &_name) |
|
virtual | ~region_impl () SX_NOEXCEPT SX_OVERRIDE |
|
void | set_parent_state (composite_state *const _composite_state) SX_OVERRIDE |
|
virtual raw_const_states | get_states () const SX_OVERRIDE |
|
virtual const composite_state & | get_parent_state () const SX_OVERRIDE |
|
virtual composite_state & | get_parent_state () SX_OVERRIDE |
|
virtual vertex * | get_vertex (const std::string &_vertex_name) const SX_OVERRIDE |
|
virtual size_t | get_pseudostate_count () const SX_OVERRIDE |
|
virtual vertex * | get_pseudostate (const std::string &_name) const SX_OVERRIDE |
|
virtual raw_const_pseudostates | get_pseudostates () const SX_OVERRIDE |
|
virtual initial_pseudostate * | get_initial_pseudostate () const SX_OVERRIDE |
|
virtual size_t | get_state_count () const SX_OVERRIDE |
|
virtual state * | get_state (const std::string &_name) const SX_OVERRIDE |
|
virtual const state * | get_active_state () const SX_OVERRIDE |
|
virtual state * | get_active_state () SX_OVERRIDE |
|
virtual void | set_active_state (state *const _active_state) SX_OVERRIDE |
|
virtual void | set_state_was_active (state *const _active_state) SX_OVERRIDE |
|
virtual const state * | get_last_active_state () const SX_OVERRIDE |
|
virtual state * | get_last_active_state () SX_OVERRIDE |
|
virtual initial_pseudostate & | add_initial_pseudostate (initial_pseudostate_uptr _initial_state) SX_OVERRIDE |
|
virtual initial_pseudostate & | add_initial_pseudostate (const std::string &_initial_state_name) SX_OVERRIDE |
| Creates an initial pseudostate with the given name and adds it to the parent region. More...
|
|
virtual state & | add_state (state_uptr _state) SX_OVERRIDE |
|
virtual simple_state & | add_simple_state (const std::string &_simple_state_name, const behavior_function &_behavior=behavior_function(), const behavior_function &_entry_behavior=behavior_function(), const behavior_function &_exit_behavior=behavior_function()) SX_OVERRIDE |
|
virtual simple_state & | add_simple_state (const std::string &_simple_state_name, const event_ids &_deferred_events, const behavior_function &_behavior=behavior_function(), const behavior_function &_entry_behavior=behavior_function(), const behavior_function &_exit_behavior=behavior_function(), event_sptr _error_event=event_sptr()) SX_OVERRIDE |
|
virtual simple_state & | add_async_simple_state (const std::string &_async_simple_state_name, const event_ids &_deferred_events, async_behavior_uptr _do_action=async_behavior_uptr(), const behavior_function &_entry_behavior=behavior_function(), const behavior_function &_exit_behavior=behavior_function(), event_sptr _error_event=event_sptr()) SX_OVERRIDE |
|
virtual composite_state & | add_composite_state (const std::string &_composite_state_name, const behavior_function &_entry_action=behavior_function(), const behavior_function &_exit_action=behavior_function()) SX_OVERRIDE |
|
virtual composite_state & | add_composite_state (const std::string &_composite_state_name, const event_ids &_deferred_events, const behavior_function &_entry_action=behavior_function(), const behavior_function &_exit_action=behavior_function()) SX_OVERRIDE |
|
virtual final_state & | add_final_state (const std::string &_name) SX_OVERRIDE |
|
virtual choice & | add_choice (choice_uptr _choice) SX_OVERRIDE |
|
virtual choice & | add_choice (const std::string &_choice_name) SX_OVERRIDE |
| Creates a choice with the given name and adds it to the parent region. More...
|
|
virtual fork & | add_fork (fork_uptr _fork) SX_OVERRIDE |
|
virtual fork & | add_fork (const std::string &_fork_name) SX_OVERRIDE |
| Creates a fork with the given name and adds it to the parent region. More...
|
|
virtual join & | add_join (join_uptr _join) SX_OVERRIDE |
|
virtual join & | add_join (const std::string &_join_name) SX_OVERRIDE |
| Creates a join with the given name and adds it to the parent region. More...
|
|
virtual junction & | add_junction (junction_uptr _junction) SX_OVERRIDE |
|
virtual junction & | add_junction (const std::string &_junction_name) SX_OVERRIDE |
| Creates a junction with the given name and adds it to the parent region. More...
|
|
virtual terminate_pseudostate & | add_terminate_pseudostate (terminate_pseudostate_uptr _terminate_pseudostate) SX_OVERRIDE |
|
virtual terminate_pseudostate & | add_terminate_pseudostate (const std::string &_terminate_pseudostate_name) SX_OVERRIDE |
| Creates a terminate pseudostate with the given name and adds it to the parent region. More...
|
|
sxe::uri | get_uri () const SX_OVERRIDE |
|
void | add_ancestor_uri (sxe::uri &_uri) const SX_OVERRIDE |
|
virtual bool | is_active_state_final () const SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual const state_machine_element * | get_parent () const SX_OVERRIDE |
|
| simple_state_impl (const std::string &_name, behavior_uptr do_action=behavior_uptr(), behavior_uptr _entry_action=behavior_uptr(), behavior_uptr _exit_action=behavior_uptr(), const event_ids &_deferred_events=event_ids(), event_sptr _error_event=event_sptr()) |
|
virtual | ~simple_state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
void | execute_do_behavior (const event &_event, async_event_handler *const _async_event_handler, event_collector &_event_collector) const SX_OVERRIDE |
|
| simple_transition_step (transition &_transition) |
|
virtual | ~simple_transition_step () SX_NOEXCEPT SX_OVERRIDE |
|
virtual const raw_transitions & | get_transitions () const SX_OVERRIDE |
|
virtual const vertex & | get_unique_source () const SX_OVERRIDE |
|
virtual const vertex & | get_unique_target () const SX_OVERRIDE |
|
virtual const exit_point * | get_exit_point () const SX_OVERRIDE |
|
virtual const entry_point * | get_entry_point () const SX_OVERRIDE |
|
virtual const raw_const_vertices | get_target_vertices () SX_OVERRIDE |
|
void | execute_transition_behaviors (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
| terminate_pseudostate_impl (const std::string &_name) |
|
virtual | ~terminate_pseudostate_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | check (state_machine_defects &_defects) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (const_vertex_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | accept_vertex_visitor (vertex_visitor &_visitor) SX_OVERRIDE |
|
virtual void | accept_pseudostate_visitor (pseudostate_visitor &_visitor) const SX_OVERRIDE |
|
virtual void | add_outgoing_transition (transition &_outgoing_transition) SX_OVERRIDE |
|
| transition_controller () |
|
| ~transition_controller () SX_NOEXCEPT |
|
| transition_executor () |
|
| ~transition_executor () SX_NOEXCEPT |
|
bool | check_sort_and_execute_transitions (const compound_transitions &_compound_transitions, raw_const_choices &_verices, event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector, const interruptible &_interruptible) |
|
| transition_finder () |
|
| ~transition_finder () SX_NOEXCEPT |
|
void | search_for_enabled_transitions_in_all_regions (const state &_current_state, const event &_event, compound_transitions &_enabled_compound_transitions, bool &_event_is_deferred, event_collector &_event_collector) const |
|
void | search_for_enabled_completion_transitions_in_all_regions (const state &_current_state, compound_transitions &_enabled_compound_transitions, bool &_event_is_deferred, event_collector &_event_collector) const |
|
| transition_priority (compound_transition &_compound_transition) |
|
| ~transition_priority () SX_NOEXCEPT |
|
std::size_t | get_priority () const |
|
compound_transition & | get_compound_transition () const |
|
bool | operator< (const transition_priority &_compare_member) const |
|
| terminate_pseudostate () |
|
virtual | ~terminate_pseudostate () SX_NOEXCEPT SX_OVERRIDE |
|
| region_pseudostate () |
|
virtual | ~region_pseudostate () SX_NOEXCEPT SX_OVERRIDE |
|
| pseudostate () |
|
virtual | ~pseudostate () SX_NOEXCEPT SX_OVERRIDE |
|
| vertex () |
|
virtual | ~vertex () SX_NOEXCEPT SX_OVERRIDE |
|
| state_machine_element () |
|
virtual | ~state_machine_element () SX_NOEXCEPT |
|
| region_pseudostate_impl (const std::string &_name) |
|
virtual | ~region_pseudostate_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual region * | get_parent_region () const SX_OVERRIDE |
|
virtual void | set_parent_region (region *const _parent_region) SX_OVERRIDE |
|
virtual raw_composite_states | get_ancestors (composite_state *const _final_ancestor, bool _include_final_ancestor=true) const SX_OVERRIDE |
|
virtual raw_regions | get_ancestors_as_regions () const SX_OVERRIDE |
|
| pseudostate_impl (const std::string &_name) |
|
virtual | ~pseudostate_impl () SX_NOEXCEPT SX_OVERRIDE |
|
| vertex_impl (const std::string &_name) |
|
virtual | ~vertex_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual composite_state * | get_root_state () SX_OVERRIDE |
|
virtual const composite_state * | get_root_state () const SX_OVERRIDE |
|
virtual void | remove_outgoing_transition (const transition &_outgoing_transition) SX_OVERRIDE |
|
virtual void | remove_incoming_transition (const transition &_incoming_transition) SX_OVERRIDE |
|
virtual const raw_transitions & | get_outgoing_transitions () const SX_OVERRIDE |
|
virtual const raw_transitions & | get_incoming_transitions () const SX_OVERRIDE |
|
transition * | search_transition (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual region * | LCA_region (const vertex &_target_vertex) const SX_OVERRIDE |
|
virtual composite_state * | LCA_composite_state (const vertex &_rhs) const SX_OVERRIDE |
|
| state_machine_element_impl (const std::string &_name) |
|
virtual | ~state_machine_element_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual const std::string & | get_name () const SX_OVERRIDE |
|
| transition_step () |
|
virtual | ~transition_step () SX_NOEXCEPT |
|
| simple_state_base (const std::string &_name, behavior_uptr _entry_action, behavior_uptr _exit_action, const event_ids &_deferred_events, event_sptr _error_event) |
|
virtual | ~simple_state_base () SX_NOEXCEPT SX_OVERRIDE |
|
virtual bool | has_error_event () const SX_OVERRIDE |
|
| simple_state () |
|
virtual | ~simple_state () SX_NOEXCEPT SX_OVERRIDE |
|
| complex_state () |
|
virtual | ~complex_state () SX_NOEXCEPT SX_OVERRIDE |
|
| state () |
|
virtual | ~state () SX_NOEXCEPT SX_OVERRIDE |
|
| complex_state_impl (const std::string &_name, behavior_uptr _entry_behavior, behavior_uptr _exit_behavior, const event_ids &_deferred_events=event_ids()) |
|
virtual | ~complex_state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual void | add_deferred_event (const event_id &_event_id) SX_OVERRIDE |
|
| state_impl (const std::string &_name) |
|
virtual | ~state_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual void | set_parent_region (region *const _parent_region) SX_OVERRIDE |
|
virtual region * | get_parent_region () const SX_OVERRIDE |
|
virtual raw_composite_states | get_ancestors (composite_state *const _final_ancestor, bool _include_final_ancestor=true) const SX_OVERRIDE |
|
virtual raw_regions | get_ancestors_as_regions () const SX_OVERRIDE |
|
virtual std::size_t | get_nesting_level () const SX_OVERRIDE |
|
virtual void | set_was_active () SX_OVERRIDE |
|
virtual bool | was_active () const SX_OVERRIDE |
|
virtual void | set_active () SX_OVERRIDE |
|
virtual void | set_inactive () SX_OVERRIDE |
|
virtual bool | is_active () const SX_OVERRIDE |
|
virtual void | execute_enter_behavior (const event &_event, event_collector &_event_collector) const SX_OVERRIDE |
|
virtual void | enter_state (const event &_event, event_collector &_event_collector) SX_OVERRIDE |
|
virtual void | exit_state (const event &_event, event_collector &_event_collector) SX_OVERRIDE |
|
| region () |
|
virtual | ~region () SX_NOEXCEPT SX_OVERRIDE |
|
| junction () |
|
virtual | ~junction () SX_NOEXCEPT SX_OVERRIDE |
|
| join () |
|
virtual | ~join () SX_NOEXCEPT SX_OVERRIDE |
|
| initial_pseudostate () |
|
virtual | ~initial_pseudostate () SX_NOEXCEPT SX_OVERRIDE |
|
| fork () |
|
virtual | ~fork () SX_NOEXCEPT SX_OVERRIDE |
|
| final_state () |
|
virtual | ~final_state () SX_NOEXCEPT SX_OVERRIDE |
|
| exit_point () |
|
virtual | ~exit_point () SX_NOEXCEPT SX_OVERRIDE |
|
| state_pseudostate () |
|
virtual | ~state_pseudostate () SX_NOEXCEPT SX_OVERRIDE |
|
| state_pseudostate_impl (const std::string &_name) |
|
virtual | ~state_pseudostate_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual raw_composite_states | get_ancestors (composite_state *const _final_ancestor, bool _include_final_ancestor=true) const SX_OVERRIDE |
|
virtual raw_regions | get_ancestors_as_regions () const SX_OVERRIDE |
|
| execution_step () |
|
virtual | ~execution_step () SX_NOEXCEPT |
|
| entry_point () |
|
virtual | ~entry_point () SX_NOEXCEPT SX_OVERRIDE |
|
| deep_history () |
|
virtual | ~deep_history () SX_NOEXCEPT SX_OVERRIDE |
|
| history () |
|
virtual | ~history () SX_NOEXCEPT SX_OVERRIDE |
|
| history_impl (const std::string &_name) |
|
virtual | ~history_impl () SX_NOEXCEPT SX_OVERRIDE |
|
virtual raw_transitions | get_default_transitions () const SX_OVERRIDE |
|
virtual void | add_default_transition (transition &_default_transition) SX_OVERRIDE |
|
virtual bool | check_if_state_was_active_before () const SX_OVERRIDE |
|
| constraint () |
|
virtual | ~constraint () SX_NOEXCEPT |
|
| compound_transition () |
|
virtual | ~compound_transition () SX_NOEXCEPT SX_OVERRIDE |
|
| compound_transition_consumer () |
|
virtual | ~compound_transition_consumer () SX_NOEXCEPT |
|
| composite_state () |
|
virtual | ~composite_state () SX_NOEXCEPT SX_OVERRIDE |
|
| choice () |
|
virtual | ~choice () SX_NOEXCEPT SX_OVERRIDE |
|
| complex_state_visitor () |
|
virtual | ~complex_state_visitor () SX_NOEXCEPT |
|
| const_vertex_visitor () |
|
virtual | ~const_vertex_visitor () SX_NOEXCEPT |
|
| behavior () |
|
virtual | ~behavior () SX_NOEXCEPT |
|
| transition () |
|
virtual | ~transition () SX_NOEXCEPT SX_OVERRIDE |
|
| state_machine_base (const std::string &_name, event_processing_callback *const _event_processing_callback=SX_NULLPTR) |
| Constructor. More...
|
|
virtual | ~state_machine_base () SX_NOEXCEPT SX_OVERRIDE |
|
composite_state & | get_root_state () const |
| Returns the root state of the state machine. Commonly used to add regions to the root state and to create transitions from and to the root state. More...
|
|
virtual transition & | add_transition (transition_uptr _transition) |
| Add a transition to the state machine. The state machine takes ownership of the transition. More...
|
|
virtual transition & | add_transition (const event_id _event_id, vertex &_source, vertex &_target, const sxy::transition_kind _kind=transition_kind::EXTERNAL, const constraint_function &_guard=constraint_function(), const behavior_function &_behavior=behavior_function()) |
| Creates a transition with the given name, kind, event, guard and behavior between the given source and target and adds it to the state machine. More...
|
|
virtual transition & | add_transition (const event_ids &_event_ids, vertex &_source, vertex &_target, const sxy::transition_kind _kind=transition_kind::EXTERNAL, const constraint_function &_guard=constraint_function(), const behavior_function &_behavior=behavior_function()) |
| Creates a transition with the given name, kind, event, guard and behavior between the given source and target and adds it to the state machine. More...
|
|
virtual transition & | add_transition (const event_id _event_id, vertex &_source, vertex &_target, const constraint_function &_guard, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, event, guard between the given source and target and adds it to the state machine. No behavior is provided. More...
|
|
virtual transition & | add_transition (const event_ids &_event_ids, vertex &_source, vertex &_target, const constraint_function &_guard, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, events, guard between the given source and target and adds it to the state machine. No behavior is provided. More...
|
|
virtual transition & | add_transition (const event_id _event_id, vertex &_source, vertex &_target, const constraint_function &_guard, const behavior_function &_behavior, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, event, guard and behavior between the given source and target and adds it to the state machine. More...
|
|
virtual transition & | add_transition (const event_ids &_event_ids, vertex &_source, vertex &_target, const constraint_function &_guard, const behavior_function &_behavior, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, events, guard and behavior between the given source and target and adds it to the state machine. More...
|
|
virtual transition & | add_transition (const event_id _event_id, vertex &_source, vertex &_target, const behavior_function &_behavior, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, event and behavior between the given source and target and adds it to the state machine. No guard is provided. More...
|
|
virtual transition & | add_transition (const event_ids &_event_ids, vertex &_source, vertex &_target, const behavior_function &_behavior, const sxy::transition_kind _kind=transition_kind::EXTERNAL) |
| Creates a transition with the given name, kind, events and behavior between the given source and target and adds it to the state machine. No guard is provided. More...
|
|
bool | check (state_machine_defects &_defects) const |
| Check the state machine for defects by checking the constraints of each component. More...
|
|
virtual void | interrupt () |
| Set the internal flag of the state machine, to interrupt all processes inside the state machine and to stop the state machine. More...
|
|
virtual bool | is_interrupted () const SX_OVERRIDE |
| Get the internal flag of the state machine that specify if the run of state machine is interrupted. More...
|
|
virtual void | set_behavior_of_unhandled_event_handler (const behavior_function &_behavior) |
| Sets the behavior for handler of unhandled events. More...
|
|
virtual std::string | get_name () const |
| Get the name of the state machine. More...
|
|
| event_collector () |
|
virtual | ~event_collector () SX_NOEXCEPT |
|