Return to DDS Quality of Service
The PRESENTATION QoS policy controls the extent to which changes to data-instances can be made dependent on each other and also the kind of dependencies that can be propagated and maintained by the Service.
The setting of coherent_access controls whether the Service will preserve the groupings of changes made by the publishing application by means of the operations begin_coherent_change and end_coherent_change.
The setting of ordered_access controls whether the Service will preserve the order of changes.
The granularity is controlled by the setting of the access_scope.
If coherent_access is set, then the access_scope controls the maximum extent of coherent changes. The behavior is as follows:
access_scope
is set to INSTANCE, the use of begin_coherent_change
and end_coherent_change
has no effect on how the subscriber can access the data because with the scope limited to each instance, changes to separate instances are considered independent and thus cannot be grouped by a coherent change.access_scope
is set to TOPIC, then coherent changes (indicated by their enclosure within calls to begin_coherent_change
and end_coherent_change
) will be made available as such to each remote DataReader
independently. That is, changes made to instances within each individual DataWriter
will be available as coherent with respect to other changes to instances in that same DataWriter
, but will not be grouped with changes made to instances belonging to a different DataWriter
.access_scope
is set to GROUP, then coherent changes made to instances through a DataWriter
attached to a common Publisher
are made available as a unit to remote subscribers.
If ordered_access
is set, then the access_scope controls the maximum extent for which order will be preserved by the Service.
access_scope
is set to INSTANCE (the lowest level), then changes to each instance are considered unordered relative to changes to any other instance. That means that changes (creations, deletions, modifications) made to two instances are not necessarily seen in the order they occur. This is the case even if it is the same application thread making the changes using the same DataWriter
.access_scope
is set to TOPIC, changes (creations, deletions, modifications) made by a single DataWriter
are made available to subscribers in the same order they occur. Changes made to instances through different DataWriter
entities are not necessarily seen in the order they occur. This is the case, even if the changes are made by a single application thread using DataWriter
objects attached to the same Publisher
.access_scope
is set to GROUP, changes made to instances via DataWriter
entities attached to the same Publisher
object are made available to subscribers on the same order they occur.DataReader
objects, as Data Distribution Service (DDS) 1.4 Spec, Access to the data.The value offered is considered compatible with the value requested if and only if the following conditions are met :
Source: DDS 1.4 Spec