BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Public Member Functions | Private Attributes
BDSSamplerPlacementRecord Class Reference

Information about a registered sampler. More...

#include <BDSSamplerPlacementRecord.hh>

Collaboration diagram for BDSSamplerPlacementRecord:
Collaboration graph

Public Member Functions

 BDSSamplerPlacementRecord ()=delete
 No default constructor.
 
 BDSSamplerPlacementRecord (const G4String &nameIn, BDSSampler *samplerIn, const G4Transform3D &transformIn, G4double sPositionIn=-1000, const BDSBeamlineElement *elementIn=nullptr, const G4String &uniqueNameIn="", BDSSamplerType typeIn=BDSSamplerType::plane, G4double radiusIn=0)
 
G4String Name () const
 Accessor. More...
 
G4String UniqueName () const
 Accessor. More...
 
BDSSamplerSampler () const
 Accessor. More...
 
G4Transform3D Transform () const
 Accessor. More...
 
G4Transform3D TransformInverse () const
 Accessor. More...
 
G4double SPosition () const
 Accessor. More...
 
const BDSBeamlineElementElement () const
 Accessor. More...
 
G4int BeamlineIndex () const
 Accessor. More...
 
BDSSamplerType Type () const
 Accessor. More...
 
G4double Radius () const
 Accessor. More...
 

Private Attributes

G4String name
 The name of the sampler. More...
 
BDSSamplersampler
 The sampler instance that this information pertains to. More...
 
G4Transform3D transform
 The transform the sampler was placed with. More...
 
G4Transform3D transformInverse
 The calculated inverse of the transform the sampler was placed with. More...
 
G4double sPosition
 The curvilinear S position of this sampler. More...
 
const BDSBeamlineElementelement
 The beam line element to which this sampler pertains (if any). More...
 
G4String uniqueName
 The name of the sampler but suffixed with a number - guaranteed to be unique. More...
 
BDSSamplerType type
 
G4double radius
 

Detailed Description

Information about a registered sampler.

This class contains the information about a constructed and placed sampler. The sampler registry holds a vector of this class. This class is NOT a template to build a sampler, but a record of what was built (unlike the other BDSXXXXInfo classes in BDSIM.

This does not own the BDSSampler instance, merely keeps a record of it. Note, there can be many placements and therefore registrations of one sampler instance. This also means that the compiler provided default copy constructor is safe.

Author
Laurie Nevay

Definition at line 46 of file BDSSamplerPlacementRecord.hh.

Constructor & Destructor Documentation

◆ BDSSamplerPlacementRecord()

BDSSamplerPlacementRecord::BDSSamplerPlacementRecord ( const G4String &  nameIn,
BDSSampler samplerIn,
const G4Transform3D &  transformIn,
G4double  sPositionIn = -1000,
const BDSBeamlineElement elementIn = nullptr,
const G4String &  uniqueNameIn = "",
BDSSamplerType  typeIn = BDSSamplerType::plane,
G4double  radiusIn = 0 
)

Definition at line 24 of file BDSSamplerPlacementRecord.cc.

◆ ~BDSSamplerPlacementRecord()

BDSSamplerPlacementRecord::~BDSSamplerPlacementRecord ( )
inline

Definition at line 60 of file BDSSamplerPlacementRecord.hh.

Member Function Documentation

◆ BeamlineIndex()

G4int BDSSamplerPlacementRecord::BeamlineIndex ( ) const
inline

Accessor.

Definition at line 87 of file BDSSamplerPlacementRecord.hh.

References element, and BDSBeamlineElement::GetIndex().

Referenced by BDSSDSampler::ProcessHits(), BDSSDSamplerCylinder::ProcessHits(), and BDSSDSamplerSphere::ProcessHits().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Element()

const BDSBeamlineElement * BDSSamplerPlacementRecord::Element ( ) const
inline

Accessor.

Definition at line 69 of file BDSSamplerPlacementRecord.hh.

References element.

◆ Name()

G4String BDSSamplerPlacementRecord::Name ( ) const
inline

Accessor.

Definition at line 63 of file BDSSamplerPlacementRecord.hh.

References name.

Referenced by BDSSamplerRegistry::GetNames().

Here is the caller graph for this function:

◆ Radius()

G4double BDSSamplerPlacementRecord::Radius ( ) const
inline

Accessor.

Definition at line 72 of file BDSSamplerPlacementRecord.hh.

Referenced by BDSSamplerRegistry::GetUniqueNameToRadiusCylinder(), and BDSSamplerRegistry::GetUniqueNameToRadiusSphere().

Here is the caller graph for this function:

◆ Sampler()

BDSSampler * BDSSamplerPlacementRecord::Sampler ( ) const
inline

Accessor.

Definition at line 65 of file BDSSamplerPlacementRecord.hh.

References sampler.

◆ SPosition()

G4double BDSSamplerPlacementRecord::SPosition ( ) const
inline

◆ Transform()

G4Transform3D BDSSamplerPlacementRecord::Transform ( ) const
inline

Accessor.

Definition at line 66 of file BDSSamplerPlacementRecord.hh.

References transform.

◆ TransformInverse()

G4Transform3D BDSSamplerPlacementRecord::TransformInverse ( ) const
inline

Accessor.

Definition at line 67 of file BDSSamplerPlacementRecord.hh.

References transformInverse.

◆ Type()

BDSSamplerType BDSSamplerPlacementRecord::Type ( ) const
inline

◆ UniqueName()

G4String BDSSamplerPlacementRecord::UniqueName ( ) const
inline

Field Documentation

◆ element

const BDSBeamlineElement* BDSSamplerPlacementRecord::element
private

The beam line element to which this sampler pertains (if any).

Definition at line 81 of file BDSSamplerPlacementRecord.hh.

Referenced by BeamlineIndex(), and Element().

◆ name

G4String BDSSamplerPlacementRecord::name
private

The name of the sampler.

Definition at line 76 of file BDSSamplerPlacementRecord.hh.

Referenced by Name().

◆ radius

G4double BDSSamplerPlacementRecord::radius
private

Definition at line 84 of file BDSSamplerPlacementRecord.hh.

◆ sampler

BDSSampler* BDSSamplerPlacementRecord::sampler
private

The sampler instance that this information pertains to.

Definition at line 77 of file BDSSamplerPlacementRecord.hh.

Referenced by Sampler().

◆ sPosition

G4double BDSSamplerPlacementRecord::sPosition
private

The curvilinear S position of this sampler.

Definition at line 80 of file BDSSamplerPlacementRecord.hh.

Referenced by SPosition().

◆ transform

G4Transform3D BDSSamplerPlacementRecord::transform
private

The transform the sampler was placed with.

Definition at line 78 of file BDSSamplerPlacementRecord.hh.

Referenced by Transform().

◆ transformInverse

G4Transform3D BDSSamplerPlacementRecord::transformInverse
private

The calculated inverse of the transform the sampler was placed with.

Definition at line 79 of file BDSSamplerPlacementRecord.hh.

Referenced by TransformInverse().

◆ type

BDSSamplerType BDSSamplerPlacementRecord::type
private

Definition at line 83 of file BDSSamplerPlacementRecord.hh.

◆ uniqueName

G4String BDSSamplerPlacementRecord::uniqueName
private

The name of the sampler but suffixed with a number - guaranteed to be unique.

Definition at line 82 of file BDSSamplerPlacementRecord.hh.

Referenced by UniqueName().


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