Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

ost::FixedBuffer Class Reference

A buffer class that holds a known capacity of fixed sized objects defined during creation. producer/consumer buffer for fixed size objects. More...

#include <buffer.h>

Inheritance diagram for ost::FixedBuffer::

ost::Buffer ost::Conditional List of all members.

Public Methods

 FixedBuffer (size_t capacity, size_t objsize)
 Create a buffer of known capacity for objects of a specified size. More...

 FixedBuffer (const FixedBuffer &fb)
 Create a copy of an existing fixed size buffer and duplicate it's contents. More...

virtual ~FixedBuffer ()
 Destroy the fixed buffer and free the memory used to store objects. More...

FixedBuffer& operator= (const FixedBuffer &fb)
bool isValid (void)

Protected Methods

size_t onPeek (void *buf)
 Return the first object in the buffer. More...

size_t onWait (void *buf)
 Wait for and return a fixed object in the buffer. More...

size_t onPost (void *buf)
 Post an object of the appropriate size into the buffer. More...


Detailed Description

A buffer class that holds a known capacity of fixed sized objects defined during creation. producer/consumer buffer for fixed size objects.

Author:
David Sugar <dyfet@ostel.com>


Constructor & Destructor Documentation

ost::FixedBuffer::FixedBuffer ( size_t capacity,
size_t objsize )
 

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.

ost::FixedBuffer::FixedBuffer ( const FixedBuffer & fb )
 

Create a copy of an existing fixed size buffer and duplicate it's contents.

Parameters:
fb   existing FixedBuffer object.

ost::FixedBuffer::~FixedBuffer ( ) [virtual]
 

Destroy the fixed buffer and free the memory used to store objects.


Member Function Documentation

bool ost::FixedBuffer::isValid ( void ) [virtual]
 

Reimplemented from ost::Buffer.

size_t ost::FixedBuffer::onPeek ( void * buf ) [protected, virtual]
 

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.

Reimplemented from ost::Buffer.

size_t ost::FixedBuffer::onPost ( void * buf ) [protected, virtual]
 

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.

Reimplemented from ost::Buffer.

size_t ost::FixedBuffer::onWait ( void * buf ) [protected, virtual]
 

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.

Reimplemented from ost::Buffer.

FixedBuffer & ost::FixedBuffer::operator= ( const FixedBuffer & fb )
 


The documentation for this class was generated from the following file:
Generated at Fri May 30 14:51:02 2008 for GNU CommonC++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001