CoreDX Data Distribution Service
The High Performance, Small Footprint DDS from Twin Oaks Computing, Inc
|
A DynamicData object represents an individual data sample. It provides reflective getters and setters for the members of that sample. More...
Inherits DDS_DynamicData.
Public Member Functions | |
ReturnCode_t | get_descriptor (ref DDS_MemberDescriptor value, uint id) |
This provides access to the descriptor for each value in this object, identified by the member ID. More... | |
ReturnCode_t | set_descriptor (uint id, DDS_MemberDescriptor value) |
Set the descriptor of the member specified by 'id'. | |
bool | equals (DDS_DynamicData otherdd) |
Compare two DynamicData instances for equality. More... | |
uint | get_member_id_by_name (String name) |
Access the 'id' of a member matching 'name'. | |
uint | get_member_id_at_index (uint index) |
Access the 'id' of a member at the specified index. | |
uint | get_item_count () |
Access the "item count" of the DDS_DynamicData. More... | |
ReturnCode_t | clear_all_values () |
Clears all values from the instance. More... | |
ReturnCode_t | clear_nonkey_values () |
Clear all non-key values from the instance. More... | |
ReturnCode_t | clear_value (uint id) |
Clear the specified value from the instance. More... | |
DDS_DynamicData | loan_value (uint id) |
The "loan" operations loan to the application a DynamicData object representing a value within this sample. More... | |
ReturnCode_t | return_loaned_value (DDS_DynamicData value) |
Return a "loaned" data sample. More... | |
DDS_DynamicData | clone () |
Create and return a new data sample with the same contents as this one. More... | |
ReturnCode_t | get_int32_value (ref int value, uint id) |
Access a 32bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_int32_value (uint id, int value) |
Set a 32bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_uint32_value (ref uint value, uint id) |
Access an unsigned 32bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_uint32_value (uint id, uint value) |
Set an unsigned 32bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_int16_value (ref short value, uint id) |
Access a 16bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_int16_value (uint id, short value) |
Set a 16bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_uint16_value (ref ushort value, uint id) |
Access an unsigned 16bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_uint16_value (uint id, ushort value) |
Set an unsigned 16bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_int64_value (ref long value, uint id) |
Access a 64bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_int64_value (uint id, long value) |
Set a 64bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_uint64_value (ref ulong value, uint id) |
Access an unsigned 64bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_uint64_value (uint id, ulong value) |
Set an unsigned 64bit integer value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_float32_value (ref float value, uint id) |
Access a float value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_float32_value (uint id, float value) |
Set a float value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_float64_value (ref double value, uint id) |
Access a double value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_float64_value (uint id, double value) |
Set a double value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_char8_value (ref char value, uint id) |
Access an 8bit character value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_char8_value (uint id, char value) |
Set an 8bit character value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_char32_value (ref int value, uint id) |
Access a 32bit character value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_char32_value (uint id, int value) |
Set a 32bit character value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_byte_value (ref byte value, uint id) |
Access an 8bit value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_byte_value (uint id, byte value) |
Set an 8bit value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_boolean_value (ref bool value, uint id) |
Access a boolean value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_boolean_value (uint id, bool value) |
Set a boolean value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_string_value (ref string value, uint id) |
Access a string value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_string_value (uint id, String value) |
Set a string value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_wstring_value (ref string value, uint id) |
Access a wstring value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_wstring_value (uint id, String value) |
Set a wstring value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_complex_value (ref DDS_DynamicData value, uint id) |
Access a complex value, identified by 'id', in the sample. More... | |
ReturnCode_t | set_complex_value (uint id, DDS_DynamicData value) |
Set a complex value, identified by 'id', in the sample. More... | |
ReturnCode_t | get_int32_values (ref int[] value, uint id) |
ReturnCode_t | set_int32_values (uint id, int[] value) |
ReturnCode_t | get_uint32_values (ref uint[] value, uint id) |
ReturnCode_t | set_uint32_values (uint id, uint[] value) |
ReturnCode_t | get_int16_values (ref short[] value, uint id) |
ReturnCode_t | set_int16_values (uint id, short[] value) |
ReturnCode_t | get_uint16_values (ref ushort[] value, uint id) |
ReturnCode_t | set_uint16_values (uint id, ushort[] value) |
ReturnCode_t | get_int64_values (ref long[] value, uint id) |
ReturnCode_t | set_int64_values (uint id, long[] value) |
ReturnCode_t | get_uint64_values (ref ulong[] value, uint id) |
ReturnCode_t | set_uint64_values (uint id, ulong[] value) |
ReturnCode_t | get_float32_values (ref float[] value, uint id) |
ReturnCode_t | set_float32_values (uint id, float[] value) |
ReturnCode_t | get_float64_values (ref double[] value, uint id) |
ReturnCode_t | set_float64_values (uint id, double[] value) |
ReturnCode_t | get_char8_values (ref char[] value, uint id) |
ReturnCode_t | set_char8_values (uint id, char[] value) |
ReturnCode_t | get_char32_values (ref int[] value, uint id) |
ReturnCode_t | set_char32_values (uint id, int[] value) |
ReturnCode_t | get_byte_values (ref byte[] value, uint id) |
ReturnCode_t | set_byte_values (uint id, byte[] value) |
ReturnCode_t | get_boolean_values (ref bool[] value, uint id) |
ReturnCode_t | set_boolean_values (uint id, bool[] value) |
ReturnCode_t | get_string_values (ref String[] value, uint id) |
ReturnCode_t | set_string_values (uint id, String[] value) |
ReturnCode_t | get_wstring_values (ref String[] value, uint id) |
ReturnCode_t | set_wstring_values (uint id, String[] value) |
A DynamicData object represents an individual data sample. It provides reflective getters and setters for the members of that sample.
Many of the properties and operations on DynamicData refer to values within the sample, which are identified by name, member ID, or index.
What constitutes a value within a sample, and which means of accessing it are valid, depends on the type of the sample.
Note that indices used here are always relative to other values in a particular DynamicData object. Even though member definitions within aggregate types have a well-defined order, the same is not true within data samples or across data samples.
Specifically, the index at which a member of an aggregated type appears in a particular data sample may not match that in which it appears in the corresponding type and may not match the index at which it appears in a different data sample.
There are several reasons for these inconsistencies:
|
inline |
Clears all values from the instance.
The meaning of "clearing" a member depends on the type of data represented by this sample:
|
inline |
Clear all non-key values from the instance.
|
inline |
Clear the specified value from the instance.
|
inline |
Create and return a new data sample with the same contents as this one.
A comparison of this object and the clone using equals immediately following this call will return true.
|
inline |
Compare two DynamicData instances for equality.
Two data samples are considered to be equal if and only if all of the following conditions hold:
If the samples’ type is an aggregated type, the previous rule is amended as follows:
|
inline |
Access a boolean value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access an 8bit value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a 32bit character value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access an 8bit character value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a complex value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
This provides access to the descriptor for each value in this object, identified by the member ID.
See the description of DynamicData values.
|
inline |
Access a float value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a double value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a 16bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a 32bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a 64bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access the "item count" of the DDS_DynamicData.
The "item count" of the data depends on the type of the object.
|
inline |
Access a string value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access an unsigned 16bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access an unsigned 32bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access an unsigned 64bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Access a wstring value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
The "loan" operations loan to the application a DynamicData object representing a value within this sample.
This operation allows applications to visit values without allocating additional DynamicData objects or copying values. This loan shall be returned by the DDS_DynamicData_return_loaned_value operation.
A given DynamicData object may support only a single outstanding loan at a time. That is, after calling a "loan" operation, an application must subsequently call return_loaned_value before calling a loan operation again. If an application violates this constraint, the loan operation shall return a nil value.
A loan operation shall also return a nil value if the indicated value does not exist.
|
inline |
Return a "loaned" data sample.
The DynamicData::return_loaned_value operation may return RETCODE_PRECONDITION_NOT_MET if the provided sample object does not represent an outstanding loan from the sample on which the operation is invoked.
|
inline |
Set a boolean value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set an 8bit value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a 32bit character value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set an 8bit character value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a complex value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
Set a float value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a double value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a 16bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a 32bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a 64bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a string value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set an unsigned 16bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set an unsigned 32bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set an unsigned 64bit integer value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |
|
inline |
Set a wstring value, identified by 'id', in the sample.
If 'id' is MEMBER_ID_INVALID, then it attempts to treat 'dd' as the requested type. Otherwise, it looks in 'dd' for a value that matches that 'id'. As described above, 'id' has different meanings based on the type of 'dd'.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter or non-existent 'id'. |
|
inline |