RTI Connext C API Version 7.1.0

<<extension>> The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code generation. More...

Data Structures

struct  DDS_DynamicDataProperty_t
 A collection of attributes used to configure DDS_DynamicData objects. More...
 
struct  DDS_DynamicDataTypeSerializationProperty_t
 Properties that govern how data of a certain type will be serialized on the network. More...
 
struct  DDS_DynamicDataInfo
 A descriptor for a DDS_DynamicData object. More...
 
struct  DDS_DynamicDataMemberInfo
 A descriptor for a single member (i.e. field) of dynamically defined data type. More...
 
struct  DDS_DynamicData
 A sample of any complex data type, which can be inspected and manipulated reflectively. More...
 
struct  DDS_DynamicDataSeq
 An ordered collection of DDS_DynamicData elements. More...
 
struct  DDS_DynamicDataTypeProperty_t
 A collection of attributes used to configure DDS_DynamicDataTypeSupport objects. More...
 
struct  DDS_DynamicDataJsonParserProperties_t
 A collection of attributes used to configure DDS_DynamicData objects. More...
 

Macros

#define DDS_DynamicDataProperty_t_INITIALIZER
 Static initializer for DDS_DynamicDataProperty_t objects. More...
 
#define DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED
 A sentinel value that indicates that no member ID is needed in order to perform some operation. More...
 
#define DDS_DynamicDataTypeProperty_t_INITIALIZER
 Static initializer for DDS_DynamicDataTypeProperty_t objects. More...
 

Typedefs

typedef DDS_Long DDS_DynamicDataMemberId
 An integer that uniquely identifies some member of a data type within that type. More...
 
typedef struct DDS_DynamicDataWriter DDS_DynamicDataWriter
 Writes (publishes) objects of type DDS_DynamicData. More...
 
typedef struct DDS_DynamicDataReader DDS_DynamicDataReader
 Reads (subscribes to) objects of type DDS_DynamicData. More...
 
typedef struct DDS_DynamicDataTypeSupport DDS_DynamicDataTypeSupport
 A factory for registering a dynamically defined type and creating DDS_DynamicData objects. More...
 

Functions

DDS_Boolean DDS_DynamicData_initialize (DDS_DynamicData *self, const DDS_TypeCode *type, const struct DDS_DynamicDataProperty_t *property)
 Initialize a DDS_DynamicData object to a valid empty state. More...
 
DDS_DynamicDataDDS_DynamicData_new (const DDS_TypeCode *type, const struct DDS_DynamicDataProperty_t *property)
 The constructor for new DDS_DynamicData objects. More...
 
void DDS_DynamicData_finalize (DDS_DynamicData *self)
 Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the pointer. More...
 
void DDS_DynamicData_delete (DDS_DynamicData *self)
 Finalize and deallocate this DDS_DynamicData sample. More...
 
DDS_ReturnCode_t DDS_DynamicData_copy (DDS_DynamicData *self, const DDS_DynamicData *src)
 Deeply copy from the given object to this object. More...
 
DDS_Boolean DDS_DynamicData_equal (const DDS_DynamicData *self, const DDS_DynamicData *other)
 Indicate whether the contents of another DDS_DynamicData sample are the same as those of this one. More...
 
DDS_ReturnCode_t DDS_DynamicData_clear_all_members (DDS_DynamicData *self)
 Clear the contents of all data members of this object. More...
 
DDS_ReturnCode_t DDS_DynamicData_clear_optional_member (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id)
 Clear the contents of a single optional data member of this object. More...
 
DDS_ReturnCode_t DDS_DynamicData_clear_member (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id)
 Clear the contents of a single data member of this object. More...
 
DDS_ReturnCode_t DDS_DynamicData_print (const DDS_DynamicData *self, FILE *fp, int indent)
 Output a textual representation of this object and its contents to the given file. More...
 
DDS_ReturnCode_t DDS_DynamicData_from_cdr_buffer (DDS_DynamicData *self, const char *buffer, unsigned int length)
 Deserializes a DynamicData object from a buffer of octets. More...
 
DDS_ReturnCode_t DDS_DynamicData_to_cdr_buffer_ex (DDS_DynamicData *self, char *buffer, unsigned int *length, DDS_DataRepresentationId_t representation)
 Serializes a DynamicData object into a buffer of octets. More...
 
DDS_ReturnCode_t DDS_DynamicData_to_cdr_buffer (DDS_DynamicData *self, char *buffer, unsigned int *length)
 Serializes a DynamicData object into a CDR buffer of octets. More...
 
DDS_ReturnCode_t DDS_DynamicData_to_string (DDS_DynamicData *self, char *str, DDS_UnsignedLong *str_size, const struct DDS_PrintFormatProperty *property)
 Get a string representation of a DynamicData object. More...
 
void DDS_DynamicData_get_info (const DDS_DynamicData *self, struct DDS_DynamicDataInfo *info_out)
 Fill in the given descriptor with information about this DDS_DynamicData. More...
 
DDS_ReturnCode_t DDS_DynamicData_bind_type (DDS_DynamicData *self, const DDS_TypeCode *type)
 If this DDS_DynamicData object is not yet associated with a data type, set that type now to the given DDS_TypeCode. More...
 
DDS_ReturnCode_t DDS_DynamicData_unbind_type (DDS_DynamicData *self)
 Dissociate this DDS_DynamicData object from any particular data type. More...
 
DDS_ReturnCode_t DDS_DynamicData_bind_complex_member (DDS_DynamicData *self, DDS_DynamicData *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Use another DDS_DynamicData object to provide access to a complex field of this DDS_DynamicData object. More...
 
DDS_ReturnCode_t DDS_DynamicData_unbind_complex_member (DDS_DynamicData *self, DDS_DynamicData *value)
 Tear down the association created by a DDS_DynamicData_bind_complex_member operation, committing any changes to the outer object since then. More...
 
const DDS_TypeCodeDDS_DynamicData_get_type (const DDS_DynamicData *self)
 Get the data type, of which this DDS_DynamicData represents an instance. More...
 
DDS_TCKind DDS_DynamicData_get_type_kind (const DDS_DynamicData *self)
 Get the kind of this object's data type. More...
 
DDS_UnsignedLong DDS_DynamicData_get_member_count (const DDS_DynamicData *self)
 Get the number of members in the type. More...
 
DDS_Boolean DDS_DynamicData_member_exists (const DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id)
 Indicates whether a member exists in this sample. More...
 
DDS_Boolean DDS_DynamicData_member_exists_in_type (const DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id)
 Indicates whether a member of a particular name/ID exists in this data sample's type. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_member_info (const DDS_DynamicData *self, struct DDS_DynamicDataMemberInfo *info, const char *member_name, DDS_DynamicDataMemberId member_id)
 Fill in the given descriptor with information about the identified member of this DDS_DynamicData sample. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_member_info_by_index (const DDS_DynamicData *self, struct DDS_DynamicDataMemberInfo *info, DDS_UnsignedLong index)
 Fill in the given descriptor with information about the identified member of this DDS_DynamicData sample. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_member_type (const DDS_DynamicData *self, const DDS_TypeCode **type_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the type of the given member of this sample. More...
 
DDS_ReturnCode_t DDS_DynamicData_is_member_key (const DDS_DynamicData *self, DDS_Boolean *is_key_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Indicates whether a given member forms part of the key of this sample's data type. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_long (const DDS_DynamicData *self, DDS_Long *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Long or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, or DDS_Enum). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_short (const DDS_DynamicData *self, DDS_Short *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Short or another type implicitly convertible to it (DDS_Octet or DDS_Char). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulong (const DDS_DynamicData *self, DDS_UnsignedLong *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_UnsignedLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, or DDS_Enum). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ushort (const DDS_DynamicData *self, DDS_UnsignedShort *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_UnsignedShort or another type implicitly convertible to it (DDS_Octet or DDS_Char). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_float (const DDS_DynamicData *self, DDS_Float *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Float. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_double (const DDS_DynamicData *self, DDS_Double *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Double or another type implicitly convertible to it (DDS_Float). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_boolean (const DDS_DynamicData *self, DDS_Boolean *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Boolean. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_char (const DDS_DynamicData *self, DDS_Char *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Char. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_octet (const DDS_DynamicData *self, DDS_Octet *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Octet. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longlong (const DDS_DynamicData *self, DDS_LongLong *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_LongLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, DDS_Long, DDS_UnsignedLong, or DDS_Enum). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulonglong (const DDS_DynamicData *self, DDS_UnsignedLongLong *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_UnsignedLongLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, DDS_Long, DDS_UnsignedLong, or DDS_Enum). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longdouble (const DDS_DynamicData *self, DDS_LongDouble *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_LongDouble or another type implicitly convertible to it (DDS_Float or DDS_Double). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_wchar (const DDS_DynamicData *self, DDS_Wchar *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Wchar or another type implicitly convertible to it (DDS_Char). More...
 
DDS_ReturnCode_t DDS_DynamicData_get_string (const DDS_DynamicData *self, char **value, DDS_UnsignedLong *size, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type char*. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_wstring (const DDS_DynamicData *self, DDS_Wchar **value, DDS_UnsignedLong *size, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get the value of the given field, which is of type DDS_Wchar*. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_complex_member (const DDS_DynamicData *self, DDS_DynamicData *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the value of the given field, which is of some composed type. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_long_array (const DDS_DynamicData *self, DDS_Long *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. The array may contain members of type DDS_Long or DDS_Enum. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_short_array (const DDS_DynamicData *self, DDS_Short *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulong_array (const DDS_DynamicData *self, DDS_UnsignedLong *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. The array may contain members of type DDS_UnsignedLong or DDS_Enum. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ushort_array (const DDS_DynamicData *self, DDS_UnsignedShort *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_float_array (const DDS_DynamicData *self, DDS_Float *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_double_array (const DDS_DynamicData *self, DDS_Double *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_boolean_array (const DDS_DynamicData *self, DDS_Boolean *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_char_array (const DDS_DynamicData *self, DDS_Char *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_octet_array (const DDS_DynamicData *self, DDS_Octet *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longlong_array (const DDS_DynamicData *self, DDS_LongLong *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulonglong_array (const DDS_DynamicData *self, DDS_UnsignedLongLong *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longdouble_array (const DDS_DynamicData *self, DDS_LongDouble *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_wchar_array (const DDS_DynamicData *self, DDS_Wchar *array, DDS_UnsignedLong *length, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_long_seq (const DDS_DynamicData *self, struct DDS_LongSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_short_seq (const DDS_DynamicData *self, struct DDS_ShortSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulong_seq (const DDS_DynamicData *self, struct DDS_UnsignedLongSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ushort_seq (const DDS_DynamicData *self, struct DDS_UnsignedShortSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_float_seq (const DDS_DynamicData *self, struct DDS_FloatSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_double_seq (const DDS_DynamicData *self, struct DDS_DoubleSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_boolean_seq (const DDS_DynamicData *self, struct DDS_BooleanSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_char_seq (const DDS_DynamicData *self, struct DDS_CharSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_octet_seq (const DDS_DynamicData *self, struct DDS_OctetSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longlong_seq (const DDS_DynamicData *self, struct DDS_LongLongSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_ulonglong_seq (const DDS_DynamicData *self, struct DDS_UnsignedLongLongSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_longdouble_seq (const DDS_DynamicData *self, struct DDS_LongDoubleSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_get_wchar_seq (const DDS_DynamicData *self, struct DDS_WcharSeq *seq, const char *member_name, DDS_DynamicDataMemberId member_id)
 Get a copy of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_long (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Long value)
 Set the value of the given field, which is of type DDS_Long. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_short (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Short value)
 Set the value of the given field, which is of type DDS_Short. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulong (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong value)
 Set the value of the given field, which is of type DDS_UnsignedLong. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ushort (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedShort value)
 Set the value of the given field, which is of type DDS_UnsignedShort. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_float (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Float value)
 Set the value of the given field, which is of type DDS_Float. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_double (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Double value)
 Set the value of the given field, which is of type DDS_Double. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_boolean (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Boolean value)
 Set the value of the given field, which is of type DDS_Boolean. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_char (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Char value)
 Set the value of the given field, which is of type DDS_Char. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_octet (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Octet value)
 Set the value of the given field, which is of type DDS_Octet. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longlong (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_LongLong value)
 Set the value of the given field, which is of type DDS_LongLong. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulonglong (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLongLong value)
 Set the value of the given field, which is of type DDS_UnsignedLongLong. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longdouble (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_LongDouble value)
 Set the value of the given field, which is of type DDS_LongDouble. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_wchar (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_Wchar value)
 Set the value of the given field, which is of type DDS_Wchar. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_string (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const char *value)
 Set the value of the given field of type char*. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_wstring (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const DDS_Wchar *value)
 Set the value of the given field of type DDS_Wchar*. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_complex_member (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const DDS_DynamicData *value)
 Copy the state of the given DDS_DynamicData object into a member of this object. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_long_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Long *array)
 Set the contents of the given array member. The array may contain members of type DDS_Long or DDS_Enum. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_short_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Short *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulong_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_UnsignedLong *array)
 Set the contents of the given array member. The array may contain members of type DDS_UnsignedLong or DDS_Enum. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ushort_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_UnsignedShort *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_float_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Float *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_double_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Double *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_boolean_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Boolean *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_char_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Char *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_octet_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Octet *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longlong_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_LongLong *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulonglong_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_UnsignedLongLong *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longdouble_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_LongDouble *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_wchar_array (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, DDS_UnsignedLong length, const DDS_Wchar *array)
 Set the contents of the given array member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_long_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_LongSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_short_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_ShortSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulong_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_UnsignedLongSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ushort_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_UnsignedShortSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_float_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_FloatSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_double_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_DoubleSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_boolean_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_BooleanSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_char_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_CharSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_octet_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_OctetSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longlong_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_LongLongSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_ulonglong_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_UnsignedLongLongSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_longdouble_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_LongDoubleSeq *value)
 Set the contents of the given sequence member. More...
 
DDS_ReturnCode_t DDS_DynamicData_set_wchar_seq (DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const struct DDS_WcharSeq *value)
 Set the contents of the given sequence member. More...
 
struct DDS_DynamicDataTypeSupportDDS_DynamicDataTypeSupport_new (const DDS_TypeCode *type, const struct DDS_DynamicDataTypeProperty_t *props)
 Construct a new DDS_DynamicDataTypeSupport object. More...
 
void DDS_DynamicDataTypeSupport_delete (struct DDS_DynamicDataTypeSupport *self)
 Delete a DDS_DynamicDataTypeSupport object. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_register_type (struct DDS_DynamicDataTypeSupport *self, DDS_DomainParticipant *participant, const char *type_name)
 Associate the DDS_TypeCode with the given DDS_DomainParticipant under the given logical name. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_unregister_type (struct DDS_DynamicDataTypeSupport *self, DDS_DomainParticipant *participant, const char *type_name)
 Remove the definition of this type from the DDS_DomainParticipant. More...
 
const char * DDS_DynamicDataTypeSupport_get_type_name (const struct DDS_DynamicDataTypeSupport *self)
 Get the default name of this type. More...
 
const struct DDS_TypeCodeDDS_DynamicDataTypeSupport_get_data_type (const struct DDS_DynamicDataTypeSupport *self)
 Get the DDS_TypeCode wrapped by this DDS_DynamicDataTypeSupport. More...
 
DDS_DynamicDataDDS_DynamicDataTypeSupport_create_data (struct DDS_DynamicDataTypeSupport *self)
 Create a new DDS_DynamicData sample initialized with the DDS_TypeCode and properties of this DDS_DynamicDataTypeSupport. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_delete_data (struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
 Finalize and deallocate the DDS_DynamicData sample. More...
 
void DDS_DynamicDataTypeSupport_print_data (const struct DDS_DynamicDataTypeSupport *self, const DDS_DynamicData *a_data)
 Print a string representation of the given sample to the given file. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_copy_data (const struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *dest, const DDS_DynamicData *source)
 Deeply copy the given data samples. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_initialize_data (const struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
 Initialize a DDS_DynamicData object to a valid empty state. More...
 
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_finalize_data (const struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
 Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the pointer. More...
 

Variables

const struct DDS_DynamicDataProperty_t DDS_DYNAMIC_DATA_PROPERTY_DEFAULT
 Sentinel constant indicating default values for DDS_DynamicDataProperty_t. More...
 
const struct DDS_DynamicDataTypeProperty_t DDS_DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT
 Sentinel constant indicating default values for DDS_DynamicDataTypeProperty_t. More...
 
struct DDS_DynamicDataJsonParserProperties_t DDS_DYNAMIC_DATA_JSON_PARSER_PROPERTIES_DEFAULT
 Sentinel constant indicating default values for DDS_DynamicDataProperty_t. More...
 

Detailed Description

<<extension>> The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code generation.

This API allows you to define new data types, modify existing data types, and interact reflectively with samples. To use it, you will take the following steps:

1. Obtain a DDS_TypeCode (see Type Code Support) that defines the type definition you want to use.
A DDS_TypeCode includes a type's kind (DDS_TCKind), name, and members (that is, fields). You can create your own DDS_TypeCode using the DDS_TypeCodeFactory class – see, for example, the DDS_TypeCodeFactory_create_struct_tc method. Alternatively, you can use a remote DDS_TypeCode that you discovered on the network (see Built-in Topics) or one generated by rtiddsgen (see the Code Generator User's Manual).

2. Wrap the DDS_TypeCode in a DDS_DynamicDataTypeSupport object.
See the constructor DDS_DynamicDataTypeSupport_new. This object lets you connect the type definition to a DDS_DomainParticipant and manage data samples (of type DDS_DynamicData).

3. Register the DDS_DynamicDataTypeSupport with one or more domain participants.
See DDS_DynamicDataTypeSupport_register_type. This action associates the data type with a logical name that you can use to create topics. (Starting with this step, working with a dynamically defined data type is almost exactly the same as working with a generated one.)

4. Create a DDS_Topic from the DDS_DomainParticipant.
Use the name under which you registered your data type – see DDS_DomainParticipant_create_topic. This DDS_Topic is what you will use to produce and consume data.

5. Create a DDS_DynamicDataWriter and/or DDS_DynamicDataReader.
These objects will produce and/or consume data (of type DDS_DynamicData) on the DDS_Topic. You can create these objects directly from the DDS_DomainParticipant – see DDS_DomainParticipant_create_datawriter and DDS_DomainParticipant_create_datareader – or by first creating intermediate DDS_Publisher and DDS_Subscriber objects – see DDS_DomainParticipant_create_publisher and DDS_DomainParticipant_create_subscriber.

6. Write and/or read the data of interest.

7. Tear down the objects described above.
You should delete them in the reverse order in which you created them. Note that unregistering your data type with the DDS_DomainParticipant is optional; all types are automatically unregistered when the DDS_DomainParticipant itself is deleted.

Macro Definition Documentation

◆ DDS_DynamicDataProperty_t_INITIALIZER

#define DDS_DynamicDataProperty_t_INITIALIZER

Static initializer for DDS_DynamicDataProperty_t objects.

Use this initializer to ensure that new properties objects don't have uninitialized contents.

#define DDS_DynamicDataProperty_t_INITIALIZER
Static initializer for DDS_DynamicDataProperty_t objects.
Definition: dynamicdata.ifc:210
A collection of attributes used to configure DDS_DynamicData objects.
Definition: dynamicdata.ifc:225
See also
DDS_DynamicDataProperty_t

◆ DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

#define DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

A sentinel value that indicates that no member ID is needed in order to perform some operation.

Most commonly, this constant will be used in "get" operations to indicate that a lookup should be performed based on a name, not on an ID.

See also
DDS_DynamicDataMemberId

◆ DDS_DynamicDataTypeProperty_t_INITIALIZER

#define DDS_DynamicDataTypeProperty_t_INITIALIZER

Static initializer for DDS_DynamicDataTypeProperty_t objects.

Use this initializer to ensure that new properties objects don't have uninitialized contents.

#define DDS_DynamicDataTypeProperty_t_INITIALIZER
Static initializer for DDS_DynamicDataTypeProperty_t objects.
Definition: dynamicdata.ifc:2629
A collection of attributes used to configure DDS_DynamicDataTypeSupport objects.
Definition: dynamicdata.ifc:2638
See also
DDS_DynamicDataTypeProperty_t

Typedef Documentation

◆ DDS_DynamicDataMemberId

An integer that uniquely identifies some member of a data type within that type.

The range of a member ID is the range of an unsigned short integer, except for the value 0, which is reserved.

See also
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicDataWriter

Writes (publishes) objects of type DDS_DynamicData.

Instantiates DDS_DataWriter < DDS_DynamicData > .

See also
DDS_DataWriter
FooDataWriter
DDS_DynamicData

◆ DDS_DynamicDataReader

Reads (subscribes to) objects of type DDS_DynamicData.

Instantiates DDS_DataReader < DDS_DynamicData > .

See also
DDS_DataReader
FooDataReader
DDS_DynamicData

◆ DDS_DynamicDataTypeSupport

typedef struct DDS_DynamicDataTypeSupport DDS_DynamicDataTypeSupport

A factory for registering a dynamically defined type and creating DDS_DynamicData objects.

A DDS_DynamicDataTypeSupport has three roles:

  1. It associates a DDS_TypeCode with policies for managing objects of that type. See the constructor, DDS_DynamicDataTypeSupport_new.
  2. It registers its type under logical names with a DDS_DomainParticipant. See DDS_DynamicDataTypeSupport_register_type.
  3. It creates DDS_DynamicData samples pre-initialized with the type and properties of the type support itself. See DDS_DynamicDataTypeSupport_create_data.

Function Documentation

◆ DDS_DynamicData_initialize()

DDS_Boolean DDS_DynamicData_initialize ( DDS_DynamicData self,
const DDS_TypeCode type,
const struct DDS_DynamicDataProperty_t property 
)

Initialize a DDS_DynamicData object to a valid empty state.

Use the constructor, DDS_DynamicData_new, to allocate a new DDS_DynamicData object on the heap. Use this method to initialize a DDS_DynamicData object that is stored deeply, either within another object or on the stack.

When you're finished with the object, dispose of it with DDS_DynamicData_finalize.

struct DDS_DynamicData sample;
&sample, myType, myProperties);
/* Handle failure... */
/* Do something... */
RTICdrBoolean DDS_Boolean
Defines a Boolean data type, equivalent to IDL/CDR boolean.
Definition: dds_c.1.0/interface/common.ifc:279
void DDS_DynamicData_finalize(DDS_DynamicData *self)
Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the...
DDS_Boolean DDS_DynamicData_initialize(DDS_DynamicData *self, const DDS_TypeCode *type, const struct DDS_DynamicDataProperty_t *property)
Initialize a DDS_DynamicData object to a valid empty state.
A sample of any complex data type, which can be inspected and manipulated reflectively.
Definition: dynamicdata.ifc:433
MT Safety:
UNSAFE.
See also
DDS_DynamicData_finalize
DDS_DynamicData_new

◆ DDS_DynamicData_new()

DDS_DynamicData * DDS_DynamicData_new ( const DDS_TypeCode type,
const struct DDS_DynamicDataProperty_t property 
)

The constructor for new DDS_DynamicData objects.

This method returns a fully initialized object. It is not necessary to subsequently call DDS_DynamicData_initialize.

If initialization fails, this method returns NULL.

The type parameter may be NULL. In that case, this DDS_DynamicData must be bound with DDS_DynamicData_bind_type or DDS_DynamicData_bind_complex_member before it can be used.

If the DDS_TypeCode is not NULL, the newly constructed DDS_DynamicData object will retain a reference to it. It is not safe to delete the DDS_TypeCode until all samples that use it have themselves been deleted.

In most cases, it is not necessary to call this constructor explicitly. Instead, use DDS_DynamicDataTypeSupport_create_data, and the DDS_TypeCode and properties will be specified for you. Using the factory method also ensures that the memory management contract documented above is followed correctly, because the DDS_DynamicDataTypeSupport object maintains the DDS_TypeCode used by the samples it creates.

However you create a DDS_DynamicData object, you must delete it when you are finished with it. If you choose to use this constructor, delete the object with the destructor: DDS_DynamicData_delete.

myType, myProperties);
/* Failure indicated by NULL return result. */
/* Do something... */
void DDS_DynamicData_delete(DDS_DynamicData *self)
Finalize and deallocate this DDS_DynamicData sample.
DDS_DynamicData * DDS_DynamicData_new(const DDS_TypeCode *type, const struct DDS_DynamicDataProperty_t *property)
The constructor for new DDS_DynamicData objects.
Parameters
type<<in>> The type of which the new object will represent an object.
property<<in>> Properties that configure the behavior of the new object. Most users can simply use DDS_DYNAMIC_DATA_PROPERTY_DEFAULT.
See also
DDS_DynamicData_initialize
DDS_DynamicData_delete
DDS_DynamicDataTypeSupport_create_data
Examples
HelloWorldPlugin.c.

◆ DDS_DynamicData_finalize()

void DDS_DynamicData_finalize ( DDS_DynamicData self)

Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the pointer.

Use DDS_DynamicData_delete to clean up a DDS_DynamicData object on the heap. Use this method to clean up a DDS_DynamicData object that is stored deeply, either within another object or on the stack.

MT Safety:
UNSAFE.
See also
DDS_DynamicData_delete
DDS_DynamicData_initialize

◆ DDS_DynamicData_delete()

void DDS_DynamicData_delete ( DDS_DynamicData self)

Finalize and deallocate this DDS_DynamicData sample.

This method fully finalizes the object. It is not necessary to previously call DDS_DynamicData_finalize.

MT Safety:
UNSAFE.
See also
DDS_DynamicData_finalize
DDS_DynamicData_new
Examples
HelloWorldPlugin.c.

◆ DDS_DynamicData_copy()

DDS_ReturnCode_t DDS_DynamicData_copy ( DDS_DynamicData self,
const DDS_DynamicData src 
)

Deeply copy from the given object to this object.

MT Safety:
UNSAFE.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES

◆ DDS_DynamicData_equal()

DDS_Boolean DDS_DynamicData_equal ( const DDS_DynamicData self,
const DDS_DynamicData other 
)

Indicate whether the contents of another DDS_DynamicData sample are the same as those of this one.

This operation compares the data and type of existing members.

MT Safety:
UNSAFE.

◆ DDS_DynamicData_clear_all_members()

DDS_ReturnCode_t DDS_DynamicData_clear_all_members ( DDS_DynamicData self)

Clear the contents of all data members of this object.

MT Safety:
UNSAFE.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_clear_optional_member

◆ DDS_DynamicData_clear_optional_member()

DDS_ReturnCode_t DDS_DynamicData_clear_optional_member ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Clear the contents of a single optional data member of this object.

This method is only applicable to optional members. Members of unions, sequences, and arrays are not considered optional.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member (to look up the member by name), or NULL (to look up the member by its ID).
member_id<<in>> The ID of the member (to look up the member by its ID), or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED (to look up the member by name). See Member Names and IDs.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_clear_all_members

Clear an optional field

◆ DDS_DynamicData_clear_member()

DDS_ReturnCode_t DDS_DynamicData_clear_member ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Clear the contents of a single data member of this object.

This method can be used to clear both optional and non-optional members.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member to clear or NULL to look up the member by its ID.
member_id<<in>> The ID of the member to clear or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_clear_all_members

Clear a field

◆ DDS_DynamicData_print()

DDS_ReturnCode_t DDS_DynamicData_print ( const DDS_DynamicData self,
FILE *  fp,
int  indent 
)

Output a textual representation of this object and its contents to the given file.

This method is equivalent to DDS_DynamicDataTypeSupport_print_data.

Precondition
The type must be an aggregation or collection. That is, its DDS_TCKind must be one of: DDS_TK_STRUCT, DDS_TK_VALUE, DDS_TK_UNION, DDS_TK_SEQUENCE or DDS_TK_ARRAY, otherwise this function fails with DDS_RETCODE_PRECONDITION_NOT_MET.
MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
fp<<in>> The file into which the object should be printed (to print to standard output, provide the stream pointer 'stdout')
indent<<in>> The output of this method will be pretty-printed. This argument indicates the amount of initial indentation of the output.
Returns
One of the Standard Return Codes
See also
DDS_DynamicDataTypeSupport_print_data

◆ DDS_DynamicData_from_cdr_buffer()

DDS_ReturnCode_t DDS_DynamicData_from_cdr_buffer ( DDS_DynamicData self,
const char *  buffer,
unsigned int  length 
)

Deserializes a DynamicData object from a buffer of octets.

This function deserializes a DynamicData object from a CDR buffer of octets.

The content of the buffer generated by the function DDS_DynamicData_to_cdr_buffer can be provided to this function to get the DynamicData object back.

Parameters
self<<in>> Cannot be NULL.
buffer<<in>>. Deserialization buffer.
length<<in>>. Length of the serialized representation of the DynamicData object in the buffer.
Returns
One of the Standard Return Codes
Examples
HelloWorldPlugin.c.

◆ DDS_DynamicData_to_cdr_buffer_ex()

DDS_ReturnCode_t DDS_DynamicData_to_cdr_buffer_ex ( DDS_DynamicData self,
char *  buffer,
unsigned int *  length,
DDS_DataRepresentationId_t  representation 
)

Serializes a DynamicData object into a buffer of octets.

This function serializes a DynamicData object into a buffer of octets using the input data representation. See DDS_DynamicData_to_cdr_buffer for details.

Parameters
self<<in>> Cannot be NULL.
buffer<<out>>. Serialization buffer.
length<<inout>>. Serialization buffer length.
representation<<in>>. Representation used to serialize the data

◆ DDS_DynamicData_to_cdr_buffer()

DDS_ReturnCode_t DDS_DynamicData_to_cdr_buffer ( DDS_DynamicData self,
char *  buffer,
unsigned int *  length 
)

Serializes a DynamicData object into a CDR buffer of octets.

This function serializes a DynamicData object into a buffer of octets, using CDR as the data representation. Calling this function is equivalent to calling DDS_DynamicData_to_cdr_buffer_ex with DDS_AUTO_DATA_REPRESENTATION as the representation.

The input buffer must be large enough to store the serialized representation of the DynamicData object. Otherwise, the function will return an error code.

To determine the minimum size of the input buffer, you must call this method with the buffer set to NULL.

Parameters
self<<in>> Cannot be NULL.
buffer<<out>>. Serialization buffer.
length<<inout>>. When the buffer is set to NULL, after the function executes, length will contain the required size for the serialization buffer. When buffer is not NULL, length must contain the size of the input buffer when the function is invoked. After the function executes, length will be updated to contain the actual size of the serialized content, which may be smaller than the size obtained when buffer is set to NULL.
Returns
One of the Standard Return Codes

◆ DDS_DynamicData_to_string()

DDS_ReturnCode_t DDS_DynamicData_to_string ( DDS_DynamicData self,
char *  str,
DDS_UnsignedLong str_size,
const struct DDS_PrintFormatProperty property 
)

Get a string representation of a DynamicData object.

This function takes a dynamic data sample and creates a string representation of the data.

The input character buffer must be big enough to store the string representation of the sample. Otherwise, the function will return an error.

To determine the minimum size of the input character buffer, the user must call this method with the buffer set to NULL.

If the size of the output string is longer than the size of an unsigned 32-bit integer, this operation will fail with DDS_RETCODE_OUT_OF_RESOURCES.

Parameters
self<<in>> Cannot be NULL.
str<<out>>. Output string representing the dynamic data sample.
str_size<<inout>>. When str is set to NULL, after the function executes, str_size will contain a buffer size big enough to hold the string representation of the data. When str is not NULL, str_size must contain the size of the input buffer when the function is invoked. If the size of the input buffer is too small, after the function executes, str_size will be updated to contain the required size of the string content and the function will return DDS_RETCODE_OUT_OF_RESOURCES.
property<<in>>. Properties describing what the format of the output string should be. Cannot be NULL.
Returns
One of the Standard Return Codes, DDS_RETCODE_OUT_OF_RESOURCES

◆ DDS_DynamicData_get_info()

void DDS_DynamicData_get_info ( const DDS_DynamicData self,
struct DDS_DynamicDataInfo info_out 
)

Fill in the given descriptor with information about this DDS_DynamicData.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
info_out<<out>> The descriptor object whose contents will be overwritten by this operation.

◆ DDS_DynamicData_bind_type()

DDS_ReturnCode_t DDS_DynamicData_bind_type ( DDS_DynamicData self,
const DDS_TypeCode type 
)

If this DDS_DynamicData object is not yet associated with a data type, set that type now to the given DDS_TypeCode.

This advanced operation allows you to reuse a single DDS_DynamicData object with multiple data types.

struct DDS_DynamicData* myData = DDS_DynamicData_new(NULL, myProperties);
DDS_TypeCode* myType = ...;
DDS_DynamicData_bind_type(myData, myType);
/* Do something... */
DDS_ReturnCode_t DDS_DynamicData_unbind_type(DDS_DynamicData *self)
Dissociate this DDS_DynamicData object from any particular data type.
DDS_ReturnCode_t DDS_DynamicData_bind_type(DDS_DynamicData *self, const DDS_TypeCode *type)
If this DDS_DynamicData object is not yet associated with a data type, set that type now to the given...
The definition of a particular data type, which you can use to inspect the name, members,...
Definition: typecode.ifc:442

Note that the DDS_DynamicData object will retain a reference to the DDS_TypeCode object you provide. It is not safe to delete the DDS_TypeCode until after it is unbound.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
type<<in>> The type to associate with this DDS_DynamicData object.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_unbind_type

◆ DDS_DynamicData_unbind_type()

DDS_ReturnCode_t DDS_DynamicData_unbind_type ( DDS_DynamicData self)

Dissociate this DDS_DynamicData object from any particular data type.

This step is necessary before the object can be associated with a new data type.

This operation clears all members as a side effect.

MT Safety:
UNSAFE.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_bind_type
DDS_DynamicData_clear_all_members

◆ DDS_DynamicData_bind_complex_member()

DDS_ReturnCode_t DDS_DynamicData_bind_complex_member ( DDS_DynamicData self,
DDS_DynamicData value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Use another DDS_DynamicData object to provide access to a complex field of this DDS_DynamicData object.

For example, consider the following data types:

struct MyFieldType {
float theFloat;
};
struct MyOuterType {
MyFieldType complexMember;
};

Suppose you have an instance of MyOuterType, and you would like to examine the contents of its member complexMember. To do this, you must bind another DDS_DynamicData object to that member. This operation will bind the type code of the member to the provided DDS_DynamicData object and perform additional initialization.

The following example demonstrates the usage pattern. Note that error handling has been omitted for brevity.

struct DDS_DynamicData* outer = ...;
float theFloatValue = 0;
struct DDS_DynamicData* toBeBound = DDS_DynamicData_new(NULL, myProperties);
outer,
toBeBound,
"complexMember",
toBeBound,
&theFloat,
"theFloat"
DDS_ReturnCode_t DDS_DynamicData_unbind_complex_member(DDS_DynamicData *self, DDS_DynamicData *value)
Tear down the association created by a DDS_DynamicData_bind_complex_member operation,...
DDS_ReturnCode_t DDS_DynamicData_get_float(const DDS_DynamicData *self, DDS_Float *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
Get the value of the given field, which is of type DDS_Float.
#define DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED
A sentinel value that indicates that no member ID is needed in order to perform some operation.
Definition: dynamicdata.ifc:1340
DDS_ReturnCode_t DDS_DynamicData_bind_complex_member(DDS_DynamicData *self, DDS_DynamicData *value_out, const char *member_name, DDS_DynamicDataMemberId member_id)
Use another DDS_DynamicData object to provide access to a complex field of this DDS_DynamicData objec...

This operation is only permitted when the object toBeBound (named as in the example above) is not currently associated with any type, including already being bound to another member. You can see in the example that this object is created directly with the constructer and is not provided with a DDS_TypeCode.

Only a single member of a given DDS_DynamicData object may be bound at one time – however, members of members may be recursively bound to any depth. Furthermore, while the outer object has a bound member, it may only be modified through that bound member. That is, after calling this member, all "set" operations on the outer object will be disabled until DDS_DynamicData_unbind_complex_member has been called. Furthermore, any bound member must be unbound before a sample can be written or deleted.

This method is logically related to DDS_DynamicData_get_complex_member in that both allow you to examine the state of nested objects. They are different in an important way: this method provides a view into an outer object, such that any change made to the inner object will be reflected in the outer. But the DDS_DynamicData_get_complex_member operation copies the state of the nested object; changes to it will not be reflected in the source object.

Note that you can bind to a member of a sequence at an index that is past the current length of that sequence. In that case, this method behaves like a "set" method: it automatically lengthens the sequence (filling in default elements) to allow the bind to take place. See Getters and Setters.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> The object that you wish to bind to the field.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_unbind_complex_member
DDS_DynamicData_get_complex_member

◆ DDS_DynamicData_unbind_complex_member()

DDS_ReturnCode_t DDS_DynamicData_unbind_complex_member ( DDS_DynamicData self,
DDS_DynamicData value 
)

Tear down the association created by a DDS_DynamicData_bind_complex_member operation, committing any changes to the outer object since then.

Some changes to the outer object will not be observable until after you have performed this operation.

If you have called DDS_DynamicData_bind_complex_member on a data sample, you must unbind before writing or deleting the sample.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value<<in>> The same object you passed to DDS_DynamicData_bind_complex_member. This argument is used for error checking purposes.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_bind_complex_member

◆ DDS_DynamicData_get_type()

const DDS_TypeCode * DDS_DynamicData_get_type ( const DDS_DynamicData self)

Get the data type, of which this DDS_DynamicData represents an instance.

MT Safety:
UNSAFE.

◆ DDS_DynamicData_get_type_kind()

DDS_TCKind DDS_DynamicData_get_type_kind ( const DDS_DynamicData self)

Get the kind of this object's data type.

This is a convenience method. It's equivalent to calling DDS_DynamicData_get_type followed by DDS_TypeCode_kind.

MT Safety:
UNSAFE.

◆ DDS_DynamicData_get_member_count()

DDS_UnsignedLong DDS_DynamicData_get_member_count ( const DDS_DynamicData self)

Get the number of members in the type.

For objects of type kind DDS_TK_ARRAY or DDS_TK_SEQUENCE, this method returns the number of elements in the collection.

For objects of type kind DDS_TK_STRUCT or DDS_TK_VALUE, it returns the number of fields in the type.

MT Safety:
UNSAFE.
See also
DDS_DynamicData_get_member_info_by_index

◆ DDS_DynamicData_member_exists()

DDS_Boolean DDS_DynamicData_member_exists ( const DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Indicates whether a member exists in this sample.

You only need to specify the name OR the ID (not both).

If the member doesn't exist in the type, this function returns false. In all other cases, it provides the same result as DDS_DynamicDataMemberInfo::member_exists, which is retrieved with idref_DynamicDataMember_get_member_info.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
See also
DDS_DynamicData_member_exists_in_type
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicData_member_exists_in_type()

DDS_Boolean DDS_DynamicData_member_exists_in_type ( const DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Indicates whether a member of a particular name/ID exists in this data sample's type.

You only need to specify the name OR the ID (not both).

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
See also
DDS_DynamicData_member_exists
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicData_get_member_info()

DDS_ReturnCode_t DDS_DynamicData_get_member_info ( const DDS_DynamicData self,
struct DDS_DynamicDataMemberInfo info,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Fill in the given descriptor with information about the identified member of this DDS_DynamicData sample.

This operation is valid for objects of DDS_TCKind DDS_TK_ARRAY, DDS_TK_SEQUENCE, DDS_TK_STRUCT, DDS_TK_UNION, and DDS_TK_VALUE.

MT Safety:
UNSAFE.

When this sample represents a struct, a value type, or a union:

When this sample represents a sequence and member_id is the 1-based element index:

When this sample represents an array, this function either fails with with DDS_RETCODE_NO_DATA when the index is out of bounds or else returns an object with DDS_DynamicDataMemberInfo::member_exists set to true.

Parameters
self<<in>> Cannot be NULL.
info<<out>> The descriptor object whose contents will be overwritten by this operations.
member_name<<in>> The name of the member for which to get the info or NULL to look up the member by its ID. Only one of the name and the ID may be unspecified.
member_id<<in>> The ID of the member for which to get the info, or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_get_member_info_by_index
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicData_get_member_info_by_index()

DDS_ReturnCode_t DDS_DynamicData_get_member_info_by_index ( const DDS_DynamicData self,
struct DDS_DynamicDataMemberInfo info,
DDS_UnsignedLong  index 
)

Fill in the given descriptor with information about the identified member of this DDS_DynamicData sample.

This operation is valid for objects of DDS_TCKind DDS_TK_ARRAY, DDS_TK_SEQUENCE, DDS_TK_STRUCT, DDS_TK_VALUE, and DDS_TK_UNION.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
info<<out>> The descriptor object whose contents will be overwritten by this operations.
index<<in>> The zero-base of the member for which to get the info.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_get_member_info
DDS_DynamicData_get_member_count
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicData_get_member_type()

DDS_ReturnCode_t DDS_DynamicData_get_member_type ( const DDS_DynamicData self,
const DDS_TypeCode **  type_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the type of the given member of this sample.

The member can be looked up either by name or by ID.

This operation is valid for objects of DDS_TCKind DDS_TK_ARRAY, DDS_TK_SEQUENCE, DDS_TK_STRUCT, and DDS_TK_VALUE. For type kinds DDS_TK_ARRAY and DDS_TK_SEQUENCE, the index into the collection is taken to be one less than the ID, if specified. If this index is valid, this operation will return the content type of this collection.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
type_out<<out>> If this method returned success, this argument refers to the found member's type. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes
See also
DDS_DynamicData_get_member_info
DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED

◆ DDS_DynamicData_is_member_key()

DDS_ReturnCode_t DDS_DynamicData_is_member_key ( const DDS_DynamicData self,
DDS_Boolean is_key_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Indicates whether a given member forms part of the key of this sample's data type.

This operation is only valid for samples of types of kind DDS_TK_STRUCT or DDS_TK_VALUE.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
is_key_out<<out>> If this method returned success, this argument indicates whether the indicated member is part of the key. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes

◆ DDS_DynamicData_get_long()

DDS_ReturnCode_t DDS_DynamicData_get_long ( const DDS_DynamicData self,
DDS_Long value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Long or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, or DDS_Enum).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_long

◆ DDS_DynamicData_get_short()

DDS_ReturnCode_t DDS_DynamicData_get_short ( const DDS_DynamicData self,
DDS_Short value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Short or another type implicitly convertible to it (DDS_Octet or DDS_Char).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_short

◆ DDS_DynamicData_get_ulong()

DDS_ReturnCode_t DDS_DynamicData_get_ulong ( const DDS_DynamicData self,
DDS_UnsignedLong value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_UnsignedLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, or DDS_Enum).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ulong

◆ DDS_DynamicData_get_ushort()

DDS_ReturnCode_t DDS_DynamicData_get_ushort ( const DDS_DynamicData self,
DDS_UnsignedShort value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_UnsignedShort or another type implicitly convertible to it (DDS_Octet or DDS_Char).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ushort

◆ DDS_DynamicData_get_float()

DDS_ReturnCode_t DDS_DynamicData_get_float ( const DDS_DynamicData self,
DDS_Float value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Float.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_float

◆ DDS_DynamicData_get_double()

DDS_ReturnCode_t DDS_DynamicData_get_double ( const DDS_DynamicData self,
DDS_Double value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Double or another type implicitly convertible to it (DDS_Float).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_double

◆ DDS_DynamicData_get_boolean()

DDS_ReturnCode_t DDS_DynamicData_get_boolean ( const DDS_DynamicData self,
DDS_Boolean value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Boolean.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_boolean

◆ DDS_DynamicData_get_char()

DDS_ReturnCode_t DDS_DynamicData_get_char ( const DDS_DynamicData self,
DDS_Char value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Char.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_char

◆ DDS_DynamicData_get_octet()

DDS_ReturnCode_t DDS_DynamicData_get_octet ( const DDS_DynamicData self,
DDS_Octet value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Octet.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_octet

◆ DDS_DynamicData_get_longlong()

DDS_ReturnCode_t DDS_DynamicData_get_longlong ( const DDS_DynamicData self,
DDS_LongLong value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_LongLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, DDS_Long, DDS_UnsignedLong, or DDS_Enum).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_longlong

◆ DDS_DynamicData_get_ulonglong()

DDS_ReturnCode_t DDS_DynamicData_get_ulonglong ( const DDS_DynamicData self,
DDS_UnsignedLongLong value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_UnsignedLongLong or another type implicitly convertible to it (DDS_Octet, DDS_Char, DDS_Short, DDS_UnsignedShort, DDS_Long, DDS_UnsignedLong, or DDS_Enum).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ulonglong

◆ DDS_DynamicData_get_longdouble()

DDS_ReturnCode_t DDS_DynamicData_get_longdouble ( const DDS_DynamicData self,
DDS_LongDouble value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_LongDouble or another type implicitly convertible to it (DDS_Float or DDS_Double).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_longdouble

◆ DDS_DynamicData_get_wchar()

DDS_ReturnCode_t DDS_DynamicData_get_wchar ( const DDS_DynamicData self,
DDS_Wchar value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Wchar or another type implicitly convertible to it (DDS_Char).

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> If this method returned success, this argument will contain the value of the indicated member. It cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_wchar

◆ DDS_DynamicData_get_string()

DDS_ReturnCode_t DDS_DynamicData_get_string ( const DDS_DynamicData self,
char **  value,
DDS_UnsignedLong size,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type char*.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value<<out>> The string into which the middleware should copy the string member. The allocated size of this string is indicated by size argument. If the size is sufficient to hold the contents of the member, they will be copied into this string. If value is a pointer to NULL, the middleware will allocate a new string for you of sufficient length; it will be your responsibility to free that string. If the size is insufficient but greater than zero, the middleware will not free your string; instead, this operation will fail and size will contain the minimum required size.
size<<inout>> As an input argument, the allocated size of the string. As an output argument, the actual size of the contents.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_String_alloc
DDS_String_free
DDS_DynamicData_set_string

◆ DDS_DynamicData_get_wstring()

DDS_ReturnCode_t DDS_DynamicData_get_wstring ( const DDS_DynamicData self,
DDS_Wchar **  value,
DDS_UnsignedLong size,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get the value of the given field, which is of type DDS_Wchar*.

The member may be specified by name or by ID.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value<<out>> The string into which the middleware should copy the string member. The allocated size of this string is indicated by size argument. If the size is sufficient to hold the contents of the member, they will be copied into this string. If value is a pointer to NULL, the middleware will allocate a new string for you of sufficient length; it will be your responsibility to free that string. If the size is insufficient but greater than zero, the middleware will not free your string; instead, this operation will fail and size will contain the minimum required size.
size<<inout>> As an input argument, the allocated size of the string. As an output argument, the actual size of the contents.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_String_alloc
DDS_String_free
DDS_DynamicData_set_wstring

◆ DDS_DynamicData_get_complex_member()

DDS_ReturnCode_t DDS_DynamicData_get_complex_member ( const DDS_DynamicData self,
DDS_DynamicData value_out,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the value of the given field, which is of some composed type.

The member may be of type kind DDS_TK_ARRAY, DDS_TK_SEQUENCE, DDS_TK_STRUCT, DDS_TK_VALUE, or DDS_TK_UNION. It may be specified by name or by ID.

This method is logically related to DDS_DynamicData_bind_complex_member in that both allow you to examine the state of nested objects. They are different in an important way: this method provides a copy of the data; changes to it will not be reflected in the source object.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
value_out<<out>> The DDS_DynamicData sample whose contents will be overwritten by this operation. This object must not be a bound member of another DDS_DynamicData sample.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_complex_member
DDS_DynamicData_bind_complex_member

◆ DDS_DynamicData_get_long_array()

DDS_ReturnCode_t DDS_DynamicData_get_long_array ( const DDS_DynamicData self,
DDS_Long array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member. The array may contain members of type DDS_Long or DDS_Enum.

This method will perform an automatic conversion from DDS_LongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_long_array
DDS_DynamicData_get_long_seq

◆ DDS_DynamicData_get_short_array()

DDS_ReturnCode_t DDS_DynamicData_get_short_array ( const DDS_DynamicData self,
DDS_Short array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_ShortSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_short_array
DDS_DynamicData_get_short_seq

◆ DDS_DynamicData_get_ulong_array()

DDS_ReturnCode_t DDS_DynamicData_get_ulong_array ( const DDS_DynamicData self,
DDS_UnsignedLong array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member. The array may contain members of type DDS_UnsignedLong or DDS_Enum.

This method will perform an automatic conversion from DDS_UnsignedLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ulong_array
DDS_DynamicData_get_ulong_seq

◆ DDS_DynamicData_get_ushort_array()

DDS_ReturnCode_t DDS_DynamicData_get_ushort_array ( const DDS_DynamicData self,
DDS_UnsignedShort array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_UnsignedShortSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ushort_array
DDS_DynamicData_get_ushort_seq

◆ DDS_DynamicData_get_float_array()

DDS_ReturnCode_t DDS_DynamicData_get_float_array ( const DDS_DynamicData self,
DDS_Float array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_FloatSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_float_array
DDS_DynamicData_get_float_seq

◆ DDS_DynamicData_get_double_array()

DDS_ReturnCode_t DDS_DynamicData_get_double_array ( const DDS_DynamicData self,
DDS_Double array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_DoubleSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_double_array
DDS_DynamicData_get_double_seq

◆ DDS_DynamicData_get_boolean_array()

DDS_ReturnCode_t DDS_DynamicData_get_boolean_array ( const DDS_DynamicData self,
DDS_Boolean array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_BooleanSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_boolean_array
DDS_DynamicData_get_boolean_seq

◆ DDS_DynamicData_get_char_array()

DDS_ReturnCode_t DDS_DynamicData_get_char_array ( const DDS_DynamicData self,
DDS_Char array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_CharSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_char_array
DDS_DynamicData_get_char_seq

◆ DDS_DynamicData_get_octet_array()

DDS_ReturnCode_t DDS_DynamicData_get_octet_array ( const DDS_DynamicData self,
DDS_Octet array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_OctetSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_octet_array
DDS_DynamicData_get_octet_seq

◆ DDS_DynamicData_get_longlong_array()

DDS_ReturnCode_t DDS_DynamicData_get_longlong_array ( const DDS_DynamicData self,
DDS_LongLong array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_LongLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_longlong_array
DDS_DynamicData_get_longlong_seq

◆ DDS_DynamicData_get_ulonglong_array()

DDS_ReturnCode_t DDS_DynamicData_get_ulonglong_array ( const DDS_DynamicData self,
DDS_UnsignedLongLong array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_UnsignedLongLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_ulonglong_array
DDS_DynamicData_get_ulonglong_seq

◆ DDS_DynamicData_get_longdouble_array()

DDS_ReturnCode_t DDS_DynamicData_get_longdouble_array ( const DDS_DynamicData self,
DDS_LongDouble array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_LongDoubleSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_longdouble_array
DDS_DynamicData_get_longdouble_seq

◆ DDS_DynamicData_get_wchar_array()

DDS_ReturnCode_t DDS_DynamicData_get_wchar_array ( const DDS_DynamicData self,
DDS_Wchar array,
DDS_UnsignedLong length,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given array member.

This method will perform an automatic conversion from DDS_WcharSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
array<<out>> An already-allocated array, into which the elements will be copied.
length<<inout>> As an input, the allocated length of array. As an output, the number of elements that were copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA
See also
DDS_DynamicData_set_wchar_array
DDS_DynamicData_get_wchar_seq

◆ DDS_DynamicData_get_long_seq()

DDS_ReturnCode_t DDS_DynamicData_get_long_seq ( const DDS_DynamicData self,
struct DDS_LongSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Long.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_long_seq
DDS_DynamicData_get_long_array

◆ DDS_DynamicData_get_short_seq()

DDS_ReturnCode_t DDS_DynamicData_get_short_seq ( const DDS_DynamicData self,
struct DDS_ShortSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Short.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_short_seq
DDS_DynamicData_get_short_array

◆ DDS_DynamicData_get_ulong_seq()

DDS_ReturnCode_t DDS_DynamicData_get_ulong_seq ( const DDS_DynamicData self,
struct DDS_UnsignedLongSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_UnsignedLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_ulong_seq
DDS_DynamicData_get_ulong_array

◆ DDS_DynamicData_get_ushort_seq()

DDS_ReturnCode_t DDS_DynamicData_get_ushort_seq ( const DDS_DynamicData self,
struct DDS_UnsignedShortSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_UnsignedShort.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_ushort_seq
DDS_DynamicData_get_ushort_array

◆ DDS_DynamicData_get_float_seq()

DDS_ReturnCode_t DDS_DynamicData_get_float_seq ( const DDS_DynamicData self,
struct DDS_FloatSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Float.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_float_seq
DDS_DynamicData_get_float_array

◆ DDS_DynamicData_get_double_seq()

DDS_ReturnCode_t DDS_DynamicData_get_double_seq ( const DDS_DynamicData self,
struct DDS_DoubleSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Double.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_double_seq
DDS_DynamicData_get_double_array

◆ DDS_DynamicData_get_boolean_seq()

DDS_ReturnCode_t DDS_DynamicData_get_boolean_seq ( const DDS_DynamicData self,
struct DDS_BooleanSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Boolean.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_boolean_seq
DDS_DynamicData_get_boolean_array

◆ DDS_DynamicData_get_char_seq()

DDS_ReturnCode_t DDS_DynamicData_get_char_seq ( const DDS_DynamicData self,
struct DDS_CharSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Char.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_char_seq
DDS_DynamicData_get_char_array

◆ DDS_DynamicData_get_octet_seq()

DDS_ReturnCode_t DDS_DynamicData_get_octet_seq ( const DDS_DynamicData self,
struct DDS_OctetSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Octet.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_octet_seq
DDS_DynamicData_get_octet_array

◆ DDS_DynamicData_get_longlong_seq()

DDS_ReturnCode_t DDS_DynamicData_get_longlong_seq ( const DDS_DynamicData self,
struct DDS_LongLongSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_LongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_longlong_seq
DDS_DynamicData_get_longlong_array

◆ DDS_DynamicData_get_ulonglong_seq()

DDS_ReturnCode_t DDS_DynamicData_get_ulonglong_seq ( const DDS_DynamicData self,
struct DDS_UnsignedLongLongSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_UnsignedLongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_ulonglong_seq
DDS_DynamicData_get_ulonglong_array

◆ DDS_DynamicData_get_longdouble_seq()

DDS_ReturnCode_t DDS_DynamicData_get_longdouble_seq ( const DDS_DynamicData self,
struct DDS_LongDoubleSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_LongDouble.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_longdouble_seq
DDS_DynamicData_get_longdouble_array

◆ DDS_DynamicData_get_wchar_seq()

DDS_ReturnCode_t DDS_DynamicData_get_wchar_seq ( const DDS_DynamicData self,
struct DDS_WcharSeq seq,
const char *  member_name,
DDS_DynamicDataMemberId  member_id 
)

Get a copy of the given sequence member.

The provided sequence will be automatically resized as necessary.

This method will perform an automatic conversion from an array of DDS_Wchar.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
seq<<out>> A sequence, into which the elements will be copied.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
Returns
One of the Standard Return Codes. If the member is optional and not set, this operation will return DDS_RETCODE_NO_DATA. This operation may also return DDS_RETCODE_OUT_OF_RESOURCES.
See also
DDS_DynamicData_set_wchar_seq
DDS_DynamicData_get_wchar_array

◆ DDS_DynamicData_set_long()

DDS_ReturnCode_t DDS_DynamicData_set_long ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Long  value 
)

Set the value of the given field, which is of type DDS_Long.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_long

◆ DDS_DynamicData_set_short()

DDS_ReturnCode_t DDS_DynamicData_set_short ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Short  value 
)

Set the value of the given field, which is of type DDS_Short.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_short

◆ DDS_DynamicData_set_ulong()

DDS_ReturnCode_t DDS_DynamicData_set_ulong ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  value 
)

Set the value of the given field, which is of type DDS_UnsignedLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulong

◆ DDS_DynamicData_set_ushort()

DDS_ReturnCode_t DDS_DynamicData_set_ushort ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedShort  value 
)

Set the value of the given field, which is of type DDS_UnsignedShort.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ushort

◆ DDS_DynamicData_set_float()

DDS_ReturnCode_t DDS_DynamicData_set_float ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Float  value 
)

Set the value of the given field, which is of type DDS_Float.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_float

◆ DDS_DynamicData_set_double()

DDS_ReturnCode_t DDS_DynamicData_set_double ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Double  value 
)

Set the value of the given field, which is of type DDS_Double.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_double

◆ DDS_DynamicData_set_boolean()

DDS_ReturnCode_t DDS_DynamicData_set_boolean ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Boolean  value 
)

Set the value of the given field, which is of type DDS_Boolean.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_boolean

◆ DDS_DynamicData_set_char()

DDS_ReturnCode_t DDS_DynamicData_set_char ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Char  value 
)

Set the value of the given field, which is of type DDS_Char.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_char

◆ DDS_DynamicData_set_octet()

DDS_ReturnCode_t DDS_DynamicData_set_octet ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Octet  value 
)

Set the value of the given field, which is of type DDS_Octet.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_octet

◆ DDS_DynamicData_set_longlong()

DDS_ReturnCode_t DDS_DynamicData_set_longlong ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_LongLong  value 
)

Set the value of the given field, which is of type DDS_LongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longlong

◆ DDS_DynamicData_set_ulonglong()

DDS_ReturnCode_t DDS_DynamicData_set_ulonglong ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLongLong  value 
)

Set the value of the given field, which is of type DDS_UnsignedLongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulonglong

◆ DDS_DynamicData_set_longdouble()

DDS_ReturnCode_t DDS_DynamicData_set_longdouble ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_LongDouble  value 
)

Set the value of the given field, which is of type DDS_LongDouble.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longdouble

◆ DDS_DynamicData_set_wchar()

DDS_ReturnCode_t DDS_DynamicData_set_wchar ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_Wchar  value 
)

Set the value of the given field, which is of type DDS_Wchar.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_char

◆ DDS_DynamicData_set_string()

DDS_ReturnCode_t DDS_DynamicData_set_string ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const char *  value 
)

Set the value of the given field of type char*.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_string

◆ DDS_DynamicData_set_wstring()

DDS_ReturnCode_t DDS_DynamicData_set_wstring ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const DDS_Wchar value 
)

Set the value of the given field of type DDS_Wchar*.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The value to which to set the member.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_wstring

◆ DDS_DynamicData_set_complex_member()

DDS_ReturnCode_t DDS_DynamicData_set_complex_member ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const DDS_DynamicData value 
)

Copy the state of the given DDS_DynamicData object into a member of this object.

The member may be of type kind DDS_TK_ARRAY, DDS_TK_SEQUENCE, DDS_TK_STRUCT, DDS_TK_VALUE, or DDS_TK_UNION. It may be specified by name or by ID.

Example: Copying Data

This method can be used with DDS_DynamicData_bind_complex_member to copy from one DDS_DynamicData object to another efficiently. Suppose the following data structure:

struct Bar {
short theShort;
};
struct Foo {
Bar theBar;
};
A representative user-defined data type.
Definition: data.ifc:112

Suppose we have two instances of Foo, foo_dst and foo_src, and we want to replace the contents of foo_dst.theBar with the contents of foo_src.theBar. The following example shows how to do this (error handling has been omitted for the sake of brevity).

struct DDS_DynamicData* foo_dst = ...;
struct DDS_DynamicData* foo_src = ...;
struct DDS_DynamicData* bar = DDS_DynamicData_new(NULL, myProperties);
/* Point to the source of the copy: */
foo_src,
bar,
"theBar",
/* Just one copy: */
foo_dst,
"theBar",
bar);
/* Tear down: */
free(bar);
DDS_ReturnCode_t DDS_DynamicData_set_complex_member(DDS_DynamicData *self, const char *member_name, DDS_DynamicDataMemberId member_id, const DDS_DynamicData *value)
Copy the state of the given DDS_DynamicData object into a member of this object.
MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> The source DDS_DynamicData object whose contents will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_complex_member
DDS_DynamicData_bind_complex_member

◆ DDS_DynamicData_set_long_array()

DDS_ReturnCode_t DDS_DynamicData_set_long_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Long array 
)

Set the contents of the given array member. The array may contain members of type DDS_Long or DDS_Enum.

This method will perform an automatic conversion to DDS_LongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_long_array
DDS_DynamicData_set_long_seq

◆ DDS_DynamicData_set_short_array()

DDS_ReturnCode_t DDS_DynamicData_set_short_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Short array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_ShortSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_short_array
DDS_DynamicData_set_short_seq

◆ DDS_DynamicData_set_ulong_array()

DDS_ReturnCode_t DDS_DynamicData_set_ulong_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_UnsignedLong array 
)

Set the contents of the given array member. The array may contain members of type DDS_UnsignedLong or DDS_Enum.

This method will perform an automatic conversion to DDS_UnsignedLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulong_array
DDS_DynamicData_set_ulong_seq

◆ DDS_DynamicData_set_ushort_array()

DDS_ReturnCode_t DDS_DynamicData_set_ushort_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_UnsignedShort array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_UnsignedShortSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ushort_array
DDS_DynamicData_set_ushort_seq

◆ DDS_DynamicData_set_float_array()

DDS_ReturnCode_t DDS_DynamicData_set_float_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Float array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_FloatSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_float_array
DDS_DynamicData_set_float_seq

◆ DDS_DynamicData_set_double_array()

DDS_ReturnCode_t DDS_DynamicData_set_double_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Double array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_DoubleSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_double_array
DDS_DynamicData_set_double_seq

◆ DDS_DynamicData_set_boolean_array()

DDS_ReturnCode_t DDS_DynamicData_set_boolean_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Boolean array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_BooleanSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_boolean_array
DDS_DynamicData_set_boolean_seq

◆ DDS_DynamicData_set_char_array()

DDS_ReturnCode_t DDS_DynamicData_set_char_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Char array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_CharSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_char_array
DDS_DynamicData_set_char_seq

◆ DDS_DynamicData_set_octet_array()

DDS_ReturnCode_t DDS_DynamicData_set_octet_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Octet array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_OctetSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_octet_array
DDS_DynamicData_set_octet_seq

◆ DDS_DynamicData_set_longlong_array()

DDS_ReturnCode_t DDS_DynamicData_set_longlong_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_LongLong array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_LongLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longlong_array
DDS_DynamicData_set_longlong_seq

◆ DDS_DynamicData_set_ulonglong_array()

DDS_ReturnCode_t DDS_DynamicData_set_ulonglong_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_UnsignedLongLong array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_UnsignedLongLongSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulonglong_array
DDS_DynamicData_set_ulonglong_seq

◆ DDS_DynamicData_set_longdouble_array()

DDS_ReturnCode_t DDS_DynamicData_set_longdouble_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_LongDouble array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_LongDoubleSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longdouble_array
DDS_DynamicData_set_longdouble_seq

◆ DDS_DynamicData_set_wchar_array()

DDS_ReturnCode_t DDS_DynamicData_set_wchar_array ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
DDS_UnsignedLong  length,
const DDS_Wchar array 
)

Set the contents of the given array member.

This method will perform an automatic conversion to DDS_WcharSeq.

If the destination array is insufficiently long to store the data, this operation will fail without copying anything.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
length<<in>> The length of array.
array<<in>> The elements to copy.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_wchar_array
DDS_DynamicData_set_wchar_seq

◆ DDS_DynamicData_set_long_seq()

DDS_ReturnCode_t DDS_DynamicData_set_long_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_LongSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Long.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_long_seq
DDS_DynamicData_set_long_array

◆ DDS_DynamicData_set_short_seq()

DDS_ReturnCode_t DDS_DynamicData_set_short_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_ShortSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Short.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_short_seq
DDS_DynamicData_set_short_array

◆ DDS_DynamicData_set_ulong_seq()

DDS_ReturnCode_t DDS_DynamicData_set_ulong_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_UnsignedLongSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_UnsignedLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulong_seq
DDS_DynamicData_set_ulong_array

◆ DDS_DynamicData_set_ushort_seq()

DDS_ReturnCode_t DDS_DynamicData_set_ushort_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_UnsignedShortSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_UnsignedShort.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ushort_seq
DDS_DynamicData_set_ushort_array

◆ DDS_DynamicData_set_float_seq()

DDS_ReturnCode_t DDS_DynamicData_set_float_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_FloatSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Float.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_float_seq
DDS_DynamicData_set_float_array

◆ DDS_DynamicData_set_double_seq()

DDS_ReturnCode_t DDS_DynamicData_set_double_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_DoubleSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Double.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_double_seq
DDS_DynamicData_set_double_array

◆ DDS_DynamicData_set_boolean_seq()

DDS_ReturnCode_t DDS_DynamicData_set_boolean_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_BooleanSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Boolean.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_boolean_seq
DDS_DynamicData_set_boolean_array

◆ DDS_DynamicData_set_char_seq()

DDS_ReturnCode_t DDS_DynamicData_set_char_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_CharSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Char.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_char_seq
DDS_DynamicData_set_char_array

◆ DDS_DynamicData_set_octet_seq()

DDS_ReturnCode_t DDS_DynamicData_set_octet_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_OctetSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Octet.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_octet_seq
DDS_DynamicData_set_octet_array

◆ DDS_DynamicData_set_longlong_seq()

DDS_ReturnCode_t DDS_DynamicData_set_longlong_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_LongLongSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_LongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longlong_seq
DDS_DynamicData_set_longlong_array

◆ DDS_DynamicData_set_ulonglong_seq()

DDS_ReturnCode_t DDS_DynamicData_set_ulonglong_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_UnsignedLongLongSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_UnsignedLongLong.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_ulonglong_seq
DDS_DynamicData_set_ulonglong_array

◆ DDS_DynamicData_set_longdouble_seq()

DDS_ReturnCode_t DDS_DynamicData_set_longdouble_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_LongDoubleSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_LongDouble.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_longdouble_seq
DDS_DynamicData_set_longdouble_array

◆ DDS_DynamicData_set_wchar_seq()

DDS_ReturnCode_t DDS_DynamicData_set_wchar_seq ( DDS_DynamicData self,
const char *  member_name,
DDS_DynamicDataMemberId  member_id,
const struct DDS_WcharSeq value 
)

Set the contents of the given sequence member.

This method will perform an automatic conversion to an array of DDS_Wchar.

MT Safety:
UNSAFE.
Parameters
self<<in>> Cannot be NULL.
member_name<<in>> The name of the member or NULL to look up the member by its ID.
member_id<<in>> The ID of the member or DDS_DYNAMIC_DATA_MEMBER_ID_UNSPECIFIED to look up by name. See Member Names and IDs.
value<<in>> A sequence, from which the elements will be copied.
Returns
One of the Standard Return Codes or DDS_RETCODE_OUT_OF_RESOURCES
See also
DDS_DynamicData_get_wchar_seq
DDS_DynamicData_set_wchar_array

◆ DDS_DynamicDataTypeSupport_new()

struct DDS_DynamicDataTypeSupport * DDS_DynamicDataTypeSupport_new ( const DDS_TypeCode type,
const struct DDS_DynamicDataTypeProperty_t props 
)

Construct a new DDS_DynamicDataTypeSupport object.

This step is usually followed by type registration.

The DDS_TypeCode object that is passed to this constructor is cloned and stored internally; no pointer is retained to the object passed in. It is therefore safe to delete the DDS_TypeCode after this method returns.

Parameters
typeThe DDS_TypeCode that describes the members of this type. The new object will contain a copy of this DDS_TypeCode; you may delete the argument after this constructor returns.
propsPolicies that describe how to manage the memory and other properties of the data samples created by this factory. In most cases, the default values will be appropriate; see DDS_DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT.
See also
DDS_DynamicDataTypeSupport_register_type
DDS_DynamicDataTypeSupport_delete
Returns
One of the Standard Return Codes

◆ DDS_DynamicDataTypeSupport_delete()

void DDS_DynamicDataTypeSupport_delete ( struct DDS_DynamicDataTypeSupport self)

Delete a DDS_DynamicDataTypeSupport object.

A DDS_DynamicDataTypeSupport cannot be deleted while it is still in use. For each DDS_DomainParticipant with which the DDS_DynamicDataTypeSupport is registered, either the type must be unregistered or the participant must be deleted.

See also
DDS_DynamicDataTypeSupport_unregister_type
DDS_DynamicDataTypeSupport_new

◆ DDS_DynamicDataTypeSupport_register_type()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_register_type ( struct DDS_DynamicDataTypeSupport self,
DDS_DomainParticipant participant,
const char *  type_name 
)

Associate the DDS_TypeCode with the given DDS_DomainParticipant under the given logical name.

Once a type has been registered, it can be referenced by name when creating a topic. Statically and dynamically defined types behave the same way in this respect.

If the type cannot be registered, this function will fail with DDS_RETCODE_PRECONDITION_NOT_MET or DDS_RETCODE_OUT_OF_RESOURCES.

See also
FooTypeSupport_register_type
DDS_DomainParticipant_create_topic
DDS_DynamicDataTypeSupport_unregister_type

◆ DDS_DynamicDataTypeSupport_unregister_type()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_unregister_type ( struct DDS_DynamicDataTypeSupport self,
DDS_DomainParticipant participant,
const char *  type_name 
)

Remove the definition of this type from the DDS_DomainParticipant.

This operation is optional; all types are automatically unregistered when a DDS_DomainParticipant is deleted. Most application will not need to manually unregister types.

A type cannot be unregistered while it is still in use; that is, while any DDS_Topic is still referring to it.

If the type cannot be unregistered, this function will fail with DDS_RETCODE_ERROR or DDS_RETCODE_BAD_PARAMETER.

See also
FooTypeSupport_unregister_type
DDS_DynamicDataTypeSupport_register_type

◆ DDS_DynamicDataTypeSupport_get_type_name()

const char * DDS_DynamicDataTypeSupport_get_type_name ( const struct DDS_DynamicDataTypeSupport self)

Get the default name of this type.

The DDS_TypeCode that is wrapped by this DDS_DynamicDataTypeSupport includes a name; this operation returns that name.

This operation is useful when registering a type, because in most cases it is not necessary for the physical and logical names of the type to be different.

myTypeSupport,
myParticipant,
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_register_type(struct DDS_DynamicDataTypeSupport *self, DDS_DomainParticipant *participant, const char *type_name)
Associate the DDS_TypeCode with the given DDS_DomainParticipant under the given logical name.
const char * DDS_DynamicDataTypeSupport_get_type_name(const struct DDS_DynamicDataTypeSupport *self)
Get the default name of this type.
See also
FooTypeSupport_get_type_name

◆ DDS_DynamicDataTypeSupport_get_data_type()

const struct DDS_TypeCode * DDS_DynamicDataTypeSupport_get_data_type ( const struct DDS_DynamicDataTypeSupport self)

Get the DDS_TypeCode wrapped by this DDS_DynamicDataTypeSupport.

◆ DDS_DynamicDataTypeSupport_create_data()

DDS_DynamicData * DDS_DynamicDataTypeSupport_create_data ( struct DDS_DynamicDataTypeSupport self)

Create a new DDS_DynamicData sample initialized with the DDS_TypeCode and properties of this DDS_DynamicDataTypeSupport.

This method returns a fully initialized object. It is not necessary to subsequently call DDS_DynamicDataTypeSupport_initialize_data.

If initialization fails, this method returns NULL.

You must delete your DDS_DynamicData object when you are finished with it.

myTypeSupport);
/* Failure indicated by NULL return result. */
/* Do something... */
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_delete_data(struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
Finalize and deallocate the DDS_DynamicData sample.
DDS_DynamicData * DDS_DynamicDataTypeSupport_create_data(struct DDS_DynamicDataTypeSupport *self)
Create a new DDS_DynamicData sample initialized with the DDS_TypeCode and properties of this DDS_Dyna...
See also
DDS_DynamicDataTypeSupport_initialize_data
DDS_DynamicDataTypeSupport_delete_data
FooTypeSupport_create_data
DDS_DynamicData_new
DDS_DynamicDataTypeProperty_t::data

◆ DDS_DynamicDataTypeSupport_delete_data()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_delete_data ( struct DDS_DynamicDataTypeSupport self,
DDS_DynamicData a_data 
)

Finalize and deallocate the DDS_DynamicData sample.

This method fully finalizes the object. It is not necessary to previously call DDS_DynamicDataTypeSupport_finalize_data.

See also
DDS_DynamicDataTypeSupport_finalize_data
FooTypeSupport_delete_data
DDS_DynamicDataTypeSupport_create_data

◆ DDS_DynamicDataTypeSupport_print_data()

void DDS_DynamicDataTypeSupport_print_data ( const struct DDS_DynamicDataTypeSupport self,
const DDS_DynamicData a_data 
)

Print a string representation of the given sample to the given file.

This method is equivalent to DDS_DynamicData_print.

See also
DDS_DynamicData_print

◆ DDS_DynamicDataTypeSupport_copy_data()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_copy_data ( const struct DDS_DynamicDataTypeSupport self,
DDS_DynamicData dest,
const DDS_DynamicData source 
)

Deeply copy the given data samples.

◆ DDS_DynamicDataTypeSupport_initialize_data()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_initialize_data ( const struct DDS_DynamicDataTypeSupport self,
DDS_DynamicData a_data 
)

Initialize a DDS_DynamicData object to a valid empty state.

Use DDS_DynamicDataTypeSupport_create_data to allocate a new DDS_DynamicData object on the heap. Use this method to initialize a DDS_DynamicData object that is stored deeply, either within another object or on the stack.

When you're finished with the object, dispose of it with DDS_DynamicDataTypeSupport_finalize_data.

struct DDS_DynamicData sample;
myTypeSupport, &sample);
/* Handle failure... */
/* Do something... */
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_initialize_data(const struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
Initialize a DDS_DynamicData object to a valid empty state.
DDS_ReturnCode_t DDS_DynamicDataTypeSupport_finalize_data(const struct DDS_DynamicDataTypeSupport *self, DDS_DynamicData *a_data)
Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the...
See also
FooTypeSupport_initialize_data
DDS_DynamicDataTypeSupport_finalize_data
DDS_DynamicDataTypeSupport_create_data

◆ DDS_DynamicDataTypeSupport_finalize_data()

DDS_ReturnCode_t DDS_DynamicDataTypeSupport_finalize_data ( const struct DDS_DynamicDataTypeSupport self,
DDS_DynamicData a_data 
)

Clean up the internal state of this object to get it ready for deallocation, but don't deallocate the pointer.

Use DDS_DynamicDataTypeSupport_delete_data to clean up a DDS_DynamicData object on the heap. Use this method to clean up a DDS_DynamicData object that is stored deeply, either within another object or on the stack.

See also
FooTypeSupport_finalize_data
DDS_DynamicDataTypeSupport_delete_data
DDS_DynamicDataTypeSupport_initialize_data

Variable Documentation

◆ DDS_DYNAMIC_DATA_PROPERTY_DEFAULT

const struct DDS_DynamicDataProperty_t DDS_DYNAMIC_DATA_PROPERTY_DEFAULT
extern

Sentinel constant indicating default values for DDS_DynamicDataProperty_t.

Pass this object instead of your own DDS_DynamicDataProperty_t object to use the default property values:

myTypeCode,
const struct DDS_DynamicDataProperty_t DDS_DYNAMIC_DATA_PROPERTY_DEFAULT
Sentinel constant indicating default values for DDS_DynamicDataProperty_t.
See also
DDS_DynamicDataProperty_t
Examples
HelloWorldPlugin.c.

◆ DDS_DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT

const struct DDS_DynamicDataTypeProperty_t DDS_DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT
extern

Sentinel constant indicating default values for DDS_DynamicDataTypeProperty_t.

Pass this object instead of your own DDS_DynamicDataTypeProperty_t object to use the default property values:

myTypeCode,
struct DDS_DynamicDataTypeSupport * DDS_DynamicDataTypeSupport_new(const DDS_TypeCode *type, const struct DDS_DynamicDataTypeProperty_t *props)
Construct a new DDS_DynamicDataTypeSupport object.
struct DDS_DynamicDataTypeSupport DDS_DynamicDataTypeSupport
A factory for registering a dynamically defined type and creating DDS_DynamicData objects.
Definition: dynamicdata.ifc:2665
const struct DDS_DynamicDataTypeProperty_t DDS_DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT
Sentinel constant indicating default values for DDS_DynamicDataTypeProperty_t.
See also
DDS_DynamicDataTypeProperty_t

◆ DDS_DYNAMIC_DATA_JSON_PARSER_PROPERTIES_DEFAULT

struct DDS_DynamicDataJsonParserProperties_t DDS_DYNAMIC_DATA_JSON_PARSER_PROPERTIES_DEFAULT
extern

Sentinel constant indicating default values for DDS_DynamicDataProperty_t.

Pass this object instead of your own DDS_DynamicDataProperty_t object to use the default property values:

See also
DDS_DynamicDataProperty_t