#include <EcalCoder.h>
Public Types | |
enum | { NBITS = 12, MAXADC = 4095, ADCGAINSWITCH = 4079, NGAINS = 3 } |
typedef CorrelatedNoisifier < EcalCorrMatrix > | Noisifier |
Public Member Functions | |
virtual void | analogToDigital (const CaloSamples &clf, EcalDataFrame &df) const |
from CaloSamples to EcalDataFrame More... | |
EcalCoder (bool addNoise, Noisifier *ebCorrNoise0, Noisifier *eeCorrNoise0=0, Noisifier *ebCorrNoise1=0, Noisifier *eeCorrNoise1=0, Noisifier *ebCorrNoise2=0, Noisifier *eeCorrNoise2=0) | |
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 CaloSamples &caloSamples, EcalDataFrame &df) 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 |
Definition at line 22 of file EcalCoder.h.
Definition at line 26 of file EcalCoder.h.
anonymous enum |
Enumerator | |
---|---|
NBITS | |
MAXADC | |
ADCGAINSWITCH | |
NGAINS |
Definition at line 28 of file EcalCoder.h.
EcalCoder::EcalCoder | ( | bool | addNoise, |
EcalCoder::Noisifier * | ebCorrNoise0, | ||
EcalCoder::Noisifier * | eeCorrNoise0 = 0 , |
||
EcalCoder::Noisifier * | ebCorrNoise1 = 0 , |
||
EcalCoder::Noisifier * | eeCorrNoise1 = 0 , |
||
EcalCoder::Noisifier * | ebCorrNoise2 = 0 , |
||
EcalCoder::Noisifier * | eeCorrNoise2 = 0 |
||
) |
|
virtual |
|
virtual |
from CaloSamples to EcalDataFrame
Definition at line 70 of file EcalCoder.cc.
References encode(), EcalDataFrame::setSize(), and CaloSamples::size().
Referenced by EcalElectronicsSim::analogToDigital().
|
private |
produce the pulse-shape
Definition at line 78 of file EcalCoder.cc.
References ecalMGPA::adc(), ADCGAINSWITCH, generateEDF::done, EcalBarrel, findGains(), findIntercalibConstant(), findPedestal(), fullScaleEnergy(), ecalMGPA::gainId(), EcalMGPASample::gainId(), i, CaloSamples::id(), j, LogDebug, m_addNoise, m_ebCorrNoise, m_eeCorrNoise, m_peds, MAXADC, NGAINS, CorrelatedNoisifier< M >::noisify(), EcalDataFrame::sample(), EcalDataFrame::setSample(), CaloSamples::size(), mathSSE::sqrt(), and funct::true.
Referenced by analogToDigital().
|
private |
Definition at line 305 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 338 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 247 of file EcalCoder.cc.
References EcalBarrel, EcalEndcap, EcalCondObjectContainer< T >::find(), EcalCondObjectContainer< T >::getMap(), LogDebug, m_peds, DetId::rawId(), EcalCondObjectContainer< T >::size(), DetId::subdetId(), and tablePrinter::width.
Referenced by encode().
|
private |
limit on the energy scale due to the electronics range
Definition at line 64 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 37 of file EcalCoder.cc.
References m_maxEneEB, and m_maxEneEE.
Referenced by EcalDigiProducer::checkCalibrations(), and EcalTBDigiProducer::checkCalibrations().
void EcalCoder::setGainRatios | ( | const EcalGainRatios * | gainRatios | ) |
Definition at line 52 of file EcalCoder.cc.
References m_gainRatios.
Referenced by EcalDigiProducer::checkCalibrations(), and EcalTBDigiProducer::checkCalibrations().
void EcalCoder::setIntercalibConstants | ( | const EcalIntercalibConstantsMC * | ical | ) |
Definition at line 58 of file EcalCoder.cc.
References m_intercals.
Referenced by EcalDigiProducer::checkCalibrations(), and EcalTBDigiProducer::checkCalibrations().
void EcalCoder::setPedestals | ( | const EcalPedestals * | pedestals | ) |
can be fetched every event from the EventSetup
Definition at line 46 of file EcalCoder.cc.
References m_peds.
Referenced by EcalDigiProducer::checkCalibrations(), and EcalTBDigiProducer::checkCalibrations().
|
private |
Definition at line 96 of file EcalCoder.h.
Referenced by encode().
|
private |
Definition at line 98 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 99 of file EcalCoder.h.
Referenced by EcalCoder(), and encode().
|
private |
Definition at line 89 of file EcalCoder.h.
Referenced by findGains(), and setGainRatios().
|
private |
Definition at line 91 of file EcalCoder.h.
Referenced by findIntercalibConstant(), and setIntercalibConstants().
|
private |
Definition at line 93 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 94 of file EcalCoder.h.
Referenced by fullScaleEnergy(), and setFullScaleEnergy().
|
private |
Definition at line 87 of file EcalCoder.h.
Referenced by encode(), findPedestal(), and setPedestals().