12 #ifndef TRANSITION_IMPL_9F6CF536_11D2_4F11_B5FB_AB930B935720 13 #define TRANSITION_IMPL_9F6CF536_11D2_4F11_B5FB_AB930B935720 26 class composite_state;
29 class transition_impl SX_FINAL:
30 public virtual transition,
public state_machine_element_impl
33 transition_impl(
const event_id _event_id, vertex& _source, vertex& _target,
36 transition_impl(
const event_ids _event_ids, vertex& _source, vertex& _target,
39 virtual ~transition_impl() SX_NOEXCEPT SX_OVERRIDE;
40 SX_NO_COPY(transition_impl)
41 virtual const vertex& get_source() const SX_OVERRIDE;
42 virtual const vertex& get_target() const SX_OVERRIDE;
43 virtual vertex& get_target() SX_OVERRIDE;
44 virtual const constraint * get_guard() const SX_OVERRIDE;
45 virtual const behavior * get_behavior() const SX_OVERRIDE;
46 virtual sxe::uri get_uri() const SX_OVERRIDE;
47 virtual const state_machine_element * get_parent() const SX_OVERRIDE;
49 virtual
void add_ancestor_uri( sxe::uri& _uri ) const SX_OVERRIDE;
50 virtual
void on_transition_behavior( const event& _event, event_collector& _event_collector ) const SX_OVERRIDE;
51 virtual
bool check_guard( const event& _event, event_collector& _event_collector ) const SX_OVERRIDE;
53 virtual
bool can_accept_event( const
event_id _event ) const SX_OVERRIDE;
57 static
bool check_if_source_and_target_are_in_ancestor_relationship( const vertex& _source,
58 const vertex& _target );
59 static
bool check_relationship( const vertex& _lhs, const composite_state* _rhs );
60 static std::
string get_transition_name( vertex& _source, vertex& _target, const
event_ids& _event_ids );
62 bool check_child_parent_relationship_of_source_target_of_transition(
state_machine_defects& _defects ) const;
std::vector< state_machine_defect > state_machine_defects
Definition: state_machine_defect_fwd.hpp:23
sxe::uint32_t event_id
The type alias for yasmine's event IDs.
Definition: event_id.hpp:26
Definition: adapter_cpp11.hpp:21
sxe::SX_UNIQUE_PTR< constraint > constraint_uptr
Definition: constraint_fwd.hpp:25
std::vector< event_id > event_ids
The type alias for yasmine's event ID list.
Definition: event_id.hpp:29
transition_kind
Definition: transition_kind.hpp:25
sxe::SX_UNIQUE_PTR< behavior > behavior_uptr
Definition: behavior_fwd.hpp:25