Geant4
10.01.p02
|
#include <G4ITNavigator2.hh>
Classes | |
struct | G4NavigatorState |
struct | G4SaveNavigatorState |
Static Public Attributes | |
static const G4int | fMaxNav = 8 |
Protected Member Functions | |
G4ThreeVector | ComputeLocalPoint (const G4ThreeVector &rGlobPoint) const |
G4ThreeVector | ComputeLocalAxis (const G4ThreeVector &pVec) const |
virtual void | ResetState () |
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 |
G4int | fVerbose |
Private Member Functions | |
G4ITNavigator2 (const G4ITNavigator2 &) | |
G4ITNavigator2 & | operator= (const G4ITNavigator2 &) |
void | ComputeStepLog (const G4ThreeVector &pGlobalpoint, G4double moveLenSq) const |
Private Attributes | |
G4bool | fActive |
G4int | fActionThreshold_NoZeroSteps |
G4int | fAbandonThreshold_NoZeroSteps |
Friends | |
std::ostream & | operator<< (std::ostream &os, const G4ITNavigator2 &n) |
Definition at line 101 of file G4ITNavigator2.hh.
G4ITNavigator2::G4ITNavigator2 | ( | ) |
Definition at line 87 of file G4ITNavigator2.cc.
References fAbandonThreshold_NoZeroSteps, fActionThreshold_NoZeroSteps, fActive, fnormalNav, fpNavigatorState, fpVoxelSafety, fregularNav, G4GeometryTolerance::GetInstance(), G4GeometryTolerance::GetSurfaceTolerance(), kCarTolerance, and G4RegularNavigation::SetNormalNavigation().
|
virtual |
Definition at line 110 of file G4ITNavigator2.cc.
References fpVoxelSafety.
|
private |
|
inline |
|
inlineprotected |
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().
|
inline |
void G4ITNavigator2::CheckNavigatorState | ( | ) | const |
Definition at line 681 of file G4ITNavigator2.cc.
References FatalException, fpNavigatorState, and G4Exception().
G4double G4ITNavigator2::CheckNextStep | ( | const G4ThreeVector & | pGlobalPoint, |
const G4ThreeVector & | pDirection, | ||
const G4double | pCurrentProposedStepLength, | ||
G4double & | pNewSafety | ||
) |
Definition at line 1343 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, ComputeStep(), and fpNavigatorState.
|
inlineprotected |
Referenced by ComputeStep(), and RecheckDistanceToCurrentBoundary().
|
inlineprotected |
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointWithinVolume(), and RecheckDistanceToCurrentBoundary().
|
virtual |
Definition at line 1877 of file G4ITNavigator2.cc.
References CharacteriseDaughters(), CheckNavigatorStateIsValid, ComputeLocalPoint(), G4VoxelSafety::ComputeSafety(), G4ParameterisedNavigation::ComputeSafety(), G4NormalNavigation::ComputeSafety(), G4VoxelNavigation::ComputeSafety(), G4RegularNavigation::ComputeSafety(), G4ReplicaNavigation::ComputeSafety(), FatalException, fEnteredDaughter, fExitedMother, fHistory, fnormalNav, fparamNav, fpNavigatorState, fPreviousSafety, fPreviousSftOrigin, fpVoxelSafety, fregularNav, freplicaNav, fStepEndPoint, fVerbose, fvoxelNav, G4cout, G4endl, G4Exception(), GetDaughtersRegularStructureId(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetVoxelHeader(), kCarTolerance, kNormal, kParameterised, kReplica, LocateGlobalPointWithinVolume(), and PrintState().
|
virtual |
Definition at line 897 of file G4ITNavigator2.cc.
References CharacteriseDaughters(), CheckNavigatorStateIsValid, 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, fnormalNav, fNumberZeroSteps, fparamNav, fPreviousSafety, fPreviousSftOrigin, fPushed, fregularNav, freplicaNav, fStepEndPoint, fValidExitNormal, fVerbose, fvoxelNav, fWarnPush, G4cout, G4endl, G4Exception(), G4ThreadLocal, G4VPhysicalVolume::GetCopyNo(), GetDaughtersRegularStructureId(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4VPhysicalVolume::GetRegularStructureId(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4LogicalVolume::GetVoxelHeader(), JustWarning, kCarTolerance, kInfinity, kNormal, kParameterised, kReplica, LocateGlobalPointAndSetup(), LocateGlobalPointWithinVolume(), G4INCL::Math::min(), PrintState(), G4VSolid::SurfaceNormal(), and G4AffineTransform::TransformAxis().
Referenced by CheckNextStep().
|
private |
Definition at line 2283 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, fHistory, fLastLocatedPointLocal, fPreviousSafety, fPreviousSftOrigin, G4cerr, G4cout, G4endl, G4Exception(), G4ThreadLocal, JustWarning, kCarTolerance, mm, and sqr().
Referenced by ComputeStep().
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
Definition at line 2213 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, and CreateTouchableHistory().
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprotected |
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().
|
virtual |
Definition at line 1724 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, fCalculatedExitNormal, fEntering, fExiting, fExitNormalGlobalFrame, fLastTriedStepComputation, fStepEndPoint, fVerbose, G4endl, G4Exception(), GetLocalExitNormalAndCheck(), GetLocalToGlobalTransform(), GetVerboseLevel(), JustWarning, kCarTolerance, perMillion, SetVerboseLevel(), and G4AffineTransform::TransformAxis().
|
inline |
|
virtual |
Definition at line 1479 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, G4VSolid::DistanceToIn(), G4VSolid::DistanceToOut(), EnteredDaughterVolume(), FatalException, fBlockedPhysicalVolume, fBlockedReplicaNo, fCalculatedExitNormal, fCheck, fEntering, fExitedMother, fExiting, fGrandMotherExitNormal, fHistory, fLastLocatedPointLocal, fLastStepEndPointLocal, fLastTriedStepComputation, fVerbose, G4endl, G4Exception(), G4VSolid::GetEntityType(), GetMotherToDaughterTransform(), G4VSolid::GetName(), G4LogicalVolume::GetName(), G4LogicalVolume::GetSolid(), G4VSolid::Inside(), JustWarning, kCarTolerance, kInside, kOutside, kSurface, perMillion, G4VSolid::SurfaceNormal(), G4AffineTransform::TransformPoint(), and VolumeType().
Referenced by GetLocalExitNormalAndCheck().
|
virtual |
Definition at line 1688 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, fLastTriedStepComputation, GetGlobalToLocalTransform(), GetLocalExitNormal(), and G4AffineTransform::TransformPoint().
Referenced by GetGlobalExitNormal().
|
inline |
G4AffineTransform G4ITNavigator2::GetMotherToDaughterTransform | ( | G4VPhysicalVolume * | dVolume, |
G4int | dReplicaNo, | ||
EVolume | dVolumeType | ||
) |
Definition at line 1641 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, 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().
G4ITNavigatorState_Lock2 * G4ITNavigator2::GetNavigatorState | ( | ) |
Definition at line 696 of file G4ITNavigator2.cc.
References fpNavigatorState.
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
Definition at line 146 of file G4ITNavigator2.cc.
References G4ReplicaNavigation::BackLocate(), CharacteriseDaughters(), CheckNavigatorStateIsValid, 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, GetDaughtersRegularStructureId(), G4VPhysicalVolume::GetLogicalVolume(), G4VSolid::GetName(), G4VPhysicalVolume::GetName(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetVoxelHeader(), G4VSolid::Inside(), kNormal, kOutside, kParameterised, kReplica, kSurface, G4RegularNavigation::LevelLocate(), G4NormalNavigation::LevelLocate(), G4ParameterisedNavigation::LevelLocate(), G4VoxelNavigation::LevelLocate(), G4ReplicaNavigation::LevelLocate(), CLHEP::normal(), PrintState(), ResetStackAndState(), G4LogicalVolume::SetSolid(), G4VSolid::SurfaceNormal(), G4LogicalVolume::UpdateMaterial(), and VolumeType().
Referenced by ComputeStep(), NewNavigatorStateAndLocate(), and ResetHierarchyAndLocate().
|
inline |
|
inline |
|
inline |
|
virtual |
Definition at line 608 of file G4ITNavigator2.cc.
References CharacteriseDaughters(), CheckNavigatorStateIsValid, ComputeLocalPoint(), FatalException, fBlockedPhysicalVolume, fBlockedReplicaNo, fChangedGrandMotherRefFrame, fEnteredDaughter, fEntering, fExitedMother, fExiting, fHistory, fLastLocatedPointLocal, fLastTriedStepComputation, fparamNav, fVerbose, fvoxelNav, fWasLimitedByGeometry, G4cout, G4endl, G4Exception(), GetDaughtersRegularStructureId(), G4VPhysicalVolume::GetLogicalVolume(), G4LogicalVolume::GetVoxelHeader(), kNormal, kParameterised, kReplica, G4ParameterisedNavigation::ParamVoxelLocate(), and G4VoxelNavigation::VoxelLocate().
Referenced by ComputeSafety(), and ComputeStep().
|
inline |
|
inline |
void G4ITNavigator2::NewNavigatorState | ( | ) |
Definition at line 714 of file G4ITNavigator2.cc.
References FatalException, fHistory, fpNavigatorState, fTopPhysical, G4Exception(), and SetupHierarchy().
void G4ITNavigator2::NewNavigatorState | ( | const G4TouchableHistory & | h | ) |
Definition at line 731 of file G4ITNavigator2.cc.
References FatalException, fHistory, fLastTriedStepComputation, fpNavigatorState, fTopPhysical, G4Exception(), G4TouchableHistory::GetHistory(), and SetupHierarchy().
G4VPhysicalVolume * G4ITNavigator2::NewNavigatorStateAndLocate | ( | const G4ThreeVector & | p, |
const G4ThreeVector & | direction | ||
) |
Definition at line 749 of file G4ITNavigator2.cc.
References FatalException, fHistory, fpNavigatorState, fTopPhysical, G4Exception(), LocateGlobalPointAndSetup(), and SetupHierarchy().
|
private |
void G4ITNavigator2::PrintState | ( | ) | const |
Definition at line 2223 of file G4ITNavigator2.cc.
References CheckNavigatorStateIsValid, fBlockedPhysicalVolume, fBlockedReplicaNo, fEntering, fExiting, fExitNormal, fLastLocatedPointLocal, fLastStepWasZero, fPreviousSafety, fPreviousSftOrigin, fValidExitNormal, fVerbose, G4cout, and G4endl.
Referenced by ComputeSafety(), ComputeStep(), and LocateGlobalPointAndSetup().
|
virtual |
Definition at line 2047 of file G4ITNavigator2.cc.
References G4LogicalVolume::CharacteriseDaughters(), ComputeLocalAxis(), ComputeLocalPoint(), DBL_MAX, G4VSolid::DistanceToIn(), G4VSolid::DistanceToOut(), FatalException, fBlockedPhysicalVolume, fEnteredDaughter, fHistory, fLastTriedStepComputation, G4Exception(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4VPhysicalVolume::GetTranslation(), G4VSolid::Inside(), kInside, kOutside, kReplica, G4INCL::Math::min(), and G4AffineTransform::TransformPoint().
|
virtual |
Definition at line 118 of file G4ITNavigator2.cc.
References fHistory, fLastTriedStepComputation, G4TouchableHistory::GetHistory(), LocateGlobalPointAndSetup(), and SetupHierarchy().
void G4ITNavigator2::ResetNavigatorState | ( | ) |
Definition at line 709 of file G4ITNavigator2.cc.
References fpNavigatorState.
|
inline |
|
protectedvirtual |
Definition at line 1380 of file G4ITNavigator2.cc.
References fBlockedPhysicalVolume, fBlockedReplicaNo, fCalculatedExitNormal, fChangedGrandMotherRefFrame, fEnteredDaughter, fEntering, fExitedMother, fExiting, fExitNormal, fExitNormalGlobalFrame, fGrandMotherExitNormal, fLastLocatedPointLocal, fLastStepWasZero, fLocatedOnEdge, fLocatedOutsideWorld, fNumberZeroSteps, fPreviousSafety, fPreviousSftOrigin, fPushed, fValidExitNormal, fWasLimitedByGeometry, and kInfinity.
|
inline |
void G4ITNavigator2::SetNavigatorState | ( | G4ITNavigatorState_Lock2 * | navState | ) |
Definition at line 701 of file G4ITNavigator2.cc.
References fpNavigatorState, and SetupHierarchy().
|
inline |
|
protectedvirtual |
Definition at line 1419 of file G4ITNavigator2.cc.
References G4VSolid::ComputeDimensions(), G4VPVParameterisation::ComputeSolid(), G4VPVParameterisation::ComputeTransformation(), G4ReplicaNavigation::ComputeTransformation(), fHistory, freplicaNav, G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetParameterisation(), G4VPVParameterisation::IsNested(), kNormal, kParameterised, kReplica, G4TouchableHistory::MoveUpHistory(), G4LogicalVolume::SetSolid(), and G4LogicalVolume::UpdateMaterial().
Referenced by NewNavigatorState(), NewNavigatorStateAndLocate(), ResetHierarchyAndLocate(), and SetNavigatorState().
|
inline |
|
inline |
|
inlineprotected |
Referenced by GetLocalExitNormal(), and LocateGlobalPointAndSetup().
|
friend |
Definition at line 2387 of file G4ITNavigator2.cc.
|
private |
Definition at line 412 of file G4ITNavigator2.hh.
Referenced by ComputeStep(), and G4ITNavigator2().
|
private |
Definition at line 410 of file G4ITNavigator2.hh.
Referenced by ComputeStep(), and G4ITNavigator2().
|
private |
Definition at line 407 of file G4ITNavigator2.hh.
Referenced by G4ITNavigator2().
G4bool G4ITNavigator2::fCheck |
Definition at line 576 of file G4ITNavigator2.hh.
Referenced by GetLocalExitNormal(), and LocateGlobalPointAndSetup().
|
static |
Definition at line 104 of file G4ITNavigator2.hh.
G4NormalNavigation G4ITNavigator2::fnormalNav |
Definition at line 584 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), G4ITNavigator2(), and LocateGlobalPointAndSetup().
G4ParameterisedNavigation G4ITNavigator2::fparamNav |
Definition at line 586 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().
G4NavigatorState* G4ITNavigator2::fpNavigatorState |
Definition at line 532 of file G4ITNavigator2.hh.
Referenced by CheckNavigatorState(), CheckNextStep(), ComputeSafety(), G4ITNavigator2(), GetNavigatorState(), NewNavigatorState(), NewNavigatorStateAndLocate(), ResetNavigatorState(), and SetNavigatorState().
G4VoxelSafety* G4ITNavigator2::fpVoxelSafety |
Definition at line 589 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), G4ITNavigator2(), and ~G4ITNavigator2().
G4RegularNavigation G4ITNavigator2::fregularNav |
Definition at line 588 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), G4ITNavigator2(), and LocateGlobalPointAndSetup().
G4ReplicaNavigation G4ITNavigator2::freplicaNav |
Definition at line 587 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and SetupHierarchy().
G4VPhysicalVolume* G4ITNavigator2::fTopPhysical |
Definition at line 570 of file G4ITNavigator2.hh.
Referenced by NewNavigatorState(), and NewNavigatorStateAndLocate().
|
protected |
Definition at line 402 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), GetGlobalExitNormal(), GetLocalExitNormal(), LocateGlobalPointAndSetup(), LocateGlobalPointWithinVolume(), operator<<(), and PrintState().
G4VoxelNavigation G4ITNavigator2::fvoxelNav |
Definition at line 585 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), LocateGlobalPointAndSetup(), and LocateGlobalPointWithinVolume().
G4bool G4ITNavigator2::fWarnPush |
Definition at line 579 of file G4ITNavigator2.hh.
Referenced by ComputeStep().
|
protected |
Definition at line 399 of file G4ITNavigator2.hh.
Referenced by ComputeSafety(), ComputeStep(), ComputeStepLog(), G4ITNavigator2(), GetGlobalExitNormal(), and GetLocalExitNormal().