Geant4  10.01.p02
G4LogicalVolumeStore Class Reference

#include <G4LogicalVolumeStore.hh>

+ Inheritance diagram for G4LogicalVolumeStore:
+ Collaboration diagram for G4LogicalVolumeStore:

Public Member Functions

G4LogicalVolumeGetVolume (const G4String &name, G4bool verbose=true) const
 
virtual ~G4LogicalVolumeStore ()
 

Static Public Member Functions

static void Register (G4LogicalVolume *pVolume)
 
static void DeRegister (G4LogicalVolume *pVolume)
 
static G4LogicalVolumeStoreGetInstance ()
 
static void SetNotifier (G4VStoreNotifier *pNotifier)
 
static void Clean ()
 

Protected Member Functions

 G4LogicalVolumeStore ()
 

Static Private Attributes

static G4LogicalVolumeStorefgInstance = 0
 
static G4ThreadLocal
G4VStoreNotifier
fgNotifier = 0
 
static G4ThreadLocal G4bool locked = false
 

Detailed Description

Definition at line 62 of file G4LogicalVolumeStore.hh.

Constructor & Destructor Documentation

G4LogicalVolumeStore::~G4LogicalVolumeStore ( )
virtual

Definition at line 64 of file G4LogicalVolumeStore.cc.

References Clean().

+ Here is the call graph for this function:

G4LogicalVolumeStore::G4LogicalVolumeStore ( )
protected

Definition at line 54 of file G4LogicalVolumeStore.cc.

Member Function Documentation

void G4LogicalVolumeStore::DeRegister ( G4LogicalVolume pVolume)
static

Definition at line 138 of file G4LogicalVolumeStore.cc.

References fgNotifier, GetInstance(), locked, and G4VNotifier::NotifyDeRegistration().

Referenced by G4LogicalVolume::~G4LogicalVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4LogicalVolumeStore * G4LogicalVolumeStore::GetInstance ( void  )
static

Definition at line 181 of file G4LogicalVolumeStore.cc.

References fgInstance.

Referenced by G4GeometryManager::BuildOptimisations(), G4RunManagerKernel::CheckRegularGeometry(), checkVol(), Clean(), G4VUserDetectorConstruction::CloneF(), G4VUserDetectorConstruction::CloneSD(), LXeDetectorConstruction::Construct(), F04DetectorConstruction::Construct(), WLSDetectorConstruction::Construct(), DetectorConstruction::ConstructCalorimeter(), F01DetectorConstruction::ConstructCalorimeter(), F02DetectorConstruction::ConstructCalorimeter(), F03DetectorConstruction::ConstructCalorimeter(), ExN03DetectorConstruction::ConstructCalorimeter(), Em10DetectorConstruction::ConstructDetectorXTR(), GB01DetectorConstruction::ConstructSDandField(), GB02DetectorConstruction::ConstructSDandField(), GB04DetectorConstruction::ConstructSDandField(), RMC01DetectorConstruction::ConstructSimpleGeometry(), DetectorConstruction::ConstructVolumes(), ElectronBenchmarkDetector::CreateGeometry(), DetectorConstruction::DefineVolumes(), G4GeometryManager::DeleteOptimisations(), DeRegister(), G4RadioactiveDecay::DeselectAVolume(), B4PrimaryGeneratorAction::GeneratePrimaries(), B2PrimaryGeneratorAction::GeneratePrimaries(), B1PrimaryGeneratorAction::GeneratePrimaries(), DicomIntersectVolume::GetLogicalVolumes(), FFPrimaryGeneratorAction::GetNeutronSourceCenter(), G4Region::GetParentRegion(), G4GDMLReadStructure::GetVolume(), GetVolume(), main(), Register(), G4RunManager::ReinitializeGeometry(), G4BlineTracer::ResetChordFinders(), G4RadioactiveDecay::SelectAllVolumes(), G4RadioactiveDecay::SelectAVolume(), G4VVisCommandGeometrySet::Set(), G4VisCommandGeometryList::SetNewValue(), G4GDMLMessenger::SetNewValue(), G4VisCommandGeometryRestore::SetNewValue(), G4VisCommandSceneAddLogicalVolume::SetNewValue(), SetNotifier(), G4VUserParallelWorld::SetSensitiveDetector(), G4VUserDetectorConstruction::SetSensitiveDetector(), CexmcSetup::SetupSpecialVolumes(), G4GDMLRead::StripNames(), G4WorkerThread::UpdateGeometryAndPhysicsVectorFromMaster(), and F04SteppingAction::UserSteppingAction().

G4LogicalVolume * G4LogicalVolumeStore::GetVolume ( const G4String name,
G4bool  verbose = true 
) const

Definition at line 159 of file G4LogicalVolumeStore.cc.

References G4endl, G4Exception(), GetInstance(), JustWarning, and name.

Referenced by GB01DetectorConstruction::ConstructSDandField(), GB02DetectorConstruction::ConstructSDandField(), GB04DetectorConstruction::ConstructSDandField(), B2PrimaryGeneratorAction::GeneratePrimaries(), B4PrimaryGeneratorAction::GeneratePrimaries(), B1PrimaryGeneratorAction::GeneratePrimaries(), FFPrimaryGeneratorAction::GetNeutronSourceCenter(), G4GDMLReadStructure::GetVolume(), G4GDMLMessenger::SetNewValue(), and F04SteppingAction::UserSteppingAction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LogicalVolumeStore::Register ( G4LogicalVolume pVolume)
static

Definition at line 128 of file G4LogicalVolumeStore.cc.

References fgNotifier, GetInstance(), and G4VNotifier::NotifyRegistration().

Referenced by G4LogicalVolume::G4LogicalVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LogicalVolumeStore::SetNotifier ( G4VStoreNotifier pNotifier)
static

Definition at line 118 of file G4LogicalVolumeStore.cc.

References fgNotifier, and GetInstance().

+ Here is the call graph for this function:

Member Data Documentation

G4LogicalVolumeStore * G4LogicalVolumeStore::fgInstance = 0
staticprivate

Definition at line 90 of file G4LogicalVolumeStore.hh.

Referenced by GetInstance().

G4ThreadLocal G4VStoreNotifier * G4LogicalVolumeStore::fgNotifier = 0
staticprivate

Definition at line 91 of file G4LogicalVolumeStore.hh.

Referenced by Clean(), DeRegister(), Register(), and SetNotifier().

G4ThreadLocal G4bool G4LogicalVolumeStore::locked = false
staticprivate

Definition at line 92 of file G4LogicalVolumeStore.hh.

Referenced by Clean(), and DeRegister().


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