15#ifndef FASTDDS_DDS_XTYPES_DYNAMIC_TYPES__DYNAMICTYPEBUILDERFACTORY_HPP
16#define FASTDDS_DDS_XTYPES_DYNAMIC_TYPES__DYNAMICTYPEBUILDERFACTORY_HPP
21#include <fastdds/dds/core/ReturnCode.hpp>
22#include <fastdds/dds/xtypes/dynamic_types/DynamicType.hpp>
23#include <fastdds/dds/xtypes/dynamic_types/TypeDescriptor.hpp>
24#include <fastdds/dds/xtypes/dynamic_types/Types.hpp>
25#include <fastdds/fastdds_dll.hpp>
158 const std::string& document_url,
159 const std::string& type_name,
172 const std::string& document,
173 const std::string& type_name,
Definition DynamicTypeBuilderFactory.hpp:36
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_bitmask_type(uint32_t bound)=0
Creates a new DynamicTypeBuilder reference representing a bitmask.
traits< DynamicTypeBuilderFactory >::ref_type _this()
virtual FASTDDS_EXPORTED_API traits< DynamicType >::ref_type get_primitive_type(TypeKind kind)=0
Retrieves the cached DynamicType reference associated to a given primitive.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_type_w_uri(const std::string &document_url, const std::string &type_name, const IncludePathSeq &include_paths)=0
Creates a new DynamicTypeBuilder reference by parsing the type description at the given URL.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_array_type(traits< DynamicType >::ref_type element_type, const BoundSeq &bound)=0
Creates a new DynamicTypeBuilder reference representing an array.
typename traits< DynamicTypeBuilderFactory >::ref_type _ref_type
Definition DynamicTypeBuilderFactory.hpp:39
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_map_type(traits< DynamicType >::ref_type key_element_type, traits< DynamicType >::ref_type element_type, uint32_t bound)=0
Creates a new DynamicTypeBuilder reference representing a map.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_string_type(uint32_t bound)=0
Creates a new DynamicTypeBuilder reference representing a bounded string type.
static FASTDDS_EXPORTED_API ReturnCode_t delete_instance()
Resets the singleton reference.
DynamicTypeBuilderFactory()=default
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_wstring_type(uint32_t bound)=0
Creates a new DynamicTypeBuilder reference representing a bounded wstring type.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_sequence_type(traits< DynamicType >::ref_type element_type, uint32_t bound)=0
Creates a new DynamicTypeBuilder reference representing a sequence.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_type_copy(traits< DynamicType >::ref_type type)=0
Creates a new DynamicTypeBuilder reference based on the given DynamicType reference.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_type_w_type_object(const xtypes::TypeObject &type_object)=0
Creates a new DynamicTypeBuilder reference based on the given xtypes::TypeObject instance.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_type_w_document(const std::string &document, const std::string &type_name, const IncludePathSeq &include_paths)=0
Creates a new DynamicTypeBuilder reference by parsing the type description contained in the given str...
virtual ~DynamicTypeBuilderFactory()=default
virtual FASTDDS_EXPORTED_API ReturnCode_t delete_type(traits< DynamicType >::ref_type &type)=0
Resets the internal reference if it is cached.
static FASTDDS_EXPORTED_API traits< DynamicTypeBuilderFactory >::ref_type get_instance()
Returns the singleton factory object.
virtual FASTDDS_EXPORTED_API traits< DynamicTypeBuilder >::ref_type create_type(traits< TypeDescriptor >::ref_type descriptor)=0
Creates a new DynamicTypeBuilder reference based on the given TypeDescriptor state.
This class represents the union TypeObject defined by the user in the IDL file.
Definition dds_xtypes_typeobject.hpp:23335
Definition DomainParticipant.hpp:45
std::vector< std::string > IncludePathSeq
Definition dynamic_language_binding.hpp:64
std::vector< uint32_t > BoundSeq
Definition dynamic_language_binding.hpp:68
int32_t ReturnCode_t
Definition DDSReturnCode.hpp:59
uint8_t TypeKind
Definition dynamic_language_binding.hpp:70
typename ::std::shared_ptr< T > ref_type
Definition type_traits.hpp:29