RTI Connext C API Version 7.3.0
|
This QoS policy contains a list of representation identifiers and compression settings used by DDS_DataWriter and DDS_DataReader entities to negotiate which data representation and compression settings to use. More...
Data Fields | |
struct DDS_DataRepresentationIdSeq | value |
Sequence of representation identifiers. More... | |
struct DDS_CompressionSettings_t | compression_settings |
<<extension>> Structure that contains the compression settings. More... | |
This QoS policy contains a list of representation identifiers and compression settings used by DDS_DataWriter and DDS_DataReader entities to negotiate which data representation and compression settings to use.
This policy has request-offer semantics for both representation and compression. For representation, a DDS_DataWriter may only offer a single representation. Attempting to put multiple representations in a DDS_DataWriter will result in DDS_RETCODE_INCONSISTENT_POLICY. A DDS_DataWriter will use its offered policy to communicate with its matched DDS_DataReader entities. A DDS_DataReader requests one or more representations. If a DDS_DataWriter offers a representation that is contained within the sequence of the DDS_DataReader, the offer satisfies the request and the policies are compatible. Otherwise, they are incompatible.
When representations are specified in the DDS_TopicQos, DDS_Publisher_copy_from_topic_qos copies the first element of the sequence, and DDS_Subscriber_copy_from_topic_qos copies the whole sequence.
For Compression, only the DDS_CompressionSettings_t::compression_ids is propagated and a DDS_DataWriter may only offer a single compression id. Attempting to put multiple compression_ids in a DDS_DataWriter will result in DDS_RETCODE_INCONSISTENT_POLICY.
A DDS_DataWriter will use its offered compression algorithm to compress data that it sends to its matched DDS_DataReader entities. A DDS_DataReader requests zero or more compression algorithms. If a DDS_DataWriter offers a representation that is contained within the algorithms requested by the DDS_DataReader, the offer satisfies the request and the policies are compatible. Otherwise, they are incompatible.
When compression IDs are specified in the DDS_TopicQos, DDS_Publisher_copy_from_topic_qos copies a single compression ID (see DDS_CompressionSettings_t::compression_ids), and DDS_Subscriber_copy_from_topic_qos copies all of the compression_ids.
struct DDS_DataRepresentationIdSeq DDS_DataRepresentationQosPolicy::value |
Sequence of representation identifiers.
[default] For DDS_Topic, DDS_DataWriter, and DDS_DataReader, a list with one element: DDS_AUTO_DATA_REPRESENTATION.
struct DDS_CompressionSettings_t DDS_DataRepresentationQosPolicy::compression_settings |
<<extension>> Structure that contains the compression settings.
compression_ids:
[default] The value depends on the entity
DDS_DataWriter and DDS_Topic are set to DDS_COMPRESSION_ID_MASK_NONE
DDS_DataReader DDS_COMPRESSION_ID_MASK_ALL
writer_compression_level:
[default] The value depends on the entity
DDS_DataWriter and DDS_Topic are set to DDS_COMPRESSION_LEVEL_DEFAULT
DDS_DataReader NOT SUPPORTED
writer_compression_threshold:
[default] The value depends on the entity
DDS_DataWriter and DDS_Topic are set to DDS_COMPRESSION_THRESHOLD_DEFAULT
DDS_DataReader NOT SUPPORTED