SpiecsEngine
 
Loading...
Searching...
No Matches
Spices::Net::Buffer Class Reference

Wrapper of readwrite buffer. More...

#include <Buffer.h>

Public Member Functions

 Buffer (size_t bytes=initialSize)
 Constructor Function.
 
virtual ~Buffer ()=default
 Destructor Function.
 
size_t ReadableBytes () const
 Get readable area bytes.
 
size_t WriteableBytes () const
 Get writeable area bytes.
 
size_t HeaderBytes () const
 Get header area bytes.
 
const char * Peek () const
 Get read area start pointer.
 
void Retrieve (size_t len)
 Retrieve some buffer data from data area.
 
void RetrieveAll ()
 Retrieve all buffer data.
 
std::string RetrieveAllAsString ()
 Get readable area data as string.
 
std::string RetrieveAsString (size_t len)
 Get retrieve area data as string.
 
void EnsureWriteableBytes (size_t len)
 Ensure enough bytes to write.
 
void Append (const std::string &msg)
 Append Message to this buffer.
 
void Append (const char *data, size_t len)
 Append another buffer data.
 
char * BeginWrite ()
 Get writeable area pointer.
 
const char * BeginWrite () const
 Get writeable area pointer.
 
size_t ReadFd (SOCKET fd, int *saveErrno)
 Read from Socket.
 
size_t WriteFd (SOCKET fd, int *saveErrno) const
 Write to Socket.
 

Static Public Attributes

static constexpr size_t header = 8
 
static constexpr size_t initialSize = 1024
 

Private Member Functions

char * Begin ()
 Get Buffer start pointer.
 
const char * Begin () const
 Get Buffer start pointer.
 
void expend (size_t len)
 Expend buffer size.
 

Private Attributes

std::vector< char > m_Buffer
 Buffer data.
 
size_t m_ReaderIndex
 Reader pointer.
 
size_t m_WriterIndex
 Writer pointer.
 

Detailed Description

Wrapper of readwrite buffer.

Definition at line 18 of file Buffer.h.


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