CMS 3D CMS Logo

LaserTask.cc
Go to the documentation of this file.
1 
3 
4 using namespace hcaldqm;
5 using namespace hcaldqm::constants;
6 using namespace hcaldqm::filter;
8  DQTask(ps)
9 {
10  _nevents = ps.getUntrackedParameter<int>("nevents", 2000);
11 
12  // tags
14  edm::InputTag("hcalDigis"));
16  edm::InputTag("hcalDigis"));
18  edm::InputTag("hcalDigis"));
20  edm::InputTag("hcalDigis"));
22  edm::InputTag("hcalDigis"));
23  _tokHBHE = consumes<HBHEDigiCollection>(_tagHBHE);
24  _tokHEP17 = consumes<QIE11DigiCollection>(_tagHEP17);
25  _tokHO = consumes<HODigiCollection>(_tagHO);
26  _tokHF = consumes<QIE10DigiCollection>(_tagHF);
27  _tokuMN = consumes<HcalUMNioDigi>(_taguMN);
28 
29  // constants
30  _lowHBHE = ps.getUntrackedParameter<double>("lowHBHE",
31  20);
32  _lowHEP17 = ps.getUntrackedParameter<double>("lowHEP17",
33  20);
34  _lowHO = ps.getUntrackedParameter<double>("lowHO",
35  20);
36  _lowHF = ps.getUntrackedParameter<double>("lowHF",
37  20);
38  _laserType = (uint32_t)ps.getUntrackedParameter<uint32_t>("laserType");
39 }
40 
42  edm::Run const& r, edm::EventSetup const& es)
43 {
44  if (_ptype==fLocal)
45  if (r.runAuxiliary().run()==1)
46  return;
47 
48  DQTask::bookHistograms(ib, r, es);
49 
51  es.get<HcalDbRecord>().get(dbService);
52  _emap = dbService->getHcalMapping();
53 
54  std::vector<uint32_t> vhashVME;
55  std::vector<uint32_t> vhashuTCA;
56  std::vector<uint32_t> vhashC36;
57  vhashVME.push_back(HcalElectronicsId(constants::FIBERCH_MIN,
59  vhashuTCA.push_back(HcalElectronicsId(CRATE_uTCA_MIN, SLOT_uTCA_MIN,
60  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
62  vhashVME);
64  vhashuTCA);
65 
66  // INITIALIZE
67  _cSignalMean_Subdet.initialize(_name, "SignalMean",
71  _cSignalRMS_Subdet.initialize(_name, "SignalRMS",
75  _cTimingMean_Subdet.initialize(_name, "TimingMean",
79  _cTimingRMS_Subdet.initialize(_name, "TimingRMS",
83 
88 
89  if (_ptype != fOffline) { // hidefed2crate
90  _cSignalMean_FEDVME.initialize(_name, "SignalMean",
100  _cSignalRMS_FEDVME.initialize(_name, "SignalRMS",
105  _cSignalRMS_FEDuTCA.initialize(_name, "SignalRMS",
110  _cTimingMean_FEDVME.initialize(_name, "TimingMean",
115  _cTimingMean_FEDuTCA.initialize(_name, "TimingMean",
120  _cTimingRMS_FEDVME.initialize(_name, "TimingRMS",
125  _cTimingRMS_FEDuTCA.initialize(_name, "TimingRMS",
130 
135  }
136  _cTimingvsEvent_SubdetPM.initialize(_name, "TimingvsEvent",
140  _cSignalvsEvent_SubdetPM.initialize(_name, "SignalvsEvent",
144  _cTimingvsLS_SubdetPM.initialize(_name, "TimingvsLS",
148  _cSignalvsLS_SubdetPM.initialize(_name, "SignalvsLS",
152  _cTimingvsBX_SubdetPM.initialize(_name, "TimingvsBX",
156  _cSignalvsBX_SubdetPM.initialize(_name, "SignalvsBX",
160 
161  _cSignalMean_depth.initialize(_name, "SignalMean",
166  _cSignalRMS_depth.initialize(_name, "SignalRMS",
171  _cTimingMean_depth.initialize(_name, "TimingMean",
176  _cTimingRMS_depth.initialize(_name, "TimingRMS",
181 
182  _cMissing_depth.initialize(_name, "Missing",
187  if (_ptype != fOffline) { // hidefed2crate
188  _cMissing_FEDVME.initialize(_name, "Missing",
198  }
199 
200 
201  // initialize compact containers
207 
208  // BOOK
213 
218 
219  if (_ptype==fLocal)
220  {
223  }
224  else
225  {
230  }
231 
232  if (_ptype != fOffline) { // hidefed2crate
241  }
243 
245  if (_ptype != fOffline) { // hidefed2crate
249  }
250 
256 
258 }
259 
261 {
262  DQTask::_resetMonitors(uf);
263 }
264 
265 /* virtual */ void LaserTask::_dump()
266 {
275 
276  if (_ptype != fOffline) { // hidefed2crate
285  }
286 
287  std::vector<HcalGenericDetId> dids = _emap->allPrecisionId();
288  for (std::vector<HcalGenericDetId>::const_iterator it=dids.begin();
289  it!=dids.end(); ++it)
290  {
291  if (!it->isHcalDetId())
292  continue;
293  HcalDetId did = HcalDetId(it->rawId());
295  int n = _xEntries.get(did);
296  double msig = _xSignalSum.get(did)/n;
297  double mtim = _xTimingSum.get(did)/n;
298  double rsig = sqrt(_xSignalSum2.get(did)/n-msig*msig);
299  double rtim = sqrt(_xTimingSum2.get(did)/n-mtim*mtim);
300 
301  // channels missing or low signal
302  if (n==0)
303  {
304  _cMissing_depth.fill(did);
305  if (_ptype != fOffline) { // hidefed2crate
306  if (eid.isVMEid())
308  else
310  }
311  continue;
312  }
313  _cSignalMean_Subdet.fill(did, msig);
314  _cSignalMean_depth.fill(did, msig);
315  _cSignalRMS_Subdet.fill(did, rsig);
316  _cSignalRMS_depth.fill(did, rsig);
317  _cTimingMean_Subdet.fill(did, mtim);
318  _cTimingMean_depth.fill(did, mtim);
319  _cTimingRMS_Subdet.fill(did, rtim);
320  _cTimingRMS_depth.fill(did, rtim);
321  if (_ptype != fOffline) { // hidefed2crate
322  if (eid.isVMEid())
323  {
325  _cSignalRMS_FEDVME.fill(eid, rsig);
327  _cTimingRMS_FEDVME.fill(eid, rtim);
328  }
329  else
330  {
335  }
336  }
337  }
338 }
339 
340 /* virtual */ void LaserTask::_process(edm::Event const& e,
341  edm::EventSetup const& es)
342 {
347 
348  if (!e.getByToken(_tokHBHE, chbhe))
349  _logger.dqmthrow("Collection HBHEDigiCollection isn't available "
350  + _tagHBHE.label() + " " + _tagHBHE.instance());
351  if (!e.getByToken(_tokHEP17, chep17))
352  _logger.dqmthrow("Collection QIE11DigiCollection isn't available "
353  + _tagHEP17.label() + " " + _tagHEP17.instance());
354  if (!e.getByToken(_tokHO, cho))
355  _logger.dqmthrow("Collection HODigiCollection isn't available "
356  + _tagHO.label() + " " + _tagHO.instance());
357  if (!e.getByToken(_tokHF, chf))
358  _logger.dqmthrow("Collection QIE10DigiCollection isn't available "
359  + _tagHF.label() + " " + _tagHF.instance());
360 
361 // int currentEvent = e.eventAuxiliary().id().event();
362  int bx = e.bunchCrossing();
363 
364  for (HBHEDigiCollection::const_iterator it=chbhe->begin();
365  it!=chbhe->end(); ++it)
366  {
367  const HBHEDataFrame digi = (const HBHEDataFrame)(*it);
368  double sumQ = hcaldqm::utilities::sumQ<HBHEDataFrame>(digi, 2.5, 0,
369  digi.size()-1);
370  if (sumQ<_lowHBHE)
371  continue;
372  HcalDetId did = digi.id();
373  HcalElectronicsId eid = digi.elecId();
374 
375  double aveTS = hcaldqm::utilities::aveTS<HBHEDataFrame>(digi, 2.5, 0,
376  digi.size()-1);
377  _xSignalSum.get(did)+=sumQ;
378  _xSignalSum2.get(did)+=sumQ*sumQ;
379  _xTimingSum.get(did)+=aveTS;
380  _xTimingSum2.get(did)+=aveTS*aveTS;
381  _xEntries.get(did)++;
382 
383  for (int i=0; i<digi.size(); i++)
384  {
385  if (_ptype != fOffline) { // hidefed2crate
386  _cShapeCut_FEDSlot.fill(eid, i,
387  digi.sample(i).nominal_fC()-2.5);
388  }
389  _cADC_SubdetPM.fill(did, digi.sample(i).adc());
390  }
391 
392  // select based on local global
393  if (_ptype==fLocal)
394  {
395  int currentEvent = e.eventAuxiliary().id().event();
396  _cTimingvsEvent_SubdetPM.fill(did, currentEvent, aveTS);
397  _cSignalvsEvent_SubdetPM.fill(did, currentEvent, sumQ);
398  }
399  else
400  {
403  _cTimingvsBX_SubdetPM.fill(did, bx, aveTS);
404  _cSignalvsBX_SubdetPM.fill(did, bx, sumQ);
405  }
406  }
407  for (QIE11DigiCollection::const_iterator it=chep17->begin(); it!=chep17->end();
408  ++it)
409  {
410  const QIE11DataFrame digi = static_cast<const QIE11DataFrame>(*it);
411  HcalDetId const& did = digi.detid();
412  if (did.subdet() != HcalEndcap) {
413  continue;
414  }
415  uint32_t rawid = _ehashmap.lookup(did);
416  HcalElectronicsId const& eid(rawid);
417 
418  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE11DataFrame>(_dbService, did, digi);
419  //double sumQ = hcaldqm::utilities::sumQ_v10<QIE11DataFrame>(digi, 2.5, 0, digi.samples()-1);
420  double sumQ = hcaldqm::utilities::sumQDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples()-1);
421  if (sumQ<_lowHEP17)
422  continue;
423 
424 
425  //double aveTS = hcaldqm::utilities::aveTS_v10<QIE11DataFrame>(digi, 2.5, 0,digi.samples()-1);
426  double aveTS = hcaldqm::utilities::aveTSDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.size()-1);
427  _xSignalSum.get(did)+=sumQ;
428  _xSignalSum2.get(did)+=sumQ*sumQ;
429  _xTimingSum.get(did)+=aveTS;
430  _xTimingSum2.get(did)+=aveTS*aveTS;
431  _xEntries.get(did)++;
432 
433  for (int i=0; i<digi.samples(); i++)
434  {
435  _cShapeCut_FEDSlot.fill(eid, i, hcaldqm::utilities::adc2fCDBMinusPedestal<QIE11DataFrame>(_dbService, digi_fC, did, digi, i));
436  _cADC_SubdetPM.fill(did, digi[i].adc());
437  }
438 
439  // select based on local global
440  if (_ptype==fLocal)
441  {
442  int currentEvent = e.eventAuxiliary().id().event();
443  _cTimingvsEvent_SubdetPM.fill(did, currentEvent, aveTS);
444  _cSignalvsEvent_SubdetPM.fill(did, currentEvent, sumQ);
445  }
446  else
447  {
450  _cTimingvsBX_SubdetPM.fill(did, bx, aveTS);
451  _cSignalvsBX_SubdetPM.fill(did, bx, sumQ);
452  }
453  }
455  it!=cho->end(); ++it)
456  {
457  const HODataFrame digi = (const HODataFrame)(*it);
458  double sumQ = hcaldqm::utilities::sumQ<HODataFrame>(digi, 8.5, 0,
459  digi.size()-1);
460  if (sumQ<_lowHO)
461  continue;
462  HcalDetId did = digi.id();
463  HcalElectronicsId eid = digi.elecId();
464 
465  double aveTS = hcaldqm::utilities::aveTS<HODataFrame>(digi, 8.5, 0,
466  digi.size()-1);
467  _xSignalSum.get(did)+=sumQ;
468  _xSignalSum2.get(did)+=sumQ*sumQ;
469  _xTimingSum.get(did)+=aveTS;
470  _xTimingSum2.get(did)+=aveTS*aveTS;
471  _xEntries.get(did)++;
472 
473  for (int i=0; i<digi.size(); i++)
474  {
475  if (_ptype != fOffline) { // hidefed2crate
476  _cShapeCut_FEDSlot.fill(eid, i,
477  digi.sample(i).nominal_fC()-8.5);
478  }
479  _cADC_SubdetPM.fill(did, digi.sample(i).adc());
480  }
481 
482  // select based on local global
483  if (_ptype==fLocal)
484  {
485  int currentEvent = e.eventAuxiliary().id().event();
486  _cTimingvsEvent_SubdetPM.fill(did, currentEvent, aveTS);
487  _cSignalvsEvent_SubdetPM.fill(did, currentEvent, sumQ);
488  }
489  else
490  {
493  _cTimingvsBX_SubdetPM.fill(did, bx, aveTS);
494  _cSignalvsBX_SubdetPM.fill(did, bx, sumQ);
495  }
496  }
498  it!=chf->end(); ++it)
499  {
500  const QIE10DataFrame digi = (const QIE10DataFrame)(*it);
501  HcalDetId did = digi.detid();
502  if (did.subdet() != HcalForward) {
503  continue;
504  }
506 
507  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE10DataFrame>(_dbService, did, digi);
508  double sumQ = hcaldqm::utilities::sumQDB<QIE10DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples()-1);
509  //double sumQ = hcaldqm::utilities::sumQ_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples()-1);
510  if (sumQ<_lowHF)
511  continue;
512 
513  //double aveTS = hcaldqm::utilities::aveTS_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples()-1);
514  double aveTS = hcaldqm::utilities::aveTSDB<QIE10DataFrame>(_dbService, digi_fC, did, digi, 0, digi.size()-1);
515 
516  _xSignalSum.get(did)+=sumQ;
517  _xSignalSum2.get(did)+=sumQ*sumQ;
518  _xTimingSum.get(did)+=aveTS;
519  _xTimingSum2.get(did)+=aveTS*aveTS;
520  _xEntries.get(did)++;
521 
522  for (int i=0; i<digi.samples(); i++)
523  {
524  if (_ptype != fOffline) { // hidefed2crate
525  _cShapeCut_FEDSlot.fill(eid, (int)i, hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, i));
526  }
527  _cADC_SubdetPM.fill(did, digi[i].adc());
528  }
529 
530  // select based on local global
531  if (_ptype==fLocal)
532  {
533  int currentEvent = e.eventAuxiliary().id().event();
534  _cTimingvsEvent_SubdetPM.fill(did, currentEvent, aveTS);
535  _cSignalvsEvent_SubdetPM.fill(did, currentEvent, sumQ);
536  }
537  else
538  {
541  _cTimingvsBX_SubdetPM.fill(did, bx, aveTS);
542  _cSignalvsBX_SubdetPM.fill(did, bx, sumQ);
543  }
544  }
545 }
546 
548  edm::EventSetup const& es)
549 {
550  if (_ptype==fLocal)
551  return;
552  this->_dump();
553 
554  DQTask::endLuminosityBlock(lb, es);
555 }
556 
557 /* virtual */ bool LaserTask::_isApplicable(edm::Event const& e)
558 {
559  if (_ptype!=fOnline)
560  return true;
561  else
562  {
563  // fOnline mode
565  if (!e.getByToken(_tokuMN, cumn))
566  return false;
567 
568  // event type check first
569  uint8_t eventType = cumn->eventType();
570  if (eventType!=constants::EVENTTYPE_LASER)
571  return false;
572 
573  // check if this analysis task is of the right laser type
574  uint32_t laserType = cumn->valueUserWord(0);
575  if (laserType==_laserType) return true;
576  }
577 
578  return false;
579 }
580 
int adc(sample_type sample)
get the ADC sample (12 bits)
int samples() const
total number of samples in the digi
DetId detid() const
Get the detector id.
EventNumber_t event() const
Definition: EventID.h:41
hcaldqm::ContainerProf1D _cShapeCut_FEDSlot
Definition: LaserTask.h:91
T getUntrackedParameter(std::string const &, T const &) const
double aveTS(DIGI const &digi, double ped=0, int i=0, int j=3)
Definition: Utilities.h:108
hcaldqm::ContainerProf1D _cSignalvsEvent_SubdetPM
Definition: LaserTask.h:93
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *qy=new ValueQuantity(quantity::fN), int debug=0)
Definition: Container1D.cc:40
bool _isApplicable(edm::Event const &) override
Definition: LaserTask.cc:557
EventAuxiliary const & eventAuxiliary() const override
Definition: Event.h:83
double _lowHF
Definition: LaserTask.h:72
int const CRATE_VME_MIN
Definition: Constants.h:111
hcaldqm::ContainerProf2D _cTimingMean_FEDuTCA
Definition: LaserTask.h:108
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:49
hcaldqm::ContainerXXX< double > _xSignalSum2
Definition: LaserTask.h:77
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:508
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::ContainerXXX< int > _xEntries
Definition: LaserTask.h:78
edm::EDGetTokenT< QIE11DigiCollection > _tokHEP17
Definition: LaserTask.h:57
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
hcaldqm::Container1D _cTimingRMS_Subdet
Definition: LaserTask.h:86
int size() const
total number of samples in the digi
Definition: HBHEDataFrame.h:26
double _lowHBHE
Definition: LaserTask.h:69
uint32_t _laserType
Definition: LaserTask.h:73
UpdateFreq
Definition: DQTask.h:17
virtual void _dump()
Definition: LaserTask.cc:265
std::vector< HBHEDataFrame >::const_iterator const_iterator
hcaldqm::ContainerProf1D _cTimingvsEvent_SubdetPM
Definition: LaserTask.h:92
hcaldqm::ContainerProf2D _cSignalRMS_FEDVME
Definition: LaserTask.h:109
int bunchCrossing() const
Definition: EventBase.h:66
int const SPIGOT_MIN
Definition: Constants.h:136
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
const_iterator begin() const
void _resetMonitors(hcaldqm::UpdateFreq) override
Definition: LaserTask.cc:260
int const FIBER_VME_MIN
Definition: Constants.h:141
hcaldqm::ContainerXXX< double > _xSignalSum
Definition: LaserTask.h:76
hcaldqm::ContainerXXX< double > _xTimingSum
Definition: LaserTask.h:79
hcaldqm::Container2D _cMissing_depth
Definition: LaserTask.h:115
hcaldqm::Container2D _cMissing_FEDVME
Definition: LaserTask.h:116
void bookHistograms(fwlite::EventContainer &eventCont)
hcaldqm::ContainerProf2D _cSignalMean_depth
Definition: LaserTask.h:100
int const FIBERCH_MIN
Definition: Constants.h:151
edm::InputTag _tagHO
Definition: LaserTask.h:53
hcaldqm::Container1D _cADC_SubdetPM
Definition: LaserTask.h:88
hcaldqm::ContainerProf2D _cTimingRMS_FEDVME
Definition: LaserTask.h:111
hcaldqm::ContainerProf2D _cSignalMean_FEDVME
Definition: LaserTask.h:105
edm::InputTag _tagHF
Definition: LaserTask.h:54
hcaldqm::Container1D _cTimingMean_Subdet
Definition: LaserTask.h:85
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: LaserTask.cc:41
ProcessingType _ptype
Definition: DQModule.h:59
virtual void fill(uint32_t)
Definition: Container1D.cc:82
virtual void reset()
Definition: Container1D.cc:65
hcaldqm::ContainerProf2D _cTimingRMS_FEDuTCA
Definition: LaserTask.h:112
hcaldqm::ContainerProf2D _cSignalRMS_FEDuTCA
Definition: LaserTask.h:110
void dqmthrow(std::string const &msg) const
Definition: Logger.h:15
uint32_t valueUserWord(int iword) const
hcaldqm::filter::HashFilter _filter_uTCA
Definition: LaserTask.h:64
T sqrt(T t)
Definition: SSEVec.h:18
hcaldqm::ContainerProf2D _cTimingMean_FEDVME
Definition: LaserTask.h:107
int _nevents
Definition: LaserTask.h:68
int size() const
total number of samples in the digi
Definition: HODataFrame.h:27
uint8_t eventType() const
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:144
edm::EDGetTokenT< HODigiCollection > _tokHO
Definition: LaserTask.h:58
DetId detid() const
Get the detector id.
std::vector< HcalGenericDetId > allPrecisionId() const
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
Definition: LaserTask.cc:547
Logger _logger
Definition: DQModule.h:70
RunAuxiliary const & runAuxiliary() const override
Definition: Run.h:62
std::string _name
Definition: DQModule.h:57
HcalElectronicsMap const * _emap
Definition: DQTask.h:73
hcaldqm::ContainerProf1D _cSignalvsBX_SubdetPM
Definition: LaserTask.h:97
void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fEnergy), int debug=0) override
double _lowHO
Definition: LaserTask.h:71
int const CRATE_uTCA_MIN
Definition: Constants.h:116
hcaldqm::Container2D _cMissing_FEDuTCA
Definition: LaserTask.h:117
void _process(edm::Event const &, edm::EventSetup const &) override
Definition: LaserTask.cc:340
const_iterator end() const
hcaldqm::Container1D _cSignalMean_Subdet
Definition: LaserTask.h:83
edm::EDGetTokenT< HBHEDigiCollection > _tokHBHE
Definition: LaserTask.h:56
hcaldqm::ContainerProf1D _cSignalvsLS_SubdetPM
Definition: LaserTask.h:95
hcaldqm::ContainerProf1D _cTimingvsLS_SubdetPM
Definition: LaserTask.h:94
edm::InputTag _tagHBHE
Definition: LaserTask.h:51
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:99
edm::InputTag _tagHEP17
Definition: LaserTask.h:52
hcaldqm::ContainerProf2D _cSignalMean_FEDuTCA
Definition: LaserTask.h:106
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container1D.cc:957
uint8_t const EVENTTYPE_LASER
Definition: Constants.h:325
hcaldqm::ContainerProf2D _cTimingMean_depth
Definition: LaserTask.h:102
const T & get() const
Definition: EventSetup.h:55
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: LaserTask.h:63
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, int debug=0) override
edm::InputTag _taguMN
Definition: LaserTask.h:55
std::string const & label() const
Definition: InputTag.h:36
const_iterator end() const
EventID const & id() const
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:249
edm::ESHandle< HcalDbService > _dbService
Definition: DQTask.h:72
double _lowHEP17
Definition: LaserTask.h:70
edm::EDGetTokenT< HcalUMNioDigi > _tokuMN
Definition: LaserTask.h:60
hcaldqm::Container1D _cSignalRMS_Subdet
Definition: LaserTask.h:84
void fill(HcalDetId const &) override
Definition: Container2D.cc:59
const HcalElectronicsMap * getHcalMapping() const
std::string _subsystem
Definition: DQModule.h:64
hcaldqm::ContainerXXX< double > _xTimingSum2
Definition: LaserTask.h:80
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:91
virtual void initialize(FilterType ftype, HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:26
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:895
edm::EDGetTokenT< QIE10DigiCollection > _tokHF
Definition: LaserTask.h:59
int samples() const
total number of samples in the digi
hcaldqm::ContainerProf2D _cSignalRMS_depth
Definition: LaserTask.h:101
hcaldqm::filter::HashFilter _filter_VME
Definition: LaserTask.h:65
Readout chain identification for Hcal.
std::string const & instance() const
Definition: InputTag.h:37
hcaldqm::ContainerProf1D _cTimingvsBX_SubdetPM
Definition: LaserTask.h:96
RunNumber_t run() const
Definition: RunAuxiliary.h:41
LaserTask(edm::ParameterSet const &)
Definition: LaserTask.cc:7
int const SLOT_uTCA_MIN
Definition: Constants.h:123
const_iterator begin() const
Definition: Run.h:43
ib
Definition: cuy.py:660
hcaldqm::ContainerProf2D _cTimingRMS_depth
Definition: LaserTask.h:103
double sumQ(DIGI const &digi, double ped, int i=0, int j=3)
Definition: Utilities.h:122