40 #ifndef G4VOXELNAVIGATION_HH
41 #define G4VOXELNAVIGATION_HH
79 const G4int blockedNum,
82 const G4bool pLocatedOnEdge,
87 const G4double currentProposedStepLength,
95 G4int& blockedReplicaNo );
196 #include "G4VoxelNavigation.icc"
G4NavigationLogger * fLogger
G4SmartVoxelNode * VoxelLocateLight(G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) const
void CheckMode(G4bool mode)
G4bool LocateNextVoxel(const G4ThreeVector &localPoint, const G4ThreeVector &localDirection, const G4double currentStep)
void ComputeSafetyLog(const G4VSolid *solid, const G4ThreeVector &point, G4double safety, G4bool banner)
void AlongComputeStepLog(const G4VSolid *sampleSolid, const G4ThreeVector &samplePoint, const G4ThreeVector &sampleDirection, const G4ThreeVector &localDirection, G4double sampleSafety, G4double sampleStep)
void PrintDaughterLog(const G4VSolid *sampleSolid, const G4ThreeVector &samplePoint, G4double sampleSafety, G4double sampleStep)
G4SmartVoxelNode * VoxelLocate(G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint)
void EnableBestSafety(G4bool flag=false)
std::vector< EAxis > fVoxelAxisStack
G4VoxelSafety * fpVoxelSafety
G4double ComputeVoxelSafety(const G4ThreeVector &localPoint) const
std::vector< G4int > fVoxelNodeNoStack
void PostComputeStepLog(const G4VSolid *motherSolid, const G4ThreeVector &localPoint, const G4ThreeVector &localDirection, G4double motherStep, G4double motherSafety)
virtual G4bool LevelLocate(G4NavigationHistory &history, const G4VPhysicalVolume *blockedVol, const G4int blockedNum, const G4ThreeVector &globalPoint, const G4ThreeVector *globalDirection, const G4bool pLocatedOnEdge, G4ThreeVector &localPoint)
G4int GetVerboseLevel() const
virtual G4double ComputeSafety(const G4ThreeVector &globalpoint, const G4NavigationHistory &history, const G4double pMaxLength=DBL_MAX)
std::vector< G4double > fVoxelSliceWidthStack
void SetVerboseLevel(G4int level)
G4SmartVoxelNode * fVoxelNode
void PreComputeStepLog(const G4VPhysicalVolume *motherPhysical, G4double motherSafety, const G4ThreeVector &localPoint)
std::vector< G4int > fVoxelNoSlicesStack
virtual ~G4VoxelNavigation()
virtual G4double ComputeStep(const G4ThreeVector &globalPoint, const G4ThreeVector &globalDirection, const G4double currentProposedStepLength, G4double &newSafety, G4NavigationHistory &history, G4bool &validExitNormal, G4ThreeVector &exitNormal, G4bool &exiting, G4bool &entering, G4VPhysicalVolume *(*pBlockedPhysical), G4int &blockedReplicaNo)
std::vector< G4SmartVoxelHeader * > fVoxelHeaderStack