RTI Connext Java API  Version 5.2.0
 All Classes Namespaces Functions Variables Groups Pages
TypeSupportQosPolicy Class Reference

Allows you to attach application-specific values to a com.rti.dds.publication.DataWriter or com.rti.dds.subscription.DataReader, which are passed to the serialization or deserialization routine of the associated data type and choose whether to set padding bytes to zero during serialization. More...

Inheritance diagram for TypeSupportQosPolicy:
QosPolicy

Public Attributes

transient Object plugin_data
 Value to pass into the type plugin's de-/serialization function.
 
- Public Attributes inherited from QosPolicy
final QosPolicyId_t id
 The ID of this QoS policy.
 
final String policy_name
 The name of this QoS policy.
 

Additional Inherited Members

- Public Member Functions inherited from Struct
abstract boolean equals (Object obj)
 
abstract int hashCode ()
 
String toString ()
 
- Protected Member Functions inherited from Struct
 Struct ()
 
abstract void pull_from_nativeI (long native_status)
 
abstract void push_to_nativeI (long native_status)
 

Detailed Description

Allows you to attach application-specific values to a com.rti.dds.publication.DataWriter or com.rti.dds.subscription.DataReader, which are passed to the serialization or deserialization routine of the associated data type and choose whether to set padding bytes to zero during serialization.

The purpose of this QoS is to allow a user application to pass data to a type plugin's support functions and choose whether or not to set the padding bytes to zero when serializing a sample using CDR encapsulation.

Entity:
com.rti.dds.domain.DomainParticipant, com.rti.dds.subscription.DataReader, com.rti.dds.publication.DataWriter
Properties:
RxO = NO

Changeable = UNTIL ENABLE

Usage

The com.rti.dds.infrastructure.TypeSupportQosPolicy.plugin_data allows you to associate a pointer to an object with a com.rti.dds.publication.DataWriter or com.rti.dds.subscription.DataReader. This object pointer is passed to the serialization routine of the data type associated with the com.rti.dds.publication.DataWriter or the deserialization routine of the data type associated with the com.rti.dds.subscription.DataReader.

You can modify the rtiddsgen-generated code so that the de/serialization routines act differently depending on the information passed in via the object pointer. (The generated serialization and deserialization code does not use the pointer.)

This functionality can be used to change how data sent by a com.rti.dds.publication.DataWriter or received by a com.rti.dds.subscription.DataReader is serialized or deserialized on a per DataWriter and DataReader basis.

It can also be used to dynamically change how serialization (or for a less common case, deserialization) occurs. For example, a data type could represent a table, including the names of the rows and columns. However, since the row/column names of an instance of the table (a Topic) don't change, they only need to be sent once. The information passed in through the TypeSupport QoS policy could be used to signal the serialization routine to send the row/column names the first time a com.rti.dds.publication.DataWriter calls com.rti.ndds.example.FooDataWriter.write, and then never again.

The com.rti.dds.infrastructure.TypeSupportQosPolicy.cdr_padding_kind allows you to choose whether or not the padding bytes are set to zero during CDR serialization.

Member Data Documentation

transient Object plugin_data

Value to pass into the type plugin's de-/serialization function.

[default] NULL


RTI Connext Java API Version 5.2.0 Copyright © Sun Jun 21 2015 Real-Time Innovations, Inc