RTI Connext C++ API  Version 5.1.0
TYPE_CONSISTENCY_ENFORCEMENT

Defines the rules for determining whether the type used to publish a given topic is consistent with that used to subscribe to it. More...

Classes

struct  DDS_TypeConsistencyEnforcementQosPolicy
 Defines the rules for determining whether the type used to publish a given topic is consistent with that used to subscribe to it. More...
 

Enumerations

enum  DDS_TypeConsistencyKind {
  DDS_DISALLOW_TYPE_COERCION,
  DDS_ALLOW_TYPE_COERCION
}
 Kinds of type consistency. More...
 

Variables

const char *const DDS_TYPE_CONSISTENCY_ENFORCEMENT_QOS_POLICY_NAME
 Stringified human-readable name for DDS_TypeConsistencyEnforcementQosPolicy.
 

Detailed Description

Defines the rules for determining whether the type used to publish a given topic is consistent with that used to subscribe to it.

Enumeration Type Documentation

Kinds of type consistency.

QoS:
DDS_TypeConsistencyEnforcementQosPolicy
Enumerator:
DDS_DISALLOW_TYPE_COERCION 

The DataWriter and the DataReader must support the same data type in order for them to communicate.

This is the degree of type consistency enforcement required by the OMG DDS Specification prior to the OMG Extensible and Dynamic Topic Types for DDS Specification.

DDS_ALLOW_TYPE_COERCION 

The DataWriter and the DataReader need not support the same data type in order for them to communicate as long as the DataReader's type is assignable from the DataWriter's type.

For example, the following two extensible types will be assignable to each other since MyDerivedType contains all the members of MyBaseType (member_1) plus some additional elements (member_2).

struct MyBaseType {
long member_1;
};
struct MyDerivedType: MyBaseType {
long member_2;
};

Even if MyDerivedType was not explicitly inheriting from MyBaseType the types would still be assignable. For example:

struct MyBaseType {
long member_1;
};
struct MyDerivedType {
long member_1;
long member_2;
};

For additional information on type assignability refer to the OMG Extensible and Dynamic Topic Types for DDS Specification.

[default]

Variable Documentation

const char* const DDS_TYPE_CONSISTENCY_ENFORCEMENT_QOS_POLICY_NAME

Stringified human-readable name for DDS_TypeConsistencyEnforcementQosPolicy.


RTI Connext C++ API Version 5.1.0 Copyright © Mon Feb 3 2014 Real-Time Innovations, Inc