yasmine
compound_transition_impl.hpp
Go to the documentation of this file.
1 // //
3 // This file is part of the Seadex yasmine ecosystem (http://yasmine.seadex.de). //
4 // Copyright (C) 2016-2017 Seadex GmbH //
5 // //
6 // Licensing information is available in the folder "license" which is part of this distribution. //
7 // The same information is available on the www @ http://yasmine.seadex.de/Licenses.html. //
8 // //
10 
11 
12 #ifndef COMPOUND_TRANSITION_IMPL_A5F32559_6ACF_4113_92D6_FD2473853A3A
13 #define COMPOUND_TRANSITION_IMPL_A5F32559_6ACF_4113_92D6_FD2473853A3A
14 
15 
16 #include "compound_transition.hpp"
17 #include "transition_step.hpp"
18 
19 
20 namespace sxy
21 {
22 
23 
24 class compound_transition_impl SX_FINAL:
25  public virtual compound_transition
26 {
27 public:
28  compound_transition_impl();
29  virtual ~compound_transition_impl() SX_NOEXCEPT SX_OVERRIDE;
30  SX_NO_COPY(compound_transition_impl)
31  virtual transition_steps& get_transition_steps() SX_OVERRIDE;
32  virtual const vertex& get_last_target() const SX_OVERRIDE;
33  virtual const compound_transitions& get_sub_compound_transitions() const SX_OVERRIDE;
34  virtual void add_sub_compound_transition( compound_transition_uptr _sub_compound_transition ) SX_OVERRIDE;
35  virtual region * get_LCA_region() SX_OVERRIDE;
36  virtual composite_state * get_LCA_composite_state() SX_OVERRIDE;
37  virtual transition_kind get_transition_kind() SX_OVERRIDE;
38  virtual bool check_if_starts_with( const transition& _incoming_transition ) SX_OVERRIDE;
39  virtual bool create_and_check_transition_path( transition& _start_transition, const event& _event,
40  event_collector& _event_collector ) SX_OVERRIDE;
41 
42 
43 private:
44  transition_steps transition_steps_;
45  compound_transitions sub_compound_transitions_;
46 };
47 
48 
49 }
50 
51 
52 #endif
std::vector< compound_transition_uptr > compound_transitions
Definition: compound_transition_fwd.hpp:32
sxe::SX_UNIQUE_PTR< compound_transition > compound_transition_uptr
Definition: compound_transition_fwd.hpp:26
Definition: adapter_cpp11.hpp:21
transition_kind
Definition: transition_kind.hpp:25
std::vector< transition_step_uptr > transition_steps
Definition: transition_step_fwd.hpp:28