#include <TransportSendBuffer.h>
Inheritance diagram for OpenDDS::DCPS::TransportSendBuffer:
Public Types | |
typedef TransportSendStrategy::LockType | LockType |
Public Member Functions | |
size_t | capacity () const |
void | bind (TransportSendStrategy *strategy) |
virtual void | retain_all (RepoId pub_id)=0 |
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 &) |
Definition at line 35 of file TransportSendBuffer.h.
typedef std::pair<QueueType*, ACE_Message_Block*> OpenDDS::DCPS::TransportSendBuffer::BufferType [protected] |
Definition at line 54 of file TransportSendBuffer.h.
Definition at line 45 of file TransportSendBuffer.h.
typedef TransportSendStrategy::QueueType OpenDDS::DCPS::TransportSendBuffer::QueueType [protected] |
Definition at line 53 of file TransportSendBuffer.h.
OpenDDS::DCPS::TransportSendBuffer::TransportSendBuffer | ( | size_t | capacity | ) | [inline, explicit, protected] |
OpenDDS::DCPS::TransportSendBuffer::~TransportSendBuffer | ( | ) | [protected, virtual] |
OpenDDS::DCPS::TransportSendBuffer::TransportSendBuffer | ( | const TransportSendBuffer & | ) | [private] |
ACE_INLINE void OpenDDS::DCPS::TransportSendBuffer::bind | ( | TransportSendStrategy * | strategy | ) |
Definition at line 18 of file TransportSendBuffer.inl.
References strategy_.
Referenced by OpenDDS::DCPS::TransportSendStrategy::send_buffer().
00019 { 00020 this->strategy_ = strategy; 00021 }
ACE_INLINE size_t OpenDDS::DCPS::TransportSendBuffer::capacity | ( | ) | const |
Definition at line 12 of file TransportSendBuffer.inl.
References capacity_.
Referenced by OpenDDS::DCPS::TransportSendStrategy::start().
00013 { 00014 return this->capacity_; 00015 }
virtual void OpenDDS::DCPS::TransportSendBuffer::insert | ( | SequenceNumber | sequence, | |
TransportSendStrategy::QueueType * | queue, | |||
ACE_Message_Block * | chain | |||
) | [pure virtual] |
Implemented in OpenDDS::DCPS::SingleSendBuffer, and OpenDDS::DCPS::RtpsUdpDataLink::MultiSendBuffer.
Referenced by OpenDDS::DCPS::TransportSendStrategy::send_packet().
TransportSendBuffer& OpenDDS::DCPS::TransportSendBuffer::operator= | ( | const TransportSendBuffer & | ) | [private] |
void OpenDDS::DCPS::TransportSendBuffer::resend_one | ( | const BufferType & | buffer | ) | [protected] |
Definition at line 33 of file TransportSendBuffer.cpp.
References OpenDDS::DCPS::TransportSendStrategy::do_send_packet(), and strategy_.
Referenced by OpenDDS::DCPS::SingleSendBuffer::resend_fragments_i(), and OpenDDS::DCPS::SingleSendBuffer::resend_i().
00034 { 00035 int bp = 0; 00036 this->strategy_->do_send_packet(buffer.second, bp); 00037 }
virtual void OpenDDS::DCPS::TransportSendBuffer::retain_all | ( | RepoId | pub_id | ) | [pure virtual] |
Implemented in OpenDDS::DCPS::SingleSendBuffer, and OpenDDS::DCPS::RtpsUdpDataLink::MultiSendBuffer.
Referenced by OpenDDS::DCPS::TransportSendStrategy::remove_all_msgs().
LockType& OpenDDS::DCPS::TransportSendBuffer::strategy_lock | ( | ) | [inline] |
Definition at line 46 of file TransportSendBuffer.h.
Referenced by OpenDDS::DCPS::SingleSendBuffer::resend(), and OpenDDS::DCPS::RtpsUdpDataLink::send_nack_replies().
00046 { return this->strategy_->lock_; }
const size_t OpenDDS::DCPS::TransportSendBuffer::capacity_ [protected] |
Definition at line 59 of file TransportSendBuffer.h.
Referenced by capacity(), and OpenDDS::DCPS::SingleSendBuffer::check_capacity().