Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

TGo4Queue Class Reference

Base class for all threadsafe pointer queues. More...

#include <TGo4Queue.h>

Inheritance diagram for TGo4Queue:

TGo4BufferQueue TGo4ObjectQueue List of all members.

Public Methods

 TGo4Queue ()
 TGo4Queue (const char *name)
virtual ~TGo4Queue ()
virtual void Clear (Option_t *opt="")
virtual void Wake ()
Bool_t IsEmpty ()
Int_t GetEntries () const
void SetMaxEntries (Int_t max)

Protected Methods

TObject * Next ()
TObject * Wait ()
void Add (TObject *ob)

Private Attributes

TMutex * fxMutex
TCondition * fxCondition
TList * fxList
Int_t fiEntries
Int_t fiMaxEntries
Bool_t fbWakeUpCall

Detailed Description

Base class for all threadsafe pointer queues.

TObject pointers are transported in queue without streaming. Subclasses may specialize the behaviour on adding and waiting.

Author:
J. Adamczewski
Since:
13-Jul-2001

Definition at line 33 of file TGo4Queue.h.


Constructor & Destructor Documentation

TGo4Queue::TGo4Queue  
 

Definition at line 28 of file TGo4Queue.cxx.

References fxCondition, fxList, and fxMutex.

TGo4Queue::TGo4Queue const char *    name
 

Definition at line 37 of file TGo4Queue.cxx.

References fxCondition, fxList, and fxMutex.

TGo4Queue::~TGo4Queue   [virtual]
 

Definition at line 45 of file TGo4Queue.cxx.

References fxCondition, fxList, and fxMutex.


Member Function Documentation

void TGo4Queue::Clear Option_t *    opt = "" [virtual]
 

Reimplemented in TGo4BufferQueue.

Definition at line 52 of file TGo4Queue.cxx.

References fxList, and fxMutex.

Referenced by TGo4TaskHandler::ClearQueues(), and TGo4ClientTask::DisconnectServer().

void TGo4Queue::Wake   [virtual]
 

Definition at line 104 of file TGo4Queue.cxx.

References fbWakeUpCall, and fxCondition.

Referenced by TGo4TaskHandler::StopTransportThreads().

Bool_t TGo4Queue::IsEmpty  
 

Definition at line 98 of file TGo4Queue.cxx.

References fxList, and fxMutex.

Referenced by main(), TGo4Task::NextCommand(), TGo4ServerTask::NextCommand(), TGo4Task::NextObject(), TGo4Task::NextStatus(), and Wait().

Int_t TGo4Queue::GetEntries   const [inline]
 

Definition at line 48 of file TGo4Queue.h.

References fiEntries.

void TGo4Queue::SetMaxEntries Int_t    max [inline]
 

Definition at line 50 of file TGo4Queue.h.

References fiMaxEntries.

Referenced by TGo4TaskHandler::TGo4TaskHandler().

TObject * TGo4Queue::Next   [protected]
 

Definition at line 73 of file TGo4Queue.cxx.

References fxList, and fxMutex.

Referenced by TGo4BufferQueue::Clear(), and Wait().

TObject * TGo4Queue::Wait   [protected]
 

Definition at line 58 of file TGo4Queue.cxx.

References fbWakeUpCall, fxCondition, IsEmpty(), and Next().

Referenced by TGo4BufferQueue::WaitBuffer(), and TGo4ObjectQueue::WaitObject().

void TGo4Queue::Add TObject *    ob [protected]
 

Definition at line 79 of file TGo4Queue.cxx.

References fiMaxEntries, fxCondition, fxList, and fxMutex.

Referenced by TGo4BufferQueue::AddBuffer(), TGo4BufferQueue::AddBufferFromObject(), TGo4ObjectQueue::AddObject(), and TGo4ObjectQueue::AddObjectFromBuffer().


Member Data Documentation

TMutex* TGo4Queue::fxMutex [private]
 

Definition at line 60 of file TGo4Queue.h.

Referenced by Add(), Clear(), IsEmpty(), Next(), TGo4Queue(), and ~TGo4Queue().

TCondition* TGo4Queue::fxCondition [private]
 

Definition at line 61 of file TGo4Queue.h.

Referenced by Add(), TGo4Queue(), Wait(), Wake(), and ~TGo4Queue().

TList* TGo4Queue::fxList [private]
 

Definition at line 62 of file TGo4Queue.h.

Referenced by Add(), Clear(), IsEmpty(), Next(), TGo4Queue(), and ~TGo4Queue().

Int_t TGo4Queue::fiEntries [private]
 

Definition at line 63 of file TGo4Queue.h.

Referenced by GetEntries().

Int_t TGo4Queue::fiMaxEntries [private]
 

Definition at line 64 of file TGo4Queue.h.

Referenced by Add(), and SetMaxEntries().

Bool_t TGo4Queue::fbWakeUpCall [private]
 

Definition at line 65 of file TGo4Queue.h.

Referenced by Wait(), and Wake().


The documentation for this class was generated from the following files:
Generated on Tue Nov 8 10:56:52 2005 for Go4-v2.10-5 by doxygen1.2.15