Fast DDS  Version 3.6.1.0
Fast DDS
dds_xtypes_typeobjectPubSubTypes.hpp
1 // Copyright 2016 Proyectos y Sistemas de Mantenimiento SL (eProsima).
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
23 #ifndef FAST_DDS_GENERATED__DDS_XTYPES_TYPEOBJECT_PUBSUBTYPES_HPP
24 #define FAST_DDS_GENERATED__DDS_XTYPES_TYPEOBJECT_PUBSUBTYPES_HPP
25 
26 #include <mutex>
27 
28 #include <fastdds/dds/core/policy/QosPolicies.hpp>
29 #include <fastdds/dds/topic/TopicDataType.hpp>
30 #include <fastdds/rtps/common/InstanceHandle.hpp>
31 #include <fastdds/rtps/common/SerializedPayload.hpp>
32 #include <fastdds/utils/md5.hpp>
33 
34 #include "dds_xtypes_typeobject.hpp"
35 
36 
37 #if !defined(FASTDDS_GEN_API_VER) || (FASTDDS_GEN_API_VER != 3)
38 #error \
39  Generated dds_xtypes_typeobject is not compatible with current installed Fast DDS. Please, regenerate it with fastddsgen.
40 #endif // FASTDDS_GEN_API_VER
41 
42 namespace eprosima {
43 
44 namespace fastdds {
45 
46 namespace dds {
47 
48 
49 namespace xtypes {
50 
51 
52 typedef uint8_t EquivalenceKind;
53 typedef uint8_t TypeKind;
54 typedef uint8_t TypeIdentiferKind;
55 typedef eprosima::fastcdr::fixed_string<MEMBER_NAME_MAX_LENGTH> MemberName;
56 typedef eprosima::fastcdr::fixed_string<TYPE_NAME_MAX_LENGTH> QualifiedTypeName;
57 typedef uint8_t PrimitiveTypeId;
58 typedef std::array<uint8_t, 14> EquivalenceHash;
59 typedef std::array<uint8_t, 4> NameHash;
60 typedef uint32_t LBound;
61 typedef std::vector<eprosima::fastdds::dds::xtypes::LBound> LBoundSeq;
62 typedef uint8_t SBound;
63 typedef std::vector<eprosima::fastdds::dds::xtypes::SBound> SBoundSeq;
81 
82 #ifndef SWIG
83 namespace detail {
84 
85 template<typename Tag, typename Tag::type M>
87 {
88  friend constexpr typename Tag::type get(
89  Tag)
90  {
91  return M;
92  }
93 
94 };
95 
97 {
99  friend constexpr type get(
101 };
102 
104 
105 template <typename T, typename Tag>
106 inline size_t constexpr StringSTypeDefn_offset_of()
107 {
108  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
109 }
110 
111 } // namespace detail
112 #endif // ifndef SWIG
113 
114 
115 
116 
117 #ifndef SWIG
118 namespace detail {
119 
120 template<typename Tag, typename Tag::type M>
122 {
123  friend constexpr typename Tag::type get(
124  Tag)
125  {
126  return M;
127  }
128 
129 };
130 
132 {
134  friend constexpr type get(
136 };
137 
139 
140 template <typename T, typename Tag>
141 inline size_t constexpr StringLTypeDefn_offset_of()
142 {
143  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
144 }
145 
146 } // namespace detail
147 #endif // ifndef SWIG
148 
149 
150 
151 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeIdentifier> TypeIdentifierSeq;
152 typedef uint32_t MemberId;
153 typedef std::vector<eprosima::fastdds::dds::xtypes::AppliedAnnotationParameter> AppliedAnnotationParameterSeq;
154 typedef std::vector<eprosima::fastdds::dds::xtypes::AppliedAnnotation> AppliedAnnotationSeq;
155 
156 #ifndef SWIG
157 namespace detail {
158 
159 template<typename Tag, typename Tag::type M>
161 {
162  friend constexpr typename Tag::type get(
163  Tag)
164  {
165  return M;
166  }
167 
168 };
169 
171 {
173  friend constexpr type get(
175 };
176 
178 
179 template <typename T, typename Tag>
180 inline size_t constexpr MinimalMemberDetail_offset_of()
181 {
182  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
183 }
184 
185 } // namespace detail
186 #endif // ifndef SWIG
187 
188 
189 
190 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteStructMember> CompleteStructMemberSeq;
191 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalStructMember> MinimalStructMemberSeq;
192 typedef std::vector<int32_t> UnionCaseLabelSeq;
193 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteUnionMember> CompleteUnionMemberSeq;
194 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalUnionMember> MinimalUnionMemberSeq;
195 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteAnnotationParameter> CompleteAnnotationParameterSeq;
196 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalAnnotationParameter> MinimalAnnotationParameterSeq;
197 
198 #ifndef SWIG
199 namespace detail {
200 
201 template<typename Tag, typename Tag::type M>
203 {
204  friend constexpr typename Tag::type get(
205  Tag)
206  {
207  return M;
208  }
209 
210 };
211 
213 {
215  friend constexpr type get(
217 };
218 
220 
221 template <typename T, typename Tag>
222 inline size_t constexpr CommonCollectionHeader_offset_of()
223 {
224  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
225 }
226 
227 } // namespace detail
228 #endif // ifndef SWIG
229 
230 
231 
232 typedef uint16_t BitBound;
233 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteEnumeratedLiteral> CompleteEnumeratedLiteralSeq;
234 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalEnumeratedLiteral> MinimalEnumeratedLiteralSeq;
235 
236 #ifndef SWIG
237 namespace detail {
238 
239 template<typename Tag, typename Tag::type M>
241 {
242  friend constexpr typename Tag::type get(
243  Tag)
244  {
245  return M;
246  }
247 
248 };
249 
251 {
253  friend constexpr type get(
255 };
256 
258 
259 template <typename T, typename Tag>
260 inline size_t constexpr CommonEnumeratedHeader_offset_of()
261 {
262  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
263 }
264 
265 } // namespace detail
266 #endif // ifndef SWIG
267 
268 
269 
270 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteBitflag> CompleteBitflagSeq;
271 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalBitflag> MinimalBitflagSeq;
272 
273 #ifndef SWIG
274 namespace detail {
275 
276 template<typename Tag, typename Tag::type M>
278 {
279  friend constexpr typename Tag::type get(
280  Tag)
281  {
282  return M;
283  }
284 
285 };
286 
288 {
290  friend constexpr type get(
292 };
293 
295 
296 template <typename T, typename Tag>
297 inline size_t constexpr CommonBitmaskHeader_offset_of()
298 {
299  return ((::size_t) &reinterpret_cast<char const volatile&>((((T*)0)->*get(Tag()))));
300 }
301 
302 } // namespace detail
303 #endif // ifndef SWIG
304 
305 
306 
309 typedef std::vector<eprosima::fastdds::dds::xtypes::CompleteBitfield> CompleteBitfieldSeq;
310 typedef std::vector<eprosima::fastdds::dds::xtypes::MinimalBitfield> MinimalBitfieldSeq;
311 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeObject> TypeObjectSeq;
313 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeIdentifierTypeObjectPair> TypeIdentifierTypeObjectPairSeq;
314 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeIdentifierPair> TypeIdentifierPairSeq;
315 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeIdentfierWithSize> TypeIdentfierWithSizeSeq;
316 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeIdentifierWithDependencies> TypeIdentifierWithDependenciesSeq;
317 typedef std::vector<eprosima::fastdds::dds::xtypes::TypeInformation> TypeInformationSeq;
318 
319 } // namespace xtypes
320 
321 
322 } // namespace dds
323 
324 } // namespace fastdds
325 
326 } // namespace eprosima
327 
328 
329 #endif // FAST_DDS_GENERATED__DDS_XTYPES_TYPEOBJECT_PUBSUBTYPES_HPP
330 
This class represents the structure CommonBitmaskHeader defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:18804
This class represents the structure CommonCollectionHeader defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:14506
This class represents the structure CommonEnumeratedHeader defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:17380
This class represents the structure CompleteEnumeratedHeader defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:17503
This class represents the structure MinimalEnumeratedHeader defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:17683
This class represents the structure MinimalMemberDetail defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:7541
This class represents the structure StringLTypeDefn defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:620
This class represents the structure StringSTypeDefn defined by the user in the IDL file.
Definition: dds_xtypes_typeobject.hpp:497
Definition: DomainParticipant.hpp:46
constexpr size_t CommonEnumeratedHeader_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:260
constexpr size_t StringSTypeDefn_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:106
constexpr size_t CommonBitmaskHeader_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:297
constexpr size_t CommonCollectionHeader_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:222
constexpr size_t MinimalMemberDetail_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:180
constexpr size_t StringLTypeDefn_offset_of()
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:141
MemberFlag BitsetMemberFlag
Definition: dds_xtypes_typeobject.hpp:457
std::vector< MinimalBitfield > MinimalBitfieldSeq
Definition: dds_xtypes_typeobject.hpp:19986
uint32_t MemberId
Definition: dds_xtypes_typeobject.hpp:4237
MemberFlag CollectionElementFlag
Definition: dds_xtypes_typeobject.hpp:441
std::vector< TypeObject > TypeObjectSeq
Definition: dds_xtypes_typeobject.hpp:23842
std::vector< TypeIdentifierWithDependencies > TypeIdentifierWithDependenciesSeq
Definition: dds_xtypes_typeobject.hpp:24599
std::vector< CompleteUnionMember > CompleteUnionMemberSeq
Definition: dds_xtypes_typeobject.hpp:9748
std::vector< AppliedAnnotation > AppliedAnnotationSeq
Definition: dds_xtypes_typeobject.hpp:6589
std::vector< TypeIdentifierPair > TypeIdentifierPairSeq
Definition: dds_xtypes_typeobject.hpp:24208
TypeFlag BitsetTypeFlag
Definition: dds_xtypes_typeobject.hpp:487
std::vector< CompleteEnumeratedLiteral > CompleteEnumeratedLiteralSeq
Definition: dds_xtypes_typeobject.hpp:17191
TypeFlag CollectionTypeFlag
Definition: dds_xtypes_typeobject.hpp:477
std::vector< MinimalStructMember > MinimalStructMemberSeq
Definition: dds_xtypes_typeobject.hpp:8031
TypeFlag EnumTypeFlag
Definition: dds_xtypes_typeobject.hpp:483
std::vector< LBound > LBoundSeq
Definition: dds_xtypes_typeobject.hpp:134
std::vector< MinimalEnumeratedLiteral > MinimalEnumeratedLiteralSeq
Definition: dds_xtypes_typeobject.hpp:17373
uint32_t LBound
Definition: dds_xtypes_typeobject.hpp:132
eprosima::fastcdr::fixed_string< TYPE_NAME_MAX_LENGTH > QualifiedTypeName
Definition: dds_xtypes_typeobject.hpp:124
MemberFlag EnumeratedLiteralFlag
Definition: dds_xtypes_typeobject.hpp:449
TypeFlag AliasTypeFlag
Definition: dds_xtypes_typeobject.hpp:481
MemberFlag UnionDiscriminatorFlag
Definition: dds_xtypes_typeobject.hpp:447
uint8_t EquivalenceKind
Definition: dds_xtypes_typeobject.hpp:72
TypeFlag UnionTypeFlag
Definition: dds_xtypes_typeobject.hpp:475
std::vector< MinimalUnionMember > MinimalUnionMemberSeq
Definition: dds_xtypes_typeobject.hpp:9930
std::vector< SBound > SBoundSeq
Definition: dds_xtypes_typeobject.hpp:139
TypeFlag StructTypeFlag
Definition: dds_xtypes_typeobject.hpp:473
std::vector< TypeIdentfierWithSize > TypeIdentfierWithSizeSeq
Definition: dds_xtypes_typeobject.hpp:24380
std::vector< AppliedAnnotationParameter > AppliedAnnotationParameterSeq
Definition: dds_xtypes_typeobject.hpp:6407
eprosima::fastcdr::fixed_string< MEMBER_NAME_MAX_LENGTH > MemberName
Definition: dds_xtypes_typeobject.hpp:121
std::vector< TypeIdentifier > TypeIdentifierSeq
Definition: dds_xtypes_typeobject.hpp:4235
std::vector< MinimalAnnotationParameter > MinimalAnnotationParameterSeq
Definition: dds_xtypes_typeobject.hpp:11922
std::vector< MinimalBitflag > MinimalBitflagSeq
Definition: dds_xtypes_typeobject.hpp:18797
std::array< uint8_t, 4 > NameHash
Definition: dds_xtypes_typeobject.hpp:130
MemberFlag StructMemberFlag
Definition: dds_xtypes_typeobject.hpp:443
std::array< uint8_t, 14 > EquivalenceHash
Definition: dds_xtypes_typeobject.hpp:128
std::vector< CompleteBitfield > CompleteBitfieldSeq
Definition: dds_xtypes_typeobject.hpp:19804
TypeFlag BitmaskTypeFlag
Definition: dds_xtypes_typeobject.hpp:485
MinimalEnumeratedHeader MinimalBitmaskHeader
Definition: dds_xtypes_typeobject.hpp:18924
std::vector< int32_t > UnionCaseLabelSeq
Definition: dds_xtypes_typeobject.hpp:9302
MemberFlag UnionMemberFlag
Definition: dds_xtypes_typeobject.hpp:445
TypeFlag AnnotationTypeFlag
Definition: dds_xtypes_typeobject.hpp:479
std::vector< TypeIdentifierTypeObjectPair > TypeIdentifierTypeObjectPairSeq
Definition: dds_xtypes_typeobject.hpp:24026
uint16_t BitBound
Definition: dds_xtypes_typeobject.hpp:16839
MemberFlag AliasMemberFlag
Definition: dds_xtypes_typeobject.hpp:453
uint8_t TypeIdentiferKind
Definition: dds_xtypes_typeobject.hpp:107
uint8_t PrimitiveTypeId
Definition: dds_xtypes_typeobject.hpp:126
std::vector< TypeInformation > TypeInformationSeq
Definition: dds_xtypes_typeobject.hpp:24781
std::vector< CompleteBitflag > CompleteBitflagSeq
Definition: dds_xtypes_typeobject.hpp:18615
std::vector< CompleteAnnotationParameter > CompleteAnnotationParameterSeq
Definition: dds_xtypes_typeobject.hpp:11693
MemberFlag BitflagFlag
Definition: dds_xtypes_typeobject.hpp:455
uint16_t MemberFlag
Definition: dds_xtypes_typeobject.hpp:440
MemberFlag AnnotationParameterFlag
Definition: dds_xtypes_typeobject.hpp:451
uint16_t TypeFlag
Definition: dds_xtypes_typeobject.hpp:472
CompleteEnumeratedHeader CompleteBitmaskHeader
Definition: dds_xtypes_typeobject.hpp:18922
TypeObjectSeq StronglyConnectedComponent
Definition: dds_xtypes_typeobject.hpp:23844
std::vector< CompleteStructMember > CompleteStructMemberSeq
Definition: dds_xtypes_typeobject.hpp:7849
uint8_t TypeKind
Definition: dds_xtypes_typeobject.hpp:77
uint8_t SBound
Definition: dds_xtypes_typeobject.hpp:137
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:288
constexpr friend type get(CommonBitmaskHeader_f)
eprosima::fastdds::dds::xtypes::BitBound CommonBitmaskHeader::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:289
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:278
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:279
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:213
constexpr friend type get(CommonCollectionHeader_f)
eprosima::fastdds::dds::xtypes::LBound CommonCollectionHeader::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:214
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:203
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:204
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:251
constexpr friend type get(CommonEnumeratedHeader_f)
eprosima::fastdds::dds::xtypes::BitBound CommonEnumeratedHeader::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:252
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:241
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:242
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:171
eprosima::fastdds::dds::xtypes::NameHash MinimalMemberDetail::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:172
constexpr friend type get(MinimalMemberDetail_f)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:161
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:162
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:132
constexpr friend type get(StringLTypeDefn_f)
eprosima::fastdds::dds::xtypes::LBound StringLTypeDefn::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:133
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:122
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:123
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:97
constexpr friend type get(StringSTypeDefn_f)
eprosima::fastdds::dds::xtypes::SBound StringSTypeDefn::* type
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:98
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:87
constexpr friend Tag::type get(Tag)
Definition: dds_xtypes_typeobjectPubSubTypes.hpp:88