OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::ReliableRecvTemplate< PACKET > Class Template Reference

#include <relrecv.hpp>

Collaboration diagram for openvpn::ReliableRecvTemplate< PACKET >:
[legend]

Classes

class  Message
 

Public Types

enum  { ACK_TO_SENDER = (1 << 0) , IN_WINDOW = (1 << 1) }
 
typedef reliable::id_t id_t
 

Public Member Functions

 OPENVPN_SIMPLE_EXCEPTION (rel_next_sequenced_not_ready)
 
 ReliableRecvTemplate ()
 
 ReliableRecvTemplate (const id_t span, id_t start_at=0)
 
void init (const id_t span, id_t start_at=0)
 
unsigned int receive (const PACKET &packet, const id_t id)
 
bool ready () const
 
Messagenext_sequenced ()
 
void advance ()
 

Private Attributes

MessageWindow< Message, id_twindow_
 

Detailed Description

template<typename PACKET>
class openvpn::ReliableRecvTemplate< PACKET >

Definition at line 25 of file relrecv.hpp.

Member Typedef Documentation

◆ id_t

template<typename PACKET >
typedef reliable::id_t openvpn::ReliableRecvTemplate< PACKET >::id_t

Definition at line 30 of file relrecv.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<typename PACKET >
anonymous enum
Enumerator
ACK_TO_SENDER 
IN_WINDOW 

Definition at line 52 of file relrecv.hpp.

Constructor & Destructor Documentation

◆ ReliableRecvTemplate() [1/2]

template<typename PACKET >
openvpn::ReliableRecvTemplate< PACKET >::ReliableRecvTemplate ( )
inline

Definition at line 37 of file relrecv.hpp.

◆ ReliableRecvTemplate() [2/2]

template<typename PACKET >
openvpn::ReliableRecvTemplate< PACKET >::ReliableRecvTemplate ( const id_t  span,
id_t  start_at = 0 
)
inline

Definition at line 40 of file relrecv.hpp.

Member Function Documentation

◆ advance()

template<typename PACKET >
void openvpn::ReliableRecvTemplate< PACKET >::advance ( )
inline

Definition at line 87 of file relrecv.hpp.

Here is the caller graph for this function:

◆ init()

template<typename PACKET >
void openvpn::ReliableRecvTemplate< PACKET >::init ( const id_t  span,
id_t  start_at = 0 
)
inline

Definition at line 45 of file relrecv.hpp.

Here is the caller graph for this function:

◆ next_sequenced()

template<typename PACKET >
Message & openvpn::ReliableRecvTemplate< PACKET >::next_sequenced ( )
inline

Definition at line 80 of file relrecv.hpp.

Here is the caller graph for this function:

◆ OPENVPN_SIMPLE_EXCEPTION()

template<typename PACKET >
openvpn::ReliableRecvTemplate< PACKET >::OPENVPN_SIMPLE_EXCEPTION ( rel_next_sequenced_not_ready  )

◆ ready()

template<typename PACKET >
bool openvpn::ReliableRecvTemplate< PACKET >::ready ( ) const
inline

Definition at line 73 of file relrecv.hpp.

Here is the caller graph for this function:

◆ receive()

template<typename PACKET >
unsigned int openvpn::ReliableRecvTemplate< PACKET >::receive ( const PACKET &  packet,
const id_t  id 
)
inline

Definition at line 57 of file relrecv.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ window_

template<typename PACKET >
MessageWindow<Message, id_t> openvpn::ReliableRecvTemplate< PACKET >::window_
private

Definition at line 93 of file relrecv.hpp.


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