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

#include <geant4/tree/geant4-10.6-release/source/geometry/management/include/G4GeometryManager.hh>

+ Collaboration diagram for G4GeometryManager:

Public Member Functions

G4bool CloseGeometry (G4bool pOptimise=true, G4bool verbose=false, G4VPhysicalVolume *vol=nullptr)
 
void OpenGeometry (G4VPhysicalVolume *vol=nullptr)
 
void SetWorldMaximumExtent (G4double worldExtent)
 
 ~G4GeometryManager ()
 

Static Public Member Functions

static G4bool IsGeometryClosed ()
 
static G4GeometryManagerGetInstance ()
 
static G4GeometryManagerGetInstanceIfExist ()
 

Protected Member Functions

 G4GeometryManager ()
 

Private Member Functions

void BuildOptimisations (G4bool allOpt, G4bool verbose=false)
 
void BuildOptimisations (G4bool allOpt, G4VPhysicalVolume *vol)
 
void DeleteOptimisations ()
 
void DeleteOptimisations (G4VPhysicalVolume *vol)
 

Static Private Member Functions

static void ReportVoxelStats (std::vector< G4SmartVoxelStat > &stats, G4double totalCpuTime)
 

Static Private Attributes

static G4ThreadLocal
G4GeometryManager
fgInstance = nullptr
 
static G4ThreadLocal G4bool fIsClosed = false
 

Detailed Description

Definition at line 51 of file G4GeometryManager.hh.

View newest version in sPHENIX GitHub at line 51 of file G4GeometryManager.hh

Constructor & Destructor Documentation

G4GeometryManager::~G4GeometryManager ( )

Definition at line 72 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 72 of file G4GeometryManager.cc

References fgInstance, and fIsClosed.

G4GeometryManager::G4GeometryManager ( )
protected

Definition at line 64 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 64 of file G4GeometryManager.cc

Referenced by GetInstance().

+ Here is the caller graph for this function:

Member Function Documentation

void G4GeometryManager::BuildOptimisations ( G4bool  allOpt,
G4bool  verbose = false 
)
private

Definition at line 162 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 162 of file G4GeometryManager.cc

References FatalException, G4cout, G4endl, G4Exception(), G4LogicalVolume::GetDaughter(), G4LogicalVolumeStore::GetInstance(), G4LogicalVolume::GetName(), G4LogicalVolume::GetNoDaughters(), G4VPhysicalVolume::GetRegularStructureId(), G4Timer::GetSystemElapsed(), G4Timer::GetUserElapsed(), G4LogicalVolume::GetVoxelHeader(), G4VPhysicalVolume::IsReplicated(), G4LogicalVolume::IsToOptimise(), kMinVoxelVolumesLevel1, message(), n, ReportVoxelStats(), G4LogicalVolume::SetVoxelHeader(), G4Timer::Start(), G4Timer::Stop(), and Acts::Test::volume.

Referenced by BuildOptimisations(), and CloseGeometry().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeometryManager::BuildOptimisations ( G4bool  allOpt,
G4VPhysicalVolume vol 
)
private
G4bool G4GeometryManager::CloseGeometry ( G4bool  pOptimise = true,
G4bool  verbose = false,
G4VPhysicalVolume vol = nullptr 
)

Definition at line 85 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 85 of file G4GeometryManager.cc

References BuildOptimisations(), and fIsClosed.

Referenced by CML2PhantomConstruction::applyNewCentre(), G4GeometryMessenger::CheckGeometry(), G4TheRayTracer::CreateBitMap(), G4MaterialScanner::DoScan(), export_G4GeometryManager(), G4DNAChemistryManager::HandleStandaloneInitialization(), G4RunManagerKernel::ResetNavigator(), CML2AcceleratorConstruction::rotateAccelerator(), G4MaterialScanner::StoreUserActions(), and G4TheRayTracer::StoreUserActions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeometryManager::DeleteOptimisations ( )
private

Definition at line 296 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 296 of file G4GeometryManager.cc

References G4LogicalVolumeStore::GetInstance(), G4LogicalVolume::GetVoxelHeader(), n, and G4LogicalVolume::SetVoxelHeader().

Referenced by DeleteOptimisations(), and OpenGeometry().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeometryManager::DeleteOptimisations ( G4VPhysicalVolume vol)
private

Definition at line 313 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 313 of file G4GeometryManager.cc

References DeleteOptimisations(), G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetMotherLogical(), G4LogicalVolume::GetNoDaughters(), G4LogicalVolume::GetVoxelHeader(), and G4LogicalVolume::SetVoxelHeader().

+ Here is the call graph for this function:

G4GeometryManager * G4GeometryManager::GetInstance ( void  )
static

Definition at line 139 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 139 of file G4GeometryManager.cc

References fgInstance, and G4GeometryManager().

Referenced by CML2PhantomConstruction::applyNewCentre(), G4GeometryMessenger::CheckGeometry(), G4ErrorPropagatorManager::CloseGeometry(), PHG4PhenixDetector::Construct(), F04DetectorConstruction::Construct(), ExN02DetectorConstruction::Construct(), WLSDetectorConstruction::Construct(), DetectorConstruction::ConstructCalorimeter(), F02DetectorConstruction::ConstructCalorimeter(), F01DetectorConstruction::ConstructCalorimeter(), F03DetectorConstruction::ConstructCalorimeter(), ExN03DetectorConstruction::ConstructCalorimeter(), RMC01DetectorConstruction::ConstructSimpleGeometry(), DetectorConstruction::ConstructVolumes(), G4TheRayTracer::CreateBitMap(), ElectronBenchmarkDetector::CreateGeometry(), DetectorConstruction::DefineVolumes(), B2aDetectorConstruction::DefineVolumes(), B2bDetectorConstruction::DefineVolumes(), G4MaterialScanner::DoScan(), export_G4GeometryManager(), G4DNAChemistryManager::HandleStandaloneInitialization(), main(), G4RunManager::ReinitializeGeometry(), G4RunManagerKernel::ResetNavigator(), CML2AcceleratorConstruction::rotateAccelerator(), G4GDMLMessenger::SetNewValue(), G4MaterialScanner::StoreUserActions(), G4TheRayTracer::StoreUserActions(), XrayFluoPlaneDetectorConstruction::UpdateGeometry(), XrayFluoMercuryDetectorConstruction::UpdateGeometry(), XrayFluoDetectorConstruction::UpdateGeometry(), IORTDetectorConstruction::UpdateGeometry(), HadrontherapyDetectorConstruction::UpdateGeometry(), and G4RunManagerKernel::~G4RunManagerKernel().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4GeometryManager * G4GeometryManager::GetInstanceIfExist ( )
static

Definition at line 152 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 152 of file G4GeometryManager.cc

References fgInstance.

Referenced by G4RunManagerKernel::~G4RunManagerKernel().

+ Here is the caller graph for this function:

G4bool G4GeometryManager::IsGeometryClosed ( )
static

Definition at line 129 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 129 of file G4GeometryManager.cc

References fIsClosed.

Referenced by G4GeometryMessenger::CheckGeometry(), G4LogicalVolumeStore::Clean(), G4PhysicalVolumeStore::Clean(), G4SolidStore::Clean(), G4RegionStore::Clean(), G4AssemblyStore::Clean(), and export_G4GeometryManager().

+ Here is the caller graph for this function:

void G4GeometryManager::OpenGeometry ( G4VPhysicalVolume vol = nullptr)

Definition at line 109 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 109 of file G4GeometryManager.cc

References DeleteOptimisations(), and fIsClosed.

Referenced by CML2PhantomConstruction::applyNewCentre(), G4GeometryMessenger::CheckGeometry(), G4ErrorPropagatorManager::CloseGeometry(), PHG4PhenixDetector::Construct(), F04DetectorConstruction::Construct(), WLSDetectorConstruction::Construct(), DetectorConstruction::ConstructCalorimeter(), F02DetectorConstruction::ConstructCalorimeter(), F01DetectorConstruction::ConstructCalorimeter(), F03DetectorConstruction::ConstructCalorimeter(), ExN03DetectorConstruction::ConstructCalorimeter(), RMC01DetectorConstruction::ConstructSimpleGeometry(), DetectorConstruction::ConstructVolumes(), G4TheRayTracer::CreateBitMap(), ElectronBenchmarkDetector::CreateGeometry(), DetectorConstruction::DefineVolumes(), G4MaterialScanner::DoScan(), export_G4GeometryManager(), G4DNAChemistryManager::HandleStandaloneInitialization(), main(), G4RunManager::ReinitializeGeometry(), G4RunManagerKernel::ResetNavigator(), CML2AcceleratorConstruction::rotateAccelerator(), G4GDMLMessenger::SetNewValue(), G4MaterialScanner::StoreUserActions(), G4TheRayTracer::StoreUserActions(), XrayFluoPlaneDetectorConstruction::UpdateGeometry(), XrayFluoMercuryDetectorConstruction::UpdateGeometry(), XrayFluoDetectorConstruction::UpdateGeometry(), and G4RunManagerKernel::~G4RunManagerKernel().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeometryManager::ReportVoxelStats ( std::vector< G4SmartVoxelStat > &  stats,
G4double  totalCpuTime 
)
staticprivate

Definition at line 358 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 358 of file G4GeometryManager.cc

References a, b, G4cout, G4endl, G4SmartVoxelStat::GetMemoryUse(), G4SmartVoxelStat::GetTotalTime(), left, perMillion, right, system(), and G4INCL::CrossSections::total().

Referenced by BuildOptimisations().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeometryManager::SetWorldMaximumExtent ( G4double  worldExtent)

Definition at line 339 of file G4GeometryManager.cc.

View newest version in sPHENIX GitHub at line 339 of file G4GeometryManager.cc

References FatalException, G4Exception(), G4GeometryTolerance::GetInstance(), G4SolidStore::GetInstance(), and G4GeometryTolerance::SetSurfaceTolerance().

Referenced by ExN02DetectorConstruction::Construct(), DetectorConstruction::DefineVolumes(), B2bDetectorConstruction::DefineVolumes(), B2aDetectorConstruction::DefineVolumes(), and export_G4GeometryManager().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4ThreadLocal G4GeometryManager * G4GeometryManager::fgInstance = nullptr
staticprivate

Definition at line 98 of file G4GeometryManager.hh.

View newest version in sPHENIX GitHub at line 98 of file G4GeometryManager.hh

Referenced by GetInstance(), GetInstanceIfExist(), and ~G4GeometryManager().

G4ThreadLocal G4bool G4GeometryManager::fIsClosed = false
staticprivate

Definition at line 99 of file G4GeometryManager.hh.

View newest version in sPHENIX GitHub at line 99 of file G4GeometryManager.hh

Referenced by CloseGeometry(), IsGeometryClosed(), OpenGeometry(), and ~G4GeometryManager().


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