ITCHCPP 1.6.1
High-Performance NASDAQ TotalView-ITCH 5.0 Parser & Market-Data Platform
Loading...
Searching...
No Matches
itch::transport::RetransmitRequester Class Referenceabstract

Abstract hook a caller implements to drive recovery against a replay or retransmission service when a sequence gap is detected. More...

#include <sequencing.hpp>

Public Member Functions

 RetransmitRequester ()=default
 Constructs a requester with no state.
 
 RetransmitRequester (const RetransmitRequester &)=default
 Copy-constructs a requester.
 
 RetransmitRequester (RetransmitRequester &&) noexcept=default
 Move-constructs a requester.
 
auto operator= (const RetransmitRequester &) -> RetransmitRequester &=default
 Copy-assigns a requester.
 
auto operator= (RetransmitRequester &&) noexcept -> RetransmitRequester &=default
 Move-assigns a requester.
 
virtual ~RetransmitRequester ()=default
 Destroys the requester.
 
virtual auto request_retransmit (std::string_view session, std::uint64_t start_sequence, std::uint64_t count) -> void=0
 Requests retransmission of count messages starting at sequence start_sequence for the given session.
 

Detailed Description

Abstract hook a caller implements to drive recovery against a replay or retransmission service when a sequence gap is detected.

The library never performs network I/O itself: when SequenceTracker sees a gap it calls request_retransmit, and the caller is responsible for issuing the actual re-request (for example a SoupBinTCP/MoldUDP64 rewind request) and feeding the recovered messages back through the decoder.

Definition at line 30 of file sequencing.hpp.

Constructor & Destructor Documentation

◆ RetransmitRequester() [1/3]

itch::transport::RetransmitRequester::RetransmitRequester ( )
default

Constructs a requester with no state.

◆ RetransmitRequester() [2/3]

itch::transport::RetransmitRequester::RetransmitRequester ( const RetransmitRequester )
default

Copy-constructs a requester.

Parameters
otherThe requester to copy.

◆ RetransmitRequester() [3/3]

itch::transport::RetransmitRequester::RetransmitRequester ( RetransmitRequester &&  )
defaultnoexcept

Move-constructs a requester.

Parameters
otherThe requester to move from.

◆ ~RetransmitRequester()

virtual itch::transport::RetransmitRequester::~RetransmitRequester ( )
virtualdefault

Destroys the requester.

Member Function Documentation

◆ operator=() [1/2]

auto itch::transport::RetransmitRequester::operator= ( const RetransmitRequester ) -> RetransmitRequester &=default
default

Copy-assigns a requester.

Parameters
otherThe requester to copy.
Returns
Reference to this requester.

◆ operator=() [2/2]

auto itch::transport::RetransmitRequester::operator= ( RetransmitRequester &&  ) -> RetransmitRequester &=default
defaultnoexcept

Move-assigns a requester.

Parameters
otherThe requester to move from.
Returns
Reference to this requester.

◆ request_retransmit()

virtual auto itch::transport::RetransmitRequester::request_retransmit ( std::string_view  session,
std::uint64_t  start_sequence,
std::uint64_t  count 
) -> void
pure virtual

Requests retransmission of count messages starting at sequence start_sequence for the given session.

Parameters
sessionThe session identifier the gap was observed on.
start_sequenceThe first missing sequence number to retransmit.
countThe number of missing messages to retransmit.

The documentation for this class was generated from the following file: