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

  PUBLIC
MsgPipeBaseC::MsgPipeBaseC(int)
MsgPipeBaseC::MsgPipeBaseC(const MsgPipeBaseC &)
MsgPipeBaseC::Dump(void) const
MsgPipeBaseC::N(void) const
MsgPipeBaseC::IsSpace(void) const
MsgPipeBaseC::IsEmpty(void) const
MsgPipeBaseC
 
MsgPipe base class.
 
include "amma/PThread/MsgPipe.hh"
User Level:Default
Library:PThreadTools
Example:exChild.cc
Section:Utilities.Threads
In Scope:PThread

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:
MutexC Access;
Access control.

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

SemaphoreC Ready;
Used to signal queue is not empty.

const IntT maxSize;

IntT Head;

IntT Tail;

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

MsgPipeBaseC(const MsgPipeBaseC &)
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