CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RecHitTask.cc
Go to the documentation of this file.
2 #include <math.h>
3 
5  DQTask(ps)
6 {
8  edm::InputTag("hbhereco"));
10  edm::InputTag("horeco"));
12  edm::InputTag("hfreco"));
13 
14  _tokHBHE = consumes<HBHERecHitCollection>(_tagHBHE);
15  _tokHO = consumes<HORecHitCollection>(_tagHO);
16  _tokHF = consumes<HFRecHitCollection>(_tagHF);
17 
18  _cutE_HBHE = ps.getUntrackedParameter<double>("cutE_HBHE", 5);
19  _cutE_HO = ps.getUntrackedParameter<double>("cutE_HO", 5);
20  _cutE_HF = ps.getUntrackedParameter<double>("cutE_HF", 5);
21  _thresh_unihf = ps.getUntrackedParameter<double>("thresh_unihf", 0.2);
22 
23  // order must be the same as in RecoFlag enum
24  _vflags.resize(nRecoFlag);
25  _vflags[fUni]=flag::Flag("UniSlotHF");
26  _vflags[fTCDS]=flag::Flag("TCDS");
27 }
28 
30  edm::Run const& r, edm::EventSetup const& es)
31 {
32  DQTask::bookHistograms(ib,r,es);
33 
34  // GET WHAT YOU NEED
36  es.get<HcalDbRecord>().get(dbs);
37  _emap = dbs->getHcalMapping();
38  std::vector<int> vFEDs = utilities::getFEDList(_emap);
39  std::vector<int> vFEDsVME = utilities::getFEDVMEList(_emap);
40  std::vector<int> vFEDsuTCA = utilities::getFEDuTCAList(_emap);
41  std::vector<uint32_t> vVME;
42  std::vector<uint32_t> vuTCA;
46  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
48  vVME);
50  vuTCA);
51 
52  // push the rawIds of each fed into the vector
53  for (std::vector<int>::const_iterator it=vFEDsVME.begin();
54  it!=vFEDsVME.end(); ++it)
55  _vhashFEDs.push_back(HcalElectronicsId(
57  for (std::vector<int>::const_iterator it=vFEDsuTCA.begin();
58  it!=vFEDsuTCA.end(); ++it)
59  _vhashFEDs.push_back(HcalElectronicsId(
61  FIBERCH_MIN, false).rawId());
62 
63  // INITIALIZE FIRST
64  // Energy
72 
73  // Timing
78  _cTimingvsEnergy_SubdetPM.initialize(_name, "TimingvsEnergy",
83  _cTimingCut_FEDVME.initialize(_name, "TimingCut",
93  _cTimingCutvsLS_FED.initialize(_name, "TimingCutvsLS",
99  new quantity::FEDQuantity(vFEDsVME),
104  new quantity::FEDQuantity(vFEDsuTCA),
111  _cTimingCut_depth.initialize(_name, "TimingCut",
116 
117  // Occupancy
118  _cOccupancy_depth.initialize(_name, "Occupancy",
123  _cOccupancy_FEDVME.initialize(_name, "Occupancy",
128  _cOccupancy_FEDuTCA.initialize(_name, "Occupancy",
135  new quantity::FEDQuantity(vFEDsVME),
140  new quantity::FEDQuantity(vFEDsuTCA),
143  _cOccupancyvsLS_Subdet.initialize(_name, "OccupancyvsLS",
147  _cOccupancyCut_FEDVME.initialize(_name, "OccupancyCut",
152  _cOccupancyCut_FEDuTCA.initialize(_name, "OccupancyCut",
159  new quantity::FEDQuantity(vFEDsVME),
164  new quantity::FEDQuantity(vFEDsuTCA),
167  _cOccupancyCut_depth.initialize(_name, "OccupancyCut",
172 
173  // INITIALIZE HISTOGRAMS to be used only in Online
174  if (_ptype==fOnline)
175  {
176  _cEnergyvsieta_Subdet.initialize(_name, "Energyvsieta",
180  _cEnergyvsiphi_SubdetPM.initialize(_name, "Energyvsiphi",
184  _cEnergyvsLS_SubdetPM.initialize(_name, "EnergyvsLS",
188  _cEnergyvsBX_SubdetPM.initialize(_name, "EnergyvsBX",
192  _cTimingCutvsieta_Subdet.initialize(_name, "TimingCutvsieta",
196  _cTimingCutvsiphi_SubdetPM.initialize(_name, "TimingCutvsiphi",
200  _cTimingCutvsBX_SubdetPM.initialize(_name, "TimingCutvsBX",
204  _cOccupancyvsiphi_SubdetPM.initialize(_name, "Occupancyvsiphi",
208  _cOccupancyvsieta_Subdet.initialize(_name, "Occupancyvsieta",
212  _cOccupancyCutvsiphi_SubdetPM.initialize(_name, "OccupancyCutvsiphi",
216  _cOccupancyCutvsieta_Subdet.initialize(_name, "OccupancyCutvsieta",
220  _cOccupancyCutvsBX_SubdetPM.initialize(_name, "OccupancyCutvsBX",
225  "OccupancyCutvsiphivsLS", hashfunctions::fSubdetPM,
229  _cOccupancyCutvsLS_Subdet.initialize(_name, "OccupancyCutvsLS",
233 
234  _cSummaryvsLS_FED.initialize(_name, "SummaryvsLS",
239  _cSummaryvsLS.initialize(_name, "SummaryvsLS",
241  new quantity::FEDQuantity(vFEDs),
243 
246  }
247 
248  // BOOK HISTOGRAMS
249  char cutstr[200];
250  sprintf(cutstr, "_EHBHE%dHO%dHF%d", int(_cutE_HBHE),
251  int(_cutE_HO), int(_cutE_HF));
252  char cutstr2[200];
253  sprintf(cutstr2, "_EHF%d", int(_cutE_HF));
254 
255  // Energy
258 
259  // Timing
269 
270  // Occupancy
282 
283  // BOOK HISTOGRAMS to be used only in Online
284  if (_ptype==fOnline)
285  {
302 
303  std::vector<uint32_t> vhashFEDHF;
304  vhashFEDHF.push_back(HcalElectronicsId(22, SLOT_uTCA_MIN,
305  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
306  vhashFEDHF.push_back(HcalElectronicsId(29, SLOT_uTCA_MIN,
307  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
308  vhashFEDHF.push_back(HcalElectronicsId(32, SLOT_uTCA_MIN,
309  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
310  HashFilter filter_FEDHF;
312  vhashFEDHF);
313 
315  _xUniHF.book(_emap, filter_FEDHF);
316  _xUni.book(_emap);
317  }
318 
319  // initialize hash map
321 }
322 
324 {
325  /*
326  switch(uf)
327  {
328  case hcaldqm::f1LS:
329  _cOccupancy_FEDVME.reset();
330  _cOccupancy_FEDuTCA.reset();
331  break;
332  case hcaldqm::f10LS:
333  _cOccupancyCut_ElectronicsVME.reset();
334  _cOccupancyCut_ElectronicsuTCA.reset();
335  _cOccupancy_ElectronicsVME.reset();
336  _cOccupancy_ElectronicsuTCA.reset();
337  _cTimingCut_ElectronicsVME.reset();
338  _cTimingCut_ElectronicsuTCA.reset();
339  break;
340  default:
341  break;
342  }
343  */
344 
345  DQTask::_resetMonitors(uf);
346 }
347 
348 /* virtual */ void RecHitTask::_process(edm::Event const& e,
349  edm::EventSetup const&)
350 {
354 
355  if (!(e.getByToken(_tokHBHE, chbhe)))
356  _logger.dqmthrow("Collection HBHERecHitCollection not available "
357  + _tagHBHE.label() + " " + _tagHBHE.instance());
358  if (!(e.getByToken(_tokHO, cho)))
359  _logger.dqmthrow("Collection HORecHitCollection not available "
360  + _tagHO.label() + " " + _tagHO.instance());
361  if (!(e.getByToken(_tokHF, chf)))
362  _logger.dqmthrow("Collection HFRecHitCollection not available "
363  + _tagHF.label() + " " + _tagHF.instance());
364 
365  // extract some info per event
366  int bx = e.bunchCrossing();
367 
368  double ehbm = 0; double ehbp = 0;
369  double ehem = 0; double ehep = 0;
370  int nChsHB = 0; int nChsHE = 0;
371  int nChsHBCut = 0; int nChsHECut = 0;
372  for (HBHERecHitCollection::const_iterator it=chbhe->begin();
373  it!=chbhe->end(); ++it)
374  {
375  double energy = it->energy();
376  double timing = it->time();
377  HcalDetId did = it->id();
379  _cEnergy_Subdet.fill(did, energy);
380  _cTimingvsEnergy_SubdetPM.fill(did, energy, timing);
381  _cOccupancy_depth.fill(did);
382  did.subdet()==HcalBarrel?did.ieta()>0?ehbp+=energy:ehbm+=energy:
383  did.ieta()>0?ehep+=energy:ehem+=energy;
384 
385  // ONLINE ONLY!
386  if (_ptype==fOnline)
387  {
390  }
391  // ^^^ONLINE ONLY!
392 
393  if (eid.isVMEid())
394  {
397  }
398  else
399  {
402  }
403 
404  if (energy>_cutE_HBHE)
405  {
406  // ONLINE ONLY!
407  if (_ptype==fOnline)
408  {
409  _cEnergyvsLS_SubdetPM.fill(did, _currentLS, energy);
410  _cEnergyvsBX_SubdetPM.fill(did, bx, energy);
411  _cEnergyvsieta_Subdet.fill(did, energy);
412  _cEnergyvsiphi_SubdetPM.fill(did, energy);
413  _cTimingCutvsieta_Subdet.fill(did, timing);
414  _cTimingCutvsiphi_SubdetPM.fill(did, timing);
415  _cTimingCutvsBX_SubdetPM.fill(did, bx, timing);
419  }
420  // ^^^ONLINE ONLY!
421  _cEnergy_depth.fill(did, energy);
422  _cTimingCut_SubdetPM.fill(did, timing);
423  _cTimingCut_HBHEPartition.fill(did, timing);
424  if (timing>=-12.5 && timing<=12.5)
425  {
426  // time constrains here are explicit!
427  _cTimingCutvsLS_FED.fill(eid, _currentLS, timing);
428  _cTimingCut_depth.fill(did, timing);
429  }
431  if (eid.isVMEid())
432  {
433  if (timing>=-12.5 && timing<=12.5)
434  {
435  // time constraints are explicit!
436  _cTimingCut_FEDVME.fill(eid, timing);
437  _cTimingCut_ElectronicsVME.fill(eid, timing);
438  }
441  }
442  else
443  {
444  if (timing>=-12.5 && timing<=12.5)
445  {
446  // time constraints are explicit!
447  _cTimingCut_FEDuTCA.fill(eid, timing);
448  _cTimingCut_ElectronicsuTCA.fill(eid, timing);
449  }
452  }
453  did.subdet()==HcalBarrel?nChsHBCut++:nChsHECut++;
454  }
455  did.subdet()==HcalBarrel?nChsHB++:nChsHE++;
456  }
458  nChsHB);
460  nChsHE);
461 
462  // ONLINE ONLY!
463  if (_ptype==fOnline)
464  {
466  bx, nChsHBCut);
468  bx, nChsHECut);
470  _currentLS, nChsHBCut);
472  _currentLS, nChsHECut);
473  }
474  // ^^^ONLINE ONLY!
475 
476  int nChsHO = 0; int nChsHOCut = 0;
477  double ehop = 0; double ehom = 0;
478  for (HORecHitCollection::const_iterator it=cho->begin();
479  it!=cho->end(); ++it)
480  {
481  double energy = it->energy();
482  double timing = it->time();
483  HcalDetId did = it->id();
485  _cEnergy_Subdet.fill(did, energy);
486  _cTimingvsEnergy_SubdetPM.fill(did, energy, timing);
487  _cOccupancy_depth.fill(did);
488  did.ieta()>0?ehop+=energy:ehom+=energy;
489 
490  // IMPORTANT: ONLINE ONLY!
491  if (_ptype==fOnline)
492  {
495  }
496  // ONLINE ONLY!
497 
498  if (eid.isVMEid())
499  {
502  }
503  else
504  {
507  }
508 
509  if (energy>_cutE_HO)
510  {
511  // ONLINE ONLY!
512  if (_ptype==fOnline)
513  {
514  _cEnergyvsLS_SubdetPM.fill(did, _currentLS, energy);
515  _cEnergyvsBX_SubdetPM.fill(did, bx, energy);
516  _cEnergyvsieta_Subdet.fill(did, energy);
517  _cEnergyvsiphi_SubdetPM.fill(did, energy);
518  _cTimingCutvsieta_Subdet.fill(did, timing);
519  _cTimingCutvsiphi_SubdetPM.fill(did, timing);
520  _cTimingCutvsBX_SubdetPM.fill(did, bx, timing);
524  }
525  // ^^^ONLINE ONLY!
526 
527  _cEnergy_depth.fill(did, energy);
528  _cTimingCut_SubdetPM.fill(did, timing);
529  _cTimingCutvsLS_FED.fill(eid, _currentLS, timing);
531  _cTimingCut_depth.fill(did, timing);
532  if (eid.isVMEid())
533  {
534  _cTimingCut_FEDVME.fill(eid, timing);
535  _cTimingCut_ElectronicsVME.fill(eid, timing);
538  }
539  else
540  {
541  _cTimingCut_FEDuTCA.fill(eid, timing);
542  _cTimingCut_ElectronicsuTCA.fill(eid, timing);
545  }
546  nChsHOCut++;
547  }
548  nChsHO++;
549  }
551  nChsHO);
552  // ONLINE ONLY!
553  if (_ptype==fOnline)
554  {
556  bx, nChsHOCut);
558  _currentLS, nChsHOCut);
559  }
560  // ^^^ONLINE ONLY!
561 
562  int nChsHF = 0; int nChsHFCut = 0;
563  double ehfp = 0; double ehfm = 0;
564  for (HFRecHitCollection::const_iterator it=chf->begin();
565  it!=chf->end(); ++it)
566  {
567  double energy = it->energy();
568  double timing = it->time();
569  HcalDetId did = it->id();
571  _cEnergy_Subdet.fill(did, energy);
572  _cTimingvsEnergy_SubdetPM.fill(did, energy, timing);
573  _cOccupancy_depth.fill(did);
574  did.ieta()>0?ehfp+=energy:ehfm+=energy;
575 
576  // IMPORTANT:
577  // only for Online Processing
578  //
579  if (_ptype==fOnline)
580  {
583  }
584  // ONLINE ONLY!
585 
586  if (eid.isVMEid())
587  {
590  }
591  else
592  {
595  }
596 
597  if (energy>_cutE_HF)
598  {
599  // ONLINE ONLY!
600  if (_ptype==fOnline)
601  {
602  _cEnergyvsLS_SubdetPM.fill(did, _currentLS, energy);
603  _cEnergyvsBX_SubdetPM.fill(did, bx, energy);
604  _cEnergyvsieta_Subdet.fill(did, energy);
605  _cEnergyvsiphi_SubdetPM.fill(did, energy);
606  _cTimingCutvsieta_Subdet.fill(did, timing);
607  _cTimingCutvsiphi_SubdetPM.fill(did, timing);
608  _cTimingCutvsBX_SubdetPM.fill(did, bx, timing);
612  _xUniHF.get(eid)++;
613  }
614  // ^^^ONLINE ONLY!
615  _cEnergy_depth.fill(did, energy);
616  _cTimingCut_SubdetPM.fill(did, timing);
617  _cTimingCutvsLS_FED.fill(eid, _currentLS, timing);
619  _cTimingCut_depth.fill(did, timing);
620  if (eid.isVMEid())
621  {
622  _cTimingCut_FEDVME.fill(eid, timing);
623  _cTimingCut_ElectronicsVME.fill(eid, timing);
626  }
627  else
628  {
629  _cTimingCut_FEDuTCA.fill(eid, timing);
630  _cTimingCut_ElectronicsuTCA.fill(eid, timing);
633  }
634  nChsHFCut++;
635  }
636  nChsHF++;
637  }
639  nChsHF);
640  // ONLINE ONLY!
641  if (_ptype==fOnline)
642  {
644  bx, nChsHFCut);
646  _currentLS, nChsHFCut);
647  }
648  // ^^^ONLINE ONLY!
649 }
650 
652  lb, edm::EventSetup const& es)
653 {
654  DQTask::beginLuminosityBlock(lb, es);
655 
656  /*
657  _cTimingCutvsLS_FED.extendAxisRange(_currentLS);
658  _cOccupancyvsLS_Subdet.extendAxisRange(_currentLS);
659 
660  // ONLINE ONLY
661  if (_ptype!=fOnline)
662  return;
663  _cEnergyvsLS_SubdetPM.extendAxisRange(_currentLS);
664  _cOccupancyCutvsLS_Subdet.extendAxisRange(_currentLS);
665  _cOccupancyCutvsiphivsLS_SubdetPM.extendAxisRange(_currentLS);
666 // _cSummaryvsLS_FED.extendAxisRange(_currentLS);
667 // _cSummaryvsLS.extendAxisRange(_currentLS);
668 // */
669 }
670 
672  lb, edm::EventSetup const& es)
673 {
674  if (_ptype!=fOnline)
675  return;
676 
677  //
678  // GENERATE STATUS ONLY FOR ONLINE
679  //
680 // for (std::vector<HcalGenericDetId>::const_iterator it=gids.begin();
681 // it!=gids.end(); ++it)
682 // {}
683 
684  for (uintCompactMap::const_iterator it=_xUniHF.begin();
685  it!=_xUniHF.end(); ++it)
686  {
687  uint32_t hash1 = it->first;
688  HcalElectronicsId eid1(hash1);
689  double x1 = it->second;
690 
691  for (uintCompactMap::const_iterator jt=_xUniHF.begin();
692  jt!=_xUniHF.end(); ++jt)
693  {
694  if (jt==it)
695  continue;
696  double x2 = jt->second;
697  if (x2==0)
698  continue;
699  if (x1/x2<_thresh_unihf)
700  _xUni.get(eid1)++;
701  }
702  }
703 
704  for (std::vector<uint32_t>::const_iterator it=_vhashFEDs.begin();
705  it!=_vhashFEDs.end(); ++it)
706  {
707  flag::Flag fSum("RECO");
709 
710  std::vector<uint32_t>::const_iterator cit=std::find(
711  _vcdaqEids.begin(), _vcdaqEids.end(), *it);
712  if (cit==_vcdaqEids.end())
713  {
714  // not @cDAQ
715  for (uint32_t iflag=0; iflag<_vflags.size(); iflag++)
716  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag),
717  int(flag::fNCDAQ));
719  continue;
720  }
721 
722  // FED is @cDAQ
723  if (utilities::isFEDHF(eid) && (_runkeyVal==0 || _runkeyVal==4))
724  {
725  if (_xUni.get(eid)>0)
726  _vflags[fUni]._state = flag::fBAD;
727  else
728  _vflags[fUni]._state = flag::fGOOD;
729  }
730 
731  int iflag=0;
732  for (std::vector<flag::Flag>::iterator ft=_vflags.begin();
733  ft!=_vflags.end(); ++ft)
734  {
735  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag),
736  int(ft->_state));
737  fSum+=(*ft);
738  iflag++;
739 
740  // reset after using
741  ft->reset();
742  }
744  }
745  _xUniHF.reset(); _xUni.reset();
746 
747  // in the end always do the DQTask::endLumi
748  DQTask::endLuminosityBlock(lb, es);
749 }
750 
752 
ContainerProf1D _cOccupancyvsLS_Subdet
Definition: RecHitTask.h:107
T getUntrackedParameter(std::string const &, T const &) const
ContainerProf1D _cTimingCutvsBX_SubdetPM
Definition: RecHitTask.h:99
ContainerProf1D _cTimingCutvsieta_Subdet
Definition: RecHitTask.h:97
std::vector< uint32_t > _vhashFEDs
Definition: RecHitTask.h:56
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *qy=new ValueQuantity(quantity::fN), int debug=0)
Definition: Container1D.cc:40
ContainerProf2D _cTimingCut_ElectronicsuTCA
Definition: RecHitTask.h:94
edm::EDGetTokenT< HBHERecHitCollection > _tokHBHE
Definition: RecHitTask.h:48
ContainerProf1D _cEnergyvsiphi_SubdetPM
Definition: RecHitTask.h:80
virtual void setBinContent(HcalDetId const &, int)
Definition: Container2D.cc:235
int const CRATE_VME_MIN
Definition: Constants.h:60
int ib
Definition: cuy.py:660
uint16_t fed2crate(int fed)
Definition: Utilities.cc:12
HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:49
double _cutE_HO
Definition: RecHitTask.h:52
Container2D _cOccupancy_ElectronicsVME
Definition: RecHitTask.h:105
ContainerProf1D _cOccupancyCutvsLS_Subdet
Definition: RecHitTask.h:116
edm::EDGetTokenT< HFRecHitCollection > _tokHF
Definition: RecHitTask.h:50
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:462
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
std::vector< HcalGenericDetId > _gids
Definition: RecHitTask.h:124
Container2D _cOccupancy_depth
Definition: RecHitTask.h:102
ContainerProf2D _cTimingCut_FEDVME
Definition: RecHitTask.h:91
virtual CompactMap::const_iterator begin()
Definition: ContainerXXX.h:69
UpdateFreq
Definition: DQTask.h:17
State _state
Definition: Flag.h:79
ContainerProf2D _cTimingCut_FEDuTCA
Definition: RecHitTask.h:92
Container1D _cOccupancyvsiphi_SubdetPM
Definition: RecHitTask.h:108
std::vector< HBHERecHit >::const_iterator const_iterator
Container2D _cOccupancyCutvsiphivsLS_SubdetPM
Definition: RecHitTask.h:121
int bunchCrossing() const
Definition: EventBase.h:65
RecHitTask(edm::ParameterSet const &)
Definition: RecHitTask.cc:4
ContainerProf2D _cTimingCut_ElectronicsVME
Definition: RecHitTask.h:93
int const SPIGOT_MIN
Definition: Constants.h:85
virtual void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
Definition: RecHitTask.cc:671
virtual void reset()
Definition: ContainerXXX.h:342
ContainerProf1D _cTimingCutvsLS_FED
Definition: RecHitTask.h:96
ContainerXXX< uint32_t > _xUniHF
Definition: RecHitTask.h:122
Container1D _cTimingCut_HBHEPartition
Definition: RecHitTask.h:90
Container2D _cOccupancy_FEDVME
Definition: RecHitTask.h:103
Container1D _cOccupancyvsieta_Subdet
Definition: RecHitTask.h:109
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
int const FIBER_VME_MIN
Definition: Constants.h:90
Container2D _cOccupancy_FEDuTCA
Definition: RecHitTask.h:104
ContainerProf1D _cEnergyvsieta_Subdet
Definition: RecHitTask.h:79
void bookHistograms(fwlite::EventContainer &eventCont)
int const FIBERCH_MIN
Definition: Constants.h:100
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
std::vector< flag::Flag > _vflags
Definition: RecHitTask.h:59
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
Definition: Utilities.cc:71
virtual CompactMap::const_iterator end()
Definition: ContainerXXX.h:71
virtual void fill(HcalDetId const &)
Definition: Container2D.cc:59
Container2D _cOccupancyCut_FEDVME
Definition: RecHitTask.h:112
Container1D _cTimingCut_SubdetPM
Definition: RecHitTask.h:89
double _cutE_HBHE
Definition: RecHitTask.h:52
ProcessingType _ptype
Definition: DQModule.h:59
virtual void fill(uint32_t)
Definition: Container1D.cc:82
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, int debug=0)
void reset()
Definition: Flag.h:76
ContainerSingle2D _cSummaryvsLS
Definition: RecHitTask.h:126
electronicsmap::ElectronicsMap _ehashmap
Definition: RecHitTask.h:69
Container2D _cOccupancyCut_depth
Definition: RecHitTask.h:117
virtual void setBinContent(int, int, int)
void dqmthrow(std::string const &msg) const
Definition: Logger.h:15
Container1D _cOccupancyCutvsiphi_SubdetPM
Definition: RecHitTask.h:118
int const FED_VME_MIN
Definition: Constants.h:47
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fEnergy), int debug=0)
Container2D _cOccupancyCut_FEDuTCA
Definition: RecHitTask.h:113
int ieta() const
get the cell ieta
Definition: HcalDetId.h:56
Container2D _cOccupancy_ElectronicsuTCA
Definition: RecHitTask.h:106
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fN), int debug=0)
Definition: Container2D.cc:32
int const FIBER_uTCA_MIN1
Definition: Constants.h:93
double _cutE_HF
Definition: RecHitTask.h:52
std::vector< HcalGenericDetId > allPrecisionId() const
Logger _logger
Definition: DQModule.h:70
ContainerXXX< uint32_t > _xUni
Definition: RecHitTask.h:122
ContainerProf2D _cEnergy_depth
Definition: RecHitTask.h:81
std::string _name
Definition: DQModule.h:57
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
double _thresh_unihf
Definition: RecHitTask.h:53
ContainerProf1D _cEnergyvsBX_SubdetPM
Definition: RecHitTask.h:83
int const CRATE_uTCA_MIN
Definition: Constants.h:65
HashFilter _filter_VME
Definition: RecHitTask.h:72
ContainerProf1D _cEnergyvsLS_SubdetPM
Definition: RecHitTask.h:82
bool isVMEid() const
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container2D.cc:895
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:93
edm::InputTag _tagHO
Definition: RecHitTask.h:46
virtual void initialize(std::string const &folder, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fN), int debug=0)
ContainerProf2D _cTimingCut_depth
Definition: RecHitTask.h:95
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container1D.cc:957
Container1D _cEnergy_Subdet
Definition: RecHitTask.h:78
Container1D _cOccupancyCutvsieta_Subdet
Definition: RecHitTask.h:119
const T & get() const
Definition: EventSetup.h:56
edm::InputTag _tagHF
Definition: RecHitTask.h:47
virtual void _process(edm::Event const &, edm::EventSetup const &)
Definition: RecHitTask.cc:348
ContainerProf1D _cOccupancyCutvsBX_SubdetPM
Definition: RecHitTask.h:120
virtual void _resetMonitors(UpdateFreq)
Definition: RecHitTask.cc:323
HashFilter _filter_uTCA
Definition: RecHitTask.h:73
HcalElectronicsMap const * _emap
Definition: RecHitTask.h:68
std::string const & label() const
Definition: InputTag.h:36
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:243
Container2D _cSummaryvsLS_FED
Definition: RecHitTask.h:125
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:47
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
Definition: Utilities.cc:97
std::string _subsystem
Definition: DQModule.h:64
virtual void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)
Definition: RecHitTask.cc:29
edm::EDGetTokenT< HORecHitCollection > _tokHO
Definition: RecHitTask.h:49
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:65
edm::InputTag _tagHBHE
Definition: RecHitTask.h:45
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:85
virtual void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
Definition: RecHitTask.cc:651
virtual void initialize(FilterType ftype, HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:26
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
ContainerProf1D _cTimingCutvsiphi_SubdetPM
Definition: RecHitTask.h:98
Container2D _cTimingvsEnergy_SubdetPM
Definition: RecHitTask.h:86
Readout chain identification for Hcal.
std::string const & instance() const
Definition: InputTag.h:37
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:146
int const SLOT_uTCA_MIN
Definition: Constants.h:72
Container2D _cOccupancyCut_ElectronicsVME
Definition: RecHitTask.h:114
Definition: Run.h:43
Container2D _cOccupancyCut_ElectronicsuTCA
Definition: RecHitTask.h:115