47 #ifndef G4ITPATHFINDER_HH   
   48 #define G4ITPATHFINDER_HH  1 
  129                 fLastLocatedPosition= Big3Vector;
 
  130                 fSafetyLocation= Big3Vector;
 
  131                 fPreSafetyLocation= Big3Vector;
 
  132                 fPreStepLocation= Big3Vector;
 
  134                 fPreSafetyMinValue=  -1.0;
 
  135                 fMinSafety_PreStepPt= -1.0;
 
  136                 fMinSafety_atSafLocation= -1.0;
 
  139                 fPreStepCenterRenewed= 
false;
 
  141                 fNoGeometriesLimiting= 0;
 
  143                 for( 
G4int num=0; num< G4ITNavigator::fMaxNav; ++num )
 
  145                         fLimitTruth[num] = 
false;
 
  147                         fCurrentStepSize[num] = -1.0;
 
  148                         fLocatedVolume[num] = 0;
 
  149                         fPreSafetyValues[num]= -1.0;
 
  150                         fCurrentPreStepSafety[num] = -1.0;
 
  151                         fNewSafetyComputed[num]= -1.0;
 
  166                         G4double  pCurrentProposedStepLength,
 
  181                         G4bool  relativeSearch=
true);
 
  320         if( (navId < G4ITNavigator::fMaxNav) && (navId >=0) ) { vol= 
fpTrackState->fLocatedVolume[navId]; }
 
  336         unsigned int noGeometries=
fpTrackState->fNoGeometriesLimiting;
 
G4ITNavigator * GetNavigator(G4int n) const 
 
void ReLocate(const G4ThreeVector &position)
 
G4ITMultiNavigator * fpMultiNavigator
 
static G4ITPathFinder * GetInstance()
 
#define fCurrentPreStepSafety
 
G4double ObtainSafety(G4int navId, G4ThreeVector &globalCenterPoint)
 
G4double GetMinimumStep() const 
 
G4double fMinSafety_PreStepPt
 
G4double LastPreSafety(G4int navId, G4ThreeVector &globalCenterPoint, G4double &minSafety)
 
static const G4double kInfinity
 
CLHEP::Hep3Vector G4ThreeVector
 
StateTypeHandle fpTrackState
 
G4bool IsParticleLooping() const 
 
G4bool fPreStepCenterRenewed
 
void EnableParallelNavigation(G4bool enableChoice=true)
 
void Locate(const G4ThreeVector &position, const G4ThreeVector &direction, G4bool relativeSearch=true)
 
G4ThreeVector fSafetyLocation
 
G4TouchableHandle CreateTouchableHandle(G4int navId) const 
 
void PrepareNewTrack(const G4ThreeVector &position, const G4ThreeVector &direction, G4VPhysicalVolume *massStartVol=0)
 
G4ThreeVector fLastLocatedPosition
 
G4double GetCurrentSafety() const 
 
#define fFieldExertedForce
 
G4VPhysicalVolume * GetLocatedVolume(G4int navId) const 
 
G4double DoNextLinearStep(const G4FieldTrack &FieldTrack, G4double proposedStepLength)
 
static G4ThreadLocal G4ITPathFinder * fpPathFinder
 
G4bool UseSafetyForOptimization(G4bool)
 
void ReportMove(const G4ThreeVector &OldV, const G4ThreeVector &NewV, const G4String &Quantity) const 
 
G4int fNoGeometriesLimiting
 
G4int GetMaxLoopCount() const 
 
G4double ComputeSafety(const G4ThreeVector &globalPoint)
 
static const G4double minSafety
 
G4double DoNextCurvedStep(const G4FieldTrack &FieldTrack, G4double proposedStepLength, G4VPhysicalVolume *pCurrentPhysVolume)
 
G4bool fFieldExertedForce
 
G4double fMinSafety_atSafLocation
 
G4String & LimitedString(ELimited lim)
 
G4int fNoActiveNavigators
 
void SetMaxLoopCount(G4int new_max)
 
unsigned int GetNumberGeometriesLimitingStep() const 
 
G4ThreeVector fPreStepLocation
 
G4double ComputeStep(const G4FieldTrack &pFieldTrack, G4double pCurrentProposedStepLength, G4int navigatorId, G4int stepNo, G4double &pNewSafety, ELimited &limitedStep, G4FieldTrack &EndState, G4VPhysicalVolume *currentVolume)
 
G4int SetVerboseLevel(G4int lev=-1)
 
G4ThreeVector fPreSafetyLocation
 
G4double fPreSafetyMinValue
 
void PushPostSafetyToPreSafety()
 
G4ITNavigator * fpNavigator[G4ITNavigator::fMaxNav]
 
G4ITTransportationManager * fpTransportManager
 
#define fNewSafetyComputed