#include <EcalCoder.h>
Public Types | |
enum | { NBITS = 12, MAXADC = 4095, ADCGAINSWITCH = 4079, NGAINS = 3 } |
typedef CaloTSamples< float, 10 > | EcalSamples |
typedef CorrelatedNoisifier< EcalCorrMatrix > | Noisifier |
Public Member Functions | |
virtual void | analogToDigital (CLHEP::HepRandomEngine *, const EcalSamples &clf, EcalDataFrame &df) const |
from EcalSamples to EcalDataFrame More... | |
EcalCoder (bool addNoise, bool PreMix1, Noisifier *ebCorrNoise0, Noisifier *eeCorrNoise0=nullptr, Noisifier *ebCorrNoise1=nullptr, Noisifier *eeCorrNoise1=nullptr, Noisifier *ebCorrNoise2=nullptr, Noisifier *eeCorrNoise2=nullptr) | |
ctor More... | |
void | setFullScaleEnergy (double EBscale, double EEscale) |
void | setGainRatios (const EcalGainRatios *gainRatios) |
void | setIntercalibConstants (const EcalIntercalibConstantsMC *ical) |
void | setPedestals (const EcalPedestals *pedestals) |
can be fetched every event from the EventSetup More... | |
virtual | ~EcalCoder () |
dtor More... | |
Private Member Functions | |
void | encode (const EcalSamples &ecalSamples, EcalDataFrame &df, CLHEP::HepRandomEngine *) const |
produce the pulse-shape More... | |
void | findGains (const DetId &detId, double theGains[]) const |
void | findIntercalibConstant (const DetId &detId, double &icalconst) const |
void | findPedestal (const DetId &detId, int gainId, double &pedestal, double &width) const |
not yet implemented More... | |
double | fullScaleEnergy (const DetId &did) const |
limit on the energy scale due to the electronics range More... | |
Private Attributes | |
bool | m_addNoise |
const Noisifier * | m_ebCorrNoise [3] |
const Noisifier * | m_eeCorrNoise [3] |
const EcalGainRatios * | m_gainRatios |
const EcalIntercalibConstantsMC * | m_intercals |
double | m_maxEneEB |
double | m_maxEneEE |
const EcalPedestals * | m_peds |
bool | m_PreMix1 |
Definition at line 26 of file EcalCoder.h.
typedef CaloTSamples<float,10> EcalCoder::EcalSamples |
Definition at line 30 of file EcalCoder.h.
Definition at line 32 of file EcalCoder.h.
anonymous enum |
Enumerator | |
---|---|
NBITS | |
MAXADC | |
ADCGAINSWITCH | |
NGAINS |
Definition at line 34 of file EcalCoder.h.
EcalCoder::EcalCoder | ( | bool | addNoise, |
bool | PreMix1, | ||
EcalCoder::Noisifier * | ebCorrNoise0, | ||
EcalCoder::Noisifier * | eeCorrNoise0 = nullptr , |
||
EcalCoder::Noisifier * | ebCorrNoise1 = nullptr , |
||
EcalCoder::Noisifier * | eeCorrNoise1 = nullptr , |
||
EcalCoder::Noisifier * | ebCorrNoise2 = nullptr , |
||
EcalCoder::Noisifier * | eeCorrNoise2 = nullptr |
||
) |
|
virtual |
|
virtual |
from EcalSamples to EcalDataFrame
Definition at line 75 of file EcalCoder.cc.
References encode(), EcalDataFrame::setSize(), and CaloTSamplesBase< Ttype >::size().
Referenced by EcalElectronicsSim::analogToDigital().
|
private |
produce the pulse-shape
Definition at line 99 of file EcalCoder.cc.
References ecalMGPA::adc(), ADCGAINSWITCH, EcalBarrel, findGains(), findIntercalibConstant(), findPedestal(), fullScaleEnergy(), ecalMGPA::gainId(), EcalMGPASample::gainId(), mps_fire::i, CaloTSamplesBase< Ttype >::id(), CastorSimpleRecAlgoImpl::isSaturated(), LogDebug, m_addNoise, m_ebCorrNoise, m_eeCorrNoise, m_peds, m_PreMix1, MAXADC, NGAINS, CorrelatedNoisifier< M >::noisify(), EcalDataFrame::sample(), EcalDataFrame::setSample(), CaloTSamplesBase< Ttype >::size(), mathSSE::sqrt(), and funct::true.
Referenced by analogToDigital().
|
private |
Definition at line 365 of file EcalCoder.cc.
References EcalBarrel, EcalEndcap, EcalCondObjectContainer< T >::find(), EcalCondObjectContainer< T >::getMap(), m_gainRatios, DetId::rawId(), EcalCondObjectContainer< T >::size(), and DetId::subdetId().
Referenced by encode().
|
private |
Definition at line 398 of file EcalCoder.cc.
References EcalCondObjectContainer< T >::end(), EcalCondObjectContainer< T >::find(), EcalCondObjectContainer< T >::getMap(), m_intercals, and DetId::rawId().
Referenced by encode().
|
private |
not yet implemented
Definition at line 307 of file EcalCoder.cc.
References EcalBarrel, EcalEndcap, EcalCondObjectContainer< T >::find(), EcalCondObjectContainer< T >::getMap(), LogDebug, m_peds, DetId::rawId(), EcalCondObjectContainer< T >::size(), DetId::subdetId(), and ApeEstimator_cff::width.
Referenced by encode().
|
private |
limit on the energy scale due to the electronics range
Definition at line 69 of file EcalCoder.cc.
References EcalBarrel, m_maxEneEB, m_maxEneEE, and DetId::subdetId().
Referenced by encode().
void EcalCoder::setFullScaleEnergy | ( | double | EBscale, |
double | EEscale | ||
) |
void EcalCoder::setGainRatios | ( | const EcalGainRatios * | gainRatios | ) |
void EcalCoder::setIntercalibConstants | ( | const EcalIntercalibConstantsMC * | ical | ) |
void EcalCoder::setPedestals | ( | const EcalPedestals * | pedestals | ) |
can be fetched every event from the EventSetup
Definition at line 51 of file EcalCoder.cc.
References m_peds.
|
private |
Definition at line 105 of file EcalCoder.h.
Referenced by encode().
|
private |
Definition at line 108 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 109 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 98 of file EcalCoder.h.
Referenced by findGains(), and setGainRatios().
|
private |
Definition at line 100 of file EcalCoder.h.
Referenced by findIntercalibConstant(), and setIntercalibConstants().
|
private |
Definition at line 102 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 103 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 96 of file EcalCoder.h.
Referenced by encode(), findPedestal(), and setPedestals().
|
private |
Definition at line 106 of file EcalCoder.h.
Referenced by encode().