49#ifndef G4ITMULTINAVIGATOR_HH
50#define G4ITMULTINAVIGATOR_HH
101 for (
G4int num = 0; num < G4ITNavigator::fMaxNav; ++num)
149 friend std::ostream&
operator <<(std::ostream &os,
const G4ITNavigator &n);
159 const G4double pCurrentProposedStepLength,
186 const G4bool pRelativeSearch =
188 const G4bool ignoreDirection =
203 const G4bool keepState =
false);
231 if( (n>fNoActiveNavigators)||(n<0))
233 return fpNavigator[n];
253 G4int fNoActiveNavigators;
256 G4ITNavigator* fpNavigator[fMaxNav];
#define fWasLimitedByGeometry
#define fMinSafety_atSafLocation
#define fLastLocatedPosition
#define fMinSafety_PreStepPt
friend std::ostream & operator<<(std::ostream &os, const G4ITNavigator &n)
G4double ComputeStep(const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double pCurrentProposedStepLength, G4double &pNewSafety)
void PrepareNewTrack(const G4ThreeVector position, const G4ThreeVector direction)
G4ITNavigator * GetNavigator(G4int n) const
G4VPhysicalVolume * ResetHierarchyAndLocate(const G4ThreeVector &point, const G4ThreeVector &direction, const G4TouchableHistory &h)
virtual G4ThreeVector GetGlobalExitNormal(const G4ThreeVector &CurrentE_Point, G4bool *obtained)
G4VPhysicalVolume * LocateGlobalPointAndSetup(const G4ThreeVector &point, const G4ThreeVector *direction=0, const G4bool pRelativeSearch=true, const G4bool ignoreDirection=true)
void LocateGlobalPointWithinVolume(const G4ThreeVector &position)
virtual G4ThreeVector GetLocalExitNormalAndCheck(const G4ThreeVector &CurrentE_Point, G4bool *obtained)
G4TouchableHistoryHandle CreateTouchableHistoryHandle() const
virtual G4ThreeVector GetLocalExitNormal(G4bool *obtained)
G4double ObtainFinalStep(G4int navigatorId, G4double &pNewSafety, G4double &minStepLast, ELimited &limitedStep)
G4double ComputeSafety(const G4ThreeVector &globalpoint, const G4double pProposedMaxLength=DBL_MAX, const G4bool keepState=false)
G4bool fWasLimitedByGeometry
G4ThreeVector fPreStepLocation
G4ThreeVector fLastLocatedPosition
G4double fMinSafety_atSafLocation
G4ThreeVector fSafetyLocation
G4double fMinSafety_PreStepPt