RTI Connext Traditional C++ API  Version 6.0.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
DESTINATION_ORDER

Controls the criteria used to determine the logical order among changes made by DDSPublisher entities to the same instance of data (i.e., matching DDSTopic and key). More...

Classes

struct  DDS_DestinationOrderQosPolicy
 Controls how the middleware will deal with data sent by multiple DDSDataWriter entities for the same instance of data (i.e., same DDSTopic and key). More...
 

Enumerations

enum  DDS_DestinationOrderQosPolicyKind {
  DDS_BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS,
  DDS_BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS
}
 Kinds of destination order. More...
 
enum  DDS_DestinationOrderQosPolicyScopeKind {
  DDS_INSTANCE_SCOPE_DESTINATIONORDER_QOS,
  DDS_TOPIC_SCOPE_DESTINATIONORDER_QOS
}
 Scope of source destination order. More...
 

Variables

const char *const DDS_DESTINATIONORDER_QOS_POLICY_NAME
 Stringified human-readable name for DDS_DestinationOrderQosPolicy.
 

Detailed Description

Controls the criteria used to determine the logical order among changes made by DDSPublisher entities to the same instance of data (i.e., matching DDSTopic and key).

Enumeration Type Documentation

Kinds of destination order.

QoS:
DDS_DestinationOrderQosPolicy
Enumerator:
DDS_BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS 

[default] Indicates that data is ordered based on the reception time at each DDSSubscriber.

Since each subscriber may receive the data at different times there is no guaranteed that the changes will be seen in the same order. Consequently, it is possible for each subscriber to end up with a different final value for the data.

DDS_BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS 

Indicates that data is ordered based on a time-stamp placed at the source (by RTI Connext or by the application).

In any case this guarantees a consistent final value for the data in all subscribers.

Note: If Batching is needed along with DDS_BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS and DDS_INSTANCE_SCOPE_DESTINATIONORDER_QOS, then the DDS_BatchQosPolicy::source_timestamp_resolution and DDS_BatchQosPolicy::thread_safe_write setting of DDS_BatchQosPolicy should be set to DDS_DURATION_ZERO and DDS_BOOLEAN_TRUE respectively.

See Also
Special Instructions if Using 'Timestamp' APIs and BY_SOURCE_TIMESTAMP Destination Ordering:

Scope of source destination order.

QoS:
DDS_DestinationOrderQosPolicy
Enumerator:
DDS_INSTANCE_SCOPE_DESTINATIONORDER_QOS 

[default] Indicates that data is ordered on a per instance basis if used along with DDS_BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS.

The source timestamp of the current sample is compared to the source timestamp of the previously received sample for the same instance. The tolerance check is also applied per instance.

DDS_TOPIC_SCOPE_DESTINATIONORDER_QOS 

Indicates that data is ordered on a per topic basis if used along with DDS_BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS.

The source timestamp of the current sample is compared to the source timestamp of the previously received sample for the same topic. The tolerance check is also applied per topic.

Variable Documentation

const char* const DDS_DESTINATIONORDER_QOS_POLICY_NAME

Stringified human-readable name for DDS_DestinationOrderQosPolicy.


RTI Connext Traditional C++ API Version 6.0.1 Copyright © Sat Nov 23 2019 Real-Time Innovations, Inc