G4GeometryManager Class Reference

#include <G4GeometryManager.hh>


Public Member Functions

G4bool CloseGeometry (G4bool pOptimise=true, G4bool verbose=false, G4VPhysicalVolume *vol=0)
void OpenGeometry (G4VPhysicalVolume *vol=0)
G4bool IsGeometryClosed ()
void SetWorldMaximumExtent (G4double worldExtent)

Static Public Member Functions

static G4GeometryManagerGetInstance ()

Protected Member Functions

 G4GeometryManager ()


Detailed Description

Definition at line 55 of file G4GeometryManager.hh.


Constructor & Destructor Documentation

G4GeometryManager::G4GeometryManager (  )  [protected]

Definition at line 69 of file G4GeometryManager.cc.

00070   : fIsClosed(false)
00071 {
00072 }


Member Function Documentation

G4bool G4GeometryManager::CloseGeometry ( G4bool  pOptimise = true,
G4bool  verbose = false,
G4VPhysicalVolume vol = 0 
)

Definition at line 81 of file G4GeometryManager.cc.

Referenced by G4TheRayTracer::CreateBitMap(), and G4TheRayTracer::StoreUserActions().

00083 {
00084    if (!fIsClosed)
00085   {
00086     if (pVolume)
00087     {
00088       BuildOptimisations(pOptimise, pVolume);
00089     }
00090     else
00091     {
00092       BuildOptimisations(pOptimise, verbose);
00093     }
00094     fIsClosed=true;
00095   }
00096   return true;
00097 }

G4GeometryManager * G4GeometryManager::GetInstance (  )  [static]

Definition at line 135 of file G4GeometryManager.cc.

Referenced by G4SolidStore::Clean(), G4RegionStore::Clean(), G4PhysicalVolumeStore::Clean(), G4LogicalVolumeStore::Clean(), G4ErrorPropagatorManager::CloseGeometry(), G4TheRayTracer::CreateBitMap(), G4GDMLMessenger::SetNewValue(), G4TheRayTracer::StoreUserActions(), and G4RunManagerKernel::~G4RunManagerKernel().

00136 {
00137   static G4GeometryManager worldManager;
00138   if (!fgInstance)
00139   {
00140     fgInstance = &worldManager;
00141   }
00142   return fgInstance;    
00143 }

G4bool G4GeometryManager::IsGeometryClosed (  ) 

Definition at line 125 of file G4GeometryManager.cc.

00126 {
00127   return fIsClosed;
00128 }

void G4GeometryManager::OpenGeometry ( G4VPhysicalVolume vol = 0  ) 

Definition at line 105 of file G4GeometryManager.cc.

Referenced by G4ErrorPropagatorManager::CloseGeometry(), G4TheRayTracer::CreateBitMap(), G4GDMLMessenger::SetNewValue(), G4TheRayTracer::StoreUserActions(), and G4RunManagerKernel::~G4RunManagerKernel().

00106 {
00107   if (fIsClosed)
00108   {
00109     if (pVolume)
00110     {
00111       DeleteOptimisations(pVolume);
00112     }
00113     else
00114     {
00115       DeleteOptimisations();
00116     }
00117     fIsClosed=false;
00118   }
00119 }

void G4GeometryManager::SetWorldMaximumExtent ( G4double  worldExtent  ) 

Definition at line 327 of file G4GeometryManager.cc.

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

00328 {
00329   if (G4SolidStore::GetInstance()->size())
00330   {
00331      // Sanity check to assure that extent is fixed BEFORE creating
00332      // any geometry object (solids in this case)
00333      //
00334      G4Exception("G4GeometryManager::SetMaximumExtent()",
00335                  "GeomMgt0003", FatalException,
00336                  "Extent can be set only BEFORE creating any geometry object!");
00337   }
00338   G4GeometryTolerance::GetInstance()->SetSurfaceTolerance(extent);
00339 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:04 2013 for Geant4 by  doxygen 1.4.7