Geant4  10.01
G4PVDivision Class Reference

#include <G4PVDivision.hh>

+ Inheritance diagram for G4PVDivision:
+ Collaboration diagram for G4PVDivision:

Public Member Functions

 G4PVDivision (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMother, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset)
 
 G4PVDivision (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4int nReplicas, const G4double offset)
 
 G4PVDivision (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4double width, const G4double offset)
 
 G4PVDivision (const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset)
 
virtual ~G4PVDivision ()
 
virtual G4bool IsMany () const
 
virtual G4int GetCopyNo () const
 
virtual void SetCopyNo (G4int CopyNo)
 
virtual G4bool IsReplicated () const
 
virtual G4VPVParameterisation * GetParameterisation () const
 
virtual void GetReplicationData (EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const
 
EAxis GetDivisionAxis () const
 
G4bool IsParameterised () const
 
G4bool IsRegularStructure () const
 
G4int GetRegularStructureId () const
 
- Public Member Functions inherited from G4VPhysicalVolume
 G4VPhysicalVolume (G4RotationMatrix *pRot, const G4ThreeVector &tlate, const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother)
 
virtual ~G4VPhysicalVolume ()
 
G4bool operator== (const G4VPhysicalVolume &p) const
 
G4RotationMatrix * GetObjectRotation () const
 
G4RotationMatrix GetObjectRotationValue () const
 
G4ThreeVector GetObjectTranslation () const
 
const G4RotationMatrix * GetFrameRotation () const
 
G4ThreeVector GetFrameTranslation () const
 
const G4ThreeVector & GetTranslation () const
 
const G4RotationMatrix * GetRotation () const
 
void SetTranslation (const G4ThreeVector &v)
 
G4RotationMatrix * GetRotation ()
 
void SetRotation (G4RotationMatrix *)
 
G4LogicalVolume * GetLogicalVolume () const
 
void SetLogicalVolume (G4LogicalVolume *pLogical)
 
G4LogicalVolume * GetMotherLogical () const
 
void SetMotherLogical (G4LogicalVolume *pMother)
 
const G4String & GetName () const
 
void SetName (const G4String &pName)
 
EVolume VolumeType () const
 
virtual G4int GetMultiplicity () const
 
virtual G4bool CheckOverlaps (G4int res=1000, G4double tol=0., G4bool verbose=true, G4int errMax=1)
 
 G4VPhysicalVolume (__void__ &)
 
G4int GetInstanceID () const
 

Protected Attributes

EAxis faxis
 
EAxis fdivAxis
 
G4int fnReplicas
 
G4double fwidth
 
G4double foffset
 
G4int fcopyNo
 
G4VDivisionParameterisation * fparam
 
- Protected Attributes inherited from G4VPhysicalVolume
G4int instanceID
 

Private Member Functions

void CheckAndSetParameters (const EAxis pAxis, const G4int nDivs, const G4double width, const G4double offset, DivisionType divType, const G4LogicalVolume *pMotherLogical)
 
 G4PVDivision (const G4PVDivision &)
 
const G4PVDivision & operator= (const G4PVDivision &)
 
void SetParameterisation (G4LogicalVolume *motherLogical, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset, DivisionType divType)
 
void ErrorInAxis (EAxis axis, G4VSolid *solid)
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VPhysicalVolume
static const G4PVManager & GetSubInstanceManager ()
 
- Protected Member Functions inherited from G4VPhysicalVolume
void InitialiseWorker (G4VPhysicalVolume *pMasterObject, G4RotationMatrix *pRot, const G4ThreeVector &tlate)
 
void TerminateWorker (G4VPhysicalVolume *pMasterObject)
 
- Static Protected Attributes inherited from G4VPhysicalVolume
static G4GEOM_DLL G4PVManager subInstanceManager
 

Detailed Description

Definition at line 79 of file G4PVDivision.hh.

Constructor & Destructor Documentation

G4PVDivision::G4PVDivision ( const G4String &  pName,
G4LogicalVolume *  pLogical,
G4LogicalVolume *  pMother,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  width,
const G4double  offset 
)

Definition at line 47 of file G4PVDivision.cc.

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivNDIVandWIDTH, FatalException, G4endl, G4Exception(), G4VPhysicalVolume::SetMotherLogical(), and SetParameterisation().

+ Here is the call graph for this function:

G4PVDivision::G4PVDivision ( const G4String &  pName,
G4LogicalVolume *  pLogical,
G4LogicalVolume *  pMotherLogical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  offset 
)

Definition at line 83 of file G4PVDivision.cc.

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivNDIV, FatalException, G4endl, G4Exception(), G4VPhysicalVolume::SetMotherLogical(), and SetParameterisation().

+ Here is the call graph for this function:

G4PVDivision::G4PVDivision ( const G4String &  pName,
G4LogicalVolume *  pLogical,
G4LogicalVolume *  pMotherLogical,
const EAxis  pAxis,
const G4double  width,
const G4double  offset 
)

Definition at line 116 of file G4PVDivision.cc.

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivWIDTH, FatalException, G4endl, G4Exception(), G4VPhysicalVolume::SetMotherLogical(), and SetParameterisation().

+ Here is the call graph for this function:

G4PVDivision::G4PVDivision ( const G4String &  pName,
G4LogicalVolume *  pLogical,
G4VPhysicalVolume *  pMother,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  width,
const G4double  offset 
)
G4PVDivision::~G4PVDivision ( )
virtual

Definition at line 241 of file G4PVDivision.cc.

References G4VPhysicalVolume::GetRotation().

+ Here is the call graph for this function:

G4PVDivision::G4PVDivision ( const G4PVDivision &  )
private

Member Function Documentation

void G4PVDivision::CheckAndSetParameters ( const EAxis  pAxis,
const G4int  nDivs,
const G4double  width,
const G4double  offset,
DivisionType  divType,
const G4LogicalVolume *  pMotherLogical 
)
private

!!!! axis has to be x/y/z in G4VoxelLimits::GetMinExtent

Definition at line 150 of file G4PVDivision.cc.

References DivNDIV, DivWIDTH, FatalException, faxis, fdivAxis, fnReplicas, foffset, fparam, fwidth, G4endl, G4Exception(), G4VSolid::GetEntityType(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4VDivisionParameterisation::GetNoDiv(), G4LogicalVolume::GetSolid(), G4VDivisionParameterisation::GetWidth(), kPhi, kRadial3D, kRho, kXAxis, kYAxis, kZAxis, G4VPhysicalVolume::SetRotation(), and width.

Referenced by G4PVDivision().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PVDivision::ErrorInAxis ( EAxis  axis,
G4VSolid *  solid 
)
private

Definition at line 492 of file G4PVDivision.cc.

References error, FatalException, G4Exception(), G4VSolid::GetEntityType(), G4VSolid::GetName(), kPhi, kRadial3D, kRho, kXAxis, kYAxis, and kZAxis.

Referenced by SetParameterisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4PVDivision::GetCopyNo ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 265 of file G4PVDivision.cc.

References fcopyNo.

EAxis G4PVDivision::GetDivisionAxis ( ) const

Definition at line 247 of file G4PVDivision.cc.

References fdivAxis.

Referenced by G4GDMLWriteStructure::DivisionvolWrite().

+ Here is the caller graph for this function:

G4VPVParameterisation * G4PVDivision::GetParameterisation ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 283 of file G4PVDivision.cc.

References fparam.

G4int G4PVDivision::GetRegularStructureId ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 536 of file G4PVDivision.cc.

void G4PVDivision::GetReplicationData ( EAxis &  axis,
G4int &  nReplicas,
G4double &  width,
G4double &  offset,
G4bool &  consuming 
) const
virtual

Implements G4VPhysicalVolume.

Definition at line 289 of file G4PVDivision.cc.

References faxis, fnReplicas, foffset, and fwidth.

Referenced by G4GDMLWriteStructure::DivisionvolWrite().

+ Here is the caller graph for this function:

G4bool G4PVDivision::IsMany ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 259 of file G4PVDivision.cc.

G4bool G4PVDivision::IsParameterised ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 253 of file G4PVDivision.cc.

G4bool G4PVDivision::IsRegularStructure ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 528 of file G4PVDivision.cc.

G4bool G4PVDivision::IsReplicated ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 277 of file G4PVDivision.cc.

const G4PVDivision& G4PVDivision::operator= ( const G4PVDivision &  )
private
void G4PVDivision::SetCopyNo ( G4int  CopyNo)
virtual

Implements G4VPhysicalVolume.

Definition at line 271 of file G4PVDivision.cc.

References fcopyNo.

void G4PVDivision::SetParameterisation ( G4LogicalVolume *  motherLogical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  width,
const G4double  offset,
DivisionType  divType 
)
private

Definition at line 306 of file G4PVDivision.cc.

References ErrorInAxis(), FatalException, fparam, G4endl, G4Exception(), G4VSolid::GetEntityType(), G4LogicalVolume::GetSolid(), kPhi, kRho, kXAxis, kYAxis, and kZAxis.

Referenced by G4PVDivision().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

EAxis G4PVDivision::faxis
protected

Definition at line 165 of file G4PVDivision.hh.

Referenced by CheckAndSetParameters(), and GetReplicationData().

G4int G4PVDivision::fcopyNo
protected

Definition at line 169 of file G4PVDivision.hh.

Referenced by GetCopyNo(), and SetCopyNo().

EAxis G4PVDivision::fdivAxis
protected

Definition at line 166 of file G4PVDivision.hh.

Referenced by CheckAndSetParameters(), and GetDivisionAxis().

G4int G4PVDivision::fnReplicas
protected

Definition at line 167 of file G4PVDivision.hh.

Referenced by CheckAndSetParameters(), and GetReplicationData().

G4double G4PVDivision::foffset
protected

Definition at line 168 of file G4PVDivision.hh.

Referenced by CheckAndSetParameters(), and GetReplicationData().

G4VDivisionParameterisation* G4PVDivision::fparam
protected
G4double G4PVDivision::fwidth
protected

Definition at line 168 of file G4PVDivision.hh.

Referenced by CheckAndSetParameters(), and GetReplicationData().


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