Class astutedds::rtps::ReliabilityManagerReader
ClassList > astutedds > rtps > ReliabilityManagerReader
Manages reliability protocol for a DataReader. More...
#include <reliability_manager.hpp>
Public Functions
| Type | Name |
|---|---|
| ReliabilityManagerReader (const GUID_t & reader_guid) Constructor. |
|
| void | add_writer (const GUID_t & writer_guid) Add a matched writer. |
| std::vector< uint8_t > | create_acknack (const GUID_t & writer_guid) Create ACKNACK submessage data. |
| std::set< uint32_t > | get_missing (const GUID_t & writer_guid) const Get missing sequence numbers for a writer. |
| void | mark_received (const GUID_t & writer_guid, const SequenceNumber_t & sequence_number) Mark a sequence number as received. |
| bool | process_heartbeat (const GUID_t & writer_guid, const SequenceNumber_t & first_sn, const SequenceNumber_t & last_sn, Count_t count, bool final) Process a HEARTBEAT message from a writer. |
| void | remove_writer (const GUID_t & writer_guid) Remove a matched writer. |
Detailed Description
Responsibilities: * Process HEARTBEAT messages * Send ACKNACK messages with missing sequence numbers * Track received samples * Detect missing samples
Public Functions Documentation
function ReliabilityManagerReader
Constructor.
explicit astutedds::rtps::ReliabilityManagerReader::ReliabilityManagerReader (
const GUID_t & reader_guid
)
Parameters:
reader_guidGUID of the local reader
function add_writer
Add a matched writer.
void astutedds::rtps::ReliabilityManagerReader::add_writer (
const GUID_t & writer_guid
)
Parameters:
writer_guidGUID of the remote writer
function create_acknack
Create ACKNACK submessage data.
std::vector< uint8_t > astutedds::rtps::ReliabilityManagerReader::create_acknack (
const GUID_t & writer_guid
)
Parameters:
writer_guidGUID of the writer
Returns:
ACKNACK submessage data, or empty if no ACKNACK needed
function get_missing
Get missing sequence numbers for a writer.
std::set< uint32_t > astutedds::rtps::ReliabilityManagerReader::get_missing (
const GUID_t & writer_guid
) const
Parameters:
writer_guidGUID of the writer
Returns:
Set of missing sequence numbers
function mark_received
Mark a sequence number as received.
void astutedds::rtps::ReliabilityManagerReader::mark_received (
const GUID_t & writer_guid,
const SequenceNumber_t & sequence_number
)
Parameters:
writer_guidGUID of the writersequence_numberSequence number received
function process_heartbeat
Process a HEARTBEAT message from a writer.
bool astutedds::rtps::ReliabilityManagerReader::process_heartbeat (
const GUID_t & writer_guid,
const SequenceNumber_t & first_sn,
const SequenceNumber_t & last_sn,
Count_t count,
bool final
)
Parameters:
writer_guidGUID of the writerfirst_snFirst available sequence numberlast_snLast available sequence numbercountHEARTBEAT countfinalTrue if this is the final HEARTBEAT
Returns:
True if ACKNACK should be sent
function remove_writer
Remove a matched writer.
void astutedds::rtps::ReliabilityManagerReader::remove_writer (
const GUID_t & writer_guid
)
Parameters:
writer_guidGUID of the remote writer
The documentation for this class was generated from the following file include/astutedds/rtps/reliability_manager.hpp