|
RTI Connext Modern C++ API Version 7.6.0
|
<<value-type>> Represents an IDL struct type
More...
#include <dds/core/xtypes/StructType.hpp>
Public Member Functions | |
| StructType (const std::string &name) | |
| Creates an empty struct type. More... | |
| StructType (const std::string &name, const StructType &parent) | |
| Creates an empty struct type with a base type. More... | |
| template<typename Container > | |
| StructType (const std::string &the_name, const Container &the_members) | |
| Creates a struct with the members in a container. More... | |
| template<typename Container > | |
| StructType (const std::string &the_name, const StructType &the_parent, const Container &the_members) | |
| Creates a struct with a base type and the members in a container. More... | |
| template<typename MemberIter > | |
| StructType (const std::string &the_name, MemberIter begin, MemberIter end) | |
| Creates a struct with the members in an iterator range. More... | |
| template<typename MemberIter > | |
| StructType (const std::string &the_name, const StructType &the_parent, MemberIter begin, MemberIter end) | |
| Creates a struct with a base type and the members in an iterator range. More... | |
| StructType (const std::string &the_name, StructType &&the_parent) | |
| <<C++11>> Creates an empty struct type with a base type. More... | |
| template<typename MemberIter > | |
| StructType (const std::string &the_name, StructType &&the_parent, MemberIter begin, MemberIter end) | |
| <<C++11>> Creates an empty struct type with a base type and the members in an iterator range. More... | |
| template<typename Container > | |
| StructType (const std::string &the_name, StructType &&the_parent, const Container &the_members) | |
| <<C++11>> Creates an empty struct type with a base type and the members in a container. More... | |
| StructType (const std::string &the_name, std::initializer_list< MemberImpl > the_members) | |
| <<C++11>> Creates a struct with the members in an initializer_list More... | |
| StructType (const std::string &the_name, const StructType &the_parent, std::initializer_list< MemberImpl > the_members) | |
| <<C++11>> Creates a struct with the members in an initializer_list and a base type More... | |
| StructType (const std::string &the_name, StructType &&the_parent, std::initializer_list< MemberImpl > the_members) | |
| <<C++11>> Creates a struct with the members in an initializer_list and a base type More... | |
| StructType & | extensibility_kind (dds::core::xtypes::ExtensibilityKind kind) |
| Sets the type extensibility kind. More... | |
| bool | has_parent () const |
| Indicates if this type has a base type. More... | |
| const StructType & | parent () const |
| Retrieves the base type. More... | |
| MemberIndex | find_member_by_id (uint32_t id) const |
| Gets the index of the member with a specific member ID. More... | |
| StructType & | add_member (const MemberImpl &member) |
| Adds a member at the end. More... | |
| template<typename Container > | |
| StructType & | add_members (const Container &the_members) |
| Adds all the members of a container at the end. More... | |
| StructType & | add_members (std::initializer_list< MemberImpl > the_members) |
| <<C++11>> Adds all the members of an initializer_list at the end More... | |
| template<typename MemberIter > | |
| StructType & | add_members (MemberIter begin, MemberIter end) |
| Adds all the members in an iterator range at the end. More... | |
| StructType & | add_member (MemberImpl &&the_member) |
| <<C++11>> Adds a member, moving it, at the end More... | |
Public Member Functions inherited from dds::core::xtypes::AbstractConstructedType< Member > | |
| dds::core::xtypes::ExtensibilityKind | extensibility_kind () const |
| Gets the extensibility kind. More... | |
| size_t | member_count () const |
| Gets the number of members. More... | |
| const Member & | member (MemberIndex index) const |
| Gets a member by its index. More... | |
| const Member & | member (const std::string &name) const |
| Gets a member by its name. More... | |
| MemberIndex | find_member_by_name (const std::string &name) const |
| Obtains the member index from its name. More... | |
| std::vector< Member > | members () const |
| Gets a copy of all the members. More... | |
| uint32_t | cdr_serialized_sample_max_size (dds::core::policy::DataRepresentationId representation_id=DDS_AUTO_DATA_REPRESENTATION) const |
| Gets the maximum serialized size of samples of this type. More... | |
| uint32_t | cdr_serialized_sample_min_size (dds::core::policy::DataRepresentationId representation_id=DDS_AUTO_DATA_REPRESENTATION) const |
| Gets the minimum serialized size of samples of this type. More... | |
| uint32_t | cdr_serialized_sample_key_max_size (dds::core::policy::DataRepresentationId representation_id=DDS_AUTO_DATA_REPRESENTATION) const |
| Gets the maximum serialized size of sample keys of this type. More... | |
Public Member Functions inherited from dds::core::xtypes::DynamicType | |
| dds::core::xtypes::TypeKind | kind () const |
| Gets the type kind. More... | |
| std::string | name () const |
| Gets the name. More... | |
Related Functions | |
(Note that these are not member functions.) | |
| template<typename... Types> | |
| dds::core::xtypes::StructType | create_type_from_tuple (const std::string &name) |
| <<C++11>> <<experimental>> <<extension>> Creates a StructType from a list of types or a std::tuple More... | |
Related Functions inherited from dds::core::xtypes::DynamicType | |
| bool | is_primitive_type (const DynamicType &t) |
| Determines if a DynamicType is a PrimitiveType. More... | |
| bool | is_constructed_type (const DynamicType &t) |
| Determines if a DynamicType is a constructed type. More... | |
| bool | is_collection_type (const DynamicType &t) |
| Determines if a DynamicType is a CollectionType. More... | |
| bool | is_aggregation_type (const DynamicType &t) |
| Determines if a DynamicType is an aggregation type. More... | |
| std::ostream & | operator<< (std::ostream &out, const DynamicType &type) |
| <<extension>> Converts the DynamicType to a string. More... | |
| void | print_idl (const DynamicType &type, unsigned int indent=0) |
| <<extension>> Prints the IDL representation of this DynamicType to the standard output More... | |
| std::ostream & | to_string (std::ostream &out, const DynamicType &type, const rti::core::xtypes::DynamicTypePrintFormatProperty &format=DynamicTypePrintFormatProperty()) |
| <<extension>> Writes the string representation of this DynamicType to an output stream. More... | |
| std::string | to_string (const DynamicType &type, const rti::core::xtypes::DynamicTypePrintFormatProperty &format=DynamicTypePrintFormatProperty()) |
| <<extension>> Creates the string representation of this DynamicType to a string. More... | |
Additional Inherited Members | |
Public Types inherited from dds::core::xtypes::AbstractConstructedType< Member > | |
| typedef Member | Member |
| The member type (specified by the subclasses of this class) More... | |
| typedef uint32_t | MemberIndex |
| The member index type. More... | |
Static Public Attributes inherited from dds::core::xtypes::AbstractConstructedType< Member > | |
| static OMG_DDS_API_CLASS_VARIABLE const MemberIndex | INVALID_INDEX |
| Indicates that a member doesn't exist. More... | |
<<value-type>> Represents an IDL struct type
| dds::core::xtypes::StructType::StructType | ( | const std::string & | name | ) |
Creates an empty struct type.
The struct doesn't have a base type. Members can be added after creation.
| name | The name of the type |
| dds::core::xtypes::StructType::StructType | ( | const std::string & | name, |
| const StructType & | parent | ||
| ) |
Creates an empty struct type with a base type.
Members can be added after creation.
| name | The name of the type |
| parent | The base type |
|
inline |
Creates a struct with the members in a container.
The struct doesn't have a base type.
| Container | A container that provides the member functions begin() and end() to iterate over Member elements. |
| the_name | The name of the type |
| the_members | A container with the members for this struct type |
|
inline |
Creates a struct with a base type and the members in a container.
| Container | A container that provides the member functions begin() and end() to iterate over Member elements. |
| the_name | The name of the type |
| the_parent | The base type |
| the_members | A container with the members for this struct type |
|
inline |
Creates a struct with the members in an iterator range.
The struct doesn't have a base type.
| MemberIter | A forward iterator of Member elements |
| the_name | The name of the type |
| begin | The beginning of the range of Members |
| end | The end of the range of Members |
|
inline |
Creates a struct with a base type and the members in an iterator range.
| MemberIter | A forward iterator of Member elements |
| the_parent | The base type |
| the_name | The name of the type |
| begin | The beginning of the range of Members |
| end | The end of the range of Members |
|
inline |
<<C++11>> Creates an empty struct type with a base type.
The base type is moved. This is useful to save a copy in situations like the following example:
|
inline |
<<C++11>> Creates an empty struct type with a base type and the members in an iterator range.
The base type is moved.
|
inline |
<<C++11>> Creates an empty struct type with a base type and the members in a container.
The base type is moved.
|
inline |
<<C++11>> Creates a struct with the members in an initializer_list
| the_name | The name of the type |
| the_members | An ininitalizer_list of Members |
|
inline |
<<C++11>> Creates a struct with the members in an initializer_list and a base type
| the_name | The name of the type |
| the_parent | The base type |
| the_members | An ininitalizer_list of Members |
|
inline |
<<C++11>> Creates a struct with the members in an initializer_list and a base type
| the_name | The name of the type |
| the_parent | The base type (moved) |
| the_members | An ininitalizer_list of Members |
| StructType & dds::core::xtypes::StructType::extensibility_kind | ( | dds::core::xtypes::ExtensibilityKind | kind | ) |
Sets the type extensibility kind.
| bool dds::core::xtypes::StructType::has_parent | ( | ) | const |
Indicates if this type has a base type.
| const StructType & dds::core::xtypes::StructType::parent | ( | ) | const |
Retrieves the base type.
If this type doesn't have a base type it throws PreconditionNotMetError.
| MemberIndex dds::core::xtypes::StructType::find_member_by_id | ( | uint32_t | id | ) | const |
Gets the index of the member with a specific member ID.
| StructType & dds::core::xtypes::StructType::add_member | ( | const MemberImpl & | member | ) |
Adds a member at the end.
|
inline |
Adds all the members of a container at the end.
|
inline |
<<C++11>> Adds all the members of an initializer_list at the end
|
inline |
Adds all the members in an iterator range at the end.
|
inline |
<<C++11>> Adds a member, moving it, at the end
|
related |
<<C++11>> <<experimental>> <<extension>> Creates a StructType from a list of types or a std::tuple
| Types | A list of types or a std::tuple. The types must be primitive (see dds::core::xtypes::PrimitiveType) or std::string. |
The StructType members are all default-created (i.e. non-key, non-optional, with default IDs...) and their names are m0, m1, m2, etc.