Geant4  10.02
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
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(), G4PDefSplitter< T >::CreateSubInstance(), G4VUPLSplitter< T >::CreateSubInstance(), G4PenelopeIonisationModel::CrossSectionPerVolume(), G4DNAChemistryManager::DeleteInstance(), G4MolecularConfiguration::DeleteManager(), G4ChipsKaonMinusElasticXS::G4ChipsKaonMinusElasticXS(), G4ChipsKaonPlusElasticXS::G4ChipsKaonPlusElasticXS(), G4ChipsKaonPlusInelasticXS::G4ChipsKaonPlusInelasticXS(), G4ElasticHadrNucleusHE::G4ElasticHadrNucleusHE(), G4MTRunManagerKernel::G4MTRunManagerKernel(), G4SPSEneDistribution::GenEpnHistEnergies(), G4SPSEneDistribution::GenerateBbodyEnergies(), G4SPSAngDistribution::GenerateUserDefPhi(), G4SPSAngDistribution::GenerateUserDefTheta(), G4SPSEneDistribution::GenUserHistEnergies(), G4PenelopeBremsstrahlungModel::GetCrossSectionTableForCouple(), G4LatticeManager::GetLatticeManager(), G4MolecularConfiguration::GetManager(), G4CSGSolid::GetPolyhedron(), G4BooleanSolid::GetPolyhedron(), G4VCSGfaceted::GetPolyhedron(), G4EllipticalTube::GetPolyhedron(), G4VTwistedFaceted::GetPolyhedron(), G4Ellipsoid::GetPolyhedron(), G4Tet::GetPolyhedron(), G4Hype::GetPolyhedron(), G4TwistedTubs::GetPolyhedron(), G4Paraboloid::GetPolyhedron(), G4GenericTrap::GetPolyhedron(), G4EllipticalCone::GetPolyhedron(), G4TessellatedSolid::GetPolyhedron(), HadrontherapyElectricTabulatedField3D::HadrontherapyElectricTabulatedField3D(), HadrontherapyMagneticField3D::HadrontherapyMagneticField3D(), G4LivermoreRayleighModel::InitialiseForElement(), G4BoldyshevTripletModel::InitialiseForElement(), G4LivermoreNuclearGammaConversionModel::InitialiseForElement(), G4LivermoreGammaConversionModel::InitialiseForElement(), G4LivermorePolarizedGammaConversionModel::InitialiseForElement(), G4LivermoreGammaConversionModelRC::InitialiseForElement(), G4LivermoreComptonModel::InitialiseForElement(), G4LivermorePolarizedRayleighModel::InitialiseForElement(), G4LivermorePolarizedComptonModel::InitialiseForElement(), G4LivermorePolarizedPhotoElectricGDModel::InitialiseForElement(), G4LivermoreBremsstrahlungModel::InitialiseForElement(), G4LivermorePhotoElectricModel::InitialiseForElement(), G4LivermorePolarizedPhotoElectricModel::InitialiseForElement(), G4LowEPComptonModel::InitialiseForElement(), G4LowEPPolarizedComptonModel::InitialiseForElement(), G4RunManagerKernel::InitializePhysics(), G4MolecularConfiguration::G4MolecularConfigurationManager::Insert(), G4DNAChemistryManager::Instance(), G4InuclNuclei::makeNuclearFragment(), G4ITTrackHolder::MasterInstance(), G4ParameterManager::Merge(), G4MTRunManager::NewActionRequest(), PurgMagTabulatedField3D::PurgMagTabulatedField3D(), G4ITTrackHolder::PushToMaster(), G4LatticeManager::RegisterLattice(), G4PenelopeGammaConversionModel::SampleSecondaries(), G4PenelopeRayleighModel::SampleSecondaries(), G4GeomSplitter< T >::SlaveCopySubInstanceArray(), G4GeomSplitter< T >::SlaveReCopySubInstanceArray(), G4MTRunManagerKernel::StartThread(), G4XmlAnalysisManager::WriteH1(), G4CsvAnalysisManager::WriteH1(), G4RootAnalysisManager::WriteH1(), G4XmlAnalysisManager::WriteH2(), G4CsvAnalysisManager::WriteH2(), G4RootAnalysisManager::WriteH2(), G4XmlAnalysisManager::WriteH3(), G4CsvAnalysisManager::WriteH3(), G4RootAnalysisManager::WriteH3(), G4XmlAnalysisManager::WriteP1(), G4CsvAnalysisManager::WriteP1(), G4RootAnalysisManager::WriteP1(), G4XmlAnalysisManager::WriteP2(), G4CsvAnalysisManager::WriteP2(), G4RootAnalysisManager::WriteP2(), and G4TemplateAutoLock< G4Mutex, thread_lock, thread_unlock >::~G4TemplateAutoLock().

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: