Developer Documentation
Centre for Vision, Speech & Signal Processing
USER IN NAMESPACE AMMA TREE ROOT AMMA SEARCH AMMA HOME
 

  PUBLIC
VPipeBase::VPipeBase(int)
VPipeBase::VPipeBase(const VPipeBase &)
VPipeBase::Dump(void) const
VPipeBase::N(void) const
VPipeBase::IsSpace(void) const
VPipeBase::IsEmpty(void) const
VPipeBase
 
Pipe base class.
 
include "amma/Thread/MsgPipe.hh"
User Level:Default
Library:VThreadComs
Example:ex3DCanvas.cc
Section:Utilities.Threads
In Scope:std

Comments:
SMALL OBJECT.

NB. There should only can be only ONE reader, thread! though there may be many writers.

Simple pipe, if no data present it will block. no limit to size of queue.

This class is exception safe.

Derived Classes: Variables:
VMutex Access;
Access control.

VSemaphore PutSema;
Used to limit the size of the queue.

VSemaphore Ready;
Used to signal queue is not empty.

const IntT maxSize;

IntT Head;

IntT Tail;

Methods:
VPipeBase(int nMaxSize = 10)
Default constructor.

VPipeBase(const VPipeBase &)
Not supported !

void Dump(void) const
Dump contents to stdout.

IntT N() const
Get size of pipe.

BooleanT IsSpace() const
Is space to data into ring ?

BooleanT IsEmpty() const
Is space to data into ring ?


Programmer:Charles Galambos, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001