yasmine
model_element_type.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 MODEL_ELEMENT_TYPE_88FF44C0_7912_4212_8E10_42FF3FD556EA
12 #define MODEL_ELEMENT_TYPE_88FF44C0_7912_4212_8E10_42FF3FD556EA
13 
14 
15 #include <string>
16 
17 
18 namespace sxy
19 {
20 
21 
22 namespace model
23 {
24 
25 
26 #ifndef SX_CPP03_BOOST
27 
28 
30 {
42  TYE_JOIN = 10,
44  TYE_FORK = 12,
45  TYE_CHOICE = 13,
46  TYE_REGION = 14,
48 };
49 
50 
51 #else
52 
53 
54  struct model_element_type
55  {
56 
57 
58  enum inner
59  {
60  TYE_UNKNOWN = -1,
61  TYE_TRANSITION = 0,
62  TYE_SIMPLE_STATE = 1,
64  TYE_FINAL_STATE = 3,
67  TYE_ENTRY_POINT = 6,
68  TYE_EXIT_POINT = 7,
69  TYE_DEEP_HISTORY = 8,
71  TYE_JOIN = 10,
72  TYE_JUNCTION = 11,
73  TYE_FORK = 12,
74  TYE_CHOICE = 13,
75  TYE_REGION = 14,
77  };
78 
79 
80  // cppcheck-suppress noExplicitConstructor
81  model_element_type() : value_( TYE_UNKNOWN )
82  {
83  // Nothing to do...
84  }
85 
86 
87  // cppcheck-suppress noExplicitConstructor
88  model_element_type( const inner _value ) : value_( _value )
89  {
90  // Nothing to do...
91  }
92 
93 
94  // cppcheck-suppress functionConst
95  operator inner()
96  {
97  return ( value_ );
98  }
99 
100 
101  inner value_;
102 
103  };
104 
105 
106  bool operator==( const sxy::model::model_element_type& _lhs, const sxy::model::model_element_type::inner _rhs );
107  bool operator==( const sxy::model::model_element_type::inner _lhs, const sxy::model::model_element_type& _rhs );
108  bool operator<( const sxy::model::model_element_type _lhs, const sxy::model::model_element_type _rhs );
109 
110 
111 #endif
112 
113 
114 model_element_type model_element_type_from_string( const std::string& _type_as_string );
115 const std::string model_element_type_to_string( const model_element_type& _type );
116 
117 
118 }
119 
120 
121 }
122 
123 
124 #endif
model_element_type
Definition: model_element_type.hpp:29
Definition: model_element_type.hpp:46
Definition: model_element_type.hpp:33
model_element_type model_element_type_from_string(const std::string &_type_as_string)
Definition: model_element_type.cpp:47
Definition: model_element_type.hpp:31
Definition: model_element_type.hpp:47
Definition: model_element_type.hpp:44
Definition: model_element_type.hpp:36
Definition: model_element_type.hpp:43
Definition: model_element_type.hpp:45
Definition: model_element_type.hpp:42
Definition: algorithm_parameters.hpp:16
Definition: model_element_type.hpp:35
Definition: model_element_type.hpp:32
Definition: model_element_type.hpp:40
Definition: model_element_type.hpp:34
Definition: model_element_type.hpp:38
Definition: model_element_type.hpp:37
const std::string model_element_type_to_string(const model_element_type &_type)
Definition: model_element_type.cpp:125
Definition: model_element_type.hpp:41
Definition: model_element_type.hpp:39