RTI Connext Traditional C++ API Version 7.3.0
DDS_DynamicDataMemberInfo Struct Reference

A descriptor for a single member (i.e. field) of dynamically defined data type. More...

Public Attributes

DDS_DynamicDataMemberId member_id
 An integer that uniquely identifies the data member within this DDS_DynamicData sample's type. More...
 
const char * member_name
 The string name of the data member. More...
 
DDS_Boolean member_exists
 Indicates whether the member exists in this sample. More...
 
DDS_TCKind member_kind
 The kind of type of this data member (e.g., integer, structure, etc.). More...
 
DDS_UnsignedLong element_count
 The number of elements within this data member. More...
 
DDS_TCKind element_kind
 The kind of type of the elements within this data member. More...
 

Detailed Description

A descriptor for a single member (i.e. field) of dynamically defined data type.

See also
DDS_DynamicData::get_member_info

Member Data Documentation

◆ member_id

DDS_DynamicDataMemberId DDS_DynamicDataMemberInfo::member_id

An integer that uniquely identifies the data member within this DDS_DynamicData sample's type.

The member ID is assigned automatically by the middleware based on the member's declaration order within the type. It is a 1-based index of the member's position in the type.

See also
DDS_TCKind

◆ member_name

const char* DDS_DynamicDataMemberInfo::member_name

The string name of the data member.

This name will be unique among members of the same type. However, a single named member may have multiple type representations.

◆ member_exists

DDS_Boolean DDS_DynamicDataMemberInfo::member_exists

Indicates whether the member exists in this sample.

A member that is defined in a type may not exist in a sample of that type in the following situations

  • The member is optional and is unset
  • Being part of a union, the discriminator doesn't select this member
  • When getting the information about a sequence element, with index i, and i is greater than the current sequence length but smaller than its maximum length.
See also
DDS_DynamicData::member_exists_in_type

◆ member_kind

DDS_TCKind DDS_DynamicDataMemberInfo::member_kind

The kind of type of this data member (e.g., integer, structure, etc.).

This is a convenience field; it is equivalent to looking up the member in the DDS_TypeCode and getting the DDS_TCKind from there.

◆ element_count

DDS_UnsignedLong DDS_DynamicDataMemberInfo::element_count

The number of elements within this data member.

This information is only valid for members of array or sequence types. Members of other types will always report zero (0) here.

◆ element_kind

DDS_TCKind DDS_DynamicDataMemberInfo::element_kind

The kind of type of the elements within this data member.

This information is only valid for members of array or sequence types. Members of other types will always report DDS_TK_NULL here.