Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
|
G4VNavigation class holds the common navigation interface for all geometry navigator types. More...
#include <G4VNavigation.hh>
Public Member Functions | |
virtual | ~G4VNavigation () |
virtual G4bool | LevelLocate (G4NavigationHistory &history, const G4VPhysicalVolume *blockedVol, const G4int blockedNum, const G4ThreeVector &globalPoint, const G4ThreeVector *globalDirection, const G4bool pLocatedOnEdge, G4ThreeVector &localPoint)=0 |
virtual G4double | ComputeStep (const G4ThreeVector &localPoint, const G4ThreeVector &localDirection, const G4double currentProposedStepLength, G4double &newSafety, G4NavigationHistory &history, G4bool &validExitNormal, G4ThreeVector &exitNormal, G4bool &exiting, G4bool &entering, G4VPhysicalVolume *(*pBlockedPhysical), G4int &blockedReplicaNo)=0 |
virtual G4double | ComputeSafety (const G4ThreeVector &globalpoint, const G4NavigationHistory &history, const G4double pMaxLength=DBL_MAX)=0 |
virtual void | RelocateWithinVolume (G4VPhysicalVolume *, const G4ThreeVector &) |
virtual G4int | GetVerboseLevel () const |
virtual void | SetVerboseLevel (G4int level) |
void | CheckMode (G4bool mode) |
Protected Attributes | |
G4int | fVerbose = 0 |
G4bool | fCheck = false |
G4VNavigation class holds the common navigation interface for all geometry navigator types.
Definition at line 48 of file G4VNavigation.hh.
|
inlinevirtual |
|
inline |
Set check mode. When enabled, forces navigator to run in "check mode", hence using additional verifications and stricter condictions for ensuring correctness. Effective only when G4VERBOSE is enabled.
Definition at line 144 of file G4VNavigation.hh.
|
pure virtual |
Compute the distance to the closest surface.
[in] | globalPoint | Global point. |
[in] | history | Navigation history. |
[in] | pMaxLength | Maximum step length beyond which volumes need not be checked. |
Implemented in G4NormalNavigation, G4ParameterisedNavigation, G4RegularNavigation, and G4VoxelNavigation.
Referenced by G4SafetyCalculator::SafetyInCurrentVolume().
|
pure virtual |
Compute the length of a step to the next boundary. Do not test against pBlockedPhysical
. Identify the next candidate volume (if a daughter of current volume), and return it in pBlockedPhysical, blockedReplicaNo.
[in] | localPoint | Local point |
[in] | localDirection | Pointer to local direction or null pointer. |
[in] | currentProposedStepLength | Current proposed step length. |
[in,out] | newSafety | New safety. |
[in,out] | history | Navigation history. |
[in,out] | validExitNormal | Flag to indicate whether exit normal is valid or not. |
[in,out] | exitNormal | Exit normal. |
[in,out] | entering | Flag to indicate whether we are entering a volume. |
[in,out] | exiting | Flag to indicate whether we are exiting a volume. |
[in,out] | pBlockedPhysical | Blocked physical volume that should be ignored in queries. |
[in,out] | blockedReplicaNo | Copy number for blocked replica volumes. |
localDirection
. Implemented in G4NormalNavigation, G4ParameterisedNavigation, G4RegularNavigation, and G4VoxelNavigation.
Referenced by G4Navigator::ComputeStep().
|
inlinevirtual |
Get current verbosity level
Reimplemented in G4NormalNavigation, and G4VoxelNavigation.
Definition at line 133 of file G4VNavigation.hh.
|
pure virtual |
Search positioned volumes in mother at current top level of history
for volume containing globalPoint
. Do not test against blockedVol
. If a containing volume is found, push it onto navigation history state.
[in,out] | history | Navigation history. |
[in,out] | blockedVol | Blocked volume that should be ignored in queries. |
[in,out] | blockedNum | Copy number for blocked replica volumes. |
[in,out] | globalPoint | Global point |
[in,out] | globalDirection | Pointer to global direction or null pointer. |
[in,out] | localPoint | = global point in local system on entry, point in new system on exit. |
Implemented in G4NormalNavigation, G4ParameterisedNavigation, G4RegularNavigation, and G4VoxelNavigation.
Referenced by G4Navigator::LocateGlobalPointAndSetup().
|
inlinevirtual |
Update internal navigation state to take into account that location has been moved, but remains within the motherPhysical
volume.
[in] | motherPhysical | Current physical volume. |
[in] | localPoint | Local point. |
Reimplemented in G4ParameterisedNavigation, G4VExternalNavigation, and G4VoxelNavigation.
Definition at line 126 of file G4VNavigation.hh.
|
inlinevirtual |
Set current verbosity level
Reimplemented in G4NormalNavigation, and G4VoxelNavigation.
Definition at line 136 of file G4VNavigation.hh.
|
protected |
Definition at line 148 of file G4VNavigation.hh.
Referenced by CheckMode(), G4NormalNavigation::ComputeSafety(), G4VoxelNavigation::ComputeSafety(), G4NormalNavigation::ComputeStep(), G4ParameterisedNavigation::ComputeStep(), and G4VoxelNavigation::ComputeStep().
|
protected |
Definition at line 147 of file G4VNavigation.hh.
Referenced by GetVerboseLevel(), and SetVerboseLevel().