1 #ifndef SimCalorimetry_EcalSimAlgos_EcalLiteDTUCoder_h
2 #define SimCalorimetry_EcalSimAlgos_EcalLiteDTUCoder_h
21 class HepRandomEngine;
const EcalLiteDTUPedestalsMap * m_peds
static constexpr unsigned int NGAINS
virtual void analogToDigital(CLHEP::HepRandomEngine *, const EcalSamples &clf, EcalDataFrame_Ph2 &df) const
from EcalSamples to EcalDataFrame_Ph2
CorrelatedNoisifier< EcalCorrMatrix_Ph2 > Noisifier
CaloTSamples< float, ecalPh2::sampleSize > EcalSamples
double fullScaleEnergy(const DetId &did) const
limit on the energy scale due to the electronics range
void setIntercalibConstants(const EcalIntercalibConstantsMC *ical)
void encode(const EcalSamples &ecalSamples, EcalDataFrame_Ph2 &df, CLHEP::HepRandomEngine *) const
produce the pulse-shape
void findIntercalibConstant(const DetId &detId, double &icalconst) const
const Noisifier * m_ebCorrNoise[ecalPh2::NGAINS]
void findGains(const DetId &detId, float theGains[]) const
void setFullScaleEnergy(double EBscale)
void setGainRatios(float gainRatios)
const EcalIntercalibConstantsMC * m_intercals
constexpr int gainId(sample_type sample)
get the gainId (2 bits)
virtual ~EcalLiteDTUCoder()
dtor
void findPedestal(const DetId &detId, int gainId, double &pedestal, double &width) const
void setPedestals(const EcalLiteDTUPedestalsMap *pedestals)
can be fetched every event from the EventSetup
EcalLiteDTUCoder(bool addNoise, bool PreMix1, Noisifier *ebCorrNoise0, Noisifier *ebCorrNoise1=nullptr)
ctor