#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 27 of file EcalCoder.h.
typedef CaloTSamples<float, 10> EcalCoder::EcalSamples |
Definition at line 29 of file EcalCoder.h.
Definition at line 31 of file EcalCoder.h.
anonymous enum |
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 |
||
) |
ctor
Definition at line 12 of file EcalCoder.cc.
References cms::cuda::assert(), m_ebCorrNoise, and m_eeCorrNoise.
|
virtual |
|
virtual |
from EcalSamples to EcalDataFrame
Definition at line 53 of file EcalCoder.cc.
References encode(), EcalDataFrame::setSize(), and CaloTSamplesBase< Ttype >::size().
Referenced by EcalElectronicsSim::analogToDigital().
|
private |
produce the pulse-shape
Definition at line 73 of file EcalCoder.cc.
References ecalMGPA::adc(), ADCGAINSWITCH, cms::cuda::assert(), fileCollector::done, EcalBarrel, findGains(), findIntercalibConstant(), findPedestal(), fullScaleEnergy(), ecalMGPA::gainId(), EcalMGPASample::gainId(), mps_fire::i, CaloTSamplesBase< Ttype >::id(), CastorSimpleRecAlgoImpl::isSaturated(), dqmiolumiharvest::j, 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 SequenceTypes::wait().
Referenced by analogToDigital().
|
private |
Definition at line 296 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 324 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 243 of file EcalCoder.cc.
References EcalBarrel, EcalEndcap, EcalCondObjectContainer< T >::find(), ecalMGPA::gainId(), 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 49 of file EcalCoder.cc.
References EcalBarrel, m_maxEneEB, m_maxEneEE, and DetId::subdetId().
Referenced by encode().
void EcalCoder::setFullScaleEnergy | ( | double | EBscale, |
double | EEscale | ||
) |
Definition at line 38 of file EcalCoder.cc.
References m_maxEneEB, and m_maxEneEE.
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 43 of file EcalCoder.cc.
References m_peds.
|
private |
Definition at line 93 of file EcalCoder.h.
Referenced by encode().
|
private |
Definition at line 96 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 97 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 86 of file EcalCoder.h.
Referenced by findGains(), and setGainRatios().
|
private |
Definition at line 88 of file EcalCoder.h.
Referenced by findIntercalibConstant(), and setIntercalibConstants().
|
private |
Definition at line 90 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 91 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 84 of file EcalCoder.h.
Referenced by encode(), findPedestal(), and setPedestals().
|
private |
Definition at line 94 of file EcalCoder.h.
Referenced by encode().