gdynamicDigitization
Loading...
Searching...
No Matches
gDosimeterDigitization.h
Go to the documentation of this file.
1#pragma once
2
3#include "gdynamicdigitization.h" // Base class for dynamic digitization.
4#include <map>
5#include <vector>
6#include <string>
7
29{
30public:
33
35
41 bool defineReadoutSpecsImpl() override;
42
57 std::unique_ptr<GDigitizedData> digitizeHitImpl(GHit* ghit, size_t hitn) override;
58
72 bool loadConstantsImpl(int runno, std::string const& variation) override;
73
74private:
81 std::map<int, std::vector<double>> nielfactorMap;
82
89 std::map<int, std::vector<double>> E_nielfactorMap;
90
97 std::map<int, double> pMassMeV;
98
110 double getNielFactorForParticleAtEnergy(int pid, double energyMeV);
111};
Built-in digitization routine for dosimeters with NIEL weighting.
bool defineReadoutSpecsImpl() override
Defines readout specifications for dosimeter digitization.
std::unique_ptr< GDigitizedData > digitizeHitImpl(GHit *ghit, size_t hitn) override
Digitizes a hit for dosimeter detectors.
bool loadConstantsImpl(int runno, std::string const &variation) override
Loads digitization constants for dosimeter digitization.
CollectionMode collection_mode() const override
Abstract base class for dynamically loaded digitization plugins.
GDynamicDigitization(const std::shared_ptr< GOptions > &g)
Constructs the digitization base object.