Detailed Description
Public Member Functions |
| IOQueue () |
| IOQueue (class MemoryBlockPool *block_pool) |
| ~IOQueue () |
unsigned int | Size () const |
bool | Empty () const |
void | Write (const uint8_t *data, unsigned int length) |
unsigned int | Read (uint8_t *data, unsigned int length) |
unsigned int | Read (std::string *output, unsigned int length) |
unsigned int | Peek (uint8_t *data, unsigned int length) const |
struct iovec * | AsIOVec (int *io_count) const |
void | Pop (unsigned int n) |
void | AppendBlock (class MemoryBlock *block) |
void | Clear () |
void | Purge () |
void | Dump (std::ostream *output) |
Additional Inherited Members |
static void | FreeIOVec (const struct iovec *iov) |
Constructor & Destructor Documentation
ola::io::IOQueue::IOQueue |
( |
| ) |
|
IOQueue.
- Parameters
-
block_size | the size of blocks to use. |
ola::io::IOQueue::~IOQueue |
( |
| ) |
|
Member Function Documentation
void ola::io::IOQueue::AppendBlock |
( |
class MemoryBlock * |
block | ) |
|
Append an MemoryBlock to this queue. This may leave a hole in the last block before this method was called, but that's unavoidable without copying (which we don't want to do).
struct iovec * ola::io::IOQueue::AsIOVec |
( |
int * |
iocnt | ) |
const |
|
readvirtual |
Return this IOQueue as an array of iovec structures. Note: The iovec array points at internal memory structures. This array is invalidated when any non-const methods are called (Append, Pop etc.)
Is the IOQueue is empty, this will return NULL and set iocnt to 0.
Use FreeIOVec() to release the iovec array.
Implements ola::io::IOVecInterface.
void ola::io::IOQueue::Clear |
( |
| ) |
|
void ola::io::IOQueue::Dump |
( |
std::ostream * |
output | ) |
|
Dump this IOQueue as a human readable string
unsigned int ola::io::IOQueue::Peek |
( |
uint8_t * |
data, |
|
|
unsigned int |
n |
|
) |
| const |
Copy the first n bytes into the region pointed to by data
void ola::io::IOQueue::Pop |
( |
unsigned int |
n | ) |
|
|
virtual |
unsigned int ola::io::IOQueue::Read |
( |
uint8_t * |
data, |
|
|
unsigned int |
n |
|
) |
| |
|
virtual |
unsigned int ola::io::IOQueue::Read |
( |
std::string * |
output, |
|
|
unsigned int |
n |
|
) |
| |
|
virtual |
unsigned int ola::io::IOQueue::Size |
( |
| ) |
const |
|
virtual |
void ola::io::IOQueue::Write |
( |
const uint8_t * |
data, |
|
|
unsigned int |
length |
|
) |
| |
|
virtual |
The documentation for this class was generated from the following files:
- include/ola/io/IOQueue.h
- common/io/IOQueue.cpp