ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4MTBarrier Class Reference

#include <geant4/tree/geant4-10.6-release/source/global/management/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 124 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 124 of file G4MTBarrier.hh

Constructor & Destructor Documentation

G4MTBarrier::G4MTBarrier ( )
inline

Definition at line 127 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 127 of file G4MTBarrier.hh

virtual G4MTBarrier::~G4MTBarrier ( )
inlinevirtual

Definition at line 128 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 128 of file G4MTBarrier.hh

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

Definition at line 39 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 39 of file G4MTBarrier.cc

Member Function Documentation

unsigned int G4MTBarrier::GetCounter ( )

Definition at line 87 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 87 of file G4MTBarrier.cc

References m_counter, and m_mutex.

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

Definition at line 68 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 68 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 82 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 82 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 138 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 138 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 44 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 44 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 55 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 55 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 143 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 143 of file G4MTBarrier.hh

References SetActiveThreads(), and Wait().

+ Here is the call graph for this function:

void G4MTBarrier::WaitForReadyWorkers ( )
virtual

Definition at line 75 of file G4MTBarrier.cc.

View newest version in sPHENIX GitHub at line 75 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 152 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 152 of file G4MTBarrier.hh

Referenced by ReleaseBarrier(), and ThisWorkerReady().

unsigned int G4MTBarrier::m_counter
private

Definition at line 149 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 149 of file G4MTBarrier.hh

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

G4Condition G4MTBarrier::m_counterChanged
private

Definition at line 151 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 151 of file G4MTBarrier.hh

Referenced by ThisWorkerReady(), and Wait().

G4Mutex G4MTBarrier::m_mutex
private

Definition at line 150 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 150 of file G4MTBarrier.hh

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

unsigned int G4MTBarrier::m_numActiveThreads
private

Definition at line 148 of file G4MTBarrier.hh.

View newest version in sPHENIX GitHub at line 148 of file G4MTBarrier.hh

Referenced by SetActiveThreads(), and Wait().


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