|
RTI Connext Modern C++ API Version 7.7.0
|
XTypes compliance mask. More...
#include <Compliance.hpp>
Inherits std::bitset< 32 >.
Public Types | |
| typedef std::bitset< 32 > | MaskType |
| A typedef of std::bitset<32> for convenience. More... | |
Public Member Functions | |
| RpcMask () | |
| Default RPC compliance mask. More... | |
| RpcMask (uint64_t mask) | |
| Construct a RpcMask from an integer. More... | |
| RpcMask (const MaskType &mask) | |
| Construct a RpcMask from a MaskType object. More... | |
Static Public Member Functions | |
| static const RpcMask | use_standard_related_sample_pid () |
| This bit configures a standard value for PID_RELATED_SAMPLE_IDENTITY. More... | |
| static const RpcMask | vendor () |
| This mask configures compliance with the OMG DDS-RPC specification. More... | |
| static const RpcMask | default_mask () |
| Default RPC compliance mask. More... | |
XTypes compliance mask.
The rti::config::compliance::XTypesMask 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. While this doesn't affect correctness, it may prevent interoperability with other vendors.
You can change the default compliance mask for an application using any of the following mechanisms:
The environment variable will be automatically loaded when a DomainParticipantFactory is created. If you need to load it before that, use the function rti::config::compliance::load_compliance_masks().
The format of the environment variable is an unsigned integer, which can be in HEX notation. For example: 0x00000001.
The default value is rti::config::compliance::XTypesMask::default_mask().
To be fully compliant with the XTypes specification, set the mask to rti::config::compliance::XTypesMask::vendor().
[default] rti::config::compliance::XTypesMask::default_mask()
When changing the mask for an application is not desired, the property dds.xtypes.compliance_mask will change the mask at the DomainParticipant or DataWriter level. When set in the DomainParticipant, it configures the mask for all DataWriters in the participant. See Extensible Types Compliance Mask in the RTI Connext Core Libraries Extensible Types Guide.
| typedef std::bitset<32> rti::config::compliance::RpcMask::MaskType |
A typedef of std::bitset<32> for convenience.
|
inline |
Default RPC compliance mask.
The mask does not sets any bits.
The HEX value for the mask is: 0x00000000.
|
inlineexplicit |
Construct a RpcMask from an integer.
| mask | Value whose bits are copied to the bitset positions |
|
inline |
|
inlinestatic |
This bit configures a standard value for PID_RELATED_SAMPLE_IDENTITY.
Value: 0x00000001
Set this bit to be compliant with the OMG DDS-RPC specification. The PID_RELATED_SAMPLE_IDENTITY will be 0x0083 as is defined as is defined in the RPC over DDS OMG specification. See https://www.omg.org/spec/DDS-RPC
Using rti::config::compliance::RpcMask::use_standard_related_sample_pid() will affect both RPC and Request-Reply communtications. The PID_RELATED_SAMPLE_IDENTITY is a parameter identifier (PID) used by the RTPS wire protocol and required for Request-Reply and RPC communications. By default, this PID takes a non-standard value that is compatible with previous versions of Connext.
This bit is unset by default. See rti::config::compliance::RpcMask::default_mask()
|
inlinestatic |
This mask configures compliance with the OMG DDS-RPC specification.
The mask sets the following bits:
The HEX value for the mask is: 0x00000001.
|
inlinestatic |
Default RPC compliance mask.
The mask does not sets any bits.
The HEX value for the mask is: 0x00000000.