| Fast DDS Version 3.3.0 Fast DDS

Loading...
Searching...
No Matches
TypeObjectUtils.hpp
1// Copyright 2023 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
19
20#ifndef FASTDDS_DDS_XTYPES_TYPE_REPRESENTATION__TYPEOBJECTUTILS_HPP
21#define FASTDDS_DDS_XTYPES_TYPE_REPRESENTATION__TYPEOBJECTUTILS_HPP
22
23#include <string>
24
25#include <fastcdr/cdr/fixed_size_string.hpp>
26#include <fastcdr/xcdr/optional.hpp>
27
28#include <fastdds/dds/core/ReturnCode.hpp>
29#include <fastdds/dds/xtypes/common.hpp>
30#include <fastdds/dds/xtypes/dynamic_types/Types.hpp>
31#include <fastdds/dds/xtypes/exception/Exception.hpp>
32#include <fastdds/dds/xtypes/type_representation/TypeObject.hpp>
33#include <fastdds/fastdds_dll.hpp>
34
35 namespace eprosima {
36 namespace fastdds {
37 namespace dds {
38
39 class DynamicTypeBuilderFactoryImpl;
40
41 namespace xtypes {
42
43 class TypeObjectRegistry;
44
45 using ReturnCode_t = eprosima::fastdds::dds::ReturnCode_t;
46
47 class TypeObjectUtils
48{
49 public:
50
60 FASTDDS_EXPORTED_API static const TypeObjectHashId build_type_object_hash_id(
61 uint8_t discriminator,
62 const EquivalenceHash& hash);
63
71 FASTDDS_EXPORTED_API static CollectionElementFlag build_collection_element_flag(
72 TryConstructFailAction try_construct_kind,
73 bool external);
74
87 FASTDDS_EXPORTED_API static StructMemberFlag build_struct_member_flag(
88 TryConstructFailAction try_construct_kind,
89 bool optional,
90 bool must_understand,
91 bool key,
92 bool external);
93
102 FASTDDS_EXPORTED_API static UnionMemberFlag build_union_member_flag(
103 TryConstructFailAction try_construct_kind,
104 bool default_member,
105 bool external);
106
114 FASTDDS_EXPORTED_API static UnionDiscriminatorFlag build_union_discriminator_flag(
115 TryConstructFailAction try_construct_kind,
116 bool key);
117
124 FASTDDS_EXPORTED_API static EnumeratedLiteralFlag build_enumerated_literal_flag(
125 bool default_literal);
126
133
142 FASTDDS_EXPORTED_API static StructTypeFlag build_struct_type_flag(
143 ExtensibilityKind extensibility_kind,
144 bool nested,
145 bool autoid_hash);
146
155 FASTDDS_EXPORTED_API static UnionTypeFlag build_union_type_flag(
156 ExtensibilityKind extensibility_kind,
157 bool nested,
158 bool autoid_hash);
159
168
169 //{{{ Indirect Hash TypeIdentifiers
170
179 FASTDDS_EXPORTED_API static const StringSTypeDefn build_string_s_type_defn(
180 SBound bound);
181
190 FASTDDS_EXPORTED_API static const StringLTypeDefn build_string_l_type_defn(
191 LBound bound);
192
203 FASTDDS_EXPORTED_API static const PlainCollectionHeader build_plain_collection_header(
204 EquivalenceKind equiv_kind,
205 CollectionElementFlag element_flags);
206
222 FASTDDS_EXPORTED_API static const PlainSequenceSElemDefn build_plain_sequence_s_elem_defn(
223 const PlainCollectionHeader& header,
224 SBound s_bound,
225 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier);
226
242 FASTDDS_EXPORTED_API static const PlainSequenceLElemDefn build_plain_sequence_l_elem_defn(
243 const PlainCollectionHeader& header,
244 LBound l_bound,
245 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier);
246
255 template<typename element>
256 static void add_array_dimension(
257 std::vector<element>& array_bound_seq,
258 element dimension_bound)
259 {
260 if (dimension_bound == INVALID_LBOUND)
261 {
262 throw InvalidArgumentError("bound parameter must be greater than 0");
263 }
264 array_bound_seq.push_back(dimension_bound);
265 }
266
282 FASTDDS_EXPORTED_API static const PlainArraySElemDefn build_plain_array_s_elem_defn(
283 const PlainCollectionHeader& header,
284 const SBoundSeq& array_bound_seq,
285 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier);
286
303 FASTDDS_EXPORTED_API static const PlainArrayLElemDefn build_plain_array_l_elem_defn(
304 const PlainCollectionHeader& header,
305 const LBoundSeq& array_bound_seq,
306 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier);
307
329 FASTDDS_EXPORTED_API static const PlainMapSTypeDefn build_plain_map_s_type_defn(
330 const PlainCollectionHeader& header,
331 const SBound bound,
332 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier,
333 const CollectionElementFlag key_flags,
334 const eprosima::fastcdr::external<TypeIdentifier>& key_identifier);
335
357 FASTDDS_EXPORTED_API static const PlainMapLTypeDefn build_plain_map_l_type_defn(
358 const PlainCollectionHeader& header,
359 const LBound bound,
360 const eprosima::fastcdr::external<TypeIdentifier>& element_identifier,
361 const CollectionElementFlag key_flags,
362 const eprosima::fastcdr::external<TypeIdentifier>& key_identifier);
363
372 FASTDDS_EXPORTED_API static const StronglyConnectedComponentId build_strongly_connected_component_id(
373 const TypeObjectHashId& sc_component_id,
374 int32_t scc_length,
375 int32_t scc_index);
376
382 FASTDDS_EXPORTED_API static const ExtendedTypeDefn build_extended_type_defn();
383
384 //}}}
385
386 //{{{ Register Indirect Hash TypeIdentifiers
387
391
406 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_s_string_type_identifier(
407 const StringSTypeDefn& string,
408 const std::string& type_name,
409 TypeIdentifierPair& type_ids,
410 bool wstring = false);
411
426 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_l_string_type_identifier(
427 const StringLTypeDefn& string,
428 const std::string& type_name,
429 TypeIdentifierPair& type_ids,
430 bool wstring = false);
431
445 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_s_sequence_type_identifier(
446 const PlainSequenceSElemDefn& plain_seq,
447 const std::string& type_name,
448 TypeIdentifierPair& type_ids);
449
463 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_l_sequence_type_identifier(
464 const PlainSequenceLElemDefn& plain_seq,
465 const std::string& type_name,
466 TypeIdentifierPair& type_ids);
467
481 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_s_array_type_identifier(
482 const PlainArraySElemDefn& plain_array,
483 const std::string& type_name,
484 TypeIdentifierPair& type_ids);
485
499 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_l_array_type_identifier(
500 const PlainArrayLElemDefn& plain_array,
501 const std::string& type_name,
502 TypeIdentifierPair& type_ids);
503
517 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_s_map_type_identifier(
518 const PlainMapSTypeDefn& plain_map,
519 const std::string& type_name,
520 TypeIdentifierPair& type_ids);
521
535 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_l_map_type_identifier(
536 const PlainMapLTypeDefn& plain_map,
537 const std::string& type_name,
538 TypeIdentifierPair& type_ids);
539
550 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_scc_type_identifier(
551 const StronglyConnectedComponentId& scc,
552 const std::string& type_name);
553 //}}}
554
555 //{{{ Annotation usage
561 FASTDDS_EXPORTED_API static const ExtendedAnnotationParameterValue build_extended_annotation_parameter_value();
562
569 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
570 bool boolean_value);
571
578 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value_byte(
579 uint8_t byte_value);
580
587 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
588 int8_t int8_value);
589
596 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
597 uint8_t uint8_value);
598
605 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
606 int16_t int16_value);
607
614 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
615 uint16_t uint16_value);
616
623 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
624 int32_t int32_value);
625
632 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
633 uint32_t uint32_value);
634
641 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
642 int64_t int64_value);
643
650 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
651 uint64_t uint64_value);
652
659 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
660 float float32_value);
661
668 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
669 double float64_value);
670
677 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
678 long double float128_value);
679
686 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
687 char char_value);
688
695 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
696 wchar_t wchar_value);
697
704 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value_enum(
705 int32_t enumerated_value);
706
713 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
714 const eprosima::fastcdr::fixed_string<128>& string8_value);
715
722 FASTDDS_EXPORTED_API static const AnnotationParameterValue build_annotation_parameter_value(
723 const std::wstring& string16_value);
724
732 FASTDDS_EXPORTED_API static const AppliedAnnotationParameter build_applied_annotation_parameter(
733 const NameHash& paramname_hash,
734 const AnnotationParameterValue& value);
735
744 FASTDDS_EXPORTED_API static void add_applied_annotation_parameter(
745 AppliedAnnotationParameterSeq& param_seq,
746 const AppliedAnnotationParameter& param);
747
761 FASTDDS_EXPORTED_API static const AppliedAnnotation build_applied_annotation(
762 const TypeIdentifier& annotation_typeid,
763 const eprosima::fastcdr::optional<AppliedAnnotationParameterSeq>& param_seq);
764
774 FASTDDS_EXPORTED_API static void add_applied_annotation(
775 AppliedAnnotationSeq& ann_custom_seq,
776 const AppliedAnnotation& ann_custom);
777
786 FASTDDS_EXPORTED_API static const AppliedVerbatimAnnotation build_applied_verbatim_annotation(
787 PlacementKind placement,
788 const eprosima::fastcdr::fixed_string<32>& language,
789 const std::string& text);
790 //}}}
791
792 //{{{ Aggregate types
802 FASTDDS_EXPORTED_API static const AppliedBuiltinMemberAnnotations build_applied_builtin_member_annotations(
803 const eprosima::fastcdr::optional<std::string>& unit,
804 const eprosima::fastcdr::optional<AnnotationParameterValue>& min,
805 const eprosima::fastcdr::optional<AnnotationParameterValue>& max,
806 const eprosima::fastcdr::optional<std::string>& hash_id);
807
819 FASTDDS_EXPORTED_API static const CommonStructMember build_common_struct_member(
820 MemberId member_id,
821 StructMemberFlag member_flags,
822 const TypeIdentifier& member_type_id);
823
835 FASTDDS_EXPORTED_API static const CompleteMemberDetail build_complete_member_detail(
836 const MemberName& name,
837 const eprosima::fastcdr::optional<AppliedBuiltinMemberAnnotations>& ann_builtin,
838 const eprosima::fastcdr::optional<AppliedAnnotationSeq>& ann_custom);
839
843
854 FASTDDS_EXPORTED_API static const CompleteStructMember build_complete_struct_member(
855 const CommonStructMember& common,
856 const CompleteMemberDetail& detail);
857
868 FASTDDS_EXPORTED_API static void add_complete_struct_member(
869 CompleteStructMemberSeq& member_seq,
870 const CompleteStructMember& member);
871
875
884 FASTDDS_EXPORTED_API static const AppliedBuiltinTypeAnnotations build_applied_builtin_type_annotations(
885 const eprosima::fastcdr::optional<AppliedVerbatimAnnotation>& verbatim);
886
890
901 FASTDDS_EXPORTED_API static const CompleteTypeDetail build_complete_type_detail(
902 const eprosima::fastcdr::optional<AppliedBuiltinTypeAnnotations>& ann_builtin,
903 const eprosima::fastcdr::optional<AppliedAnnotationSeq>& ann_custom,
904 const QualifiedTypeName& type_name);
905
917 FASTDDS_EXPORTED_API static const CompleteStructHeader build_complete_struct_header(
918 const TypeIdentifier& base_type,
919 const CompleteTypeDetail& detail);
920
924
938 FASTDDS_EXPORTED_API static const CompleteStructType build_complete_struct_type(
939 StructTypeFlag struct_flags,
940 const CompleteStructHeader& header,
941 const CompleteStructMemberSeq& member_seq);
942
946 //}}}
947
948 //{{{ Union
949
956 FASTDDS_EXPORTED_API static void add_union_case_label(
957 UnionCaseLabelSeq& label_seq,
958 int32_t label);
959
972 FASTDDS_EXPORTED_API static const CommonUnionMember build_common_union_member(
973 MemberId member_id,
974 UnionMemberFlag member_flags,
975 const TypeIdentifier& type_id,
976 const UnionCaseLabelSeq& label_seq);
977
988 FASTDDS_EXPORTED_API static const CompleteUnionMember build_complete_union_member(
989 const CommonUnionMember& common,
990 const CompleteMemberDetail& detail);
991
1006 FASTDDS_EXPORTED_API static void add_complete_union_member(
1007 CompleteUnionMemberSeq& complete_union_member_seq,
1008 const CompleteUnionMember& member);
1009
1013
1028 FASTDDS_EXPORTED_API static const CommonDiscriminatorMember build_common_discriminator_member(
1029 UnionDiscriminatorFlag member_flags,
1030 const TypeIdentifier& type_id);
1031
1045 FASTDDS_EXPORTED_API static const CompleteDiscriminatorMember build_complete_discriminator_member(
1046 const CommonDiscriminatorMember& common,
1047 const eprosima::fastcdr::optional<AppliedBuiltinTypeAnnotations>& ann_builtin,
1048 const eprosima::fastcdr::optional<AppliedAnnotationSeq>& ann_custom);
1049
1053
1062 FASTDDS_EXPORTED_API static const CompleteUnionHeader build_complete_union_header(
1063 const CompleteTypeDetail& detail);
1064
1068
1084 FASTDDS_EXPORTED_API static const CompleteUnionType build_complete_union_type(
1085 UnionTypeFlag union_flags,
1086 const CompleteUnionHeader& header,
1087 const CompleteDiscriminatorMember& discriminator,
1088 const CompleteUnionMemberSeq& member_seq);
1089
1093 //}}}
1094
1095 //{{{ Annotation
1096
1107 FASTDDS_EXPORTED_API static const CommonAnnotationParameter build_common_annotation_parameter(
1108 AnnotationParameterFlag member_flags,
1109 const TypeIdentifier& member_type_id);
1110
1123 FASTDDS_EXPORTED_API static const CompleteAnnotationParameter build_complete_annotation_parameter(
1124 const CommonAnnotationParameter& common,
1125 const MemberName& name,
1126 const AnnotationParameterValue& default_value);
1127
1138 FASTDDS_EXPORTED_API static void add_complete_annotation_parameter(
1139 CompleteAnnotationParameterSeq& sequence,
1140 const CompleteAnnotationParameter& param);
1141
1145
1153 FASTDDS_EXPORTED_API static const CompleteAnnotationHeader build_complete_annotation_header(
1154 const QualifiedTypeName& annotation_name);
1155
1159
1172 FASTDDS_EXPORTED_API static const CompleteAnnotationType build_complete_annotation_type(
1173 AnnotationTypeFlag annotation_flag,
1174 const CompleteAnnotationHeader& header,
1175 const CompleteAnnotationParameterSeq& member_seq);
1176
1180 //}}}
1181
1182 //{{{ Alias
1183
1194 FASTDDS_EXPORTED_API static const CommonAliasBody build_common_alias_body(
1195 AliasMemberFlag related_flags,
1196 const TypeIdentifier& related_type);
1197
1210 FASTDDS_EXPORTED_API static const CompleteAliasBody build_complete_alias_body(
1211 const CommonAliasBody& common,
1212 const eprosima::fastcdr::optional<AppliedBuiltinMemberAnnotations>& ann_builtin,
1213 const eprosima::fastcdr::optional<AppliedAnnotationSeq>& ann_custom);
1214
1218
1227 FASTDDS_EXPORTED_API static const CompleteAliasHeader build_complete_alias_header(
1228 const CompleteTypeDetail& detail);
1229
1233
1245 FASTDDS_EXPORTED_API static const CompleteAliasType build_complete_alias_type(
1246 AliasTypeFlag alias_flags,
1247 const CompleteAliasHeader& header,
1248 const CompleteAliasBody& body);
1249
1253 //}}}
1254
1255 //{{{ Collections
1256
1267 FASTDDS_EXPORTED_API static const CompleteElementDetail build_complete_element_detail(
1268 const eprosima::fastcdr::optional<AppliedBuiltinMemberAnnotations>& ann_builtin,
1269 const eprosima::fastcdr::optional<AppliedAnnotationSeq>& ann_custom);
1270
1281 FASTDDS_EXPORTED_API static const CommonCollectionElement build_common_collection_element(
1282 CollectionElementFlag element_flags,
1283 const TypeIdentifier& type);
1284
1295 FASTDDS_EXPORTED_API static const CompleteCollectionElement build_complete_collection_element(
1296 const CommonCollectionElement& common,
1297 const CompleteElementDetail& detail);
1298
1302
1311 FASTDDS_EXPORTED_API static const CommonCollectionHeader build_common_collection_header(
1312 LBound bound);
1313
1324 FASTDDS_EXPORTED_API static const CompleteCollectionHeader build_complete_collection_header(
1325 const CommonCollectionHeader& common,
1326 const eprosima::fastcdr::optional<CompleteTypeDetail>& detail);
1327
1331 //}}}
1332
1333 //{{{ Sequence
1334
1347 FASTDDS_EXPORTED_API static const CompleteSequenceType build_complete_sequence_type(
1348 CollectionTypeFlag collection_flag,
1349 const CompleteCollectionHeader& header,
1350 const CompleteCollectionElement& element);
1351
1355 //}}}
1356
1357 //{{{ Array
1358
1366 FASTDDS_EXPORTED_API static const CommonArrayHeader build_common_array_header(
1367 const LBoundSeq& bound_seq);
1368
1379 FASTDDS_EXPORTED_API static const CompleteArrayHeader build_complete_array_header(
1380 const CommonArrayHeader& common,
1381 const CompleteTypeDetail& detail);
1382
1386
1399 FASTDDS_EXPORTED_API static const CompleteArrayType build_complete_array_type(
1400 CollectionTypeFlag collection_flag,
1401 const CompleteArrayHeader& header,
1402 const CompleteCollectionElement& element);
1403
1407 //}}}
1408
1409 //{{{ Map
1410
1426 FASTDDS_EXPORTED_API static const CompleteMapType build_complete_map_type(
1427 CollectionTypeFlag collection_flag,
1428 const CompleteCollectionHeader& header,
1429 const CompleteCollectionElement& key,
1430 const CompleteCollectionElement& element);
1431
1435 //}}}
1436
1437 //{{{ Enumeration
1438
1448 FASTDDS_EXPORTED_API static const CommonEnumeratedLiteral build_common_enumerated_literal(
1449 int32_t value,
1450 EnumeratedLiteralFlag flags);
1451
1462 FASTDDS_EXPORTED_API static const CompleteEnumeratedLiteral build_complete_enumerated_literal(
1463 const CommonEnumeratedLiteral& common,
1464 const CompleteMemberDetail& detail);
1465
1476 FASTDDS_EXPORTED_API static void add_complete_enumerated_literal(
1477 CompleteEnumeratedLiteralSeq& sequence,
1478 const CompleteEnumeratedLiteral& enum_literal);
1479
1483
1495 FASTDDS_EXPORTED_API static const CommonEnumeratedHeader build_common_enumerated_header(
1496 BitBound bit_bound,
1497 bool bitmask = false);
1498
1511 FASTDDS_EXPORTED_API static const CompleteEnumeratedHeader build_complete_enumerated_header(
1512 const CommonEnumeratedHeader& common,
1513 const CompleteTypeDetail& detail,
1514 bool bitmask = false);
1515
1519
1532 FASTDDS_EXPORTED_API static const CompleteEnumeratedType build_complete_enumerated_type(
1533 EnumTypeFlag enum_flags,
1534 const CompleteEnumeratedHeader& header,
1535 const CompleteEnumeratedLiteralSeq& literal_seq);
1536
1540 //}}}
1541
1542 //{{{ Bitmask
1543
1556 FASTDDS_EXPORTED_API static const CommonBitflag build_common_bitflag(
1557 uint16_t position,
1558 BitflagFlag flags);
1559
1571 FASTDDS_EXPORTED_API static const CompleteBitflag build_complete_bitflag(
1572 const CommonBitflag& common,
1573 const CompleteMemberDetail& detail);
1574
1585 FASTDDS_EXPORTED_API static void add_complete_bitflag(
1586 CompleteBitflagSeq& sequence,
1587 const CompleteBitflag& bitflag);
1588
1592
1598
1611 FASTDDS_EXPORTED_API static const CompleteBitmaskType build_complete_bitmask_type(
1612 BitmaskTypeFlag bitmask_flags,
1613 const CompleteBitmaskHeader& header,
1614 const CompleteBitflagSeq& flag_seq);
1615 //}}}
1616
1617 //{{{ Bitset
1618
1636 FASTDDS_EXPORTED_API static const CommonBitfield build_common_bitfield(
1637 uint16_t position,
1638 BitsetMemberFlag flags,
1639 uint8_t bitcount,
1640 TypeKind holder_type);
1641
1653 FASTDDS_EXPORTED_API static const CompleteBitfield build_complete_bitfield(
1654 const CommonBitfield& common,
1655 const CompleteMemberDetail& detail);
1656
1666 FASTDDS_EXPORTED_API static void add_complete_bitfield(
1667 CompleteBitfieldSeq& sequence,
1668 const CompleteBitfield& bitfield);
1669
1673
1682 FASTDDS_EXPORTED_API static const CompleteBitsetHeader build_complete_bitset_header(
1683 const CompleteTypeDetail& detail);
1684
1688
1701 FASTDDS_EXPORTED_API static const CompleteBitsetType build_complete_bitset_type(
1702 BitsetTypeFlag bitset_flags,
1703 const CompleteBitsetHeader& header,
1704 const CompleteBitfieldSeq& field_seq);
1705
1709 //}}}
1710
1711 //{{{ Type Object
1712
1718 FASTDDS_EXPORTED_API static const CompleteExtendedType build_complete_extended_type();
1719
1735 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_alias_type_object(
1736 const CompleteAliasType& alias_type,
1737 const std::string& type_name,
1738 TypeIdentifierPair& type_ids);
1739
1755 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_annotation_type_object(
1756 const CompleteAnnotationType& annotation_type,
1757 const std::string& type_name,
1758 TypeIdentifierPair& type_ids);
1759
1775 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_struct_type_object(
1776 const CompleteStructType& struct_type,
1777 const std::string& type_name,
1778 TypeIdentifierPair& type_ids);
1779
1795 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_union_type_object(
1796 const CompleteUnionType& union_type,
1797 const std::string& type_name,
1798 TypeIdentifierPair& type_ids);
1799
1815 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_bitset_type_object(
1816 const CompleteBitsetType& bitset_type,
1817 const std::string& type_name,
1818 TypeIdentifierPair& type_ids);
1819
1833 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_sequence_type_object(
1834 const CompleteSequenceType& sequence_type,
1835 const std::string& type_name);
1836
1850 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_array_type_object(
1851 const CompleteArrayType& array_type,
1852 const std::string& type_name);
1853
1867 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_map_type_object(
1868 const CompleteMapType& map_type,
1869 const std::string& type_name);
1870
1886 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_enumerated_type_object(
1887 const CompleteEnumeratedType& enumerated_type,
1888 const std::string& type_name,
1889 TypeIdentifierPair& type_ids);
1890
1906 FASTDDS_EXPORTED_API static ReturnCode_t build_and_register_bitmask_type_object(
1907 const CompleteBitmaskType& bitmask_type,
1908 const std::string& type_name,
1909 TypeIdentifierPair& type_ids);
1910 //}}}
1911
1912 //{{{ Auxiliary public methods
1913
1920 FASTDDS_EXPORTED_API static const NameHash name_hash(
1921 const std::string& name);
1922
1930 FASTDDS_EXPORTED_API static void type_object_consistency(
1931 const TypeObject& type_object);
1932
1940 FASTDDS_EXPORTED_API static const TypeIdentifier& retrieve_minimal_type_identifier(
1941 const TypeIdentifierPair& type_ids,
1942 bool& ec);
1943
1951 FASTDDS_EXPORTED_API static const TypeIdentifier& retrieve_complete_type_identifier(
1952 const TypeIdentifierPair& type_ids,
1953 bool& ec);
1954 //}}}
1955
1956 private:
1957
1958 friend class TypeObjectRegistry;
1959 friend class eprosima::fastdds::dds::DynamicTypeBuilderFactoryImpl;
1960
1961 // Class with only static methods
1962 TypeObjectUtils() = delete;
1963 ~TypeObjectUtils() = delete;
1964
1965 protected:
1966
1967 //{{{ Auxiliary methods
1968
1975 static void set_try_construct_behavior(
1976 MemberFlag& member_flag,
1977 TryConstructFailAction try_construct_kind);
1978
1987 static void set_type_flag(
1988 TypeFlag& type_flag,
1989 ExtensibilityKind extensibility_kind,
1990 bool nested,
1991 bool autoid_hash);
1992
1999 static void set_extensibility_kind(
2000 TypeFlag& type_flag,
2001 ExtensibilityKind extensibility_kind);
2002
2016 static bool is_fully_descriptive_type_identifier(
2017 const TypeIdentifier& type_identifier);
2018
2028 static bool is_direct_hash_type_identifier(
2029 const TypeIdentifier& type_identifier);
2030
2043 static bool is_indirect_hash_type_identifier(
2044 const TypeIdentifier& type_identifier);
2045 //}}}
2046
2047 //{{{ Consistency methods (Debug)
2048
2053
2061 static void l_bound_consistency(
2062 LBound bound);
2063
2072 template<typename T>
2073 static void array_bound_seq_consistency(
2074 const T& array)
2075 {
2076 if (array.empty())
2077 {
2078 throw InvalidArgumentError("array_bound_seq parameter must not be empty");
2079 }
2080 for (auto bound : array)
2081 {
2082 if (INVALID_LBOUND == bound)
2083 {
2084 throw InvalidArgumentError("bound parameter must be greater than 0");
2085 }
2086 }
2087 }
2088
2096 static void l_bound_seq_consistency(
2097 const LBoundSeq& bound_seq);
2098
2106 static void collection_element_flag_consistency(
2107 CollectionElementFlag collection_element_flag);
2108
2118 static void struct_member_flag_consistency(
2119 StructMemberFlag member_flags);
2120
2128 static void union_member_flag_consistency(
2129 UnionMemberFlag union_member_flag);
2130
2138 static void union_discriminator_flag_consistency(
2139 UnionDiscriminatorFlag union_discriminator_flag);
2140
2148 static void enumerated_literal_flag_consistency(
2149 EnumeratedLiteralFlag enumerated_literal_flag);
2150
2158 static void type_flag_consistency(
2159 TypeFlag type_flag);
2160
2169 template<typename T>
2170 static void empty_flags_consistency(
2171 T flags)
2172 {
2173 if (flags != 0)
2174 {
2175 throw InvalidArgumentError("Flags should be empty. No flags apply");
2176 }
2177 }
2178
2186 static void equivalence_kind_consistency(
2187 EquivalenceKind equiv_kind);
2188
2198 static void plain_collection_header_consistency(
2199 const PlainCollectionHeader& header);
2200
2211 static void plain_collection_type_identifier_header_consistency(
2212 const PlainCollectionHeader& header,
2213 const TypeIdentifier& element_identifier);
2214
2224 static EquivalenceKind get_map_component_equiv_kind_for_consistency(
2225 const TypeIdentifier& identifier);
2226
2238 static void plain_map_type_components_consistency(
2239 const PlainCollectionHeader& header,
2240 const TypeIdentifier& type_identifier);
2241
2252 static void map_key_type_identifier_consistency(
2253 const TypeIdentifier& key_identifier);
2254
2262 static void string_ldefn_consistency(
2263 const StringLTypeDefn& string);
2264
2272 static void seq_sdefn_consistency(
2273 const PlainSequenceSElemDefn& plain_seq);
2274
2282 static void seq_ldefn_consistency(
2283 const PlainSequenceLElemDefn& plain_seq);
2284
2292 static void array_sdefn_consistency(
2293 const PlainArraySElemDefn& plain_array);
2294
2302 static void array_ldefn_consistency(
2303 const PlainArrayLElemDefn& plain_array);
2304
2312 static void map_sdefn_consistency(
2313 const PlainMapSTypeDefn& plain_map);
2314
2322 static void map_ldefn_consistency(
2323 const PlainMapLTypeDefn& plain_map);
2324
2332 static void direct_hash_type_identifier_consistency(
2333 const TypeIdentifier& type_id);
2334
2342 static void type_identifier_consistency(
2343 const TypeIdentifier& type_identifier);
2344
2352 static void applied_annotation_parameter_seq_consistency(
2353 const AppliedAnnotationParameterSeq& applied_annotation_parameter_seq);
2354
2362 static void applied_annotation_type_identifier_consistency(
2363 const TypeIdentifier& annotation_type_id);
2364
2372 static void applied_annotation_consistency(
2373 const AppliedAnnotation& applied_annotation);
2374
2382 static void applied_annotation_seq_consistency(
2383 const AppliedAnnotationSeq& applied_annotation_seq);
2384
2392 static void applied_verbatim_annotation_consistency(
2393 const AppliedVerbatimAnnotation& applied_verbatim_annotation);
2394
2402 static void common_struct_member_consistency(
2403 const CommonStructMember& common_struct_member);
2404
2412 static void complete_member_detail_consistency(
2413 const CompleteMemberDetail& complete_member_detail);
2414
2423 static void common_struct_member_and_complete_member_detail_consistency(
2424 const CommonStructMember& common_struct_member,
2425 const CompleteMemberDetail& complete_member_detail);
2426
2434 static void string_member_id_consistency(
2435 MemberId member_id,
2436 const std::string& string_value);
2437
2445 static void complete_struct_member_consistency(
2446 const CompleteStructMember& complete_struct_member);
2447
2455 static void complete_struct_member_seq_consistency(
2456 const CompleteStructMemberSeq& complete_struct_member_seq);
2457
2465 static void applied_builtin_type_annotations_consistency(
2466 const AppliedBuiltinTypeAnnotations& applied_builtin_type_annotations);
2467
2475 static void complete_type_detail_consistency(
2476 const CompleteTypeDetail& complete_type_detail);
2477
2485 static void structure_base_type_consistency(
2486 const TypeIdentifier& base_type);
2487
2495 static void complete_struct_header_consistency(
2496 const CompleteStructHeader& complete_struct_header);
2497
2505 static void complete_struct_type_consistency(
2506 const CompleteStructType& complete_struct_type);
2507
2515 static void minimal_struct_type_consistency(
2516 const MinimalStructType& minimal_struct_type);
2517
2525 static void union_case_label_seq_consistency(
2526 const UnionCaseLabelSeq& union_case_label_seq);
2527
2535 static void common_union_member_consistency(
2536 const CommonUnionMember& common_union_member);
2537
2546 static void common_union_member_complete_member_detail_consistency(
2547 const CommonUnionMember& common_union_member,
2548 const CompleteMemberDetail& complete_member_detail);
2549
2557 static void complete_union_member_consistency(
2558 const CompleteUnionMember& complete_union_member);
2559
2567 static void complete_union_member_seq_consistency(
2568 const CompleteUnionMemberSeq& complete_union_member_seq);
2569
2577 static void common_discriminator_member_type_identifier_consistency(
2578 const TypeIdentifier& type_id);
2579
2587 static void common_discriminator_member_consistency(
2588 const CommonDiscriminatorMember& common_discriminator_member);
2589
2597 static void complete_discriminator_member_consistency(
2598 const CompleteDiscriminatorMember& complete_discriminator_member);
2599
2607 static void complete_union_header_consistency(
2608 const CompleteUnionHeader& complete_union_header);
2609
2617 static void complete_union_type_consistency(
2618 const CompleteUnionType& complete_union_type);
2619
2627 static void minimal_union_type_consistency(
2628 const MinimalUnionType& minimal_union_type);
2629
2638 static void common_annotation_parameter_type_identifier_default_value_consistency(
2639 const TypeIdentifier& type_id,
2640 const AnnotationParameterValue& value);
2641
2649 static void common_annotation_parameter_consistency(
2650 const CommonAnnotationParameter& common_annotation_parameter);
2651
2659 static void complete_annotation_parameter_consistency(
2660 const CompleteAnnotationParameter& complete_annotation_parameter);
2661
2669 static void complete_annotation_parameter_seq_consistency(
2670 const CompleteAnnotationParameterSeq& complete_annotation_parameter_seq);
2671
2679 static void complete_annotation_header_consistency(
2680 const CompleteAnnotationHeader& complete_annotation_header);
2681
2689 static void complete_annotation_type_consistency(
2690 const CompleteAnnotationType& complete_annotation_type);
2691
2699 static void minimal_annotation_type_consistency(
2700 const MinimalAnnotationType& minimal_annotation_type);
2701
2709 static void common_alias_body_consistency(
2710 const CommonAliasBody& common_alias_body);
2711
2719 static void hashid_builtin_annotation_not_applied_consistency(
2720 const eprosima::fastcdr::optional<AppliedBuiltinMemberAnnotations>& ann_builtin);
2721
2729 static void complete_alias_body_consistency(
2730 const CompleteAliasBody& complete_alias_body);
2731
2739 static void complete_alias_header_consistency(
2740 const CompleteAliasHeader& complete_alias_header);
2741
2749 static void complete_alias_type_consistency(
2750 const CompleteAliasType& complete_alias_type);
2751
2759 static void minimal_alias_type_consistency(
2760 const MinimalAliasType& minimal_alias_type);
2761
2769 static void complete_element_detail_consistency(
2770 const CompleteElementDetail& complete_element_detail);
2771
2779 static void common_collection_element_consistency(
2780 const CommonCollectionElement& common_collection_element);
2781
2789 static void complete_collection_element_consistency(
2790 const CompleteCollectionElement& complete_collection_element);
2791
2799 static void complete_collection_header_consistency(
2800 const CompleteCollectionHeader& complete_collection_header);
2801
2809 static void complete_sequence_type_consistency(
2810 const CompleteSequenceType& complete_sequence_type);
2811
2819 static void minimal_sequence_type_consistency(
2820 const MinimalSequenceType& minimal_sequence_type);
2821
2829 static void common_array_header_consistency(
2830 const CommonArrayHeader& common_array_header);
2831
2839 static void complete_array_header_consistency(
2840 const CompleteArrayHeader& complete_array_header);
2841
2849 static void complete_array_type_consistency(
2850 const CompleteArrayType& complete_array_type);
2851
2859 static void minimal_array_type_consistency(
2860 const MinimalArrayType& minimal_array_type);
2861
2869 static void complete_map_type_consistency(
2870 const CompleteMapType& complete_map_type);
2871
2879 static void minimal_map_type_consistency(
2880 const MinimalMapType& minimal_map_type);
2881
2889 static void common_enumerated_literal_consistency(
2890 const CommonEnumeratedLiteral& common_enumerated_literal);
2891
2899 static void complete_enumerated_literal_consistency(
2900 const CompleteEnumeratedLiteral& complete_enumerated_literal);
2901
2909 static void complete_enumerated_literal_seq_consistency(
2910 const CompleteEnumeratedLiteralSeq& complete_enumerated_literal_seq);
2911
2919 static void enum_bit_bound_consistency(
2920 BitBound bit_bound);
2921
2929 static void bitmask_bit_bound_consistency(
2930 BitBound bit_bound);
2931
2940 static void common_enumerated_header_consistency(
2941 const CommonEnumeratedHeader& common_enumerated_header,
2942 bool bitmask = false);
2943
2952 static void complete_enumerated_header_consistency(
2953 const CompleteEnumeratedHeader& complete_enumerated_header,
2954 bool bitmask = false);
2955
2963 static void complete_enumerated_type_consistency(
2964 const CompleteEnumeratedType& complete_enumerated_type);
2965
2973 static void minimal_enumerated_type_consistency(
2974 const MinimalEnumeratedType& minimal_enumerated_type);
2975
2983 static void bit_position_consistency(
2984 uint16_t position);
2985
2993 static void common_bitflag_consistency(
2994 const CommonBitflag& common_bitflag);
2995
3003 static void complete_bitflag_consistency(
3004 const CompleteBitflag& complete_bitflag);
3005
3013 static void complete_bitflag_seq_consistency(
3014 const CompleteBitflagSeq& complete_bitflag_seq);
3015
3023 static void complete_bitmask_type_consistency(
3024 const CompleteBitmaskType& complete_bitmask_type);
3025
3033 static void minimal_bitmask_type_consistency(
3034 const MinimalBitmaskType& minimal_bitmask_type);
3035
3043 static void bitfield_holder_type_consistency(
3044 TypeKind holder_type,
3045 uint8_t bitcount);
3046
3054 static void common_bitfield_consistency(
3055 const CommonBitfield& common_bitfield);
3056
3064 static void complete_bitfield_consistency(
3065 const CompleteBitfield& complete_bitfield);
3066
3074 static void complete_bitfield_seq_consistency(
3075 const CompleteBitfieldSeq& complete_bitfield_seq);
3076
3084 static void complete_bitset_header_consistency(
3085 const CompleteBitsetHeader& complete_bitset_header);
3086
3094 static void complete_bitset_type_consistency(
3095 const CompleteBitsetType& complete_bitset_type);
3096
3104 static void minimal_bitset_type_consistency(
3105 const MinimalBitsetType& minimal_bitset_type);
3106
3114 static void complete_type_object_consistency(
3115 const CompleteTypeObject& complete_type_object);
3116
3124 static void minimal_type_object_consistency(
3125 const MinimalTypeObject& minimal_type_object);
3126 //}}}
3127};
3128
3129} // xtypes
3130} // dds
3131} // fastdds
3132} // eprosima
3133
3134#endif // FASTDDS_DDS_XTYPES_TYPE_REPRESENTATION__TYPEOBJECTUTILS_HPP
eprosima::fastdds::dds::xtypes::AnnotationParameterValue
This class represents the union AnnotationParameterValue defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:4341
eprosima::fastdds::dds::xtypes::AppliedAnnotation
This class represents the structure AppliedAnnotation defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:6414
eprosima::fastdds::dds::xtypes::AppliedAnnotationParameter
This class represents the structure AppliedAnnotationParameter defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:6232
eprosima::fastdds::dds::xtypes::AppliedBuiltinMemberAnnotations
This class represents the structure AppliedBuiltinMemberAnnotations defined by the user in the IDL fi...
Definition dds_xtypes_typeobject.hpp:6823
eprosima::fastdds::dds::xtypes::AppliedBuiltinTypeAnnotations
This class represents the structure AppliedBuiltinTypeAnnotations defined by the user in the IDL file...
Definition dds_xtypes_typeobject.hpp:8038
eprosima::fastdds::dds::xtypes::AppliedVerbatimAnnotation
This class represents the structure AppliedVerbatimAnnotation defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:6596
eprosima::fastdds::dds::xtypes::CommonAliasBody
This class represents the structure CommonAliasBody defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:12611
eprosima::fastdds::dds::xtypes::CommonAnnotationParameter
This class represents the structure CommonAnnotationParameter defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:11291
eprosima::fastdds::dds::xtypes::CommonArrayHeader
This class represents the structure CommonArrayHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:15396
eprosima::fastdds::dds::xtypes::CommonBitfield
This class represents the structure CommonBitfield defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:19385
eprosima::fastdds::dds::xtypes::CommonBitflag
This class represents the structure CommonBitflag defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:18270
eprosima::fastdds::dds::xtypes::CommonCollectionElement
This class represents the structure CommonCollectionElement defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:14013
eprosima::fastdds::dds::xtypes::CommonCollectionHeader
This class represents the structure CommonCollectionHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:14506
eprosima::fastdds::dds::xtypes::CommonDiscriminatorMember
This class represents the structure CommonDiscriminatorMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:9937
eprosima::fastdds::dds::xtypes::CommonEnumeratedHeader
This class represents the structure CommonEnumeratedHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:17380
eprosima::fastdds::dds::xtypes::CommonEnumeratedLiteral
This class represents the structure CommonEnumeratedLiteral defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:16846
eprosima::fastdds::dds::xtypes::CommonStructMember
This class represents the structure CommonStructMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:7097
eprosima::fastdds::dds::xtypes::CommonUnionMember
This class represents the structure CommonUnionMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:9309
eprosima::fastdds::dds::xtypes::CompleteAliasBody
This class represents the structure CompleteAliasBody defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:12791
eprosima::fastdds::dds::xtypes::CompleteAliasHeader
This class represents the structure CompleteAliasHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:13151
eprosima::fastdds::dds::xtypes::CompleteAliasType
This class represents the structure CompleteAliasType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:13379
eprosima::fastdds::dds::xtypes::CompleteAnnotationHeader
This class represents the structure CompleteAnnotationHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:11929
eprosima::fastdds::dds::xtypes::CompleteAnnotationParameter
This class represents the structure CompleteAnnotationParameter defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:11471
eprosima::fastdds::dds::xtypes::CompleteAnnotationType
This class represents the structure CompleteAnnotationType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:12157
eprosima::fastdds::dds::xtypes::CompleteArrayHeader
This class represents the structure CompleteArrayHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:15529
eprosima::fastdds::dds::xtypes::CompleteArrayType
This class represents the structure CompleteArrayType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:15842
eprosima::fastdds::dds::xtypes::CompleteBitfield
This class represents the structure CompleteBitfield defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:19629
eprosima::fastdds::dds::xtypes::CompleteBitflag
This class represents the structure CompleteBitflag defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:18440
eprosima::fastdds::dds::xtypes::CompleteBitmaskType
This class represents the structure CompleteBitmaskType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:18931
eprosima::fastdds::dds::xtypes::CompleteBitsetHeader
This class represents the structure CompleteBitsetHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:19993
eprosima::fastdds::dds::xtypes::CompleteBitsetType
This class represents the structure CompleteBitsetType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:20221
eprosima::fastdds::dds::xtypes::CompleteCollectionElement
This class represents the structure CompleteCollectionElement defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:14193
eprosima::fastdds::dds::xtypes::CompleteCollectionHeader
This class represents the structure CompleteCollectionHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:14629
eprosima::fastdds::dds::xtypes::CompleteDiscriminatorMember
This class represents the structure CompleteDiscriminatorMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:10117
eprosima::fastdds::dds::xtypes::CompleteElementDetail
This class represents the structure CompleteElementDetail defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:13833
eprosima::fastdds::dds::xtypes::CompleteEnumeratedHeader
This class represents the structure CompleteEnumeratedHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:17503
eprosima::fastdds::dds::xtypes::CompleteEnumeratedLiteral
This class represents the structure CompleteEnumeratedLiteral defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:17016
eprosima::fastdds::dds::xtypes::CompleteEnumeratedType
This class represents the structure CompleteEnumeratedType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:17816
eprosima::fastdds::dds::xtypes::CompleteExtendedType
This class represents the structure CompleteExtendedType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:20675
eprosima::fastdds::dds::xtypes::CompleteMapType
This class represents the structure CompleteMapType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:16296
eprosima::fastdds::dds::xtypes::CompleteMemberDetail
This class represents the structure CompleteMemberDetail defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:7314
eprosima::fastdds::dds::xtypes::CompleteSequenceType
This class represents the structure CompleteSequenceType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:14942
eprosima::fastdds::dds::xtypes::CompleteStructHeader
This class represents the structure CompleteStructHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:8493
eprosima::fastdds::dds::xtypes::CompleteStructMember
This class represents the structure CompleteStructMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:7674
eprosima::fastdds::dds::xtypes::CompleteStructType
This class represents the structure CompleteStructType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:8853
eprosima::fastdds::dds::xtypes::CompleteTypeDetail
This class represents the structure CompleteTypeDetail defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:8266
eprosima::fastdds::dds::xtypes::CompleteTypeObject
This class represents the union CompleteTypeObject defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:20770
eprosima::fastdds::dds::xtypes::CompleteUnionHeader
This class represents the structure CompleteUnionHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:10477
eprosima::fastdds::dds::xtypes::CompleteUnionMember
This class represents the structure CompleteUnionMember defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:9573
eprosima::fastdds::dds::xtypes::CompleteUnionType
This class represents the structure CompleteUnionType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:10743
eprosima::fastdds::dds::xtypes::ExtendedAnnotationParameterValue
This class represents the structure ExtendedAnnotationParameterValue defined by the user in the IDL f...
Definition dds_xtypes_typeobject.hpp:4246
eprosima::fastdds::dds::xtypes::ExtendedTypeDefn
This class represents the structure ExtendedTypeDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:2630
eprosima::fastdds::dds::xtypes::InvalidArgumentError
Application is passing an invalid argument.
Definition Exception.hpp:59
eprosima::fastdds::dds::xtypes::MinimalAliasType
This class represents the structure MinimalAliasType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:13606
eprosima::fastdds::dds::xtypes::MinimalAnnotationType
This class represents the structure MinimalAnnotationType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:12384
eprosima::fastdds::dds::xtypes::MinimalArrayType
This class represents the structure MinimalArrayType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:16069
eprosima::fastdds::dds::xtypes::MinimalBitmaskType
This class represents the structure MinimalBitmaskType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:19158
eprosima::fastdds::dds::xtypes::MinimalBitsetType
This class represents the structure MinimalBitsetType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:20448
eprosima::fastdds::dds::xtypes::MinimalEnumeratedType
This class represents the structure MinimalEnumeratedType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:18043
eprosima::fastdds::dds::xtypes::MinimalMapType
This class represents the structure MinimalMapType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:16570
eprosima::fastdds::dds::xtypes::MinimalSequenceType
This class represents the structure MinimalSequenceType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:15169
eprosima::fastdds::dds::xtypes::MinimalStructType
This class represents the structure MinimalStructType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:9080
eprosima::fastdds::dds::xtypes::MinimalTypeObject
This class represents the union MinimalTypeObject defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:22164
eprosima::fastdds::dds::xtypes::MinimalUnionType
This class represents the structure MinimalUnionType defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:11017
eprosima::fastdds::dds::xtypes::PlainArrayLElemDefn
This class represents the structure PlainArrayLElemDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:1574
eprosima::fastdds::dds::xtypes::PlainArraySElemDefn
This class represents the structure PlainArraySElemDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:1347
eprosima::fastdds::dds::xtypes::PlainCollectionHeader
This class represents the structure PlainCollectionHeader defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:743
eprosima::fastdds::dds::xtypes::PlainMapLTypeDefn
This class represents the structure PlainMapLTypeDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:2112
eprosima::fastdds::dds::xtypes::PlainMapSTypeDefn
This class represents the structure PlainMapSTypeDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:1801
eprosima::fastdds::dds::xtypes::PlainSequenceLElemDefn
This class represents the structure PlainSequenceLElemDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:1130
eprosima::fastdds::dds::xtypes::PlainSequenceSElemDefn
This class represents the structure PlainSequenceSElemDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:913
eprosima::fastdds::dds::xtypes::StringLTypeDefn
This class represents the structure StringLTypeDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:620
eprosima::fastdds::dds::xtypes::StringSTypeDefn
This class represents the structure StringSTypeDefn defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:497
eprosima::fastdds::dds::xtypes::StronglyConnectedComponentId
This class represents the structure StronglyConnectedComponentId defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:2423
eprosima::fastdds::dds::xtypes::TypeIdentifier
This class represents the union TypeIdentifier defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:2820
eprosima::fastdds::dds::xtypes::TypeIdentifierPair
This class represents the structure TypeIdentifierPair defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:24033
eprosima::fastdds::dds::xtypes::TypeObjectHashId
This class represents the union TypeObjectHashId defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:147
eprosima::fastdds::dds::xtypes::TypeObject
This class represents the union TypeObject defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:23463
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_applied_annotation_parameter
static FASTDDS_EXPORTED_API const AppliedAnnotationParameter build_applied_annotation_parameter(const NameHash &paramname_hash, const AnnotationParameterValue &value)
Build AppliedAnnotationParameter instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_sequence_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_sequence_type_object(const CompleteSequenceType &sequence_type, const std::string &type_name)
Register sequence TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(uint64_t uint64_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_alias_type_consistency
static void minimal_alias_type_consistency(const MinimalAliasType &minimal_alias_type)
Check MinimalAliasType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::seq_sdefn_consistency
static void seq_sdefn_consistency(const PlainSequenceSElemDefn &plain_seq)
Check PlainSequenceSElemDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_bitflag
static FASTDDS_EXPORTED_API void add_complete_bitflag(CompleteBitflagSeq &sequence, const CompleteBitflag &bitflag)
Add complete bitflag to the sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::enum_bit_bound_consistency
static void enum_bit_bound_consistency(BitBound bit_bound)
Check enumeration BitBound consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_enumerated_literal_seq_consistency
static void complete_enumerated_literal_seq_consistency(const CompleteEnumeratedLiteralSeq &complete_enumerated_literal_seq)
Check CompleteEnumeratedLiteralSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_array_header
static FASTDDS_EXPORTED_API const CommonArrayHeader build_common_array_header(const LBoundSeq &bound_seq)
MinimalSequenceType constructed from CompleteSequenceType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_struct_header_consistency
static void complete_struct_header_consistency(const CompleteStructHeader &complete_struct_header)
Check CompleteStructHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_bitmask_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_bitmask_type_object(const CompleteBitmaskType &bitmask_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register bitmask TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_annotation_header_consistency
static void complete_annotation_header_consistency(const CompleteAnnotationHeader &complete_annotation_header)
Check CompleteAnnotationHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_array_type_consistency
static void complete_array_type_consistency(const CompleteArrayType &complete_array_type)
Check CompleteArrayType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_union_member_consistency
static void common_union_member_consistency(const CommonUnionMember &common_union_member)
Check CommonUnionMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(uint32_t uint32_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::union_member_flag_consistency
static void union_member_flag_consistency(UnionMemberFlag union_member_flag)
Check UnionMemberFlag consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_s_map_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_s_map_type_identifier(const PlainMapSTypeDefn &plain_map, const std::string &type_name, TypeIdentifierPair &type_ids)
Register small map TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_bitmask_type
static FASTDDS_EXPORTED_API const CompleteBitmaskType build_complete_bitmask_type(BitmaskTypeFlag bitmask_flags, const CompleteBitmaskHeader &header, const CompleteBitflagSeq &flag_seq)
MinimalBitflag constructed from CompleteBitflag.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitmask_type_consistency
static void complete_bitmask_type_consistency(const CompleteBitmaskType &complete_bitmask_type)
Check CompleteBitmaskType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_array_dimension
static void add_array_dimension(std::vector< element > &array_bound_seq, element dimension_bound)
Add dimension bound to the array bound sequence.
Definition TypeObjectUtils.hpp:256
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_annotation_parameter
static FASTDDS_EXPORTED_API const CommonAnnotationParameter build_common_annotation_parameter(AnnotationParameterFlag member_flags, const TypeIdentifier &member_type_id)
MinimalUnionType constructed from CompleteUnionType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::bitfield_holder_type_consistency
static void bitfield_holder_type_consistency(TypeKind holder_type, uint8_t bitcount)
Check consistency between the holder type and the bitcount.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_array_header_consistency
static void complete_array_header_consistency(const CompleteArrayHeader &complete_array_header)
Check CompleteArrayHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_struct_member
static FASTDDS_EXPORTED_API const CommonStructMember build_common_struct_member(MemberId member_id, StructMemberFlag member_flags, const TypeIdentifier &member_type_id)
Build CommonStructMember instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::string_ldefn_consistency
static void string_ldefn_consistency(const StringLTypeDefn &string)
Check StringLTypeDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::array_bound_seq_consistency
static void array_bound_seq_consistency(const T &array)
Check that the array_bound_seq is consistent: non-empty.
Definition TypeObjectUtils.hpp:2073
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_annotation_type_consistency
static void minimal_annotation_type_consistency(const MinimalAnnotationType &minimal_annotation_type)
Check MinimalAnnotationType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_array_header_consistency
static void common_array_header_consistency(const CommonArrayHeader &common_array_header)
Check CommonArrayHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_string_l_type_defn
static FASTDDS_EXPORTED_API const StringLTypeDefn build_string_l_type_defn(LBound bound)
Build StringLTypeDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_discriminator_member_consistency
static void complete_discriminator_member_consistency(const CompleteDiscriminatorMember &complete_discriminator_member)
Check CompleteDiscriminatorMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_enumerated_header_consistency
static void common_enumerated_header_consistency(const CommonEnumeratedHeader &common_enumerated_header, bool bitmask=false)
Check CommonEnumeratedHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_type_detail
static FASTDDS_EXPORTED_API const CompleteTypeDetail build_complete_type_detail(const eprosima::fastcdr::optional< AppliedBuiltinTypeAnnotations > &ann_builtin, const eprosima::fastcdr::optional< AppliedAnnotationSeq > &ann_custom, const QualifiedTypeName &type_name)
MinimalTypeDetail constructed from CompleteTypeDetail: empty.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_union_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_union_type_object(const CompleteUnionType &union_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register union TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_annotation_parameter
static FASTDDS_EXPORTED_API void add_complete_annotation_parameter(CompleteAnnotationParameterSeq &sequence, const CompleteAnnotationParameter &param)
Add CompleteAnnotationParameter to sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_enumerated_header
static FASTDDS_EXPORTED_API const CompleteEnumeratedHeader build_complete_enumerated_header(const CommonEnumeratedHeader &common, const CompleteTypeDetail &detail, bool bitmask=false)
Build CompleteEnumeratedHeader instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::bit_position_consistency
static void bit_position_consistency(uint16_t position)
Check bitflag position consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::bitmask_bit_bound_consistency
static void bitmask_bit_bound_consistency(BitBound bit_bound)
Check bitmask BitBound consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_struct_member_consistency
static void common_struct_member_consistency(const CommonStructMember &common_struct_member)
Check CommonStructMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_union_type_consistency
static void complete_union_type_consistency(const CompleteUnionType &complete_union_type)
Check CompleteUnionType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::union_case_label_seq_consistency
static void union_case_label_seq_consistency(const UnionCaseLabelSeq &union_case_label_seq)
Check UnionCaseLabelSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(char char_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::map_sdefn_consistency
static void map_sdefn_consistency(const PlainMapSTypeDefn &plain_map)
Check PlainMapSTypeDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::direct_hash_type_identifier_consistency
static void direct_hash_type_identifier_consistency(const TypeIdentifier &type_id)
Check direct hash TypeIdentifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_annotation_parameter_consistency
static void complete_annotation_parameter_consistency(const CompleteAnnotationParameter &complete_annotation_parameter)
Check CompleteAnnotationParameter consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_enumerated_header_consistency
static void complete_enumerated_header_consistency(const CompleteEnumeratedHeader &complete_enumerated_header, bool bitmask=false)
Check CompleteEnumeratedHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_type_object_consistency
static void minimal_type_object_consistency(const MinimalTypeObject &minimal_type_object)
Check MinimalTypeObject consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_enumerated_header
static FASTDDS_EXPORTED_API const CommonEnumeratedHeader build_common_enumerated_header(BitBound bit_bound, bool bitmask=false)
MinimalEnumeratedLiteral constructed from CompleteEnumeratedLiteral.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::set_try_construct_behavior
static void set_try_construct_behavior(MemberFlag &member_flag, TryConstructFailAction try_construct_kind)
Set the try construct behavior in a given MemberFlag.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_collection_element_consistency
static void complete_collection_element_consistency(const CompleteCollectionElement &complete_collection_element)
Check CompleteCollectionElement consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_map_type
static FASTDDS_EXPORTED_API const CompleteMapType build_complete_map_type(CollectionTypeFlag collection_flag, const CompleteCollectionHeader &header, const CompleteCollectionElement &key, const CompleteCollectionElement &element)
MinimalArrayType constructed from CompleteArrayType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_strongly_connected_component_id
static FASTDDS_EXPORTED_API const StronglyConnectedComponentId build_strongly_connected_component_id(const TypeObjectHashId &sc_component_id, int32_t scc_length, int32_t scc_index)
Build StronglyConnectedComponentId instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::l_bound_seq_consistency
static void l_bound_seq_consistency(const LBoundSeq &bound_seq)
Check LBoundSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_alias_body_consistency
static void common_alias_body_consistency(const CommonAliasBody &common_alias_body)
Check CommonAliasBody consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::array_sdefn_consistency
static void array_sdefn_consistency(const PlainArraySElemDefn &plain_array)
Check PlainArraySElemDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::is_direct_hash_type_identifier
static bool is_direct_hash_type_identifier(const TypeIdentifier &type_identifier)
Check if a given TypeIdentifier is direct hash.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_type_detail_consistency
static void complete_type_detail_consistency(const CompleteTypeDetail &complete_type_detail)
Check CompleteTypeDetail consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(int64_t int64_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_union_header_consistency
static void complete_union_header_consistency(const CompleteUnionHeader &complete_union_header)
Check CompleteUnionHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_struct_member
static FASTDDS_EXPORTED_API const CompleteStructMember build_complete_struct_member(const CommonStructMember &common, const CompleteMemberDetail &detail)
MinimalMemberDetail constructed from CompleteMemberDetail.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_struct_member_and_complete_member_detail_consistency
static void common_struct_member_and_complete_member_detail_consistency(const CommonStructMember &common_struct_member, const CompleteMemberDetail &complete_member_detail)
Check cross-consistency between CommonStructMember and CompleteMemberDetail.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_bitfield_consistency
static void common_bitfield_consistency(const CommonBitfield &common_bitfield)
Check CommonBitfield consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_bitset_type_consistency
static void minimal_bitset_type_consistency(const MinimalBitsetType &minimal_bitset_type)
Check MinimalBitsetType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_map_type_consistency
static void minimal_map_type_consistency(const MinimalMapType &minimal_map_type)
Check MinimalMapType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::retrieve_complete_type_identifier
static FASTDDS_EXPORTED_API const TypeIdentifier & retrieve_complete_type_identifier(const TypeIdentifierPair &type_ids, bool &ec)
If one of the TypeIdentifier in TypeIdentifierPair is complete, returns its reference.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(int16_t int16_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_union_member_consistency
static void complete_union_member_consistency(const CompleteUnionMember &complete_union_member)
Check CompleteUnionMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_l_string_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_l_string_type_identifier(const StringLTypeDefn &string, const std::string &type_name, TypeIdentifierPair &type_ids, bool wstring=false)
Register large string/wstring TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_array_l_elem_defn
static FASTDDS_EXPORTED_API const PlainArrayLElemDefn build_plain_array_l_elem_defn(const PlainCollectionHeader &header, const LBoundSeq &array_bound_seq, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier)
Build PlainArrayLElemDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::is_fully_descriptive_type_identifier
static bool is_fully_descriptive_type_identifier(const TypeIdentifier &type_identifier)
Check if a given TypeIdentifier is fully-descriptive.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_alias_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_alias_type_object(const CompleteAliasType &alias_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register alias TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_extended_type_defn
static FASTDDS_EXPORTED_API const ExtendedTypeDefn build_extended_type_defn()
Build ExtendedTypeDefn instance (empty.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_alias_header
static FASTDDS_EXPORTED_API const CompleteAliasHeader build_complete_alias_header(const CompleteTypeDetail &detail)
MinimalAliasBody constructed from CompleteAliasBody.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value_enum
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value_enum(int32_t enumerated_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_union_type_consistency
static void minimal_union_type_consistency(const MinimalUnionType &minimal_union_type)
Check MinimalUnionType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_enumerated_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_enumerated_type_object(const CompleteEnumeratedType &enumerated_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register enumeration TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_discriminator_member_type_identifier_consistency
static void common_discriminator_member_type_identifier_consistency(const TypeIdentifier &type_id)
Check discriminator TypeIdentifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_alias_type_consistency
static void complete_alias_type_consistency(const CompleteAliasType &complete_alias_type)
Check CompleteAliasType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_array_type_consistency
static void minimal_array_type_consistency(const MinimalArrayType &minimal_array_type)
Check MinimalArrayType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::type_identifier_consistency
static void type_identifier_consistency(const TypeIdentifier &type_identifier)
Check TypeIdentifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_struct_header
static FASTDDS_EXPORTED_API const CompleteStructHeader build_complete_struct_header(const TypeIdentifier &base_type, const CompleteTypeDetail &detail)
Build CompleteStructHeader instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_string_s_type_defn
static FASTDDS_EXPORTED_API const StringSTypeDefn build_string_s_type_defn(SBound bound)
CollectionTypeFlag: Unused.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_bitflag
static FASTDDS_EXPORTED_API const CommonBitflag build_common_bitflag(uint16_t position, BitflagFlag flags)
MinimalEnumeratedType constructed from CompleteEnumeratedType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_union_header
static FASTDDS_EXPORTED_API const CompleteUnionHeader build_complete_union_header(const CompleteTypeDetail &detail)
MinimalDiscriminatorMember constructed from CompleteDiscriminatorMember.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_map_l_type_defn
static FASTDDS_EXPORTED_API const PlainMapLTypeDefn build_plain_map_l_type_defn(const PlainCollectionHeader &header, const LBound bound, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier, const CollectionElementFlag key_flags, const eprosima::fastcdr::external< TypeIdentifier > &key_identifier)
Build PlainMapLTypeDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_builtin_type_annotations_consistency
static void applied_builtin_type_annotations_consistency(const AppliedBuiltinTypeAnnotations &applied_builtin_type_annotations)
Check AppliedBuiltinTypeAnnotations consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_union_member_flag
static FASTDDS_EXPORTED_API UnionMemberFlag build_union_member_flag(TryConstructFailAction try_construct_kind, bool default_member, bool external)
Build UnionMemberFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_union_discriminator_flag
static FASTDDS_EXPORTED_API UnionDiscriminatorFlag build_union_discriminator_flag(TryConstructFailAction try_construct_kind, bool key)
Build UnionDiscriminatorFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_annotation_type_identifier_consistency
static void applied_annotation_type_identifier_consistency(const TypeIdentifier &annotation_type_id)
Check AppliedAnnotation TypeIdentifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_enumerated_literal_consistency
static void common_enumerated_literal_consistency(const CommonEnumeratedLiteral &common_enumerated_literal)
Check CommonEnumeratedLiteral consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_s_sequence_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_s_sequence_type_identifier(const PlainSequenceSElemDefn &plain_seq, const std::string &type_name, TypeIdentifierPair &type_ids)
Register small sequence TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_element_detail
static FASTDDS_EXPORTED_API const CompleteElementDetail build_complete_element_detail(const eprosima::fastcdr::optional< AppliedBuiltinMemberAnnotations > &ann_builtin, const eprosima::fastcdr::optional< AppliedAnnotationSeq > &ann_custom)
MinimalAliasType constructed from CompleteAliasType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_map_s_type_defn
static FASTDDS_EXPORTED_API const PlainMapSTypeDefn build_plain_map_s_type_defn(const PlainCollectionHeader &header, const SBound bound, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier, const CollectionElementFlag key_flags, const eprosima::fastcdr::external< TypeIdentifier > &key_identifier)
Build PlainMapSTypeDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_struct_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_struct_type_object(const CompleteStructType &struct_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register structure TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_type_object_consistency
static void complete_type_object_consistency(const CompleteTypeObject &complete_type_object)
Check CompleteTypeObject consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::is_indirect_hash_type_identifier
static bool is_indirect_hash_type_identifier(const TypeIdentifier &type_identifier)
Check if a given TypeIdentifier is indirect hash.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_collection_element_flag
static FASTDDS_EXPORTED_API CollectionElementFlag build_collection_element_flag(TryConstructFailAction try_construct_kind, bool external)
Build CollectionElementFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_struct_member
static FASTDDS_EXPORTED_API void add_complete_struct_member(CompleteStructMemberSeq &member_seq, const CompleteStructMember &member)
Add CompleteStructMember to the sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::type_object_consistency
static FASTDDS_EXPORTED_API void type_object_consistency(const TypeObject &type_object)
Check TypeObject consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_enumerated_literal_flag
static FASTDDS_EXPORTED_API EnumeratedLiteralFlag build_enumerated_literal_flag(bool default_literal)
Build EnumeratedLiteralFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_collection_element
static FASTDDS_EXPORTED_API const CommonCollectionElement build_common_collection_element(CollectionElementFlag element_flags, const TypeIdentifier &type)
Build CommonCollectionElement instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::map_key_type_identifier_consistency
static void map_key_type_identifier_consistency(const TypeIdentifier &key_identifier)
Check map key_identifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_annotation_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_annotation_type_object(const CompleteAnnotationType &annotation_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register annotation TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_sequence_type_consistency
static void minimal_sequence_type_consistency(const MinimalSequenceType &minimal_sequence_type)
Check MinimalSequenceType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_array_s_elem_defn
static FASTDDS_EXPORTED_API const PlainArraySElemDefn build_plain_array_s_elem_defn(const PlainCollectionHeader &header, const SBoundSeq &array_bound_seq, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier)
Build PlainArraySElemDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::type_flag_consistency
static void type_flag_consistency(TypeFlag type_flag)
Check TypeFlag consistency: exactly one extensibility flag is set.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_struct_member_flag
static FASTDDS_EXPORTED_API StructMemberFlag build_struct_member_flag(TryConstructFailAction try_construct_kind, bool optional, bool must_understand, bool key, bool external)
Build StructMemberFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(float float32_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_scc_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_scc_type_identifier(const StronglyConnectedComponentId &scc, const std::string &type_name)
Register StronglyConnectedComponent TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_annotation_parameter
static FASTDDS_EXPORTED_API const CompleteAnnotationParameter build_complete_annotation_parameter(const CommonAnnotationParameter &common, const MemberName &name, const AnnotationParameterValue &default_value)
Build CompleteAnnotationParameter instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_annotation_type
static FASTDDS_EXPORTED_API const CompleteAnnotationType build_complete_annotation_type(AnnotationTypeFlag annotation_flag, const CompleteAnnotationHeader &header, const CompleteAnnotationParameterSeq &member_seq)
MinimalAnnotationHeader constructed from CompleteAnnotationHeader: empty.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitset_type_consistency
static void complete_bitset_type_consistency(const CompleteBitsetType &complete_bitset_type)
Check CompleteBitsetType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_collection_header_consistency
static void complete_collection_header_consistency(const CompleteCollectionHeader &complete_collection_header)
Check CompleteCollectionHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_bitfield
static FASTDDS_EXPORTED_API const CompleteBitfield build_complete_bitfield(const CommonBitfield &common, const CompleteMemberDetail &detail)
Build CompleteBitfield instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_annotation_header
static FASTDDS_EXPORTED_API const CompleteAnnotationHeader build_complete_annotation_header(const QualifiedTypeName &annotation_name)
MinimalAnnotationParameter constructed from CompleteAnnotationParameter.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::plain_map_type_components_consistency
static void plain_map_type_components_consistency(const PlainCollectionHeader &header, const TypeIdentifier &type_identifier)
Check consistency between a given PlainCollectionHeader of a map and the related TypeIdentifier:
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_sequence_type_consistency
static void complete_sequence_type_consistency(const CompleteSequenceType &complete_sequence_type)
Check CompleteSequenceType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_alias_header_consistency
static void complete_alias_header_consistency(const CompleteAliasHeader &complete_alias_header)
Check CompleteAliasHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::string_member_id_consistency
static void string_member_id_consistency(MemberId member_id, const std::string &string_value)
Check consistency between a string value and the MemberId (algorithm XTypes v1.3 Clause 7....
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(uint8_t uint8_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_discriminator_member_consistency
static void common_discriminator_member_consistency(const CommonDiscriminatorMember &common_discriminator_member)
Check CommonDiscriminatorMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_annotation_parameter_seq_consistency
static void complete_annotation_parameter_seq_consistency(const CompleteAnnotationParameterSeq &complete_annotation_parameter_seq)
Check CompleteAnnotationParameterSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_map_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_map_type_object(const CompleteMapType &map_type, const std::string &type_name)
Register map TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_enumerated_literal
static FASTDDS_EXPORTED_API void add_complete_enumerated_literal(CompleteEnumeratedLiteralSeq &sequence, const CompleteEnumeratedLiteral &enum_literal)
Add CompleteEnumeratedLiteral to sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_extended_annotation_parameter_value
static FASTDDS_EXPORTED_API const ExtendedAnnotationParameterValue build_extended_annotation_parameter_value()
Build ExtendedAnnotationParameterValue instance (empty.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_struct_member_seq_consistency
static void complete_struct_member_seq_consistency(const CompleteStructMemberSeq &complete_struct_member_seq)
Check CompleteStructMemberSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_alias_type
static FASTDDS_EXPORTED_API const CompleteAliasType build_complete_alias_type(AliasTypeFlag alias_flags, const CompleteAliasHeader &header, const CompleteAliasBody &body)
MinimalAliasHeader constructed from CompleteAliasHeader: empty.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitflag_seq_consistency
static void complete_bitflag_seq_consistency(const CompleteBitflagSeq &complete_bitflag_seq)
Check CompleteBitflagSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_verbatim_annotation_consistency
static void applied_verbatim_annotation_consistency(const AppliedVerbatimAnnotation &applied_verbatim_annotation)
Check AppliedVerbatimAnnotation consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::retrieve_minimal_type_identifier
static FASTDDS_EXPORTED_API const TypeIdentifier & retrieve_minimal_type_identifier(const TypeIdentifierPair &type_ids, bool &ec)
If one of the TypeIdentifier in TypeIdentifierPair is minimal, returns its reference.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(int32_t int32_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::map_ldefn_consistency
static void map_ldefn_consistency(const PlainMapLTypeDefn &plain_map)
Check PlainMapLTypeDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_union_member
static FASTDDS_EXPORTED_API void add_complete_union_member(CompleteUnionMemberSeq &complete_union_member_seq, const CompleteUnionMember &member)
Add CompleteUnionMember to sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::array_ldefn_consistency
static void array_ldefn_consistency(const PlainArrayLElemDefn &plain_array)
Check PlainArrayLElemDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_enumerated_type
static FASTDDS_EXPORTED_API const CompleteEnumeratedType build_complete_enumerated_type(EnumTypeFlag enum_flags, const CompleteEnumeratedHeader &header, const CompleteEnumeratedLiteralSeq &literal_seq)
MinimalEnumeratedHeader constructed from CompleteEnumeratedHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_bitfield
static FASTDDS_EXPORTED_API const CommonBitfield build_common_bitfield(uint16_t position, BitsetMemberFlag flags, uint8_t bitcount, TypeKind holder_type)
Build CommonBitfield instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(long double float128_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_union_member
static FASTDDS_EXPORTED_API const CompleteUnionMember build_complete_union_member(const CommonUnionMember &common, const CompleteMemberDetail &detail)
Build CompleteUnionMember instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_member_detail
static FASTDDS_EXPORTED_API const CompleteMemberDetail build_complete_member_detail(const MemberName &name, const eprosima::fastcdr::optional< AppliedBuiltinMemberAnnotations > &ann_builtin, const eprosima::fastcdr::optional< AppliedAnnotationSeq > &ann_custom)
Build CompleteMemberDetail instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::TypeObjectRegistry
friend class TypeObjectRegistry
Definition TypeObjectUtils.hpp:1958
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_annotation_type_consistency
static void complete_annotation_type_consistency(const CompleteAnnotationType &complete_annotation_type)
Check CompleteAnnotationType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::union_discriminator_flag_consistency
static void union_discriminator_flag_consistency(UnionDiscriminatorFlag union_discriminator_flag)
Check UnionDiscriminatorFlag consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_bitset_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_bitset_type_object(const CompleteBitsetType &bitset_type, const std::string &type_name, TypeIdentifierPair &type_ids)
Register bitset TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_union_type_flag
static FASTDDS_EXPORTED_API UnionTypeFlag build_union_type_flag(ExtensibilityKind extensibility_kind, bool nested, bool autoid_hash)
Build UnionTypeFlag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_applied_builtin_type_annotations
static FASTDDS_EXPORTED_API const AppliedBuiltinTypeAnnotations build_applied_builtin_type_annotations(const eprosima::fastcdr::optional< AppliedVerbatimAnnotation > &verbatim)
MinimalStructMember constructed from CompleteStructMember.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitflag_consistency
static void complete_bitflag_consistency(const CompleteBitflag &complete_bitflag)
Check CompleteBitflag consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::set_extensibility_kind
static void set_extensibility_kind(TypeFlag &type_flag, ExtensibilityKind extensibility_kind)
Set the extensibility kind in a given TypeFlag.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_collection_header
static FASTDDS_EXPORTED_API const CommonCollectionHeader build_common_collection_header(LBound bound)
MinimalCollectionElement constructed from CompleteCollectionElement.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_map_type_consistency
static void complete_map_type_consistency(const CompleteMapType &complete_map_type)
Check CompleteMapType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(bool boolean_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::name_hash
static FASTDDS_EXPORTED_API const NameHash name_hash(const std::string &name)
Calculate the MD5 hash of the provided name.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_annotation_parameter_seq_consistency
static void applied_annotation_parameter_seq_consistency(const AppliedAnnotationParameterSeq &applied_annotation_parameter_seq)
Check AppliedAnnotationParameterSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_collection_header
static FASTDDS_EXPORTED_API const CompleteCollectionHeader build_complete_collection_header(const CommonCollectionHeader &common, const eprosima::fastcdr::optional< CompleteTypeDetail > &detail)
Build CompleteCollectionHeader instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_l_map_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_l_map_type_identifier(const PlainMapLTypeDefn &plain_map, const std::string &type_name, TypeIdentifierPair &type_ids)
Register large map TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_struct_type_consistency
static void minimal_struct_type_consistency(const MinimalStructType &minimal_struct_type)
Check MinimalStructType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(const eprosima::fastcdr::fixed_string< 128 > &string8_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_collection_element
static FASTDDS_EXPORTED_API const CompleteCollectionElement build_complete_collection_element(const CommonCollectionElement &common, const CompleteElementDetail &detail)
Build CompleteCollectionElement instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_sequence_s_elem_defn
static FASTDDS_EXPORTED_API const PlainSequenceSElemDefn build_plain_sequence_s_elem_defn(const PlainCollectionHeader &header, SBound s_bound, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier)
Build PlainSequenceSElemDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_enumerated_literal_consistency
static void complete_enumerated_literal_consistency(const CompleteEnumeratedLiteral &complete_enumerated_literal)
Check CompleteEnumeratedLiteral consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_annotation_parameter_type_identifier_default_value_consistency
static void common_annotation_parameter_type_identifier_default_value_consistency(const TypeIdentifier &type_id, const AnnotationParameterValue &value)
Check that the annotation value is of the same type as the given TypeIdentifier.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_annotation_consistency
static void applied_annotation_consistency(const AppliedAnnotation &applied_annotation)
Check AppliedAnnotation consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::structure_base_type_consistency
static void structure_base_type_consistency(const TypeIdentifier &base_type)
Check CompleteStructHeader base_type TypeIdentifier consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(double float64_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_discriminator_member
static FASTDDS_EXPORTED_API const CompleteDiscriminatorMember build_complete_discriminator_member(const CommonDiscriminatorMember &common, const eprosima::fastcdr::optional< AppliedBuiltinTypeAnnotations > &ann_builtin, const eprosima::fastcdr::optional< AppliedAnnotationSeq > &ann_custom)
Build CompleteDiscriminatorMember instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::struct_member_flag_consistency
static void struct_member_flag_consistency(StructMemberFlag member_flags)
Check StructMemberFlag consistency: MemberFlag consistency (try construct annotation).
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_applied_annotation
static FASTDDS_EXPORTED_API const AppliedAnnotation build_applied_annotation(const TypeIdentifier &annotation_typeid, const eprosima::fastcdr::optional< AppliedAnnotationParameterSeq > &param_seq)
Build AppliedAnnotation instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_alias_body
static FASTDDS_EXPORTED_API const CompleteAliasBody build_complete_alias_body(const CommonAliasBody &common, const eprosima::fastcdr::optional< AppliedBuiltinMemberAnnotations > &ann_builtin, const eprosima::fastcdr::optional< AppliedAnnotationSeq > &ann_custom)
Build CompleteAliasBody instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::set_type_flag
static void set_type_flag(TypeFlag &type_flag, ExtensibilityKind extensibility_kind, bool nested, bool autoid_hash)
Set the TypeFlag object.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_enumerated_literal
static FASTDDS_EXPORTED_API const CommonEnumeratedLiteral build_common_enumerated_literal(int32_t value, EnumeratedLiteralFlag flags)
MinimalMapType constructed from CompleteMapType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_bitmask_type_consistency
static void minimal_bitmask_type_consistency(const MinimalBitmaskType &minimal_bitmask_type)
Check MinimalBitmaskType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_complete_bitfield
static FASTDDS_EXPORTED_API void add_complete_bitfield(CompleteBitfieldSeq &sequence, const CompleteBitfield &bitfield)
Add complete bitfield to the sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_collection_element_consistency
static void common_collection_element_consistency(const CommonCollectionElement &common_collection_element)
Check CommonCollectionElement consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::plain_collection_type_identifier_header_consistency
static void plain_collection_type_identifier_header_consistency(const PlainCollectionHeader &header, const TypeIdentifier &element_identifier)
Check consistency between a given PlainCollectionHeader and the related TypeIdentifier:
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(wchar_t wchar_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_element_detail_consistency
static void complete_element_detail_consistency(const CompleteElementDetail &complete_element_detail)
Check CompleteElementDetail consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_extended_type
static FASTDDS_EXPORTED_API const CompleteExtendedType build_complete_extended_type()
MinimalBitsetType constructed from CompleteBitsetType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::equivalence_kind_consistency
static void equivalence_kind_consistency(EquivalenceKind equiv_kind)
Check EquivalenceKind consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitfield_seq_consistency
static void complete_bitfield_seq_consistency(const CompleteBitfieldSeq &complete_bitfield_seq)
Check CompleteBitfieldSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_type_object_hash_id
static FASTDDS_EXPORTED_API const TypeObjectHashId build_type_object_hash_id(uint8_t discriminator, const EquivalenceHash &hash)
Build TypeObjectHashId instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_l_sequence_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_l_sequence_type_identifier(const PlainSequenceLElemDefn &plain_seq, const std::string &type_name, TypeIdentifierPair &type_ids)
Register large sequence TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::minimal_enumerated_type_consistency
static void minimal_enumerated_type_consistency(const MinimalEnumeratedType &minimal_enumerated_type)
Check MinimalEnumeratedType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(int8_t int8_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(uint16_t uint16_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_l_array_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_l_array_type_identifier(const PlainArrayLElemDefn &plain_array, const std::string &type_name, TypeIdentifierPair &type_ids)
Register large array TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_annotation_parameter_consistency
static void common_annotation_parameter_consistency(const CommonAnnotationParameter &common_annotation_parameter)
Check CommonAnnotationParameter consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_bitflag
static FASTDDS_EXPORTED_API const CompleteBitflag build_complete_bitflag(const CommonBitflag &common, const CompleteMemberDetail &detail)
Build CompleteBitflag instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_bitflag_consistency
static void common_bitflag_consistency(const CommonBitflag &common_bitflag)
Check CommonBitflag consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_array_header
static FASTDDS_EXPORTED_API const CompleteArrayHeader build_complete_array_header(const CommonArrayHeader &common, const CompleteTypeDetail &detail)
Build CompleteArrayHeader instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_union_type
static FASTDDS_EXPORTED_API const CompleteUnionType build_complete_union_type(UnionTypeFlag union_flags, const CompleteUnionHeader &header, const CompleteDiscriminatorMember &discriminator, const CompleteUnionMemberSeq &member_seq)
MinimalUnionHeader constructed from CompleteUnionHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value(const std::wstring &string16_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_annotation_parameter_value_byte
static FASTDDS_EXPORTED_API const AnnotationParameterValue build_annotation_parameter_value_byte(uint8_t byte_value)
Build AnnotationParameterValue instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::empty_flags_consistency
static void empty_flags_consistency(T flags)
Check empty flags consistency.
Definition TypeObjectUtils.hpp:2170
eprosima::fastdds::dds::xtypes::TypeObjectUtils::plain_collection_header_consistency
static void plain_collection_header_consistency(const PlainCollectionHeader &header)
Check PlainCollectionHeader consistency:
eprosima::fastdds::dds::xtypes::TypeObjectUtils::seq_ldefn_consistency
static void seq_ldefn_consistency(const PlainSequenceLElemDefn &plain_seq)
Check PlainSequenceLElemDefn consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_struct_type
static FASTDDS_EXPORTED_API const CompleteStructType build_complete_struct_type(StructTypeFlag struct_flags, const CompleteStructHeader &header, const CompleteStructMemberSeq &member_seq)
MinimalStructHeader constructed from CompleteStructHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::common_union_member_complete_member_detail_consistency
static void common_union_member_complete_member_detail_consistency(const CommonUnionMember &common_union_member, const CompleteMemberDetail &complete_member_detail)
Check cross-consistency between CommonStructMember and CompleteMemberDetail.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_applied_annotation
static FASTDDS_EXPORTED_API void add_applied_annotation(AppliedAnnotationSeq &ann_custom_seq, const AppliedAnnotation &ann_custom)
Add AppliedAnnotation to the sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::hashid_builtin_annotation_not_applied_consistency
static void hashid_builtin_annotation_not_applied_consistency(const eprosima::fastcdr::optional< AppliedBuiltinMemberAnnotations > &ann_builtin)
Check that hashid builtin annotation has not been set.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::applied_annotation_seq_consistency
static void applied_annotation_seq_consistency(const AppliedAnnotationSeq &applied_annotation_seq)
Check AppliedAnnotationSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_enumerated_type_consistency
static void complete_enumerated_type_consistency(const CompleteEnumeratedType &complete_enumerated_type)
Check CompleteEnumeratedType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_union_member_seq_consistency
static void complete_union_member_seq_consistency(const CompleteUnionMemberSeq &complete_union_member_seq)
Check CompleteUnionMemberSeq consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_applied_verbatim_annotation
static FASTDDS_EXPORTED_API const AppliedVerbatimAnnotation build_applied_verbatim_annotation(PlacementKind placement, const eprosima::fastcdr::fixed_string< 32 > &language, const std::string &text)
Build AppliedVerbatimAnnotation instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_applied_annotation_parameter
static FASTDDS_EXPORTED_API void add_applied_annotation_parameter(AppliedAnnotationParameterSeq &param_seq, const AppliedAnnotationParameter &param)
Add AppliedAnnotationParameter to the sequence.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_discriminator_member
static FASTDDS_EXPORTED_API const CommonDiscriminatorMember build_common_discriminator_member(UnionDiscriminatorFlag member_flags, const TypeIdentifier &type_id)
MinimalUnionMember constructed from CompleteUnionMember.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::get_map_component_equiv_kind_for_consistency
static EquivalenceKind get_map_component_equiv_kind_for_consistency(const TypeIdentifier &identifier)
Retrieves the equivalence kind of a component within a map.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_sequence_type
static FASTDDS_EXPORTED_API const CompleteSequenceType build_complete_sequence_type(CollectionTypeFlag collection_flag, const CompleteCollectionHeader &header, const CompleteCollectionElement &element)
MinimalCollectionHeader constructed from CompleteCollectionHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitfield_consistency
static void complete_bitfield_consistency(const CompleteBitfield &complete_bitfield)
Check CompleteBitfield consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_struct_member_consistency
static void complete_struct_member_consistency(const CompleteStructMember &complete_struct_member)
Check CompleteStructMember consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_array_type
static FASTDDS_EXPORTED_API const CompleteArrayType build_complete_array_type(CollectionTypeFlag collection_flag, const CompleteArrayHeader &header, const CompleteCollectionElement &element)
MinimalArrayHeader constructed from CompleteArrayHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_struct_type_consistency
static void complete_struct_type_consistency(const CompleteStructType &complete_struct_type)
Check CompleteStructType consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::l_bound_consistency
static void l_bound_consistency(LBound bound)
TypeObjectHashId is always consistent.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_sequence_l_elem_defn
static FASTDDS_EXPORTED_API const PlainSequenceLElemDefn build_plain_sequence_l_elem_defn(const PlainCollectionHeader &header, LBound l_bound, const eprosima::fastcdr::external< TypeIdentifier > &element_identifier)
Build PlainSequenceLElemDefn instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_alias_body_consistency
static void complete_alias_body_consistency(const CompleteAliasBody &complete_alias_body)
Check CompleteAliasBody consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_s_string_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_s_string_type_identifier(const StringSTypeDefn &string, const std::string &type_name, TypeIdentifierPair &type_ids, bool wstring=false)
Primitive types are registered when TypeObjectRegistry is instantiated.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_bitset_header
static FASTDDS_EXPORTED_API const CompleteBitsetHeader build_complete_bitset_header(const CompleteTypeDetail &detail)
MinimalBitfield constructed from CompleteBitfield.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_s_array_type_identifier
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_s_array_type_identifier(const PlainArraySElemDefn &plain_array, const std::string &type_name, TypeIdentifierPair &type_ids)
Register small array TypeIdentifier into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_plain_collection_header
static FASTDDS_EXPORTED_API const PlainCollectionHeader build_plain_collection_header(EquivalenceKind equiv_kind, CollectionElementFlag element_flags)
Build PlainCollectionHeader instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::add_union_case_label
static FASTDDS_EXPORTED_API void add_union_case_label(UnionCaseLabelSeq &label_seq, int32_t label)
MinimalStructType constructed from CompleteStructType.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::enumerated_literal_flag_consistency
static void enumerated_literal_flag_consistency(EnumeratedLiteralFlag enumerated_literal_flag)
Check EnumeratedLiteralFlag consistency: any flag different from default are not set.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_bitset_type
static FASTDDS_EXPORTED_API const CompleteBitsetType build_complete_bitset_type(BitsetTypeFlag bitset_flags, const CompleteBitsetHeader &header, const CompleteBitfieldSeq &field_seq)
MinimalBitsetHeader constructed from CompleteBitsetHeader.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_struct_type_flag
static FASTDDS_EXPORTED_API StructTypeFlag build_struct_type_flag(ExtensibilityKind extensibility_kind, bool nested, bool autoid_hash)
AnnotationParameterFlag: Unused.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_complete_enumerated_literal
static FASTDDS_EXPORTED_API const CompleteEnumeratedLiteral build_complete_enumerated_literal(const CommonEnumeratedLiteral &common, const CompleteMemberDetail &detail)
Build CompleteEnumeratedLiteral instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::DynamicTypeBuilderFactoryImpl
friend class eprosima::fastdds::dds::DynamicTypeBuilderFactoryImpl
Definition TypeObjectUtils.hpp:1959
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_and_register_array_type_object
static FASTDDS_EXPORTED_API ReturnCode_t build_and_register_array_type_object(const CompleteArrayType &array_type, const std::string &type_name)
Register array TypeObject into TypeObjectRegistry.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_bitset_header_consistency
static void complete_bitset_header_consistency(const CompleteBitsetHeader &complete_bitset_header)
Check CompleteBitsetHeader consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_applied_builtin_member_annotations
static FASTDDS_EXPORTED_API const AppliedBuiltinMemberAnnotations build_applied_builtin_member_annotations(const eprosima::fastcdr::optional< std::string > &unit, const eprosima::fastcdr::optional< AnnotationParameterValue > &min, const eprosima::fastcdr::optional< AnnotationParameterValue > &max, const eprosima::fastcdr::optional< std::string > &hash_id)
Build AppliedBuiltinMemberAnnotations instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_union_member
static FASTDDS_EXPORTED_API const CommonUnionMember build_common_union_member(MemberId member_id, UnionMemberFlag member_flags, const TypeIdentifier &type_id, const UnionCaseLabelSeq &label_seq)
Build CommonUnionMember instance.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::collection_element_flag_consistency
static void collection_element_flag_consistency(CollectionElementFlag collection_element_flag)
Check CollectionElementFlag consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::complete_member_detail_consistency
static void complete_member_detail_consistency(const CompleteMemberDetail &complete_member_detail)
Check CompleteMemberDetail consistency.
eprosima::fastdds::dds::xtypes::TypeObjectUtils::build_common_alias_body
static FASTDDS_EXPORTED_API const CommonAliasBody build_common_alias_body(AliasMemberFlag related_flags, const TypeIdentifier &related_type)
MinimalAnnotationType constructed from CompleteAnnotationType.
eprosima::fastdds::dds::xtypes::detail
Definition dds_xtypes_typeobjectPubSubTypes.hpp:81
eprosima::fastdds::dds::xtypes
Definition QosPolicies.hpp:2491
eprosima::fastdds::dds::xtypes::BitsetMemberFlag
MemberFlag BitsetMemberFlag
Definition dds_xtypes_typeobject.hpp:457
eprosima::fastdds::dds::xtypes::MemberId
uint32_t MemberId
Definition dds_xtypes_typeobject.hpp:4237
eprosima::fastdds::dds::xtypes::CollectionElementFlag
MemberFlag CollectionElementFlag
Definition dds_xtypes_typeobject.hpp:441
eprosima::fastdds::dds::xtypes::CompleteUnionMemberSeq
std::vector< CompleteUnionMember > CompleteUnionMemberSeq
Definition dds_xtypes_typeobject.hpp:9748
eprosima::fastdds::dds::xtypes::AppliedAnnotationSeq
std::vector< AppliedAnnotation > AppliedAnnotationSeq
Definition dds_xtypes_typeobject.hpp:6589
eprosima::fastdds::dds::xtypes::BitsetTypeFlag
TypeFlag BitsetTypeFlag
Definition dds_xtypes_typeobject.hpp:487
eprosima::fastdds::dds::xtypes::CompleteEnumeratedLiteralSeq
std::vector< CompleteEnumeratedLiteral > CompleteEnumeratedLiteralSeq
Definition dds_xtypes_typeobject.hpp:17191
eprosima::fastdds::dds::xtypes::CollectionTypeFlag
TypeFlag CollectionTypeFlag
Definition dds_xtypes_typeobject.hpp:477
eprosima::fastdds::dds::xtypes::EnumTypeFlag
TypeFlag EnumTypeFlag
Definition dds_xtypes_typeobject.hpp:483
eprosima::fastdds::dds::xtypes::LBoundSeq
std::vector< LBound > LBoundSeq
Definition dds_xtypes_typeobject.hpp:134
eprosima::fastdds::dds::xtypes::LBound
uint32_t LBound
Definition dds_xtypes_typeobject.hpp:132
eprosima::fastdds::dds::xtypes::QualifiedTypeName
eprosima::fastcdr::fixed_string< TYPE_NAME_MAX_LENGTH > QualifiedTypeName
Definition dds_xtypes_typeobject.hpp:124
eprosima::fastdds::dds::xtypes::EnumeratedLiteralFlag
MemberFlag EnumeratedLiteralFlag
Definition dds_xtypes_typeobject.hpp:449
eprosima::fastdds::dds::xtypes::AliasTypeFlag
TypeFlag AliasTypeFlag
Definition dds_xtypes_typeobject.hpp:481
eprosima::fastdds::dds::xtypes::UnionDiscriminatorFlag
MemberFlag UnionDiscriminatorFlag
Definition dds_xtypes_typeobject.hpp:447
eprosima::fastdds::dds::xtypes::EquivalenceKind
uint8_t EquivalenceKind
Definition dds_xtypes_typeobject.hpp:72
eprosima::fastdds::dds::xtypes::UnionTypeFlag
TypeFlag UnionTypeFlag
Definition dds_xtypes_typeobject.hpp:475
eprosima::fastdds::dds::xtypes::SBoundSeq
std::vector< SBound > SBoundSeq
Definition dds_xtypes_typeobject.hpp:139
eprosima::fastdds::dds::xtypes::StructTypeFlag
TypeFlag StructTypeFlag
Definition dds_xtypes_typeobject.hpp:473
eprosima::fastdds::dds::xtypes::AppliedAnnotationParameterSeq
std::vector< AppliedAnnotationParameter > AppliedAnnotationParameterSeq
Definition dds_xtypes_typeobject.hpp:6407
eprosima::fastdds::dds::xtypes::MemberName
eprosima::fastcdr::fixed_string< MEMBER_NAME_MAX_LENGTH > MemberName
Definition dds_xtypes_typeobject.hpp:121
eprosima::fastdds::dds::xtypes::ReturnCode_t
eprosima::fastdds::dds::ReturnCode_t ReturnCode_t
Definition TypeObjectUtils.hpp:45
eprosima::fastdds::dds::xtypes::NameHash
std::array< uint8_t, 4 > NameHash
Definition dds_xtypes_typeobject.hpp:130
eprosima::fastdds::dds::xtypes::StructMemberFlag
MemberFlag StructMemberFlag
Definition dds_xtypes_typeobject.hpp:443
eprosima::fastdds::dds::xtypes::EquivalenceHash
std::array< uint8_t, 14 > EquivalenceHash
Definition dds_xtypes_typeobject.hpp:128
eprosima::fastdds::dds::xtypes::CompleteBitfieldSeq
std::vector< CompleteBitfield > CompleteBitfieldSeq
Definition dds_xtypes_typeobject.hpp:19804
eprosima::fastdds::dds::xtypes::BitmaskTypeFlag
TypeFlag BitmaskTypeFlag
Definition dds_xtypes_typeobject.hpp:485
eprosima::fastdds::dds::xtypes::UnionCaseLabelSeq
std::vector< int32_t > UnionCaseLabelSeq
Definition dds_xtypes_typeobject.hpp:9302
eprosima::fastdds::dds::xtypes::UnionMemberFlag
MemberFlag UnionMemberFlag
Definition dds_xtypes_typeobject.hpp:445
eprosima::fastdds::dds::xtypes::AnnotationTypeFlag
TypeFlag AnnotationTypeFlag
Definition dds_xtypes_typeobject.hpp:479
eprosima::fastdds::dds::xtypes::INVALID_LBOUND
const LBound INVALID_LBOUND
Definition dds_xtypes_typeobject.hpp:136
eprosima::fastdds::dds::xtypes::BitBound
uint16_t BitBound
Definition dds_xtypes_typeobject.hpp:16839
eprosima::fastdds::dds::xtypes::AliasMemberFlag
MemberFlag AliasMemberFlag
Definition dds_xtypes_typeobject.hpp:453
eprosima::fastdds::dds::xtypes::ExtensibilityKind
ExtensibilityKind
Definition common.hpp:31
eprosima::fastdds::dds::xtypes::TryConstructFailAction
TryConstructFailAction
Definition common.hpp:38
eprosima::fastdds::dds::xtypes::CompleteBitflagSeq
std::vector< CompleteBitflag > CompleteBitflagSeq
Definition dds_xtypes_typeobject.hpp:18615
eprosima::fastdds::dds::xtypes::CompleteAnnotationParameterSeq
std::vector< CompleteAnnotationParameter > CompleteAnnotationParameterSeq
Definition dds_xtypes_typeobject.hpp:11693
eprosima::fastdds::dds::xtypes::BitflagFlag
MemberFlag BitflagFlag
Definition dds_xtypes_typeobject.hpp:455
eprosima::fastdds::dds::xtypes::MemberFlag
uint16_t MemberFlag
Definition dds_xtypes_typeobject.hpp:440
eprosima::fastdds::dds::xtypes::AnnotationParameterFlag
MemberFlag AnnotationParameterFlag
Definition dds_xtypes_typeobject.hpp:451
eprosima::fastdds::dds::xtypes::TypeFlag
uint16_t TypeFlag
Definition dds_xtypes_typeobject.hpp:472
eprosima::fastdds::dds::xtypes::CompleteBitmaskHeader
CompleteEnumeratedHeader CompleteBitmaskHeader
Definition dds_xtypes_typeobject.hpp:18922
eprosima::fastdds::dds::xtypes::CompleteStructMemberSeq
std::vector< CompleteStructMember > CompleteStructMemberSeq
Definition dds_xtypes_typeobject.hpp:7849
eprosima::fastdds::dds::xtypes::PlacementKind
PlacementKind
PlacementKind values (verbatim annotation).
Definition common.hpp:48
eprosima::fastdds::dds::xtypes::TypeKind
uint8_t TypeKind
Definition dds_xtypes_typeobject.hpp:77
eprosima::fastdds::dds::xtypes::SBound
uint8_t SBound
Definition dds_xtypes_typeobject.hpp:137
eprosima::fastdds::dds
Definition BuiltinTopicKey.hpp:26
eprosima::fastdds::dds::ReturnCode_t
int32_t ReturnCode_t
Definition DDSReturnCode.hpp:59
eprosima::fastdds
eprosima
eProsima namespace.