BLOCXX_NAMESPACE::ThreadCounter Class Reference

#include <ThreadCounter.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::ThreadCounter:

BLOCXX_NAMESPACE::IntrusiveCountableBase List of all members.

Public Member Functions

 ThreadCounter (Int32 maxThreads)
 ~ThreadCounter ()
void incThreadCount (UInt32 sTimeout, UInt32 usTimeout)
void decThreadCount ()
Int32 getThreadCount ()
void waitForAll (UInt32 sTimeout, UInt32 usTimeout)
void setMax (Int32 maxThreads)

Private Member Functions

 ThreadCounter (ThreadCounter const &)
ThreadCounteroperator= (ThreadCounter const &)

Private Attributes

Int32 m_maxThreads
Int32 m_runCount
NonRecursiveMutex m_runCountGuard
Condition m_runCountCondition

Detailed Description

Definition at line 53 of file ThreadCounter.hpp.


Constructor & Destructor Documentation

BLOCXX_NAMESPACE::ThreadCounter::ThreadCounter Int32  maxThreads  ) 
 

Definition at line 46 of file ThreadCounter.cpp.

BLOCXX_NAMESPACE::ThreadCounter::~ThreadCounter  ) 
 

Definition at line 50 of file ThreadCounter.cpp.

BLOCXX_NAMESPACE::ThreadCounter::ThreadCounter ThreadCounter const &   )  [private]
 


Member Function Documentation

void BLOCXX_NAMESPACE::ThreadCounter::decThreadCount  ) 
 

Definition at line 66 of file ThreadCounter.cpp.

References BLOCXX_ASSERT, m_runCount, m_runCountCondition, m_runCountGuard, and BLOCXX_NAMESPACE::Condition::notifyAll().

Int32 BLOCXX_NAMESPACE::ThreadCounter::getThreadCount  ) 
 

Definition at line 74 of file ThreadCounter.cpp.

References m_runCount, and m_runCountGuard.

void BLOCXX_NAMESPACE::ThreadCounter::incThreadCount UInt32  sTimeout,
UInt32  usTimeout
 

Definition at line 53 of file ThreadCounter.cpp.

References BLOCXX_THROW, m_maxThreads, m_runCount, m_runCountCondition, m_runCountGuard, and BLOCXX_NAMESPACE::Condition::timedWait().

ThreadCounter& BLOCXX_NAMESPACE::ThreadCounter::operator= ThreadCounter const &   )  [private]
 

void BLOCXX_NAMESPACE::ThreadCounter::setMax Int32  maxThreads  ) 
 

Definition at line 92 of file ThreadCounter.cpp.

References m_maxThreads, m_runCountCondition, m_runCountGuard, and BLOCXX_NAMESPACE::Condition::notifyAll().

void BLOCXX_NAMESPACE::ThreadCounter::waitForAll UInt32  sTimeout,
UInt32  usTimeout
 

Definition at line 80 of file ThreadCounter.cpp.

References BLOCXX_THROW, m_runCount, m_runCountCondition, m_runCountGuard, and BLOCXX_NAMESPACE::Condition::timedWait().


Member Data Documentation

Int32 BLOCXX_NAMESPACE::ThreadCounter::m_maxThreads [private]
 

Definition at line 66 of file ThreadCounter.hpp.

Referenced by incThreadCount(), and setMax().

Int32 BLOCXX_NAMESPACE::ThreadCounter::m_runCount [private]
 

Definition at line 67 of file ThreadCounter.hpp.

Referenced by decThreadCount(), getThreadCount(), incThreadCount(), and waitForAll().

Condition BLOCXX_NAMESPACE::ThreadCounter::m_runCountCondition [private]
 

Definition at line 69 of file ThreadCounter.hpp.

Referenced by decThreadCount(), incThreadCount(), setMax(), and waitForAll().

NonRecursiveMutex BLOCXX_NAMESPACE::ThreadCounter::m_runCountGuard [private]
 

Definition at line 68 of file ThreadCounter.hpp.

Referenced by decThreadCount(), getThreadCount(), incThreadCount(), setMax(), and waitForAll().


The documentation for this class was generated from the following files:
Generated on Fri Jun 16 15:39:12 2006 for blocxx by  doxygen 1.4.6