CMS 3D CMS Logo

HcalTriggerPrimitiveAlgo.h
Go to the documentation of this file.
1 #ifndef HcalSimAlgos_HcalTriggerPrimitiveAlgo_h
2 #define HcalSimAlgos_HcalTriggerPrimitiveAlgo_h
3 
6 
11 
13 
15 
18 
20 
21 #include <map>
22 #include <vector>
23 
24 class CaloGeometry;
25 class IntegerCaloSamples;
26 
28 public:
30  const std::vector<double>& w,
31  int latency,
32  uint32_t FG_threshold,
33  const std::vector<uint32_t>& FG_HF_thresholds,
34  uint32_t ZS_threshold,
35  int numberOfSamples,
42  uint32_t minSignalThreshold = 0,
43  uint32_t PMT_NoiseThreshold = 0);
45 
46  template <typename... Digis>
47  void run(const HcalTPGCoder* incoder,
48  const HcalTPGCompressor* outcoder,
51  const HcalTrigTowerGeometry* trigTowerGeometry,
52  float rctlsb,
54  const Digis&... digis);
55 
56  template <typename T, typename... Args>
57  void addDigis(const T& collection, const Args&... digis) {
59  addDigis(digis...);
60  };
61 
62  template <typename T>
63  void addDigis(const T& collection) {
64  for (const auto& digi : collection) {
65  addSignal(digi);
66  }
67  };
68 
69  template <typename D>
71  for (auto i = collection.begin(); i != collection.end(); ++i) {
72  D digi(*i);
73  addSignal(digi);
74  }
75  };
76 
78  void runFEFormatError(const FEDRawDataCollection* rawraw,
79  const HcalElectronicsMap* emap,
81  void setPeakFinderAlgorithm(int algo);
83  void setWeightQIE11(int aieta, double weight);
84  void setNCTScaleShift(int);
85  void setRCTScaleShift(int);
86 
88 
90 
91  void setUpgradeFlags(bool hb, bool he, bool hf);
92  void setFixSaturationFlag(bool fix_saturation);
93  void overrideParameters(const edm::ParameterSet& ps);
94 
95 private:
97  void addSignal(const HBHEDataFrame& frame);
98  void addSignal(const HFDataFrame& frame);
99  void addSignal(const QIE10DataFrame& frame);
100  void addSignal(const QIE11DataFrame& frame);
101  void addSignal(const IntegerCaloSamples& samples);
102  void addFG(const HcalTrigTowerDetId& id, std::vector<bool>& msb);
103  void addUpgradeFG(const HcalTrigTowerDetId& id, int depth, const std::vector<std::bitset<2>>& bits);
104  void addUpgradeTDCFG(const HcalTrigTowerDetId& id, const QIE11DataFrame& frame);
105 
106  bool passTDC(const QIE10DataFrame& digi, int ts) const;
107  bool validUpgradeFG(const HcalTrigTowerDetId& id, int depth) const;
108  bool validChannel(const QIE10DataFrame& digi, int ts) const;
109  bool needLegacyFG(const HcalTrigTowerDetId& id) const;
110  bool needUpgradeID(const HcalTrigTowerDetId& id, int depth) const;
111 
114  // 2017 and later: QIE11
116  std::vector<bool> sample_saturation,
118  const HcalFinegrainBit& fg_algo);
119  // Version 0: RCT
120  void analyzeHF(IntegerCaloSamples& samples, HcalTriggerPrimitiveDigi& result, const int hf_lumi_shift);
121  // Version 1: 1x1
122  void analyzeHF2016(const IntegerCaloSamples& SAMPLES,
124  const int HF_LUMI_SHIFT,
125  const HcalFeatureBit* HCALFEM);
126  // With dual anode readout
127  void analyzeHFQIE10(const IntegerCaloSamples& SAMPLES,
129  const int HF_LUMI_SHIFT,
130  const HcalFeatureBit* HCALFEM);
131 
132  // Member initialized by constructor
136  double theThreshold;
137  bool peakfind_;
138  std::vector<double> weights_;
139  std::array<std::array<double, 2>, 29> weightsQIE11_;
140  int latency_;
141  uint32_t FG_threshold_;
142  std::vector<uint32_t> FG_HF_thresholds_;
143  uint32_t ZS_threshold_;
156 
157  // Algo1: isPeak = TS[i-1] < TS[i] && TS[i] >= TS[i+1]
158  // Algo2: isPeak = TSS[i-1] < TSS[i] && TSS[i] >= TSS[i+1],
159  // TSS[i] = TS[i] + TS[i+1]
160  // Default: Algo2
162 
163  // Member not initialzed
164  //std::vector<HcalTrigTowerDetId> towerIds(const HcalDetId & id) const;
165 
167 
168  typedef std::map<HcalTrigTowerDetId, IntegerCaloSamples> SumMap;
170 
171  typedef std::map<HcalTrigTowerDetId, std::vector<bool>> SatMap;
173 
174  struct HFDetails {
179  };
180  typedef std::map<HcalTrigTowerDetId, std::map<uint32_t, HFDetails>> HFDetailMap;
182 
186  std::vector<bool> validity;
187  std::vector<std::bitset<2>> fgbits;
188  std::vector<bool> passTDC;
189  };
190  typedef std::map<HcalTrigTowerDetId, std::map<uint32_t, std::array<HFUpgradeDetails, 4>>> HFUpgradeDetailMap;
192 
193  typedef std::vector<IntegerCaloSamples> SumFGContainer;
194  typedef std::map<HcalTrigTowerDetId, SumFGContainer> TowerMapFGSum;
196 
197  // ==============================
198  // = HF Veto
199  // ==============================
200  // Sum = Long + Short;" // intermediate calculation.
201  // if ((Short < MinSignalThresholdET OR Long < MinSignalThresholdET)
202  // AND Sum > PMTNoiseThresholdET) VetoedSum = 0;
203  // else VetoedSum = Sum;
204  // ==============================
205  // Map from FG id to veto booleans
207  typedef std::map<uint32_t, std::vector<bool>> TowerMapVeto;
209 
210  typedef std::map<HcalTrigTowerDetId, std::vector<bool>> FGbitMap;
212 
213  typedef std::vector<HcalFinegrainBit::Tower> FGUpgradeContainer;
214  typedef std::map<HcalTrigTowerDetId, FGUpgradeContainer> FGUpgradeMap;
216 
217  typedef std::vector<HcalFinegrainBit::TowerTDC> FGUpgradeTDCContainer;
218  typedef std::map<HcalTrigTowerDetId, FGUpgradeTDCContainer> FGUpgradeTDCMap;
220 
221  bool upgrade_hb_ = false;
222  bool upgrade_he_ = false;
223  bool upgrade_hf_ = false;
224 
225  bool fix_saturation_ = false;
226 
228 
229  bool override_adc_hf_ = false;
231  bool override_tdc_hf_ = false;
232  unsigned long long override_tdc_hf_value_;
233 
234  // HE constants
235  static const int HBHE_OVERLAP_TOWER = 16;
236  static const int FIRST_DEPTH7_TOWER = 26;
237  static const int LAST_FINEGRAIN_DEPTH = 6;
238  static const int LAST_FINEGRAIN_TOWER = 28;
239 
240  // Fine-grain in HF ignores tower 29, and starts with 30
241  static const int FIRST_FINEGRAIN_TOWER = 30;
242 
246  // Consider CaloTPGTranscoderULUT.h for values
247  static const int QIE10_MAX_LINEARIZATION_ET = 0x7FF;
248  static const int QIE11_MAX_LINEARIZATION_ET = 0x7FF;
249 };
250 
251 template <typename... Digis>
253  const HcalTPGCompressor* outcoder,
254  const HcalDbService* conditions,
256  const HcalTrigTowerGeometry* trigTowerGeometry,
257  float rctlsb,
258  const HcalFeatureBit* LongvrsShortCut,
259  const Digis&... digis) {
260  theTrigTowerGeometry = trigTowerGeometry;
261 
262  incoder_ = dynamic_cast<const HcaluLUTTPGCoder*>(incoder);
263  outcoder_ = outcoder;
265 
266  theSumMap.clear();
267  theSatMap.clear();
268  theTowerMapFGSum.clear();
269  HF_Veto.clear();
270  fgMap_.clear();
271  fgUpgradeMap_.clear();
272  fgUpgradeTDCMap_.clear();
273  theHFDetailMap.clear();
274  theHFUpgradeDetailMap.clear();
275 
276  // Add all digi collections
277  addDigis(digis...);
278 
279  // Prepare the fine-grain calculation algorithm for HB/HE
280  int version = 0;
283  if (override_parameters_.exists("FGVersionHBHE"))
284  version = override_parameters_.getParameter<uint32_t>("FGVersionHBHE");
285  HcalFinegrainBit fg_algo(version);
286 
287  // VME produces additional bits on the front used by lumi but not the
288  // trigger, this shift corrects those out by right shifting over them.
289  for (auto& item : theSumMap) {
290  result.push_back(HcalTriggerPrimitiveDigi(item.first));
291  HcalTrigTowerDetId detId(item.second.id());
292  if (detId.ietaAbs() >= theTrigTowerGeometry->firstHFTower(detId.version())) {
293  if (detId.version() == 0) {
294  analyzeHF(item.second, result.back(), RCTScaleShift);
295  } else if (detId.version() == 1) {
296  if (upgrade_hf_)
298  else
300  } else {
301  // Things are going to go poorly
302  }
303  } else {
304  // Determine which energy reconstruction path to take based on the
305  // fine-grain availability:
306  // * QIE8 TP add entries into fgMap_
307  // * QIE11 TP add entries into fgUpgradeMap_
308  // (not for tower 16 unless HB is upgraded, too)
309  if (fgMap_.find(item.first) != fgMap_.end()) {
310  analyze(item.second, result.back());
311  } else if (fgUpgradeMap_.find(item.first) != fgUpgradeMap_.end()) {
312  SatMap::iterator item_sat = theSatMap.find(detId);
313  if (item_sat == theSatMap.end())
314  analyzeQIE11(item.second, std::vector<bool>(), result.back(), fg_algo);
315  else
316  analyzeQIE11(item.second, item_sat->second, result.back(), fg_algo);
317  }
318  }
319  }
320 
321  // Free up some memory
322  theSumMap.clear();
323  theSatMap.clear();
324  theTowerMapFGSum.clear();
325  HF_Veto.clear();
326  fgMap_.clear();
327  fgUpgradeMap_.clear();
328  fgUpgradeTDCMap_.clear();
329  theHFDetailMap.clear();
330  theHFUpgradeDetailMap.clear();
331 
332  return;
333 }
334 
335 #endif
HcalElectronicsMap.h
HcalTriggerPrimitiveAlgo::numberOfSamplesHF_
int numberOfSamplesHF_
Definition: HcalTriggerPrimitiveAlgo.h:149
hcaltpdigi_cfi.numberOfSamplesHF
numberOfSamplesHF
Definition: hcaltpdigi_cfi.py:57
HcalTriggerPrimitiveAlgo::addFG
void addFG(const HcalTrigTowerDetId &id, std::vector< bool > &msb)
Definition: HcalTriggerPrimitiveAlgo.cc:833
mps_fire.i
i
Definition: mps_fire.py:428
HcalTriggerPrimitiveAlgo::HFUpgradeDetails
Definition: HcalTriggerPrimitiveAlgo.h:183
HcalDataFrameContainer
Definition: HcalDigiCollections.h:35
HcalTriggerPrimitiveAlgo::weightsQIE11_
std::array< std::array< double, 2 >, 29 > weightsQIE11_
Definition: HcalTriggerPrimitiveAlgo.h:139
HcalTriggerPrimitiveAlgo::HFUpgradeDetails::fgbits
std::vector< std::bitset< 2 > > fgbits
Definition: HcalTriggerPrimitiveAlgo.h:187
config_102169_raw_cff.latency
latency
Definition: config_102169_raw_cff.py:29
HcalTriggerPrimitiveAlgo::overrideParameters
void overrideParameters(const edm::ParameterSet &ps)
Definition: HcalTriggerPrimitiveAlgo.cc:81
HcalTriggerPrimitiveAlgo::addDigis
void addDigis(const T &collection)
Definition: HcalTriggerPrimitiveAlgo.h:63
HcalTriggerPrimitiveAlgo::HFDetails::LongDigi
HFDataFrame LongDigi
Definition: HcalTriggerPrimitiveAlgo.h:178
HcalTriggerPrimitiveAlgo::override_adc_hf_value_
uint32_t override_adc_hf_value_
Definition: HcalTriggerPrimitiveAlgo.h:230
HcalTriggerPrimitiveAlgo::HF_Veto
TowerMapVeto HF_Veto
Definition: HcalTriggerPrimitiveAlgo.h:208
HcaluLUTTPGCoder::QIE8_LUT_BITMASK
static const int QIE8_LUT_BITMASK
Definition: HcaluLUTTPGCoder.h:86
HcalTriggerPrimitiveAlgo::run
void run(const HcalTPGCoder *incoder, const HcalTPGCompressor *outcoder, const HcalDbService *conditions, HcalTrigPrimDigiCollection &result, const HcalTrigTowerGeometry *trigTowerGeometry, float rctlsb, const HcalFeatureBit *LongvrsShortCut, const Digis &... digis)
Definition: HcalTriggerPrimitiveAlgo.h:252
FEDRawDataCollection
Definition: FEDRawDataCollection.h:18
HcaluLUTTPGCoder::QIE10_LUT_BITMASK
static const int QIE10_LUT_BITMASK
Definition: HcaluLUTTPGCoder.h:87
HcalTriggerPrimitiveAlgo::setUpgradeFlags
void setUpgradeFlags(bool hb, bool he, bool hf)
Definition: HcalTriggerPrimitiveAlgo.cc:73
HcalTriggerPrimitiveAlgo::upgrade_he_
bool upgrade_he_
Definition: HcalTriggerPrimitiveAlgo.h:222
HcalTriggerPrimitiveAlgo::setWeightsQIE11
void setWeightsQIE11(const edm::ParameterSet &weightsQIE11)
Definition: HcalTriggerPrimitiveAlgo.cc:928
HcalTriggerPrimitiveAlgo::FGUpgradeTDCContainer
std::vector< HcalFinegrainBit::TowerTDC > FGUpgradeTDCContainer
Definition: HcalTriggerPrimitiveAlgo.h:217
HcalTriggerPrimitiveAlgo::addDigis
void addDigis(const T &collection, const Args &... digis)
Definition: HcalTriggerPrimitiveAlgo.h:57
HcalTriggerPrimitiveAlgo::FIRST_FINEGRAIN_TOWER
static const int FIRST_FINEGRAIN_TOWER
Definition: HcalTriggerPrimitiveAlgo.h:241
HcalTriggerPrimitiveAlgo::addUpgradeFG
void addUpgradeFG(const HcalTrigTowerDetId &id, int depth, const std::vector< std::bitset< 2 >> &bits)
Definition: HcalTriggerPrimitiveAlgo.cc:872
HcalTriggerPrimitiveAlgo::ZS_threshold_
uint32_t ZS_threshold_
Definition: HcalTriggerPrimitiveAlgo.h:143
HcalTriggerPrimitiveAlgo::numberOfPresamples_
int numberOfPresamples_
Definition: HcalTriggerPrimitiveAlgo.h:146
HcalTriggerPrimitiveAlgo::conditions_
const HcalDbService * conditions_
Definition: HcalTriggerPrimitiveAlgo.h:135
edm::SortedCollection
Definition: SortedCollection.h:49
HcalTriggerPrimitiveAlgo::FGUpgradeContainer
std::vector< HcalFinegrainBit::Tower > FGUpgradeContainer
Definition: HcalTriggerPrimitiveAlgo.h:213
HcalTriggerPrimitiveAlgo::setNCTScaleShift
void setNCTScaleShift(int)
Definition: HcalTriggerPrimitiveAlgo.cc:950
HcalTriggerPrimitiveAlgo::TowerMapFGSum
std::map< HcalTrigTowerDetId, SumFGContainer > TowerMapFGSum
Definition: HcalTriggerPrimitiveAlgo.h:194
hcaltpdigi_cfi.numberOfPresamples
numberOfPresamples
Definition: hcaltpdigi_cfi.py:56
HcalTriggerPrimitiveAlgo::fgUpgradeTDCMap_
FGUpgradeTDCMap fgUpgradeTDCMap_
Definition: HcalTriggerPrimitiveAlgo.h:219
HcalTPGCompressor.h
HcalTriggerPrimitiveAlgo::TowerMapVeto
std::map< uint32_t, std::vector< bool > > TowerMapVeto
Definition: HcalTriggerPrimitiveAlgo.h:207
HcalTriggerPrimitiveAlgo::override_tdc_hf_value_
unsigned long long override_tdc_hf_value_
Definition: HcalTriggerPrimitiveAlgo.h:232
HcalTriggerPrimitiveAlgo::setNumFilterPresamplesHEQIE11
void setNumFilterPresamplesHEQIE11(int presamples)
Definition: HcalTriggerPrimitiveAlgo.h:89
HcalTriggerPrimitiveAlgo::QIE11_MAX_LINEARIZATION_ET
static const int QIE11_MAX_LINEARIZATION_ET
Definition: HcalTriggerPrimitiveAlgo.h:248
IntegerCaloSamples
Definition: IntegerCaloSamples.h:16
HcalTriggerPrimitiveAlgo::setWeightQIE11
void setWeightQIE11(int aieta, double weight)
Definition: HcalTriggerPrimitiveAlgo.cc:938
HcalTPGCompressor
Definition: HcalTPGCompressor.h:12
HcalTPGCoder
Definition: HcalTPGCoder.h:26
EgammaValidation_cff.samples
samples
Definition: EgammaValidation_cff.py:18
HcalFinegrainBit
Definition: HcalFinegrainBit.h:8
HcalTriggerPrimitiveAlgo::HFDetails::long_fiber
IntegerCaloSamples long_fiber
Definition: HcalTriggerPrimitiveAlgo.h:175
HcalTriggerPrimitiveAlgo::setRCTScaleShift
void setRCTScaleShift(int)
Definition: HcalTriggerPrimitiveAlgo.cc:952
HcalTriggerPrimitiveAlgo::theSatMap
SatMap theSatMap
Definition: HcalTriggerPrimitiveAlgo.h:172
HcalTriggerPrimitiveAlgo::HFDetails
Definition: HcalTriggerPrimitiveAlgo.h:174
cmsdt::algo
algo
Definition: constants.h:171
hcaltpdigi_cfi.weightsQIE11
weightsQIE11
hardware algo
Definition: hcaltpdigi_cfi.py:20
HcalTriggerPrimitiveAlgo::FGUpgradeTDCMap
std::map< HcalTrigTowerDetId, FGUpgradeTDCContainer > FGUpgradeTDCMap
Definition: HcalTriggerPrimitiveAlgo.h:218
HcaluLUTTPGCoder.h
HcalTriggerPrimitiveAlgo::QIE10_MAX_LINEARIZATION_ET
static const int QIE10_MAX_LINEARIZATION_ET
Definition: HcalTriggerPrimitiveAlgo.h:247
CaloGeometry
Definition: CaloGeometry.h:21
HcalTPParameters::getFGVersionHBHE
int getFGVersionHBHE() const
get FineGrain Algorithm Version for HBHE
Definition: HcalTPParameters.h:19
HcalFinegrainBit.h
HcalTriggerPrimitiveAlgo::LAST_FINEGRAIN_TOWER
static const int LAST_FINEGRAIN_TOWER
Definition: HcalTriggerPrimitiveAlgo.h:238
HcalTriggerPrimitiveAlgo::passTDC
bool passTDC(const QIE10DataFrame &digi, int ts) const
Definition: HcalTriggerPrimitiveAlgo.cc:623
photonIsolationHIProducer_cfi.hf
hf
Definition: photonIsolationHIProducer_cfi.py:9
HcalTriggerPrimitiveAlgo::addSignal
void addSignal(const HBHEDataFrame &frame)
adds the signal to the map
Definition: HcalTriggerPrimitiveAlgo.cc:94
HcalTriggerPrimitiveAlgo::HFUpgradeDetails::digi
QIE10DataFrame digi
Definition: HcalTriggerPrimitiveAlgo.h:185
HcalDigiCollections.h
w
const double w
Definition: UKUtility.cc:23
HcalTriggerPrimitiveAlgo::analyzeQIE11
void analyzeQIE11(IntegerCaloSamples &samples, std::vector< bool > sample_saturation, HcalTriggerPrimitiveDigi &result, const HcalFinegrainBit &fg_algo)
Definition: HcalTriggerPrimitiveAlgo.cc:401
HcalTriggerPrimitiveAlgo::numberOfFilterPresamplesHEQIE11_
int numberOfFilterPresamplesHEQIE11_
Definition: HcalTriggerPrimitiveAlgo.h:148
HcalTriggerPrimitiveAlgo::FG_threshold_
uint32_t FG_threshold_
Definition: HcalTriggerPrimitiveAlgo.h:141
HcalTriggerPrimitiveAlgo::QIE10_LINEARIZATION_ET
static const int QIE10_LINEARIZATION_ET
Definition: HcalTriggerPrimitiveAlgo.h:244
hcal_dqm_sourceclient-live_cfg.FG_threshold
FG_threshold
Definition: hcal_dqm_sourceclient-live_cfg.py:101
hcalTTPDigis_cfi.presamples
presamples
Definition: hcalTTPDigis_cfi.py:9
HcalTriggerPrimitiveAlgo::fgUpgradeMap_
FGUpgradeMap fgUpgradeMap_
Definition: HcalTriggerPrimitiveAlgo.h:215
HcalTriggerPrimitiveAlgo::runZS
void runZS(HcalTrigPrimDigiCollection &tp)
Definition: HcalTriggerPrimitiveAlgo.cc:761
HcalTriggerPrimitiveAlgo::addDigis
void addDigis(const HcalDataFrameContainer< D > &collection)
Definition: HcalTriggerPrimitiveAlgo.h:70
HcalFeatureHFEMBit.h
HcalTriggerPrimitiveAlgo::HFUpgradeDetails::passTDC
std::vector< bool > passTDC
Definition: HcalTriggerPrimitiveAlgo.h:188
HcalDbService::getHcalTPParameters
const HcalTPParameters * getHcalTPParameters() const
Definition: HcalDbService.cc:413
HcalTriggerPrimitiveAlgo::SatMap
std::map< HcalTrigTowerDetId, std::vector< bool > > SatMap
Definition: HcalTriggerPrimitiveAlgo.h:171
HcalTriggerPrimitiveAlgo::~HcalTriggerPrimitiveAlgo
~HcalTriggerPrimitiveAlgo()
Definition: HcalTriggerPrimitiveAlgo.cc:71
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
cmsswSequenceInfo.tp
tp
Definition: cmsswSequenceInfo.py:17
HcalTriggerPrimitiveAlgo::setFixSaturationFlag
void setFixSaturationFlag(bool fix_saturation)
Definition: HcalTriggerPrimitiveAlgo.cc:79
HcalTriggerPrimitiveAlgo::validUpgradeFG
bool validUpgradeFG(const HcalTrigTowerDetId &id, int depth) const
Definition: HcalTriggerPrimitiveAlgo.cc:843
HcalTriggerPrimitiveAlgo::override_parameters_
edm::ParameterSet override_parameters_
Definition: HcalTriggerPrimitiveAlgo.h:227
HcalTrigTowerDetId.h
HcalTriggerPrimitiveAlgo::numberOfFilterPresamplesHBQIE11_
int numberOfFilterPresamplesHBQIE11_
Definition: HcalTriggerPrimitiveAlgo.h:147
HcalTriggerPrimitiveAlgo::minSignalThreshold_
uint32_t minSignalThreshold_
Definition: HcalTriggerPrimitiveAlgo.h:152
HcalTriggerPrimitiveAlgo::HBHE_OVERLAP_TOWER
static const int HBHE_OVERLAP_TOWER
Definition: HcalTriggerPrimitiveAlgo.h:235
HBHEDataFrame
Definition: HBHEDataFrame.h:14
edm::ParameterSet::exists
bool exists(std::string const &parameterName) const
checks if a parameter exists
Definition: ParameterSet.cc:681
HcalTriggerPrimitiveAlgo::PMT_NoiseThreshold_
uint32_t PMT_NoiseThreshold_
Definition: HcalTriggerPrimitiveAlgo.h:153
HcalTriggerPrimitiveAlgo::fix_saturation_
bool fix_saturation_
Definition: HcalTriggerPrimitiveAlgo.h:225
HcalTriggerPrimitiveDigi
Definition: HcalTriggerPrimitiveDigi.h:13
HcalTriggerPrimitiveAlgo::addUpgradeTDCFG
void addUpgradeTDCFG(const HcalTrigTowerDetId &id, const QIE11DataFrame &frame)
Definition: HcalTriggerPrimitiveAlgo.cc:906
edm::ParameterSet
Definition: ParameterSet.h:47
HcalTriggerPrimitiveAlgo::theHFUpgradeDetailMap
HFUpgradeDetailMap theHFUpgradeDetailMap
Definition: HcalTriggerPrimitiveAlgo.h:191
HcalTriggerPrimitiveAlgo::theTrigTowerGeometry
const HcalTrigTowerGeometry * theTrigTowerGeometry
Definition: HcalTriggerPrimitiveAlgo.h:166
hcal_dqm_sourceclient-live_cfg.ZS_threshold
ZS_threshold
Definition: hcal_dqm_sourceclient-live_cfg.py:109
HcalTriggerPrimitiveAlgo::theSumMap
SumMap theSumMap
Definition: HcalTriggerPrimitiveAlgo.h:169
HcalTriggerPrimitiveAlgo::peakfind_
bool peakfind_
Definition: HcalTriggerPrimitiveAlgo.h:137
HcaluLUTTPGCoder
Definition: HcaluLUTTPGCoder.h:32
HcalTriggerPrimitiveAlgo::HcalTriggerPrimitiveAlgo
HcalTriggerPrimitiveAlgo(bool pf, const std::vector< double > &w, int latency, uint32_t FG_threshold, const std::vector< uint32_t > &FG_HF_thresholds, uint32_t ZS_threshold, int numberOfSamples, int numberOfPresamples, int numberOfFilterPresamplesHBQIE11, int numberOfFilterPresamplesHEQIE11, int numberOfSamplesHF, int numberOfPresamplesHF, bool useTDCInMinBiasBits, uint32_t minSignalThreshold=0, uint32_t PMT_NoiseThreshold=0)
Definition: HcalTriggerPrimitiveAlgo.cc:23
HcalTriggerPrimitiveAlgo::setNumFilterPresamplesHBQIE11
void setNumFilterPresamplesHBQIE11(int presamples)
Definition: HcalTriggerPrimitiveAlgo.h:87
hcaltpdigi_cff.FG_HF_thresholds
FG_HF_thresholds
Definition: hcaltpdigi_cff.py:26
HcalTriggerPrimitiveAlgo::analyzeHF
void analyzeHF(IntegerCaloSamples &samples, HcalTriggerPrimitiveDigi &result, const int hf_lumi_shift)
Definition: HcalTriggerPrimitiveAlgo.cc:508
HcalTriggerPrimitiveAlgo::override_adc_hf_
bool override_adc_hf_
Definition: HcalTriggerPrimitiveAlgo.h:229
HFDataFrame
Definition: HFDataFrame.h:14
HcalTrigTowerGeometry::firstHFTower
int firstHFTower(int version) const
Definition: HcalTrigTowerGeometry.h:18
hcaltpdigi_cfi.numberOfFilterPresamplesHBQIE11
numberOfFilterPresamplesHBQIE11
Definition: hcaltpdigi_cfi.py:59
HcalTriggerPrimitiveAlgo::analyzeHFQIE10
void analyzeHFQIE10(const IntegerCaloSamples &SAMPLES, HcalTriggerPrimitiveDigi &result, const int HF_LUMI_SHIFT, const HcalFeatureBit *HCALFEM)
Definition: HcalTriggerPrimitiveAlgo.cc:651
universalConfigTemplate.collection
collection
Definition: universalConfigTemplate.py:81
FEDRawDataCollection.h
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
HcalTriggerPrimitiveAlgo::needLegacyFG
bool needLegacyFG(const HcalTrigTowerDetId &id) const
Definition: HcalTriggerPrimitiveAlgo.cc:853
HcalTriggerPrimitiveAlgo::needUpgradeID
bool needUpgradeID(const HcalTrigTowerDetId &id, int depth) const
Definition: HcalTriggerPrimitiveAlgo.cc:862
HcalFeatureBit
Definition: HcalFeatureBit.h:8
HcalTriggerPrimitiveAlgo::FIRST_DEPTH7_TOWER
static const int FIRST_DEPTH7_TOWER
Definition: HcalTriggerPrimitiveAlgo.h:236
B2GTnPMonitor_cfi.item
item
Definition: B2GTnPMonitor_cfi.py:147
HcalTrigTowerGeometry.h
HcalTriggerPrimitiveAlgo::theHFDetailMap
HFDetailMap theHFDetailMap
Definition: HcalTriggerPrimitiveAlgo.h:181
HcalTriggerPrimitiveAlgo::fgMap_
FGbitMap fgMap_
Definition: HcalTriggerPrimitiveAlgo.h:211
hcaltpdigi_cfi.numberOfFilterPresamplesHEQIE11
numberOfFilterPresamplesHEQIE11
Definition: hcaltpdigi_cfi.py:60
HcalTrigTowerGeometry
Definition: HcalTrigTowerGeometry.h:10
HcalTriggerPrimitiveAlgo::HFUpgradeDetails::samples
IntegerCaloSamples samples
Definition: HcalTriggerPrimitiveAlgo.h:184
HcalTriggerPrimitiveAlgo::validChannel
bool validChannel(const QIE10DataFrame &digi, int ts) const
Definition: HcalTriggerPrimitiveAlgo.cc:639
HcalTriggerPrimitiveAlgo::NCTScaleShift
int NCTScaleShift
Definition: HcalTriggerPrimitiveAlgo.h:154
HcalTriggerPrimitiveAlgo::RCTScaleShift
int RCTScaleShift
Definition: HcalTriggerPrimitiveAlgo.h:155
hcalSimParameters_cfi.hb
hb
Definition: hcalSimParameters_cfi.py:60
HcalTriggerPrimitiveAlgo::theThreshold
double theThreshold
Definition: HcalTriggerPrimitiveAlgo.h:136
HcalElectronicsMap
Definition: HcalElectronicsMap.h:31
HcalTriggerPrimitiveAlgo::LAST_FINEGRAIN_DEPTH
static const int LAST_FINEGRAIN_DEPTH
Definition: HcalTriggerPrimitiveAlgo.h:237
HcalTriggerPrimitiveAlgo::numberOfPresamplesHF_
int numberOfPresamplesHF_
Definition: HcalTriggerPrimitiveAlgo.h:150
HcalTriggerPrimitiveAlgo::upgrade_hf_
bool upgrade_hf_
Definition: HcalTriggerPrimitiveAlgo.h:223
HcaluLUTTPGCoder::QIE11_LUT_BITMASK
static const int QIE11_LUT_BITMASK
Definition: HcaluLUTTPGCoder.h:88
funct::D
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:141
HcalDbService
Definition: HcalDbService.h:23
submitPVValidationJobs.conditions
list conditions
Definition: submitPVValidationJobs.py:674
HcalTriggerPrimitiveAlgo::peak_finder_algorithm_
int peak_finder_algorithm_
Definition: HcalTriggerPrimitiveAlgo.h:161
HcalTriggerPrimitiveAlgo::setPeakFinderAlgorithm
void setPeakFinderAlgorithm(int algo)
Definition: HcalTriggerPrimitiveAlgo.cc:944
QIE10DataFrame
Definition: QIE10DataFrame.h:11
hcalSimParameters_cfi.he
he
Definition: hcalSimParameters_cfi.py:79
packedPFCandidateRefMixer_cfi.pf
pf
Definition: packedPFCandidateRefMixer_cfi.py:4
HcalTriggerPrimitiveAlgo::HFDetailMap
std::map< HcalTrigTowerDetId, std::map< uint32_t, HFDetails > > HFDetailMap
Definition: HcalTriggerPrimitiveAlgo.h:180
T
long double T
Definition: Basic3DVectorLD.h:48
amptDefault_cfi.frame
frame
Definition: amptDefault_cfi.py:12
QIE11DataFrame
Definition: QIE11DataFrame.h:11
HcalTriggerPrimitiveAlgo::outcoder_
const HcalTPGCompressor * outcoder_
Definition: HcalTriggerPrimitiveAlgo.h:134
HcalTriggerPrimitiveAlgo::FGbitMap
std::map< HcalTrigTowerDetId, std::vector< bool > > FGbitMap
Definition: HcalTriggerPrimitiveAlgo.h:210
HcalTriggerPrimitiveAlgo::HFDetails::ShortDigi
HFDataFrame ShortDigi
Definition: HcalTriggerPrimitiveAlgo.h:177
HcalTriggerPrimitiveAlgo::ZS_threshold_I_
int ZS_threshold_I_
Definition: HcalTriggerPrimitiveAlgo.h:144
HcalTriggerPrimitiveAlgo::latency_
int latency_
Definition: HcalTriggerPrimitiveAlgo.h:140
HcalTriggerPrimitiveAlgo::FGUpgradeMap
std::map< HcalTrigTowerDetId, FGUpgradeContainer > FGUpgradeMap
Definition: HcalTriggerPrimitiveAlgo.h:214
HcalTriggerPrimitiveAlgo::HFDetails::short_fiber
IntegerCaloSamples short_fiber
Definition: HcalTriggerPrimitiveAlgo.h:176
HcalTriggerPrimitiveAlgo::override_tdc_hf_
bool override_tdc_hf_
Definition: HcalTriggerPrimitiveAlgo.h:231
HcalTriggerPrimitiveAlgo
Definition: HcalTriggerPrimitiveAlgo.h:27
hcaltpdigi_cfi.numberOfPresamplesHF
numberOfPresamplesHF
Definition: hcaltpdigi_cfi.py:58
or
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
HcalTriggerPrimitiveAlgo::runFEFormatError
void runFEFormatError(const FEDRawDataCollection *rawraw, const HcalElectronicsMap *emap, HcalTrigPrimDigiCollection &result)
Definition: HcalTriggerPrimitiveAlgo.cc:777
HcalTriggerPrimitiveAlgo::HFUpgradeDetails::validity
std::vector< bool > validity
Definition: HcalTriggerPrimitiveAlgo.h:186
hcaltpdigi_cfi.useTDCInMinBiasBits
useTDCInMinBiasBits
Definition: hcaltpdigi_cfi.py:61
HcalDbService.h
HcalTriggerPrimitiveAlgo::analyze
void analyze(IntegerCaloSamples &samples, HcalTriggerPrimitiveDigi &result)
adds the actual digis
Definition: HcalTriggerPrimitiveAlgo.cc:319
mps_fire.result
result
Definition: mps_fire.py:311
HcalTriggerPrimitiveAlgo::SumMap
std::map< HcalTrigTowerDetId, IntegerCaloSamples > SumMap
Definition: HcalTriggerPrimitiveAlgo.h:168
ParameterSet.h
HcalTriggerPrimitiveAlgo::theTowerMapFGSum
TowerMapFGSum theTowerMapFGSum
Definition: HcalTriggerPrimitiveAlgo.h:195
HcalTriggerPrimitiveAlgo::useTDCInMinBiasBits_
bool useTDCInMinBiasBits_
Definition: HcalTriggerPrimitiveAlgo.h:151
HcalTriggerPrimitiveAlgo::upgrade_hb_
bool upgrade_hb_
Definition: HcalTriggerPrimitiveAlgo.h:221
HcalTriggerPrimitiveAlgo::FG_HF_thresholds_
std::vector< uint32_t > FG_HF_thresholds_
Definition: HcalTriggerPrimitiveAlgo.h:142
HcalTriggerPrimitiveAlgo::numberOfSamples_
int numberOfSamples_
Definition: HcalTriggerPrimitiveAlgo.h:145
BeamSplash_cfg.version
version
Definition: BeamSplash_cfg.py:45
HcalTriggerPrimitiveAlgo::analyzeHF2016
void analyzeHF2016(const IntegerCaloSamples &SAMPLES, HcalTriggerPrimitiveDigi &result, const int HF_LUMI_SHIFT, const HcalFeatureBit *HCALFEM)
Definition: HcalTriggerPrimitiveAlgo.cc:562
HcalTriggerPrimitiveAlgo::SumFGContainer
std::vector< IntegerCaloSamples > SumFGContainer
Definition: HcalTriggerPrimitiveAlgo.h:193
numberOfSamples
Definition: TotemSampicFrame.h:53
weight
Definition: weight.py:1
HcalTriggerPrimitiveAlgo::QIE11_LINEARIZATION_ET
static const int QIE11_LINEARIZATION_ET
Definition: HcalTriggerPrimitiveAlgo.h:245
HcalTriggerPrimitiveAlgo::LongvrsShortCut
HcalFeatureBit * LongvrsShortCut
Definition: HcalTriggerPrimitiveAlgo.h:206
HcalTriggerPrimitiveAlgo::QIE8_LINEARIZATION_ET
static const int QIE8_LINEARIZATION_ET
Definition: HcalTriggerPrimitiveAlgo.h:243
HcalTriggerPrimitiveAlgo::HFUpgradeDetailMap
std::map< HcalTrigTowerDetId, std::map< uint32_t, std::array< HFUpgradeDetails, 4 > > > HFUpgradeDetailMap
Definition: HcalTriggerPrimitiveAlgo.h:190
HcalTriggerPrimitiveAlgo::weights_
std::vector< double > weights_
Definition: HcalTriggerPrimitiveAlgo.h:138
HcalTriggerPrimitiveAlgo::incoder_
const HcaluLUTTPGCoder * incoder_
Definition: HcalTriggerPrimitiveAlgo.h:133
HcalTrigTowerDetId
Definition: HcalTrigTowerDetId.h:14