43 #ifdef G4MULTITHREADED
59 G4cout <<
" G4IStore:: ParallelWorldName = " << ParallelWorldName <<
G4endl;
81 G4cout <<
" G4IStore:: SetParallelWorldVolume " <<
G4endl;
110 if (importance < 0 ) {
111 Error(
"AddImportanceGeometryCell() - Invalid importance value given.");
114 Error(
"AddImportanceGeometryCell() - Physical volume not found!");
118 Error(
"AddImportanceGeometryCell() - Region already existing!");
133 if (importance < 0 ) {
134 Error(
"ChangeImportance() - Invalid importance value given.");
137 Error(
"ChangeImportance() - Physical volume not found!");
141 Error(
"ChangeImportance() - Region does not exist!");
156 #ifdef G4MULTITHREADED
162 Error(
"GetImportance() - Region does not exist!");
165 G4double importance_value = (*fCurrentIterator).second;
166 #ifdef G4MULTITHREADED
169 return importance_value;
176 #ifdef G4MULTITHREADED
182 std::ostringstream err_mess;
183 err_mess <<
"GetImportance() - Region does not exist!" <<
G4endl
184 <<
"Geometry cell, " << gCell
186 Error(err_mess.str());
189 G4double importance_value = (*fCurrentIterator).second;
190 #ifdef G4MULTITHREADED
193 return importance_value;
198 #ifdef G4MULTITHREADED
203 if ( inWorldKnown ) {
207 #ifdef G4MULTITHREADED
240 G4cout <<
"G4IStore:: Creating new MASS IStore " <<
G4endl;
255 G4cout <<
"G4IStore:: Creating new Parallel IStore " << ParallelWorldName <<
G4endl;
void AddImportanceGeometryCell(G4double importance, const G4GeometryCell &gCell)
G4LogicalVolume * GetLogicalVolume() const
G4GeometryCellImportance fGeometryCelli
G4Navigator * GetNavigatorForTracking() const
G4VPhysicalVolume * GetParallelWorld(const G4String &worldName)
G4GeometryCellImportance::const_iterator fCurrentIterator
void Error(const G4String &m) const
void SetInternalIterator(const G4GeometryCell &gCell) const
#define G4MUTEX_INITIALIZER
static G4ThreadLocal G4IStore * fInstance
virtual const G4VPhysicalVolume & GetWorldVolume() const
const G4VPhysicalVolume * fWorldVolume
void SetParallelWorldVolume(G4String paraName)
const G4VPhysicalVolume & GetPhysicalVolume() const
virtual G4bool IsKnown(const G4GeometryCell &gCell) const
#define G4MUTEXUNLOCK(mutex)
G4bool IsAncestor(const G4VPhysicalVolume *p) const
G4bool IsInWorld(const G4VPhysicalVolume &) const
static G4TransportationManager * GetTransportationManager()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static G4IStore * GetInstance()
#define G4MUTEXLOCK(mutex)
G4GLOB_DLL std::ostream G4cout
void ChangeImportance(G4double importance, const G4GeometryCell &gCell)
G4VPhysicalVolume * GetWorldVolume() const
virtual const G4VPhysicalVolume * GetParallelWorldVolumePointer() const
virtual G4double GetImportance(const G4GeometryCell &gCell) const
const G4String & GetName() const