yasmine
|
#include <transition_executor_impl.hpp>
Public Member Functions | |
transition_executor_impl () | |
virtual | ~transition_executor_impl () SX_NOEXCEPT |
void | get_active_states_from_region (region &_region, raw_states_by_nesting_level_ascending &_states) |
void | get_active_states_from_regions (const state *const _state, raw_states_by_nesting_level_ascending &_states) |
void | get_all_states_to_enter_from_regions_that_are_not_explicitly_entered (compound_transition_consumer &_compound_transition, raw_const_region_set &_entered_regions, raw_states_by_nesting_level &_states_to_enter, const event &_event, event_collector &_event_collector) |
void | merge_transitions_steps_with_exit_state_steps (execution_steps &_execution_steps, compound_transition_consumer &_compound_transition, const raw_states_by_nesting_level_ascending &_states_to_exit, transition_steps::const_iterator &_transition_start, transition_steps::const_iterator &_transition_end) |
void | merge_transitions_steps_with_enter_states_steps (execution_steps &_execution_steps, compound_transition_consumer &_compound_transition, const raw_states_by_nesting_level &_states_to_enter, transition_steps::const_iterator &_transition_start, transition_steps::const_iterator &_transition_end) |
void | calculate_execution_steps (compound_transition_consumer &_compound_transition, const raw_states_by_nesting_level_ascending &_states_to_exit, const raw_states_by_nesting_level &_states_to_enter, execution_steps &_execution_steps, raw_const_region_set &_entered_regions, const event &_event, event_collector &_event_collector) |
void | conflict_check (const compound_transitions &_compound_transitions) const |
void | find_all_states_to_exit (compound_transition_consumer &_compound_transition, raw_states_by_nesting_level_ascending &_states_to_exit) |
void | find_all_states_to_enter (compound_transition_consumer &_compound_transition, raw_states_by_nesting_level &_states_to_enter, raw_const_region_set &_regions_to_enter, const event &_event, event_collector &_event_collector) |
void | add_remaining_states_to_enter (const raw_states_by_nesting_level::const_iterator _state_start, const raw_states_by_nesting_level &_states_to_enter, execution_steps &_execution_steps) |
void | add_remaining_states_to_exit (const raw_states_by_nesting_level_ascending::const_iterator _state_start, const raw_states_by_nesting_level_ascending &_states, execution_steps &_execution_steps) |
void | add_remained_transitions (transition_steps::const_iterator &_transition_start, const transition_steps::const_iterator &_transition_end, execution_steps &_execution_steps) |
void | fill_vector_of_choices (raw_const_choices &_choices, const compound_transitions &_compound_transitions) |
void | find_already_entered_regions (compound_transition &new_compound_transition, raw_const_region_set &_entered_regions, const event &_event, event_collector &_event_collector) |
void | find_states_to_enter_and_to_exit_and_calculate_execution_steps (compound_transition_consumer &compound_transition, execution_steps &_execution_steps, raw_const_region_set &_entered_regions, const event &_event, bool _find_states_to_exit, event_collector &_event_collector) |
void | check_conflicts_from_source_state_to_LCA (const state &_state, raw_const_state_set &_unique_exit_states, const composite_state *_LCA) const |
Static Public Member Functions | |
static bool | run_execution_steps (const execution_steps &_execution_steps, event_processing_callback *const _event_processing_callback, const event &_event, events &_exception_events, async_event_handler *const _async_event_handler, event_collector &_event_collector) |
static raw_compound_transitions | sort_compound_transitions (const compound_transitions &_unsorted_compound_transitions) |
sxy::impl::transition_executor_impl::transition_executor_impl | ( | ) |
|
virtual |
void sxy::impl::transition_executor_impl::add_remained_transitions | ( | transition_steps::const_iterator & | _transition_start, |
const transition_steps::const_iterator & | _transition_end, | ||
execution_steps & | _execution_steps | ||
) |
void sxy::impl::transition_executor_impl::add_remaining_states_to_enter | ( | const raw_states_by_nesting_level::const_iterator | _state_start, |
const raw_states_by_nesting_level & | _states_to_enter, | ||
execution_steps & | _execution_steps | ||
) |
void sxy::impl::transition_executor_impl::add_remaining_states_to_exit | ( | const raw_states_by_nesting_level_ascending::const_iterator | _state_start, |
const raw_states_by_nesting_level_ascending & | _states, | ||
execution_steps & | _execution_steps | ||
) |
void sxy::impl::transition_executor_impl::calculate_execution_steps | ( | compound_transition_consumer & | _compound_transition, |
const raw_states_by_nesting_level_ascending & | _states_to_exit, | ||
const raw_states_by_nesting_level & | _states_to_enter, | ||
execution_steps & | _execution_steps, | ||
raw_const_region_set & | _entered_regions, | ||
const event & | _event, | ||
event_collector & | _event_collector | ||
) |
void sxy::impl::transition_executor_impl::check_conflicts_from_source_state_to_LCA | ( | const state & | _state, |
raw_const_state_set & | _unique_exit_states, | ||
const composite_state * | _LCA | ||
) | const |
void sxy::impl::transition_executor_impl::conflict_check | ( | const compound_transitions & | _compound_transitions | ) | const |
void sxy::impl::transition_executor_impl::fill_vector_of_choices | ( | raw_const_choices & | _choices, |
const compound_transitions & | _compound_transitions | ||
) |
void sxy::impl::transition_executor_impl::find_all_states_to_enter | ( | compound_transition_consumer & | _compound_transition, |
raw_states_by_nesting_level & | _states_to_enter, | ||
raw_const_region_set & | _regions_to_enter, | ||
const event & | _event, | ||
event_collector & | _event_collector | ||
) |
void sxy::impl::transition_executor_impl::find_all_states_to_exit | ( | compound_transition_consumer & | _compound_transition, |
raw_states_by_nesting_level_ascending & | _states_to_exit | ||
) |
void sxy::impl::transition_executor_impl::find_already_entered_regions | ( | compound_transition & | new_compound_transition, |
raw_const_region_set & | _entered_regions, | ||
const event & | _event, | ||
event_collector & | _event_collector | ||
) |
void sxy::impl::transition_executor_impl::find_states_to_enter_and_to_exit_and_calculate_execution_steps | ( | compound_transition_consumer & | compound_transition, |
execution_steps & | _execution_steps, | ||
raw_const_region_set & | _entered_regions, | ||
const event & | _event, | ||
bool | _find_states_to_exit, | ||
event_collector & | _event_collector | ||
) |
void sxy::impl::transition_executor_impl::get_active_states_from_region | ( | region & | _region, |
raw_states_by_nesting_level_ascending & | _states | ||
) |
void sxy::impl::transition_executor_impl::get_active_states_from_regions | ( | const state *const | _state, |
raw_states_by_nesting_level_ascending & | _states | ||
) |
void sxy::impl::transition_executor_impl::get_all_states_to_enter_from_regions_that_are_not_explicitly_entered | ( | compound_transition_consumer & | _compound_transition, |
raw_const_region_set & | _entered_regions, | ||
raw_states_by_nesting_level & | _states_to_enter, | ||
const event & | _event, | ||
event_collector & | _event_collector | ||
) |
void sxy::impl::transition_executor_impl::merge_transitions_steps_with_enter_states_steps | ( | execution_steps & | _execution_steps, |
compound_transition_consumer & | _compound_transition, | ||
const raw_states_by_nesting_level & | _states_to_enter, | ||
transition_steps::const_iterator & | _transition_start, | ||
transition_steps::const_iterator & | _transition_end | ||
) |
void sxy::impl::transition_executor_impl::merge_transitions_steps_with_exit_state_steps | ( | execution_steps & | _execution_steps, |
compound_transition_consumer & | _compound_transition, | ||
const raw_states_by_nesting_level_ascending & | _states_to_exit, | ||
transition_steps::const_iterator & | _transition_start, | ||
transition_steps::const_iterator & | _transition_end | ||
) |
|
static |
|
static |