Geant4  10.03
G4MTBarrier Class Reference

#include <G4MTBarrier.hh>

Public Member Functions

 G4MTBarrier ()
 
virtual ~G4MTBarrier ()
 
 G4MTBarrier (const G4MTBarrier &)=delete
 
G4MTBarrieroperator= (const G4MTBarrier &)=delete
 
 G4MTBarrier (unsigned int numThreads)
 
void ThisWorkerReady ()
 
virtual void WaitForReadyWorkers ()
 
void SetActiveThreads (unsigned int val)
 
void ResetCounter ()
 
unsigned int GetCounter ()
 
void Wait ()
 
void ReleaseBarrier ()
 
void Wait (unsigned int numt)
 

Private Attributes

unsigned int m_numActiveThreads
 
unsigned int m_counter
 
G4Mutex m_mutex
 
G4Condition m_counterChanged
 
G4Condition m_continue
 

Detailed Description

Definition at line 128 of file G4MTBarrier.hh.

Constructor & Destructor Documentation

G4MTBarrier::G4MTBarrier ( )
inline

Definition at line 131 of file G4MTBarrier.hh.

virtual G4MTBarrier::~G4MTBarrier ( )
inlinevirtual

Definition at line 132 of file G4MTBarrier.hh.

G4MTBarrier::G4MTBarrier ( const G4MTBarrier )
delete
G4MTBarrier::G4MTBarrier ( unsigned int  numThreads)

Definition at line 38 of file G4MTBarrier.cc.

Member Function Documentation

unsigned int G4MTBarrier::GetCounter ( )

Definition at line 116 of file G4MTBarrier.cc.

References m_counter, and m_mutex.

G4MTBarrier& G4MTBarrier::operator= ( const G4MTBarrier )
delete
void G4MTBarrier::ReleaseBarrier ( )

Definition at line 97 of file G4MTBarrier.cc.

References G4CONDITIONBROADCAST, m_continue, m_counter, and m_mutex.

Referenced by G4MTRunManager::NewActionRequest(), G4MTRunManager::WaitForEndEventLoopWorkers(), G4MTRunManager::WaitForReadyWorkers(), and WaitForReadyWorkers().

+ Here is the caller graph for this function:

void G4MTBarrier::ResetCounter ( )

Definition at line 111 of file G4MTBarrier.cc.

References m_counter, and m_mutex.

Referenced by G4MTRunManager::WaitForEndEventLoopWorkers(), and G4MTRunManager::WaitForReadyWorkers().

+ Here is the caller graph for this function:

void G4MTBarrier::SetActiveThreads ( unsigned int  val)
inline

Definition at line 142 of file G4MTBarrier.hh.

References m_numActiveThreads.

Referenced by G4MTRunManager::RequestWorkersProcessCommandsStack(), and Wait().

+ Here is the caller graph for this function:

void G4MTBarrier::ThisWorkerReady ( )

Definition at line 51 of file G4MTBarrier.cc.

References G4CONDITIONBROADCAST, G4CONDITIONWAIT, m_continue, m_counter, m_counterChanged, and m_mutex.

Referenced by G4MTRunManager::ThisWorkerEndEventLoop(), G4MTRunManager::ThisWorkerProcessCommandsStackDone(), G4MTRunManager::ThisWorkerReady(), and G4MTRunManager::ThisWorkerWaitForNextAction().

+ Here is the caller graph for this function:

void G4MTBarrier::Wait ( )

Definition at line 73 of file G4MTBarrier.cc.

References G4CONDITIONWAIT, m_counter, m_counterChanged, m_mutex, and m_numActiveThreads.

Referenced by G4MTRunManager::NewActionRequest(), Wait(), G4MTRunManager::WaitForEndEventLoopWorkers(), G4MTRunManager::WaitForReadyWorkers(), and WaitForReadyWorkers().

+ Here is the caller graph for this function:

void G4MTBarrier::Wait ( unsigned int  numt)
inline

Definition at line 147 of file G4MTBarrier.hh.

References SetActiveThreads(), and Wait().

+ Here is the call graph for this function:

void G4MTBarrier::WaitForReadyWorkers ( )
virtual

Definition at line 104 of file G4MTBarrier.cc.

References ReleaseBarrier(), and Wait().

Referenced by G4MTRunManager::RequestWorkersProcessCommandsStack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4Condition G4MTBarrier::m_continue
private

Definition at line 156 of file G4MTBarrier.hh.

Referenced by ReleaseBarrier(), and ThisWorkerReady().

unsigned int G4MTBarrier::m_counter
private

Definition at line 153 of file G4MTBarrier.hh.

Referenced by GetCounter(), ReleaseBarrier(), ResetCounter(), ThisWorkerReady(), and Wait().

G4Condition G4MTBarrier::m_counterChanged
private

Definition at line 155 of file G4MTBarrier.hh.

Referenced by ThisWorkerReady(), and Wait().

G4Mutex G4MTBarrier::m_mutex
private

Definition at line 154 of file G4MTBarrier.hh.

Referenced by GetCounter(), ReleaseBarrier(), ResetCounter(), ThisWorkerReady(), and Wait().

unsigned int G4MTBarrier::m_numActiveThreads
private

Definition at line 152 of file G4MTBarrier.hh.

Referenced by SetActiveThreads(), and Wait().


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