Geant4  10.01.p03
G4IStore Class Reference

#include <G4IStore.hh>

+ Inheritance diagram for G4IStore:
+ Collaboration diagram for G4IStore:

Public Member Functions

virtual G4double GetImportance (const G4GeometryCell &gCell) const
 
virtual G4bool IsKnown (const G4GeometryCell &gCell) const
 
void Clear ()
 
void SetWorldVolume ()
 
void SetParallelWorldVolume (G4String paraName)
 
virtual const G4VPhysicalVolumeGetWorldVolume () const
 
virtual const G4VPhysicalVolumeGetParallelWorldVolumePointer () const
 
void AddImportanceGeometryCell (G4double importance, const G4GeometryCell &gCell)
 
void AddImportanceGeometryCell (G4double importance, const G4VPhysicalVolume &, G4int aRepNum=0)
 
void ChangeImportance (G4double importance, const G4GeometryCell &gCell)
 
void ChangeImportance (G4double importance, const G4VPhysicalVolume &, G4int aRepNum=0)
 
G4double GetImportance (const G4VPhysicalVolume &, G4int aRepNum=0) const
 
- Public Member Functions inherited from G4VIStore
 G4VIStore ()
 
virtual ~G4VIStore ()
 

Static Public Member Functions

static G4IStoreGetInstance ()
 
static G4IStoreGetInstance (const G4String &ParallelWorldName)
 

Protected Member Functions

 G4IStore ()
 
 G4IStore (const G4String &ParallelWorldName)
 
 ~G4IStore ()
 

Private Member Functions

G4bool IsInWorld (const G4VPhysicalVolume &) const
 
void SetInternalIterator (const G4GeometryCell &gCell) const
 
void Error (const G4String &m) const
 

Private Attributes

const G4VPhysicalVolumefWorldVolume
 
G4GeometryCellImportance fGeometryCelli
 
G4GeometryCellImportance::const_iterator fCurrentIterator
 

Static Private Attributes

static G4ThreadLocal G4IStorefInstance = 0
 

Detailed Description

Definition at line 62 of file G4IStore.hh.

Constructor & Destructor Documentation

G4IStore::G4IStore ( )
explicitprotected

Definition at line 48 of file G4IStore.cc.

Referenced by GetInstance().

+ Here is the caller graph for this function:

G4IStore::G4IStore ( const G4String ParallelWorldName)
explicitprotected

Definition at line 52 of file G4IStore.cc.

References fWorldVolume, G4cout, G4endl, and G4VPhysicalVolume::GetName().

+ Here is the call graph for this function:

G4IStore::~G4IStore ( )
protected

Definition at line 59 of file G4IStore.cc.

Member Function Documentation

void G4IStore::AddImportanceGeometryCell ( G4double  importance,
const G4GeometryCell gCell 
)

Definition at line 103 of file G4IStore.cc.

References Error(), fCurrentIterator, fGeometryCelli, G4GeometryCell::GetPhysicalVolume(), IsInWorld(), and SetInternalIterator().

Referenced by AddImportanceGeometryCell(), B01DetectorConstruction::CreateImportanceStore(), B02ImportanceDetectorConstruction::CreateImportanceStore(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IStore::AddImportanceGeometryCell ( G4double  importance,
const G4VPhysicalVolume aVolume,
G4int  aRepNum = 0 
)

Definition at line 119 of file G4IStore.cc.

References AddImportanceGeometryCell().

+ Here is the call graph for this function:

void G4IStore::ChangeImportance ( G4double  importance,
const G4GeometryCell gCell 
)

Definition at line 127 of file G4IStore.cc.

References Error(), fCurrentIterator, fGeometryCelli, G4GeometryCell::GetPhysicalVolume(), IsInWorld(), and SetInternalIterator().

Referenced by ChangeImportance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IStore::ChangeImportance ( G4double  importance,
const G4VPhysicalVolume aVolume,
G4int  aRepNum = 0 
)

Definition at line 142 of file G4IStore.cc.

References ChangeImportance().

+ Here is the call graph for this function:

void G4IStore::Clear ( )

Definition at line 62 of file G4IStore.cc.

References fGeometryCelli.

void G4IStore::Error ( const G4String m) const
private

Definition at line 200 of file G4IStore.cc.

References FatalException, and G4Exception().

Referenced by AddImportanceGeometryCell(), ChangeImportance(), and GetImportance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IStore::GetImportance ( const G4GeometryCell gCell) const
virtual

Implements G4VIStore.

Definition at line 162 of file G4IStore.cc.

References Error(), fCurrentIterator, fGeometryCelli, G4endl, and SetInternalIterator().

+ Here is the call graph for this function:

G4double G4IStore::GetImportance ( const G4VPhysicalVolume aVolume,
G4int  aRepNum = 0 
) const

Definition at line 149 of file G4IStore.cc.

References Error(), fCurrentIterator, fGeometryCelli, and SetInternalIterator().

+ Here is the call graph for this function:

G4IStore * G4IStore::GetInstance ( void  )
static

Definition at line 210 of file G4IStore.cc.

References fInstance, G4cout, G4endl, and G4IStore().

Referenced by B03PhysicsList::AddBiasingProcess(), G4ImportanceBiasing::ConstructProcess(), B01DetectorConstruction::CreateImportanceStore(), B02ImportanceDetectorConstruction::CreateImportanceStore(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4IStore * G4IStore::GetInstance ( const G4String ParallelWorldName)
static

Definition at line 225 of file G4IStore.cc.

References fInstance, G4cout, G4endl, and G4IStore().

+ Here is the call graph for this function:

const G4VPhysicalVolume * G4IStore::GetParallelWorldVolumePointer ( ) const
virtual

Definition at line 93 of file G4IStore.cc.

References fWorldVolume.

Referenced by B03PhysicsList::AddBiasingProcess().

+ Here is the caller graph for this function:

const G4VPhysicalVolume & G4IStore::GetWorldVolume ( ) const
virtual

Implements G4VIStore.

Definition at line 83 of file G4IStore.cc.

References fWorldVolume.

G4bool G4IStore::IsInWorld ( const G4VPhysicalVolume aVolume) const
private

Definition at line 187 of file G4IStore.cc.

References fWorldVolume, G4VPhysicalVolume::GetLogicalVolume(), and G4LogicalVolume::IsAncestor().

Referenced by AddImportanceGeometryCell(), ChangeImportance(), and IsKnown().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4IStore::IsKnown ( const G4GeometryCell gCell) const
virtual

Implements G4VIStore.

Definition at line 177 of file G4IStore.cc.

References fCurrentIterator, fGeometryCelli, G4GeometryCell::GetPhysicalVolume(), IsInWorld(), and SetInternalIterator().

+ Here is the call graph for this function:

void G4IStore::SetInternalIterator ( const G4GeometryCell gCell) const
private

Definition at line 98 of file G4IStore.cc.

References fCurrentIterator, and fGeometryCelli.

Referenced by AddImportanceGeometryCell(), ChangeImportance(), GetImportance(), and IsKnown().

+ Here is the caller graph for this function:

void G4IStore::SetParallelWorldVolume ( G4String  paraName)

Definition at line 75 of file G4IStore.cc.

References fWorldVolume, G4cout, G4endl, G4VPhysicalVolume::GetName(), G4TransportationManager::GetParallelWorld(), and G4TransportationManager::GetTransportationManager().

+ Here is the call graph for this function:

void G4IStore::SetWorldVolume ( )

Definition at line 67 of file G4IStore.cc.

References fWorldVolume, G4cout, G4endl, G4VPhysicalVolume::GetName(), G4TransportationManager::GetNavigatorForTracking(), G4TransportationManager::GetTransportationManager(), and G4Navigator::GetWorldVolume().

+ Here is the call graph for this function:

Member Data Documentation

G4GeometryCellImportance::const_iterator G4IStore::fCurrentIterator
mutableprivate
G4GeometryCellImportance G4IStore::fGeometryCelli
private
G4ThreadLocal G4IStore * G4IStore::fInstance = 0
staticprivate

Definition at line 146 of file G4IStore.hh.

Referenced by GetInstance().

const G4VPhysicalVolume* G4IStore::fWorldVolume
private

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