Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4VPVParameterisation Class Referenceabstract

G4VPVParameterisation ia an abstract base class for Parameterisation, able to compute the transformation and (indirectly) the dimensions of parameterised volumes, given a replication number. More...

#include <G4VPVParameterisation.hh>

Inheritance diagram for G4VPVParameterisation:

Public Member Functions

 G4VPVParameterisation ()=default
virtual ~G4VPVParameterisation ()=default
virtual void ComputeTransformation (const G4int no, G4VPhysicalVolume *pv) const =0
virtual G4VSolidComputeSolid (const G4int no, G4VPhysicalVolume *pv)
virtual G4MaterialComputeMaterial (const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=nullptr)
virtual G4bool IsNested () const
virtual G4VVolumeMaterialScannerGetMaterialScanner ()
virtual void ComputeDimensions (G4Box &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Tubs &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Trd &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Trap &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Cons &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Sphere &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Orb &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Ellipsoid &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Torus &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Para &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Polycone &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Polyhedra &, const G4int, const G4VPhysicalVolume *) const
virtual void ComputeDimensions (G4Hype &, const G4int, const G4VPhysicalVolume *) const

Detailed Description

G4VPVParameterisation ia an abstract base class for Parameterisation, able to compute the transformation and (indirectly) the dimensions of parameterised volumes, given a replication number.

Definition at line 71 of file G4VPVParameterisation.hh.

Constructor & Destructor Documentation

◆ G4VPVParameterisation()

G4VPVParameterisation::G4VPVParameterisation ( )
default

Default Constructor & Destructor.

◆ ~G4VPVParameterisation()

virtual G4VPVParameterisation::~G4VPVParameterisation ( )
virtualdefault

Member Function Documentation

◆ ComputeDimensions() [1/13]

◆ ComputeDimensions() [2/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Cons & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [3/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Ellipsoid & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

Reimplemented in G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 144 of file G4VPVParameterisation.hh.

146 {}

◆ ComputeDimensions() [4/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Hype & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

Reimplemented in G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 159 of file G4VPVParameterisation.hh.

161 {}

◆ ComputeDimensions() [5/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Orb & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

Reimplemented in G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 141 of file G4VPVParameterisation.hh.

143 {}

◆ ComputeDimensions() [6/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Para & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [7/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Polycone & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [8/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Polyhedra & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [9/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Sphere & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

Reimplemented in G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 138 of file G4VPVParameterisation.hh.

140 {}

◆ ComputeDimensions() [10/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Torus & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

Reimplemented in G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 147 of file G4VPVParameterisation.hh.

149 {}

◆ ComputeDimensions() [11/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Trap & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [12/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Trd & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeDimensions() [13/13]

virtual void G4VPVParameterisation::ComputeDimensions ( G4Tubs & ,
const G4int ,
const G4VPhysicalVolume *  ) const
inlinevirtual

◆ ComputeMaterial()

G4Material * G4VPVParameterisation::ComputeMaterial ( const G4int repNo,
G4VPhysicalVolume * currentVol,
const G4VTouchable * parentTouch = nullptr )
virtual

Computes the material for the 'currentVol' and replica number 'repNo'. Must cope with 'parentTouch' for navigator's SetupHierarchy() when used for nested parameterisations.

Parameters
[in]currentVolPointer to the current physical volume.
[in]repNoThe copy number index.
[in]parentTouchPointer to the touchable of the parent volume.
Returns
A pointer to the associated material.

Reimplemented in G4PartialPhantomParameterisation, G4PhantomParameterisation, and G4VNestedParameterisation.

Definition at line 47 of file G4VPVParameterisation.cc.

50{
51 return pPhysicalVol->GetLogicalVolume()->GetMaterial();
52}

Referenced by G4tgbGeometryDumper::DumpPVParameterised(), G4LogicalVolume::GetMass(), G4ParameterisedNavigation::LevelLocate(), and G4Region::ScanVolumeTree().

◆ ComputeSolid()

◆ ComputeTransformation()

virtual void G4VPVParameterisation::ComputeTransformation ( const G4int no,
G4VPhysicalVolume * pv ) const
pure virtual

◆ GetMaterialScanner()

G4VVolumeMaterialScanner * G4VPVParameterisation::GetMaterialScanner ( )
virtual

Reimplemented in G4VNestedParameterisation.

Definition at line 62 of file G4VPVParameterisation.cc.

63{
64 return nullptr;
65}

Referenced by G4Region::ScanVolumeTree().

◆ IsNested()

G4bool G4VPVParameterisation::IsNested ( ) const
virtual

Methods to identify nested parameterisations. Required in order to enable material scan for nested parameterisations.

Reimplemented in G4VNestedParameterisation.

Definition at line 55 of file G4VPVParameterisation.cc.

56{
57 return false;
58}

Referenced by G4GMocrenFileSceneHandler::AddSolid(), G4ITNavigator2::SetupHierarchy(), and G4Navigator::SetupHierarchy().


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