BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Create primitive scorers on demand. More...
#include <BDSScorerFactory.hh>
Public Member Functions | |
G4VPrimitiveScorer * | CreateScorer (const BDSScorerInfo *info, const BDSHistBinMapper *mapper, G4double *unit=nullptr, G4LogicalVolume *worldLV=nullptr) |
Main function to create a scorer. | |
Private Member Functions | |
G4VPrimitiveScorer * | GetAppropriateScorer (const BDSScorerInfo &info, const BDSHistBinMapper *mapper, G4double *unit=nullptr) |
Construct the primitive scorer required. | |
BDSSDFilterAnd * | CreateFilter (const G4String &name, const BDSScorerInfo *info, G4LogicalVolume *worldLV=nullptr) const |
Create a combined filter with AND logic for the scorer. | |
BDSScorerFactory (const BDSScorerFactory &)=delete | |
Unused default constructors. | |
BDSScorerFactory & | operator= (const BDSScorerFactory &)=delete |
Unused default constructors. | |
Create primitive scorers on demand.
Definition at line 41 of file BDSScorerFactory.hh.
BDSScorerFactory::BDSScorerFactory | ( | ) |
Definition at line 51 of file BDSScorerFactory.cc.
|
inline |
Definition at line 45 of file BDSScorerFactory.hh.
|
private |
Create a combined filter with AND logic for the scorer.
Definition at line 148 of file BDSScorerFactory.cc.
References BDS::IsFinite(), BDSScorerInfo::materialsToExclude, BDSScorerInfo::particle, BDSSDFilterAnd::RegisterFilter(), BDSSDFilterAnd::size(), and BDSScorerInfo::worldVolumeOnly.
Referenced by CreateScorer().
G4VPrimitiveScorer * BDSScorerFactory::CreateScorer | ( | const BDSScorerInfo * | info, |
const BDSHistBinMapper * | mapper, | ||
G4double * | unit = nullptr , |
||
G4LogicalVolume * | worldLV = nullptr |
||
) |
Main function to create a scorer.
Definition at line 54 of file BDSScorerFactory.cc.
References CreateFilter(), GetAppropriateScorer(), and BDSScorerInfo::name.
Referenced by BDS::BuildBLMs(), and BDSDetectorConstruction::ConstructScoringMeshes().
|
private |
Construct the primitive scorer required.
Definition at line 69 of file BDSScorerFactory.cc.
References BDSScorerInfo::filename, BDSScorerInfo::name, BDSScorerInfo::pathname, BDSScorerInfo::scorerType, and BDSTypeSafeEnum< def, inner >::underlying().
Referenced by CreateScorer().