Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class 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 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.
FixedBufferoperator= (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. 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.

virtual 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.

Implements 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.

Implements 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.

Implements ost::Buffer.

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


The documentation for this class was generated from the following file:
Generated on Sat May 12 17:58:27 2007 for GNU CommonC++ by  doxygen 1.3.9.1