A buffer class that holds a known capacity of fixed sized objects defined during creation.
More...
#include <buffer.h>
List of all members.
Public Member Functions |
| FixedBuffer (size_t capacity, size_t objsize) |
| Create a buffer of known capacity for objects of a specified size.
|
| FixedBuffer (const FixedBuffer &fb) |
| Create a copy of an existing fixed size buffer and duplicate it's contents.
|
virtual | ~FixedBuffer () |
| Destroy the fixed buffer and free the memory used to store objects.
|
FixedBuffer & | operator= (const FixedBuffer &fb) |
bool | isValid (void) |
Protected Member Functions |
size_t | onPeek (void *buf) |
| Return the first object in the buffer.
|
size_t | onWait (void *buf) |
| Wait for and return a fixed object in the buffer.
|
size_t | onPost (void *buf) |
| Post an object of the appropriate size into the buffer.
|
Detailed Description
A buffer class that holds a known capacity of fixed sized objects defined during creation.
- Author:
- David Sugar dyfet.nosp@m.@ost.nosp@m.el.co.nosp@m.m producer/consumer buffer for fixed size objects.
Constructor & Destructor Documentation
Create a buffer of known capacity for objects of a specified size.
- Parameters:
-
capacity | of the buffer. |
objsize | for each object held in the buffer. |
Create a copy of an existing fixed size buffer and duplicate it's contents.
- Parameters:
-
Destroy the fixed buffer and free the memory used to store objects.
Member Function Documentation
Return the first object in the buffer.
- Returns:
- predefined size of this buffers objects.
- Parameters:
-
buf | pointer to copy contents of head of buffer to. |
Implements ost::Buffer.
Post an object of the appropriate size into the buffer.
- Returns:
- predefined size of this buffers objects.
- Parameters:
-
buf | pointer to data to copy into the buffer. |
Implements ost::Buffer.
Wait for and return a fixed object in the buffer.
- Returns:
- predefined size of this buffers objects.
- Parameters:
-
buf | pointer to hold object returned from the buffer. |
Implements ost::Buffer.
The documentation for this class was generated from the following file: