RTI Connext DDS Micro C++ API  Version 4.0.1
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Compliance Configuration

APIs to configure compliance with certain standard specifications. More...

Typedefs

typedef DDS_UnsignedLong NDDS_Config_XTypesComplianceMask
 XTypes compliance mask.

Enumerations

enum  NDDS_Config_XTypesComplianceMaskBits { , NDDS_CONFIG_XTYPES_ENCAPSULATION_OPTIONS_WITH_PADDING_BIT }
 The bits for the NDDS_Config_XTypesComplianceMask with different aspects of the Extended CDR encoding (XCDR and XCDR2). More...

Detailed Description

APIs to configure compliance with certain standard specifications.


Typedef Documentation

XTypes compliance mask.

The NDDS_Config_XTypesComplianceMask configures different aspects of the Extended CDR encoding (XCDR and XCDR2).

Applications that don't use the exact same XTypes compliance mask may not be interoperable.

By default, data serialization is not fully compliant with Extended CDR encoding due to bugs when implementing the standard. These bugs do not result in breaking functional correctness. They only affect interoperability with other vendors.

You can change the default compliance mask for an application using any of the following mechanisms:


Enumeration Type Documentation

The bits for the NDDS_Config_XTypesComplianceMask with different aspects of the Extended CDR encoding (XCDR and XCDR2).

See also:
NDDS_Config_XTypesComplianceMask
Enumerator:
NDDS_CONFIG_XTYPES_ENCAPSULATION_OPTIONS_WITH_PADDING_BIT 

When this bit is set, RTI Connext DDS Micro will set the padding bits in the options field of the encapsulation header of a serialized payload.

Value: 0x00000008

When this bit is set RTI Connext DDS Micro will set the least significant two bits in the second byte of the options field to a value that encodes the number of padding bytes needed after the end of the serialized payload in order to reach the next 4-byte aligned offset. Specifically, the least significant two bits shall be set to binary 00 if no padding bits would be needed and binary 01, 10, or 11 if, respectively, there would be one, two, or three bytes of padding needed. These bits in the options field will be interpreted by a DataReader to determine where the serialized data exactly ended.

To be compatible with the XTypes specification, this bit must be set.

To be compatible with the following Micro versions this bit must be unset because those versions of Micro did not support padding bits and will discard any data with encapsulations options not set to 0.

  • RTI Connext Micro 3.x.y.z
  • RTI Connext Micro 2.4.15.1
  • RTI Connext Micro 2.4.14.0 and 2.4.14.1
  • RTI Connext Micro 2.4.13.1 through 2.4.13.5
  • RTI Connext Micro 2.4.12.z

This bit applies to both XCDR and XCDR2 encodings.

This bit is set by default.


RTI Connext DDS Micro C++ API Version 4.0.1 Copyright © Mon Jun 3 2024 Real-Time Innovations, Inc