61#ifndef G4PHYSICALVOLUMEMODEL_HH
62#define G4PHYSICALVOLUMEMODEL_HH
127 (
const std::vector<G4PhysicalVolumeNodeID>& fullPVPath);
153 G4bool useFullExtent =
false,
154 const std::vector<G4PhysicalVolumeNodeID>& baseFullPVPath =
155 std::vector<G4PhysicalVolumeNodeID>());
220 (
const std::vector<G4PhysicalVolumeNodeID>&);
223 const std::map<G4String,G4AttDef>*
GetAttDefs()
const;
262 G4int requestedDepth,
267 G4int requestedDepth,
311std::ostream&
operator<<
314std::ostream&
operator<<
315(std::ostream& os,
const std::vector<G4PhysicalVolumeModel::G4PhysicalVolumeNodeID>&);
std::vector< PVNameCopyNo > PVNameCopyNoPath
G4VSolid * GetSolid(G4int depth) const
G4VPhysicalVolume * GetVolume(G4int depth) const
const std::vector< G4PhysicalVolumeNodeID > & fFullPVPath
G4int GetHistoryDepth() const
G4int GetReplicaNumber(G4int depth) const
const G4RotationMatrix * GetRotation(G4int depth) const
G4PhysicalVolumeModelTouchable(const std::vector< G4PhysicalVolumeNodeID > &fullPVPath)
const G4ThreeVector & GetTranslation(G4int depth) const
G4PhysicalVolumeNodeID(G4VPhysicalVolume *pPV=0, G4int iCopyNo=0, G4int depth=0, const G4Transform3D &transform=G4Transform3D(), G4bool drawn=true)
G4bool operator==(const G4PhysicalVolumeNodeID &right) const
void SetDrawn(G4bool drawn)
const G4Transform3D & GetTransform() const
G4bool operator<(const G4PhysicalVolumeNodeID &right) const
G4VPhysicalVolume * GetPhysicalVolume() const
G4int GetNonCulledDepth() const
G4bool operator!=(const G4PhysicalVolumeNodeID &right) const
const std::vector< G4PhysicalVolumeNodeID > & GetDrawnPVPath() const
G4int GetRequestedDepth() const
G4int GetCurrentPVCopyNo() const
const G4VSolid * GetClippingSolid() const
const G4Transform3D & GetCurrentTransform() const
void DescribeAndDescend(G4VPhysicalVolume *, G4int requestedDepth, G4LogicalVolume *, G4VSolid *, G4Material *, const G4Transform3D &, G4VGraphicsScene &)
G4VPhysicalVolume * GetCurrentPV() const
std::vector< G4PhysicalVolumeNodeID > fFullPVPath
void SetClippingSolid(G4VSolid *pClippingSolid)
G4VPhysicalVolume * fpTopPV
void VisitGeometryAndGetVisReps(G4VPhysicalVolume *, G4int requestedDepth, const G4Transform3D &, G4VGraphicsScene &)
std::vector< G4AttValue > * CreateCurrentAttValues() const
G4PhysicalVolumeModel(G4VPhysicalVolume *=0, G4int requestedDepth=UNLIMITED, const G4Transform3D &modelTransformation=G4Transform3D(), const G4ModelingParameters *=0, G4bool useFullExtent=false, const std::vector< G4PhysicalVolumeNodeID > &baseFullPVPath=std::vector< G4PhysicalVolumeNodeID >())
G4VSolid * fpClippingSolid
G4Material * fpCurrentMaterial
virtual ~G4PhysicalVolumeModel()
G4String GetCurrentTag() const
std::vector< G4PhysicalVolumeNodeID > fDrawnPVPath
G4Transform3D fCurrentTransform
G4bool Validate(G4bool warn)
void SetRequestedDepth(G4int requestedDepth)
void CurtailDescent() const
G4PhysicalVolumeModel & operator=(const G4PhysicalVolumeModel &)
virtual void DescribeSolid(const G4Transform3D &theAT, G4VSolid *pSol, const G4VisAttributes *pVisAttribs, G4VGraphicsScene &sceneHandler)
ClippingMode fClippingMode
G4String GetCurrentDescription() const
void SetClippingMode(ClippingMode mode)
const G4Transform3D & GetTransformation() const
void DescribeYourselfTo(G4VGraphicsScene &)
G4PhysicalVolumeModel(const G4PhysicalVolumeModel &)
G4LogicalVolume * GetCurrentLV() const
const std::vector< G4PhysicalVolumeNodeID > & GetFullPVPath() const
std::vector< G4PhysicalVolumeNodeID > fBaseFullPVPath
G4VPhysicalVolume * GetTopPhysicalVolume() const
const std::vector< G4PhysicalVolumeNodeID > & GetBaseFullPVPath() const
G4VPhysicalVolume * fpCurrentPV
G4Material * GetCurrentMaterial() const
const std::map< G4String, G4AttDef > * GetAttDefs() const
static G4ModelingParameters::PVNameCopyNoPath GetPVNameCopyNoPath(const std::vector< G4PhysicalVolumeNodeID > &)
G4int GetCurrentDepth() const
G4LogicalVolume * fpCurrentLV
G4ModelingParameters::PVNameCopyNoPath fTouchablePath
G4VPhysicalVolume * fpTouchablePV
std::vector< G4PhysicalVolumeNodeID > fTouchableBaseFullPVPath
G4Transform3D fTouchableGlobalTransform