2 #ifndef EcalSimAlgos_EcalCoder_h 3 #define EcalSimAlgos_EcalCoder_h 1 20 class HepRandomEngine;
const EcalGainRatios * m_gainRatios
static constexpr int NBITS
double fullScaleEnergy(const DetId &did) const
limit on the energy scale due to the electronics range
CorrelatedNoisifier< EcalCorrMatrix > Noisifier
virtual void analogToDigital(CLHEP::HepRandomEngine *, const EcalSamples &clf, EcalDataFrame &df) const
from EcalSamples to EcalDataFrame
void encode(const EcalSamples &ecalSamples, EcalDataFrame &df, CLHEP::HepRandomEngine *) const
produce the pulse-shape
void setIntercalibConstants(const EcalIntercalibConstantsMC *ical)
void findIntercalibConstant(const DetId &detId, double &icalconst) const
CaloTSamples< float, 10 > EcalSamples
const EcalIntercalibConstantsMC * m_intercals
const Noisifier * m_ebCorrNoise[3]
const Noisifier * m_eeCorrNoise[3]
void findPedestal(const DetId &detId, int gainId, double &pedestal, double &width) const
not yet implemented
void setPedestals(const EcalPedestals *pedestals)
can be fetched every event from the EventSetup
void findGains(const DetId &detId, double theGains[]) const
const EcalPedestals * m_peds
void setGainRatios(const EcalGainRatios *gainRatios)
static constexpr int MAXADC
constexpr int gainId(sample_type sample)
get the gainId (2 bits)
void setFullScaleEnergy(double EBscale, double EEscale)
static constexpr int ADCGAINSWITCH
static constexpr int NGAINS
EcalCoder(bool addNoise, bool PreMix1, Noisifier *ebCorrNoise0, Noisifier *eeCorrNoise0=nullptr, Noisifier *ebCorrNoise1=nullptr, Noisifier *eeCorrNoise1=nullptr, Noisifier *ebCorrNoise2=nullptr, Noisifier *eeCorrNoise2=nullptr)
ctor