Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class 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 Member Functions

 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 Member Functions

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 Fri Nov 28 13:01:11 2008 for Go4-v3.04-1 by  doxygen 1.4.2