ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4ITMultiNavigator Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/dna/management/include/G4ITMultiNavigator.hh>

+ Inheritance diagram for G4ITMultiNavigator:
+ Collaboration diagram for G4ITMultiNavigator:

Public Member Functions

 G4ITMultiNavigator ()
 
 ~G4ITMultiNavigator ()
 
G4double ComputeStep (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &pDirection, const G4double pCurrentProposedStepLength, G4double &pNewSafety)
 
G4double ObtainFinalStep (G4int navigatorId, G4double &pNewSafety, G4double &minStepLast, ELimited &limitedStep)
 
void PrepareNavigators ()
 
void PrepareNewTrack (const G4ThreeVector position, const G4ThreeVector direction)
 
G4VPhysicalVolumeResetHierarchyAndLocate (const G4ThreeVector &point, const G4ThreeVector &direction, const G4TouchableHistory &h)
 
G4VPhysicalVolumeLocateGlobalPointAndSetup (const G4ThreeVector &point, const G4ThreeVector *direction=0, const G4bool pRelativeSearch=true, const G4bool ignoreDirection=true)
 
void LocateGlobalPointWithinVolume (const G4ThreeVector &position)
 
G4double ComputeSafety (const G4ThreeVector &globalpoint, const G4double pProposedMaxLength=DBL_MAX, const G4bool keepState=false)
 
G4TouchableHistoryHandle CreateTouchableHistoryHandle () const
 
virtual G4ThreeVector GetLocalExitNormal (G4bool *obtained)
 
virtual G4ThreeVector GetLocalExitNormalAndCheck (const G4ThreeVector &CurrentE_Point, G4bool *obtained)
 
virtual G4ThreeVector GetGlobalExitNormal (const G4ThreeVector &CurrentE_Point, G4bool *obtained)
 
G4ITNavigator * GetNavigator (G4int n) const
 
- Public Member Functions inherited from G4TrackStateDependent< G4ITMultiNavigator >
virtual ~G4TrackStateDependent ()
 
virtual void SetTrackState (G4shared_ptr< StateType > state)
 
virtual G4VTrackStateHandle PopTrackState ()
 
virtual G4VTrackStateHandle GetTrackState () const
 
virtual StateTypeHandle GetConcreteTrackState () const
 
virtual void LoadTrackState (G4TrackStateManager &manager)
 
virtual void SaveTrackState (G4TrackStateManager &manager)
 
virtual void NewTrackState ()
 
virtual StateTypeHandle CreateTrackState () const
 
virtual void ResetTrackState ()
 
- Public Member Functions inherited from G4VTrackStateDependent
 G4VTrackStateDependent ()
 
virtual ~G4VTrackStateDependent ()
 

Protected Member Functions

void ResetState ()
 
void SetupHierarchy ()
 
void WhichLimited ()
 
void PrintLimited ()
 
void CheckMassWorld ()
 
- Protected Member Functions inherited from G4TrackStateDependent< G4ITMultiNavigator >
 G4TrackStateDependent ()
 

Private Attributes

G4int fNoActiveNavigators
 
G4VPhysicalVolumefLastMassWorld
 
G4ITNavigator * fpNavigator [fMaxNav]
 
G4ITTransportationManagerpTransportManager
 

Friends

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

Additional Inherited Members

- Public Types inherited from G4TrackStateDependent< G4ITMultiNavigator >
typedef G4ITMultiNavigator ClassType
 
typedef G4TrackState
< G4ITMultiNavigator
StateType
 
typedef G4shared_ptr< StateTypeStateTypeHandle
 
- Protected Attributes inherited from G4TrackStateDependent< G4ITMultiNavigator >
StateTypeHandle fpTrackState
 

Detailed Description

Definition at line 143 of file G4ITMultiNavigator.hh.

View newest version in sPHENIX GitHub at line 143 of file G4ITMultiNavigator.hh

Constructor & Destructor Documentation

G4ITMultiNavigator::G4ITMultiNavigator ( )

Definition at line 67 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 67 of file G4ITMultiNavigator.cc

References fLastMassWorld, fNoActiveNavigators, fpNavigator, G4ITTransportationManager::GetNavigatorForTracking(), G4ITTransportationManager::GetTransportationManager(), num, and pTransportManager.

+ Here is the call graph for this function:

G4ITMultiNavigator::~G4ITMultiNavigator ( )

Definition at line 91 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 91 of file G4ITMultiNavigator.cc

Member Function Documentation

void G4ITMultiNavigator::CheckMassWorld ( )
protected

Definition at line 640 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 640 of file G4ITMultiNavigator.cc

References FatalException, fLastMassWorld, G4Exception(), G4ITTransportationManager::GetNavigatorForTracking(), and pTransportManager.

+ Here is the call graph for this function:

G4double G4ITMultiNavigator::ComputeSafety ( const G4ThreeVector globalpoint,
const G4double  pProposedMaxLength = DBL_MAX,
const G4bool  keepState = false 
)

Definition at line 430 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 430 of file G4ITMultiNavigator.cc

References fMinSafety_atSafLocation, fNoActiveNavigators, fSafetyLocation, G4cout, G4endl, kInfinity, num, position, and pTransportManager.

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

Definition at line 95 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 95 of file G4ITMultiNavigator.cc

References fCurrentStepSize, fIdNavLimiting, fMinSafety_PreStepPt, fMinStep, fNewSafety, fNoActiveNavigators, fNoLimitingStep, fPreStepLocation, fTrueMinStep, G4cout, G4endl, kInfinity, num, pTransportManager, Acts::Test::step(), and WhichLimited().

+ Here is the call graph for this function:

G4TouchableHistoryHandle G4ITMultiNavigator::CreateTouchableHistoryHandle ( ) const

Definition at line 463 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 463 of file G4ITMultiNavigator.cc

References FatalException, fLocatedVolume, fpNavigator, G4Exception(), G4TouchableHistory::GetHistory(), and G4TouchableHistory::UpdateYourself().

+ Here is the call graph for this function:

G4ThreeVector G4ITMultiNavigator::GetGlobalExitNormal ( const G4ThreeVector CurrentE_Point,
G4bool obtained 
)
virtual

Definition at line 695 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 695 of file G4ITMultiNavigator.cc

References CLHEP::Hep3Vector::dot(), fIdNavLimiting, fLimitTruth, fNoActiveNavigators, fNoLimitingStep, fpNavigator, G4endl, G4Exception(), G4ITTransportationManager::GetActiveNavigatorsIterator(), JustWarning, CLHEP::Hep3Vector::mag2(), message(), num, perThousand, and pTransportManager.

+ Here is the call graph for this function:

G4ThreeVector G4ITMultiNavigator::GetLocalExitNormal ( G4bool obtained)
virtual

Definition at line 786 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 786 of file G4ITMultiNavigator.cc

References FatalException, fIdNavLimiting, fNoLimitingStep, fpNavigator, G4endl, G4Exception(), G4ThreadLocal, JustWarning, and message().

Referenced by GetLocalExitNormalAndCheck().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector G4ITMultiNavigator::GetLocalExitNormalAndCheck ( const G4ThreeVector CurrentE_Point,
G4bool obtained 
)
virtual

Definition at line 830 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 830 of file G4ITMultiNavigator.cc

References GetLocalExitNormal().

+ Here is the call graph for this function:

G4ITNavigator* G4ITMultiNavigator::GetNavigator ( G4int  n) const
inline

Definition at line 229 of file G4ITMultiNavigator.hh.

View newest version in sPHENIX GitHub at line 229 of file G4ITMultiNavigator.hh

References fNoActiveNavigators, fpNavigator, and n.

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

Definition at line 318 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 318 of file G4ITMultiNavigator.cc

References fCurrentStepSize, fLimitedStep, fLimitTruth, fLocatedVolume, fNoActiveNavigators, fWasLimitedByGeometry, G4cout, G4endl, G4ITTransportationManager::GetActiveNavigatorsIterator(), G4VPhysicalVolume::GetCopyNo(), G4VPhysicalVolume::GetName(), kDoNot, num, and pTransportManager.

Referenced by PrepareNewTrack(), and ResetHierarchyAndLocate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITMultiNavigator::LocateGlobalPointWithinVolume ( const G4ThreeVector position)

Definition at line 396 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 396 of file G4ITMultiNavigator.cc

References fCurrentStepSize, fLastLocatedPosition, fLimitedStep, fLimitTruth, fNoActiveNavigators, fWasLimitedByGeometry, G4cout, G4endl, G4ITTransportationManager::GetActiveNavigatorsIterator(), kDoNot, num, position, and pTransportManager.

+ Here is the call graph for this function:

G4double G4ITMultiNavigator::ObtainFinalStep ( G4int  navigatorId,
G4double pNewSafety,
G4double minStepLast,
ELimited limitedStep 
)

Definition at line 194 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 194 of file G4ITMultiNavigator.cc

References FatalException, fCurrentStepSize, fLimitedStep, fMinStep, fNewSafety, fNoActiveNavigators, G4cout, G4endl, G4Exception(), message(), and mm.

Referenced by G4ITPathFinder::DoNextCurvedStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITMultiNavigator::PrepareNavigators ( )

Definition at line 252 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 252 of file G4ITMultiNavigator.cc

References FatalException, fCurrentStepSize, fLastMassWorld, fLimitedStep, fLimitTruth, fLocatedVolume, fNoActiveNavigators, fpNavigator, fWasLimitedByGeometry, G4cout, G4endl, G4Exception(), G4VPhysicalVolume::GetName(), kDoNot, message(), num, and pTransportManager.

Referenced by PrepareNewTrack(), and G4ITPathFinder::PrepareNewTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITMultiNavigator::PrepareNewTrack ( const G4ThreeVector  position,
const G4ThreeVector  direction 
)

Definition at line 231 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 231 of file G4ITMultiNavigator.cc

References G4cout, G4endl, LocateGlobalPointAndSetup(), and PrepareNavigators().

+ Here is the call graph for this function:

void G4ITMultiNavigator::PrintLimited ( )
protected

Definition at line 543 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 543 of file G4ITMultiNavigator.cc

References fCurrentStepSize, fLimitedStep, fLimitTruth, fMinStep, fNewSafety, fNoActiveNavigators, fpNavigator, fTrueMinStep, G4cout, G4endl, G4VPhysicalVolume::GetName(), kDoNot, kSharedOther, kSharedTransport, kUnique, and num.

+ Here is the call graph for this function:

G4VPhysicalVolume * G4ITMultiNavigator::ResetHierarchyAndLocate ( const G4ThreeVector point,
const G4ThreeVector direction,
const G4TouchableHistory h 
)

Definition at line 656 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 656 of file G4ITMultiNavigator.cc

References FatalException, fNoActiveNavigators, fpNavigator, G4Exception(), G4ITTransportationManager::GetActiveNavigatorsIterator(), LocateGlobalPointAndSetup(), num, and pTransportManager.

+ Here is the call graph for this function:

void G4ITMultiNavigator::ResetState ( )
protected

Definition at line 613 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 613 of file G4ITMultiNavigator.cc

References FatalException, fNoActiveNavigators, fWasLimitedByGeometry, G4Exception(), num, and pTransportManager.

+ Here is the call graph for this function:

void G4ITMultiNavigator::SetupHierarchy ( )
protected

Definition at line 631 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 631 of file G4ITMultiNavigator.cc

References FatalException, and G4Exception().

+ Here is the call graph for this function:

void G4ITMultiNavigator::WhichLimited ( )
protected

Definition at line 485 of file G4ITMultiNavigator.cc.

View newest version in sPHENIX GitHub at line 485 of file G4ITMultiNavigator.cc

References fCurrentStepSize, fLimitedStep, fLimitTruth, fMinStep, fNoActiveNavigators, fNoLimitingStep, G4cout, G4endl, kDoNot, kInfinity, kSharedOther, kSharedTransport, kUnique, num, and Acts::Test::step().

Referenced by ComputeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

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

Member Data Documentation

G4VPhysicalVolume* G4ITMultiNavigator::fLastMassWorld
private

Definition at line 254 of file G4ITMultiNavigator.hh.

View newest version in sPHENIX GitHub at line 254 of file G4ITMultiNavigator.hh

Referenced by CheckMassWorld(), G4ITMultiNavigator(), and PrepareNavigators().

G4ITNavigator* G4ITMultiNavigator::fpNavigator[fMaxNav]
private

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