15#ifndef TYPES_DYNAMIC_TYPE_H
16#define TYPES_DYNAMIC_TYPE_H
18#include <fastrtps/types/TypesBase.h>
19#include <fastrtps/types/DynamicTypePtr.h>
25class DomainParticipantImpl;
32class AnnotationDescriptor;
34class DynamicTypeMember;
35class DynamicTypeBuilder;
63 RTPS_DllAPI
virtual void clear();
70 const std::string& name)
const;
74 const std::string& name);
80 const std::string& annotation_name,
81 const std::string& key,
82 const std::string& value);
90 const std::string& annotation_name,
91 const std::string& key,
92 const std::string& value);
114 const std::string& name);
129 std::map<MemberId, DynamicTypeMember*>& members);
132 std::map<std::string, DynamicTypeMember*>& members);
135 uint32_t index = 0)
const;
Definition AnnotationDescriptor.h:29
Definition DynamicDataFactory.h:32
Definition DynamicDataHelper.hpp:30
Definition DynamicData.h:44
Definition DynamicTypePtr.h:27
Definition DynamicTypeBuilderFactory.h:40
Definition DynamicTypeBuilder.h:32
Definition DynamicType.h:38
DynamicType_ptr get_discriminator_type() const
DynamicType_ptr get_base_type() const
friend class fastdds::dds::DomainParticipantImpl
Definition DynamicType.h:51
ReturnCode_t get_annotation(AnnotationDescriptor &descriptor, uint32_t idx)
ReturnCode_t copy_from_builder(const DynamicTypeBuilder *other)
RTPS_DllAPI const TypeDescriptor * get_descriptor() const
RTPS_DllAPI ReturnCode_t get_descriptor(TypeDescriptor *descriptor) const
bool is_key_defined_
Definition DynamicType.h:121
DynamicType(const DynamicTypeBuilder *other)
ReturnCode_t apply_annotation(AnnotationDescriptor &descriptor)
RTPS_DllAPI TypeKind get_kind() const
Definition DynamicType.h:148
std::string name_
Definition DynamicType.h:119
virtual RTPS_DllAPI void clear()
RTPS_DllAPI std::string get_name() const
RTPS_DllAPI ReturnCode_t get_all_members_by_name(std::map< std::string, DynamicTypeMember * > &members)
TypeDescriptor * descriptor_
Definition DynamicType.h:116
RTPS_DllAPI ReturnCode_t get_all_members(std::map< MemberId, DynamicTypeMember * > &members)
ReturnCode_t apply_annotation_to_member(MemberId id, AnnotationDescriptor &descriptor)
ReturnCode_t get_member_by_name(DynamicTypeMember &member, const std::string &name)
std::map< MemberId, DynamicTypeMember * > member_by_id_
Definition DynamicType.h:117
RTPS_DllAPI MemberId get_members_count() const
RTPS_DllAPI bool is_consistent() const
DynamicType_ptr get_key_element_type() const
RTPS_DllAPI bool is_complex_kind() const
RTPS_DllAPI const TypeDescriptor * get_type_descriptor() const
Definition DynamicType.h:159
RTPS_DllAPI TypeDescriptor * get_descriptor()
RTPS_DllAPI uint32_t get_bounds_size() const
TypeKind kind_
Definition DynamicType.h:120
ReturnCode_t apply_annotation(const std::string &annotation_name, const std::string &key, const std::string &value)
RTPS_DllAPI bool key_annotation() const
std::map< std::string, DynamicTypeMember * > member_by_name_
Definition DynamicType.h:118
uint32_t get_annotation_count()
virtual RTPS_DllAPI ~DynamicType()
RTPS_DllAPI bool is_discriminator_type() const
DynamicType_ptr get_element_type() const
void set_name(const std::string &name)
RTPS_DllAPI size_t get_size() const
RTPS_DllAPI DynamicType(const TypeDescriptor *descriptor)
RTPS_DllAPI uint32_t get_bounds(uint32_t index=0) const
ReturnCode_t get_member(DynamicTypeMember &member, MemberId id)
bool exists_member_by_name(const std::string &name) const
ReturnCode_t apply_annotation_to_member(MemberId id, const std::string &annotation_name, const std::string &key, const std::string &value)
RTPS_DllAPI bool has_children() const
RTPS_DllAPI uint32_t get_total_bounds() const
RTPS_DllAPI bool equals(const DynamicType *other) const
Definition DynamicTypeMember.h:29
Definition MemberDescriptor.h:29
This class represents the enumeration ReturnCode_t.
Definition TypesBase.h:190
Definition TypeDescriptor.h:30
Definition TypeObjectFactory.h:29
uint32_t MemberId
Definition TypesBase.h:285
octet TypeKind
Definition TypesBase.h:120
eProsima namespace.
Definition LibrarySettingsAttributes.h:23