RTI Connext DDS Micro C API
Version 3.0.0
|
<<cert>> Indicates the level of reliability offered/requested by RTI Connext DDS Micro. More...
#include <dds_c_infrastructure.h>
Data Fields | |
DDS_ReliabilityQosPolicyKind | kind |
Kind of reliability. | |
struct DDS_Duration_t | max_blocking_time |
The maximum time a receive thread may block if the reader is out of resources. This Qos policy is unsupported on the writer. |
<<cert>> Indicates the level of reliability offered/requested by RTI Connext DDS Micro.
This policy indicates the level of reliability requested by a DDS_DataReader or offered by a DDS_DataWriter.
These levels are ordered, DDS_BEST_EFFORT_RELIABILITY_QOS < DDS_RELIABLE_RELIABILITY_QOS. A DDS_DataWriter offering a level is implicitly offering all levels below.
If the DDS_ReliabilityQosPolicy::kind is set to DDS_RELIABLE_RELIABILITY_QOS , data-samples originating from a single DDS_DataWriter cannot be made available to the DDS_DataReader if there are previous data samples that have not been received yet due to a communication error. In other words, the service will repair the error and re-transmit data-samples as needed in order to reconstruct a correct snapshot of the DDS_DataWriter history before it is accessible by the DDS_DataReader.
If the DDS_ReliabilityQosPolicy::kind is set to DDS_BEST_EFFORT_RELIABILITY_QOS, the service will not re-transmit missing data-samples. However for data-samples originating from any one DataWriter the service will ensure they are stored in the DDS_DataReader history in the same order they originated in the DDS_DataWriter. In other words, the DDS_DataReader may miss some data samples but it will never see the value of a data-object change from a newer value to an older value.
The value offered is considered compatible with the value requested if and only if the inequality offered kind
>= requested kind
evaluates to 'TRUE'. For the purposes of this inequality, the values of DDS_ReliabilityQosPolicy::kind are considered ordered such that DDS_BEST_EFFORT_RELIABILITY_QOS < DDS_RELIABLE_RELIABILITY_QOS.
DDS_ReliabilityQosPolicyKind DDS_ReliabilityQosPolicy::kind |
Kind of reliability.
[default] DDS_BEST_EFFORT_RELIABILITY_QOS
struct DDS_Duration_t DDS_ReliabilityQosPolicy::max_blocking_time |
The maximum time a receive thread may block if the reader is out of resources. This Qos policy is unsupported on the writer.
A non-zero maximum blocking time enables the receive thread to block up to the maximum blocking time if a DDS_DataReader is out of resources when new data arrives. This is useful when the history depth is equal to max_samples_per_instance and the application is using a combination of loan and waitsets or polling.
With a value of 0 the receive thread will not block.
[default] 0 on DDS_DataReader
[range] [0,1 year]