CMS 3D CMS Logo

DigiTask.cc
Go to the documentation of this file.
2 
3 using namespace hcaldqm;
4 using namespace hcaldqm::constants;
5 using namespace hcaldqm::filter;
6 
8  _tagQIE11 = ps.getUntrackedParameter<edm::InputTag>("tagHE", edm::InputTag("hcalDigis"));
9  _tagHO = ps.getUntrackedParameter<edm::InputTag>("tagHO", edm::InputTag("hcalDigis"));
10  _tagQIE10 = ps.getUntrackedParameter<edm::InputTag>("tagHF", edm::InputTag("hcalDigis"));
11 
12  _tokQIE11 = consumes<QIE11DigiCollection>(_tagQIE11);
13  _tokHO = consumes<HODigiCollection>(_tagHO);
14  _tokQIE10 = consumes<QIE10DigiCollection>(_tagQIE10);
15 
16  _cutSumQ_HBHE = ps.getUntrackedParameter<double>("cutSumQ_HBHE", 20);
17  _cutSumQ_HO = ps.getUntrackedParameter<double>("cutSumQ_HO", 20);
18  _cutSumQ_HF = ps.getUntrackedParameter<double>("cutSumQ_HF", 20);
19  _thresh_unihf = ps.getUntrackedParameter<double>("thresh_unihf", 0.2);
20  _thresh_led = ps.getUntrackedParameter<double>("thresh_led", 20);
21 
22  _vflags.resize(nDigiFlag);
23  _vflags[fUni] = hcaldqm::flag::Flag("UniSlotHF");
24  _vflags[fDigiSize] = hcaldqm::flag::Flag("DigiSize");
25  _vflags[fNChsHF] = hcaldqm::flag::Flag("NChsHF");
26  _vflags[fUnknownIds] = hcaldqm::flag::Flag("UnknownIds");
27  _vflags[fLED] = hcaldqm::flag::Flag("LEDMisfire");
28  _vflags[fCapId] = hcaldqm::flag::Flag("BadCapId");
29 
30  _qie10InConditions = ps.getUntrackedParameter<bool>("qie10InConditions", true);
31 
32  // Get reference digi sizes. Convert from unsigned to signed int, because <digi>::size()/samples() return ints for some reason.
33  std::vector<uint32_t> vrefDigiSize = ps.getUntrackedParameter<std::vector<uint32_t>>("refDigiSize");
34  _refDigiSize[HcalBarrel] = (int)vrefDigiSize[0];
35  _refDigiSize[HcalEndcap] = (int)vrefDigiSize[1];
36  _refDigiSize[HcalOuter] = (int)vrefDigiSize[2];
37  _refDigiSize[HcalForward] = (int)vrefDigiSize[3];
38 
39  // (capid - BX) % 4 to 1
40  _capidmbx[HcalBarrel] = 1;
41  _capidmbx[HcalEndcap] = 1;
42  _capidmbx[HcalOuter] = 1;
44 }
45 
46 /* virtual */ void DigiTask::bookHistograms(DQMStore::IBooker& ib, edm::Run const& r, edm::EventSetup const& es) {
48 
49  // GET WHAT YOU NEED
51  es.get<HcalDbRecord>().get(dbs);
52  _emap = dbs->getHcalMapping();
53 
54  // Book LED calibration channels from emap
55  std::vector<HcalElectronicsId> eids = _emap->allElectronicsId();
56  for (unsigned i = 0; i < eids.size(); i++) {
57  HcalElectronicsId eid = eids[i];
58  DetId id = _emap->lookup(eid);
59  if (HcalGenericDetId(id.rawId()).isHcalCalibDetId()) {
60  HcalCalibDetId calibId(id);
62  HcalSubdetector this_subdet = HcalEmpty;
63  switch (calibId.hcalSubdet()) {
64  case HcalBarrel:
65  this_subdet = HcalBarrel;
66  break;
67  case HcalEndcap:
68  this_subdet = HcalEndcap;
69  break;
70  case HcalOuter:
71  this_subdet = HcalOuter;
72  break;
73  case HcalForward:
74  this_subdet = HcalForward;
75  break;
76  default:
77  this_subdet = HcalEmpty;
78  break;
79  }
80  _ledCalibrationChannels[this_subdet].push_back(
81  HcalDetId(HcalOther, calibId.ieta(), calibId.iphi(), calibId.cboxChannel()));
82  }
83  }
84  }
85 
86  std::vector<uint32_t> vVME;
87  std::vector<uint32_t> vuTCA;
88  vVME.push_back(
90  vuTCA.push_back(HcalElectronicsId(CRATE_uTCA_MIN, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
93 
94  // Filters for QIE8 vs QIE10/11
95  std::vector<uint32_t> vhashQIE8;
98 
99  std::vector<uint32_t> vhashQIE1011;
100  vhashQIE1011.push_back(
102  vhashQIE1011.push_back(
104  vhashQIE1011.push_back(
107 
108  std::vector<uint32_t> vhash_TDC2bit;
109  vhash_TDC2bit.push_back(
111  vhash_TDC2bit.push_back(
114 
115  std::vector<uint32_t> vhash_TDC6bit;
116  vhash_TDC6bit.push_back(
118  vhash_TDC6bit.push_back(
120  vhash_TDC6bit.push_back(
122  vhash_TDC6bit.push_back(
125 
126  // INITIALIZE FIRST
128  "ADC",
132  0);
134  "fC",
138  0);
140  "SumQ",
144  0);
146  "SumQ",
151  0);
153  "SumQvsLS",
157  0);
158 
160  "ADC",
164  0);
166  "fC",
170  0);
172  "SumQ",
176  0);
178  "SumQvsLS",
182  0);
183 
185  "TimingCut",
189  0);
191  "TimingCut",
196  0);
198  "TimingvsLS",
202  0);
203 
204  // Occupancy w/o a cut
206  "OccupancyvsLS",
210  0);
212  "Occupancy",
217  0);
218 
219  // Occupancy w/ a cut
221  "OccupancyCutvsLS",
225  0);
227  "OccupancyCut",
232  0);
233 
234  // Digi size
236  "DigiSize",
240  0);
242  "ADCvsTS",
247  0);
249  "ADCvsTS",
254  0);
255 
257  "LETDCTimevsADC",
263  "LETDCvsADC",
269  "LETDCvsADC",
275  "LETDCvsTS",
281  "LETDCvsTS",
286 
288  "LETDCTime",
293  "LETDCTime",
298  0);
299 
301  "BadTDCValues",
306  "BadTDCvsBX",
311  "BadTDCvsLS",
316  "BadTDCCount",
321  0);
322 
323  if (_ptype == fOnline || _ptype == fLocal) {
325  "Occupancy",
330  0);
332  "Occupancy",
337  0);
338  }
339 
340  // INITIALIZE HISTOGRAMS that are only for Online
341  if (_ptype == fOnline) {
342  // Charge sharing
344  "Q2Q12vsLS",
348  0);
350  "SumQvsBX",
354  0);
356  "SumQvsBX",
360  0);
362  "DigiSizevsLS",
366  0);
368  "TimingCutvsiphi",
372  0);
374  "TimingCutvsieta",
378  0);
380  "Occupancyvsiphi",
384  0);
386  "Occupancyvsieta",
390  0);
392  "OccupancyCutvsiphi",
396  0);
398  "OccupancyCutvsieta",
402  0);
404  "OccupancyCutvsLS",
408  0);
410  "OccupancyCutvsBX",
414  0);
415  // _cOccupancyCutvsSlotvsLS_HFPM.initialize(_name,
416  // "OccupancyCutvsSlotvsLS", hcaldqm::hashfunctions::fSubdetPM,
417  // new hcaldqm::quantity::LumiSection(_maxLS),
418  // new hcaldqm::quantity::ElectronicsQuantity(hcaldqm::quantity::fSlotuTCA),
419  // new hcaldqm::quantity::ValueQuantity(hcaldqm::quantity::fN),0);
421  "OccupancyCutvsiphivsLS",
426  0);
427  }
429  "CapID",
433 
434  for (int i = 0; i < 4; ++i) {
436  "CapID",
440  0);
442  "CapID",
446  0);
447  }
448 
449  if (_ptype != fOffline) { // hidefed2crate
450  std::vector<int> vFEDs = hcaldqm::utilities::getFEDList(_emap);
451  std::vector<int> vFEDsVME = hcaldqm::utilities::getFEDVMEList(_emap);
452  std::vector<int> vFEDsuTCA = hcaldqm::utilities::getFEDuTCAList(_emap);
453 
454  if (_ptype == fOnline) {
456  "CapID",
460  0);
461 
463  "CapID",
467  0);
468  }
469 
470  std::vector<uint32_t> vFEDHF;
471  vFEDHF.push_back(HcalElectronicsId(22, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
472  vFEDHF.push_back(HcalElectronicsId(22, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
473  vFEDHF.push_back(HcalElectronicsId(29, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
474  vFEDHF.push_back(HcalElectronicsId(29, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
475  vFEDHF.push_back(HcalElectronicsId(32, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
476  vFEDHF.push_back(HcalElectronicsId(32, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
477 
478  // initialize filters
480 
481  // push the rawIds of each fed into the vector...
482  for (std::vector<int>::const_iterator it = vFEDsVME.begin(); it != vFEDsVME.end(); ++it)
483  _vhashFEDs.push_back(
485  for (std::vector<int>::const_iterator it = vFEDsuTCA.begin(); it != vFEDsuTCA.end(); ++it) {
486  std::pair<uint16_t, uint16_t> cspair = utilities::fed2crate(*it);
487  _vhashFEDs.push_back(HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
488  }
489 
491  "ShapeCut",
495  0);
496 
498  "TimingCut",
503  0);
505  "TimingCut",
510  0);
512  "TimingCut",
514  new hcaldqm::quantity::FEDQuantity(vFEDsVME),
517  0);
519  "TimingCut",
521  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
524  0);
526  "TimingvsLS",
530  0);
531 
533  "Occupancy",
538  0);
540  "Occupancy",
545  0);
547  "Occupancy",
549  new hcaldqm::quantity::FEDQuantity(vFEDsVME),
552  0);
554  "Occupancy",
556  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
559  0);
560 
562  "OccupancyCut",
567  0);
569  "OccupancyCut",
574  0);
576  "OccupancyCut",
578  new hcaldqm::quantity::FEDQuantity(vFEDsVME),
581  0);
583  "OccupancyCut",
585  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
588  0);
589 
591  "DigiSize",
595  0);
596 
597  if (_ptype == fOnline) {
599  "SummaryvsLS",
604  0);
606  "SummaryvsLS",
610  0);
611 
618  }
619  }
620  if (_ptype != fLocal) {
622  "LED_ADCvsBX",
627  0);
628 
630  "LED_CUCountvsLS",
634  0);
635  if (_ptype == fOnline) {
637  "LED_CUCountvsLSmod60",
641  0);
642  }
643  }
644 
645  // BOOK HISTOGRAMS
646  char cutstr[200];
647  sprintf(cutstr, "_SumQHBHE%dHO%dHF%d", int(_cutSumQ_HBHE), int(_cutSumQ_HO), int(_cutSumQ_HF));
648  char cutstr2[200];
649  sprintf(cutstr2, "_SumQHF%d", int(_cutSumQ_HF));
650 
662 
663  if (_ptype != fOffline) { // hidefed2crate
679  }
680  if (_ptype != fOffline) { // else book per-lumi later.
683  }
684 
688 
691 
699 
704 
706  if (_ptype == fOnline) {
707  _cCapid_BadvsFEDvsLS.book(ib, _subsystem, "BadvsLS");
708  _cCapid_BadvsFEDvsLSmod60.book(ib, _subsystem, "BadvsLSmod60");
709  }
710  for (int i = 0; i < 4; ++i) {
711  constexpr unsigned int kSize = 32;
712  char aux[kSize];
713  snprintf(aux, kSize, "%d_uTCA", i);
715 
716  snprintf(aux, kSize, "%d_VME", i);
718  }
719 
720  if (_ptype != fLocal) {
723  if (_ptype == fOnline) {
725  }
726  }
727 
728  // BOOK HISTOGRAMS that are only for Online
731 
732  if (_ptype == fOnline || _ptype == fLocal) {
735  }
736 
737  if (_ptype == fOnline) {
750  // _cOccupancyCutvsSlotvsLS_HFPM.book(ib, _emap, _filter_QIE1011, _subsystem);
754 
756  _xNChs.book(_emap);
758  _xUni.book(_emap);
761 
762  // just PER HF FED RECORD THE #CHANNELS
763  // ONLY WAY TO DO THAT AUTOMATICALLY AND W/O HARDCODING 1728
764  // or ANY OTHER VALUES LIKE 2592, 2192
765  std::vector<HcalGenericDetId> gids = _emap->allPrecisionId();
766  for (std::vector<HcalGenericDetId>::const_iterator it = gids.begin(); it != gids.end(); ++it) {
767  if (!it->isHcalDetId())
768  continue;
769  HcalDetId did(it->rawId());
770  if (_xQuality.exists(did)) {
771  HcalChannelStatus cs(it->rawId(), _xQuality.get(HcalDetId(*it)));
773  continue;
774  }
776  _xNChsNominal.get(eid)++; // he will know the nominal #channels per FED
777  }
778  }
779 
780  {
781  // MARK THESE HISTOGRAMS AS LUMI BASED FOR OFFLINE PROCESSING
782  auto scope = DQMStore::IBooker::UseLumiScope(ib);
783  if (_ptype == fOffline) {
784  //_cDigiSize_FED.setLumiFlag();
787  }
788 
789  // book Number of Events vs LS histogram
790  ib.setCurrentFolder(_subsystem + "/RunInfo");
791  meNumEvents1LS = ib.book1DD("NumberOfEvents", "NumberOfEvents", 1, 0, 1);
792 
793  // book the flag for unknown ids and the online guy as well
794  ib.setCurrentFolder(_subsystem + "/" + _name);
795  meUnknownIds1LS = ib.book1DD("UnknownIds", "UnknownIds", 1, 0, 1);
796  _unknownIdsPresent = false;
797  }
798 }
799 
801  DQTask::_resetMonitors(uf);
802 
803  switch (uf) {
804  case hcaldqm::f1LS:
805  _unknownIdsPresent = false;
806  break;
807  case hcaldqm::f50LS:
808  // ^^^ONLINE ONLY!
809  if (_ptype == fOnline)
811  // ^^^
812  break;
813  default:
814  break;
815  }
816 }
817 
818 /* virtual */ void DigiTask::_process(edm::Event const& e, edm::EventSetup const&) {
822 
823  if (!e.getByToken(_tokQIE11, c_QIE11))
824  _logger.dqmthrow("Collection QIE11DigiCollection isn't available" + _tagQIE11.label() + " " + _tagQIE11.instance());
825  if (!e.getByToken(_tokHO, c_ho))
826  _logger.dqmthrow("Collection HODigiCollection isn't available" + _tagHO.label() + " " + _tagHO.instance());
827  if (!e.getByToken(_tokQIE10, c_QIE10))
828  _logger.dqmthrow("Collection QIE10DigiCollection isn't available" + _tagQIE10.label() + " " + _tagQIE10.instance());
829 
830  // extract some info per event
831  int bx = e.bunchCrossing();
832  meNumEvents1LS->Fill(0.5); // just increment
833 
834  auto lumiCache = luminosityBlockCache(e.getLuminosityBlock().index());
835  _currentLS = lumiCache->currentLS;
836  _xQuality.reset();
837  _xQuality = lumiCache->xQuality;
838 
839  if (_ptype == fOnline &&
840  lumiCache->EvtCntLS == 1) { // Reset the bin for _cCapid_BadvsFEDvsLSmod60 at the beginning of each new LS
841  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
844  }
845  }
846 
847  // To fill histograms outside of the loop, you need to determine if there were
848  // any valid det ids first
849  uint32_t rawidValid = 0;
850  uint32_t rawidHBValid = 0;
851  uint32_t rawidHEValid = 0;
852 
853  // HB collection
854  int numChs = 0;
855  int numChsCut = 0;
856  int numChsHE = 0;
857  int numChsCutHE = 0;
858 
859  // HB+HE QIE11 collection
860  for (QIE11DigiCollection::const_iterator it = c_QIE11->begin(); it != c_QIE11->end(); ++it) {
861  const QIE11DataFrame digi = static_cast<const QIE11DataFrame>(*it);
862 
863  // Explicit check on the DetIds present in the Collection
864  HcalDetId const& did = digi.detid();
865  if ((did.subdet() != HcalBarrel) && (did.subdet() != HcalEndcap)) {
866  // LED monitoring from calibration channels
867  if (_ptype != fLocal) {
868  if (did.subdet() == HcalOther) {
869  HcalOtherDetId hodid(digi.detid());
870  if (hodid.subdet() == HcalCalibration) {
873  did) != _ledCalibrationChannels[HcalEndcap].end()) {
874  bool channelLEDSignalPresent = false;
875  for (int i = 0; i < digi.samples(); i++) {
876  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalEndcap, 16, 1, 1), bx, digi[i].adc());
877 
878  if (digi[i].adc() > _thresh_led) {
879  channelLEDSignalPresent = true;
880  }
881  }
882  if (channelLEDSignalPresent) {
884  if (_ptype == fOnline) {
886  }
887  }
888  } else if (std::find(_ledCalibrationChannels[HcalBarrel].begin(),
891  bool channelLEDSignalPresent = false;
892  for (int i = 0; i < digi.samples(); i++) {
893  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalBarrel, 1, 1, 1), bx, digi[i].adc());
894 
895  if (digi[i].adc() > _thresh_led) {
896  channelLEDSignalPresent = true;
897  }
898  }
899  if (channelLEDSignalPresent) {
901  if (_ptype == fOnline) {
903  }
904  }
905  }
906  }
907  }
908  }
909  continue;
910  }
911 
912  uint32_t rawid = _ehashmap.lookup(did);
913  if (rawid == 0) {
914  meUnknownIds1LS->Fill(1);
915  _unknownIdsPresent = true;
916  continue;
917  } else {
918  if (did.subdet() == HcalBarrel) {
919  rawidHBValid = did.rawId();
920  } else if (did.subdet() == HcalEndcap) {
921  rawidHEValid = did.rawId();
922  }
923  }
924  HcalElectronicsId const& eid(rawid);
925 
926  // filter out channels that are masked out
927  if (_xQuality.exists(did)) {
928  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
930  continue;
931  }
932 
933  // (capid - BX) % 4
934  if (_ptype == fOnline) {
935  short soi = -1;
936  for (int i = 0; i < digi.samples(); i++) {
937  if (digi[i].soi()) {
938  soi = i;
939  break;
940  }
941  }
942  short this_capidmbx = (digi[soi].capid() - bx) % 4;
943  if (this_capidmbx < 0) {
944  this_capidmbx += 4;
945  }
946  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
947  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
948  if (!good_capidmbx) {
949  _xBadCapid.get(eid)++;
952  }
953  if (eid.isVMEid()) {
954  _cCapidMinusBXmod4_CrateSlotVME[this_capidmbx].fill(eid);
955 
956  } else {
957  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
958  }
959  }
960 
961  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE11DataFrame>(_dbService, did, digi);
962  double sumQ = hcaldqm::utilities::sumQDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1);
963 
965  _cOccupancy_depth.fill(did);
966  if (_ptype == fOnline || _ptype == fLocal) {
969  }
970  if (_ptype == fOnline) {
972  digi.samples() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
975  }
976  _cDigiSize_Crate.fill(eid, digi.samples());
977  if (_ptype != fOffline) { // hidefed2crate
978  _cDigiSize_FED.fill(eid, digi.samples());
979  if (eid.isVMEid()) {
982  } else {
985  /*
986  if (!digi.validate(0, digi.size()))
987  {
988  _cCapIdRots_depth.fill(did);
989  _cCapIdRots_FEDuTCA.fill(eid, 1);
990  }*/
991  }
992  }
993  for (int i = 0; i < digi.samples(); i++) {
994  double q = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE11DataFrame>(_dbService, digi_fC, did, digi, i);
995  _cADC_SubdetPM_QIE1011.fill(did, digi[i].adc());
997 
998  if (did.subdet() == HcalBarrel) {
999  _cLETDCvsADC_2bit_SubdetPM.fill(did, digi[i].adc(), digi[i].tdc());
1000  _cLETDCvsTS_2bit_SubdetPM.fill(did, (int)i, digi[i].tdc());
1001 
1002  if (digi[i].tdc() < 2) {
1003  double time = i * 25. + (digi[i].tdc() * 12.5);
1005  _cLETDCTime_depth.fill(did, time);
1006  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
1007  }
1008  } else if (did.subdet() == HcalEndcap) {
1009  _cLETDCvsADC_6bit_SubdetPM.fill(did, digi[i].adc(), digi[i].tdc());
1010  _cLETDCvsTS_6bit_SubdetPM.fill(did, (int)i, digi[i].tdc());
1011  if (digi[i].tdc() < 50) {
1012  double time = i * 25. + (digi[i].tdc() / 2.);
1014  _cLETDCTime_depth.fill(did, time);
1015  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
1016  }
1017  // Bad TDC values: 50-61 should never happen in QIE10 or QIE11, but we saw some in 2017 data.
1018  if ((50 <= digi[i].tdc()) && (digi[i].tdc() <= 61)) {
1019  _cBadTDCValues_SubdetPM.fill(did, digi[i].tdc());
1023  }
1024  }
1025  if (_ptype != fOffline) { // hidefed2crate
1026  _cADCvsTS_SubdetPM_QIE1011.fill(did, i, digi[i].adc());
1027  if (sumQ > _cutSumQ_HBHE) {
1028  _cShapeCut_FED.fill(eid, i, q);
1029  }
1030  }
1031  }
1032 
1033  if (sumQ > _cutSumQ_HBHE) {
1034  //double timing = hcaldqm::utilities::aveTS_v10<QIE11DataFrame>(digi, 2.5, 0,digi.samples()-1);
1035  double timing =
1036  hcaldqm::utilities::aveTSDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1);
1041  if (_ptype != fOffline) { // hidefed2crate
1043  }
1044  _cSumQ_depth.fill(did, sumQ);
1046  if (_ptype == fOnline) {
1053  }
1054  if (_ptype != fOffline) { // hidefed2crate
1055  if (eid.isVMEid()) {
1060  } else {
1065  }
1066  }
1067  did.subdet() == HcalBarrel ? numChsCut++ : numChsCutHE++;
1068  }
1069  did.subdet() == HcalBarrel ? numChs++ : numChsHE++;
1070  }
1071 
1072  if (rawidHBValid != 0 && rawidHEValid != 0) {
1073  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidHBValid), _currentLS, numChs);
1074  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidHEValid), _currentLS, numChsHE);
1075  // ONLINE ONLY!
1076  if (_ptype == fOnline) {
1077  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidHBValid), _currentLS, numChsCut);
1078  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidHBValid), bx, numChsCut);
1079  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidHEValid), _currentLS, numChsCutHE);
1080  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidHEValid), bx, numChsCutHE);
1081  }
1082  // ^^^ONLINE ONLY!
1083  }
1084  numChs = 0;
1085  numChsCut = 0;
1086 
1087  // reset
1088  rawidValid = 0;
1089 
1090  // HO collection
1091  for (HODigiCollection::const_iterator it = c_ho->begin(); it != c_ho->end(); ++it) {
1092  const HODataFrame digi = (const HODataFrame)(*it);
1093  // Explicit check on the DetIds present in the Collection
1094  HcalDetId const& did = it->id();
1095  if (did.subdet() != HcalOuter) {
1096  // LED monitoring from calibration channels
1097  if (_ptype != fLocal) {
1098  if (did.subdet() == HcalOther) {
1099  HcalOtherDetId hodid(did);
1100  if (hodid.subdet() == HcalCalibration) {
1103  bool channelLEDSignalPresent = false;
1104  for (int i = 0; i < digi.size(); i++) {
1105  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalOuter, 1, 1, 4), bx, digi[i].adc());
1106 
1107  if (digi[i].adc() > _thresh_led) {
1108  channelLEDSignalPresent = true;
1109  }
1110  }
1111  if (channelLEDSignalPresent) {
1113  if (_ptype == fOnline) {
1115  }
1116  }
1117  }
1118  }
1119  }
1120  }
1121  continue;
1122  }
1123  uint32_t rawid = _ehashmap.lookup(did);
1124  if (rawid == 0) {
1125  meUnknownIds1LS->Fill(1);
1126  _unknownIdsPresent = true;
1127  continue;
1128  } else {
1129  rawidValid = did.rawId();
1130  }
1131  HcalElectronicsId const& eid(rawid);
1132 
1133  // filter out channels that are masked out
1134  if (_xQuality.exists(did)) {
1135  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
1137  continue;
1138  }
1139 
1140  if (_ptype == fOnline) {
1141  short this_capidmbx = (it->sample(it->presamples()).capid() - bx) % 4;
1142  if (this_capidmbx < 0) {
1143  this_capidmbx += 4;
1144  }
1145  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
1146  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
1147  if (!good_capidmbx) {
1148  _xBadCapid.get(eid)++;
1151  }
1152  if (eid.isVMEid()) {
1153  _cCapidMinusBXmod4_CrateSlotVME[this_capidmbx].fill(eid);
1154 
1155  } else {
1156  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
1157  }
1158  }
1159 
1160  //double sumQ = hcaldqm::utilities::sumQ<HODataFrame>(*it, 8.5, 0, it->size()-1);
1161  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<HODataFrame>(_dbService, did, *it);
1162  double sumQ = hcaldqm::utilities::sumQDB<HODataFrame>(_dbService, digi_fC, did, *it, 0, it->size() - 1);
1163 
1164  _cSumQ_SubdetPM.fill(did, sumQ);
1165  _cOccupancy_depth.fill(did);
1166  if (_ptype == fOnline) {
1167  _cDigiSizevsLS_FED.fill(eid, _currentLS, it->size());
1168  it->size() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
1171  }
1172  _cDigiSize_Crate.fill(eid, it->size());
1173  if (_ptype != fOffline) { // hidefed2crate
1174  _cDigiSize_FED.fill(eid, it->size());
1175  if (eid.isVMEid()) {
1178  /*
1179  if (!it->validate(0, it->size()))
1180  _cCapIdRots_FEDVME.fill(eid, 1);
1181  */
1182  } else {
1185  /*
1186  if (!it->validate(0, it->size()))
1187  _cCapIdRots_FEDuTCA.fill(eid, 1);*/
1188  }
1189  }
1190 
1191  for (int i = 0; i < it->size(); i++) {
1192  _cADC_SubdetPM.fill(did, it->sample(i).adc());
1193  _cfC_SubdetPM.fill(did, it->sample(i).nominal_fC());
1194  if (_ptype != fOffline) { // hidefed2crate
1195  _cADCvsTS_SubdetPM.fill(did, i, it->sample(i).adc());
1196  if (sumQ > _cutSumQ_HO)
1197  _cShapeCut_FED.fill(eid, i, it->sample(i).nominal_fC());
1198  }
1199  }
1200 
1201  if (sumQ > _cutSumQ_HO) {
1202  //double timing = hcaldqm::utilities::aveTS<HODataFrame>(*it, 8.5, 0,it->size()-1);
1203  double timing = hcaldqm::utilities::aveTSDB<HODataFrame>(_dbService, digi_fC, did, *it, 0, it->size() - 1);
1204  _cSumQ_depth.fill(did, sumQ);
1210  if (_ptype != fOffline) { // hidefed2crate
1212  }
1213  if (_ptype == fOnline) {
1220  }
1221  if (_ptype != fOffline) { // hidefed2crate
1222  if (eid.isVMEid()) {
1227  } else {
1232  }
1233  }
1234  numChsCut++;
1235  }
1236  numChs++;
1237  }
1238 
1239  if (rawidValid != 0) {
1240  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChs);
1241 
1242  if (_ptype == fOnline) {
1243  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChsCut);
1244  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidValid), bx, numChsCut);
1245  }
1246  }
1247  numChs = 0;
1248  numChsCut = 0;
1249 
1250  // reset
1251  rawidValid = 0;
1252 
1253  // HF collection
1254  if (_qie10InConditions) {
1255  for (QIE10DigiCollection::const_iterator it = c_QIE10->begin(); it != c_QIE10->end(); ++it) {
1256  const QIE10DataFrame digi = static_cast<const QIE10DataFrame>(*it);
1257 
1258  // Explicit check on the DetIds present in the Collection
1259  HcalDetId const& did = digi.detid();
1260  if (did.subdet() != HcalForward) {
1261  // LED monitoring from calibration channels
1262  if (_ptype != fLocal) {
1263  if (did.subdet() == HcalOther) {
1264  HcalOtherDetId hodid(digi.detid());
1265  if (hodid.subdet() == HcalCalibration) {
1268  did) != _ledCalibrationChannels[HcalForward].end()) {
1269  bool channelLEDSignalPresent = false;
1270  for (int i = 0; i < digi.samples(); i++) {
1271  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalForward, 29, 1, 1), bx, digi[i].adc());
1272 
1273  if (digi[i].adc() > _thresh_led) {
1274  channelLEDSignalPresent = true;
1275  }
1276  }
1277  if (channelLEDSignalPresent) {
1279  if (_ptype == fOnline) {
1281  }
1282  }
1283  }
1284  }
1285  }
1286  }
1287  continue;
1288  }
1289 
1290  uint32_t rawid = _ehashmap.lookup(did);
1291  if (rawid == 0) {
1292  meUnknownIds1LS->Fill(1);
1293  _unknownIdsPresent = true;
1294  continue;
1295  } else {
1296  rawidValid = did.rawId();
1297  }
1298  HcalElectronicsId const& eid(rawid);
1299 
1300  // filter out channels that are masked out
1301  if (_xQuality.exists(did)) {
1302  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
1304  continue;
1305  }
1306 
1307  // (capid - BX) % 4
1308  if (_ptype == fOnline) {
1309  short soi = -1;
1310  for (int i = 0; i < digi.samples(); i++) {
1311  if (digi[i].soi()) {
1312  soi = i;
1313  break;
1314  }
1315  }
1316  short this_capidmbx = (digi[soi].capid() - bx) % 4;
1317  if (this_capidmbx < 0) {
1318  this_capidmbx += 4;
1319  }
1320  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
1321  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
1322  if (!good_capidmbx) {
1323  _xBadCapid.get(eid)++;
1326  }
1327  if (eid.isVMEid()) {
1328  _cCapidMinusBXmod4_CrateSlotVME[this_capidmbx].fill(eid);
1329 
1330  } else {
1331  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
1332  }
1333  }
1334 
1335  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE10DataFrame>(_dbService, did, digi);
1336  double sumQ = hcaldqm::utilities::sumQDB<QIE10DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1);
1337  //double sumQ = hcaldqm::utilities::sumQ_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples()-1);
1338 
1339  //if (!_filter_QIE1011.filter(did)) {
1341  //}
1342 
1343  _cOccupancy_depth.fill(did);
1344  if (_ptype == fOnline) {
1345  _xNChs.get(eid)++;
1347  digi.samples() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
1350  }
1351  _cDigiSize_Crate.fill(eid, digi.samples());
1352  if (_ptype != fOffline) { // hidefed2crate
1353  _cDigiSize_FED.fill(eid, digi.samples());
1354  if (eid.isVMEid()) {
1357  /*
1358  if (!it->validate(0, it->size()))
1359  _cCapIdRots_FEDVME.fill(eid, 1);*/
1360  } else {
1363  /*
1364  if (!it->validate(0, it->size()))
1365  _cCapIdRots_FEDuTCA.fill(eid, 1);*/
1366  }
1367  }
1368 
1369  for (int i = 0; i < digi.samples(); i++) {
1370  double q = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, i);
1371  //if (!_filter_QIE1011.filter(did)) {
1372  _cADC_SubdetPM_QIE1011.fill(did, digi[i].adc());
1374  _cLETDCvsADC_6bit_SubdetPM.fill(did, digi[i].adc(), digi[i].le_tdc());
1375  _cLETDCvsTS_6bit_SubdetPM.fill(did, (int)i, digi[i].le_tdc());
1376  if (digi[i].le_tdc() < 50) {
1377  double time = i * 25. + (digi[i].le_tdc() / 2.);
1379  _cLETDCTime_depth.fill(did, time);
1380  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
1381  }
1382 
1383  // Bad TDC values: 50-61 should never happen in QIE10 or QIE11, but we are seeing some in 2017 data.
1384  if ((50 <= digi[i].le_tdc()) && (digi[i].le_tdc() <= 61)) {
1385  _cBadTDCValues_SubdetPM.fill(did, digi[i].le_tdc());
1389  }
1390  if (_ptype != fOffline) { // hidefed2crate
1391  _cADCvsTS_SubdetPM_QIE1011.fill(did, (int)i, digi[i].adc());
1392  if (sumQ > _cutSumQ_HF)
1393  _cShapeCut_FED.fill(eid, (int)i, q);
1394  }
1395  //}
1396  }
1397 
1398  if (sumQ > _cutSumQ_HF) {
1399  double timing = hcaldqm::utilities::aveTS_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples() - 1);
1400  double q1 = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, 1);
1401  double q2 = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, 2);
1402  double q2q12 = q2 / (q1 + q2);
1403  _cSumQ_depth.fill(did, sumQ);
1404  //if (!_filter_QIE1011.filter(did)) {
1406  //}
1410  if (_ptype == fOnline) {
1411  //if (!_filter_QIE1011.filter(did)) {
1413  //}
1419  // _cOccupancyCutvsSlotvsLS_HFPM.fill(did, _currentLS);
1420  _xUniHF.get(eid)++;
1421  }
1422  if (_ptype != fOffline) { // hidefed2crate
1424  }
1426  if (!eid.isVMEid())
1427  if (_ptype == fOnline)
1429  if (_ptype != fOffline) { // hidefed2crate
1430  if (eid.isVMEid()) {
1435  } else {
1440  }
1441  }
1442  numChsCut++;
1443  }
1444  numChs++;
1445  }
1446  }
1447 
1448  if (rawidValid != 0) {
1449  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChs);
1450 
1451  if (_ptype == fOnline) {
1452  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChsCut);
1453  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidValid), bx, numChsCut);
1454  }
1455  }
1456 }
1457 
1458 std::shared_ptr<hcaldqm::Cache> DigiTask::globalBeginLuminosityBlock(edm::LuminosityBlock const& lb,
1459  edm::EventSetup const& es) const {
1460  return DQTask::globalBeginLuminosityBlock(lb, es);
1461 }
1462 
1464  auto lumiCache = luminosityBlockCache(lb.index());
1465  _currentLS = lumiCache->currentLS;
1466  _evsPerLS = lumiCache->EvtCntLS;
1467 
1468  if (_ptype != fOnline)
1469  return;
1470 
1471  for (uintCompactMap::const_iterator it = _xUniHF.begin(); it != _xUniHF.end(); ++it) {
1472  uint32_t hash1 = it->first;
1473  HcalElectronicsId eid1(hash1);
1474  double x1 = it->second;
1475 
1476  for (uintCompactMap::const_iterator jt = _xUniHF.begin(); jt != _xUniHF.end(); ++jt) {
1477  if (jt == it)
1478  continue;
1479  double x2 = jt->second;
1480  if (x2 == 0)
1481  continue;
1482  if (x1 / x2 < _thresh_unihf)
1483  _xUni.get(eid1)++;
1484  }
1485  }
1486 
1487  if (_ptype != fOffline) { // hidefed2crate
1488  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
1489  hcaldqm::flag::Flag fSum("DIGI");
1491 
1492  std::vector<uint32_t>::const_iterator cit = std::find(_vcdaqEids.begin(), _vcdaqEids.end(), *it);
1493  if (cit == _vcdaqEids.end()) {
1494  // not @cDAQ
1495  for (uint32_t iflag = 0; iflag < _vflags.size(); iflag++)
1498  continue;
1499  }
1500 
1501  // FED is @cDAQ
1503  if (_xDigiSize.get(eid) > 0)
1505  else
1507 
1508  if (_xBadCapid.get(eid) > 0) {
1510  } else {
1512  }
1513 
1515  double fr = double(_xNChs.get(eid)) / double(_xNChsNominal.get(eid) * _evsPerLS);
1516  if (_runkeyVal == 0 || _runkeyVal == 4) {
1517  // only for pp or hi
1518  if (_xUni.get(eid) > 0)
1520  else
1521  _vflags[fUni]._state = hcaldqm::flag::fGOOD;
1522  }
1523  if (fr < 0.95)
1525  else if (fr < 1.0)
1527  else
1529  }
1530  }
1531  if (_unknownIdsPresent)
1533  else
1535 
1536  // LED misfires
1537  if (_ptype != fLocal) {
1541 
1544  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1545  } else {
1546  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1547  }
1548  } else if (hcaldqm::utilities::isFEDHF(eid)) {
1551  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1552  } else {
1553  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1554  }
1555  } else if (hcaldqm::utilities::isFEDHO(eid)) {
1558  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1559  } else {
1560  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1561  }
1562  }
1563  }
1564 
1565  int iflag = 0;
1566  for (std::vector<hcaldqm::flag::Flag>::iterator ft = _vflags.begin(); ft != _vflags.end(); ++ft) {
1567  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, iflag, int(ft->_state));
1568  fSum += (*ft);
1569  iflag++;
1570 
1571  // reset!
1572  ft->reset();
1573  }
1575  }
1576  }
1577 
1578  _xDigiSize.reset();
1579  _xUniHF.reset();
1580  _xUni.reset();
1581  _xNChs.reset();
1582  _xBadCapid.reset();
1583 
1584  // in the end always do the DQTask::endLumi
1585  DQTask::globalEndLuminosityBlock(lb, es);
1586 }
1587 
hcaldqm::flag::Flag
Definition: Flag.h:24
hcaldqm::quantity::fQIE10TDC_4
Definition: ValueQuantity.h:37
HcalOther
Definition: HcalAssistant.h:38
hcaldqm::quantity::FEDQuantity
Definition: ElectronicsQuantity.h:356
hcaldqm::quantity::fADC_128
Definition: ValueQuantity.h:15
DigiTask::_cBadTDCvsBX_SubdetPM
hcaldqm::Container1D _cBadTDCvsBX_SubdetPM
Definition: DigiTask.h:163
DigiTask::_cADC_SubdetPM_QIE1011
hcaldqm::Container1D _cADC_SubdetPM_QIE1011
Definition: DigiTask.h:85
DigiTask::_cutSumQ_HO
double _cutSumQ_HO
Definition: DigiTask.h:50
DigiTask::_cCapid_BadvsFEDvsLSmod60
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLSmod60
Definition: DigiTask.h:177
hcaldqm::constants::FED_VME_MIN
const int FED_VME_MIN
Definition: Constants.h:80
hcaldqm::quantity::fCapidMinusBXmod4
Definition: ValueQuantity.h:66
hcaldqm::ContainerXXX::initialize
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:81
DigiTask::fNChsHF
Definition: DigiTask.h:55
DigiTask::_cOccupancyCutvsiphi_SubdetPM
hcaldqm::Container1D _cOccupancyCutvsiphi_SubdetPM
Definition: DigiTask.h:132
hcaldqm::flag::Flag::_state
State _state
Definition: Flag.h:62
mps_fire.i
i
Definition: mps_fire.py:428
hcaldqm::constants
Definition: Constants.h:9
hcaldqm::quantity::fRatio_0to2
Definition: ValueQuantity.h:39
hcaldqm::Container2D::initialize
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container2D.cc:25
DigiTask::_xNChsNominal
hcaldqm::ContainerXXX< uint32_t > _xNChsNominal
Definition: DigiTask.h:149
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
DigiTask::_cSumQ_SubdetPM
hcaldqm::Container1D _cSumQ_SubdetPM
Definition: DigiTask.h:79
hcaldqm::UpdateFreq
UpdateFreq
Definition: DQTask.h:32
DigiTask::_cfC_SubdetPM
hcaldqm::Container1D _cfC_SubdetPM
Definition: DigiTask.h:78
hcaldqm::quantity::FlagQuantity
Definition: ValueQuantity.h:364
hcaldqm::electronicsmap::ElectronicsMap::lookup
uint32_t lookup(DetId const &)
Definition: ElectronicsMap.cc:122
bookHistograms
example_stream void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
DigiTask::_cOccupancy_FEDVME
hcaldqm::Container2D _cOccupancy_FEDVME
Definition: DigiTask.h:114
DigiTask::_cDigiSize_Crate
hcaldqm::Container1D _cDigiSize_Crate
Definition: DigiTask.h:143
DigiTask::meNumEvents1LS
MonitorElement * meNumEvents1LS
Definition: DigiTask.h:180
edm::InputTag::instance
std::string const & instance() const
Definition: InputTag.h:37
edm::DataFrameContainer::const_iterator
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
Definition: DataFrameContainer.h:61
hcaldqm::quantity::fSlotuTCA
Definition: ElectronicsQuantity.h:21
HcalElectronicsMap::allElectronicsId
std::vector< HcalElectronicsId > allElectronicsId() const
Definition: HcalElectronicsMap.cc:110
HcalGenericDetId
Definition: HcalGenericDetId.h:15
hcaldqm::ContainerXXX::exists
virtual bool exists(HcalDetId const &)
Definition: ContainerXXX.h:212
QIE10DataFrame::samples
constexpr int samples() const
total number of samples in the digi
Definition: QIE10DataFrame.h:86
fwrapper::cs
unique_ptr< ClusterSequence > cs
Definition: fastjetfortran_madfks.cc:47
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
DigiTask::_cADCvsTS_SubdetPM_QIE1011
hcaldqm::Container2D _cADCvsTS_SubdetPM_QIE1011
Definition: DigiTask.h:94
DigiTask::_cOccupancyCutvsiphivsLS_SubdetPM
hcaldqm::Container2D _cOccupancyCutvsiphivsLS_SubdetPM
Definition: DigiTask.h:135
edm::Run
Definition: Run.h:45
hcaldqm::ContainerProf2D::book
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: ContainerProf2D.cc:47
hcaldqm::quantity::ValueQuantity
Definition: ValueQuantity.h:309
hcaldqm::hashfunctions::fElectronics
Definition: HashFunctions.h:145
hcaldqm::quantity::fN_to8000
Definition: ValueQuantity.h:40
edm::LuminosityBlock::index
LuminosityBlockIndex index() const
Definition: LuminosityBlock.cc:28
HcalCalibDetId
Definition: HcalCalibDetId.h:45
hcaldqm::Container1D::reset
virtual void reset()
Definition: Container1D.cc:60
gpuClustering::adc
uint16_t *__restrict__ uint16_t const *__restrict__ adc
Definition: gpuClusterChargeCut.h:20
testProducerWithPsetDescEmpty_cfi.x2
x2
Definition: testProducerWithPsetDescEmpty_cfi.py:28
hcaldqm::flag::fGOOD
Definition: Flag.h:17
hcaldqm
Definition: Constants.h:8
DigiTask::_unknownIdsPresent
bool _unknownIdsPresent
Definition: DigiTask.h:182
hcaldqm::quantity::fFiberCh
Definition: ElectronicsQuantity.h:26
hcaldqm::quantity::ffC_10000
Definition: ValueQuantity.h:18
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89285
hcaldqm::electronicsmap::ElectronicsMap::initialize
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
Definition: ElectronicsMap.cc:6
hcaldqm::hashfunctions::fSubdetPM
Definition: HashFunctions.h:127
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
hcaldqm::constants::SPIGOT_MIN
const int SPIGOT_MIN
Definition: Constants.h:118
DigiTask::_ledCalibrationChannels
std::map< HcalSubdetector, std::vector< HcalDetId > > _ledCalibrationChannels
Definition: DigiTask.h:193
DigiTask::_cShapeCut_FED
hcaldqm::Container1D _cShapeCut_FED
Definition: DigiTask.h:92
DigiTask::globalEndLuminosityBlock
void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
Definition: DigiTask.cc:1463
DigiTask::_cTimingCut_SubdetPM
hcaldqm::Container1D _cTimingCut_SubdetPM
Definition: DigiTask.h:98
hcaldqm::filter::fPreserver
Definition: HashFilter.h:19
DigiTask::_cTimingCutvsiphi_SubdetPM
hcaldqm::ContainerProf1D _cTimingCutvsiphi_SubdetPM
Definition: DigiTask.h:106
DigiTask::_xBadCapid
hcaldqm::ContainerXXX< uint32_t > _xBadCapid
Definition: DigiTask.h:150
hcaldqm::fLocal
Definition: DQModule.h:26
DigiTask::_cBadTDCValues_SubdetPM
hcaldqm::Container1D _cBadTDCValues_SubdetPM
Definition: DigiTask.h:162
DigiTask::_cOccupancyvsLS_Subdet
hcaldqm::ContainerProf1D _cOccupancyvsLS_Subdet
Definition: DigiTask.h:138
hcaldqm::constants::SLOT_uTCA_MIN
const int SLOT_uTCA_MIN
Definition: Constants.h:105
hcaldqm::constants::FIBER_uTCA_MIN1
const int FIBER_uTCA_MIN1
Definition: Constants.h:126
DigiTask::_cLETDCvsTS_6bit_SubdetPM
hcaldqm::Container2D _cLETDCvsTS_6bit_SubdetPM
Definition: DigiTask.h:156
HcalCalibDetId::ieta
int ieta() const
Definition: HcalCalibDetId.cc:94
protons_cff.time
time
Definition: protons_cff.py:39
DigiTask::DigiTask
DigiTask(edm::ParameterSet const &)
Definition: DigiTask.cc:7
DigiTask::_cOccupancyCut_ElectronicsVME
hcaldqm::Container2D _cOccupancyCut_ElectronicsVME
Definition: DigiTask.h:129
DigiTask::_xUni
hcaldqm::ContainerXXX< uint32_t > _xUni
Definition: DigiTask.h:147
DigiTask::_cOccupancyvsieta_Subdet
hcaldqm::Container1D _cOccupancyvsieta_Subdet
Definition: DigiTask.h:122
hcaldqm::quantity::fTime_ns_250_coarse
Definition: ValueQuantity.h:65
DigiTask::fUni
Definition: DigiTask.h:55
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
hcaldqm::DQModule::_runkeyVal
int _runkeyVal
Definition: DQModule.h:46
hcaldqm::hashfunctions::fFED
Definition: HashFunctions.h:136
hcaldqm::Container1D::getBinContent
virtual double getBinContent(HcalDetId const &)
Definition: Container1D.cc:177
HcalBarrel
Definition: HcalAssistant.h:33
HcalEmpty
Definition: HcalAssistant.h:32
DigiTask::_cTimingCutvsieta_Subdet
hcaldqm::ContainerProf1D _cTimingCutvsieta_Subdet
Definition: DigiTask.h:107
hcaldqm::DQModule::_ptype
ProcessingType _ptype
Definition: DQModule.h:43
hcaldqm::flag::fBAD
Definition: Flag.h:19
spr::find
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
hcaldqm::quantity::fFiberuTCA
Definition: ElectronicsQuantity.h:24
edm::Handle
Definition: AssociativeIterator.h:50
DigiTask::_cCapidMinusBXmod4_CrateSlotVME
hcaldqm::ContainerSingle2D _cCapidMinusBXmod4_CrateSlotVME[4]
Definition: DigiTask.h:174
HcalChannelStatus::HcalCellMask
Definition: HcalChannelStatus.h:18
hcaldqm::quantity::fQIE10fC_10000
Definition: ValueQuantity.h:51
hcaldqm::hashfunctions::fdepth
Definition: HashFunctions.h:131
hcaldqm::quantity::LumiSectionCoarse
Definition: ValueQuantity.h:413
DigiTask::_tokQIE10
edm::EDGetTokenT< QIE10DigiCollection > _tokQIE10
Definition: DigiTask.h:48
DigiTask::_cSumQ_SubdetPM_QIE1011
hcaldqm::Container1D _cSumQ_SubdetPM_QIE1011
Definition: DigiTask.h:87
hcaldqm::utilities::getFEDList
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:83
hcaldqm::utilities::sumQ
double sumQ(DIGI const &digi, double ped, int i=0, int j=3)
Definition: Utilities.h:126
HcalDbService::getHcalMapping
const HcalElectronicsMap * getHcalMapping() const
Definition: HcalDbService.cc:343
hcaldqm::DQTask::_xQuality
ContainerXXX< uint32_t > _xQuality
Definition: DQTask.h:65
DigiTask::_vhashFEDs
std::vector< uint32_t > _vhashFEDs
Definition: DigiTask.h:58
hcaldqm::hashfunctions::fFEDSlot
Definition: HashFunctions.h:138
DigiTask
Definition: DigiTask.py:1
hcaldqm::electronicsmap::fE2DHashMap
Definition: ElectronicsMap.h:27
DigiTask::_LED_CUCountvsLSmod60_Subdet
hcaldqm::Container1D _LED_CUCountvsLSmod60_Subdet
Definition: DigiTask.h:196
hcaldqm::hashfunctions::fCrateSlot
Definition: HashFunctions.h:141
DigiTask::_cTimingCut_ElectronicsVME
hcaldqm::ContainerProf2D _cTimingCut_ElectronicsVME
Definition: DigiTask.h:101
DigiTask::_cOccupancyCut_FEDuTCA
hcaldqm::Container2D _cOccupancyCut_FEDuTCA
Definition: DigiTask.h:128
hcaldqm::ContainerSingle2D::fill
virtual void fill(int, int)
Definition: ContainerSingle2D.cc:105
HcalElectronicsMap::allPrecisionId
std::vector< HcalGenericDetId > allPrecisionId() const
Definition: HcalElectronicsMap.cc:139
edm::InputTag::label
std::string const & label() const
Definition: InputTag.h:36
DigiTask::_resetMonitors
void _resetMonitors(hcaldqm::UpdateFreq) override
Definition: DigiTask.cc:800
DetId
Definition: DetId.h:17
testProducerWithPsetDescEmpty_cfi.x1
x1
Definition: testProducerWithPsetDescEmpty_cfi.py:33
hcaldqm::ContainerXXX::begin
virtual CompactMap::const_iterator begin()
Definition: ContainerXXX.h:69
DigiTask::_cTimingCut_FEDuTCA
hcaldqm::ContainerProf2D _cTimingCut_FEDuTCA
Definition: DigiTask.h:100
DigiTask::_cTimingCut_FEDVME
hcaldqm::ContainerProf2D _cTimingCut_FEDVME
Definition: DigiTask.h:99
DigiTask.h
hcaldqm::quantity::fBX
Definition: ValueQuantity.h:45
hcaldqm::quantity::fieta
Definition: DetectorQuantity.h:15
DigiTask::_capidmbx
std::map< HcalSubdetector, short > _capidmbx
Definition: DigiTask.h:189
DigiTask::_qie10InConditions
bool _qie10InConditions
Definition: DigiTask.h:187
hcaldqm::quantity::fADC_256_4
Definition: ValueQuantity.h:68
edm::EventSetup::get
T get() const
Definition: EventSetup.h:87
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
DigiTask::_xUniHF
hcaldqm::ContainerXXX< uint32_t > _xUniHF
Definition: DigiTask.h:147
hcaldqm::quantity::fQIE10TDC_64
Definition: ValueQuantity.h:35
QIE10DataFrame::detid
constexpr DetId detid() const
Get the detector id.
Definition: QIE10DataFrame.h:76
hcaldqm::quantity::fiphi
Definition: DetectorQuantity.h:14
DigiTask::_cADC_SubdetPM
hcaldqm::Container1D _cADC_SubdetPM
Definition: DigiTask.h:77
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
hcaldqm::DQModule::_currentLS
int _currentLS
Definition: DQModule.h:52
hcaldqm::ContainerProf2D::initialize
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fEnergy), int debug=0) override
Definition: ContainerProf2D.cc:22
HcalChannelStatus
Definition: HcalChannelStatus.h:13
DigiTask::_cOccupancy_FEDuTCA
hcaldqm::Container2D _cOccupancy_FEDuTCA
Definition: DigiTask.h:115
hcaldqm::hashfunctions::fCrate
Definition: HashFunctions.h:139
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
hcaldqm::ContainerXXX::reset
virtual void reset()
Definition: ContainerXXX.h:292
hcaldqm::hashfunctions::hash_Subdet
uint32_t hash_Subdet(HcalDetId const &)
Definition: HashFunctions.cc:10
hcaldqm::constants::CRATE_uTCA_MIN
const int CRATE_uTCA_MIN
Definition: Constants.h:98
mps_fire.end
end
Definition: mps_fire.py:242
hcaldqm::filter::HashFilter::initialize
virtual void initialize(FilterType ftype, hashfunctions::HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:17
hcaldqm::ContainerXXX::end
virtual CompactMap::const_iterator end()
Definition: ContainerXXX.h:70
DigiTask::fDigiSize
Definition: DigiTask.h:55
hcaldqm::constants::FIBER_VME_MIN
const int FIBER_VME_MIN
Definition: Constants.h:123
DigiTask::_filter_TDC6bit
hcaldqm::filter::HashFilter _filter_TDC6bit
Definition: DigiTask.h:73
edm::ESHandle< HcalDbService >
HcalElectronicsId
Readout chain identification for Hcal.
Definition: HcalElectronicsId.h:32
hcaldqm::DQModule::_name
std::string _name
Definition: DQModule.h:41
DigiTask::fUnknownIds
Definition: DigiTask.h:55
DigiTask::_cSummaryvsLS_FED
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: DigiTask.h:184
DigiTask::_cOccupancyCutvsBX_Subdet
hcaldqm::ContainerProf1D _cOccupancyCutvsBX_Subdet
Definition: DigiTask.h:140
HcalOuter
Definition: HcalAssistant.h:35
DigiTask::_ehashmap
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: DigiTask.h:63
HcalCalibration
Definition: HcalAssistant.h:40
QIE11DataFrame::samples
constexpr int samples() const
total number of samples in the digi
Definition: QIE11DataFrame.h:77
hcaldqm::constants::FIBERCH_MIN
const int FIBERCH_MIN
Definition: Constants.h:132
hcaldqm::hashfunctions::fSubdet
Definition: HashFunctions.h:123
hcaldqm::hashfunctions::hash_did
const hash_function_did hash_did[nHashType_did]
Definition: HashFunctions.h:163
DigiTask::_cDigiSize_FED
hcaldqm::Container1D _cDigiSize_FED
Definition: DigiTask.h:144
DigiTask::_cTimingCut_depth
hcaldqm::ContainerProf2D _cTimingCut_depth
Definition: DigiTask.h:105
q2
double q2[4]
Definition: TauolaWrapper.h:88
hcaldqm::quantity::DetectorQuantity
Definition: DetectorQuantity.h:59
hcaldqm::utilities::isFEDHF
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:156
hcaldqm::quantity::fCrate
Definition: ElectronicsQuantity.h:18
hcaldqm::quantity::fCrateuTCA
Definition: ElectronicsQuantity.h:19
hcaldqm::Container2D::setBinContent
void setBinContent(HcalDetId const &, int) override
Definition: Container2D.cc:163
DigiTask::_LED_CUCountvsLS_Subdet
hcaldqm::Container1D _LED_CUCountvsLS_Subdet
Definition: DigiTask.h:195
hcaldqm::quantity::fN
Definition: ValueQuantity.h:11
DigiTask::_cOccupancyCut_FEDVME
hcaldqm::Container2D _cOccupancyCut_FEDVME
Definition: DigiTask.h:127
hcaldqm::quantity::fDigiSize
Definition: ValueQuantity.h:28
DigiTask::_filter_uTCA
hcaldqm::filter::HashFilter _filter_uTCA
Definition: DigiTask.h:68
DigiTask::_cSumQvsLS_SubdetPM_QIE1011
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM_QIE1011
Definition: DigiTask.h:88
Logger::dqmthrow
void dqmthrow(std::string const &msg) const
Definition: Logger.h:12
DigiTask::_tagHO
edm::InputTag _tagHO
Definition: DigiTask.h:44
DigiTask::_cADCvsTS_SubdetPM
hcaldqm::Container2D _cADCvsTS_SubdetPM
Definition: DigiTask.h:93
hcaldqm::quantity::fQIE10fC_400000
Definition: ValueQuantity.h:48
edm::ParameterSet
Definition: ParameterSet.h:47
q1
double q1[4]
Definition: TauolaWrapper.h:87
DigiTask::_thresh_unihf
double _thresh_unihf
Definition: DigiTask.h:51
DigiTask::_cSummaryvsLS
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: DigiTask.h:185
hcaldqm::Container2D::book
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:558
DigiTask::nDigiFlag
Definition: DigiTask.h:55
DigiTask::_cLETDCTime_depth
hcaldqm::ContainerProf2D _cLETDCTime_depth
Definition: DigiTask.h:158
hcaldqm::Container2D::fill
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
DigiTask::_cLETDCTime_SubdetPM
hcaldqm::Container1D _cLETDCTime_SubdetPM
Definition: DigiTask.h:157
DigiTask::_cTimingCut_ElectronicsuTCA
hcaldqm::ContainerProf2D _cTimingCut_ElectronicsuTCA
Definition: DigiTask.h:102
hcaldqm::Container1D::fill
virtual void fill(uint32_t)
Definition: Container1D.cc:73
DigiTask::_cTimingCutvsLS_FED
hcaldqm::ContainerProf1D _cTimingCutvsLS_FED
Definition: DigiTask.h:103
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
hcaldqm::flag::Flag::reset
void reset()
Definition: Flag.h:59
DigiTask::_cBadTDCCount_depth
hcaldqm::Container2D _cBadTDCCount_depth
Definition: DigiTask.h:165
DigiTask::_cOccupancyCutvsLS_Subdet
hcaldqm::ContainerProf1D _cOccupancyCutvsLS_Subdet
Definition: DigiTask.h:139
hcaldqm::DQModule::_logger
Logger _logger
Definition: DQModule.h:54
HcalDetId::subdet
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
printConversionInfo.aux
aux
Definition: printConversionInfo.py:19
DigiTask::_tokHO
edm::EDGetTokenT< HODigiCollection > _tokHO
Definition: DigiTask.h:47
HcalDetId
Definition: HcalDetId.h:12
createfilelist.int
int
Definition: createfilelist.py:10
hcaldqm::quantity::fQIE10ADC_256
Definition: ValueQuantity.h:34
DigiTask::_filter_VME
hcaldqm::filter::HashFilter _filter_VME
Definition: DigiTask.h:67
runTauDisplay.eid
eid
Definition: runTauDisplay.py:298
DigiTask::_LED_ADCvsBX_Subdet
hcaldqm::Container2D _LED_ADCvsBX_Subdet
Definition: DigiTask.h:197
DigiTask::_filter_TDC2bit
hcaldqm::filter::HashFilter _filter_TDC2bit
Definition: DigiTask.h:72
DigiTask::_tagQIE10
edm::InputTag _tagQIE10
Definition: DigiTask.h:45
DigiTask::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: DigiTask.cc:46
edm::DataFrameContainer::begin
const_iterator begin() const
The iterator returned can not safely be used across threads.
Definition: DataFrameContainer.h:149
HcalCalibDetId::iphi
int iphi() const
get the low-edge iphi (if relevant)
Definition: HcalCalibDetId.cc:104
hcaldqm::DQTask::_dbService
edm::ESHandle< HcalDbService > _dbService
Definition: DQTask.h:79
HODataFrame::size
constexpr int size() const
total number of samples in the digi
Definition: HODataFrame.h:27
DigiTask::_xDigiSize
hcaldqm::ContainerXXX< uint32_t > _xDigiSize
Definition: DigiTask.h:146
DigiTask::_cCapid_BadvsFEDvsLS
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLS
Definition: DigiTask.h:175
hcaldqm::quantity::fTiming_TS200
Definition: ValueQuantity.h:22
DigiTask::_cLETDCvsTS_2bit_SubdetPM
hcaldqm::Container2D _cLETDCvsTS_2bit_SubdetPM
Definition: DigiTask.h:155
dqm::implementation::IBooker::UseLumiScope
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:463
cuy.ib
ib
Definition: cuy.py:662
DigiTask::_cOccupancy_ElectronicsuTCA
hcaldqm::Container2D _cOccupancy_ElectronicsuTCA
Definition: DigiTask.h:117
submitPVResolutionJobs.q
q
Definition: submitPVResolutionJobs.py:84
HcalCalibDetId::hcalSubdet
HcalSubdetector hcalSubdet() const
get the HcalSubdetector (if relevant)
Definition: HcalCalibDetId.cc:90
edm::EventSetup
Definition: EventSetup.h:58
CaloSamples
Definition: CaloSamples.h:14
hcaldqm::quantity::fSpigot
Definition: ElectronicsQuantity.h:23
DigiTask::fCapId
Definition: DigiTask.h:55
DigiTask::_dhashmap
hcaldqm::electronicsmap::ElectronicsMap _dhashmap
Definition: DigiTask.h:64
QIE11DataFrame::detid
constexpr DetId detid() const
Get the detector id.
Definition: QIE11DataFrame.h:67
get
#define get
DigiTask::_cBadTDCvsLS_SubdetPM
hcaldqm::Container1D _cBadTDCvsLS_SubdetPM
Definition: DigiTask.h:164
hcaldqm::f1LS
Definition: DQTask.h:32
DigiTask::_cCapidMinusBXmod4_SubdetPM
hcaldqm::Container1D _cCapidMinusBXmod4_SubdetPM
Definition: DigiTask.h:172
HcalCalibDetId::calibFlavor
CalibDetType calibFlavor() const
get the flavor of this calibration detid
Definition: HcalCalibDetId.h:77
hcaldqm::DQTask::_vcdaqEids
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:68
DigiTask::_cQ2Q12CutvsLS_FEDHF
hcaldqm::ContainerProf1D _cQ2Q12CutvsLS_FEDHF
Definition: DigiTask.h:110
hcaldqm::DQModule::_subsystem
std::string _subsystem
Definition: DQModule.h:48
alignCSCRings.r
r
Definition: alignCSCRings.py:93
DigiTask::_xNChs
hcaldqm::ContainerXXX< uint32_t > _xNChs
Definition: DigiTask.h:148
hcaldqm::ContainerProf2D::fill
void fill(HcalDetId const &) override
Definition: ContainerProf2D.cc:228
HcalSubdetector
HcalSubdetector
Definition: HcalAssistant.h:31
HcalForward
Definition: HcalAssistant.h:36
hcaldqm::flag::fPROBLEMATIC
Definition: Flag.h:18
DigiTask::_cLETDCvsADC_6bit_SubdetPM
hcaldqm::Container2D _cLETDCvsADC_6bit_SubdetPM
Definition: DigiTask.h:154
hcaldqm::DQModule::_maxLS
int _maxLS
Definition: DQModule.h:53
hcaldqm::quantity::fBadTDC
Definition: ValueQuantity.h:61
hcaldqm::quantity::ElectronicsQuantity
Definition: ElectronicsQuantity.h:333
DigiTask::_tagQIE11
edm::InputTag _tagQIE11
Definition: DigiTask.h:43
hcaldqm::ContainerProf1D::initialize
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
Definition: ContainerProf1D.cc:22
ecalMatacq_cfi.timing
timing
Definition: ecalMatacq_cfi.py:26
DigiTask::_cOccupancy_ElectronicsVME
hcaldqm::Container2D _cOccupancy_ElectronicsVME
Definition: DigiTask.h:116
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
DigiTask::_cCapidMinusBXmod4_CrateSlotuTCA
hcaldqm::ContainerSingle2D _cCapidMinusBXmod4_CrateSlotuTCA[4]
Definition: DigiTask.h:173
HcalChannelStatus::HcalCellDead
Definition: HcalChannelStatus.h:20
HcalElectronicsMap::lookup
const DetId lookup(HcalElectronicsId fId) const
lookup the logical detid associated with the given electronics id
Definition: HcalElectronicsMap.cc:70
hcaldqm::electronicsmap::fD2EHashMap
Definition: ElectronicsMap.h:25
QIE10DataFrame
Definition: QIE10DataFrame.h:11
HcalEndcap
Definition: HcalAssistant.h:34
hcaldqm::quantity::fFiberuTCAFiberCh
Definition: ElectronicsQuantity.h:31
hcaldqm::quantity::ffC_generic_400000
Definition: ValueQuantity.h:56
DigiTask::_cfC_SubdetPM_QIE1011
hcaldqm::Container1D _cfC_SubdetPM_QIE1011
Definition: DigiTask.h:86
hcaldqm::utilities::isFEDHBHE
bool isFEDHBHE(HcalElectronicsId const &)
Definition: Utilities.cc:142
nanoDQM_cff.Flag
Flag
Definition: nanoDQM_cff.py:65
HODataFrame
Definition: HODataFrame.h:14
hcaldqm::ContainerSingle2D::setBinContent
virtual void setBinContent(int, int, int)
Definition: ContainerSingle2D.cc:154
HcalElectronicsId::rawId
constexpr uint32_t rawId() const
Definition: HcalElectronicsId.h:59
QIE11DataFrame
Definition: QIE11DataFrame.h:11
hcaldqm::quantity::fFiberVMEFiberCh
Definition: ElectronicsQuantity.h:32
hcaldqm::quantity::fCrateVME
Definition: ElectronicsQuantity.h:20
DigiTask::_cOccupancyCut_depth
hcaldqm::Container2D _cOccupancyCut_depth
Definition: DigiTask.h:131
DigiTask::_cLETDCvsADC_2bit_SubdetPM
hcaldqm::Container2D _cLETDCvsADC_2bit_SubdetPM
Definition: DigiTask.h:153
HcalCalibDetId::cboxChannel
int cboxChannel() const
get the calibration box channel (if relevant)
Definition: HcalCalibDetId.cc:86
hcaldqm::DQTask::_emap
const HcalElectronicsMap * _emap
Definition: DQTask.h:80
HcalOtherDetId
Definition: HcalOtherDetId.h:22
hcaldqm::ContainerSingle2D::book
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
Definition: ContainerSingle2D.cc:68
hcaldqm::utilities::fed2crate
std::pair< uint16_t, uint16_t > fed2crate(int fed)
Definition: Utilities.cc:10
hcaldqm::utilities::isFEDHO
bool isFEDHO(HcalElectronicsId const &)
Definition: Utilities.cc:180
DigiTask::_cOccupancyCut_ElectronicsuTCA
hcaldqm::Container2D _cOccupancyCut_ElectronicsuTCA
Definition: DigiTask.h:130
DigiTask::_cOccupancy_depth
hcaldqm::Container2D _cOccupancy_depth
Definition: DigiTask.h:120
hcaldqm::utilities::getFEDVMEList
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
Definition: Utilities.cc:101
DigiTask::_vflags
std::vector< hcaldqm::flag::Flag > _vflags
Definition: DigiTask.h:54
DigiTask::_process
void _process(edm::Event const &, edm::EventSetup const &) override
Definition: DigiTask.cc:818
hcaldqm::ContainerXXX::book
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:87
DigiTask::globalBeginLuminosityBlock
std::shared_ptr< hcaldqm::Cache > globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override
Definition: DigiTask.cc:1458
DigiTask::_filter_QIE8
hcaldqm::filter::HashFilter _filter_QIE8
Definition: DigiTask.h:71
hcaldqm::ContainerXXX::get
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
dqm::implementation::IBooker
Definition: DQMStore.h:43
DigiTask::_cOccupancy_Crate
hcaldqm::Container2D _cOccupancy_Crate
Definition: DigiTask.h:118
DigiTask::_cSumQvsLS_SubdetPM
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM
Definition: DigiTask.h:81
DigiTask::_thresh_led
double _thresh_led
Definition: DigiTask.h:192
DigiTask::_cTimingCutvsLS_SubdetPM
hcaldqm::ContainerProf1D _cTimingCutvsLS_SubdetPM
Definition: DigiTask.h:104
hcaldqm::DQTask
Definition: DQTask.h:33
DigiTask::_cutSumQ_HBHE
double _cutSumQ_HBHE
Definition: DigiTask.h:50
HcalOtherDetId::subdet
HcalOtherSubdetector subdet() const
get the category
Definition: HcalOtherDetId.h:30
DigiTask::_cOccupancy_CrateSlot
hcaldqm::Container2D _cOccupancy_CrateSlot
Definition: DigiTask.h:119
DigiTask::_cLETDCTimevsADC_SubdetPM
hcaldqm::Container2D _cLETDCTimevsADC_SubdetPM
Definition: DigiTask.h:159
HcalDbRecord
Definition: HcalDbRecord.h:30
hcaldqm::ContainerSingle2D::initialize
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: ContainerSingle2D.cc:46
DigiTask::_refDigiSize
std::map< HcalSubdetector, int > _refDigiSize
Definition: DigiTask.h:60
hcaldqm::Container1D::initialize
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container1D.cc:33
DigiTask::_cOccupancyvsiphi_SubdetPM
hcaldqm::Container1D _cOccupancyvsiphi_SubdetPM
Definition: DigiTask.h:121
DigiTask::_cSumQvsBX_SubdetPM
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM
Definition: DigiTask.h:82
hcaldqm::quantity::fBX_36
Definition: ValueQuantity.h:67
hcaldqm::ContainerProf1D::book
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: ContainerProf1D.cc:40
hcaldqm::flag::fNCDAQ
Definition: Flag.h:15
hcaldqm::fOnline
Definition: DQModule.h:26
hcaldqm::quantity::fState
Definition: ValueQuantity.h:47
HcalCalibDetId::CalibrationBox
Definition: HcalCalibDetId.h:49
DigiTask::_cOccupancyCutvsieta_Subdet
hcaldqm::Container1D _cOccupancyCutvsieta_Subdet
Definition: DigiTask.h:133
edm::Event
Definition: Event.h:73
hcaldqm::quantity::fTiming_TS
Definition: ValueQuantity.h:21
DigiTask::_cSumQ_depth
hcaldqm::ContainerProf2D _cSumQ_depth
Definition: DigiTask.h:80
DigiTask::_filter_FEDHF
hcaldqm::filter::HashFilter _filter_FEDHF
Definition: DigiTask.h:69
hcaldqm::f50LS
Definition: DQTask.h:32
hcaldqm::utilities::getFEDuTCAList
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
Definition: Utilities.cc:121
DigiTask::_cutSumQ_HF
double _cutSumQ_HF
Definition: DigiTask.h:50
DigiTask::_cDigiSizevsLS_FED
hcaldqm::ContainerProf1D _cDigiSizevsLS_FED
Definition: DigiTask.h:145
edm::DataFrameContainer::end
const_iterator end() const
Definition: DataFrameContainer.h:152
edm::InputTag
Definition: InputTag.h:15
hcaldqm::constants::CRATE_VME_MIN
const int CRATE_VME_MIN
Definition: Constants.h:93
hcaldqm::filter::fFilter
Definition: HashFilter.h:19
hcaldqm::Container1D::book
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container1D.cc:592
DigiTask::_cSumQvsBX_SubdetPM_QIE1011
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM_QIE1011
Definition: DigiTask.h:89
DigiTask::meUnknownIds1LS
MonitorElement * meUnknownIds1LS
Definition: DigiTask.h:181
hcaldqm::filter
Definition: HashFilter.h:18
DigiTask::_tokQIE11
edm::EDGetTokenT< QIE11DigiCollection > _tokQIE11
Definition: DigiTask.h:46
DigiTask::_filter_QIE1011
hcaldqm::filter::HashFilter _filter_QIE1011
Definition: DigiTask.h:70
hcaldqm::quantity::fSlotVME
Definition: ElectronicsQuantity.h:22
hcaldqm::fOffline
Definition: DQModule.h:26
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
hcaldqm::DQModule::_evsPerLS
int _evsPerLS
Definition: DQModule.h:51
hcaldqm::quantity::LumiSection
Definition: ValueQuantity.h:390
DigiTask::fLED
Definition: DigiTask.h:55