Geant4  10.00.p02
G4PhysicalVolumeModel Class Reference

#include <G4PhysicalVolumeModel.hh>

+ Inheritance diagram for G4PhysicalVolumeModel:
+ Collaboration diagram for G4PhysicalVolumeModel:

Classes

class  G4PhysicalVolumeModelTouchable
 
class  G4PhysicalVolumeNodeID
 

Public Types

enum  { UNLIMITED = -1 }
 
enum  ClippingMode { subtraction, intersection }
 

Public Member Functions

 G4PhysicalVolumeModel (G4VPhysicalVolume *=0, G4int requestedDepth=UNLIMITED, const G4Transform3D &modelTransformation=G4Transform3D(), const G4ModelingParameters *=0, G4bool useFullExtent=false)
 
virtual ~G4PhysicalVolumeModel ()
 
void DescribeYourselfTo (G4VGraphicsScene &)
 
G4String GetCurrentDescription () const
 
G4String GetCurrentTag () const
 
G4VPhysicalVolumeGetTopPhysicalVolume () const
 
G4int GetRequestedDepth () const
 
const G4VSolidGetClippingSolid () const
 
G4int GetCurrentDepth () const
 
G4VPhysicalVolumeGetCurrentPV () const
 
G4LogicalVolumeGetCurrentLV () const
 
G4MaterialGetCurrentMaterial () const
 
const std::vector
< G4PhysicalVolumeNodeID > & 
GetFullPVPath () const
 
const std::vector
< G4PhysicalVolumeNodeID > & 
GetDrawnPVPath () const
 
const std::map< G4String,
G4AttDef > * 
GetAttDefs () const
 
std::vector< G4AttValue > * CreateCurrentAttValues () const
 
void SetBaseFullPVPath (const std::vector< G4PhysicalVolumeNodeID > &baseFullPVPath)
 
void SetRequestedDepth (G4int requestedDepth)
 
void SetClippingSolid (G4VSolid *pClippingSolid)
 
void SetClippingMode (ClippingMode mode)
 
G4bool Validate (G4bool warn)
 
void CurtailDescent ()
 
- Public Member Functions inherited from G4VModel
 G4VModel (const G4Transform3D &modelTransformation=G4Transform3D(), const G4ModelingParameters *=0)
 
virtual ~G4VModel ()
 
const G4ModelingParametersGetModelingParameters () const
 
const G4StringGetType () const
 
const G4VisExtentGetExtent () const
 
const G4StringGetGlobalDescription () const
 
const G4StringGetGlobalTag () const
 
const G4Transform3DGetTransformation () const
 
void SetModelingParameters (const G4ModelingParameters *)
 
void SetExtent (const G4VisExtent &)
 
void SetType (const G4String &)
 
void SetGlobalDescription (const G4String &)
 
void SetGlobalTag (const G4String &)
 
void SetTransformation (const G4Transform3D &)
 

Protected Member Functions

void VisitGeometryAndGetVisReps (G4VPhysicalVolume *, G4int requestedDepth, const G4Transform3D &, G4VGraphicsScene &)
 
void DescribeAndDescend (G4VPhysicalVolume *, G4int requestedDepth, G4LogicalVolume *, G4VSolid *, G4Material *, const G4Transform3D &, G4VGraphicsScene &)
 
virtual void DescribeSolid (const G4Transform3D &theAT, G4VSolid *pSol, const G4VisAttributes *pVisAttribs, G4VGraphicsScene &sceneHandler)
 
void CalculateExtent ()
 

Protected Attributes

G4VPhysicalVolumefpTopPV
 
G4String fTopPVName
 
G4int fTopPVCopyNo
 
G4int fRequestedDepth
 
G4bool fUseFullExtent
 
G4int fCurrentDepth
 
G4VPhysicalVolumefpCurrentPV
 
G4LogicalVolumefpCurrentLV
 
G4MaterialfpCurrentMaterial
 
G4Transform3DfpCurrentTransform
 
std::vector
< G4PhysicalVolumeNodeID
fBaseFullPVPath
 
std::vector
< G4PhysicalVolumeNodeID
fFullPVPath
 
std::vector
< G4PhysicalVolumeNodeID
fDrawnPVPath
 
G4bool fCurtailDescent
 
G4VSolidfpClippingSolid
 
ClippingMode fClippingMode
 
- Protected Attributes inherited from G4VModel
G4String fType
 
G4String fGlobalTag
 
G4String fGlobalDescription
 
G4VisExtent fExtent
 
G4Transform3D fTransform
 
const G4ModelingParametersfpMP
 

Private Member Functions

 G4PhysicalVolumeModel (const G4PhysicalVolumeModel &)
 
G4PhysicalVolumeModeloperator= (const G4PhysicalVolumeModel &)
 

Detailed Description

Definition at line 82 of file G4PhysicalVolumeModel.hh.

Member Enumeration Documentation

anonymous enum
Enumerator
UNLIMITED 

Definition at line 86 of file G4PhysicalVolumeModel.hh.

Enumerator
subtraction 
intersection 

Definition at line 88 of file G4PhysicalVolumeModel.hh.

Constructor & Destructor Documentation

G4PhysicalVolumeModel::G4PhysicalVolumeModel ( G4VPhysicalVolume pVPV = 0,
G4int  requestedDepth = UNLIMITED,
const G4Transform3D modelTransformation = G4Transform3D(),
const G4ModelingParameters pMP = 0,
G4bool  useFullExtent = false 
)

Definition at line 59 of file G4PhysicalVolumeModel.cc.

G4PhysicalVolumeModel::~G4PhysicalVolumeModel ( )
virtual

Definition at line 92 of file G4PhysicalVolumeModel.cc.

References fpClippingSolid.

G4PhysicalVolumeModel::G4PhysicalVolumeModel ( const G4PhysicalVolumeModel )
private

Member Function Documentation

void G4PhysicalVolumeModel::CalculateExtent ( )
protected

Definition at line 97 of file G4PhysicalVolumeModel.cc.

References DescribeYourselfTo(), G4VModel::fExtent, G4VModel::fpMP, fpTopPV, fRequestedDepth, G4VModel::fTransform, fUseFullExtent, G4BoundingSphereScene::GetCentre(), G4VModel::GetExtent(), G4BoundingSphereScene::GetRadius(), and G4ModelingParameters::wf.

Referenced by Validate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector< G4AttValue > * G4PhysicalVolumeModel::CreateCurrentAttValues ( ) const

Definition at line 832 of file G4PhysicalVolumeModel.cc.

References fFullPVPath, fpCurrentLV, fpCurrentMaterial, fpCurrentTransform, G4BestUnit, G4Exception(), G4Material::GetDensity(), G4VSolid::GetEntityType(), G4VSolid::GetName(), G4Region::GetName(), G4Material::GetName(), G4LogicalVolume::GetName(), G4Material::GetRadlen(), G4LogicalVolume::GetRegion(), G4LogicalVolume::GetSolid(), G4Material::GetState(), G4LogicalVolume::IsRootRegion(), JustWarning, and kStateUndefined.

Referenced by G4VSceneHandler::LoadAtts(), and G4XXXStoredSceneHandler::PreAddSolid().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PhysicalVolumeModel::CurtailDescent ( )
inline

Definition at line 222 of file G4PhysicalVolumeModel.hh.

References fCurtailDescent.

Referenced by G4BoundingSphereScene::Accrue(), and G4ASCIITreeSceneHandler::RequestPrimitives().

+ Here is the caller graph for this function:

void G4PhysicalVolumeModel::DescribeAndDescend ( G4VPhysicalVolume pVPV,
G4int  requestedDepth,
G4LogicalVolume pLV,
G4VSolid pSol,
G4Material pMaterial,
const G4Transform3D theAT,
G4VGraphicsScene sceneHandler 
)
protected
void G4PhysicalVolumeModel::DescribeSolid ( const G4Transform3D theAT,
G4VSolid pSol,
const G4VisAttributes pVisAttribs,
G4VGraphicsScene sceneHandler 
)
protectedvirtual
void G4PhysicalVolumeModel::DescribeYourselfTo ( G4VGraphicsScene sceneHandler)
virtual

Implements G4VModel.

Definition at line 137 of file G4PhysicalVolumeModel.cc.

References FatalException, and G4Exception().

Referenced by CalculateExtent(), G4LogicalVolumeModel::DescribeYourselfTo(), G4ASCIITreeSceneHandler::EndModeling(), G4VisCommandSceneAddVolume::SetNewValue(), and Validate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const std::map< G4String, G4AttDef > * G4PhysicalVolumeModel::GetAttDefs ( ) const

Definition at line 757 of file G4PhysicalVolumeModel.cc.

References G4AttDefStore::GetInstance().

Referenced by G4VSceneHandler::LoadAtts(), G4XXXStoredSceneHandler::PreAddSolid(), and G4VisCommandList::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4VSolid* G4PhysicalVolumeModel::GetClippingSolid ( ) const
inline

Definition at line 158 of file G4PhysicalVolumeModel.hh.

References fpClippingSolid.

G4int G4PhysicalVolumeModel::GetCurrentDepth ( ) const
inline

Definition at line 161 of file G4PhysicalVolumeModel.hh.

References fCurrentDepth.

Referenced by G4PhysicalVolumeMassScene::AccrueMass(), G4HepRepFileSceneHandler::AddHepRepInstance(), G4HepRepSceneHandler::AddPrimitive(), G4HepRepSceneHandler::AddSolid(), G4GMocrenFileSceneHandler::AddSolid(), G4PhysicalVolumeSearchScene::FindVolume(), and G4HepRepSceneHandler::getGeometryOrEventInstance().

+ Here is the caller graph for this function:

G4String G4PhysicalVolumeModel::GetCurrentDescription ( ) const
virtual

Reimplemented from G4VModel.

Definition at line 187 of file G4PhysicalVolumeModel.cc.

References GetCurrentTag().

+ Here is the call graph for this function:

G4LogicalVolume* G4PhysicalVolumeModel::GetCurrentLV ( ) const
inline
G4Material* G4PhysicalVolumeModel::GetCurrentMaterial ( ) const
inline

Definition at line 170 of file G4PhysicalVolumeModel.hh.

References fpCurrentMaterial.

Referenced by G4PhysicalVolumeMassScene::AccrueMass(), G4HepRepFileSceneHandler::AddHepRepInstance(), G4HepRepSceneHandler::AddSolid(), G4GMocrenFileSceneHandler::AddSolid(), G4HepRepSceneHandler::getGeometryOrEventInstance(), and G4ASCIITreeSceneHandler::RequestPrimitives().

+ Here is the caller graph for this function:

G4VPhysicalVolume* G4PhysicalVolumeModel::GetCurrentPV ( ) const
inline

Definition at line 164 of file G4PhysicalVolumeModel.hh.

References fpCurrentPV.

Referenced by G4PhysicalVolumeMassScene::AccrueMass(), G4HepRepFileSceneHandler::AddHepRepInstance(), G4GMocrenFileSceneHandler::AddPrimitive(), G4GMocrenFileSceneHandler::AddSolid(), G4PhysicalVolumeSearchScene::FindVolume(), and G4ASCIITreeSceneHandler::RequestPrimitives().

+ Here is the caller graph for this function:

G4String G4PhysicalVolumeModel::GetCurrentTag ( ) const
virtual

Reimplemented from G4VModel.

Definition at line 175 of file G4PhysicalVolumeModel.cc.

References G4VModel::fGlobalTag, and fpCurrentPV.

Referenced by GetCurrentDescription().

+ Here is the caller graph for this function:

const std::vector<G4PhysicalVolumeNodeID>& G4PhysicalVolumeModel::GetDrawnPVPath ( ) const
inline

Definition at line 180 of file G4PhysicalVolumeModel.hh.

References fDrawnPVPath.

Referenced by G4HepRepFileSceneHandler::AddHepRepInstance(), G4GMocrenFileSceneHandler::AddSolid(), G4XXXSGSceneHandler::CreateCurrentItem(), G4VTreeSceneHandler::PreAddSolid(), and G4ASCIITreeSceneHandler::RequestPrimitives().

+ Here is the caller graph for this function:

const std::vector<G4PhysicalVolumeNodeID>& G4PhysicalVolumeModel::GetFullPVPath ( ) const
inline

Definition at line 173 of file G4PhysicalVolumeModel.hh.

References fFullPVPath.

Referenced by G4PhysicalVolumeSearchScene::FindVolume().

+ Here is the caller graph for this function:

G4int G4PhysicalVolumeModel::GetRequestedDepth ( ) const
inline

Definition at line 156 of file G4PhysicalVolumeModel.hh.

References fRequestedDepth.

Referenced by G4ASCIITreeSceneHandler::EndModeling().

+ Here is the caller graph for this function:

G4VPhysicalVolume* G4PhysicalVolumeModel::GetTopPhysicalVolume ( ) const
inline

Definition at line 154 of file G4PhysicalVolumeModel.hh.

References fpTopPV.

Referenced by G4GMocrenFileSceneHandler::AddSolid(), and G4ASCIITreeSceneHandler::EndModeling().

+ Here is the caller graph for this function:

G4PhysicalVolumeModel& G4PhysicalVolumeModel::operator= ( const G4PhysicalVolumeModel )
private
void G4PhysicalVolumeModel::SetBaseFullPVPath ( const std::vector< G4PhysicalVolumeNodeID > &  baseFullPVPath)
inline

Definition at line 201 of file G4PhysicalVolumeModel.hh.

References fBaseFullPVPath, and fFullPVPath.

Referenced by G4VisCommandSceneAddVolume::SetNewValue().

+ Here is the caller graph for this function:

void G4PhysicalVolumeModel::SetClippingMode ( ClippingMode  mode)
inline

Definition at line 215 of file G4PhysicalVolumeModel.hh.

References fClippingMode.

void G4PhysicalVolumeModel::SetClippingSolid ( G4VSolid pClippingSolid)
inline

Definition at line 211 of file G4PhysicalVolumeModel.hh.

References fpClippingSolid.

void G4PhysicalVolumeModel::SetRequestedDepth ( G4int  requestedDepth)
inline

Definition at line 207 of file G4PhysicalVolumeModel.hh.

References fRequestedDepth.

void G4PhysicalVolumeModel::VisitGeometryAndGetVisReps ( G4VPhysicalVolume pVPV,
G4int  requestedDepth,
const G4Transform3D theAT,
G4VGraphicsScene sceneHandler 
)
protected

Definition at line 193 of file G4PhysicalVolumeModel.cc.

References G4cout, G4endl, G4VSolid::GetEntityType(), G4VSolid::GetName(), pyG4VTouchable::GetRotation, kPhi, kRho, kXAxis, kYAxis, kZAxis, n, and width.

+ Here is the call graph for this function:

Member Data Documentation

std::vector<G4PhysicalVolumeNodeID> G4PhysicalVolumeModel::fBaseFullPVPath
protected

Definition at line 260 of file G4PhysicalVolumeModel.hh.

Referenced by SetBaseFullPVPath().

ClippingMode G4PhysicalVolumeModel::fClippingMode
protected

Definition at line 265 of file G4PhysicalVolumeModel.hh.

Referenced by SetClippingMode().

G4int G4PhysicalVolumeModel::fCurrentDepth
protected

Definition at line 255 of file G4PhysicalVolumeModel.hh.

Referenced by GetCurrentDepth().

G4bool G4PhysicalVolumeModel::fCurtailDescent
protected

Definition at line 263 of file G4PhysicalVolumeModel.hh.

Referenced by CurtailDescent().

std::vector<G4PhysicalVolumeNodeID> G4PhysicalVolumeModel::fDrawnPVPath
protected

Definition at line 262 of file G4PhysicalVolumeModel.hh.

Referenced by GetDrawnPVPath().

G4VSolid* G4PhysicalVolumeModel::fpClippingSolid
protected
G4LogicalVolume* G4PhysicalVolumeModel::fpCurrentLV
protected

Definition at line 257 of file G4PhysicalVolumeModel.hh.

Referenced by CreateCurrentAttValues(), and GetCurrentLV().

G4Material* G4PhysicalVolumeModel::fpCurrentMaterial
protected

Definition at line 258 of file G4PhysicalVolumeModel.hh.

Referenced by CreateCurrentAttValues(), and GetCurrentMaterial().

G4VPhysicalVolume* G4PhysicalVolumeModel::fpCurrentPV
protected

Definition at line 256 of file G4PhysicalVolumeModel.hh.

Referenced by GetCurrentPV(), and GetCurrentTag().

G4Transform3D* G4PhysicalVolumeModel::fpCurrentTransform
protected

Definition at line 259 of file G4PhysicalVolumeModel.hh.

Referenced by CreateCurrentAttValues().

G4VPhysicalVolume* G4PhysicalVolumeModel::fpTopPV
protected

Definition at line 249 of file G4PhysicalVolumeModel.hh.

Referenced by CalculateExtent(), GetTopPhysicalVolume(), and Validate().

G4int G4PhysicalVolumeModel::fRequestedDepth
protected

Definition at line 252 of file G4PhysicalVolumeModel.hh.

Referenced by CalculateExtent(), GetRequestedDepth(), and SetRequestedDepth().

G4int G4PhysicalVolumeModel::fTopPVCopyNo
protected

Definition at line 251 of file G4PhysicalVolumeModel.hh.

Referenced by Validate().

G4String G4PhysicalVolumeModel::fTopPVName
protected

Definition at line 250 of file G4PhysicalVolumeModel.hh.

Referenced by Validate().

G4bool G4PhysicalVolumeModel::fUseFullExtent
protected

Definition at line 254 of file G4PhysicalVolumeModel.hh.

Referenced by CalculateExtent().


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