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