RTI Connext Micro C API
2.4.14.2
|
<<cert>> Indicates the level of reliability offered/requested by RTI Connext Micro. More...
Data Fields | |
DDS_ReliabilityQosPolicyKind | kind |
Kind of reliability. | |
struct DDS_Duration_t | max_blocking_time |
For a DDS_DataReader, the maximum time a receive thread may block to wait for resources. Unsupported on a DDS_DataWriter. |
<<cert>> Indicates the level of reliability offered/requested by RTI Connext 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 |
For a DDS_DataReader, the maximum time a receive thread may block to wait for resources. Unsupported on a DDS_DataWriter.
For a DDS_DataReader, a non-zero maximum blocking time enables the receive thread to block up to the maximum blocking time if the 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. If the maximum blocking value is 0 a receive thread will not block.
For DDS_DataWriter, only a maximum blocking time of 0 is supported. That is, a DDS_DataWriter will not block to wait for resources if the DDS_DataWriter is out of resources at the time of write.
DDS_DataReader [range] [0,1 year] [default] 0
DDS_DataWriter [range] [0,0] [default] 0