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_guid GUID of the local reader

function add_writer

Add a matched writer.

void astutedds::rtps::ReliabilityManagerReader::add_writer (
    const GUID_t & writer_guid
) 

Parameters:

  • writer_guid GUID 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_guid GUID 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_guid GUID 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_guid GUID of the writer
  • sequence_number Sequence 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_guid GUID of the writer
  • first_sn First available sequence number
  • last_sn Last available sequence number
  • count HEARTBEAT count
  • final True 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_guid GUID of the remote writer


The documentation for this class was generated from the following file include/astutedds/rtps/reliability_manager.hpp