19#ifndef BDSSCORERFACTORY_H
20#define BDSSCORERFACTORY_H
22#include "BDSScorerType.hh"
33class G4VPrimitiveScorer;
50 G4double* unit =
nullptr,
51 G4LogicalVolume* worldLV =
nullptr);
62 G4double* unit =
nullptr);
67 G4LogicalVolume* worldLV =
nullptr)
const;
Mapping from axis indices to 1D index.
Filter that applies AND to a vector of filters.
Create primitive scorers on demand.
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.
G4VPrimitiveScorer * CreateScorer(const BDSScorerInfo *info, const BDSHistBinMapper *mapper, G4double *unit=nullptr, G4LogicalVolume *worldLV=nullptr)
Main function to create a scorer.
G4VPrimitiveScorer * GetAppropriateScorer(const BDSScorerInfo &info, const BDSHistBinMapper *mapper, G4double *unit=nullptr)
Construct the primitive scorer required.
Recipe class for scorer. Checks values.