Static Public Member Functions | |
static DDS_ReturnCode_t | register_type (DDSDomainParticipant *participant, const char *type_name) |
Allows an application to communicate to RTI Data Distribution Service the existence of a data type. | |
static DDS_ReturnCode_t | unregister_type (DDSDomainParticipant *participant, const char *type_name) |
Allows an application to unregister a data type from RTI Data Distribution Service. After calling unregister_type, no further communication using that type is possible. | |
static Foo * | create_data () |
<<eXtension>> Create a data type and initialize it. | |
static Foo * | create_data_ex (DDS_Boolean allocatePointers) |
<<eXtension>> Create a data type and initialize it. | |
static DDS_ReturnCode_t | copy_data (Foo *dst_data, const Foo *src_data) |
<<eXtension>> Copy data type. | |
static DDS_ReturnCode_t | delete_data (Foo *a_data) |
<<eXtension>> Destroy a user data type instance. | |
static DDS_ReturnCode_t | delete_data_ex (Foo *a_data, DDS_Boolean deletePointers) |
<<eXtension>> Destroy a user data type instance. | |
static DDS_ReturnCode_t | initialize_data (Foo *a_data) |
<<eXtension>> Initialize data type. | |
static DDS_ReturnCode_t | initialize_data_ex (Foo *a_data, DDS_Boolean allocatePointers) |
<<eXtension>> Initialize data type. | |
static DDS_ReturnCode_t | finalize_data (Foo *a_data) |
<<eXtension>> Finalize data type. | |
static DDS_ReturnCode_t | finalize_data_ex (Foo *a_data, DDS_Boolean deletePointers) |
<<eXtension>> Finalize data type. | |
static const char * | get_type_name () |
Get the default name for this type. | |
static void | print_data (const Foo *a_data) |
<<eXtension>> Print value of data type to standard out. |
Defines the user data type specific interface generated for each application class.
The concrete user data type automatically generated by the implementation is an incarnation of this class.
static DDS_ReturnCode_t FooTypeSupport::register_type | ( | DDSDomainParticipant * | participant, | |
const char * | type_name | |||
) | [static] |
Allows an application to communicate to RTI Data Distribution Service the existence of a data type.
The generated implementation of the operation embeds all the knowledge that has to be communicated to the middleware in order to make it able to manage the contents of data of that type. This includes in particular the key definition that will allow RTI Data Distribution Service to distinguish different instances of the same type.
The same DDSTypeSupport can be registered multiple times with a DDSDomainParticipant using the same or different values for the type_name
. If register_type
is called multiple times on the same DDSTypeSupport with the same DDSDomainParticipant and type_name
, the second (and subsequent) registrations are ignored by the operation fails with DDS_RETCODE_OK.
type_name
to register two different DDSTypeSupport with the same DDSDomainParticipant, or else the operation will fail and DDS_RETCODE_PRECONDITION_NOT_MET will be returned. participant | <<in>> the DDSDomainParticipant to register the data type Foo with. Cannot be NULL. | |
type_name | <<in>> the type name under with the data type Foo is registered with the participant; this type name is used when creating a new DDSTopic. (See DDSDomainParticipant::create_topic.) The name may not be NULL or longer than 255 characters. |
static DDS_ReturnCode_t FooTypeSupport::unregister_type | ( | DDSDomainParticipant * | participant, | |
const char * | type_name | |||
) | [static] |
Allows an application to unregister a data type from RTI Data Distribution Service. After calling unregister_type, no further communication using that type is possible.
The generated implementation of the operation removes all the information about a type from RTI Data Distribution Service. No further communication using that type is possible.
type_name
is registered with the participant and all DDSTopic objects referencing the type have been destroyed. If the type is not registered with the participant, or if any DDSTopic is associated with the type, the operation will fail with DDS_RETCODE_ERROR. participant | <<in>> the DDSDomainParticipant to unregister the data type Foo from. Cannot be NULL. | |
type_name | <<in>> the type name under with the data type Foo is registered with the participant. The name should match a name that has been previously used to register a type with the participant. Cannot be NULL. |
static Foo* FooTypeSupport::create_data | ( | ) | [static] |
<<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.
static Foo* FooTypeSupport::create_data_ex | ( | DDS_Boolean | allocatePointers | ) | [static] |
<<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.
When allocatePointers
is DDS_BOOLEAN_TRUE, all the references (pointers) in the type are recursively allocated.
allocatePointers | <<in>> Whether or not to recursively allocate pointers. |
static DDS_ReturnCode_t FooTypeSupport::copy_data | ( | Foo * | dst_data, | |
const Foo * | src_data | |||
) | [static] |
<<eXtension>> Copy data type.
The generated implementation of the operation knows how to copy value of a data type.
dst_data | <<inout>> Data type to copy value to. Cannot be NULL. | |
src_data | <<in>> Data type to copy value from. Cannot be NULL. |
static DDS_ReturnCode_t FooTypeSupport::delete_data | ( | Foo * | a_data | ) | [static] |
<<eXtension>> Destroy a user data type instance.
The generated implementation of the operation knows how to destroy a data type and return all resources.
a_data | <<in>> Cannot be NULL. |
static DDS_ReturnCode_t FooTypeSupport::delete_data_ex | ( | Foo * | a_data, | |
DDS_Boolean | deletePointers | |||
) | [static] |
<<eXtension>> Destroy a user data type instance.
The generated implementation of the operation knows how to destroy a data type and return all resources.
When deletePointers
is DDS_BOOLEAN_TRUE, all the references (pointers) are destroyed as well.
static DDS_ReturnCode_t FooTypeSupport::initialize_data | ( | Foo * | a_data | ) | [static] |
<<eXtension>> Initialize data type.
The generated implementation of the operation knows how to initialize a data type. This method is typically called to initialize a data type that is allocated on the stack.
a_data | <<inout>> Cannot be NULL. |
static DDS_ReturnCode_t FooTypeSupport::initialize_data_ex | ( | Foo * | a_data, | |
DDS_Boolean | allocatePointers | |||
) | [static] |
<<eXtension>> Initialize data type.
The generated implementation of the operation knows how to initialize a data type. This method is typically called to initialize a data type that is allocated on the stack.
When allocatePointers
is DDS_BOOLEAN_TRUE, all the references (pointers) in the type are recursively allocated.
a_data | <<inout>> Cannot be NULL. | |
allocatePointers | <<in>> Whether or not to recursively allocate pointers. |
static DDS_ReturnCode_t FooTypeSupport::finalize_data | ( | Foo * | a_data | ) | [static] |
<<eXtension>> Finalize data type.
The generated implementation of the operation knows how to finalize a data type. This method is typically called to finalize a data type that has previouslly been initialized.
a_data | <<in>> Cannot be NULL. |
static DDS_ReturnCode_t FooTypeSupport::finalize_data_ex | ( | Foo * | a_data, | |
DDS_Boolean | deletePointers | |||
) | [static] |
<<eXtension>> Finalize data type.
The generated implementation of the operation knows how to finalize a data type. This method is typically called to finalize a data type that has previouslly been initialized.
When deletePointers
is DDS_BOOLEAN_TRUE, the memory required by the references (pointers) associated to the type is freed.
a_data | <<in>> Cannot be NULL. | |
deletePointers | <<in>> Whether or not to free memory allocated by the pointers. |
static const char* FooTypeSupport::get_type_name | ( | ) | [static] |
Get the default name for this type.
Can be used for calling FooTypeSupport::register_type or creating DDSTopic
static void FooTypeSupport::print_data | ( | const Foo * | a_data | ) | [static] |
<<eXtension>> Print value of data type to standard out.
The generated implementation of the operation knows how to print value of a data type.
a_data | <<in>> Data type to be printed. |