Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ReplicatedSlice Class Reference

#include <G4ReplicatedSlice.hh>

+ Inheritance diagram for G4ReplicatedSlice:

Public Member Functions

 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double half_gap, const G4double offset)
 
 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4int nReplicas, const G4double half_gap, const G4double offset)
 
 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4double width, const G4double half_gap, const G4double offset)
 
 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMotherPhysical, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double half_gap, const G4double offset)
 
 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMotherPhysical, const EAxis pAxis, const G4int nReplicas, const G4double half_gap, const G4double offset)
 
 G4ReplicatedSlice (const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMotherPhysical, const EAxis pAxis, const G4double width, const G4double half_gap, const G4double offset)
 
virtual ~G4ReplicatedSlice ()
 
 G4ReplicatedSlice (const G4ReplicatedSlice &)=delete
 
G4ReplicatedSliceoperator= (const G4ReplicatedSlice &)=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
 
EVolume VolumeType () const final
 
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 G4int GetMultiplicity () const
 
virtual EVolume VolumeType () const =0
 
virtual G4bool IsMany () const =0
 
virtual G4int GetCopyNo () const =0
 
virtual void SetCopyNo (G4int CopyNo)=0
 
virtual G4bool IsReplicated () const =0
 
virtual G4bool IsParameterised () const =0
 
virtual G4VPVParameterisationGetParameterisation () const =0
 
virtual void GetReplicationData (EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const =0
 
virtual G4bool IsRegularStructure () const =0
 
virtual G4int GetRegularStructureId () const =0
 
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
 

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 66 of file G4ReplicatedSlice.hh.

Constructor & Destructor Documentation

◆ G4ReplicatedSlice() [1/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4LogicalVolume pMotherLogical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  width,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 44 of file G4ReplicatedSlice.cc.

52 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
53{
54 CheckAndSetParameters(pAxis, nDivs, width, half_gap, offset,
55 DivNDIVandWIDTH, pMotherLogical, pLogical);
56}
CLHEP::Hep3Vector G4ThreeVector

◆ G4ReplicatedSlice() [2/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4LogicalVolume pMotherLogical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 59 of file G4ReplicatedSlice.cc.

66 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
67{
68 CheckAndSetParameters(pAxis, nDivs, 0., half_gap, offset,
69 DivNDIV, pMotherLogical, pLogical);
70}

◆ G4ReplicatedSlice() [3/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4LogicalVolume pMotherLogical,
const EAxis  pAxis,
const G4double  width,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 73 of file G4ReplicatedSlice.cc.

80 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
81{
82 CheckAndSetParameters(pAxis, 0, width, half_gap, offset,
83 DivWIDTH, pMotherLogical, pLogical);
84}

◆ G4ReplicatedSlice() [4/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4VPhysicalVolume pMotherPhysical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  width,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 87 of file G4ReplicatedSlice.cc.

95 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
96{
97 CheckAndSetParameters(pAxis, nDivs, width, half_gap, offset,
98 DivNDIVandWIDTH, pMotherPhysical->GetLogicalVolume(), pLogical);
99}
G4LogicalVolume * GetLogicalVolume() const

◆ G4ReplicatedSlice() [5/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4VPhysicalVolume pMotherPhysical,
const EAxis  pAxis,
const G4int  nReplicas,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 102 of file G4ReplicatedSlice.cc.

109 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
110{
111 CheckAndSetParameters(pAxis, nDivs, 0., half_gap, offset,
112 DivNDIV, pMotherPhysical->GetLogicalVolume(), pLogical);
113}

◆ G4ReplicatedSlice() [6/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4String pName,
G4LogicalVolume pLogical,
G4VPhysicalVolume pMotherPhysical,
const EAxis  pAxis,
const G4double  width,
const G4double  half_gap,
const G4double  offset 
)

Definition at line 116 of file G4ReplicatedSlice.cc.

123 : G4VPhysicalVolume(nullptr,G4ThreeVector(),pName,pLogical,nullptr)
124{
125 CheckAndSetParameters(pAxis, 0, width, half_gap, offset,
126 DivWIDTH, pMotherPhysical->GetLogicalVolume(), pLogical);
127}

◆ ~G4ReplicatedSlice()

G4ReplicatedSlice::~G4ReplicatedSlice ( )
virtual

Definition at line 249 of file G4ReplicatedSlice.cc.

250{
251 delete GetRotation();
252}
const G4RotationMatrix * GetRotation() const

◆ G4ReplicatedSlice() [7/7]

G4ReplicatedSlice::G4ReplicatedSlice ( const G4ReplicatedSlice )
delete

Member Function Documentation

◆ GetCopyNo()

G4int G4ReplicatedSlice::GetCopyNo ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 273 of file G4ReplicatedSlice.cc.

274{
275 return fcopyNo;
276}

◆ GetDivisionAxis()

EAxis G4ReplicatedSlice::GetDivisionAxis ( ) const

Definition at line 255 of file G4ReplicatedSlice.cc.

256{
257 return fdivAxis;
258}

◆ GetMultiplicity()

G4int G4ReplicatedSlice::GetMultiplicity ( ) const
virtual

Reimplemented from G4VPhysicalVolume.

Definition at line 291 of file G4ReplicatedSlice.cc.

292{
293 return fnReplicas;
294}

◆ GetParameterisation()

G4VPVParameterisation * G4ReplicatedSlice::GetParameterisation ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 297 of file G4ReplicatedSlice.cc.

298{
299 return fparam;
300}
G4VDivisionParameterisation * fparam

◆ GetRegularStructureId()

G4int G4ReplicatedSlice::GetRegularStructureId ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 556 of file G4ReplicatedSlice.cc.

557{
558 return 0;
559}

◆ GetReplicationData()

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

Implements G4VPhysicalVolume.

Definition at line 309 of file G4ReplicatedSlice.cc.

314{
315 axis = faxis;
316 nDivs = fnReplicas;
317 width = fwidth;
318 offset = foffset;
319 consuming = false;
320}

◆ IsMany()

G4bool G4ReplicatedSlice::IsMany ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 267 of file G4ReplicatedSlice.cc.

268{
269 return false;
270}

◆ IsParameterised()

G4bool G4ReplicatedSlice::IsParameterised ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 261 of file G4ReplicatedSlice.cc.

262{
263 return true;
264}

◆ IsRegularStructure()

G4bool G4ReplicatedSlice::IsRegularStructure ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 548 of file G4ReplicatedSlice.cc.

549{
550 return false;
551}

◆ IsReplicated()

G4bool G4ReplicatedSlice::IsReplicated ( ) const
virtual

Implements G4VPhysicalVolume.

Definition at line 285 of file G4ReplicatedSlice.cc.

286{
287 return true;
288}

◆ operator=()

G4ReplicatedSlice & G4ReplicatedSlice::operator= ( const G4ReplicatedSlice )
delete

◆ SetCopyNo()

void G4ReplicatedSlice::SetCopyNo ( G4int  CopyNo)
virtual

Implements G4VPhysicalVolume.

Definition at line 279 of file G4ReplicatedSlice.cc.

280{
281 fcopyNo= newCopyNo;
282}

◆ VolumeType()

EVolume G4ReplicatedSlice::VolumeType ( ) const
finalvirtual

Implements G4VPhysicalVolume.

Definition at line 303 of file G4ReplicatedSlice.cc.

304{
305 return kParameterised;
306}
@ kParameterised
Definition: geomdefs.hh:86

Member Data Documentation

◆ faxis

EAxis G4ReplicatedSlice::faxis
protected

Definition at line 176 of file G4ReplicatedSlice.hh.

Referenced by GetReplicationData().

◆ fcopyNo

G4int G4ReplicatedSlice::fcopyNo = -1
protected

Definition at line 180 of file G4ReplicatedSlice.hh.

Referenced by GetCopyNo(), and SetCopyNo().

◆ fdivAxis

EAxis G4ReplicatedSlice::fdivAxis
protected

Definition at line 177 of file G4ReplicatedSlice.hh.

Referenced by GetDivisionAxis().

◆ fnReplicas

G4int G4ReplicatedSlice::fnReplicas = 0
protected

Definition at line 178 of file G4ReplicatedSlice.hh.

Referenced by GetMultiplicity(), and GetReplicationData().

◆ foffset

G4double G4ReplicatedSlice::foffset = 0.0
protected

Definition at line 179 of file G4ReplicatedSlice.hh.

Referenced by GetReplicationData().

◆ fparam

G4VDivisionParameterisation* G4ReplicatedSlice::fparam = nullptr
protected

Definition at line 181 of file G4ReplicatedSlice.hh.

Referenced by GetParameterisation().

◆ fwidth

G4double G4ReplicatedSlice::fwidth = 0.0
protected

Definition at line 179 of file G4ReplicatedSlice.hh.

Referenced by GetReplicationData().


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