casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
casa::ThreadCoordinatorBase Class Referenceabstract

#include <ThreadCoordinator.h>

Inheritance diagram for casa::ThreadCoordinatorBase:
casa::ThreadCoordinator< T >

Public Member Functions

virtual ~ThreadCoordinatorBase ()
 
void waitForWorkersToFinishTask ()
 

Protected Member Functions

 ThreadCoordinatorBase (casacore::Int nThreads, bool logStates)
 
void dispatchWork ()
 
void getToWork ()
 
virtual void installWorkInfo ()=0
 
bool waitForWork (const async::Thread *thisThread)
 
void waitForWorkersToReport ()
 

Protected Attributes

casacore::Int nThreads_p
 

Private Member Functions

void logState (const casacore::String &tag) const
 

Private Attributes

Barrierbarrier_p
 
bool logStates_p
 
async::Mutexmutex_p
 
volatile casacore::Int nThreadsAtBarrier_p
 
volatile casacore::Int nThreadsDispatched_p
 
volatile casacore::Bool readyForWork_p
 
async::ConditionstateChanged_p
 
volatile bool workCompleted_p
 const VisBuffer * vb_p; More...
 
volatile bool workToBeDone_p
 

Detailed Description

Definition at line 84 of file ThreadCoordinator.h.

Constructor & Destructor Documentation

virtual casa::ThreadCoordinatorBase::~ThreadCoordinatorBase ( )
virtual
casa::ThreadCoordinatorBase::ThreadCoordinatorBase ( casacore::Int  nThreads,
bool  logStates 
)
protected

Member Function Documentation

void casa::ThreadCoordinatorBase::dispatchWork ( )
protected
void casa::ThreadCoordinatorBase::getToWork ( )
protected
virtual void casa::ThreadCoordinatorBase::installWorkInfo ( )
protectedpure virtual
void casa::ThreadCoordinatorBase::logState ( const casacore::String tag) const
private
bool casa::ThreadCoordinatorBase::waitForWork ( const async::Thread thisThread)
protected
void casa::ThreadCoordinatorBase::waitForWorkersToFinishTask ( )
void casa::ThreadCoordinatorBase::waitForWorkersToReport ( )
protected

Member Data Documentation

Barrier* casa::ThreadCoordinatorBase::barrier_p
private

Definition at line 107 of file ThreadCoordinator.h.

bool casa::ThreadCoordinatorBase::logStates_p
private

Definition at line 108 of file ThreadCoordinator.h.

async::Mutex* casa::ThreadCoordinatorBase::mutex_p
private

Definition at line 109 of file ThreadCoordinator.h.

casacore::Int casa::ThreadCoordinatorBase::nThreads_p
protected
volatile casacore::Int casa::ThreadCoordinatorBase::nThreadsAtBarrier_p
private

Definition at line 110 of file ThreadCoordinator.h.

volatile casacore::Int casa::ThreadCoordinatorBase::nThreadsDispatched_p
private

Definition at line 111 of file ThreadCoordinator.h.

volatile casacore::Bool casa::ThreadCoordinatorBase::readyForWork_p
private

Definition at line 112 of file ThreadCoordinator.h.

async::Condition* casa::ThreadCoordinatorBase::stateChanged_p
private

Definition at line 113 of file ThreadCoordinator.h.

volatile bool casa::ThreadCoordinatorBase::workCompleted_p
private

const VisBuffer * vb_p;

Definition at line 115 of file ThreadCoordinator.h.

volatile bool casa::ThreadCoordinatorBase::workToBeDone_p
private

Definition at line 116 of file ThreadCoordinator.h.


The documentation for this class was generated from the following file: