DDS samples can be acknowledged one at a time, or as a group.
To explicitly acknowledge a single DDS sample:
DDS_ReturnCode_t acknowledge_sample ( const DDS_SampleInfo & sample_info); DDS_ReturnCode_t acknowledge_sample ( const DDS_SampleInfo & sample_info, const DDS_AckResponseData_t & response_data);
Or you may acknowledge all previously accessed DDS samples by calling:
DDS_ReturnCode_t DDSDataReader::acknowledge_all () DDS_ReturnCode_t DDSDataReader::acknowledge_all ( const DDS_AckResponseData_t & response_data)
Where:
sample_info |
is of type DDS_SampleInfo, identifying the DDS sample being acknowledged |
response_data |
is response data sent to the DataWriter upon acknowledgment |
These operations can only be used when the DataReader’sRELIABILITY QosPolicy has an acknowledgment_kind set to DDS_APPLICATION_EXPLICIT_ACKNOWLEDGMENT_MODE. You must also set max_app_ack_response_length (in the DATA_READER_RESOURCE_LIMITS QosPolicy (DDS Extension)) to a value greater than zero.
See also: Application Acknowledgment and Guaranteed Delivery of Data.
© 2017 RTI