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.
© 2015 RTI