RTI Connext DDS Micro C API
Version 3.0.0
|
Defines generic classes and macros to support user data types. More...
Data Structures | |
struct | FooTypeSupport |
<<interface>> <<generic>> User data type specific interface. More... |
Macros | |
#define | DDS_DATAWRITER_C(TDataWriter, TData) |
Declares the interface required to support a user data type specific data writer. | |
#define | DDS_TYPESUPPORT_C(TTypeSupport, TData) |
Declares the interface required to support a user data type. | |
#define | DDS_DATAREADER_C(TDataReader, TDataSeq, TData) |
Declares the interface required to support a user data type-specific data reader. |
Typedefs | |
typedef DDS_HANDLE_TYPE_NATIVE | DDS_InstanceHandle_t |
Type definition for an instance handle. |
Functions | |
Foo * | FooTypeSupport_create_data (void) |
<<eXtension>> Create a data type and initialize it. | |
void | FooTypeSupport_delete_data (Foo *sample) |
<<eXtension>> Destroy a user data type instance. | |
DDS_Boolean | DDS_InstanceHandle_is_nil (const DDS_InstanceHandle_t *self) |
Compare this handle to DDS_HANDLE_NIL. |
Variables | |
const DDS_InstanceHandle_t | DDS_HANDLE_NIL |
The NIL instance handle. |
Defines generic classes and macros to support user data types.
Defines the DDS user data type support.
DDS specifies strongly typed interfaces to read and write user data. For each data class defined by the application, there is a number of specialised classes that are required to facilitate the type-safe interaction of the application with RTI Connext DDS Micro.
RTI Connext DDS Micro provides an automatic means to generate all these type-specific classes with the RTI IDL Compiler User Manual utility. The complete set of automatic classes created for a hypothetical user data type named Foo
are shown below.
The macros defined here declare the strongly typed APIs needed to support an arbitrary user defined data of type Foo
.
#define DDS_DATAWRITER_C | ( | TDataWriter, | |
TData | |||
) |
Declares the interface required to support a user data type specific data writer.
Foo
Foo
, i.e. FooDataWriter
#define DDS_TYPESUPPORT_C | ( | TTypeSupport, | |
TData | |||
) |
Declares the interface required to support a user data type.
Foo
, i.e. FooTypeSupport
#define DDS_DATAREADER_C | ( | TDataReader, | |
TDataSeq, | |||
TData | |||
) |
Declares the interface required to support a user data type-specific data reader.
Foo
FooSeq sequence of user data type, sequence<Foo>
Foo
, i.e. FooDataReader
typedef DDS_HANDLE_TYPE_NATIVE DDS_InstanceHandle_t |
Type definition for an instance handle.
Handle to identiy different instances of the same DDS_Topic of a certain type.
Foo* FooTypeSupport_create_data | ( | void | ) |
<<eXtension>> Create a data type and initialize it.
The generated implementation of the operation knows how to instantiate a data type and initialize it properly.
All memory for the type is deeply allocated.
void FooTypeSupport_delete_data | ( | Foo * | sample | ) |
<<eXtension>> Destroy a user data type instance.
The generated implementation of the operation knows how to destroy a data type and return all resources.
sample | <<in>> Cannot be NULL. |
DDS_Boolean DDS_InstanceHandle_is_nil | ( | const DDS_InstanceHandle_t * | self | ) |
Compare this handle to DDS_HANDLE_NIL.
const DDS_InstanceHandle_t DDS_HANDLE_NIL |