ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <geant4/tree/geant4-10.6-release/source/geometry/navigation/include/G4VoxelSafety.hh>
Public Member Functions | |
G4VoxelSafety () | |
~G4VoxelSafety () | |
G4SmartVoxelNode * | VoxelLocate (G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) |
G4double | ComputeSafety (const G4ThreeVector &localPoint, const G4VPhysicalVolume ¤tPhysical, G4double maxLength=DBL_MAX) |
G4int | GetVerboseLevel () const |
void | SetVerboseLevel (G4int level) |
Protected Member Functions | |
G4double | SafetyForVoxelHeader (const G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint, G4double maxLength, const G4VPhysicalVolume ¤tPhysical, G4double distUpperDepth=0.0, G4double previousMinSafety=DBL_MAX) |
G4double | SafetyForVoxelNode (const G4SmartVoxelNode *curVoxelNode, const G4ThreeVector &localPoint) |
G4SmartVoxelNode * | VoxelLocateLight (G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) const |
Private Attributes | |
G4BlockingList | fBlockList |
G4LogicalVolume * | fpMotherLogical = nullptr |
G4int | fVoxelDepth = -1 |
std::vector< EAxis > | fVoxelAxisStack |
std::vector< G4int > | fVoxelNoSlicesStack |
std::vector< G4double > | fVoxelSliceWidthStack |
std::vector< G4int > | fVoxelNodeNoStack |
std::vector< const G4SmartVoxelHeader * > | fVoxelHeaderStack |
G4SmartVoxelNode * | fVoxelNode = nullptr |
G4bool | fCheck = false |
G4int | fVerbose = 0 |
G4double | kCarTolerance |
Definition at line 55 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 55 of file G4VoxelSafety.hh
G4VoxelSafety::G4VoxelSafety | ( | ) |
Definition at line 44 of file G4VoxelSafety.cc.
View newest version in sPHENIX GitHub at line 44 of file G4VoxelSafety.cc
References G4GeometryTolerance::GetInstance(), G4GeometryTolerance::GetSurfaceTolerance(), and kCarTolerance.
G4VoxelSafety::~G4VoxelSafety | ( | ) |
Definition at line 59 of file G4VoxelSafety.cc.
View newest version in sPHENIX GitHub at line 59 of file G4VoxelSafety.cc
G4double G4VoxelSafety::ComputeSafety | ( | const G4ThreeVector & | localPoint, |
const G4VPhysicalVolume & | currentPhysical, | ||
G4double | maxLength = DBL_MAX |
||
) |
Definition at line 72 of file G4VoxelSafety.cc.
View newest version in sPHENIX GitHub at line 72 of file G4VoxelSafety.cc
References G4VSolid::DistanceToIn(), G4VSolid::DistanceToOut(), G4BlockingList::Enlarge(), FatalException, fBlockList, fCheck, fpMotherLogical, fVerbose, fVoxelDepth, G4cout, G4endl, G4Exception(), G4VPhysicalVolume::GetCopyNo(), G4VPhysicalVolume::GetLogicalVolume(), G4VSolid::GetName(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetNoDaughters(), G4LogicalVolume::GetSolid(), G4LogicalVolume::GetVoxelHeader(), G4VSolid::Inside(), kInside, kOutside, message(), min, G4BlockingList::Reset(), and SafetyForVoxelHeader().
Referenced by G4VoxelNavigation::ComputeSafety(), G4Navigator::ComputeSafety(), G4ITNavigator1::ComputeSafety(), and G4ITNavigator2::ComputeSafety().
|
inline |
Definition at line 69 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 69 of file G4VoxelSafety.hh
References fVerbose.
|
protected |
Definition at line 213 of file G4VoxelSafety.cc.
View newest version in sPHENIX GitHub at line 213 of file G4VoxelSafety.cc
References DBL_MAX, FatalException, fVerbose, fVoxelAxisStack, fVoxelDepth, fVoxelHeaderStack, fVoxelNodeNoStack, fVoxelNoSlicesStack, fVoxelSliceWidthStack, G4cout, G4endl, G4Exception(), G4SmartVoxelHeader::GetAxis(), G4VSolid::GetEntityType(), G4SmartVoxelProxy::GetHeader(), G4VPhysicalVolume::GetLogicalVolume(), G4SmartVoxelHeader::GetMaxEquivalentSliceNo(), G4SmartVoxelNode::GetMaxEquivalentSliceNo(), G4SmartVoxelHeader::GetMaxExtent(), G4SmartVoxelHeader::GetMinEquivalentSliceNo(), G4SmartVoxelNode::GetMinEquivalentSliceNo(), G4SmartVoxelHeader::GetMinExtent(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4SmartVoxelProxy::GetNode(), G4SmartVoxelHeader::GetNoSlices(), G4SmartVoxelHeader::GetSlice(), G4LogicalVolume::GetSolid(), G4SmartVoxelProxy::IsNode(), JustWarning, max, min, and SafetyForVoxelNode().
Referenced by ComputeSafety().
|
protected |
Definition at line 158 of file G4VoxelSafety.cc.
View newest version in sPHENIX GitHub at line 158 of file G4VoxelSafety.cc
References G4BlockingList::BlockVolume(), DBL_MAX, G4VSolid::DistanceToIn(), fBlockList, fCheck, fpMotherLogical, fVerbose, G4cout, G4endl, G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4VSolid::GetName(), G4SmartVoxelNode::GetNoContained(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4VPhysicalVolume::GetTranslation(), G4SmartVoxelNode::GetVolume(), G4AffineTransform::Invert(), G4BlockingList::IsBlocked(), and min.
Referenced by SafetyForVoxelHeader().
Definition at line 70 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 70 of file G4VoxelSafety.hh
References fVerbose.
Referenced by G4VoxelNavigation::SetVerboseLevel().
G4SmartVoxelNode* G4VoxelSafety::VoxelLocate | ( | G4SmartVoxelHeader * | pHead, |
const G4ThreeVector & | localPoint | ||
) |
|
protected |
|
private |
Definition at line 93 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 93 of file G4VoxelSafety.hh
Referenced by ComputeSafety(), and SafetyForVoxelNode().
Definition at line 125 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 125 of file G4VoxelSafety.hh
Referenced by ComputeSafety(), and SafetyForVoxelNode().
|
private |
Definition at line 96 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 96 of file G4VoxelSafety.hh
Referenced by ComputeSafety(), and SafetyForVoxelNode().
|
private |
Definition at line 126 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 126 of file G4VoxelSafety.hh
Referenced by ComputeSafety(), GetVerboseLevel(), SafetyForVoxelHeader(), SafetyForVoxelNode(), and SetVerboseLevel().
|
private |
Definition at line 104 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 104 of file G4VoxelSafety.hh
Referenced by SafetyForVoxelHeader().
|
private |
Definition at line 100 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 100 of file G4VoxelSafety.hh
Referenced by ComputeSafety(), and SafetyForVoxelHeader().
|
private |
Definition at line 116 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 116 of file G4VoxelSafety.hh
Referenced by SafetyForVoxelHeader().
|
private |
Definition at line 119 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 119 of file G4VoxelSafety.hh
|
private |
Definition at line 113 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 113 of file G4VoxelSafety.hh
Referenced by SafetyForVoxelHeader().
|
private |
Definition at line 107 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 107 of file G4VoxelSafety.hh
Referenced by SafetyForVoxelHeader().
|
private |
Definition at line 110 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 110 of file G4VoxelSafety.hh
Referenced by SafetyForVoxelHeader().
|
private |
Definition at line 127 of file G4VoxelSafety.hh.
View newest version in sPHENIX GitHub at line 127 of file G4VoxelSafety.hh
Referenced by G4VoxelSafety().