Geant4
10.00.p02
|
#include <G4ParameterisedNavigation.hh>
Public Member Functions | |
G4ParameterisedNavigation () | |
~G4ParameterisedNavigation () | |
G4SmartVoxelNode * | ParamVoxelLocate (G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) |
G4bool | LevelLocate (G4NavigationHistory &history, const G4VPhysicalVolume *blockedVol, const G4int blockedNum, const G4ThreeVector &globalPoint, const G4ThreeVector *globalDirection, const G4bool pLocatedOnEdge, G4ThreeVector &localPoint) |
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) |
G4double | ComputeSafety (const G4ThreeVector &localPoint, const G4NavigationHistory &history, const G4double pProposedMaxLength=DBL_MAX) |
Public Member Functions inherited from G4VoxelNavigation | |
G4VoxelNavigation () | |
virtual | ~G4VoxelNavigation () |
G4SmartVoxelNode * | VoxelLocate (G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) |
G4int | GetVerboseLevel () const |
void | SetVerboseLevel (G4int level) |
void | CheckMode (G4bool mode) |
void | EnableBestSafety (G4bool flag=false) |
Private Member Functions | |
G4double | ComputeVoxelSafety (const G4ThreeVector &localPoint, const EAxis pAxis) const |
G4bool | LocateNextVoxel (const G4ThreeVector &localPoint, const G4ThreeVector &localDirection, const G4double currentStep, const EAxis pAxis) |
G4VSolid * | IdentifyAndPlaceSolid (G4int num, G4VPhysicalVolume *apparentPhys, G4VPVParameterisation *curParam) |
G4VPhysicalVolume * | CreateVolumeWithParent (G4VPhysicalVolume *curPhysical, const G4NavigationHistory &hist) |
Private Attributes | |
EAxis | fVoxelAxis |
G4int | fVoxelNoSlices |
G4double | fVoxelSliceWidth |
G4int | fVoxelNodeNo |
G4SmartVoxelHeader * | fVoxelHeader |
Additional Inherited Members | |
Protected Member Functions inherited from G4VoxelNavigation | |
G4double | ComputeVoxelSafety (const G4ThreeVector &localPoint) const |
G4bool | LocateNextVoxel (const G4ThreeVector &localPoint, const G4ThreeVector &localDirection, const G4double currentStep) |
G4SmartVoxelNode * | VoxelLocateLight (G4SmartVoxelHeader *pHead, const G4ThreeVector &localPoint) const |
Protected Attributes inherited from G4VoxelNavigation | |
G4BlockingList | fBList |
G4int | fVoxelDepth |
std::vector< EAxis > | fVoxelAxisStack |
std::vector< G4int > | fVoxelNoSlicesStack |
std::vector< G4double > | fVoxelSliceWidthStack |
std::vector< G4int > | fVoxelNodeNoStack |
std::vector< G4SmartVoxelHeader * > | fVoxelHeaderStack |
G4SmartVoxelNode * | fVoxelNode |
G4VoxelSafety * | fpVoxelSafety |
G4bool | fCheck |
G4bool | fBestSafety |
G4NavigationLogger * | fLogger |
Definition at line 58 of file G4ParameterisedNavigation.hh.
G4ParameterisedNavigation::G4ParameterisedNavigation | ( | ) |
Definition at line 58 of file G4ParameterisedNavigation.cc.
G4ParameterisedNavigation::~G4ParameterisedNavigation | ( | ) |
Definition at line 68 of file G4ParameterisedNavigation.cc.
|
virtual |
Reimplemented from G4VoxelNavigation.
Definition at line 363 of file G4ParameterisedNavigation.cc.
References ComputeVoxelSafety(), G4VSolid::DistanceToIn(), G4VSolid::DistanceToOut(), fVoxelAxis, fVoxelHeader, G4VoxelNavigation::fVoxelNode, fVoxelNodeNo, fVoxelSliceWidth, G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4SmartVoxelHeader::GetMinExtent(), G4SmartVoxelNode::GetNoContained(), G4SmartVoxelProxy::GetNode(), G4VPhysicalVolume::GetParameterisation(), G4VPhysicalVolume::GetReplicationData(), G4VPhysicalVolume::GetRotation(), G4SmartVoxelHeader::GetSlice(), G4LogicalVolume::GetSolid(), G4NavigationHistory::GetTopVolume(), G4VPhysicalVolume::GetTranslation(), G4SmartVoxelNode::GetVolume(), IdentifyAndPlaceSolid(), G4AffineTransform::Invert(), kUndefined, G4AffineTransform::TransformPoint(), and width.
Referenced by G4Navigator::ComputeSafety(), and G4ITNavigator::ComputeSafety().
|
virtual |
Reimplemented from G4VoxelNavigation.
Definition at line 77 of file G4ParameterisedNavigation.cc.
References G4BlockingList::BlockVolume(), ComputeVoxelSafety(), G4VSolid::DistanceToIn(), G4VSolid::DistanceToOut(), G4VSolid::DumpInfo(), G4BlockingList::Enlarge(), FatalException, G4VoxelNavigation::fBList, G4VoxelNavigation::fCheck, G4VoxelNavigation::fVoxelNode, G4cerr, G4cout, G4endl, G4Exception(), G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4VSolid::GetName(), G4VPhysicalVolume::GetName(), G4SmartVoxelNode::GetNoContained(), G4VPhysicalVolume::GetParameterisation(), G4VPhysicalVolume::GetReplicationData(), G4VPhysicalVolume::GetRotation(), G4LogicalVolume::GetSolid(), G4VSolid::GetTolerance(), G4NavigationHistory::GetTopVolume(), G4VPhysicalVolume::GetTranslation(), G4SmartVoxelNode::GetVolume(), IdentifyAndPlaceSolid(), G4VSolid::Inside(), G4AffineTransform::Invert(), G4BlockingList::IsBlocked(), JustWarning, kInfinity, kInside, kMinExitingNormalCosine, kOutside, kSurface, LocateNextVoxel(), G4BlockingList::Reset(), G4AffineTransform::TransformPoint(), and width.
Referenced by G4Navigator::ComputeStep(), and G4ITNavigator::ComputeStep().
|
private |
Definition at line 460 of file G4ParameterisedNavigation.cc.
References G4VoxelNavigation::ComputeVoxelSafety(), fVoxelAxis, fVoxelHeader, G4VoxelNavigation::fVoxelNode, fVoxelNodeNo, fVoxelSliceWidth, G4SmartVoxelNode::GetMaxEquivalentSliceNo(), G4SmartVoxelNode::GetMinEquivalentSliceNo(), G4SmartVoxelHeader::GetMinExtent(), kUndefined, and G4INCL::Math::min().
Referenced by ComputeSafety(), and ComputeStep().
|
private |
|
inlineprivate |
Referenced by ComputeSafety(), ComputeStep(), and LevelLocate().
|
virtual |
Reimplemented from G4VoxelNavigation.
Definition at line 569 of file G4ParameterisedNavigation.cc.
References G4NavigationHistory::BackLevel(), G4AuxiliaryNavServices::CheckPointOnSurface(), G4VPVParameterisation::ComputeMaterial(), G4LogicalVolume::GetDaughter(), G4VPhysicalVolume::GetLogicalVolume(), G4SmartVoxelNode::GetNoContained(), G4VPhysicalVolume::GetParameterisation(), G4NavigationHistory::GetTopTransform(), G4NavigationHistory::GetTopVolume(), G4SmartVoxelNode::GetVolume(), G4LogicalVolume::GetVoxelHeader(), IdentifyAndPlaceSolid(), kParameterised, G4NavigationHistory::NewLevel(), ParamVoxelLocate(), G4VPhysicalVolume::SetCopyNo(), G4LogicalVolume::SetSolid(), G4AffineTransform::TransformPoint(), and G4LogicalVolume::UpdateMaterial().
Referenced by G4Navigator::LocateGlobalPointAndSetup(), and G4ITNavigator::LocateGlobalPointAndSetup().
|
private |
Definition at line 508 of file G4ParameterisedNavigation.cc.
References fVoxelAxis, fVoxelHeader, G4VoxelNavigation::fVoxelNode, fVoxelNodeNo, fVoxelSliceWidth, G4SmartVoxelNode::GetMaxEquivalentSliceNo(), G4SmartVoxelNode::GetMinEquivalentSliceNo(), G4SmartVoxelHeader::GetMinExtent(), G4SmartVoxelProxy::GetNode(), G4SmartVoxelHeader::GetSlice(), kUndefined, and G4VoxelNavigation::LocateNextVoxel().
Referenced by ComputeStep().
|
inline |
Referenced by LevelLocate(), G4Navigator::LocateGlobalPointWithinVolume(), and G4ITNavigator::LocateGlobalPointWithinVolume().
|
private |
Definition at line 118 of file G4ParameterisedNavigation.hh.
Referenced by ComputeSafety(), ComputeVoxelSafety(), and LocateNextVoxel().
|
private |
Definition at line 122 of file G4ParameterisedNavigation.hh.
Referenced by ComputeSafety(), ComputeVoxelSafety(), and LocateNextVoxel().
|
private |
Definition at line 121 of file G4ParameterisedNavigation.hh.
Referenced by ComputeSafety(), ComputeVoxelSafety(), and LocateNextVoxel().
|
private |
Definition at line 119 of file G4ParameterisedNavigation.hh.
|
private |
Definition at line 120 of file G4ParameterisedNavigation.hh.
Referenced by ComputeSafety(), ComputeVoxelSafety(), and LocateNextVoxel().