47 #ifndef G4PropagatorInField_hh  
   48 #define G4PropagatorInField_hh  1 
  164    void   PrepareNewTrack() { fNewTrack = 
true; fFirstStepInVolume=
false; fLastStepInVolume=
false; } 
 
  214    G4int    fMax_loop_count;
 
  216    G4bool   fUseSafetyForOptimisation;
 
  219    G4int    fActionThreshold_NoZeroSteps;       
 
  220    G4int    fSevereActionThreshold_NoZeroSteps; 
 
  221    G4int    fAbandonThreshold_NoZeroSteps;      
 
  267    G4bool         fParticleIsLooping;
 
  271    G4double       fFull_CurveLen_of_LastAttempt; 
 
  282    G4bool         fFirstStepInVolume; 
 
  290 #include "G4PropagatorInField.icc" 
G4double GetZeroStepThreshold()
 
void SetEpsilonStep(G4double newEps)
 
void SetNavigatorForPropagating(G4Navigator *SimpleOrMultiNavigator)
 
G4int GetMaxLoopCount() const 
 
G4Navigator * GetNavigatorForPropagating()
 
void SetIntersectionLocator(G4VIntersectionLocator *pLocator)
 
std::vector< G4ThreeVector > * GimmeTrajectoryVectorAndForgetIt() const 
 
void SetThresholdNoZeroStep(G4int noAct, G4int noHarsh, G4int noAbandon)
 
void PrintStepLengthDiagnostic(G4double currentProposedStepLength, G4double decreaseFactor, G4double stepTrial, const G4FieldTrack &aFieldTrack)
 
G4ThreeVector EndPosition() const 
 
void SetUseSafetyForOptimization(G4bool)
 
G4double GetDeltaIntersection() const 
 
G4ThreeVector EndMomentumDir() const 
 
void RefreshIntersectionLocator()
 
G4PropagatorInField(G4Navigator *theNavigator, G4FieldManager *detectorFieldMgr, G4VIntersectionLocator *vLocator=0)
 
void SetVerboseTrace(G4bool enable)
 
G4double GetMaximumEpsilonStep() const 
 
G4int SetVerboseLevel(G4int verbose)
 
G4bool IsFirstStepInVolume()
 
G4FieldTrack GetEndState() const 
 
G4EquationOfMotion * GetCurrentEquationOfMotion()
 
void ReportLoopingParticle(G4int count, double StepTaken, G4VPhysicalVolume *pPhysVol)
 
G4int GetVerboseLevel() const 
 
G4bool GetUseSafetyForOptimization()
 
void SetZeroStepThreshold(G4double newLength)
 
G4double GetDeltaOneStep() const 
 
G4bool IsLastStepInVolume()
 
G4FieldManager * FindAndSetFieldManager(G4VPhysicalVolume *pCurrentPhysVol)
 
void SetMaxLoopCount(G4int new_max)
 
G4double ComputeStep(G4FieldTrack &pFieldTrack, G4double pCurrentProposedStepLength, G4double &pNewSafety, G4VPhysicalVolume *pPhysVol=0)
 
G4int GetThresholdNoZeroSteps(G4int i)
 
G4bool IsParticleLooping() const 
 
void ReportStuckParticle(G4int noZeroSteps, G4double proposedStep, G4double lastTriedStep, G4VPhysicalVolume *physVol)
 
G4ChordFinder * GetChordFinder()
 
G4FieldManager * GetCurrentFieldManager()
 
void SetMinimumEpsilonStep(G4double newEpsMin)
 
G4bool IntersectChord(const G4ThreeVector &StartPointA, const G4ThreeVector &EndPointB, G4double &NewSafety, G4double &LinearStepLength, G4ThreeVector &IntersectionPoint)
 
void SetTrajectoryFilter(G4VCurvedTrajectoryFilter *filter)
 
void ClearPropagatorState()
 
G4double GetMinimumEpsilonStep() const 
 
void SetLargestAcceptableStep(G4double newBigDist)
 
void SetDetectorFieldManager(G4FieldManager *newGlobalFieldManager)
 
void SetMaximumEpsilonStep(G4double newEpsMax)
 
G4double GetLargestAcceptableStep()
 
G4VIntersectionLocator * GetIntersectionLocator()
 
G4double GetEpsilonStep() const 
 
void printStatus(const G4FieldTrack &startFT, const G4FieldTrack ¤tFT, G4double requestStep, G4double safety, G4int step, G4VPhysicalVolume *startVolume)