#include <HcalQIEShape.h>
Public Member Functions | |
float | center (unsigned fAdc) const |
HcalQIEShape () | |
float | highEdge (unsigned fAdc) const |
unsigned | local (unsigned fAdc) const |
float | lowEdge (unsigned fAdc) const |
unsigned | range (unsigned fAdc) const |
bool | setLowEdges (unsigned int nVals, const float *fValue) |
~HcalQIEShape () | |
Private Member Functions | |
void | expand () |
bool | setLowEdge (float fValue, unsigned fAdc) |
Private Attributes | |
std::vector< float > | mValues |
unsigned int | nbins_ |
Definition at line 17 of file HcalQIEShape.h.
HcalQIEShape::HcalQIEShape | ( | ) |
Definition at line 11 of file HcalQIEShape.cc.
:nbins_(0) { }
HcalQIEShape::~HcalQIEShape | ( | ) |
Definition at line 16 of file HcalQIEShape.cc.
{}
float HcalQIEShape::center | ( | unsigned | fAdc | ) | const |
Definition at line 37 of file HcalQIEShape.cc.
References mValues, and nbins_.
Referenced by HcalQIECoder::charge().
void HcalQIEShape::expand | ( | ) | [private] |
Definition at line 18 of file HcalQIEShape.cc.
References i, getHLTprescales::index, mValues, nbins_, range(), and pileupReCalc_HLTpaths::scale.
Referenced by setLowEdges().
{ int scale = 1; for (unsigned range = 1; range < 4; range++) { int factor = nbins_ == 32 ? 5 : 8; // QIE8/QIE10 -> 5/8 scale *= factor; unsigned index = range * nbins_; mValues [index] = mValues [index - 2]; // link to previous range for (unsigned i = 1; i < nbins_; i++) { mValues [index + i] = mValues [index + i - 1] + scale * (mValues [i] - mValues [i - 1]); } } mValues [nbins_*4] = 2 * mValues [nbins_*4-1] - mValues [nbins_*4-2]; // extrapolate }
float HcalQIEShape::highEdge | ( | unsigned | fAdc | ) | const |
Definition at line 45 of file HcalQIEShape.cc.
References mValues, and nbins_.
Referenced by HcalQIECoder::adc().
unsigned HcalQIEShape::local | ( | unsigned | fAdc | ) | const [inline] |
float HcalQIEShape::lowEdge | ( | unsigned | fAdc | ) | const |
unsigned HcalQIEShape::range | ( | unsigned | fAdc | ) | const [inline] |
Definition at line 25 of file HcalQIEShape.h.
Referenced by HcalQIECoder::charge(), and expand().
{return (fAdc >> 5) & 0x3;}
bool HcalQIEShape::setLowEdge | ( | float | fValue, |
unsigned | fAdc | ||
) | [private] |
Definition at line 50 of file HcalQIEShape.cc.
References mValues, and nbins_.
Referenced by setLowEdges().
bool HcalQIEShape::setLowEdges | ( | unsigned int | nVals, |
const float * | fValue | ||
) |
Definition at line 56 of file HcalQIEShape.cc.
References ecalMGPA::adc(), expand(), mValues, pileupCalc::nbins, nbins_, query::result, and setLowEdge().
Referenced by HcalQIEData::setupShape().
std::vector<float> HcalQIEShape::mValues [private] |
Definition at line 35 of file HcalQIEShape.h.
Referenced by center(), expand(), highEdge(), lowEdge(), setLowEdge(), and setLowEdges().
unsigned int HcalQIEShape::nbins_ [private] |
Definition at line 36 of file HcalQIEShape.h.
Referenced by center(), expand(), highEdge(), local(), lowEdge(), setLowEdge(), and setLowEdges().