Geant4  10.01.p01
G4SafetyHelper Class Reference

#include <G4SafetyHelper.hh>

+ Collaboration diagram for G4SafetyHelper:

Public Member Functions

 G4SafetyHelper ()
 
 ~G4SafetyHelper ()
 
G4double CheckNextStep (const G4ThreeVector &position, const G4ThreeVector &direction, const G4double currentMaxStep, G4double &newSafety)
 
G4double ComputeSafety (const G4ThreeVector &pGlobalPoint, G4double maxRadius=DBL_MAX)
 
void Locate (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &direction)
 
void ReLocateWithinVolume (const G4ThreeVector &pGlobalPoint)
 
G4bool RecheckDistanceToCurrentBoundary (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double pCurrentProposedStepLength, G4double *prDistance, G4double *prNewSafety=0) const
 
void EnableParallelNavigation (G4bool parallel)
 
void InitialiseNavigator ()
 
G4int SetVerboseLevel (G4int lev)
 
G4VPhysicalVolumeGetWorldVolume ()
 
void SetCurrentSafety (G4double val, const G4ThreeVector &pos)
 
void InitialiseHelper ()
 

Private Attributes

G4PathFinderfpPathFinder
 
G4NavigatorfpMassNavigator
 
G4int fMassNavigatorId
 
G4bool fUseParallelGeometries
 
G4bool fFirstCall
 
G4int fVerbose
 
G4ThreeVector fLastSafetyPosition
 
G4double fLastSafety
 

Detailed Description

Definition at line 53 of file G4SafetyHelper.hh.

Constructor & Destructor Documentation

G4SafetyHelper::G4SafetyHelper ( )

Definition at line 42 of file G4SafetyHelper.cc.

References fMassNavigatorId, fpMassNavigator, and fpPathFinder.

G4SafetyHelper::~G4SafetyHelper ( )

Definition at line 89 of file G4SafetyHelper.cc.

Member Function Documentation

G4double G4SafetyHelper::CheckNextStep ( const G4ThreeVector position,
const G4ThreeVector direction,
const G4double  currentMaxStep,
G4double newSafety 
)

Definition at line 94 of file G4SafetyHelper.cc.

References G4Navigator::CheckNextStep(), fLastSafety, fLastSafetyPosition, fpMassNavigator, and position.

Referenced by G4VMscModel::ComputeGeomLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4SafetyHelper::ComputeSafety ( const G4ThreeVector pGlobalPoint,
G4double  maxRadius = DBL_MAX 
)

Definition at line 114 of file G4SafetyHelper.cc.

References G4PathFinder::ComputeSafety(), G4Navigator::ComputeSafety(), fLastSafety, fLastSafetyPosition, fpMassNavigator, fpPathFinder, fUseParallelGeometries, and position.

Referenced by G4VMultipleScattering::AlongStepDoIt(), G4VEnergyLossProcess::AlongStepDoIt(), and G4VMscModel::ComputeSafety().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::EnableParallelNavigation ( G4bool  parallel)
inline

Definition at line 146 of file G4SafetyHelper.hh.

References fUseParallelGeometries.

Referenced by G4PathFinder::EnableParallelNavigation().

+ Here is the caller graph for this function:

G4VPhysicalVolume * G4SafetyHelper::GetWorldVolume ( )
inline

Definition at line 152 of file G4SafetyHelper.hh.

References fpMassNavigator, and G4Navigator::GetWorldVolume().

Referenced by G4VMscModel::ComputeGeomLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::InitialiseHelper ( )

Definition at line 81 of file G4SafetyHelper.cc.

References fFirstCall, fLastSafety, fLastSafetyPosition, and InitialiseNavigator().

Referenced by G4VEnergyLossProcess::BuildPhysicsTable(), G4VMscModel::GetParticleChangeForMSC(), G4PathFinder::PrepareNewTrack(), and G4VMultipleScattering::PreparePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::InitialiseNavigator ( )

Definition at line 59 of file G4SafetyHelper.cc.

References G4TransportationManager::ActivateNavigator(), FatalException, fMassNavigatorId, fpMassNavigator, fpPathFinder, G4Exception(), G4PathFinder::GetInstance(), G4TransportationManager::GetNavigatorForTracking(), G4TransportationManager::GetTransportationManager(), and G4Navigator::GetWorldVolume().

Referenced by InitialiseHelper().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::Locate ( const G4ThreeVector pGlobalPoint,
const G4ThreeVector direction 
)

Definition at line 183 of file G4SafetyHelper.cc.

References fpMassNavigator, fpPathFinder, fUseParallelGeometries, G4PathFinder::Locate(), and G4Navigator::LocateGlobalPointAndSetup().

+ Here is the call graph for this function:

G4bool G4SafetyHelper::RecheckDistanceToCurrentBoundary ( const G4ThreeVector pGlobalPoint,
const G4ThreeVector pDirection,
const G4double  pCurrentProposedStepLength,
G4double prDistance,
G4double prNewSafety = 0 
) const

Definition at line 197 of file G4SafetyHelper.cc.

References fpMassNavigator, fpPathFinder, fUseParallelGeometries, G4PathFinder::RecheckDistanceToCurrentBoundary(), and G4Navigator::RecheckDistanceToCurrentBoundary().

Referenced by G4VMultipleScattering::AlongStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::ReLocateWithinVolume ( const G4ThreeVector pGlobalPoint)

Definition at line 153 of file G4SafetyHelper.cc.

References fLastSafety, fLastSafetyPosition, fpMassNavigator, fpPathFinder, fUseParallelGeometries, fVerbose, G4endl, G4Exception(), JustWarning, G4Navigator::LocateGlobalPointWithinVolume(), G4PathFinder::ReLocate(), and sqr().

Referenced by G4VMultipleScattering::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SafetyHelper::SetCurrentSafety ( G4double  val,
const G4ThreeVector pos 
)
inline

Definition at line 158 of file G4SafetyHelper.hh.

References fLastSafety, fLastSafetyPosition, and pos.

Referenced by G4Transportation::AlongStepGetPhysicalInteractionLength(), G4CoupledTransportation::AlongStepGetPhysicalInteractionLength(), and G4MonopoleTransportation::AlongStepGetPhysicalInteractionLength().

+ Here is the caller graph for this function:

G4int G4SafetyHelper::SetVerboseLevel ( G4int  lev)
inline

Definition at line 112 of file G4SafetyHelper.hh.

References fVerbose.

Member Data Documentation

G4bool G4SafetyHelper::fFirstCall
private

Definition at line 129 of file G4SafetyHelper.hh.

Referenced by InitialiseHelper().

G4double G4SafetyHelper::fLastSafety
private
G4ThreeVector G4SafetyHelper::fLastSafetyPosition
private
G4int G4SafetyHelper::fMassNavigatorId
private

Definition at line 125 of file G4SafetyHelper.hh.

Referenced by G4SafetyHelper(), and InitialiseNavigator().

G4PathFinder* G4SafetyHelper::fpPathFinder
private
G4bool G4SafetyHelper::fUseParallelGeometries
private
G4int G4SafetyHelper::fVerbose
private

Definition at line 131 of file G4SafetyHelper.hh.

Referenced by ReLocateWithinVolume(), and SetVerboseLevel().


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