ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4PVDivision Class Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/divisions/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 ()
 
 G4PVDivision (const G4PVDivision &)=delete
 
G4PVDivisionoperator= (const G4PVDivision &)=delete
 
virtual G4bool IsMany () const
 
virtual G4int GetCopyNo () const
 
virtual void SetCopyNo (G4int CopyNo)
 
virtual G4bool IsReplicated () const
 
virtual G4int GetMultiplicity () const
 
virtual G4VPVParameterisationGetParameterisation () const
 
virtual void GetReplicationData (EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const
 
EAxis GetDivisionAxis () const
 
G4bool IsParameterised () const
 
virtual EVolume VolumeType () 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 ()
 
 G4VPhysicalVolume (const G4VPhysicalVolume &)=delete
 
G4VPhysicalVolumeoperator= (const G4VPhysicalVolume &)=delete
 
G4bool operator== (const G4VPhysicalVolume &p) const
 
G4RotationMatrixGetObjectRotation () const
 
G4RotationMatrix GetObjectRotationValue () const
 
G4ThreeVector GetObjectTranslation () const
 
const G4RotationMatrixGetFrameRotation () const
 
G4ThreeVector GetFrameTranslation () const
 
const G4ThreeVector GetTranslation () const
 
const G4RotationMatrixGetRotation () const
 
void SetTranslation (const G4ThreeVector &v)
 
G4RotationMatrixGetRotation ()
 
void SetRotation (G4RotationMatrix *)
 
G4LogicalVolumeGetLogicalVolume () const
 
void SetLogicalVolume (G4LogicalVolume *pLogical)
 
G4LogicalVolumeGetMotherLogical () const
 
void SetMotherLogical (G4LogicalVolume *pMother)
 
const G4StringGetName () const
 
void SetName (const G4String &pName)
 
virtual G4bool CheckOverlaps (G4int res=1000, G4double tol=0., G4bool verbose=true, G4int errMax=1)
 
 G4VPhysicalVolume (__void__ &)
 
G4int GetInstanceID () const
 
EVolume DeduceVolumeType () const
 

Protected Attributes

EAxis faxis
 
EAxis fdivAxis
 
G4int fnReplicas = 0
 
G4double fwidth = 0.0
 
G4double foffset = 0.0
 
G4int fcopyNo = -1
 
G4VDivisionParameterisationfparam = nullptr
 
- 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)
 
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 G4PVManagerGetSubInstanceManager ()
 
static void Clean ()
 
- 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 74 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 74 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 44 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 44 of file G4PVDivision.cc

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivNDIVandWIDTH, FatalException, G4endl, G4Exception(), message(), 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 79 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 79 of file G4PVDivision.cc

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivNDIV, FatalException, G4endl, G4Exception(), message(), 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 111 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 111 of file G4PVDivision.cc

References G4LogicalVolume::AddDaughter(), CheckAndSetParameters(), DivWIDTH, FatalException, G4endl, G4Exception(), message(), 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 
)

Definition at line 143 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 143 of file G4PVDivision.cc

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

+ Here is the call graph for this function:

G4PVDivision::~G4PVDivision ( )
virtual

Definition at line 271 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 271 of file G4PVDivision.cc

G4PVDivision::G4PVDivision ( const G4PVDivision )
delete

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 180 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 180 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, message(), offset, and G4VPhysicalVolume::SetRotation().

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 533 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 533 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 294 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 294 of file G4PVDivision.cc

References fcopyNo.

EAxis G4PVDivision::GetDivisionAxis ( ) const

Definition at line 276 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 276 of file G4PVDivision.cc

References fdivAxis.

Referenced by PHG4GDMLWriteStructure::DivisionvolWrite(), and G4GDMLWriteStructure::DivisionvolWrite().

+ Here is the caller graph for this function:

G4int G4PVDivision::GetMultiplicity ( ) const
virtual

Reimplemented from G4VPhysicalVolume.

Definition at line 312 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 312 of file G4PVDivision.cc

References fnReplicas.

G4VPVParameterisation * G4PVDivision::GetParameterisation ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 318 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 318 of file G4PVDivision.cc

References fparam.

G4int G4PVDivision::GetRegularStructureId ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 579 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 579 of file G4PVDivision.cc

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

Implements G4VPhysicalVolume.

Definition at line 324 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 324 of file G4PVDivision.cc

References faxis, fnReplicas, foffset, and fwidth.

Referenced by PHG4GDMLWriteStructure::DivisionvolWrite(), and G4GDMLWriteStructure::DivisionvolWrite().

+ Here is the caller graph for this function:

G4bool G4PVDivision::IsMany ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 288 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 288 of file G4PVDivision.cc

G4bool G4PVDivision::IsParameterised ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 282 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 282 of file G4PVDivision.cc

G4bool G4PVDivision::IsRegularStructure ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 571 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 571 of file G4PVDivision.cc

G4bool G4PVDivision::IsReplicated ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 306 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 306 of file G4PVDivision.cc

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

Implements G4VPhysicalVolume.

Definition at line 300 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 300 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 347 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 347 of file G4PVDivision.cc

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

Referenced by G4PVDivision().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

EVolume G4PVDivision::VolumeType ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 338 of file G4PVDivision.cc.

View newest version in sPHENIX GitHub at line 338 of file G4PVDivision.cc

References kParameterised.

Member Data Documentation

EAxis G4PVDivision::faxis
protected

Definition at line 158 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 158 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), and GetReplicationData().

G4int G4PVDivision::fcopyNo = -1
protected

Definition at line 162 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 162 of file G4PVDivision.hh

Referenced by GetCopyNo(), and SetCopyNo().

EAxis G4PVDivision::fdivAxis
protected

Definition at line 159 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 159 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), and GetDivisionAxis().

G4int G4PVDivision::fnReplicas = 0
protected

Definition at line 160 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 160 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), GetMultiplicity(), and GetReplicationData().

G4double G4PVDivision::foffset = 0.0
protected

Definition at line 161 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 161 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), and GetReplicationData().

G4VDivisionParameterisation* G4PVDivision::fparam = nullptr
protected

Definition at line 163 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 163 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), GetParameterisation(), and SetParameterisation().

G4double G4PVDivision::fwidth = 0.0
protected

Definition at line 161 of file G4PVDivision.hh.

View newest version in sPHENIX GitHub at line 161 of file G4PVDivision.hh

Referenced by CheckAndSetParameters(), and GetReplicationData().


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