12 #ifndef BUILD_TRANSITION_STEPS_VISITOR_85FF1B04_191D_4BED_A446_C9280A2883C8 13 #define BUILD_TRANSITION_STEPS_VISITOR_85FF1B04_191D_4BED_A446_C9280A2883C8 30 class event_collector;
33 class build_transition_steps_visitor SX_FINAL:
34 public virtual const_vertex_visitor
37 build_transition_steps_visitor( transition& _current_transition,
transition_steps& _transitions_steps,
38 const event& _event, event_collector& _event_collector );
39 virtual ~build_transition_steps_visitor() SX_NOEXCEPT SX_OVERRIDE;
40 SX_NO_COPY(build_transition_steps_visitor)
41 virtual
void visit( const composite_state& _composite_state ) SX_OVERRIDE;
42 virtual
void visit( const simple_state& _simple_state ) SX_OVERRIDE;
43 virtual
void visit( const final_state& _final_state ) SX_OVERRIDE;
44 virtual
void visit( const initial_pseudostate& _initial_pseudostate ) SX_OVERRIDE;
45 virtual
void visit( const choice& _choice ) SX_OVERRIDE;
46 virtual
void visit( const junction& _junction ) SX_OVERRIDE;
47 virtual
void visit( const join& _join ) SX_OVERRIDE;
48 virtual
void visit( const fork& _fork ) SX_OVERRIDE;
49 virtual
void visit( const entry_point& _entry_point ) SX_OVERRIDE;
50 virtual
void visit( const exit_point& _exit_point ) SX_OVERRIDE;
51 virtual
void visit( const deep_history& _deep_history ) SX_OVERRIDE;
52 virtual
void visit( const shallow_history& _shallow_history ) SX_OVERRIDE;
53 virtual
void visit( const terminate_pseudostate& _terminate_pseudostate ) SX_OVERRIDE;
54 transition * get_next_transition() const;
55 bool reached_end_of_transition() const;
59 transition* find_next_transition( const pseudostate& _target_pseudostate, const event& _event );
60 static
raw_transitions get_default_transition_if_state_was_not_active_before( const history& _history );
61 void handle_history_pseudostate( const history& _history_pseudostate );
62 void handle_as_junction( const pseudostate& _pseudostate );
63 void handle_as_fork( const pseudostate& _fork ) const;
64 void handle_as_join( const pseudostate& _pseudostate );
65 void handle_entry_point( const entry_point& _entry_point );
66 void handle_exit_point( const exit_point& _exit_point );
67 void create_simple_transition_step();
69 transition& current_transition_;
71 transition* next_transition_;
72 bool reached_end_of_transition_;
74 event_collector& event_collector_;
Definition: adapter_cpp11.hpp:21
std::vector< transition *> raw_transitions
Definition: transition_fwd.hpp:30
std::vector< transition_step_uptr > transition_steps
Definition: transition_step_fwd.hpp:28