Go to the documentation of this file. 1 #ifndef CALIBCALORIMETRY_HCALTPGALGOS_HCALNOMINALTPGCODER_H
2 #define CALIBCALORIMETRY_HCALTPGALGOS_HCALNOMINALTPGCODER_H 1
47 const std::vector<bool>& featureBits,
93 typedef std::vector<LutElement>
Lut;
98 static const int nFi_ = 72;
void update(const HcalDbService &conditions)
std::vector< float > ped_
void set1TSContainHE(bool contain1TSHE)
static const int QIE8_LUT_BITMASK
bool overrideDBweightsAndFilterHE_
double cosh_ieta(int ieta, int depth, HcalSubdetector subdet)
uint16_t *__restrict__ uint16_t const *__restrict__ adc
static const int QIE10_LUT_BITMASK
static const int QIE11_LUT_MSB1
void updateXML(const char *filename)
std::vector< LutElement > Lut
void compress(const IntegerCaloSamples &ics, const std::vector< bool > &featureBits, HcalTriggerPrimitiveDigi &tp) const override
static const size_t INPUT_LUT_SIZE
void setOverrideDBweightsAndFilterHB(bool overrideDBweightsAndFilterHB)
std::vector< uint32_t > FG_HF_thresholds_
static const size_t UPGRADE_LUT_SIZE
double cosh_ieta_28_HE_low_depths_
void setContainPhaseHE(double containPhaseNSHE)
overrideDBweightsAndFilterHB
void setLUTGenerationMode(bool gen)
std::vector< float > gain_
void setOverrideDBweightsAndFilterHE(bool overrideDBweightsAndFilterHE)
float getLUTPedestal(HcalDetId id) const override
double cosh_ieta_28_HE_high_depths_
overrideDBweightsAndFilterHE
float getLUTGain(HcalDetId id) const override
double linearLSB_QIE11Overlap_
void init(const HcalTopology *top, const HcalTimeSlew *delay)
unsigned short LutElement
void lookupMSB(const HBHEDataFrame &df, std::vector< bool > &msb) const
void set1TSContainHB(bool contain1TSHB)
const HcalTopology * topo_
static const int QIE11_LUT_BITMASK
bool getMSB(const HcalDetId &id, int adc) const
std::vector< double > cosh_ieta_
void setAllLinear(bool linear, double lsb8, double lsb11, double lsb11overlap)
bool overrideDBweightsAndFilterHB_
~HcaluLUTTPGCoder() override
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 setContainPhaseHB(double containPhaseNSHB)
static const int QIE10_LUT_MSB1
static const int QIE10_LUT_MSB0
void make_cosh_ieta_map(void)
std::vector< Lut > inputLUT_
def gen(fragment, howMuch)
Production test section ####.
int getLUTId(HcalSubdetector id, int ieta, int iphi, int depth) const
static const int QIE11_LUT_MSB0
static const int QIE8_LUT_MSB
const HcalTimeSlew * delay_
std::unique_ptr< HcalPulseContainmentManager > pulseCorr_
void adc2Linear(const HBHEDataFrame &df, IntegerCaloSamples &ics) const override
void setFGHFthresholds(const std::vector< uint32_t > &fgthresholds)