Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - OS - Threads - SemaphoreRC
 

  PUBLIC
SemaphoreRC::SemaphoreRC(void)
SemaphoreRC::SemaphoreRC(IntT)
SemaphoreRC::Wait(void)
SemaphoreRC::TryWait(void)
SemaphoreRC::Post(void)
SemaphoreRC::Count(void) const
SemaphoreRC::Dummy(void)
RCWrapC::Body(void)
RCWrapC::Body(void) const
RCWrapC::Copy(void) const
RCWrapC::Data(void)
RCWrapC::Data(void) const
RCWrapC::operator DataT &(void)
RCWrapC::operator const DataT &(void) const
RCWrapAbstractC::Body(void)
RCWrapAbstractC::Body(void) const
RCWrapAbstractC::DataType(void) const
RCHandleVC::Body(void) const
RCHandleVC::Body(void)
RCHandleVC::Save(ostream &) const
RCHandleVC::Save(BinOStreamC &) const
RCHandleVC::Abstract(void)
RCHandleVC::operator >>(istream &,RCHandleVC &)
RCHandleVC::operator >>(BinIStreamC &,RCHandleVC &)
RCHandleC::operator =(const RCHandleC &)
RCHandleC::DeepCopy(UIntT) const
RCHandleC::operator ==(const RCHandleC &) const
RCHandleC::operator !=(const RCHandleC &) const
RCHandleC::Hash(void) const
RCHandleC::IsValid(void) const
RCHandleC::Invalidate(void)
RCHandleC::IsHandleType(const DT &) const
RCHandleC::CheckHandleType(const DT &) const
RCHandleC::Body(void)
RCHandleC::Body(void) const
RCHandleC::References(void) const
RCHandleC::operator <<(ostream &,const RCHandleC &)
RCHandleC::operator >>(istream &,RCHandleC &)

   SemaphoreRC   
 
Reference counted semaphore.
 
include "Ravl/Threads/SemaphoreRC.hh"
Created:22/11/1999 
Source file:Ravl/OS/Threads/Posix/SemaphoreRC.hh
User Level:Normal
Library:RavlThreads
In Scope:RavlN

Parent Classes: Methods:
SemaphoreRC()
Default constructor.
Creates an invalid handle.

SemaphoreRC(IntT count)
Default constructor.
Creates an invalid handle.

bool Wait()
Wait for semaphore.

bool TryWait()
Try and wait for semaphore

bool Post()
Post a semaphore.

int Count(void) const
Read semaphore count.

void Dummy(void)
Just to give it a file.

#include "Ravl/RCWrap.hh"
RCWrapBodyC<SemaphoreC> & Body()
Body access.

const RCWrapBodyC<SemaphoreC> & Body() const
Constant body access.

RCWrapC<SemaphoreC> Copy() const
Make a copy of this handle.
NB. This assumes the wrapped object is SMALL, and so just using the copy constructor is sufficent.

SemaphoreC & Data()
Access data.

const SemaphoreC & Data() const
Access data.

operator SemaphoreC &()
Default conversion to data type.

operator const SemaphoreC &() const
Default conversion to data type.

RCWrapBaseBodyC & Body()
Access body of object.

const RCWrapBaseBodyC & Body() const
Access body of object.

const type_info & DataType() const
Get type of wrapped object.

#include "Ravl/RCHandleV.hh"
const RCWrapBaseBodyC & Body() const
Constant access to body of object.

RCWrapBaseBodyC & Body()
Constant access to body of object.

bool Save(ostream & out) const
Save to stream 'out'.

bool Save(BinOStreamC & out) const
Save to binary stream 'out'.

RCAbstractC Abstract()
Create an abstract handle.

istream & operator >>(istream & strm,RCHandleVC<RCWrapBaseBodyC> & obj)

BinIStreamC & operator >>(BinIStreamC & strm,RCHandleVC<RCWrapBaseBodyC> & obj)

#include "Ravl/RefCounter.hh"
const RCHandleC<RCWrapBaseBodyC> & operator =(const RCHandleC<RCWrapBaseBodyC> & oth)
Assign handle.

RCHandleC<RCWrapBaseBodyC> DeepCopy(UIntT levels = ((UIntT))) const
Do a deep copy of the object.

bool operator ==(const RCHandleC<RCWrapBaseBodyC> & oth) const
Are handles to the same object ?

bool operator !=(const RCHandleC<RCWrapBaseBodyC> & oth) const
Are handles to different objects ?

UIntT Hash() const
Default hash function.
This hashes on the address of the body.

bool IsValid() const
Test if this is a valid handle.

void Invalidate()
Invalidate this handle.
Unattaches the body from the handle.

bool IsHandleType(const DT &) const
Is handle of given type ?

void CheckHandleType(const DT & dummy) const
Check handle type. Throw an expception if not.

RCWrapBaseBodyC & Body()
Access body of object.

const RCWrapBaseBodyC & Body() const
Constant access to body of object.

UIntT References() const
Find the number of references to the body of this object.

ostream & operator <<(ostream & strm,const RCHandleC<RCWrapBaseBodyC> & obj)

istream & operator >>(istream & strm,RCHandleC<RCWrapBaseBodyC> & obj)


Maintainer:Charles Galambos, Created: 22/11/1999, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002