CMS 3D CMS Logo

CaloParamsHelperO2O.h
Go to the documentation of this file.
1 #include <iostream>
2 
4 
10 
11 #ifndef CaloParamsHelperO2O_h
12 #define CaloParamsHelperO2O_h
13 
14 namespace l1t {
15 
17  public:
18  // DO NOT ADD ENTRIES ANYWHERE BUT DIRECTLY BEFORE "NUM_CALOPARAMNODES"
19  // DO NOT CHANGE NUMERICAL VALUES OF ANY ALREADY EXISTING FIELDS, YOU CAN ONLY EXTEND, AT THE END.
20  enum {
21  regionPUS = 0,
25  egShapeId = 4,
27  egPUS = 6,
30  tauPUS = 9,
32  jetPUS = 11,
35  hiQ2 = 14,
38  layer1ECal = 17,
39  layer1HCal = 18,
40  layer1HF = 19,
74  };
75 
78  if (pnode_.size() < NUM_CALOPARAMNODES) {
79  pnode_.resize(NUM_CALOPARAMNODES);
80  // at version 2, tauCompress was added, we can add a default version here if necessary...
81  }
82  };
84 
85  bool isValidForStage1() { return true; }
86  bool isValidForStage2() { return (version_ >= 2); }
87 
96 
97  // towers
98  double towerLsbH() const { return towerp_.lsbH_; }
99  double towerLsbE() const { return towerp_.lsbE_; }
100  double towerLsbSum() const { return towerp_.lsbSum_; }
101  int towerNBitsH() const { return towerp_.nBitsH_; }
102  int towerNBitsE() const { return towerp_.nBitsE_; }
103  int towerNBitsSum() const { return towerp_.nBitsSum_; }
104  int towerNBitsRatio() const { return towerp_.nBitsRatio_; }
105  int towerMaskE() const { return towerp_.maskE_; }
106  int towerMaskH() const { return towerp_.maskH_; }
107  int towerMaskSum() const { return towerp_.maskSum_; }
108  int towerMaskRatio() const { return towerp_.maskRatio_; }
109  bool doTowerEncoding() const { return towerp_.doEncoding_; }
110 
111  void setTowerLsbH(double lsb) { towerp_.lsbH_ = lsb; }
112  void setTowerLsbE(double lsb) { towerp_.lsbE_ = lsb; }
113  void setTowerLsbSum(double lsb) { towerp_.lsbSum_ = lsb; }
114  void setTowerNBitsH(int n) {
115  towerp_.nBitsH_ = n;
116  towerp_.maskH_ = std::pow(2, n) - 1;
117  }
118  void setTowerNBitsE(int n) {
119  towerp_.nBitsE_ = n;
120  towerp_.maskE_ = std::pow(2, n) - 1;
121  }
122  void setTowerNBitsSum(int n) {
123  towerp_.nBitsSum_ = n;
124  towerp_.maskSum_ = std::pow(2, n) - 1;
125  }
126  void setTowerNBitsRatio(int n) {
128  towerp_.maskRatio_ = std::pow(2, n) - 1;
129  }
130  void setTowerEncoding(bool doit) { towerp_.doEncoding_ = doit; }
131 
132  // regions
133  double regionLsb() const { return regionLsb_; }
134  std::string regionPUSType() const { return pnode_[regionPUS].type_; }
135  std::vector<double> regionPUSParams() { return pnode_[regionPUS].dparams_; }
136  l1t::LUT* regionPUSLUT() { return &pnode_[regionPUS].LUT_; }
137 
138  int regionPUSValue(int PUM0, int eta) {
139  int puSub = ceil(regionPUSParams()[18 * eta + PUM0] * 2);
140  return puSub;
141  }
142 
143  void setRegionLsb(double lsb) { regionLsb_ = lsb; }
145  void setRegionPUSParams(const std::vector<double>& params) { pnode_[regionPUS].dparams_ = params; }
146  void setRegionPUSLUT(const l1t::LUT& lut) { pnode_[regionPUS].LUT_ = lut; }
147 
148  int pileUpTowerThreshold() const { return pnode_[PUTowerThreshold].iparams_[0]; }
150  pnode_[PUTowerThreshold].iparams_.resize(1);
151  pnode_[PUTowerThreshold].iparams_[0] = thresh;
152  }
153 
154  // EG
155  int egEtaCut() const {
156  if (pnode_[egPUS].version_ == 1)
157  return pnode_[egPUS].iparams_[0];
158  else
159  return 0;
160  }
161  double egLsb() const { return egp_.lsb_; }
162  double egSeedThreshold() const { return egp_.seedThreshold_; }
163  double egNeighbourThreshold() const { return egp_.neighbourThreshold_; }
164  double egHcalThreshold() const { return egp_.hcalThreshold_; }
165  l1t::LUT* egTrimmingLUT() { return &pnode_[egTrimming].LUT_; }
166  double egMaxHcalEt() const { return egp_.maxHcalEt_; }
167  double egMaxPtHOverE() const { return egp_.maxPtHOverE_; }
170  l1t::LUT* egShapeIdLUT() { return &pnode_[egShapeId].LUT_; }
175  unsigned egBypassEGVetos() { return pnode_[egBypassEGVetosFlag].uparams_[0]; }
176  unsigned egBypassExtHOverE() { return pnode_[egBypassExtHoE].uparams_[0]; }
177  unsigned egBypassShape() const {
178  if (pnode_[egBypassShapeFlag].uparams_.empty())
179  return 0;
180  else
181  return pnode_[egBypassShapeFlag].uparams_[0];
182  }
183  unsigned egBypassECALFG() const {
184  if (pnode_[egBypassECALFGFlag].uparams_.empty())
185  return 0;
186  else
187  return pnode_[egBypassECALFGFlag].uparams_[0];
188  }
189  unsigned egBypassHoE() const {
190  if (pnode_[egBypassHoEFlag].uparams_.empty())
191  return 0;
192  else
193  return pnode_[egBypassHoEFlag].uparams_[0];
194  }
195 
196  int egHOverEcutBarrel() const { return pnode_[egHOverEBarrel].iparams_[0]; }
197  int egHOverEcutEndcap() const { return pnode_[egHOverEEndcap].iparams_[0]; }
198 
199  unsigned egIsoAreaNrTowersEta() const { return egp_.isoAreaNrTowersEta_; }
200  unsigned egIsoAreaNrTowersPhi() const { return egp_.isoAreaNrTowersPhi_; }
201  unsigned egIsoVetoNrTowersPhi() const { return egp_.isoVetoNrTowersPhi_; }
202  const std::string& egPUSType() const { return pnode_[egPUS].type_; }
203  const std::vector<double>& egPUSParams() const { return pnode_[egPUS].dparams_; }
204  double egPUSParam(int ipar) const { return pnode_[egPUS].dparams_.at(ipar); }
205 
206  std::string egIsolationType() const { return pnode_[egIsolation].type_; }
210  std::vector<double> egCalibrationParams() { return pnode_[egCalibration].dparams_; }
212 
213  void setEgEtaCut(int mask) {
214  pnode_[egPUS].iparams_.resize(1);
215  pnode_[egPUS].iparams_[0] = mask;
216  }
217  void setEgLsb(double lsb) { egp_.lsb_ = lsb; }
221  void setEgTrimmingLUT(const l1t::LUT& lut) { pnode_[egTrimming].LUT_ = lut; }
222  void setEgMaxHcalEt(double cut) { egp_.maxHcalEt_ = cut; }
224  void setEgMaxHOverELUT(const l1t::LUT& lut) { pnode_[egMaxHOverE].LUT_ = lut; }
225  void setEgCompressShapesLUT(const l1t::LUT& lut) { pnode_[egCompressShapes].LUT_ = lut; }
226  void setEgShapeIdLUT(const l1t::LUT& lut) { pnode_[egShapeId].LUT_ = lut; }
227  void setEgMinPtJetIsolation(int cutValue) { egp_.minPtJetIsolation_ = cutValue; }
228  void setEgMaxPtJetIsolation(int cutValue) { egp_.maxPtJetIsolation_ = cutValue; }
229  void setEgMinPtHOverEIsolation(int cutValue) { egp_.minPtHOverEIsolation_ = cutValue; }
230  void setEgMaxPtHOverEIsolation(int cutValue) { egp_.maxPtHOverEIsolation_ = cutValue; }
231  void setEgBypassEGVetos(unsigned flag) {
232  pnode_[egBypassEGVetosFlag].uparams_.resize(1);
233  pnode_[egBypassEGVetosFlag].uparams_[0] = flag;
234  }
235  void setEgBypassShape(unsigned flag) {
236  pnode_[egBypassShapeFlag].uparams_.resize(1);
237  pnode_[egBypassShapeFlag].uparams_[0] = flag;
238  }
239  void setEgBypassECALFG(unsigned flag) {
240  pnode_[egBypassECALFGFlag].uparams_.resize(1);
241  pnode_[egBypassECALFGFlag].uparams_[0] = flag;
242  }
243  void setEgBypassExtHOverE(unsigned flag) {
244  pnode_[egBypassExtHoE].uparams_.resize(1);
245  pnode_[egBypassExtHoE].uparams_[0] = flag;
246  }
248  pnode_[egHOverEBarrel].iparams_.resize(1);
249  pnode_[egHOverEBarrel].iparams_[0] = cut;
250  }
252  pnode_[egHOverEEndcap].iparams_.resize(1);
253  pnode_[egHOverEEndcap].iparams_[0] = cut;
254  }
255 
256  void setEgIsoAreaNrTowersEta(unsigned iEgIsoAreaNrTowersEta) { egp_.isoAreaNrTowersEta_ = iEgIsoAreaNrTowersEta; }
257  void setEgIsoAreaNrTowersPhi(unsigned iEgIsoAreaNrTowersPhi) { egp_.isoAreaNrTowersPhi_ = iEgIsoAreaNrTowersPhi; }
258  void setEgIsoVetoNrTowersPhi(unsigned iEgIsoVetoNrTowersPhi) { egp_.isoVetoNrTowersPhi_ = iEgIsoVetoNrTowersPhi; }
260  void setEgPUSParams(const std::vector<double>& params) { pnode_[egPUS].dparams_ = params; }
262  void setEgIsolationLUT(const l1t::LUT& lut) { pnode_[egIsolation].LUT_ = lut; }
263  void setEgIsolationLUT2(const l1t::LUT& lut) { pnode_[egIsolation2].LUT_ = lut; }
265  void setEgCalibrationParams(std::vector<double> params) { pnode_[egCalibration].dparams_ = params; }
266  void setEgCalibrationLUT(const l1t::LUT& lut) { pnode_[egCalibration].LUT_ = lut; }
267 
268  // - recently imported:
269  std::string egShapeIdType() const { return pnode_[egShapeId].type_; }
271  unsigned egShapeIdVersion() const { return pnode_[egShapeId].version_; }
272  void setEgShapeIdVersion(unsigned version) { pnode_[egShapeId].version_ = version; }
273  unsigned egCalibrationVersion() const { return pnode_[egCalibration].version_; }
275 
276  // tau
277  int tauRegionMask() const {
278  if (pnode_[tauPUS].version_ == 1)
279  return pnode_[tauPUS].iparams_[0];
280  else
281  return 0;
282  }
283  double tauLsb() const { return taup_.lsb_; }
284  double tauSeedThreshold() const { return taup_.seedThreshold_; }
286  double tauMaxPtTauVeto() const { return taup_.maxPtTauVeto_; }
288  double tauMaxJetIsolationB() const { return taup_.maxJetIsolationB_; }
289  double tauMaxJetIsolationA() const { return taup_.maxJetIsolationA_; }
290  int isoTauEtaMin() const { return taup_.isoEtaMin_; }
291  int isoTauEtaMax() const { return taup_.isoEtaMax_; }
292  std::string tauPUSType() const { return pnode_[tauPUS].type_; }
293  const std::vector<double>& tauPUSParams() const { return pnode_[tauPUS].dparams_; }
294  double tauPUSParam(int ipar) const { return pnode_[tauPUS].dparams_.at(ipar); }
295 
299 
301  std::vector<double> tauCalibrationParams() { return pnode_[tauCalibration].dparams_; }
304 
306 
307  unsigned tauIsoAreaNrTowersEta() const { return taup_.isoAreaNrTowersEta_; }
308  unsigned tauIsoAreaNrTowersPhi() const { return taup_.isoAreaNrTowersPhi_; }
309  unsigned tauIsoVetoNrTowersPhi() const { return taup_.isoVetoNrTowersPhi_; }
310 
311  void setTauRegionMask(int mask) {
312  pnode_[tauPUS].iparams_.resize(1);
313  pnode_[tauPUS].iparams_[0] = mask;
314  }
315  void setTauLsb(double lsb) { taup_.lsb_ = lsb; }
321  void setTauMaxJetIsolationA(double cutValue) { taup_.maxJetIsolationA_ = cutValue; }
325  void setTauIsolationLUT(const l1t::LUT& lut) { pnode_[tauIsolation].LUT_ = lut; }
326  void setTauIsolationLUT2(const l1t::LUT& lut) { pnode_[tauIsolation2].LUT_ = lut; }
328 
330  void setTauIsoAreaNrTowersEta(unsigned iTauIsoAreaNrTowersEta) {
331  taup_.isoAreaNrTowersEta_ = iTauIsoAreaNrTowersEta;
332  }
333  void setTauIsoAreaNrTowersPhi(unsigned iTauIsoAreaNrTowersPhi) {
334  taup_.isoAreaNrTowersPhi_ = iTauIsoAreaNrTowersPhi;
335  }
336  void setTauIsoVetoNrTowersPhi(unsigned iTauIsoVetoNrTowersPhi) {
337  taup_.isoVetoNrTowersPhi_ = iTauIsoVetoNrTowersPhi;
338  }
339 
340  void setTauCalibrationParams(std::vector<double> params) { pnode_[tauCalibration].dparams_ = params; }
341  void setTauCalibrationLUT(const l1t::LUT& lut) { pnode_[tauCalibration].LUT_ = lut; }
342  void setTauCompressLUT(const l1t::LUT& lut) { pnode_[tauCompress].LUT_ = lut; }
343  void setTauPUSParams(const std::vector<double>& params) { pnode_[tauPUS].dparams_ = params; }
344 
345  void setTauEtToHFRingEtLUT(const l1t::LUT& lut) { pnode_[tauEtToHFRingEt].LUT_ = lut; }
346 
347  // jets
348  double jetLsb() const { return jetp_.lsb_; }
349  double jetSeedThreshold() const { return jetp_.seedThreshold_; }
351  int jetRegionMask() const {
352  if (pnode_[jetPUS].version_ == 1)
353  return pnode_[jetPUS].iparams_[0];
354  else
355  return 0;
356  }
357 
358  unsigned jetBypassPUS() const { return pnode_[jetBypassPUSFlag].uparams_[0]; }
359  unsigned jetPUSUsePhiRing() const {
360  if (pnode_[jetPUSUsePhiRingFlag].uparams_.empty())
361  return 0;
362  else
363  return pnode_[jetPUSUsePhiRingFlag].uparams_[0];
364  }
365 
366  std::string jetPUSType() const { return pnode_[jetPUS].type_; }
367  std::vector<double> jetPUSParams() { return pnode_[jetPUS].dparams_; }
369  std::vector<double> jetCalibrationParams() { return pnode_[jetCalibration].dparams_; }
370 
374 
375  void setJetLsb(double lsb) { jetp_.lsb_ = lsb; }
378  void setJetRegionMask(int mask) {
379  pnode_[jetPUS].iparams_.resize(1);
380  pnode_[jetPUS].iparams_[0] = mask;
381  }
383  void setJetPUSParams(std::vector<double> params) { pnode_[jetPUS].dparams_ = params; }
385  void setJetCalibrationParams(std::vector<double> params) { pnode_[jetCalibration].dparams_ = params; }
386  void setJetCalibrationLUT(const l1t::LUT& lut) { pnode_[jetCalibration].LUT_ = lut; }
387  void setJetCompressEtaLUT(const l1t::LUT& lut) { pnode_[jetCompressEta].LUT_ = lut; }
388  void setJetCompressPtLUT(const l1t::LUT& lut) { pnode_[jetCompressPt].LUT_ = lut; }
389  void setJetBypassPUS(unsigned flag) {
390  pnode_[jetBypassPUSFlag].uparams_.resize(1);
391  pnode_[jetBypassPUSFlag].uparams_[0] = flag;
392  }
393  void setJetPUSUsePhiRing(unsigned flag) {
394  pnode_[jetPUSUsePhiRingFlag].uparams_.resize(1);
395  pnode_[jetPUSUsePhiRingFlag].uparams_[0] = flag;
396  }
397  // sums
398 
399  double etSumLsb() const { return etSumLsb_; }
400  int etSumEtaMin(unsigned isum) const {
401  if (etSumEtaMin_.size() > isum)
402  return etSumEtaMin_.at(isum);
403  else
404  return 0;
405  }
406  int etSumEtaMax(unsigned isum) const {
407  if (etSumEtaMax_.size() > isum)
408  return etSumEtaMax_.at(isum);
409  else
410  return 0;
411  }
412  double etSumEtThreshold(unsigned isum) const {
413  if (etSumEtThreshold_.size() > isum)
414  return etSumEtThreshold_.at(isum);
415  else
416  return 0.;
417  }
418  unsigned etSumBypassMetPUS() const { return pnode_[etSumBypassMetPUSFlag].uparams_[0]; }
419  unsigned etSumBypassEttPUS() const { return pnode_[etSumBypassEttPUSFlag].uparams_[0]; }
420  unsigned etSumBypassEcalSumPUS() const { return pnode_[etSumBypassEcalSumPUSFlag].uparams_[0]; }
421  std::string etSumMetPUSType() const { return pnode_[etSumMetPUS].type_; }
422  std::string etSumEttPUSType() const { return pnode_[etSumEttPUS].type_; }
428 
438 
439  void setEtSumLsb(double lsb) { etSumLsb_ = lsb; }
440  void setEtSumEtaMin(unsigned isum, int eta) {
441  if (etSumEtaMin_.size() <= isum)
442  etSumEtaMin_.resize(isum + 1);
443  etSumEtaMin_.at(isum) = eta;
444  }
445  void setEtSumEtaMax(unsigned isum, int eta) {
446  if (etSumEtaMax_.size() <= isum)
447  etSumEtaMax_.resize(isum + 1);
448  etSumEtaMax_.at(isum) = eta;
449  }
450  void setEtSumEtThreshold(unsigned isum, double thresh) {
451  if (etSumEtThreshold_.size() <= isum)
452  etSumEtThreshold_.resize(isum + 1);
454  }
462  void setEtSumBypassMetPUS(unsigned flag) {
463  pnode_[etSumBypassMetPUSFlag].uparams_.resize(1);
464  pnode_[etSumBypassMetPUSFlag].uparams_[0] = flag;
465  }
466  void setEtSumBypassEttPUS(unsigned flag) {
467  pnode_[etSumBypassEttPUSFlag].uparams_.resize(1);
468  pnode_[etSumBypassEttPUSFlag].uparams_[0] = flag;
469  }
471  pnode_[etSumBypassEcalSumPUSFlag].uparams_.resize(1);
472  pnode_[etSumBypassEcalSumPUSFlag].uparams_[0] = flag;
473  }
474 
475  void setEtSumMetPUSLUT(const l1t::LUT& lut) { pnode_[etSumMetPUS].LUT_ = lut; }
476  void setEtSumEttPUSLUT(const l1t::LUT& lut) { pnode_[etSumEttPUS].LUT_ = lut; }
477  void setEtSumEcalSumPUSLUT(const l1t::LUT& lut) { pnode_[etSumEcalSumPUS].LUT_ = lut; }
478  void setMetCalibrationLUT(const l1t::LUT& lut) { pnode_[metCalibration].LUT_ = lut; }
479  void setMetHFCalibrationLUT(const l1t::LUT& lut) { pnode_[metHFCalibration].LUT_ = lut; }
482  void setMetPhiCalibrationLUT(const l1t::LUT& lut) { pnode_[metPhiCalibration].LUT_ = lut; }
484 
485  double etSumCentLower(unsigned centClass) const {
486  if (pnode_[etSumCentralityLower].dparams_.size() > centClass)
487  return pnode_[etSumCentralityLower].dparams_.at(centClass);
488  else
489  return 0.;
490  }
491 
492  double etSumCentUpper(unsigned centClass) const {
493  if (pnode_[etSumCentralityUpper].dparams_.size() > centClass)
494  return pnode_[etSumCentralityUpper].dparams_.at(centClass);
495  else
496  return 0.;
497  }
498 
499  void setEtSumCentLower(unsigned centClass, double loBound) {
500  if (pnode_[etSumCentralityLower].dparams_.size() <= centClass)
501  pnode_[etSumCentralityLower].dparams_.resize(centClass + 1);
502  pnode_[etSumCentralityLower].dparams_.at(centClass) = loBound;
503  }
504 
505  void setEtSumCentUpper(unsigned centClass, double upBound) {
506  if (pnode_[etSumCentralityUpper].dparams_.size() <= centClass)
507  pnode_[etSumCentralityUpper].dparams_.resize(centClass + 1);
508  pnode_[etSumCentralityUpper].dparams_.at(centClass) = upBound;
509  }
510 
511  // HI centrality
512  int centralityRegionMask() const {
513  if (pnode_[hiCentrality].version_ == 1)
514  return pnode_[hiCentrality].iparams_[0];
515  else
516  return 0;
517  }
518  std::vector<int> minimumBiasThresholds() const {
519  if (pnode_[hiCentrality].version_ == 1 && pnode_[hiCentrality].iparams_.size() == 5) {
520  std::vector<int> newVec;
521  newVec.reserve(4);
522  for (int i = 0; i < 4; i++) {
523  newVec.push_back(pnode_[hiCentrality].iparams_.at(i + 1));
524  }
525  return newVec;
526  } else {
527  std::vector<int> newVec;
528  return newVec;
529  }
530  }
533  pnode_[hiCentrality].iparams_.resize(5);
534  pnode_[hiCentrality].iparams_[0] = mask;
535  }
536  void setMinimumBiasThresholds(std::vector<int> thresholds) {
537  pnode_[hiCentrality].iparams_.resize(5);
538  for (int i = 0; i < 4; i++) {
539  pnode_[hiCentrality].iparams_[i + 1] = thresholds.at(i);
540  }
541  }
542  void setCentralityLUT(const l1t::LUT& lut) { pnode_[hiCentrality].LUT_ = lut; }
543 
544  // HI Q2
545  l1t::LUT* q2LUT() { return &pnode_[hiQ2].LUT_; }
546  void setQ2LUT(const l1t::LUT& lut) { pnode_[hiQ2].LUT_ = lut; }
547 
548  // HI parameters
549 
550  // Layer 1 LUT specification
551  std::vector<double> layer1ECalScaleFactors() { return pnode_[layer1ECal].dparams_; }
552  std::vector<double> layer1HCalScaleFactors() { return pnode_[layer1HCal].dparams_; }
553  std::vector<double> layer1HFScaleFactors() { return pnode_[layer1HF].dparams_; }
554  std::vector<unsigned> layer1HCalFBLUTUpper() { return pnode_[layer1HCalFBUpper].uparams_; }
555  std::vector<unsigned> layer1HCalFBLUTLower() { return pnode_[layer1HCalFBLower].uparams_; }
556  std::vector<int> layer1ECalScaleETBins() { return pnode_[layer1ECal].iparams_; }
557  std::vector<int> layer1HCalScaleETBins() { return pnode_[layer1HCal].iparams_; }
558  std::vector<int> layer1HFScaleETBins() { return pnode_[layer1HF].iparams_; }
559  std::vector<unsigned> layer1ECalScalePhiBins() { return pnode_[layer1ECal].uparams_; }
560  std::vector<unsigned> layer1HCalScalePhiBins() { return pnode_[layer1HCal].uparams_; }
561  std::vector<unsigned> layer1HFScalePhiBins() { return pnode_[layer1HF].uparams_; }
562  void setLayer1ECalScaleFactors(const std::vector<double> params) { pnode_[layer1ECal].dparams_ = params; }
563  void setLayer1HCalScaleFactors(const std::vector<double> params) { pnode_[layer1HCal].dparams_ = params; }
564  void setLayer1HFScaleFactors(const std::vector<double> params) { pnode_[layer1HF].dparams_ = params; }
565  void setLayer1HCalFBLUTUpper(const std::vector<unsigned> params) { pnode_[layer1HCalFBUpper].uparams_ = params; }
566  void setLayer1HCalFBLUTLower(const std::vector<unsigned> params) { pnode_[layer1HCalFBLower].uparams_ = params; }
567  void setLayer1ECalScaleETBins(const std::vector<int> params) { pnode_[layer1ECal].iparams_ = params; }
568  void setLayer1HCalScaleETBins(const std::vector<int> params) { pnode_[layer1HCal].iparams_ = params; }
569  void setLayer1HFScaleETBins(const std::vector<int> params) { pnode_[layer1HF].iparams_ = params; }
570  void setLayer1ECalScalePhiBins(const std::vector<unsigned> params) { pnode_[layer1ECal].uparams_ = params; }
571  void setLayer1HCalScalePhiBins(const std::vector<unsigned> params) { pnode_[layer1HCal].uparams_ = params; }
572  void setLayer1HFScalePhiBins(const std::vector<unsigned> params) { pnode_[layer1HF].uparams_ = params; }
573 
574  std::vector<unsigned> layer1SecondStageLUT() { return pnode_[layer1HOverE].uparams_; }
575  void setLayer1SecondStageLUT(const std::vector<unsigned>& lut) { pnode_[layer1HOverE].uparams_ = lut; }
576 
577  private:
582  };
583 
584 } // namespace l1t
585 
586 #endif
double jetNeighbourThreshold() const
constexpr int32_t ceil(float num)
void setEtSumEcalSumCalibrationType(std::string type)
void setTauCompressLUT(const l1t::LUT &lut)
void setJetCompressPtLUT(const l1t::LUT &lut)
void setEtSumMetPUSType(std::string type)
std::string regionPUSType() const
std::vector< unsigned > layer1SecondStageLUT()
std::string metHFCalibrationType() const
std::vector< unsigned > layer1HFScalePhiBins()
const std::vector< double > & tauPUSParams() const
double tauMinPtJetIsolationB() const
void setTauIsolationLUT(const l1t::LUT &lut)
std::string etSumEcalSumCalibrationType() const
void setLayer1HCalFBLUTUpper(const std::vector< unsigned > params)
void setMinimumBiasThresholds(std::vector< int > thresholds)
EgParams egp_
Definition: CaloParams.h:243
void setLayer1HFScalePhiBins(const std::vector< unsigned > params)
void setJetCalibrationParams(std::vector< double > params)
void setEgCompressShapesLUT(const l1t::LUT &lut)
void setEgPUSType(std::string type)
const std::string & egPUSType() const
void setHtMissScale(L1CaloEtScale HtMissScale)
std::vector< double > etSumEtThreshold_
Definition: CaloParams.h:259
void setEgCalibrationLUT(const l1t::LUT &lut)
void setEtSumEttCalibrationLUT(const l1t::LUT &lut)
std::vector< double > jetCalibrationParams()
void setEgShapeIdType(std::string type)
std::vector< int > layer1HFScaleETBins()
std::string egCalibrationType() const
void setCentralityLUT(const l1t::LUT &lut)
unsigned egIsoAreaNrTowersEta() const
void setRegionPUSParams(const std::vector< double > &params)
void setJetCalibrationLUT(const l1t::LUT &lut)
void setEgIsoAreaNrTowersEta(unsigned iEgIsoAreaNrTowersEta)
std::string jetPUSType() const
std::vector< Node > pnode_
Definition: CaloParams.h:236
void setEgNeighbourThreshold(double thresh)
void setEmScale(L1CaloEtScale emScale)
void setLayer1HCalScaleFactors(const std::vector< double > params)
void setLayer1ECalScaleFactors(const std::vector< double > params)
void setLayer1SecondStageLUT(const std::vector< unsigned > &lut)
void setEtSumEcalSumCalibrationLUT(const l1t::LUT &lut)
std::string egShapeIdType() const
constexpr int pow(int x)
Definition: conifer.h:24
void setEgIsoAreaNrTowersPhi(unsigned iEgIsoAreaNrTowersPhi)
TowerParams towerp_
Definition: CaloParams.h:238
delete x;
Definition: CaloConfig.h:22
double isum
unsigned egShapeIdVersion() const
int etSumEtaMin(unsigned isum) const
void setEgMinPtHOverEIsolation(int cutValue)
std::vector< double > tauCalibrationParams()
std::string tauCalibrationType() const
void setRegionPUSType(std::string type)
constexpr uint32_t mask
Definition: gpuClustering.h:26
void setEtSumEttPUSLUT(const l1t::LUT &lut)
void setTauCalibrationLUT(const l1t::LUT &lut)
double regionLsb_
Definition: CaloParams.h:241
int regionPUSValue(int PUM0, int eta)
void setJetNeighbourThreshold(double thresh)
void setTauIsoAreaNrTowersEta(unsigned iTauIsoAreaNrTowersEta)
void setEtSumEtaMin(unsigned isum, int eta)
void setTauMinPtJetIsolationB(double limit)
std::vector< int > minimumBiasThresholds() const
void setLayer1HCalScalePhiBins(const std::vector< unsigned > params)
int etSumEtaMax(unsigned isum) const
unsigned tauIsoAreaNrTowersEta() const
unsigned etSumBypassEttPUS() const
void setJetCalibrationType(std::string type)
std::string egIsolationType() const
void setJetSeedThreshold(double thresh)
double tauPUSParam(int ipar) const
unsigned egIsoVetoNrTowersPhi() const
std::vector< double > layer1HFScaleFactors()
void setTauMaxJetIsolationB(double limit)
void setEtSumBypassMetPUS(unsigned flag)
std::vector< int > etSumEtaMin_
Definition: CaloParams.h:253
void setLayer1HCalScaleETBins(const std::vector< int > params)
void setEtSumCentLower(unsigned centClass, double loBound)
void setEgIsoVetoNrTowersPhi(unsigned iEgIsoVetoNrTowersPhi)
void setJetScale(L1CaloEtScale jetScale)
void setTauCalibrationParams(std::vector< double > params)
void setEtSumEtaMax(unsigned isum, int eta)
std::vector< unsigned > layer1HCalScalePhiBins()
std::string etSumMetPUSType() const
const std::vector< double > & egPUSParams() const
void setEgIsolationLUT(const l1t::LUT &lut)
void setLayer1HFScaleETBins(const std::vector< int > params)
void setTauMaxJetIsolationA(double cutValue)
JetParams jetp_
Definition: CaloParams.h:245
void setEgTrimmingLUT(const l1t::LUT &lut)
void setTauSeedThreshold(double thresh)
std::string etSumEttCalibrationType() const
unsigned etSumBypassMetPUS() const
void setTauNeighbourThreshold(double thresh)
void setLayer1ECalScaleETBins(const std::vector< int > params)
void setEgPUSParams(const std::vector< double > &params)
std::vector< int > etSumEtaMax_
Definition: CaloParams.h:256
double etSumCentUpper(unsigned centClass) const
std::vector< double > layer1ECalScaleFactors()
void setJetPUSParams(std::vector< double > params)
std::string tauPUSType() const
void setHfRingScale(L1CaloEtScale HfRingScale)
unsigned egCalibrationVersion() const
void setEgIsolationType(std::string type)
void setEgMaxPtHOverEIsolation(int cutValue)
std::vector< double > layer1HCalScaleFactors()
void setEgShapeIdVersion(unsigned version)
std::vector< double > egCalibrationParams()
Definition: value.py:1
std::string jetCalibrationType() const
void setPileUpTowerThreshold(int thresh)
void setEgCalibrationType(std::string type)
void setMetHFPhiCalibrationLUT(const l1t::LUT &lut)
void setEgIsolationLUT2(const l1t::LUT &lut)
void setEgHcalThreshold(double thresh)
std::vector< unsigned > layer1HCalFBLUTUpper()
void setEtSumEcalSumPUSType(std::string type)
void setCentralityRegionMask(int mask)
unsigned egIsoAreaNrTowersPhi() const
void setLayer1ECalScalePhiBins(const std::vector< unsigned > params)
void setTauTrimmingShapeVetoLUT(const l1t::LUT &lut)
void setTauIsoVetoNrTowersPhi(unsigned iTauIsoVetoNrTowersPhi)
void setMetHFCalibrationLUT(const l1t::LUT &lut)
void setEgMaxHOverELUT(const l1t::LUT &lut)
void setMetPhiCalibrationLUT(const l1t::LUT &lut)
double etSumCentLower(unsigned centClass) const
std::vector< double > jetPUSParams()
std::vector< int > layer1ECalScaleETBins()
void setTauMaxPtTauVeto(double limit)
void setLayer1HCalFBLUTLower(const std::vector< unsigned > params)
void setTauPUSType(std::string type)
unsigned version_
Definition: CaloParams.h:234
Definition: LUT.h:29
TauParams taup_
Definition: CaloParams.h:244
void setMetHFCalibrationType(std::string type)
std::vector< unsigned > layer1ECalScalePhiBins()
double tauNeighbourThreshold() const
void setEgShapeIdLUT(const l1t::LUT &lut)
void setTauIsoAreaNrTowersPhi(unsigned iTauIsoAreaNrTowersPhi)
void setTauPUSParams(const std::vector< double > &params)
std::vector< double > regionPUSParams()
void setEtSumBypassEttPUS(unsigned flag)
double etSumLsb_
Definition: CaloParams.h:250
void setEtSumEttCalibrationType(std::string type)
std::string etSumEcalSumPUSType() const
void setEgCalibrationVersion(unsigned version)
void setEgBypassEGVetos(unsigned flag)
void setEtSumEcalSumPUSLUT(const l1t::LUT &lut)
unsigned tauIsoAreaNrTowersPhi() const
double etSumEtThreshold(unsigned isum) const
void setEtSumBypassEcalSumPUS(unsigned flag)
void setEgBypassShape(unsigned flag)
std::vector< unsigned > layer1HCalFBLUTLower()
void setEtSumCentUpper(unsigned centClass, double upBound)
void setEgSeedThreshold(double thresh)
void setEtSumEtThreshold(unsigned isum, double thresh)
void setEgBypassExtHOverE(unsigned flag)
unsigned tauIsoVetoNrTowersPhi() const
void setEtSumEttPUSType(std::string type)
void setJetPUSUsePhiRing(unsigned flag)
std::string metCalibrationType() const
void setEgMaxPtHOverE(double thresh)
void setEtSumMetPUSLUT(const l1t::LUT &lut)
void setTauIsolationLUT2(const l1t::LUT &lut)
void setTauEtToHFRingEtLUT(const l1t::LUT &lut)
std::string etSumEttPUSType() const
void setMetCalibrationType(std::string type)
void setEgMinPtJetIsolation(int cutValue)
std::vector< int > layer1HCalScaleETBins()
double egPUSParam(int ipar) const
void setJetBypassPUS(unsigned flag)
void setTauCalibrationType(std::string type)
void setRegionPUSLUT(const l1t::LUT &lut)
unsigned jetPUSUsePhiRing() const
void setEgCalibrationParams(std::vector< double > params)
unsigned etSumBypassEcalSumPUS() const
void setQ2LUT(const l1t::LUT &lut)
CaloParamsHelperO2O(const CaloParams &p)
void setJetPUSType(std::string type)
void setLayer1HFScaleFactors(const std::vector< double > params)
void setEgBypassECALFG(unsigned flag)
void setEgMaxPtJetIsolation(int cutValue)
void setJetCompressEtaLUT(const l1t::LUT &lut)
void setMetCalibrationLUT(const l1t::LUT &lut)