RTI Connext Modern C++ API  Version 6.0.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
dds::core::xtypes::AbstractConstructedType< MemberType > Class Template Reference

The base class of types that have members and an extensibility kind. More...

#include <DynamicTypeImpl.hpp>

Inheritance diagram for dds::core::xtypes::AbstractConstructedType< MemberType >:
dds::core::xtypes::DynamicType

Public Types

typedef MemberType Member
 The member type (specified by the subclasses of this class)
 
typedef uint32_t MemberIndex
 The meber index type.
 

Public Member Functions

dds::core::xtypes::ExtensibilityKind extensibility_kind () const
 Gets the extensibility kind.
 
size_t member_count () const
 Gets the number of members.
 
const MemberType & member (MemberIndex index) const
 Gets a member by its index.
 
const MemberType & member (const std::string &name) const
 Gets a member by its name.
 
MemberIndex find_member_by_name (const std::string &name) const
 Obtains the member index from its name.
 
std::vector< MemberType > members () const
 Gets a copy of all the members.
 
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.
 
- Public Member Functions inherited from dds::core::xtypes::DynamicType
dds::core::xtypes::TypeKind kind () const
 Gets the type kind.
 
std::string name () const
 Gets the name.
 

Static Public Attributes

static
OMG_DDS_API_CLASS_VARIABLE
const MemberIndex 
INVALID_INDEX
 Indicates that a member doesn't exist.
 

Additional Inherited Members

Detailed Description

template<typename MemberType>
class dds::core::xtypes::AbstractConstructedType< MemberType >

The base class of types that have members and an extensibility kind.

Template Parameters
MemberTypeThe concrete member type, specified by the subclasses, can be Member, UnionMember and EnumMember

This is the base class of StructType, UnionType and EnumType.

Member Typedef Documentation

template<typename MemberType>
typedef MemberType dds::core::xtypes::AbstractConstructedType< MemberType >::Member

The member type (specified by the subclasses of this class)

template<typename MemberType>
typedef uint32_t dds::core::xtypes::AbstractConstructedType< MemberType >::MemberIndex

The meber index type.

Member Function Documentation

template<typename MemberType>
dds::core::xtypes::ExtensibilityKind dds::core::xtypes::AbstractConstructedType< MemberType >::extensibility_kind ( ) const

Gets the extensibility kind.

template<typename MemberType>
size_t dds::core::xtypes::AbstractConstructedType< MemberType >::member_count ( ) const

Gets the number of members.

template<typename MemberType>
const MemberType& dds::core::xtypes::AbstractConstructedType< MemberType >::member ( MemberIndex  index) const

Gets a member by its index.

Parameters
indexThe index of the member (0 to member_count() - 1)
template<typename MemberType>
const MemberType& dds::core::xtypes::AbstractConstructedType< MemberType >::member ( const std::string &  name) const

Gets a member by its name.

template<typename MemberType>
MemberIndex dds::core::xtypes::AbstractConstructedType< MemberType >::find_member_by_name ( const std::string &  name) const

Obtains the member index from its name.

template<typename MemberType>
std::vector<MemberType> dds::core::xtypes::AbstractConstructedType< MemberType >::members ( ) const

Gets a copy of all the members.

template<typename MemberType>
uint32_t dds::core::xtypes::AbstractConstructedType< MemberType >::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.

Obtains the maximum possible size in bytes of any serialized data sample of this type.

Precondition
The type is an aggregation type (struct, union)
Parameters
representation_idThe serialized data representation for which we calculate the maximum size.
Returns
The maximum size

Member Data Documentation

template<typename MemberType>
OMG_DDS_API_CLASS_VARIABLE const MemberIndex dds::core::xtypes::AbstractConstructedType< MemberType >::INVALID_INDEX
static

Indicates that a member doesn't exist.


RTI Connext Modern C++ API Version 6.0.0 Copyright © Sun Mar 3 2019 Real-Time Innovations, Inc