yasmine
transition_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 TRANSITION_MODEL_IMPL_6EA9FC2E_FBED_4750_9D48_532B7A0FFAC2
12 #define TRANSITION_MODEL_IMPL_6EA9FC2E_FBED_4750_9D48_532B7A0FFAC2
13 
14 
15 #include "transition_model.hpp"
16 
17 #include "essentials/uri.hpp"
18 
20 
21 
22 namespace sxy
23 {
24 
25 
26 namespace model
27 {
28 
29 
34 {
35 public:
44  transition_model_impl( const std::string& _name, const sxe::uri& _source_uri, const sxe::uri& _target_uri,
45  const transition_model_kind _kind, const std::string& _behavior, const std::string& _guard,
46  const event_ids& _events );
47  virtual ~transition_model_impl() SX_NOEXCEPT SX_OVERRIDE;
48  SX_NO_COPY( transition_model_impl )
49  virtual transition_model_kind get_kind() const SX_OVERRIDE;
50 
53  virtual const std::string& get_behavior() const SX_OVERRIDE;
56  virtual const std::string& get_guard() const SX_OVERRIDE;
58  virtual const sxe::uri& get_source() const SX_OVERRIDE;
60  virtual const sxe::uri& get_target() const SX_OVERRIDE;
62  const event_ids& get_event_ids() const SX_OVERRIDE;
63 
64 
65 private:
66  const sxe::uri source_;
67  const sxe::uri target_;
68  const transition_model_kind kind_;
69  const std::string behavior_;
70  const std::string guard_;
71  const event_ids events_;
72 };
73 
74 
75 }
76 
77 
78 }
79 
80 
81 #endif
virtual const std::string & get_behavior() const SX_OVERRIDE
Get the behavior of the transition.
Definition: transition_model_impl.cpp:48
const event_ids & get_event_ids() const SX_OVERRIDE
Get the List of IDs of transition's events.
Definition: transition_model_impl.cpp:72
virtual const sxe::uri & get_target() const SX_OVERRIDE
Set the URI of the transition's source vertex.
Definition: transition_model_impl.cpp:66
Definition: transition_model_impl.hpp:32
virtual transition_model_kind get_kind() const SX_OVERRIDE
Definition: transition_model_impl.cpp:42
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
transition_model_kind
Definition: transition_model_kind.hpp:30
virtual const sxe::uri & get_source() const SX_OVERRIDE
Get the URI of the transition&#39;s source vertex.
Definition: transition_model_impl.cpp:60
virtual const std::string & get_guard() const SX_OVERRIDE
Get the guard of the transition.
Definition: transition_model_impl.cpp:54
virtual ~transition_model_impl() SX_NOEXCEPT SX_OVERRIDE
Definition: transition_model_impl.cpp:36
Interface for a transition in the model.
Definition: transition_model.hpp:31
transition_model_impl(const std::string &_name, const sxe::uri &_source_uri, const sxe::uri &_target_uri, const transition_model_kind _kind, const std::string &_behavior, const std::string &_guard, const event_ids &_events)
Constructor.
Definition: transition_model_impl.cpp:21
An element of the state machine in the model.
Definition: state_machine_element_model_impl.hpp:30