78 G4cout <<
"WARNING - Attempt to delete the region store"
79 <<
" while geometry closed !" <<
G4endl;
91#ifdef G4GEOMETRY_VOXELDEBUG
92 G4cout <<
"Deleting Regions ... ";
95 for(
auto pos=store->cbegin(); pos!=store->cend(); ++pos)
101#ifdef G4GEOMETRY_VOXELDEBUG
102 if (store->size() < i-1)
103 {
G4cout <<
"No regions deleted. Already deleted by user ?" <<
G4endl; }
119 fgNotifier = pNotifier;
159 if (fgInstance ==
nullptr)
161 fgInstance = &worldStore;
175 if ((*i)->IsModified()) {
return true; }
189 (*i)->RegionModified(
false);
201 if((*i)->IsInMassGeometry() || (*i)->IsInParallelGeometry()
202 || (currentWorld !=
nullptr))
203 { (*i)->UpdateMaterialList(); }
215 if ((*i)->GetName() == name) {
return *i; }
219 std::ostringstream message;
220 message <<
"Region NOT found in store !" <<
G4endl
221 <<
" Region " << name <<
" NOT found in store !" <<
G4endl
222 <<
" Returning NULL pointer.";
238 if (target ==
nullptr)
255 { (*i)->SetWorld(
nullptr); }
261 size_t nPhys = fPhysicalVolumeStore->size();
262 for(
size_t iPhys=0; iPhys<nPhys; ++iPhys)
270 { (*i)->SetWorld(fPhys); }
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4GLOB_DLL std::ostream G4cout
static G4bool IsGeometryClosed()
static G4PhysicalVolumeStore * GetInstance()
static void DeRegister(G4Region *pRegion)
static void Register(G4Region *pRegion)
static G4RegionStore * GetInstance()
static void SetNotifier(G4VStoreNotifier *pNotifier)
void UpdateMaterialList(G4VPhysicalVolume *currentWorld=0)
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
G4Region * FindOrCreateRegion(const G4String &name)
void ResetRegionModified()
G4bool IsModified() const
virtual void NotifyRegistration()=0
virtual void NotifyDeRegistration()=0
G4LogicalVolume * GetMotherLogical() const