1 #ifndef CALIBCALORIMETRY_HCALTPGALGOS_HCALNOMINALTPGCODER_H
2 #define CALIBCALORIMETRY_HCALTPGALGOS_HCALNOMINALTPGCODER_H 1
48 const std::vector<bool>& featureBits,
95 typedef std::vector<LutElement>
Lut;
std::vector< uint32_t > FG_HF_thresholds_
double cosh_ieta_28_HE_high_depths_
double linearLSB_QIE11Overlap_
static const int QIE11_LUT_MSB1
static const int QIE11_LUT_BITMASK
const HcalTopology * topo_
static const int QIE11_LUT_MSB0
double cosh_ieta_28_HE_low_depths_
void setOverrideDBweightsAndFilterHE(bool overrideDBweightsAndFilterHE)
void init(const HcalTopology *top, const HcalTimeSlew *delay)
bool overrideDBweightsAndFilterHB_
static const int QIE8_LUT_BITMASK
std::vector< unsigned short > group0FGbits(const QIE11DataFrame &df) const
unsigned short LutElement
void update(const HcalDbService &conditions)
void updateXML(const char *filename)
void setLUTGenerationMode(bool gen)
static const int QIE10_LUT_MSB0
static const size_t UPGRADE_LUT_SIZE
float getLUTGain(HcalDetId id) const override
std::vector< Lut > inputLUT_
void lookupMSB(const HBHEDataFrame &df, std::vector< bool > &msb) const
int getLUTId(HcalSubdetector id, int ieta, int iphi, int depth) const
std::vector< unsigned short > getLinearizationLUT(HcalDetId id) const override
Get the full linearization LUT (128 elements). Default implementation just uses adc2Linear to get all...
void setApplyFixPCC(double applyFixPCC)
const HcalTimeSlew * delay_
void setContainPhaseHE(double containPhaseNSHE)
std::vector< LutElement > Lut
bool overrideDBweightsAndFilterHE_
float getLUTPedestal(HcalDetId id) const override
static const int QIE8_LUT_MSB
static const int QIE10_LUT_BITMASK
std::vector< double > cosh_ieta_
std::vector< float > ped_
double cosh_ieta(int ieta, int depth, HcalSubdetector subdet)
std::vector< float > gain_
void setContainPhaseHB(double containPhaseNSHB)
~HcaluLUTTPGCoder() override
void adc2Linear(const HBHEDataFrame &df, IntegerCaloSamples &ics) const override
void setAllLinear(bool linear, double lsb8, double lsb11, double lsb11overlap)
static const size_t INPUT_LUT_SIZE
bool getMSB(const HcalDetId &id, int adc) const
void compress(const IntegerCaloSamples &ics, const std::vector< bool > &featureBits, HcalTriggerPrimitiveDigi &tp) const override
void set1TSContainHB(bool contain1TSHB)
void setFGHFthresholds(const std::vector< uint32_t > &fgthresholds)
void set1TSContainHE(bool contain1TSHE)
void make_cosh_ieta_map(void)
std::unique_ptr< HcalPulseContainmentManager > pulseCorr_
void setOverrideDBweightsAndFilterHB(bool overrideDBweightsAndFilterHB)
static const int QIE10_LUT_MSB1
uint16_t *__restrict__ uint16_t const *__restrict__ adc