CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
L1TEMTFEventInfoClient Class Reference

#include <L1TEMTFEventInfoClient.h>

Inheritance diagram for L1TEMTFEventInfoClient:
DQMEDHarvester edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns, edm::one::SharedResources > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 L1TEMTFEventInfoClient (const edm::ParameterSet &)
 Constructor. More...
 
virtual ~L1TEMTFEventInfoClient ()
 Destructor. More...
 
- Public Member Functions inherited from DQMEDHarvester
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
 DQMEDHarvester ()
 
virtual void dqmEndLuminosityBlock (DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &)
 
void endJob () final
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void endLuminosityBlockProduce (edm::LuminosityBlock &, edm::EventSetup const &) final
 
void endRun (edm::Run const &, edm::EventSetup const &) override
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) override
 
 ~DQMEDHarvester () override=default
 
- Public Member Functions inherited from edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns, edm::one::SharedResources >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInLumis () const final
 
bool hasAbilityToProduceInRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
 ~ProducerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Member Functions

void dqmEndJob (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) override
 end job More...
 
void dqmEndLuminosityBlock (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const edm::LuminosityBlock &, const edm::EventSetup &)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Private Member Functions

void book (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
 book histograms More...
 
void dumpContentMonitorElements (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
 dump the content of the monitoring elements defined in this module More...
 
void initialize ()
 private methods More...
 
void readQtResults (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
 read quality test results More...
 

Private Attributes

std::vector< int > m_deadDisable
 
std::vector< std::string > m_deadFolder
 
std::vector< std::string > m_deadLabel
 
std::vector< std::vector< unsigned int > > m_deadQtSummaryEnabled
 
std::vector< std::vector< std::string > > m_deadQualityTestHist
 
std::vector< std::vector< std::string > > m_deadQualityTestName
 
std::vector< edm::ParameterSetm_deadStrip
 
std::vector< std::string > m_disableDeadStrip
 
std::vector< std::string > m_disableHitObjects
 
std::vector< std::string > m_disableNoisyStrip
 
std::vector< std::string > m_disableTrackObjects
 
std::string m_histDir
 
std::vector< int > m_hitDisable
 
std::vector< std::string > m_hitFolder
 
std::vector< std::string > m_hitLabel
 
std::vector< edm::ParameterSetm_hitObjects
 
std::vector< std::vector< unsigned int > > m_hitQtSummaryEnabled
 
std::vector< std::vector< std::string > > m_hitQualityTestHist
 
std::vector< std::vector< std::string > > m_hitQualityTestName
 
MonitorElementm_meReportSummary
 a summary report More...
 
std::vector< MonitorElement * > m_meReportSummaryContent
 monitor elements to report content for all quality tests More...
 
MonitorElementm_meReportSummaryMap
 report summary map More...
 
MonitorElementm_meReportSummaryMap_chamberStrip
 
std::string m_monitorDir
 
std::vector< int > m_noisyDisable
 
std::vector< std::string > m_noisyFolder
 
std::vector< std::string > m_noisyLabel
 
std::vector< std::vector< unsigned int > > m_noisyQtSummaryEnabled
 
std::vector< std::vector< std::string > > m_noisyQualityTestHist
 
std::vector< std::vector< std::string > > m_noisyQualityTestName
 
std::vector< edm::ParameterSetm_noisyStrip
 
size_t m_nrDeadStrip
 number of L1 trigger dead strips More...
 
size_t m_nrHitObjects
 number of L1 trigger objects More...
 
size_t m_nrNoisyStrip
 number of L1 trigger noisy strips More...
 
size_t m_nrTrackObjects
 number of L1 trigger systems More...
 
Float_t m_reportSummary
 summary report More...
 
bool m_runInEndJob
 
bool m_runInEndLumi
 
bool m_runInEndRun
 
bool m_runInEventLoop
 
std::vector< int > m_summaryContent
 
Float_t m_summarySum
 
size_t m_totalNrQtSummaryEnabled
 
std::vector< int > m_trackDisable
 
std::vector< std::string > m_trackLabel
 
std::vector< std::string > m_trackLabelExt
 
std::vector< edm::ParameterSetm_trackObjects
 
std::vector< std::vector< unsigned int > > m_trackQtSummaryEnabled
 
std::vector< std::vector< std::string > > m_trackQualityTestHist
 
std::vector< std::vector< std::string > > m_trackQualityTestName
 
bool m_verbose
 input parameters More...
 

Additional Inherited Members

- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Attributes inherited from DQMEDHarvester
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Description: fill L1 report summary for trigger L1T and emulator L1TEMU DQM.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna

Re-designed and fully rewritten class. Original version and authors: see CVS history

Description: see header file.

Author
: Vasile Mihai Ghete - HEPHY Vienna

Definition at line 29 of file L1TEMTFEventInfoClient.h.

Constructor & Destructor Documentation

L1TEMTFEventInfoClient::L1TEMTFEventInfoClient ( const edm::ParameterSet parSet)

Constructor.

Definition at line 17 of file L1TEMTFEventInfoClient.cc.

References initialize().

17  :
18  m_verbose(parSet.getUntrackedParameter<bool>("verbose", false)),
19  m_monitorDir(parSet.getUntrackedParameter<std::string>("monitorDir", "")),
20  m_histDir(parSet.getUntrackedParameter<std::string>("histDir", "")),
21  m_runInEventLoop(parSet.getUntrackedParameter<bool>("runInEventLoop", false)),
22  m_runInEndLumi(parSet.getUntrackedParameter<bool>("runInEndLumi", false)),
23  m_runInEndRun(parSet.getUntrackedParameter<bool>("runInEndRun", false)),
24  m_runInEndJob(parSet.getUntrackedParameter<bool>("runInEndJob", false)),
25  m_trackObjects(parSet.getParameter<std::vector<edm::ParameterSet> >("TrackObjects")),
26  m_hitObjects(parSet.getParameter<std::vector<edm::ParameterSet> >("HitObjects")),
27  m_disableTrackObjects(parSet.getParameter<std::vector<std::string> >("DisableTrackObjects")),
28  m_disableHitObjects(parSet.getParameter<std::vector<std::string> >("DisableHitObjects")),
29  m_noisyStrip(parSet.getParameter<std::vector<edm::ParameterSet> >("NoisyStrip")),
30  m_deadStrip(parSet.getParameter<std::vector<edm::ParameterSet> >("DeadStrip")),
31  m_disableNoisyStrip(parSet.getParameter<std::vector<std::string> >("DisableNoisyStrip")),
32  m_disableDeadStrip(parSet.getParameter<std::vector<std::string> >("DisableDeadStrip")),
34  m_nrHitObjects(0),
35  m_nrNoisyStrip(0),
36  m_nrDeadStrip(0),
38 
39  initialize();
40 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::string > m_disableDeadStrip
std::vector< edm::ParameterSet > m_deadStrip
std::vector< std::string > m_disableTrackObjects
bool m_verbose
input parameters
size_t m_nrHitObjects
number of L1 trigger objects
void initialize()
private methods
std::vector< edm::ParameterSet > m_hitObjects
size_t m_nrDeadStrip
number of L1 trigger dead strips
std::vector< std::string > m_disableHitObjects
std::vector< edm::ParameterSet > m_trackObjects
std::vector< std::string > m_disableNoisyStrip
size_t m_nrTrackObjects
number of L1 trigger systems
size_t m_nrNoisyStrip
number of L1 trigger noisy strips
std::vector< edm::ParameterSet > m_noisyStrip
L1TEMTFEventInfoClient::~L1TEMTFEventInfoClient ( )
virtual

Destructor.

Definition at line 43 of file L1TEMTFEventInfoClient.cc.

43  {
44  //empty
45 }

Member Function Documentation

void L1TEMTFEventInfoClient::book ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter 
)
private

book histograms

Definition at line 458 of file L1TEMTFEventInfoClient.cc.

References DQMStore::IBooker::book2D(), DQMStore::IBooker::bookFloat(), gather_cfg::cout, dqm::qstatus::DISABLED, MonitorElement::Fill(), DQMStore::IGetter::get(), MonitorElement::getName(), m_deadLabel, m_deadQualityTestName, m_hitLabel, m_hitQualityTestName, m_meReportSummary, m_meReportSummaryContent, m_meReportSummaryMap, m_meReportSummaryMap_chamberStrip, m_monitorDir, m_noisyLabel, m_noisyQualityTestName, m_nrDeadStrip, m_nrHitObjects, m_nrNoisyStrip, m_nrTrackObjects, m_summaryContent, m_trackLabel, m_trackQualityTestName, m_verbose, SiStripPI::max, DQMStore::IGetter::removeElement(), python.rootplot.root2matplotlib::replace(), MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), DQMStore::IBooker::setCurrentFolder(), MonitorElement::setTitle(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by dqmEndJob(), and dqmEndLuminosityBlock().

458  {
459 
460  if (m_verbose) std::cout << "\nInside void L1TEMTFEventInfoClient::book" << std::endl;
461  std::string dirEventInfo = m_monitorDir + "/EventInfo";
462  if (m_verbose) std::cout << dirEventInfo << std::endl;
463 
464  ibooker.setCurrentFolder(dirEventInfo);
465  if (m_verbose) std::cout << "Ran ibooker.setCurrentFolder(dirEventInfo;" << std::endl;
466 
467  // remove m_meReportSummary if it exists
468  if ((m_meReportSummary = igetter.get(dirEventInfo + "/reportSummary"))) {
469  if (m_verbose) std::cout << "Removing m_meReportSummary" << std::endl;
471  if (m_verbose) std::cout << "Ran igetter.removeElement(m_meReportSummary->getName());" << std::endl;
472  }
473 
474  // ...and book it again
475  m_meReportSummary = ibooker.bookFloat("reportSummary");
476  if (m_verbose) std::cout << "Ran m_meReportSummary = ibooker.bookFloat" << std::endl;
477 
478  // initialize reportSummary to 1
479 
480  if (m_meReportSummary) {
481  if (m_verbose) std::cout << "Initializing reportSummary to 1" << std::endl;
483  if (m_verbose) std::cout << "Ran m_meReportSummary->Fill(1);" << std::endl;
484  }
485 
486  // define float histograms for reportSummaryContents (one histogram per quality test),
487  // initialize them to zero
488  // initialize also m_summaryContent to dqm::qstatus::DISABLED
489 
490  ibooker.setCurrentFolder(dirEventInfo + "/reportSummaryContents");
491  if (m_verbose) std::cout << "Ran ibooker.setCurrentFolder(dirEventInfo" << std::endl;
492  // general counters:
493  // iAllQTest: all quality tests for all systems and objects
494  // iAllMon: all monitored systems and objects
495  int iAllQTest = 0;
496  int iAllMon = 0;
497 
498  if (m_verbose) std::cout << "m_nrTrackObjects = " << m_nrTrackObjects << std::endl;
499  for (unsigned int iMon = 0; iMon < m_nrTrackObjects; ++iMon) {
500  if (m_verbose) std::cout << " * iMon = " << iMon << std::endl;
501 
503  if (m_verbose) std::cout << "Ran m_summaryContent.push_back(dqm::qstatus::DISABLED);" << std::endl;
504 
505  const std::vector<std::string>& trackObjQtName = m_trackQualityTestName[iMon];
506  if (m_verbose) std::cout << "Ran const std::vector<std::string>& trackObjQtName = m_trackQualityTestName[iMon];" << std::endl;
507 
508  for (const auto & itQtName : trackObjQtName) {
509 
510  if (m_verbose) std::cout << " - m_monitorDir = " << m_monitorDir << ", m_trackLabel[iMon] = " << m_trackLabel[iMon]
511  << ", (itQtName) = " << (itQtName) << std::endl;
512 
513  // Avoid error in ibooker.bookFloat(hStr))
514  std::string m_mon_mod = m_monitorDir;
515  std::replace( m_mon_mod.begin(), m_mon_mod.end(), '/', '_' );
516 
517  const std::string hStr = m_mon_mod + "_L1Sys_" +m_trackLabel[iMon] + "_" + (itQtName);
518  if (m_verbose) std::cout << " - " << hStr << std::endl;
519 
520  m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));
521  if (m_verbose) std::cout << " - Ran m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));" << std::endl;
522  m_meReportSummaryContent[iAllQTest]->Fill(0.);
523  if (m_verbose) std::cout << " - Ran m_meReportSummaryContent[iAllQTest]->Fill(0.);" << std::endl;
524 
525  iAllQTest++;
526  }
527 
528  iAllMon++;
529  }
530 
531 
532  for (unsigned int iMon = 0; iMon < m_nrHitObjects; ++iMon) {
533  if (m_verbose) std::cout << " * iMon = " << iMon << std::endl;
534 
536 
537  const std::vector<std::string>& objQtName =
538  m_hitQualityTestName[iMon];
539 
540  for (const auto & itQtName : objQtName) {
541 
542  // Avoid error in ibooker.bookFloat(hStr))
543  std::string m_mon_mod = m_monitorDir;
544  std::replace( m_mon_mod.begin(), m_mon_mod.end(), '/', '_' );
545 
546  const std::string hStr = m_mon_mod + "_L1Obj_" + m_hitLabel[iMon] + "_" + (itQtName);
547  if (m_verbose) std::cout << " - " << hStr << std::endl;
548 
549  m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));
550  if (m_verbose) std::cout << " - Ran m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));" << std::endl;
551  m_meReportSummaryContent[iAllQTest]->Fill(0.);
552  if (m_verbose) std::cout << " - Ran m_meReportSummaryContent[iAllQTest]->Fill(0.);" << std::endl;
553 
554  iAllQTest++;
555  }
556 
557  iAllMon++;
558 
559  }
560 
561  // for Noisy Strips ====================================================================
562  for (unsigned int iMon = 0; iMon < m_nrNoisyStrip; ++iMon) {
563 
565 
566  const std::vector<std::string>& objQtName =
568 
569  for (const auto & itQtName : objQtName) {
570 
571  // Avoid error in ibooker.bookFloat(hStr))
572  std::string m_mon_mod = m_monitorDir;
573  std::replace( m_mon_mod.begin(), m_mon_mod.end(), '/', '_' );
574 
575  const std::string hStr = m_mon_mod + "_L1Obj_" + m_noisyLabel[iMon] + "_" + (itQtName);
576  if (m_verbose) std::cout << " - " << hStr << std::endl;
577 
578  m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));
579  m_meReportSummaryContent[iAllQTest]->Fill(0.);
580 
581  iAllQTest++;
582  }
583  iAllMon++;
584  }
585  // for Dead Strips ====================================================================
586  for (unsigned int iMon = 0; iMon < m_nrDeadStrip; ++iMon) {
587 
589 
590  const std::vector<std::string>& objQtName =
591  m_deadQualityTestName[iMon];
592 
593  for (const auto & itQtName : objQtName) {
594 
595  // Avoid error in ibooker.bookFloat(hStr))
596  std::string m_mon_mod = m_monitorDir;
597  std::replace( m_mon_mod.begin(), m_mon_mod.end(), '/', '_' );
598 
599  const std::string hStr = m_mon_mod + "_L1Obj_" + m_deadLabel[iMon] + "_" + (itQtName);
600  if (m_verbose) std::cout << " - " << hStr << std::endl;
601 
602  m_meReportSummaryContent.push_back(ibooker.bookFloat(hStr));
603  m_meReportSummaryContent[iAllQTest]->Fill(0.);
604 
605  iAllQTest++;
606  }
607  iAllMon++;
608  }
609 
610  if (m_verbose) std::cout << "Setting current folder to " << dirEventInfo << std::endl;
611  ibooker.setCurrentFolder(dirEventInfo);
612  if (m_verbose) std::cout << "Ran ibooker.setCurrentFolder(dirEventInfo);" << std::endl;
613 
614  // Should this be a "==" ? - AWB 03.12.16
615  if ((m_meReportSummaryMap = igetter.get(dirEventInfo + "/reportSummaryMap"))) {
617  }
618 
619  // define a histogram with two bins on X and maximum of m_nrTrackObjects, m_nrHitObjects on Y
620  int nBinsY = std::max(m_nrTrackObjects, m_nrHitObjects);
621  int nBinsYStrip = std::max(m_nrNoisyStrip, m_nrDeadStrip);
622 
623  m_meReportSummaryMap = ibooker.book2D("reportSummaryMap",
624  "reportSummaryMap", 2, 1, 3, nBinsY, 1, nBinsY + 1);
625  m_meReportSummaryMap_chamberStrip = ibooker.book2D("reportSummaryMap_chamberStrip",
626  "reportSummaryMap_chamberStrip", 2, 1, 3, nBinsYStrip, 1, nBinsYStrip + 1);
627 
628  if (m_monitorDir == "L1TEMU") {
630  "L1TEMU: L1 Emulator vs Data Report Summary Map");
631 
632  } else if (m_monitorDir == "L1T") {
634  "L1T: L1 Trigger Data Report Summary Map");
635  } else if (m_monitorDir == "L1T2016") {
637  "L1T2016: L1 Trigger Data Report Summary Map");
638  } else {
639  // do nothing
640  }
641 
644 
645  m_meReportSummaryMap->setBinLabel(1, "Noisy Check", 1);
646  m_meReportSummaryMap->setBinLabel(2, "Dead Check", 1);
647 
648  m_meReportSummaryMap_chamberStrip->setBinLabel(1, "Noisy Check", 1);
649  m_meReportSummaryMap_chamberStrip->setBinLabel(2, "Dead Check", 1);
650 
651 // for (int iBin = 0; iBin < nBinsY; ++iBin) {
652 // m_meReportSummaryMap->setBinLabel(iBin + 1, " ", 2); }
653 
654  m_meReportSummaryMap->setBinLabel(1, "Hit BX", 2);
655  m_meReportSummaryMap->setBinLabel(2, "Track BX", 2);
656  m_meReportSummaryMap->setBinLabel(3, "Track Phi", 2);
657 
658  const std::vector<std::string> suffix_name = {"-4/2", "-4/1", "-3/2", "-3/1", "-2/2", "-2/1",
659  "-1/3", "-1/2", "-1/1b", "-1/1a",
660  "+1/1a", "+1/1b", "+1/2", "+1/3",
661  "+2/1", "+2/2", "+3/1", "+3/2", "+4/1", "+4/2"};
662  for (int iBin = 0; iBin < nBinsYStrip; ++iBin) {
663  m_meReportSummaryMap_chamberStrip->setBinLabel(iBin + 1, "ChamberStrip " + suffix_name[iBin], 2);
664  }
665 }
std::vector< std::vector< std::string > > m_trackQualityTestName
std::vector< MonitorElement * > m_meReportSummaryContent
monitor elements to report content for all quality tests
bool m_verbose
input parameters
MonitorElement * get(const std::string &path)
Definition: DQMStore.cc:307
std::vector< std::string > m_noisyLabel
size_t m_nrHitObjects
number of L1 trigger objects
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
def replace(string, replacements)
const std::string & getName() const
get name of ME
std::vector< std::string > m_deadLabel
std::vector< std::vector< std::string > > m_hitQualityTestName
void Fill(long long x)
MonitorElement * m_meReportSummary
a summary report
std::vector< std::vector< std::string > > m_noisyQualityTestName
static const int DISABLED
size_t m_nrDeadStrip
number of L1 trigger dead strips
void setTitle(const std::string &title)
set (ie. change) histogram/profile title
MonitorElement * m_meReportSummaryMap_chamberStrip
std::vector< std::string > m_trackLabel
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:136
MonitorElement * m_meReportSummaryMap
report summary map
std::vector< std::vector< std::string > > m_deadQualityTestName
std::vector< std::string > m_hitLabel
std::vector< int > m_summaryContent
MonitorElement * bookFloat(Args &&...args)
Definition: DQMStore.h:112
size_t m_nrTrackObjects
number of L1 trigger systems
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void removeElement(Args &&...args)
Definition: DQMStore.h:310
size_t m_nrNoisyStrip
number of L1 trigger noisy strips
void L1TEMTFEventInfoClient::dqmEndJob ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter 
)
overrideprotectedvirtual

end job

Implements DQMEDHarvester.

Definition at line 367 of file L1TEMTFEventInfoClient.cc.

References book(), gather_cfg::cout, dumpContentMonitorElements(), m_verbose, and readQtResults().

367  {
368 
369  if (m_verbose) std::cout << "\nInside void L1TEMTFEventInfoClient::dqmEndJob" << std::endl;
370  book(ibooker, igetter);
371 
372  readQtResults(ibooker, igetter);
373 
374  if (m_verbose) {
375  std::cout << "\n L1TEMTFEventInfoClient::endRun\n" << std::endl;
376  dumpContentMonitorElements(ibooker, igetter);
377  }
378 }
void readQtResults(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
read quality test results
void book(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
book histograms
bool m_verbose
input parameters
void dumpContentMonitorElements(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
dump the content of the monitoring elements defined in this module
void L1TEMTFEventInfoClient::dqmEndLuminosityBlock ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter,
const edm::LuminosityBlock lumiSeg,
const edm::EventSetup evSetup 
)
protected

Definition at line 350 of file L1TEMTFEventInfoClient.cc.

References book(), gather_cfg::cout, dumpContentMonitorElements(), m_runInEndLumi, m_verbose, and readQtResults().

350  {
351 
352  if (m_verbose) std::cout << "\nInside void L1TEMTFEventInfoClient::dqmEndLuminosityBlock" << std::endl;
353  if (m_runInEndLumi) {
354 
355  book(ibooker, igetter);
356  readQtResults(ibooker, igetter);
357 
358  if (m_verbose) {
359  std::cout << "\n L1TEMTFEventInfoClient::endLuminosityBlock\n" << std::endl;
360  dumpContentMonitorElements(ibooker, igetter);
361  }
362 
363  }
364 }
void readQtResults(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
read quality test results
void book(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
book histograms
bool m_verbose
input parameters
void dumpContentMonitorElements(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
dump the content of the monitoring elements defined in this module
void L1TEMTFEventInfoClient::dumpContentMonitorElements ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter 
)
private

dump the content of the monitoring elements defined in this module

Definition at line 380 of file L1TEMTFEventInfoClient.cc.

References gather_cfg::cout, DQMStore::IGetter::get(), MonitorElement::getName(), MonitorElement::getTH2F(), create_public_lumi_plots::hist, m_hitDisable, m_hitLabel, m_meReportSummaryContent, m_meReportSummaryMap, m_monitorDir, m_nrHitObjects, m_nrTrackObjects, m_summaryContent, m_trackDisable, m_trackLabel, and m_verbose.

Referenced by dqmEndJob(), and dqmEndLuminosityBlock().

380  {
381 
382  if (m_verbose) std::cout << "\nSummary report " << std::endl;
383 
384  // summary content
385 
387 
388  if (m_verbose) std::cout << "\nSummary content per system and object as filled in histogram\n "
389  << m_meReportSummaryMap->getName() << std::endl;
390 
391  if (!me) {
392 
393  if (m_verbose) std::cout << "\nNo histogram " << m_meReportSummaryMap->getName()
394  << "\nNo summary content per system and object as filled in histogram.\n " << std::endl;
395  return;
396  }
397 
398  TH2F* hist = me->getTH2F();
399 
400  const int nBinsX = hist->GetNbinsX();
401  const int nBinsY = hist->GetNbinsY();
402  if (m_verbose) std::cout << nBinsX << " " << nBinsY;
403 
404  std::vector<std::vector<int> > meReportSummaryMap(nBinsX, std::vector<int>(
405  nBinsY));
406 
407 // for (int iBinX = 0; iBinX < nBinsX; iBinX++) {
408 // for (int iBinY = 0; iBinY < nBinsY; iBinY++) {
409 // meReportSummaryMap[iBinX][iBinY]
410 // = static_cast<int>(me->GetBinContent(iBinX + 1, iBinY + 1));
411 // }
412 // }
413 
414  if (m_verbose) std::cout << "\nL1 systems: " << m_nrTrackObjects << " systems included\n"
415  << "\n Summary content size: " << (m_summaryContent.size()) << std::endl;
416 
417  for (unsigned int iTrackObj = 0; iTrackObj < m_nrTrackObjects; ++iTrackObj) {
418 
419  if (m_verbose) std::cout << std::setw(10) << m_trackLabel[iTrackObj] << std::setw(10)
420  // << m_trackLabelExt[iTrackObj] << " \t" << m_trackDisable[iTrackObj]
421  << m_trackDisable[iTrackObj]
422  << " \t" << std::setw(25) << " m_summaryContent["
423  << std::setw(2) << iTrackObj << "] = " << meReportSummaryMap[0][iTrackObj] << std::endl;
424  }
425 
426  if (m_verbose) std::cout << "\n L1 trigger objects: " << m_nrHitObjects
427  << " objects included\n" << std::endl;
428 
429  for (unsigned int iMon = m_nrTrackObjects; iMon < m_nrTrackObjects
430  + m_nrHitObjects; ++iMon) {
431 
432  if (m_verbose) std::cout << std::setw(20) << m_hitLabel[iMon - m_nrTrackObjects]
433  << " \t" << m_hitDisable[iMon - m_nrTrackObjects] << " \t"
434  << std::setw(25) << " m_summaryContent[" << std::setw(2)
435  << iMon << "] = \t" << m_summaryContent[iMon] << std::endl;
436  }
437 
438  if (m_verbose) std::cout << std::endl;
439 
440  // quality tests
441 
442  if (m_verbose) std::cout << "\nQuality test results as filled in " << "\n "
443  << m_monitorDir << "/EventInfo/reportSummaryContents\n"
444  << "\n Total number of quality tests: "
445  << (m_meReportSummaryContent.size()) << "\n" << std::endl;
446 
447  for (const auto itME : m_meReportSummaryContent) {
448  if (m_verbose) std::cout << std::setw(50) << itME->getName() << " \t"
449  << std::setw(25) << itME->getFloatValue() << std::endl;
450  }
451 
452  if (m_verbose) std::cout << std::endl;
453 
454 }
std::vector< MonitorElement * > m_meReportSummaryContent
monitor elements to report content for all quality tests
bool m_verbose
input parameters
MonitorElement * get(const std::string &path)
Definition: DQMStore.cc:307
size_t m_nrHitObjects
number of L1 trigger objects
const std::string & getName() const
get name of ME
TH2F * getTH2F() const
std::vector< std::string > m_trackLabel
std::vector< int > m_trackDisable
MonitorElement * m_meReportSummaryMap
report summary map
std::vector< std::string > m_hitLabel
std::vector< int > m_summaryContent
size_t m_nrTrackObjects
number of L1 trigger systems
std::vector< int > m_hitDisable
void L1TEMTFEventInfoClient::initialize ( )
private

private methods

initialize properly all elements

Definition at line 47 of file L1TEMTFEventInfoClient.cc.

References gather_cfg::cout, m_deadDisable, m_deadLabel, m_deadQtSummaryEnabled, m_deadQualityTestHist, m_deadQualityTestName, m_deadStrip, m_disableDeadStrip, m_disableHitObjects, m_disableNoisyStrip, m_disableTrackObjects, m_hitDisable, m_hitLabel, m_hitObjects, m_hitQtSummaryEnabled, m_hitQualityTestHist, m_hitQualityTestName, m_meReportSummaryContent, m_monitorDir, m_noisyDisable, m_noisyLabel, m_noisyQtSummaryEnabled, m_noisyQualityTestHist, m_noisyQualityTestName, m_noisyStrip, m_nrDeadStrip, m_nrHitObjects, m_nrNoisyStrip, m_nrTrackObjects, m_summaryContent, m_totalNrQtSummaryEnabled, m_trackDisable, m_trackLabel, m_trackObjects, m_trackQtSummaryEnabled, m_trackQualityTestHist, m_trackQualityTestName, m_verbose, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by L1TEMTFEventInfoClient().

47  {
48 
49  if (m_verbose) std::cout << "\nMonitor directory = " << m_monitorDir << std::endl;
50 
51  // L1 systems
52 
54 
56  // m_trackLabelExt.reserve(m_nrTrackObjects); // Not needed? - AWB 05.12.16
58 
59  // on average five quality test per system - just a best guess
60  m_trackQualityTestName.reserve(5*m_nrTrackObjects); // Not needed? - AWB 05.12.16
61  m_trackQualityTestHist.reserve(5*m_nrTrackObjects); // Not needed? - AWB 05.12.16
62  m_trackQtSummaryEnabled.reserve(5*m_nrTrackObjects); // Not needed? - AWB 05.12.16
63 
64  int indexSys = 0;
65 
66  int totalNrQualityTests = 0;
67 
68  for (const auto & itTrack : m_trackObjects) {
69 
70  m_trackLabel.push_back(itTrack.getParameter<std::string>(
71  "SystemLabel"));
72 
73  // m_trackLabelExt.push_back(itTrack.getParameter<std::string>( // Not needed? - AWB 05.12.16
74  // "HwValLabel"));
75 
76  m_trackDisable.push_back(itTrack.getParameter<unsigned int>(
77  "SystemDisable"));
78  // check the additional disable flag from m_disableTrackObjects
79  for (const auto & itSys : m_disableTrackObjects) {
80 
81  if (itSys == m_trackLabel[indexSys]) {
82  m_trackDisable[indexSys] = 1;
83 
84  }
85  }
86 
87  std::vector < edm::ParameterSet > qTests = itTrack.getParameter<
88  std::vector<edm::ParameterSet> > ("QualityTests");
89  size_t qtPerSystem = qTests.size();
90 
91  std::vector < std::string > qtNames;
92  qtNames.reserve(qtPerSystem);
93 
94  std::vector < std::string > qtFullPathHists;
95  qtFullPathHists.reserve(qtPerSystem);
96 
97  std::vector<unsigned int> qtSumEnabled;
98  qtSumEnabled.reserve(qtPerSystem);
99 
100  if (m_verbose) std::cout << "\nLooping over track quality tests" << std::endl;
101  for (const auto & itQT : qTests) {
102 
103  totalNrQualityTests++;
104 
105  qtNames.push_back(
106  itQT.getParameter<std::string> ("QualityTestName"));
107 
108  // qtFullPathHists.push_back( m_histDir + "/" + itQT.getParameter<std::string> ("QualityTestHist"));
109  qtFullPathHists.push_back( itQT.getParameter<std::string> ("QualityTestHist"));
110  if (m_verbose) std::cout << qtFullPathHists.back() << std::endl;
111 
112  unsigned int qtEnabled = itQT.getParameter<unsigned int> (
113  "QualityTestSummaryEnabled");
114 
115  qtSumEnabled.push_back(qtEnabled);
116 
117  if (qtEnabled) {
119  }
120  }
121 
122  m_trackQualityTestName.push_back(qtNames);
123  m_trackQualityTestHist.push_back(qtFullPathHists);
124  m_trackQtSummaryEnabled.push_back(qtSumEnabled);
125 
126  indexSys++;
127 
128  }
129 
130  // L1 objects
131 
132  //
133  m_nrHitObjects = m_hitObjects.size();
134 
135  m_hitLabel.reserve(m_nrHitObjects);
136  m_hitDisable.reserve(m_nrHitObjects);
137 
138  // on average five quality test per object - just a best guess
142 
143  int indexObj = 0;
144 
145  for (const auto & itObject : m_hitObjects) {
146 
147  m_hitLabel.push_back(itObject.getParameter<std::string>(
148  "HitLabel"));
149 
150  m_hitDisable.push_back(itObject.getParameter<unsigned int>(
151  "HitDisable"));
152  // check the additional disable flag from m_disableHitObjects
153  for (const auto & itObj : m_disableHitObjects) {
154 
155  if (itObj == m_hitLabel[indexObj]) {
156  m_hitDisable[indexObj] = 1;
157 
158  }
159  }
160 
161  std::vector < edm::ParameterSet > qTests = itObject.getParameter<
162  std::vector<edm::ParameterSet> > ("QualityTests");
163  size_t qtPerObject = qTests.size();
164 
165  std::vector < std::string > qtNames;
166  qtNames.reserve(qtPerObject);
167 
168  std::vector < std::string > qtFullPathHists;
169  qtFullPathHists.reserve(qtPerObject);
170 
171  std::vector<unsigned int> qtSumEnabled;
172  qtSumEnabled.reserve(qtPerObject);
173 
174  if (m_verbose) std::cout << "\nLooping over hit quality tests" << std::endl;
175  for (const auto & itQT : qTests) {
176 
177  totalNrQualityTests++;
178 
179  qtNames.push_back(
180  itQT.getParameter<std::string> ("QualityTestName"));
181 
182  // qtFullPathHists.push_back( m_histDir + "/" + itQT.getParameter<std::string> ("QualityTestHist") );
183  qtFullPathHists.push_back( itQT.getParameter<std::string> ("QualityTestHist") );
184  if (m_verbose) std::cout << qtFullPathHists.back() << std::endl;
185 
186  unsigned int qtEnabled = itQT.getParameter<unsigned int> (
187  "QualityTestSummaryEnabled");
188 
189  qtSumEnabled.push_back(qtEnabled);
190 
191  if (qtEnabled) {
193  }
194  }
195 
196  m_hitQualityTestName.push_back(qtNames);
197  m_hitQualityTestHist.push_back(qtFullPathHists);
198  m_hitQtSummaryEnabled.push_back(qtSumEnabled);
199 
200  indexObj++;
201 
202  }
203 
204 
205  // L1 Strip Noisy=========================================================================================
206 
207  m_nrNoisyStrip = m_noisyStrip.size();
208 
209  m_noisyLabel.reserve(m_nrNoisyStrip);
211 
212  // on average 20 quality tests per system
213  m_noisyQualityTestName.reserve(20*m_nrNoisyStrip); // Not needed? - AWB 05.12.16
214  m_noisyQualityTestHist.reserve(20*m_nrNoisyStrip); // Not needed? - AWB 05.12.16
215  m_noisyQtSummaryEnabled.reserve(20*m_nrNoisyStrip); // Not needed? - AWB 05.12.16
216 
217  int indexNois = 0;
218 
219  for (const auto & itNoisy : m_noisyStrip) {
220 
221  m_noisyLabel.push_back(itNoisy.getParameter<std::string>(
222  "NoisyLabel"));
223 
224  m_noisyDisable.push_back(itNoisy.getParameter<unsigned int>(
225  "NoisyDisable"));
226  // check the additional disable flag from m_disableNoisyObjects
227  for (const auto & itNois : m_disableNoisyStrip) {
228 
229  if (itNois == m_noisyLabel[indexNois]) {
230  m_noisyDisable[indexNois] = 1;
231  }
232  }
233 
234  std::vector < edm::ParameterSet > qTests = itNoisy.getParameter<
235  std::vector<edm::ParameterSet> > ("QualityTests");
236  size_t qtPerNoisy = qTests.size();
237 
238  std::vector < std::string > qtNames;
239  qtNames.reserve(qtPerNoisy);
240 
241  std::vector < std::string > qtFullPathHists;
242  qtFullPathHists.reserve(qtPerNoisy);
243 
244  std::vector<unsigned int> qtSumEnabled;
245  qtSumEnabled.reserve(qtPerNoisy);
246 
247  if (m_verbose) std::cout << "\nLooping over noisy quality tests" << std::endl;
248  for (const auto & itQT : qTests) {
249 
250  totalNrQualityTests++;
251 
252  qtNames.push_back(
253  itQT.getParameter<std::string> ("QualityTestName"));
254 
255  qtFullPathHists.push_back( itQT.getParameter<std::string> ("QualityTestHist"));
256  if (m_verbose) std::cout << qtFullPathHists.back() << std::endl;
257 
258  unsigned int qtEnabled = itQT.getParameter<unsigned int> (
259  "QualityTestSummaryEnabled");
260 
261  qtSumEnabled.push_back(qtEnabled);
262 
263  if (qtEnabled) {
265  }
266  }
267 
268  m_noisyQualityTestName.push_back(qtNames);
269  m_noisyQualityTestHist.push_back(qtFullPathHists);
270  m_noisyQtSummaryEnabled.push_back(qtSumEnabled);
271 
272  indexNois++;
273  }
274 
275  // L1 Strip Dead=========================================================================================
276 
277  m_nrDeadStrip = m_deadStrip.size();
278 
279  m_deadLabel.reserve(m_nrDeadStrip);
280  m_deadDisable.reserve(m_nrDeadStrip);
281 
282  // on average 20 quality tests per system
283  m_deadQualityTestName.reserve(20*m_nrDeadStrip); // Not needed? - AWB 05.12.16
284  m_deadQualityTestHist.reserve(20*m_nrDeadStrip); // Not needed? - AWB 05.12.16
285  m_deadQtSummaryEnabled.reserve(20*m_nrDeadStrip); // Not needed? - AWB 05.12.16
286 
287  int indexDed = 0;
288 
289  for (const auto & itDead : m_deadStrip) {
290 
291  m_deadLabel.push_back(itDead.getParameter<std::string>(
292  "DeadLabel"));
293 
294  m_deadDisable.push_back(itDead.getParameter<unsigned int>(
295  "DeadDisable"));
296  // check the additional disable flag from m_disableDeadObjects
297  for (const auto & itDed : m_disableDeadStrip) {
298 
299  if (itDed == m_deadLabel[indexDed]) {
300  m_deadDisable[indexDed] = 1;
301  }
302  }
303 
304  std::vector < edm::ParameterSet > qTests = itDead.getParameter<
305  std::vector<edm::ParameterSet> > ("QualityTests");
306  size_t qtPerDead = qTests.size();
307 
308  std::vector < std::string > qtNames;
309  qtNames.reserve(qtPerDead);
310 
311  std::vector < std::string > qtFullPathHists;
312  qtFullPathHists.reserve(qtPerDead);
313 
314  std::vector<unsigned int> qtSumEnabled;
315  qtSumEnabled.reserve(qtPerDead);
316 
317  if (m_verbose) std::cout << "\nLooping over dead quality tests" << std::endl;
318  for (const auto & itQT : qTests) {
319 
320  totalNrQualityTests++;
321 
322  qtNames.push_back(
323  itQT.getParameter<std::string> ("QualityTestName"));
324 
325  qtFullPathHists.push_back( itQT.getParameter<std::string> ("QualityTestHist"));
326  if (m_verbose) std::cout << qtFullPathHists.back() << std::endl;
327 
328  unsigned int qtEnabled = itQT.getParameter<unsigned int> (
329  "QualityTestSummaryEnabled");
330 
331  qtSumEnabled.push_back(qtEnabled);
332 
333  if (qtEnabled) {
335  }
336  }
337 
338  m_deadQualityTestName.push_back(qtNames);
339  m_deadQualityTestHist.push_back(qtFullPathHists);
340  m_deadQtSummaryEnabled.push_back(qtSumEnabled);
341 
342  indexDed++;
343  }
344 
346  m_meReportSummaryContent.reserve(totalNrQualityTests);
347 
348 }
std::vector< std::vector< std::string > > m_trackQualityTestName
std::vector< std::string > m_disableDeadStrip
std::vector< edm::ParameterSet > m_deadStrip
std::vector< std::string > m_disableTrackObjects
std::vector< MonitorElement * > m_meReportSummaryContent
monitor elements to report content for all quality tests
bool m_verbose
input parameters
std::vector< std::string > m_noisyLabel
size_t m_nrHitObjects
number of L1 trigger objects
std::vector< std::vector< std::string > > m_deadQualityTestHist
std::vector< std::vector< unsigned int > > m_deadQtSummaryEnabled
std::vector< int > m_deadDisable
std::vector< std::string > m_deadLabel
std::vector< std::vector< std::string > > m_hitQualityTestName
std::vector< edm::ParameterSet > m_hitObjects
std::vector< std::vector< std::string > > m_noisyQualityTestName
std::vector< std::vector< unsigned int > > m_trackQtSummaryEnabled
std::vector< std::vector< std::string > > m_trackQualityTestHist
std::vector< std::vector< std::string > > m_hitQualityTestHist
size_t m_nrDeadStrip
number of L1 trigger dead strips
std::vector< std::vector< unsigned int > > m_hitQtSummaryEnabled
std::vector< std::string > m_disableHitObjects
std::vector< std::string > m_trackLabel
std::vector< int > m_trackDisable
std::vector< std::vector< std::string > > m_noisyQualityTestHist
std::vector< std::vector< std::string > > m_deadQualityTestName
std::vector< std::string > m_hitLabel
std::vector< edm::ParameterSet > m_trackObjects
std::vector< std::string > m_disableNoisyStrip
std::vector< int > m_noisyDisable
std::vector< int > m_summaryContent
std::vector< std::vector< unsigned int > > m_noisyQtSummaryEnabled
size_t m_nrTrackObjects
number of L1 trigger systems
std::vector< int > m_hitDisable
size_t m_nrNoisyStrip
number of L1 trigger noisy strips
std::vector< edm::ParameterSet > m_noisyStrip
void L1TEMTFEventInfoClient::readQtResults ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter 
)
private

read quality test results

Definition at line 668 of file L1TEMTFEventInfoClient.cc.

References gather_cfg::cout, dqm::qstatus::DISABLED, MonitorElement::Fill(), objects.autophobj::float, DQMStore::IGetter::get(), QReport::getMessage(), MonitorElement::getName(), MonitorElement::getQReport(), MonitorElement::getQReports(), QReport::getQTresult(), QReport::getStatus(), dqm::qstatus::INVALID, m_deadQtSummaryEnabled, m_deadQualityTestHist, m_deadQualityTestName, m_hitQtSummaryEnabled, m_hitQualityTestHist, m_hitQualityTestName, m_meReportSummary, m_meReportSummaryContent, m_meReportSummaryMap, m_meReportSummaryMap_chamberStrip, m_noisyQtSummaryEnabled, m_noisyQualityTestHist, m_noisyQualityTestName, m_nrDeadStrip, m_nrHitObjects, m_nrNoisyStrip, m_nrTrackObjects, m_reportSummary, m_summaryContent, m_summarySum, m_totalNrQtSummaryEnabled, m_trackQtSummaryEnabled, m_trackQualityTestHist, m_trackQualityTestName, m_verbose, MonitorElement::setBinContent(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by dqmEndJob(), and dqmEndLuminosityBlock().

668  {
669 
670  // initialize summary content, summary sum and ReportSummaryContent float histograms
671  // for all L1 systems and L1 objects
672 
673  if (m_verbose) std::cout << "\nInside L1TEMTFEventInfoClient::readQtResults" << std::endl; // Extra printout - AWB 03.12.16
674 
675  for (std::vector<int>::iterator it = m_summaryContent.begin();
676  it != m_summaryContent.end(); ++it) {
677  (*it) = dqm::qstatus::DISABLED;
678  }
679 
680  m_summarySum = 0.;
681 
682  for (const auto & itME : m_meReportSummaryContent) {
683  itME->Fill(0.);
684  }
685 
686  // general counters:
687  // iAllQTest: all quality tests for all systems and objects
688  // iAllMon: all monitored systems and objects
689  int iAllQTest = 0;
690  int iAllMon = 0;
691 
692  // quality tests for all L1 systems
693 
694  for (unsigned int iTrackObj = 0; iTrackObj < m_nrTrackObjects; ++iTrackObj) {
695 
696  // get the reports for each quality test
697 
698  const std::vector<std::string>& trackObjQtName =
699  m_trackQualityTestName[iTrackObj];
700  const std::vector<std::string>& trackObjQtHist =
701  m_trackQualityTestHist[iTrackObj];
702  const std::vector<unsigned int>& trackObjQtSummaryEnabled =
703  m_trackQtSummaryEnabled[iTrackObj];
704 
705  // pro system counter for quality tests
706  int iTrackObjQTest = 0;
707 
708  for (const auto & itQtName : trackObjQtName) {
709 
710  // get results, status and message
711 
712  if (m_verbose) std::cout << " itQtName = " << (itQtName) << std::endl; // Extra printout - AWB 03.12.16
713 
714  MonitorElement* qHist = igetter.get(trackObjQtHist[iTrackObjQTest]);
715 
716  if (qHist) {
717  const std::vector<QReport*> qtVec = qHist->getQReports();
718  const std::string hName = qHist->getName();
719 
720  // if (m_verbose) {
721  if (true) { // Force printout - AWB 03.12.16
722 
723  if (m_verbose) std::cout << " - Number of quality tests"
724  // if (m_verbose) std::cout << "\nNumber of quality tests"
725  << " for histogram " << trackObjQtHist[iTrackObjQTest]
726  << ": " << qtVec.size() << "\n" << std::endl;
727  }
728 
729  const QReport* sysQReport = qHist->getQReport(itQtName);
730  if (sysQReport) {
731  const float trackObjQtResult = sysQReport->getQTresult();
732  const int trackObjQtStatus = sysQReport->getStatus();
733  const std::string& trackObjQtMessage = sysQReport->getMessage();
734 
735  if (m_verbose) {
736  std::cout << "\n" << (itQtName) << " quality test:"
737  << "\n result: " << trackObjQtResult
738  << "\n status: " << trackObjQtStatus
739  << "\n message: " << trackObjQtMessage << "\n"
740  << "\nFilling m_meReportSummaryContent["
741  << iAllQTest << "] with value "
742  << trackObjQtResult << "\n" << std::endl;
743  }
744 
745  m_meReportSummaryContent[iAllQTest]->Fill(trackObjQtResult);
746 
747  // for the summary map, keep the highest status value ("ERROR") of all tests
748  // which are considered for the summary plot
749  if (trackObjQtSummaryEnabled[iTrackObjQTest]) {
750 
751  if (trackObjQtStatus > m_summaryContent[iAllMon]) {
752  m_summaryContent[iAllMon] = trackObjQtStatus;
753  }
754 
755  m_summarySum += trackObjQtResult;
756  }
757 
758 
759  } else {
760 
761  // for the summary map, if the test was not found but it is assumed to be
762  // considered for the summary plot, set it to dqm::qstatus::INVALID
763 
764  int trackObjQtStatus = dqm::qstatus::INVALID;
765 
766  if (trackObjQtSummaryEnabled[iTrackObjQTest]) {
767 
768  if (trackObjQtStatus > m_summaryContent[iAllMon]) {
769  m_summaryContent[iAllMon] = trackObjQtStatus;
770  }
771  }
772 
773  m_meReportSummaryContent[iAllQTest]->Fill(0.);
774 
775  if (m_verbose) std::cout << "\n" << (itQtName)
776  << " quality test not found\n" << std::endl;
777  }
778 
779  } else {
780  // for the summary map, if the histogram was not found but it is assumed
781  // to have a test be considered for the summary plot, set it to dqm::qstatus::INVALID
782 
783  int trackObjQtStatus = dqm::qstatus::INVALID;
784 
785  if (trackObjQtSummaryEnabled[iTrackObjQTest]) {
786 
787  if (trackObjQtStatus > m_summaryContent[iAllMon]) {
788  m_summaryContent[iAllMon] = trackObjQtStatus;
789  }
790  }
791 
792  m_meReportSummaryContent[iAllQTest]->Fill(0.);
793 
794  if (m_verbose) std::cout << "\nHistogram " << trackObjQtHist[iTrackObjQTest]
795  << " not found\n" << std::endl;
796  }
797 
798  // increase counters for quality tests
799  iTrackObjQTest++;
800  iAllQTest++;
801 
802  }
803 
804  iAllMon++;
805 
806  }
807 
808  // quality tests for all L1 objects
809 
810  for (unsigned int iHitObj = 0; iHitObj < m_nrHitObjects; ++iHitObj) {
811 
812  // get the reports for each quality test
813 
814  const std::vector<std::string>& hitObjQtName =
815  m_hitQualityTestName[iHitObj];
816  const std::vector<std::string>& hitObjQtHist =
817  m_hitQualityTestHist[iHitObj];
818  const std::vector<unsigned int>& hitObjQtSummaryEnabled =
819  m_hitQtSummaryEnabled[iHitObj];
820 
821  // pro object counter for quality tests
822  int iHitObjQTest = 0;
823 
824  for (const auto & itQtName : hitObjQtName) {
825 
826  // get results, status and message
827 
828  MonitorElement* qHist = igetter.get(hitObjQtHist[iHitObjQTest]);
829 
830  if (qHist) {
831  const std::vector<QReport*> qtVec = qHist->getQReports();
832  const std::string hName = qHist->getName();
833 
834  if (m_verbose) std::cout << "\nNumber of quality tests "
835  << " for histogram " << hitObjQtHist[iHitObjQTest]
836  << ": " << qtVec.size() << "\n" << std::endl;
837 
838  const QReport* objQReport = qHist->getQReport(itQtName);
839  if (objQReport) {
840  const float hitObjQtResult = objQReport->getQTresult();
841  const int hitObjQtStatus = objQReport->getStatus();
842  const std::string& hitObjQtMessage = objQReport->getMessage();
843 
844  if (m_verbose) {
845  std::cout << "\n" << (itQtName) << " quality test:"
846  << "\n result: " << hitObjQtResult
847  << "\n status: " << hitObjQtStatus
848  << "\n message: " << hitObjQtMessage << "\n"
849  << "\nFilling m_meReportSummaryContent["
850  << iAllQTest << "] with value "
851  << hitObjQtResult << "\n" << std::endl;
852  }
853 
854  m_meReportSummaryContent[iAllQTest]->Fill(hitObjQtResult);
855 
856  // for the summary map, keep the highest status value ("ERROR") of all tests
857  // which are considered for the summary plot
858  if (hitObjQtSummaryEnabled[iHitObjQTest]) {
859 
860  if (hitObjQtStatus > m_summaryContent[iAllMon]) {
861  m_summaryContent[iAllMon] = hitObjQtStatus;
862  }
863 
864  m_summarySum += hitObjQtResult;
865  }
866 
867  } else {
868 
869  // for the summary map, if the test was not found but it is assumed to be
870  // considered for the summary plot, set it to dqm::qstatus::INVALID
871 
872  int hitObjQtStatus = dqm::qstatus::INVALID;
873 
874  if (hitObjQtSummaryEnabled[iHitObjQTest]) {
875 
876  if (hitObjQtStatus > m_summaryContent[iAllMon]) {
877  m_summaryContent[iAllMon] = hitObjQtStatus;
878  }
879  }
880 
881  m_meReportSummaryContent[iAllQTest]->Fill(0.);
882 
883  if (m_verbose) std::cout << "\n" << (itQtName)
884  << " quality test not found\n" << std::endl;
885  }
886 
887  } else {
888  // for the summary map, if the histogram was not found but it is assumed
889  // to have a test be considered for the summary plot, set it to dqm::qstatus::INVALID
890 
891  int hitObjQtStatus = dqm::qstatus::INVALID;
892 
893  if (hitObjQtSummaryEnabled[iHitObjQTest]) {
894 
895  if (hitObjQtStatus > m_summaryContent[iAllMon]) {
896  m_summaryContent[iAllMon] = hitObjQtStatus;
897  }
898  }
899 
900  m_meReportSummaryContent[iAllQTest]->Fill(0.);
901 
902  if (m_verbose) std::cout << "\nHistogram " << hitObjQtHist[iHitObjQTest]
903  << " not found\n" << std::endl;
904  }
905  // increase counters for quality tests
906  iHitObjQTest++;
907  iAllQTest++;
908  }
909  iAllMon++;
910  }
911 
912  // quality tests for all L1 Noisy Strip =================================================================
913 
914  for (unsigned int iNoisyStrp = 0; iNoisyStrp < m_nrNoisyStrip; ++iNoisyStrp) {
915 
916  // get the reports for each quality test
917  const std::vector<std::string>& noisyStrpQtName =
918  m_noisyQualityTestName[iNoisyStrp];
919  const std::vector<std::string>& noisyStrpQtHist =
920  m_noisyQualityTestHist[iNoisyStrp];
921  const std::vector<unsigned int>& noisyStrpQtSummaryEnabled =
922  m_noisyQtSummaryEnabled[iNoisyStrp];
923 
924  // pro object counter for quality tests
925  int iNoisyStrpQTest = 0;
926 
927  for (const auto & itQtName : noisyStrpQtName) {
928 
929  // get results, status and message
930  MonitorElement* qHist = igetter.get(noisyStrpQtHist[iNoisyStrpQTest]);
931 
932  if (qHist) {
933  const std::vector<QReport*> qtVec = qHist->getQReports();
934  const std::string hName = qHist->getName();
935 
936  if (m_verbose) std::cout << "\nNumber of quality tests "
937  << " for histogram " << noisyStrpQtHist[iNoisyStrpQTest]
938  << ": " << qtVec.size() << "\n" << std::endl;
939 
940  const QReport* objQReport = qHist->getQReport(itQtName);
941  if (objQReport) {
942  const float noisyStrpQtResult = objQReport->getQTresult();
943  const int noisyStrpQtStatus = objQReport->getStatus();
944  const std::string& noisyStrpQtMessage = objQReport->getMessage();
945 
946  if (m_verbose) {
947  std::cout << "\n" << (itQtName) << " quality test:"
948  << "\n result: " << noisyStrpQtResult
949  << "\n status: " << noisyStrpQtStatus
950  << "\n message: " << noisyStrpQtMessage << "\n"
951  << "\nFilling m_meReportSummaryContent["
952  << iAllQTest << "] with value "
953  << noisyStrpQtResult << "\n" << std::endl;
954  }
955 
956  m_meReportSummaryContent[iAllQTest]->Fill(noisyStrpQtResult);
957 
958  // for the summary map, keep the highest status value ("ERROR") of all tests
959  // which are considered for the summary plot
960  if (noisyStrpQtSummaryEnabled[iNoisyStrpQTest]) {
961 
962  if (noisyStrpQtStatus > m_summaryContent[iAllMon]) {
963  m_summaryContent[iAllMon] = noisyStrpQtStatus;
964  }
965  m_summarySum += noisyStrpQtResult;
966  }
967 
968  } else {
969 
970  // for the summary map, if the test was not found but it is assumed to be
971  // considered for the summary plot, set it to dqm::qstatus::INVALID
972 
973  int noisyStrpQtStatus = dqm::qstatus::INVALID;
974 
975  if (noisyStrpQtSummaryEnabled[iNoisyStrpQTest]) {
976 
977  if (noisyStrpQtStatus > m_summaryContent[iAllMon]) {
978  m_summaryContent[iAllMon] = noisyStrpQtStatus;
979  }
980  }
981 
982  m_meReportSummaryContent[iAllQTest]->Fill(0.);
983 
984  if (m_verbose) std::cout << "\n" << (itQtName)
985  << " quality test not found\n" << std::endl;
986  }
987 
988  } else {
989  // for the summary map, if the histogram was not found but it is assumed
990  // to have a test be considered for the summary plot, set it to dqm::qstatus::INVALID
991 
992  int noisyStrpQtStatus = dqm::qstatus::INVALID;
993 
994  if (noisyStrpQtSummaryEnabled[iNoisyStrpQTest]) {
995 
996  if (noisyStrpQtStatus > m_summaryContent[iAllMon]) {
997  m_summaryContent[iAllMon] = noisyStrpQtStatus;
998  }
999  }
1000 
1001  m_meReportSummaryContent[iAllQTest]->Fill(0.);
1002 
1003  if (m_verbose) std::cout << "\nHistogram " << noisyStrpQtHist[iNoisyStrpQTest]
1004  << " not found\n" << std::endl;
1005  }
1006  // increase counters for quality tests
1007  iNoisyStrpQTest++;
1008  iAllQTest++;
1009  }
1010  iAllMon++;
1011  }
1012  // quality tests for all L1 Dead Strip =================================================================
1013 
1014  for (unsigned int iDeadStrp = 0; iDeadStrp < m_nrDeadStrip; ++iDeadStrp) {
1015 
1016  // get the reports for each quality test
1017  const std::vector<std::string>& deadStrpQtName =
1018  m_deadQualityTestName[iDeadStrp];
1019  const std::vector<std::string>& deadStrpQtHist =
1020  m_deadQualityTestHist[iDeadStrp];
1021  const std::vector<unsigned int>& deadStrpQtSummaryEnabled =
1022  m_deadQtSummaryEnabled[iDeadStrp];
1023 
1024  // pro object counter for quality tests
1025  int iDeadStrpQTest = 0;
1026 
1027  for (const auto & itQtName : deadStrpQtName) {
1028 
1029  // get results, status and message
1030 
1031  MonitorElement* qHist = igetter.get(deadStrpQtHist[iDeadStrpQTest]);
1032 
1033  if (qHist) {
1034  const std::vector<QReport*> qtVec = qHist->getQReports();
1035  const std::string hName = qHist->getName();
1036 
1037  if (m_verbose) std::cout << "\nNumber of quality tests "
1038  << " for histogram " << deadStrpQtHist[iDeadStrpQTest]
1039  << ": " << qtVec.size() << "\n" << std::endl;
1040 
1041  const QReport* objQReport = qHist->getQReport(itQtName);
1042  if (objQReport) {
1043  const float deadStrpQtResult = objQReport->getQTresult();
1044  const int deadStrpQtStatus = objQReport->getStatus();
1045  const std::string& deadStrpQtMessage = objQReport->getMessage();
1046 
1047  if (m_verbose) {
1048  std::cout << "\n" << (itQtName) << " quality test:"
1049  << "\n result: " << deadStrpQtResult
1050  << "\n status: " << deadStrpQtStatus
1051  << "\n message: " << deadStrpQtMessage << "\n"
1052  << "\nFilling m_meReportSummaryContent["
1053  << iAllQTest << "] with value "
1054  << deadStrpQtResult << "\n" << std::endl;
1055  }
1056 
1057  m_meReportSummaryContent[iAllQTest]->Fill(deadStrpQtResult);
1058 
1059  // for the summary map, keep the highest status value ("ERROR") of all tests
1060  // which are considered for the summary plot
1061  if (deadStrpQtSummaryEnabled[iDeadStrpQTest]) {
1062 
1063  if (deadStrpQtStatus > m_summaryContent[iAllMon]) {
1064  m_summaryContent[iAllMon] = deadStrpQtStatus;
1065  }
1066  m_summarySum += deadStrpQtResult;
1067  }
1068 
1069  } else {
1070 
1071  // for the summary map, if the test was not found but it is assumed to be
1072  // considered for the summary plot, set it to dqm::qstatus::INVALID
1073 
1074  int deadStrpQtStatus = dqm::qstatus::INVALID;
1075 
1076  if (deadStrpQtSummaryEnabled[iDeadStrpQTest]) {
1077 
1078  if (deadStrpQtStatus > m_summaryContent[iAllMon]) {
1079  m_summaryContent[iAllMon] = deadStrpQtStatus;
1080  }
1081  }
1082 
1083  m_meReportSummaryContent[iAllQTest]->Fill(0.);
1084 
1085  if (m_verbose) std::cout << "\n" << (itQtName)
1086  << " quality test not found\n" << std::endl;
1087  }
1088 
1089  } else {
1090  // for the summary map, if the histogram was not found but it is assumed
1091  // to have a test be considered for the summary plot, set it to dqm::qstatus::INVALID
1092 
1093  int deadStrpQtStatus = dqm::qstatus::INVALID;
1094 
1095  if (deadStrpQtSummaryEnabled[iDeadStrpQTest]) {
1096 
1097  if (deadStrpQtStatus > m_summaryContent[iAllMon]) {
1098  m_summaryContent[iAllMon] = deadStrpQtStatus;
1099  }
1100  }
1101 
1102  m_meReportSummaryContent[iAllQTest]->Fill(0.);
1103 
1104  if (m_verbose) std::cout << "\nHistogram " << deadStrpQtHist[iDeadStrpQTest]
1105  << " not found\n" << std::endl;
1106  }
1107 
1108  // increase counters for quality tests
1109  iDeadStrpQTest++;
1110  iAllQTest++;
1111  }
1112  iAllMon++;
1113  }
1114 
1115  // reportSummary value
1117  if (m_meReportSummary) {
1119  }
1120 
1121  // fill the ReportSummaryMap for L1 systems (bin 1 on X)
1122  for (unsigned int iTrackObj = 0; iTrackObj < m_nrTrackObjects; ++iTrackObj) {
1123 
1124  double summCont = static_cast<double>(m_summaryContent[iTrackObj]);
1125  m_meReportSummaryMap->setBinContent(1, iTrackObj + 1, summCont);
1126  }
1127  // fill the ReportSummaryMap for L1 objects (bin 2 on X)
1128  for (unsigned int iMon = m_nrTrackObjects; iMon < m_nrTrackObjects
1129  + m_nrHitObjects; ++iMon) {
1130 
1131  double summCont = static_cast<double>(m_summaryContent[iMon]);
1132  m_meReportSummaryMap->setBinContent(2, iMon - m_nrTrackObjects + 1, summCont);
1133 
1134  }
1135 
1136  // fill the ReportSummaryMap_chamberStrip for L1 Noisy Strip (bin 1 on X)
1137  for (unsigned int iNoisyStrp = m_nrTrackObjects + m_nrHitObjects; iNoisyStrp < m_nrTrackObjects + m_nrHitObjects + m_nrNoisyStrip; ++iNoisyStrp) {
1138  double summCont = static_cast<double>(m_summaryContent[iNoisyStrp]);
1139  m_meReportSummaryMap_chamberStrip->setBinContent(1, iNoisyStrp - m_nrTrackObjects - m_nrHitObjects + 1, summCont);
1140  }
1141  // fill the ReportSummaryMap_chamberStrip for L1 objects (bin 2 on X)
1142  for (unsigned int iDeadStrp = m_nrTrackObjects + m_nrHitObjects + m_nrNoisyStrip; iDeadStrp < m_nrTrackObjects + m_nrHitObjects + m_nrNoisyStrip + m_nrDeadStrip; ++iDeadStrp) {
1143  double summCont = static_cast<double>(m_summaryContent[iDeadStrp]);
1144  m_meReportSummaryMap_chamberStrip->setBinContent(2, iDeadStrp - m_nrTrackObjects - m_nrHitObjects - m_nrNoisyStrip + 1, summCont);
1145  }
1146 
1147 }
std::vector< std::vector< std::string > > m_trackQualityTestName
const QReport * getQReport(const std::string &qtname) const
get QReport corresponding to <qtname> (null pointer if QReport does not exist)
void setBinContent(int binx, double content)
set content of bin (1-D)
std::vector< MonitorElement * > m_meReportSummaryContent
monitor elements to report content for all quality tests
bool m_verbose
input parameters
MonitorElement * get(const std::string &path)
Definition: DQMStore.cc:307
size_t m_nrHitObjects
number of L1 trigger objects
std::vector< std::vector< std::string > > m_deadQualityTestHist
std::vector< std::vector< unsigned int > > m_deadQtSummaryEnabled
const std::string & getName() const
get name of ME
std::vector< std::vector< std::string > > m_hitQualityTestName
void Fill(long long x)
MonitorElement * m_meReportSummary
a summary report
std::vector< std::vector< std::string > > m_noisyQualityTestName
static const int INVALID
std::vector< std::vector< unsigned int > > m_trackQtSummaryEnabled
std::vector< std::vector< std::string > > m_trackQualityTestHist
std::vector< std::vector< std::string > > m_hitQualityTestHist
static const int DISABLED
size_t m_nrDeadStrip
number of L1 trigger dead strips
const std::string & getMessage() const
get message attached to test
Definition: QReport.h:24
std::vector< std::vector< unsigned int > > m_hitQtSummaryEnabled
MonitorElement * m_meReportSummaryMap_chamberStrip
std::vector< std::vector< std::string > > m_noisyQualityTestHist
MonitorElement * m_meReportSummaryMap
report summary map
std::vector< std::vector< std::string > > m_deadQualityTestName
std::vector< QReport * > getQReports() const
get map of QReports
int getStatus() const
get test status (see Core/interface/QTestStatus.h)
Definition: QReport.h:16
Float_t m_reportSummary
summary report
std::vector< int > m_summaryContent
std::vector< std::vector< unsigned int > > m_noisyQtSummaryEnabled
float getQTresult() const
get test result i.e. prob value
Definition: QReport.h:20
size_t m_nrTrackObjects
number of L1 trigger systems
size_t m_nrNoisyStrip
number of L1 trigger noisy strips

Member Data Documentation

std::vector<int> L1TEMTFEventInfoClient::m_deadDisable
private

Definition at line 125 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_deadFolder
private

Definition at line 127 of file L1TEMTFEventInfoClient.h.

std::vector<std::string> L1TEMTFEventInfoClient::m_deadLabel
private

Definition at line 126 of file L1TEMTFEventInfoClient.h.

Referenced by book(), and initialize().

std::vector<std::vector<unsigned int> > L1TEMTFEventInfoClient::m_deadQtSummaryEnabled
private

Definition at line 131 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_deadQualityTestHist
private

Definition at line 130 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_deadQualityTestName
private

Definition at line 129 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

std::vector<edm::ParameterSet> L1TEMTFEventInfoClient::m_deadStrip
private

Definition at line 67 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_disableDeadStrip
private

Definition at line 69 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_disableHitObjects
private

Definition at line 64 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_disableNoisyStrip
private

Definition at line 68 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_disableTrackObjects
private

Definition at line 63 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::string L1TEMTFEventInfoClient::m_histDir
private

Definition at line 54 of file L1TEMTFEventInfoClient.h.

std::vector<int> L1TEMTFEventInfoClient::m_hitDisable
private

Definition at line 109 of file L1TEMTFEventInfoClient.h.

Referenced by dumpContentMonitorElements(), and initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_hitFolder
private

Definition at line 111 of file L1TEMTFEventInfoClient.h.

std::vector<std::string> L1TEMTFEventInfoClient::m_hitLabel
private

Definition at line 110 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), and initialize().

std::vector<edm::ParameterSet> L1TEMTFEventInfoClient::m_hitObjects
private

Definition at line 62 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::vector<unsigned int> > L1TEMTFEventInfoClient::m_hitQtSummaryEnabled
private

Definition at line 115 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_hitQualityTestHist
private

Definition at line 114 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_hitQualityTestName
private

Definition at line 113 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

MonitorElement* L1TEMTFEventInfoClient::m_meReportSummary
private

a summary report

Definition at line 140 of file L1TEMTFEventInfoClient.h.

Referenced by book(), and readQtResults().

std::vector<MonitorElement*> L1TEMTFEventInfoClient::m_meReportSummaryContent
private

monitor elements to report content for all quality tests

Definition at line 143 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), initialize(), and readQtResults().

MonitorElement* L1TEMTFEventInfoClient::m_meReportSummaryMap
private

report summary map

Definition at line 146 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), and readQtResults().

MonitorElement* L1TEMTFEventInfoClient::m_meReportSummaryMap_chamberStrip
private

Definition at line 147 of file L1TEMTFEventInfoClient.h.

Referenced by book(), and readQtResults().

std::string L1TEMTFEventInfoClient::m_monitorDir
private

Definition at line 53 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), and initialize().

std::vector<int> L1TEMTFEventInfoClient::m_noisyDisable
private

Definition at line 117 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_noisyFolder
private

Definition at line 119 of file L1TEMTFEventInfoClient.h.

std::vector<std::string> L1TEMTFEventInfoClient::m_noisyLabel
private

Definition at line 118 of file L1TEMTFEventInfoClient.h.

Referenced by book(), and initialize().

std::vector<std::vector<unsigned int> > L1TEMTFEventInfoClient::m_noisyQtSummaryEnabled
private

Definition at line 123 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_noisyQualityTestHist
private

Definition at line 122 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_noisyQualityTestName
private

Definition at line 121 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

std::vector<edm::ParameterSet> L1TEMTFEventInfoClient::m_noisyStrip
private

Definition at line 66 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

size_t L1TEMTFEventInfoClient::m_nrDeadStrip
private

number of L1 trigger dead strips

Definition at line 95 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

size_t L1TEMTFEventInfoClient::m_nrHitObjects
private

number of L1 trigger objects

Definition at line 89 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), initialize(), and readQtResults().

size_t L1TEMTFEventInfoClient::m_nrNoisyStrip
private

number of L1 trigger noisy strips

Definition at line 92 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

size_t L1TEMTFEventInfoClient::m_nrTrackObjects
private

number of L1 trigger systems

Definition at line 86 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), initialize(), and readQtResults().

Float_t L1TEMTFEventInfoClient::m_reportSummary
private

summary report

Definition at line 135 of file L1TEMTFEventInfoClient.h.

Referenced by readQtResults().

bool L1TEMTFEventInfoClient::m_runInEndJob
private

Definition at line 59 of file L1TEMTFEventInfoClient.h.

bool L1TEMTFEventInfoClient::m_runInEndLumi
private

Definition at line 57 of file L1TEMTFEventInfoClient.h.

Referenced by dqmEndLuminosityBlock().

bool L1TEMTFEventInfoClient::m_runInEndRun
private

Definition at line 58 of file L1TEMTFEventInfoClient.h.

bool L1TEMTFEventInfoClient::m_runInEventLoop
private

Definition at line 56 of file L1TEMTFEventInfoClient.h.

std::vector<int> L1TEMTFEventInfoClient::m_summaryContent
private
Float_t L1TEMTFEventInfoClient::m_summarySum
private

Definition at line 136 of file L1TEMTFEventInfoClient.h.

Referenced by readQtResults().

size_t L1TEMTFEventInfoClient::m_totalNrQtSummaryEnabled
private

total number of quality tests enabled for summary report for L1 trigger systems and L1 trigger objects

Definition at line 99 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<int> L1TEMTFEventInfoClient::m_trackDisable
private

Definition at line 103 of file L1TEMTFEventInfoClient.h.

Referenced by dumpContentMonitorElements(), and initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_trackLabel
private

Definition at line 101 of file L1TEMTFEventInfoClient.h.

Referenced by book(), dumpContentMonitorElements(), and initialize().

std::vector<std::string> L1TEMTFEventInfoClient::m_trackLabelExt
private

Definition at line 102 of file L1TEMTFEventInfoClient.h.

std::vector<edm::ParameterSet> L1TEMTFEventInfoClient::m_trackObjects
private

Definition at line 61 of file L1TEMTFEventInfoClient.h.

Referenced by initialize().

std::vector<std::vector<unsigned int> > L1TEMTFEventInfoClient::m_trackQtSummaryEnabled
private

Definition at line 107 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_trackQualityTestHist
private

Definition at line 106 of file L1TEMTFEventInfoClient.h.

Referenced by initialize(), and readQtResults().

std::vector<std::vector<std::string> > L1TEMTFEventInfoClient::m_trackQualityTestName
private

Definition at line 105 of file L1TEMTFEventInfoClient.h.

Referenced by book(), initialize(), and readQtResults().

bool L1TEMTFEventInfoClient::m_verbose
private