yasmine
state_model_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 #ifndef STATE_MODEL_IMPL_469ADCF1_AE5F_478C_A906_218099D99C09
12 #define STATE_MODEL_IMPL_469ADCF1_AE5F_478C_A906_218099D99C09
13 
14 
15 #include "state_model.hpp"
17 #include "transition_model_fwd.hpp"
18 
19 
20 namespace sxy
21 {
22 
23 
24 namespace model
25 {
26 
27 
31  public virtual state_model, public state_machine_element_model_impl
32 {
33 public:
38  state_model_impl( const std::string& _name, const model_element_type& _type,
39  const event_ids& _deferred_events = event_ids() );
40  virtual ~state_model_impl() SX_NOEXCEPT;
41  SX_NO_COPY( state_model_impl )
43  virtual raw_const_transition_models get_transitions() const SX_OVERRIDE;
45  virtual const event_ids& get_deferred_events() const SX_OVERRIDE;
46 
47 
48 private:
49  transition_models transitions_;
50  event_ids deferred_events_;
51 };
52 
53 
54 }
55 
56 
57 }
58 
59 
60 #endif
model_element_type
Definition: model_element_type.hpp:29
std::vector< const transition_model * > raw_const_transition_models
Definition: transition_model_fwd.hpp:33
std::vector< event_id > event_ids
The type alias for yasmine model&#39;s event ID list.
Definition: event_model_id.hpp:35
Definition: algorithm_parameters.hpp:16
state_model_impl(const std::string &_name, const model_element_type &_type, const event_ids &_deferred_events=event_ids())
Constructor.
Definition: state_model_impl.cpp:22
Interface for a state in the model.
Definition: state_model.hpp:34
virtual ~state_model_impl() SX_NOEXCEPT
Definition: state_model_impl.cpp:32
std::vector< transition_model_uptr > transition_models
Definition: transition_model_fwd.hpp:32
A state in the model.
Definition: state_model_impl.hpp:30
An element of the state machine in the model.
Definition: state_machine_element_model_impl.hpp:30
virtual const event_ids & get_deferred_events() const SX_OVERRIDE
Get the list of IDs of deferred events.
Definition: state_model_impl.cpp:49
virtual raw_const_transition_models get_transitions() const SX_OVERRIDE
Get the list of transitions of the state.
Definition: state_model_impl.cpp:38