Geant4  10.03
G4Navigator Class Reference

#include <G4Navigator.hh>

+ Inheritance diagram for G4Navigator:
+ Collaboration diagram for G4Navigator:

Classes

struct  G4SaveNavigatorState
 

Public Member Functions

 G4Navigator ()
 
virtual ~G4Navigator ()
 
virtual G4double ComputeStep (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double pCurrentProposedStepLength, G4double &pNewSafety)
 
G4double CheckNextStep (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double pCurrentProposedStepLength, G4double &pNewSafety)
 
virtual G4VPhysicalVolumeResetHierarchyAndLocate (const G4ThreeVector &point, const G4ThreeVector &direction, const G4TouchableHistory &h)
 
virtual G4VPhysicalVolumeLocateGlobalPointAndSetup (const G4ThreeVector &point, const G4ThreeVector *direction=0, const G4bool pRelativeSearch=true, const G4bool ignoreDirection=true)
 
virtual void LocateGlobalPointWithinVolume (const G4ThreeVector &position)
 
void LocateGlobalPointAndUpdateTouchableHandle (const G4ThreeVector &position, const G4ThreeVector &direction, G4TouchableHandle &oldTouchableToUpdate, const G4bool RelativeSearch=true)
 
void LocateGlobalPointAndUpdateTouchable (const G4ThreeVector &position, const G4ThreeVector &direction, G4VTouchable *touchableToUpdate, const G4bool RelativeSearch=true)
 
void LocateGlobalPointAndUpdateTouchable (const G4ThreeVector &position, G4VTouchable *touchableToUpdate, const G4bool RelativeSearch=true)
 
void SetGeometricallyLimitedStep ()
 
virtual G4double ComputeSafety (const G4ThreeVector &globalpoint, const G4double pProposedMaxLength=DBL_MAX, const G4bool keepState=true)
 
virtual G4bool RecheckDistanceToCurrentBoundary (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double CurrentProposedStepLength, G4double *prDistance, G4double *prNewSafety=0) const
 
G4VPhysicalVolumeGetWorldVolume () const
 
void SetWorldVolume (G4VPhysicalVolume *pWorld)
 
G4GRSVolumeCreateGRSVolume () const
 
G4GRSSolidCreateGRSSolid () const
 
G4TouchableHistoryCreateTouchableHistory () const
 
G4TouchableHistoryCreateTouchableHistory (const G4NavigationHistory *) const
 
virtual G4TouchableHistoryHandle CreateTouchableHistoryHandle () const
 
virtual G4ThreeVector GetLocalExitNormal (G4bool *valid)
 
virtual G4ThreeVector GetLocalExitNormalAndCheck (const G4ThreeVector &point, G4bool *valid)
 
virtual G4ThreeVector GetGlobalExitNormal (const G4ThreeVector &point, G4bool *valid)
 
G4int GetVerboseLevel () const
 
void SetVerboseLevel (G4int level)
 
G4bool IsActive () const
 
void Activate (G4bool flag)
 
G4bool EnteredDaughterVolume () const
 
G4bool ExitedMotherVolume () const
 
void CheckMode (G4bool mode)
 
G4bool IsCheckModeActive () const
 
void SetPushVerbosity (G4bool mode)
 
void PrintState () const
 
const G4AffineTransformGetGlobalToLocalTransform () const
 
const G4AffineTransform GetLocalToGlobalTransform () const
 
G4AffineTransform GetMotherToDaughterTransform (G4VPhysicalVolume *dVolume, G4int dReplicaNo, EVolume dVolumeType)
 
void ResetStackAndState ()
 
G4int SeverityOfZeroStepping (G4int *noZeroSteps) const
 
G4ThreeVector GetCurrentLocalCoordinate () const
 
G4ThreeVector NetTranslation () const
 
G4RotationMatrix NetRotation () const
 
void EnableBestSafety (G4bool value=false)
 

Protected Member Functions

void SetSavedState ()
 
void RestoreSavedState ()
 
virtual void ResetState ()
 
G4ThreeVector ComputeLocalPoint (const G4ThreeVector &rGlobPoint) const
 
G4ThreeVector ComputeLocalAxis (const G4ThreeVector &pVec) const
 
EVolume VolumeType (const G4VPhysicalVolume *pVol) const
 
EVolume CharacteriseDaughters (const G4LogicalVolume *pLog) const
 
G4int GetDaughtersRegularStructureId (const G4LogicalVolume *pLog) const
 
virtual void SetupHierarchy ()
 

Protected Attributes

G4double kCarTolerance
 
G4double fMinStep
 
G4double fSqTol
 
G4NavigationHistory fHistory
 
G4bool fEnteredDaughter
 
G4bool fExitedMother
 
G4bool fWasLimitedByGeometry
 
G4ThreeVector fStepEndPoint
 
G4ThreeVector fLastStepEndPointLocal
 
G4int fVerbose
 

Private Member Functions

 G4Navigator (const G4Navigator &)
 
G4Navigatoroperator= (const G4Navigator &)
 
void ComputeStepLog (const G4ThreeVector &pGlobalpoint, G4double moveLenSq) const
 

Private Attributes

G4bool fActive
 
G4bool fLastTriedStepComputation
 
G4bool fEntering
 
G4bool fExiting
 
G4VPhysicalVolumefBlockedPhysicalVolume
 
G4int fBlockedReplicaNo
 
G4ThreeVector fLastLocatedPointLocal
 
G4bool fLocatedOutsideWorld
 
G4bool fValidExitNormal
 
G4ThreeVector fExitNormal
 
G4ThreeVector fGrandMotherExitNormal
 
G4bool fChangedGrandMotherRefFrame
 
G4ThreeVector fExitNormalGlobalFrame
 
G4bool fCalculatedExitNormal
 
G4bool fLastStepWasZero
 
G4bool fLocatedOnEdge
 
G4int fNumberZeroSteps
 
G4int fActionThreshold_NoZeroSteps
 
G4int fAbandonThreshold_NoZeroSteps
 
G4ThreeVector fPreviousSftOrigin
 
G4double fPreviousSafety
 
struct
G4Navigator::G4SaveNavigatorState 
fSaveState
 
G4VPhysicalVolumefTopPhysical
 
G4bool fCheck
 
G4bool fPushed
 
G4bool fWarnPush
 
G4NormalNavigation fnormalNav
 
G4VoxelNavigation fvoxelNav
 
G4ParameterisedNavigation fparamNav
 
G4ReplicaNavigation freplicaNav
 
G4RegularNavigation fregularNav
 
G4VoxelSafetyfpVoxelSafety
 

Friends

std::ostream & operator<< (std::ostream &os, const G4Navigator &n)
 

Detailed Description

Definition at line 73 of file G4Navigator.hh.

Constructor & Destructor Documentation

G4Navigator::G4Navigator ( )
G4Navigator::~G4Navigator ( )
virtual

Definition at line 85 of file G4Navigator.cc.

References fpVoxelSafety.

G4Navigator::G4Navigator ( const G4Navigator )
private

Member Function Documentation

void G4Navigator::Activate ( G4bool  flag)
inline

Referenced by G4TransportationManager::ActivateNavigator(), and G4TransportationManager::G4TransportationManager().

+ Here is the caller graph for this function:

EVolume G4Navigator::CharacteriseDaughters ( const G4LogicalVolume pLog) const
inlineprotected

Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().

+ Here is the caller graph for this function:

void G4Navigator::CheckMode ( G4bool  mode)
inline

Referenced by G4VIntersectionLocator::LocateGlobalPointWithinVolumeAndCheck(), and G4GeometryMessenger::SetCheckMode().

+ Here is the caller graph for this function:

G4double G4Navigator::CheckNextStep ( const G4ThreeVector pGlobalPoint,
const G4ThreeVector pDirection,
const G4double  pCurrentProposedStepLength,
G4double pNewSafety 
)

Definition at line 1197 of file G4Navigator.cc.

References ComputeStep(), RestoreSavedState(), and SetSavedState().

Referenced by G4SafetyHelper::CheckNextStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector G4Navigator::ComputeLocalAxis ( const G4ThreeVector pVec) const
inlineprotected

Referenced by ComputeStep(), and RecheckDistanceToCurrentBoundary().

+ Here is the caller graph for this function:

G4ThreeVector G4Navigator::ComputeLocalPoint ( const G4ThreeVector rGlobPoint) const
inlineprotected

Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointWithinVolume(), and RecheckDistanceToCurrentBoundary().

+ Here is the caller graph for this function:

G4double G4Navigator::ComputeSafety ( const G4ThreeVector globalpoint,
const G4double  pProposedMaxLength = DBL_MAX,
const G4bool  keepState = true 
)
virtual

Reimplemented in G4MultiNavigator, and G4ErrorPropagationNavigator.

Definition at line 1749 of file G4Navigator.cc.

References CharacteriseDaughters(), ComputeLocalPoint(), G4VoxelSafety::ComputeSafety(), G4ParameterisedNavigation::ComputeSafety(), G4NormalNavigation::ComputeSafety(), G4VoxelNavigation::ComputeSafety(), G4RegularNavigation::ComputeSafety(), G4ReplicaNavigation::ComputeSafety(), FatalException, fEnteredDaughter, fExitedMother, fHistory, fnormalNav, fparamNav, fPreviousSafety, fPreviousSftOrigin, fpVoxelSafety, fregularNav, freplicaNav, fStepEndPoint, fVerbose, fvoxelNav, G4cout, G4endl, G4Exception(), GetDaughtersRegularStructureId(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4NavigationHistory::GetTopVolume(), G4NavigationHistory::GetTopVolumeType(), G4LogicalVolume::GetVoxelHeader(), kCarTolerance, kNormal, kParameterised, kReplica, LocateGlobalPointWithinVolume(), PrintState(), RestoreSavedState(), and SetSavedState().

Referenced by G4Transportation::AlongStepGetPhysicalInteractionLength(), G4MonopoleTransportation::AlongStepGetPhysicalInteractionLength(), G4WeightCutOffProcess::AlongStepGetPhysicalInteractionLength(), G4ParallelWorldProcess::AlongStepGetPhysicalInteractionLength(), G4ImportanceProcess::AlongStepGetPhysicalInteractionLength(), G4ParallelWorldScoringProcess::AlongStepGetPhysicalInteractionLength(), G4WeightWindowProcess::AlongStepGetPhysicalInteractionLength(), G4FastSimulationManagerProcess::AlongStepGetPhysicalInteractionLength(), G4ErrorPropagationNavigator::ComputeSafety(), G4SafetyHelper::ComputeSafety(), and G4PathFinder::DoNextCurvedStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Navigator::ComputeStep ( const G4ThreeVector pGlobalPoint,
const G4ThreeVector pDirection,
const G4double  pCurrentProposedStepLength,
G4double pNewSafety 
)
virtual

Reimplemented in G4MultiNavigator, and G4ErrorPropagationNavigator.

Definition at line 747 of file G4Navigator.cc.

References CharacteriseDaughters(), G4VPhysicalVolume::CheckOverlaps(), ComputeLocalAxis(), ComputeLocalPoint(), G4RegularNavigation::ComputeStep(), G4ParameterisedNavigation::ComputeStep(), G4NormalNavigation::ComputeStep(), G4VoxelNavigation::ComputeStep(), G4ReplicaNavigation::ComputeStep(), ComputeStepLog(), EventMustBeAborted, fAbandonThreshold_NoZeroSteps, fActionThreshold_NoZeroSteps, FatalException, fBlockedPhysicalVolume, fBlockedReplicaNo, fCalculatedExitNormal, fChangedGrandMotherRefFrame, fEnteredDaughter, fEntering, fExitedMother, fExiting, fExitNormal, fExitNormalGlobalFrame, fGrandMotherExitNormal, fHistory, fLastLocatedPointLocal, fLastStepEndPointLocal, fLastStepWasZero, fLastTriedStepComputation, fLocatedOnEdge, fMinStep, fnormalNav, fNumberZeroSteps, fparamNav, fPreviousSafety, fPreviousSftOrigin, fPushed, fregularNav, freplicaNav, fSqTol, fStepEndPoint, fValidExitNormal, fVerbose, fvoxelNav, fWarnPush, G4cout, G4endl, G4Exception(), G4ThreadLocal, G4VPhysicalVolume::GetCopyNo(), GetDaughtersRegularStructureId(), G4NavigationHistory::GetDepth(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4VPhysicalVolume::GetRegularStructureId(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4NavigationHistory::GetTopVolume(), G4NavigationHistory::GetTopVolumeType(), G4NavigationHistory::GetTransform(), G4LogicalVolume::GetVoxelHeader(), G4AffineTransform::Inverse(), JustWarning, kCarTolerance, kInfinity, kNormal, kParameterised, kReplica, LocateGlobalPointAndSetup(), LocateGlobalPointWithinVolume(), G4INCL::Math::min(), PrintState(), G4VSolid::SurfaceNormal(), and G4AffineTransform::TransformAxis().

Referenced by G4Transportation::AlongStepGetPhysicalInteractionLength(), G4MonopoleTransportation::AlongStepGetPhysicalInteractionLength(), CheckNextStep(), G4AdjointPrimaryGenerator::ComputeAccumulatedDepthVectorAlongBackRay(), and G4ErrorPropagationNavigator::ComputeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Navigator::ComputeStepLog ( const G4ThreeVector pGlobalpoint,
G4double  moveLenSq 
) const
private

Definition at line 2147 of file G4Navigator.cc.

References fHistory, fLastLocatedPointLocal, fPreviousSafety, fPreviousSftOrigin, G4cerr, G4cout, G4endl, G4Exception(), G4ThreadLocal, G4NavigationHistory::GetTopTransform(), G4AffineTransform::Inverse(), JustWarning, kCarTolerance, mm, and sqr().

Referenced by ComputeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4GRSSolid* G4Navigator::CreateGRSSolid ( ) const
inline
G4GRSVolume* G4Navigator::CreateGRSVolume ( ) const
inline
G4TouchableHistory* G4Navigator::CreateTouchableHistory ( ) const
inline

Referenced by G4MultiNavigator::CreateTouchableHistoryHandle(), CreateTouchableHistoryHandle(), G4VIntersectionLocator::GetLocalSurfaceNormal(), and G4SteppingManager::SetInitialStep().

+ Here is the caller graph for this function:

G4TouchableHistory* G4Navigator::CreateTouchableHistory ( const G4NavigationHistory ) const
inline
G4TouchableHistoryHandle G4Navigator::CreateTouchableHistoryHandle ( ) const
virtual

Reimplemented in G4MultiNavigator.

Definition at line 2075 of file G4Navigator.cc.

References CreateTouchableHistory().

Referenced by G4FastTrack::FRecordsAffineTransformation(), and G4VIntersectionLocator::LocateGlobalPointWithinVolumeAndCheck().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Navigator::EnableBestSafety ( G4bool  value = false)
inline
G4bool G4Navigator::EnteredDaughterVolume ( ) const
inline

Referenced by GetLocalExitNormal(), and G4Transportation::PostStepDoIt().

+ Here is the caller graph for this function:

G4bool G4Navigator::ExitedMotherVolume ( ) const
inline

Referenced by G4Transportation::PostStepDoIt().

+ Here is the caller graph for this function:

G4ThreeVector G4Navigator::GetCurrentLocalCoordinate ( ) const
inline
G4int G4Navigator::GetDaughtersRegularStructureId ( const G4LogicalVolume pLog) const
inlineprotected

Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().

+ Here is the caller graph for this function:

G4ThreeVector G4Navigator::GetGlobalExitNormal ( const G4ThreeVector point,
G4bool valid 
)
virtual
const G4AffineTransform& G4Navigator::GetGlobalToLocalTransform ( ) const
inline

Referenced by GetLocalExitNormalAndCheck(), and G4VIntersectionLocator::LocateGlobalPointWithinVolumeAndCheck().

+ Here is the caller graph for this function:

G4ThreeVector G4Navigator::GetLocalExitNormalAndCheck ( const G4ThreeVector point,
G4bool valid 
)
virtual

Reimplemented in G4MultiNavigator.

Definition at line 1538 of file G4Navigator.cc.

References fLastTriedStepComputation, GetGlobalToLocalTransform(), GetLocalExitNormal(), and G4AffineTransform::TransformPoint().

Referenced by GetGlobalExitNormal().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4AffineTransform G4Navigator::GetLocalToGlobalTransform ( ) const
inline

Referenced by G4RayTrajectory::AppendStep(), GetGlobalExitNormal(), and G4VIntersectionLocator::GetGlobalSurfaceNormal().

+ Here is the caller graph for this function:

G4AffineTransform G4Navigator::GetMotherToDaughterTransform ( G4VPhysicalVolume dVolume,
G4int  dReplicaNo,
EVolume  dVolumeType 
)

Definition at line 1491 of file G4Navigator.cc.

References G4VSolid::ComputeDimensions(), G4VPVParameterisation::ComputeSolid(), G4VPVParameterisation::ComputeTransformation(), FatalException, G4Exception(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetParameterisation(), G4VPhysicalVolume::GetRegularStructureId(), G4VPhysicalVolume::GetRotation(), G4VPhysicalVolume::GetTranslation(), kNormal, kParameterised, kReplica, and G4LogicalVolume::SetSolid().

Referenced by GetLocalExitNormal().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4Navigator::GetVerboseLevel ( ) const
inline

Referenced by export_G4Navigator(), GetGlobalExitNormal(), and G4ErrorPropagatorManager::StartNavigator().

+ Here is the caller graph for this function:

G4bool G4Navigator::IsActive ( ) const
inline

Referenced by export_G4Navigator().

+ Here is the caller graph for this function:

G4bool G4Navigator::IsCheckModeActive ( ) const
inline

Referenced by G4VIntersectionLocator::LocateGlobalPointWithinVolumeAndCheck().

+ Here is the caller graph for this function:

G4VPhysicalVolume * G4Navigator::LocateGlobalPointAndSetup ( const G4ThreeVector point,
const G4ThreeVector direction = 0,
const G4bool  pRelativeSearch = true,
const G4bool  ignoreDirection = true 
)
virtual

Reimplemented in G4MultiNavigator.

Definition at line 125 of file G4Navigator.cc.

References G4NavigationHistory::BackLevel(), G4ReplicaNavigation::BackLocate(), CharacteriseDaughters(), G4VSolid::ComputeDimensions(), G4VPVParameterisation::ComputeSolid(), G4VPVParameterisation::ComputeTransformation(), G4ReplicaNavigation::ComputeTransformation(), fBlockedPhysicalVolume, fBlockedReplicaNo, fChangedGrandMotherRefFrame, fCheck, fEnteredDaughter, fEntering, fExitedMother, fExiting, fGrandMotherExitNormal, fHistory, fLastLocatedPointLocal, fLastTriedStepComputation, fLocatedOnEdge, fLocatedOutsideWorld, fnormalNav, fparamNav, fregularNav, freplicaNav, fValidExitNormal, fVerbose, fvoxelNav, fWasLimitedByGeometry, G4cout, G4endl, G4VPhysicalVolume::GetCopyNo(), GetDaughtersRegularStructureId(), G4NavigationHistory::GetDepth(), G4VPhysicalVolume::GetLogicalVolume(), G4VSolid::GetName(), G4VPhysicalVolume::GetName(), G4VPhysicalVolume::GetParameterisation(), G4VPhysicalVolume::GetRegularStructureId(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4NavigationHistory::GetTopReplicaNo(), G4NavigationHistory::GetTopTransform(), G4NavigationHistory::GetTopVolume(), G4NavigationHistory::GetTopVolumeType(), G4LogicalVolume::GetVoxelHeader(), G4VSolid::Inside(), kNormal, kOutside, kParameterised, kReplica, kSurface, G4RegularNavigation::LevelLocate(), G4NormalNavigation::LevelLocate(), G4ParameterisedNavigation::LevelLocate(), G4VoxelNavigation::LevelLocate(), G4ReplicaNavigation::LevelLocate(), G4NavigationHistory::NewLevel(), CLHEP::normal(), PrintState(), ResetStackAndState(), G4VPhysicalVolume::SetCopyNo(), G4LogicalVolume::SetSolid(), G4VSolid::SurfaceNormal(), G4AffineTransform::TransformAxis(), G4AffineTransform::TransformPoint(), G4LogicalVolume::UpdateMaterial(), and VolumeType().

Referenced by XrayFluoAnalysisManager::analyseStepping(), G4AdjointPrimaryGenerator::ComputeAccumulatedDepthVectorAlongBackRay(), ComputeStep(), F04ElementField::Construct(), G4TheRayTracer::CreateBitMap(), G4MagneticFieldModel::DescribeYourselfTo(), G4EventManager::DoProcessing(), G4MaterialScanner::DoScan(), G4TrajectoryDrawByOriginVolume::Draw(), G4TrajectoryOriginVolumeFilter::Evaluate(), F04PrimaryGeneratorAction::GeneratePrimaries(), G4VIntersectionLocator::GetLocalSurfaceNormal(), DMXParticleSource::IsSourceConfined(), G4SPSPosDistribution::IsSourceConfined(), G4SafetyHelper::Locate(), G4VIntersectionLocator::LocateGlobalPointWithinVolumeAndCheck(), ResetHierarchyAndLocate(), G4GeometryMessenger::ResetNavigator(), and G4SteppingManager::SetInitialStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Navigator::LocateGlobalPointAndUpdateTouchable ( const G4ThreeVector position,
const G4ThreeVector direction,
G4VTouchable touchableToUpdate,
const G4bool  RelativeSearch = true 
)
inline

Referenced by G4VReadOutGeometry::FindROTouchable().

+ Here is the caller graph for this function:

void G4Navigator::LocateGlobalPointAndUpdateTouchable ( const G4ThreeVector position,
G4VTouchable touchableToUpdate,
const G4bool  RelativeSearch = true 
)
inline
void G4Navigator::LocateGlobalPointAndUpdateTouchableHandle ( const G4ThreeVector position,
const G4ThreeVector direction,
G4TouchableHandle oldTouchableToUpdate,
const G4bool  RelativeSearch = true 
)
inline
void G4Navigator::LocateGlobalPointWithinVolume ( const G4ThreeVector position)
virtual
G4RotationMatrix G4Navigator::NetRotation ( ) const
inline
G4ThreeVector G4Navigator::NetTranslation ( ) const
inline
G4Navigator& G4Navigator::operator= ( const G4Navigator )
private
void G4Navigator::PrintState ( ) const

Definition at line 2084 of file G4Navigator.cc.

References fBlockedPhysicalVolume, fBlockedReplicaNo, fEntering, fExiting, fExitNormal, fLastLocatedPointLocal, fLastStepWasZero, fPreviousSafety, fPreviousSftOrigin, fValidExitNormal, fVerbose, G4cout, G4endl, and G4VPhysicalVolume::GetName().

Referenced by ComputeSafety(), ComputeStep(), export_G4Navigator(), and LocateGlobalPointAndSetup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4Navigator::RecheckDistanceToCurrentBoundary ( const G4ThreeVector pGlobalPoint,
const G4ThreeVector pDirection,
const G4double  CurrentProposedStepLength,
G4double prDistance,
G4double prNewSafety = 0 
) const
virtual
G4VPhysicalVolume * G4Navigator::ResetHierarchyAndLocate ( const G4ThreeVector point,
const G4ThreeVector direction,
const G4TouchableHistory h 
)
virtual

Reimplemented in G4MultiNavigator.

Definition at line 95 of file G4Navigator.cc.

References fHistory, fLastTriedStepComputation, G4TouchableHistory::GetHistory(), LocateGlobalPointAndSetup(), ResetState(), and SetupHierarchy().

Referenced by G4MultiNavigator::ResetHierarchyAndLocate(), and G4SteppingManager::SetInitialStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Navigator::ResetStackAndState ( )
inline

Referenced by G4Navigator(), and LocateGlobalPointAndSetup().

+ Here is the caller graph for this function:

void G4Navigator::ResetState ( )
protectedvirtual
void G4Navigator::SetGeometricallyLimitedStep ( )
inline

Referenced by G4Transportation::PostStepDoIt(), and G4MonopoleTransportation::PostStepDoIt().

+ Here is the caller graph for this function:

void G4Navigator::SetPushVerbosity ( G4bool  mode)
inline

Referenced by G4ParallelWorldProcess::G4ParallelWorldProcess(), G4ParallelWorldProcess::SetParallelWorld(), and G4GeometryMessenger::SetPushFlag().

+ Here is the caller graph for this function:

void G4Navigator::SetupHierarchy ( )
protectedvirtual

Reimplemented in G4MultiNavigator.

Definition at line 1269 of file G4Navigator.cc.

References G4VSolid::ComputeDimensions(), G4VPVParameterisation::ComputeSolid(), G4VPVParameterisation::ComputeTransformation(), G4ReplicaNavigation::ComputeTransformation(), fHistory, freplicaNav, G4NavigationHistory::GetDepth(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetParameterisation(), G4NavigationHistory::GetReplicaNo(), G4NavigationHistory::GetVolume(), G4NavigationHistory::GetVolumeType(), G4VPVParameterisation::IsNested(), kNormal, kParameterised, kReplica, G4TouchableHistory::MoveUpHistory(), G4LogicalVolume::SetSolid(), and G4LogicalVolume::UpdateMaterial().

Referenced by ResetHierarchyAndLocate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Navigator::SetVerboseLevel ( G4int  level)
inline

Referenced by export_G4Navigator(), GetGlobalExitNormal(), G4GeometryMessenger::SetVerbosity(), and G4ErrorPropagatorManager::StartNavigator().

+ Here is the caller graph for this function:

G4int G4Navigator::SeverityOfZeroStepping ( G4int noZeroSteps) const
inline
EVolume G4Navigator::VolumeType ( const G4VPhysicalVolume pVol) const
inlineprotected

Referenced by GetLocalExitNormal(), and LocateGlobalPointAndSetup().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const G4Navigator n 
)
friend

Definition at line 2250 of file G4Navigator.cc.

Member Data Documentation

G4int G4Navigator::fAbandonThreshold_NoZeroSteps
private

Definition at line 451 of file G4Navigator.hh.

Referenced by ComputeStep(), and G4Navigator().

G4int G4Navigator::fActionThreshold_NoZeroSteps
private

Definition at line 449 of file G4Navigator.hh.

Referenced by ComputeStep(), and G4Navigator().

G4bool G4Navigator::fActive
private

Definition at line 397 of file G4Navigator.hh.

Referenced by G4Navigator().

G4bool G4Navigator::fCalculatedExitNormal
private

Definition at line 433 of file G4Navigator.hh.

Referenced by ComputeStep(), GetGlobalExitNormal(), GetLocalExitNormal(), and ResetState().

G4bool G4Navigator::fChangedGrandMotherRefFrame
private
G4bool G4Navigator::fCheck
private

Definition at line 493 of file G4Navigator.hh.

Referenced by GetLocalExitNormal(), and LocateGlobalPointAndSetup().

G4ThreeVector G4Navigator::fExitNormal
private
G4ThreeVector G4Navigator::fExitNormalGlobalFrame
private

Definition at line 431 of file G4Navigator.hh.

Referenced by ComputeStep(), GetGlobalExitNormal(), and ResetState().

G4ThreeVector G4Navigator::fGrandMotherExitNormal
private
G4ThreeVector G4Navigator::fLastStepEndPointLocal
protected

Definition at line 388 of file G4Navigator.hh.

Referenced by ComputeStep(), G4Navigator(), and GetLocalExitNormal().

G4bool G4Navigator::fLastStepWasZero
private
G4bool G4Navigator::fLocatedOnEdge
private

Definition at line 445 of file G4Navigator.hh.

Referenced by ComputeStep(), LocateGlobalPointAndSetup(), and ResetState().

G4bool G4Navigator::fLocatedOutsideWorld
private
G4double G4Navigator::fMinStep
protected

Definition at line 361 of file G4Navigator.hh.

Referenced by ComputeStep(), and G4Navigator().

G4NormalNavigation G4Navigator::fnormalNav
private

Definition at line 500 of file G4Navigator.hh.

Referenced by ComputeSafety(), ComputeStep(), G4Navigator(), and LocateGlobalPointAndSetup().

G4int G4Navigator::fNumberZeroSteps
private

Definition at line 447 of file G4Navigator.hh.

Referenced by ComputeStep(), and ResetState().

G4ParameterisedNavigation G4Navigator::fparamNav
private
G4double G4Navigator::fPreviousSafety
private
G4ThreeVector G4Navigator::fPreviousSftOrigin
private
G4bool G4Navigator::fPushed
private

Definition at line 495 of file G4Navigator.hh.

Referenced by ComputeStep(), and ResetState().

G4VoxelSafety* G4Navigator::fpVoxelSafety
private

Definition at line 505 of file G4Navigator.hh.

Referenced by ComputeSafety(), G4Navigator(), and ~G4Navigator().

G4RegularNavigation G4Navigator::fregularNav
private

Definition at line 504 of file G4Navigator.hh.

Referenced by ComputeSafety(), ComputeStep(), G4Navigator(), and LocateGlobalPointAndSetup().

G4ReplicaNavigation G4Navigator::freplicaNav
private
struct G4Navigator::G4SaveNavigatorState G4Navigator::fSaveState
private

Referenced by RestoreSavedState(), and SetSavedState().

G4double G4Navigator::fSqTol
protected

Definition at line 361 of file G4Navigator.hh.

Referenced by ComputeStep(), G4Navigator(), and GetGlobalExitNormal().

G4ThreeVector G4Navigator::fStepEndPoint
protected

Definition at line 385 of file G4Navigator.hh.

Referenced by ComputeSafety(), ComputeStep(), G4Navigator(), and GetGlobalExitNormal().

G4VPhysicalVolume* G4Navigator::fTopPhysical
private

Definition at line 487 of file G4Navigator.hh.

G4bool G4Navigator::fValidExitNormal
private
G4VoxelNavigation G4Navigator::fvoxelNav
private
G4bool G4Navigator::fWarnPush
private

Definition at line 495 of file G4Navigator.hh.

Referenced by ComputeStep().


The documentation for this class was generated from the following files: