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