Geant4  10.00.p02
G4TemplateAutoLock< M, L, U > Class Template Reference

#include <G4AutoLock.hh>

+ Inheritance diagram for G4TemplateAutoLock< M, L, U >:
+ Collaboration diagram for G4TemplateAutoLock< M, L, U >:

Public Member Functions

 G4TemplateAutoLock (M *mtx, L l, U u)
 
virtual ~G4TemplateAutoLock ()
 
void unlock ()
 
void lock ()
 

Private Member Functions

 G4TemplateAutoLock (const G4TemplateAutoLock &rhs)
 
G4TemplateAutoLockoperator= (const G4TemplateAutoLock &rhs)
 

Private Attributes

G4bool locked
 
M * _m
 
L _l
 
_u
 

Detailed Description

template<class M, typename L, typename U>
class G4TemplateAutoLock< M, L, U >

Definition at line 68 of file G4AutoLock.hh.

Constructor & Destructor Documentation

template<class M, typename L, typename U>
G4TemplateAutoLock< M, L, U >::G4TemplateAutoLock ( M *  mtx,
L  l,
u 
)
inline

Definition at line 72 of file G4AutoLock.hh.

template<class M, typename L, typename U>
virtual G4TemplateAutoLock< M, L, U >::~G4TemplateAutoLock ( )
inlinevirtual

Definition at line 77 of file G4AutoLock.hh.

template<class M, typename L, typename U>
G4TemplateAutoLock< M, L, U >::G4TemplateAutoLock ( const G4TemplateAutoLock< M, L, U > &  rhs)
private

Member Function Documentation

template<class M, typename L, typename U>
void G4TemplateAutoLock< M, L, U >::lock ( )
inline

Definition at line 88 of file G4AutoLock.hh.

Referenced by G4TemplateAutoLock< G4Mutex, thread_lock, thread_unlock >::G4TemplateAutoLock(), G4InuclNuclei::makeNuclearFragment(), G4PenelopeRayleighModel::SampleSecondaries(), and G4MTRunManagerKernel::StartThread().

+ Here is the caller graph for this function:

template<class M, typename L, typename U>
G4TemplateAutoLock& G4TemplateAutoLock< M, L, U >::operator= ( const G4TemplateAutoLock< M, L, U > &  rhs)
private
template<class M, typename L, typename U>
void G4TemplateAutoLock< M, L, U >::unlock ( )
inline

Definition at line 82 of file G4AutoLock.hh.

Referenced by G4GeometryWorkspace::CloneParameterisedSolids(), G4GeometryWorkspace::CloneReplicaSolid(), G4PenelopeGammaConversionModel::ComputeCrossSectionPerAtom(), G4PenelopeRayleighModel::ComputeCrossSectionPerAtom(), G4PenelopePhotoElectricModel::ComputeCrossSectionPerAtom(), G4PenelopeIonisationModel::ComputeDEDXPerVolume(), G4WorkerRunManager::ConstructScoringWorlds(), G4PenelopeIonisationModel::CrossSectionPerVolume(), G4ChipsKaonMinusElasticXS::G4ChipsKaonMinusElasticXS(), G4ChipsKaonPlusElasticXS::G4ChipsKaonPlusElasticXS(), G4ChipsKaonPlusInelasticXS::G4ChipsKaonPlusInelasticXS(), G4PenelopeBremsstrahlungModel::GetCrossSectionTableForCouple(), G4LivermoreRayleighModel::InitialiseForElement(), G4LivermoreGammaConversionModel::InitialiseForElement(), G4LivermoreComptonModel::InitialiseForElement(), G4LivermoreBremsstrahlungModel::InitialiseForElement(), G4LivermorePhotoElectricModel::InitialiseForElement(), G4RunManagerKernel::InitializePhysics(), G4DNAChemistryManager::Instance(), G4InuclNuclei::makeNuclearFragment(), G4MTRunManager::NewActionRequest(), G4PenelopeGammaConversionModel::SampleSecondaries(), G4PenelopeRayleighModel::SampleSecondaries(), G4MTRunManagerKernel::StartThread(), G4XmlAnalysisManager::WriteH1(), G4RootAnalysisManager::WriteH1(), G4XmlAnalysisManager::WriteH2(), G4RootAnalysisManager::WriteH2(), and G4TemplateAutoLock< G4Mutex, thread_lock, thread_unlock >::~G4TemplateAutoLock().

+ Here is the caller graph for this function:

Member Data Documentation

template<class M, typename L, typename U>
L G4TemplateAutoLock< M, L, U >::_l
private
template<class M, typename L, typename U>
M* G4TemplateAutoLock< M, L, U >::_m
private
template<class M, typename L, typename U>
U G4TemplateAutoLock< M, L, U >::_u
private
template<class M, typename L, typename U>
G4bool G4TemplateAutoLock< M, L, U >::locked
private

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