RTI Connext .NET API (legacy)
Version 6.1.1
|
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...
#include <managed_infrastructure.h>
Static Public Member Functions | |
static System::String ^ | get_data_representation_qos_policy_name () |
Stringified human-readable name for DDS::DataRepresentationQosPolicy. More... | |
Public Attributes | |
ShortSeq ^ | value |
Sequence of representation identifiers. More... | |
CompressionSettings_t | compression_settings |
<<extension>> Structure that contains the compression settings. More... | |
Static Public Attributes | |
static System::Int16 | XCDR_DATA_REPRESENTATION |
Corresponds to the Extended Common Data Representation encoding version 1. More... | |
static System::Int16 | XML_DATA_REPRESENTATION |
Corresponds to the XML Data Representation (unsupported). More... | |
static System::Int16 | XCDR2_DATA_REPRESENTATION |
Corresponds to the Extended Common Data Representation encoding version 2. More... | |
static System::Int16 | AUTO_DATA_REPRESENTATION |
Representation is automatically chosen based on the type. 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_InconsistentPolicy. 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_InconsistentPolicy.
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.
ShortSeq ^ DDS::DataRepresentationQosPolicy::value |
Sequence of representation identifiers.
[default] For DDS::Topic, DDS::DataWriter, and DDS::DataReader, a list with one element: DDS::DataRepresentationId_t::AUTO_DATA_REPRESENTATION.
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::CompressionSettings_t::COMPRESSION_ID_MASK_NONE
DDS::DataReader DDS::CompressionSettings_t::COMPRESSION_ID_MASK_ALL
writer_compression_level:
[default] The value depends on the entity
DDS::DataWriter and DDS::Topic are set to DDS::CompressionSettings_t::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::CompressionSettings_t::COMPRESSION_THRESHOLD_DEFAULT
DDS::DataReader NOT SUPPORTED