Geant4-11
G4ITTransportationManager.icc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// ------------------------------------------------------------
28// GEANT 4 inlined function members implementation
29// ------------------------------------------------------------
30//
31// Created : 10 March 1997, J. Apostolakis
32// Reviewed: 26 April 2006, G. Cosmo
33//
34// ----------------------------------------------------------------------------
35
36// ----------------------------------------------------------------------------
37// GetNavigatorForTracking()
38//
39// Utility method to return the active navigator for tracking, always
40// the first in the collection of registered navigators.
41//
42inline
43G4ITNavigator* G4ITTransportationManager::GetNavigatorForTracking() const
44{
45 return fNavigators[0];
46}
47
48// ----------------------------------------------------------------------------
49// SetWorldForTracking()
50//
51// Set the tracking world volume.
52// This method is to be invoked by G4RunManagerKernel.
53//
54inline
55void G4ITTransportationManager::SetWorldForTracking(G4VPhysicalVolume* theWorld)
56{
57 fWorlds[0] = theWorld;
58 fNavigators[0]->SetWorldVolume(theWorld);
59}
60
61// ----------------------------------------------------------------------------
62// SetNavigatorForTracking()
63//
64// Set the active navigator for tracking, always
65// the first in the collection of registered navigators.
66//
67//inline
68//void G4ITTransportationManager::SetNavigatorForTracking(G4ITNavigator* newNavigator)
69//{
70// fNavigators[0] = newNavigator;
71//}
72
73// ----------------------------------------------------------------------------
74// GetNoActiveNavigators()
75//
76// Return the number of active navigators.
77//
78inline
79size_t G4ITTransportationManager::GetNoActiveNavigators() const
80{
81 return fActiveNavigators.size();
82}
83
84// ----------------------------------------------------------------------------
85// GetActiveNavigatorsIterator()
86//
87// Return an iterator to the list of active navigators.
88//
89inline
90std::vector<G4ITNavigator*>::iterator
91G4ITTransportationManager::GetActiveNavigatorsIterator()
92{
93 std::vector<G4ITNavigator*>::iterator iterator
94 = std::vector<G4ITNavigator*>::iterator(fActiveNavigators.begin());
95 return iterator;
96}
97
98// ----------------------------------------------------------------------------
99// GetNoWorlds()
100//
101// Return the number of registered worlds.
102//
103inline
104size_t G4ITTransportationManager::GetNoWorlds() const
105{
106 return fWorlds.size();
107}
108
109// ----------------------------------------------------------------------------
110// GetWorldsIterator()
111//
112// Return an iterator to the list of registered worlds.
113//
114inline
115std::vector<G4VPhysicalVolume*>::iterator
116G4ITTransportationManager::GetWorldsIterator()
117{
118 std::vector<G4VPhysicalVolume*>::iterator iterator
119 = std::vector<G4VPhysicalVolume*>::iterator(fWorlds.begin());
120 return iterator;
121}
122
123// ----------------------------------------------------------------------------
124// GetSafetyHelper()
125//
126// Return pointer to the created navigation safety helper instance.
127//
128inline
129G4ITSafetyHelper* G4ITTransportationManager::GetSafetyHelper() const
130{
131 return fpSafetyHelper;
132}