OpenDDS
Snapshot(2023/04/07-19:43)
|
#include <TransportSendBuffer.h>
Public Types | |
typedef TransportSendStrategy::LockType | LockType |
Public Member Functions | |
size_t | capacity () const |
void | bind (TransportSendStrategy *strategy) |
virtual void | retain_all (const GUID_t &pub_id) |
virtual void | insert (SequenceNumber sequence, TransportSendStrategy::QueueType *queue, ACE_Message_Block *chain)=0 |
LockType & | strategy_lock () |
Protected Types | |
typedef TransportSendStrategy::QueueType | QueueType |
typedef std::pair< QueueType *, ACE_Message_Block * > | BufferType |
Protected Member Functions | |
TransportSendBuffer (size_t capacity) | |
virtual | ~TransportSendBuffer () |
void | resend_one (const BufferType &buffer) |
Protected Attributes | |
TransportSendStrategy * | strategy_ |
const size_t | capacity_ |
Private Member Functions | |
TransportSendBuffer (const TransportSendBuffer &) | |
TransportSendBuffer & | operator= (const TransportSendBuffer &) |
Abstract base class that forms the interface for TransportSendStrategy to store data for potential retransmission. Derived classes actually store the data and can utilize TransportSendBuffer's friendship in TransportSendStrategy to retransmit (see method "resend_one").
Definition at line 38 of file TransportSendBuffer.h.
|
protected |
Definition at line 57 of file TransportSendBuffer.h.
Definition at line 48 of file TransportSendBuffer.h.
Definition at line 56 of file TransportSendBuffer.h.
|
inlineexplicitprotected |
Definition at line 52 of file TransportSendBuffer.h.
|
protectedvirtual |
Definition at line 32 of file TransportSendBuffer.cpp.
|
private |
ACE_INLINE void OpenDDS::DCPS::TransportSendBuffer::bind | ( | TransportSendStrategy * | strategy | ) |
Definition at line 20 of file TransportSendBuffer.inl.
References ACE_INLINE, and strategy_.
Referenced by OpenDDS::DCPS::TransportSendStrategy::send_buffer().
ACE_INLINE size_t OpenDDS::DCPS::TransportSendBuffer::capacity | ( | void | ) | const |
Definition at line 14 of file TransportSendBuffer.inl.
References ACE_INLINE, and capacity_.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::associated(), and OpenDDS::DCPS::TransportSendStrategy::start().
|
pure virtual |
Implemented in OpenDDS::DCPS::RtpsUdpDataLink::MultiSendBuffer, and OpenDDS::DCPS::SingleSendBuffer.
Referenced by OpenDDS::DCPS::TransportSendStrategy::send_packet().
|
private |
|
protected |
Definition at line 42 of file TransportSendBuffer.cpp.
References OpenDDS::DCPS::TransportSendStrategy::do_send_packet(), strategy_, and OpenDDS::DCPS::SingleSendBuffer::UNLIMITED.
Referenced by OpenDDS::DCPS::SingleSendBuffer::resend_fragments_i(), and OpenDDS::DCPS::SingleSendBuffer::resend_i().
|
virtual |
Reimplemented in OpenDDS::DCPS::SingleSendBuffer.
Definition at line 37 of file TransportSendBuffer.cpp.
Referenced by OpenDDS::DCPS::TransportSendStrategy::remove_all_msgs().
|
inline |
Definition at line 49 of file TransportSendBuffer.h.
Referenced by OpenDDS::DCPS::SingleSendBuffer::resend().
|
protected |
Definition at line 62 of file TransportSendBuffer.h.
Referenced by capacity(), and OpenDDS::DCPS::SingleSendBuffer::check_capacity_i().
|
protected |
Definition at line 61 of file TransportSendBuffer.h.
Referenced by bind(), and resend_one().