24 static const unsigned nEtaBits = 4;
25 static const uint8_t etaMask =
static_cast<uint8_t
>((1 << nEtaBits) - 1);
32 static const uint16_t ovrFlowOut = 0x3f;
33 uint16_t jetEt = lutAddress & maxEtMask;
35 if (jetEt == maxEtMask) {
39 bool tauVeto = ((lutAddress & tauBitMask) == 0);
48 os <<
"==================================================" << std::endl;
49 os <<
"===Level-1 Trigger: GCT Jet Et Calibration Lut===" << std::endl;
50 os <<
"==================================================" << std::endl;
51 os <<
"===Parameter settings for eta bin " << lut.
etaBin() <<
"===" << std::endl;
53 os <<
"\n===Lookup table contents===\n" << std::endl;
const L1GctJetFinderParams * getFunction() const
friend std::ostream & operator<<(std::ostream &os, const L1GctJetEtCalibrationLut &lut)
Overload << operator.
void setFunction(const L1GctJetFinderParams *const lutfn)
double linearLsb() const
get LSB of linear input scale
Base class for LookUp Tables.
#define JET_ET_CAL_LUT_ADD_BITS
void setOutputEtScale(const L1CaloEtScale *const scale)
uint16_t rank(const uint16_t linear) const
convert from linear Et scale to rank scale
const L1CaloEtScale * m_outputEtScale
double correctedEtGeV(const double et, const unsigned eta, const bool tauVeto) const
Eta takes a value from 0-10, corresponding to jet regions running from eta=0.0 to eta=5...
#define JET_ET_CAL_LUT_DAT_BITS
static const int NAddress
~L1GctJetEtCalibrationLut() override
uint16_t value(const uint16_t lutAddress) const override
static const unsigned JET_ENERGY_BITWIDTH
Input bitwidth of jet energy; must be 10 or more.
L1GctJetEtCalibrationLut()
const L1GctJetFinderParams * m_lutFunction
void setEtaBin(const unsigned eta)