74 std::vector<G4ITNavigator*>::iterator pNav;
88 G4ITNavigator* trackingNavigator =
new G4ITNavigator();
89 trackingNavigator->Activate(
true);
94 trackingNavigator->SetWorldVolume(world);
101 std::vector<G4VPhysicalVolume*>::iterator it =
104 for (
size_t i = 0; i < n_worlds; i++, it++)
132 wPV =
new G4PVPlacement(wPV->GetRotation(), wPV->GetTranslation(), wLV,
133 worldName, 0,
false, 0);
150 std::vector<G4ITNavigator*>::iterator pNav;
153 if ((*pNav)->GetWorldVolume()->GetName() == worldName)
162 G4ITNavigator* aNavigator = 0;
166 aNavigator =
new G4ITNavigator();
167 aNavigator->SetWorldVolume(aWorld);
174 +
"- does not exist. Create it first by GetParallelWorld() method!";
175 G4Exception(
"G4ITTransportationManager::GetNavigator(name)",
"GeomNav0002",
191 std::vector<G4ITNavigator*>::iterator pNav;
194 if ((*pNav)->GetWorldVolume() == aWorld)
199 G4ITNavigator* aNavigator = 0;
200 std::vector<G4VPhysicalVolume*>::iterator pWorld = std::find(
fWorlds.begin(),
205 aNavigator =
new G4ITNavigator();
206 aNavigator->SetWorldVolume(aWorld);
213 +
"- does not exist. Create it first by GetParallelWorld() method!";
214 G4Exception(
"G4ITTransportationManager::GetNavigator(pointer)",
233 G4Exception(
"G4ITTransportationManager::DeRegisterNavigator()",
235 "The navigator for tracking CANNOT be deregistered!");
237 std::vector<G4ITNavigator*>::iterator pNav = std::find(
fNavigators.begin(),
253 + aNavigator->GetWorldVolume()->GetName() +
"- not found in memory!";
254 G4Exception(
"G4ITTransportationManager::DeRegisterNavigator()",
270 std::vector<G4ITNavigator*>::iterator pNav = std::find(
fNavigators.begin(),
276 + aNavigator->GetWorldVolume()->GetName() +
"- not found in memory!";
277 G4Exception(
"G4ITTransportationManager::ActivateNavigator()",
"GeomNav1002",
282 aNavigator->Activate(
true);
284 std::vector<G4ITNavigator*>::iterator pActiveNav;
288 if (*pActiveNav == aNavigator)
308 std::vector<G4ITNavigator*>::iterator pNav = std::find(
fNavigators.begin(),
313 (*pNav)->Activate(
false);
318 + aNavigator->GetWorldVolume()->GetName() +
"- not found in memory!";
319 G4Exception(
"G4ITTransportationManager::DeActivateNavigator()",
323 std::vector<G4ITNavigator*>::iterator pActiveNav = std::find(
339 std::vector<G4ITNavigator*>::iterator pNav;
343 (*pNav)->Activate(
false);
362 std::vector<G4VPhysicalVolume*>::iterator pWorld =
fWorlds.begin();
370 if ((*pWorld)->GetName() ==
name)
389 std::vector<G4VPhysicalVolume*>::iterator pWorld = std::find(
fWorlds.begin(),
409 std::vector<G4VPhysicalVolume*>::iterator pWorld = std::find(
fWorlds.begin(),
419 +
"- not found in memory!";
420 G4Exception(
"G4ITTransportationManager::DeRegisterWorld()",
"GeomNav1002",
static G4ThreadLocal G4ITTransportationManager * fpInstance
{Duplicated version of G4TransportationManager. This class just contains the pointer to the navigator...
static G4ITTransportationManager * GetTransportationManager()
G4int ActivateNavigator(G4ITNavigator *aNavigator)
G4VPhysicalVolume * IsWorldExisting(const G4String &worldName)
G4LogicalVolume * GetLogicalVolume() const
void message(RunManager *runmanager)
std::vector< G4VPhysicalVolume * >::iterator GetWorldsIterator()
std::vector< G4ITNavigator * > fActiveNavigators
G4Navigator * GetNavigatorForTracking() const
~G4ITTransportationManager()
std::vector< G4ITNavigator * > fNavigators
G4ITTransportationManager()
void DeActivateNavigator(G4ITNavigator *aNavigator)
void DeRegisterNavigator(G4ITNavigator *aNavigator)
G4ITNavigator * GetNavigator(const G4String &worldName)
G4ITSafetyHelper * fpSafetyHelper
G4ITNavigator * GetNavigatorForTracking() const
size_t GetNoWorlds() const
static G4TransportationManager * GetTransportationManager()
std::vector< G4VPhysicalVolume * > fWorlds
G4bool RegisterWorld(G4VPhysicalVolume *aWorld)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static void DeleteInstance()
G4VPhysicalVolume * GetParallelWorld(const G4String &worldName)
void DeRegisterWorld(G4VPhysicalVolume *aWorld)
G4VSolid * GetSolid() const
G4VPhysicalVolume * GetWorldVolume() const
const G4String & GetName() const