OpenSDN source code
|
#include <tcp_message_write.h>
Public Member Functions | |
TcpMessageWriter (TcpSession *session, size_t buffer_send_size) | |
~TcpMessageWriter () | |
int | Send (const uint8_t *msg, size_t len, boost::system::error_code *ec) |
int | AsyncSend (const uint8_t *msg, size_t len, boost::system::error_code *ec) |
bool | IsWritePending () const |
size_t | GetBufferQueueSize () const |
Static Public Attributes | |
static const int | kDefaultBufferSize = 4 * 1024 |
static const int | kDefaultWriteBufferSize = 32 * 1024 |
static const int | kMaxPendingBufferSize = 256 * 1024 |
static const int | kMinPendingBufferSize = 64 * 1024 |
Private Types | |
typedef boost::intrusive_ptr < TcpSession > | TcpSessionPtr |
typedef std::list < boost::asio::mutable_buffer > | BufferQueue |
Private Member Functions | |
void | BufferAppend (const uint8_t *data, int len) |
void | DeleteBuffer (boost::asio::mutable_buffer buffer) |
bool | UpdateBufferQueue (size_t wrote, bool *send_ready) |
void | TriggerAsyncWrite () |
Private Attributes | |
BufferQueue | buffer_queue_ |
size_t | offset_ |
size_t | last_write_ |
size_t | buffer_send_size_ |
TcpSession * | session_ |
Friends | |
class | TcpSession |
Definition at line 20 of file tcp_message_write.h.
|
private |
Definition at line 55 of file tcp_message_write.h.
|
private |
Definition at line 54 of file tcp_message_write.h.
TcpMessageWriter::TcpMessageWriter | ( | TcpSession * | session, |
size_t | buffer_send_size | ||
) |
Definition at line 25 of file tcp_message_write.cc.
TcpMessageWriter::~TcpMessageWriter | ( | ) |
int TcpMessageWriter::AsyncSend | ( | const uint8_t * | msg, |
size_t | len, | ||
boost::system::error_code * | ec | ||
) |
|
private |
Definition at line 122 of file tcp_message_write.cc.
|
private |
Definition at line 129 of file tcp_message_write.cc.
|
inline |
Definition at line 42 of file tcp_message_write.h.
|
inline |
Definition at line 38 of file tcp_message_write.h.
int TcpMessageWriter::Send | ( | const uint8_t * | msg, |
size_t | len, | ||
boost::system::error_code * | ec | ||
) |
|
private |
|
private |
|
friend |
Definition at line 53 of file tcp_message_write.h.
|
private |
Definition at line 62 of file tcp_message_write.h.
|
private |
Definition at line 65 of file tcp_message_write.h.
|
static |
Definition at line 22 of file tcp_message_write.h.
|
static |
Definition at line 23 of file tcp_message_write.h.
|
static |
Definition at line 24 of file tcp_message_write.h.
|
static |
Definition at line 25 of file tcp_message_write.h.
|
private |
Definition at line 64 of file tcp_message_write.h.
|
private |
Definition at line 63 of file tcp_message_write.h.
|
private |
Definition at line 66 of file tcp_message_write.h.