CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
HLTrigReport Class Reference

#include <HLTrigReport.h>

Inheritance diagram for HLTrigReport:
edm::EDAnalyzer

Public Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
 
virtual void beginJob ()
 
virtual void beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void beginRun (edm::Run const &, edm::EventSetup const &)
 
const std::vector< unsigned int > & datasetCounts () const
 
const std::vector< std::string > & datasetNames () const
 
virtual void endJob ()
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void endRun (edm::Run const &, edm::EventSetup const &)
 
 HLTrigReport (const edm::ParameterSet &)
 
void reset (bool changed=false)
 
const std::vector< unsigned int > & streamCounts () const
 
const std::vector< std::string > & streamNames () const
 
 ~HLTrigReport ()
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Static Public Member Functions

static ReportEvery decode (const std::string &value)
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 

Private Types

enum  ReportEvery {
  NEVER = 0, EVERY_EVENT = 1, EVERY_LUMI = 2, EVERY_RUN = 3,
  EVERY_JOB = 4
}
 

Private Member Functions

void dumpReport (std::string const &header=std::string())
 

Private Attributes

bool configured_
 
std::vector< std::vector
< std::string > > 
datasetContents_
 
std::vector< std::string > datasetNames_
 
std::vector< std::vector
< unsigned int > > 
dsAccTotS_
 
std::vector< unsigned int > dsAllTotS_
 
std::vector< std::vector
< unsigned int > > 
dsIndex_
 
std::vector< unsigned int > hlAccept_
 
std::vector< unsigned int > hlAccTot_
 
std::vector< std::vector
< unsigned int > > 
hlAccTotDS_
 
std::vector< unsigned int > hlAllTotDS_
 
std::vector< unsigned int > hlErrors_
 
std::vector< std::vector
< unsigned int > > 
hlIndex_
 
std::vector< std::string > hlNames_
 
HLTConfigProvider hltConfig_
 
std::vector< unsigned int > hltL1s_
 
std::vector< unsigned int > hltPre_
 
edm::InputTag hlTriggerResults_
 
std::vector< unsigned int > hlWasRun_
 
bool isCustomDatasets_
 
bool isCustomStreams_
 
unsigned int nAccept_
 
unsigned int nErrors_
 
unsigned int nEvents_
 
unsigned int nWasRun_
 
std::vector< int > posL1s_
 
std::vector< int > posPre_
 
unsigned int refIndex_
 
std::string refPath_
 
double refRate_
 
ReportEvery reportBy_
 
ReportEvery resetBy_
 
ReportEvery serviceBy_
 
std::vector< std::vector
< std::string > > 
streamContents_
 
std::vector< std::string > streamNames_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Detailed Description

This class is an EDAnalyzer implementing TrigReport (statistics printed to log file) for HL triggers

Date:
2011/03/30 16:17:33
Revision:
1.17
Author
Martin Grunewald

See header file for documentation

Date:
2012/04/04 14:07:59
Revision:
1.37
Author
Martin Grunewald

Definition at line 29 of file HLTrigReport.h.

Member Enumeration Documentation

Enumerator
NEVER 
EVERY_EVENT 
EVERY_LUMI 
EVERY_RUN 
EVERY_JOB 

Definition at line 31 of file HLTrigReport.h.

Constructor & Destructor Documentation

HLTrigReport::HLTrigReport ( const edm::ParameterSet iConfig)
explicit

Definition at line 53 of file HLTrigReport.cc.

References datasetContents_, datasetNames_, edm::InputTag::encode(), edm::ParameterSet::getParameter(), edm::ParameterSet::getParameterNamesForType(), edm::ParameterSet::getUntrackedParameter(), hlTriggerResults_, isCustomDatasets_, isCustomStreams_, LogDebug, mergeVDriftHistosByStation::name, NEVER, refIndex_, refPath_, refRate_, serviceBy_, streamContents_, and streamNames_.

53  :
54  hlTriggerResults_ (iConfig.getParameter<edm::InputTag> ("HLTriggerResults")),
55  configured_(false),
56  nEvents_(0),
57  nWasRun_(0),
58  nAccept_(0),
59  nErrors_(0),
60  hlWasRun_(0),
61  hltL1s_(0),
62  hltPre_(0),
63  hlAccept_(0),
64  hlAccTot_(0),
65  hlErrors_(0),
66  posL1s_(0),
67  posPre_(0),
68  hlNames_(0),
69  hlIndex_(0),
70  hlAccTotDS_(0),
71  datasetNames_(0),
73  isCustomDatasets_(false),
74  dsIndex_(0),
75  dsAccTotS_(0),
76  streamNames_(0),
77  streamContents_(0),
78  isCustomStreams_(false),
79  refPath_("HLTriggerFinalPath"),
80  refIndex_(0),
81  refRate_(100.0),
82  reportBy_( decode(iConfig.getUntrackedParameter<std::string>("reportBy", "job")) ),
83  resetBy_( decode(iConfig.getUntrackedParameter<std::string>("resetBy", "never")) ),
84  serviceBy_(decode(iConfig.getUntrackedParameter<std::string>("serviceBy", "never")) ),
85  hltConfig_()
86 {
87  const edm::ParameterSet customDatasets(iConfig.getUntrackedParameter<edm::ParameterSet>("CustomDatasets", edm::ParameterSet()));
88  isCustomDatasets_ = (customDatasets != edm::ParameterSet());
89  if (isCustomDatasets_) {
90  datasetNames_ = customDatasets.getParameterNamesForType<std::vector<std::string> >();
91  for (std::vector<std::string>::const_iterator name = datasetNames_.begin(); name != datasetNames_.end(); name++) {
92  datasetContents_.push_back(customDatasets.getParameter<std::vector<std::string> >(*name));
93  }
94  }
95 
96  const edm::ParameterSet customStreams (iConfig.getUntrackedParameter<edm::ParameterSet>("CustomStreams" , edm::ParameterSet()));
97  isCustomStreams_ = (customStreams != edm::ParameterSet());
98  if (isCustomStreams_ ) {
99  streamNames_ = customStreams.getParameterNamesForType<std::vector<std::string> >();
100  for (std::vector<std::string>::const_iterator name = streamNames_.begin(); name != streamNames_.end(); name++) {
101  streamContents_.push_back(customStreams.getParameter<std::vector<std::string> >(*name));
102  }
103  }
104 
105  refPath_ = iConfig.getUntrackedParameter<std::string>("ReferencePath","HLTriggerFinalPath");
106  refRate_ = iConfig.getUntrackedParameter<double>("ReferenceRate", 100.0);
107  refIndex_= 0;
108 
109  LogDebug("HLTrigReport")
110  << "HL TiggerResults: " + hlTriggerResults_.encode()
111  << " using reference path and rate: " + refPath_ + " " << refRate_;
112 
114  edm::Service<HLTrigReportService>()->registerModule(this);
115  }
116 
117 }
#define LogDebug(id)
std::vector< unsigned int > hlErrors_
Definition: HLTrigReport.h:81
std::vector< std::vector< std::string > > datasetContents_
Definition: HLTrigReport.h:91
bool isCustomStreams_
Definition: HLTrigReport.h:98
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
bool isCustomDatasets_
Definition: HLTrigReport.h:92
std::vector< unsigned int > hlAccTot_
Definition: HLTrigReport.h:80
std::vector< std::string > hlNames_
Definition: HLTrigReport.h:85
ReportEvery reportBy_
Definition: HLTrigReport.h:103
std::vector< std::vector< unsigned int > > hlAccTotDS_
Definition: HLTrigReport.h:88
unsigned int nWasRun_
Definition: HLTrigReport.h:72
std::vector< std::string > datasetNames_
Definition: HLTrigReport.h:90
double refRate_
Definition: HLTrigReport.h:101
static ReportEvery decode(const std::string &value)
Definition: HLTrigReport.cc:30
std::string encode() const
Definition: InputTag.cc:72
std::vector< int > posL1s_
Definition: HLTrigReport.h:83
std::vector< int > posPre_
Definition: HLTrigReport.h:84
std::vector< unsigned int > hltL1s_
Definition: HLTrigReport.h:77
ReportEvery resetBy_
Definition: HLTrigReport.h:104
std::vector< std::string > streamNames_
Definition: HLTrigReport.h:96
unsigned int nAccept_
Definition: HLTrigReport.h:73
unsigned int refIndex_
Definition: HLTrigReport.h:100
std::vector< unsigned int > hlWasRun_
Definition: HLTrigReport.h:76
bool configured_
Definition: HLTrigReport.h:69
std::string refPath_
Definition: HLTrigReport.h:99
HLTConfigProvider hltConfig_
Definition: HLTrigReport.h:106
std::vector< std::vector< std::string > > streamContents_
Definition: HLTrigReport.h:97
unsigned int nEvents_
Definition: HLTrigReport.h:71
std::vector< unsigned int > hltPre_
Definition: HLTrigReport.h:78
unsigned int nErrors_
Definition: HLTrigReport.h:74
std::vector< std::vector< unsigned int > > hlIndex_
Definition: HLTrigReport.h:87
std::vector< unsigned int > hlAccept_
Definition: HLTrigReport.h:79
std::vector< std::vector< unsigned int > > dsAccTotS_
Definition: HLTrigReport.h:94
edm::InputTag hlTriggerResults_
Definition: HLTrigReport.h:68
std::vector< std::vector< unsigned int > > dsIndex_
Definition: HLTrigReport.h:93
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
HLTrigReport::~HLTrigReport ( )

Definition at line 119 of file HLTrigReport.cc.

119 { }

Member Function Documentation

void HLTrigReport::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
virtual

Implements edm::EDAnalyzer.

Definition at line 371 of file HLTrigReport.cc.

References accept(), configured_, datasetCounts(), dsAccTotS_, dsAllTotS_, dsIndex_, dumpReport(), edm::InputTag::encode(), EVERY_EVENT, edm::Event::getByLabel(), hlAccept_, hlAccTot_, hlAccTotDS_, hlAllTotDS_, hlErrors_, hlIndex_, hlNames_, hltL1s_, hltPre_, hlTriggerResults_, hlWasRun_, i, edm::EventBase::id(), getHLTprescales::index, LogDebug, edm::EventBase::luminosityBlock(), n, nAccept_, nErrors_, nEvents_, nWasRun_, or, AlCaHLTBitMon_ParallelJobs::p, posL1s_, posPre_, reportBy_, reset(), resetBy_, edm::Event::run(), alignCSCRings::s, serviceBy_, and streamCounts().

372 {
373  // accumulation of statistics event by event
374 
375  using namespace std;
376  using namespace edm;
377 
378  if (resetBy_ == EVERY_EVENT) reset();
379 
380  nEvents_++;
381 
382  // get hold of TriggerResults
384  iEvent.getByLabel(hlTriggerResults_, HLTR);
385  if (HLTR.isValid()) {
386  if (HLTR->wasrun()) nWasRun_++;
387  const bool accept(HLTR->accept());
388  LogDebug("HLTrigReport") << "HLT TriggerResults decision: " << accept;
389  if (accept) ++nAccept_;
390  if (HLTR->error()) nErrors_++;
391  } else {
392  LogDebug("HLTrigReport") << "HLT TriggerResults with label ["+hlTriggerResults_.encode()+"] not found!";
393  nErrors_++;
394  return;
395  }
396 
397  // HLTConfigProvider not configured - cannot produce any detailed statistics
398  if (not configured_)
399  return;
400 
401  // decision for each HL algorithm
402  const unsigned int n(hlNames_.size());
403  bool acceptedByPrevoiusPaths = false;
404  for (unsigned int i=0; i!=n; ++i) {
405  if (HLTR->wasrun(i)) hlWasRun_[i]++;
406  if (HLTR->accept(i)) {
407  acceptedByPrevoiusPaths = true;
408  hlAccept_[i]++;
409  }
410  if (acceptedByPrevoiusPaths) hlAccTot_[i]++;
411  if (HLTR->error(i) ) hlErrors_[i]++;
412  const int index(static_cast<int>(HLTR->index(i)));
413  if (HLTR->accept(i)) {
414  if (index >= posL1s_[i]) hltL1s_[i]++;
415  if (index >= posPre_[i]) hltPre_[i]++;
416  } else {
417  if (index > posL1s_[i]) hltL1s_[i]++;
418  if (index > posPre_[i]) hltPre_[i]++;
419  }
420  }
421 
422  // calculate accumulation of accepted events by a path within a dataset
423  std::vector<bool> acceptedByDS(hlIndex_.size(), false);
424  for (size_t ds=0; ds<hlIndex_.size(); ++ds) {
425  for (size_t p=0; p<hlIndex_[ds].size(); ++p) {
426  if (acceptedByDS[ds] or HLTR->accept(hlIndex_[ds][p])) {
427  acceptedByDS[ds] = true;
428  hlAccTotDS_[ds][p]++;
429  }
430  }
431  if (acceptedByDS[ds]) hlAllTotDS_[ds]++;
432  }
433 
434  // calculate accumulation of accepted events by a dataset within a stream
435  for (size_t s=0; s<dsIndex_.size(); ++s) {
436  bool acceptedByS = false;
437  for (size_t ds=0; ds<dsIndex_[s].size(); ++ds) {
438  if (acceptedByS or acceptedByDS[dsIndex_[s][ds]]) {
439  acceptedByS = true;
440  dsAccTotS_[s][ds]++;
441  }
442  }
443  if (acceptedByS) dsAllTotS_[s]++;
444  }
445 
446  if (reportBy_ == EVERY_EVENT) {
447  std::stringstream stream;
448  stream << "Summary for Run " << iEvent.run() << ", LumiSection " << iEvent.luminosityBlock() << ", Event " << iEvent.id();
449  dumpReport(stream.str());
450  }
452  edm::Service<HLTrigReportService>()->setDatasetCounts(datasetCounts());
453  edm::Service<HLTrigReportService>()->setStreamCounts(streamCounts());
454  }
455 
456 }
#define LogDebug(id)
std::vector< unsigned int > hlErrors_
Definition: HLTrigReport.h:81
int i
Definition: DBlmapReader.cc:9
std::vector< unsigned int > hlAccTot_
Definition: HLTrigReport.h:80
std::vector< std::string > hlNames_
Definition: HLTrigReport.h:85
std::vector< unsigned int > dsAllTotS_
Definition: HLTrigReport.h:95
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventIDconst &, edm::Timestampconst & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
const std::vector< unsigned int > & streamCounts() const
ReportEvery reportBy_
Definition: HLTrigReport.h:103
std::vector< std::vector< unsigned int > > hlAccTotDS_
Definition: HLTrigReport.h:88
edm::LuminosityBlockNumber_t luminosityBlock() const
Definition: EventBase.h:59
unsigned int nWasRun_
Definition: HLTrigReport.h:72
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:22
std::string encode() const
Definition: InputTag.cc:72
std::vector< int > posL1s_
Definition: HLTrigReport.h:83
std::vector< int > posPre_
Definition: HLTrigReport.h:84
std::vector< unsigned int > hltL1s_
Definition: HLTrigReport.h:77
RunNumber_t run() const
Definition: Event.h:67
ReportEvery resetBy_
Definition: HLTrigReport.h:104
void dumpReport(std::string const &header=std::string())
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
unsigned int nAccept_
Definition: HLTrigReport.h:73
std::vector< unsigned int > hlWasRun_
Definition: HLTrigReport.h:76
bool configured_
Definition: HLTrigReport.h:69
std::vector< unsigned int > hlAllTotDS_
Definition: HLTrigReport.h:89
const std::vector< unsigned int > & datasetCounts() const
unsigned int nEvents_
Definition: HLTrigReport.h:71
std::vector< unsigned int > hltPre_
Definition: HLTrigReport.h:78
unsigned int nErrors_
Definition: HLTrigReport.h:74
edm::EventID id() const
Definition: EventBase.h:56
void reset(bool changed=false)
std::vector< std::vector< unsigned int > > hlIndex_
Definition: HLTrigReport.h:87
std::vector< unsigned int > hlAccept_
Definition: HLTrigReport.h:79
std::vector< std::vector< unsigned int > > dsAccTotS_
Definition: HLTrigReport.h:94
edm::InputTag hlTriggerResults_
Definition: HLTrigReport.h:68
std::vector< std::vector< unsigned int > > dsIndex_
Definition: HLTrigReport.h:93
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
void HLTrigReport::beginJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 286 of file HLTrigReport.cc.

References EVERY_JOB, reset(), and resetBy_.

286  {
287  if (resetBy_ == EVERY_JOB)
288  reset();
289 }
ReportEvery resetBy_
Definition: HLTrigReport.h:104
void reset(bool changed=false)
void HLTrigReport::beginLuminosityBlock ( edm::LuminosityBlock const &  lumi,
edm::EventSetup const &  setup 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 352 of file HLTrigReport.cc.

References EVERY_LUMI, reset(), and resetBy_.

352  {
353  if (resetBy_ == EVERY_LUMI) reset();
354 }
ReportEvery resetBy_
Definition: HLTrigReport.h:104
void reset(bool changed=false)
void HLTrigReport::beginRun ( edm::Run const &  iRun,
edm::EventSetup const &  iSetup 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 302 of file HLTrigReport.cc.

References configured_, dsAccTotS_, dsAllTotS_, dsIndex_, dumpReport(), EVERY_RUN, hlAccept_, hlAccTot_, hlAccTotDS_, hlAllTotDS_, hlErrors_, hlIndex_, hlNames_, hltConfig_, hltL1s_, hltPre_, hlTriggerResults_, hlWasRun_, HLTConfigProvider::init(), nAccept_, nErrors_, nEvents_, nWasRun_, posL1s_, posPre_, edm::InputTag::process(), reset(), and resetBy_.

303 {
304  bool changed = true;
305  if (hltConfig_.init(iRun, iSetup, hlTriggerResults_.process(), changed)) {
306  configured_ = true;
307  if (changed) {
308  dumpReport("Summary for this HLT table");
309  reset(true);
310  }
311  } else {
312  dumpReport("Summary for this HLT table");
313  // cannot initialize the HLT menu - reset and clear all counters and tables
314  configured_ = false;
315  nEvents_ = 0;
316  nWasRun_ = 0;
317  nAccept_ = 0;
318  nErrors_ = 0;
319  hlWasRun_.clear();
320  hltL1s_.clear();
321  hltPre_.clear();
322  hlAccept_.clear();
323  hlAccTot_.clear();
324  hlErrors_.clear();
325  posL1s_.clear();
326  posPre_.clear();
327  hlNames_.clear();
328  hlIndex_.clear();
329  hlAccTotDS_.clear();
330  hlAllTotDS_.clear();
331  dsIndex_.clear();
332  dsAccTotS_.clear();
333  dsAllTotS_.clear();
334  }
335 
336  if (resetBy_ == EVERY_RUN) reset();
337 
338 }
std::vector< unsigned int > hlErrors_
Definition: HLTrigReport.h:81
std::vector< unsigned int > hlAccTot_
Definition: HLTrigReport.h:80
std::vector< std::string > hlNames_
Definition: HLTrigReport.h:85
std::vector< unsigned int > dsAllTotS_
Definition: HLTrigReport.h:95
std::vector< std::vector< unsigned int > > hlAccTotDS_
Definition: HLTrigReport.h:88
unsigned int nWasRun_
Definition: HLTrigReport.h:72
std::vector< int > posL1s_
Definition: HLTrigReport.h:83
std::vector< int > posPre_
Definition: HLTrigReport.h:84
std::vector< unsigned int > hltL1s_
Definition: HLTrigReport.h:77
ReportEvery resetBy_
Definition: HLTrigReport.h:104
void dumpReport(std::string const &header=std::string())
unsigned int nAccept_
Definition: HLTrigReport.h:73
std::vector< unsigned int > hlWasRun_
Definition: HLTrigReport.h:76
bool configured_
Definition: HLTrigReport.h:69
HLTConfigProvider hltConfig_
Definition: HLTrigReport.h:106
std::vector< unsigned int > hlAllTotDS_
Definition: HLTrigReport.h:89
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
unsigned int nEvents_
Definition: HLTrigReport.h:71
std::vector< unsigned int > hltPre_
Definition: HLTrigReport.h:78
std::string const & process() const
Definition: InputTag.h:29
unsigned int nErrors_
Definition: HLTrigReport.h:74
void reset(bool changed=false)
std::vector< std::vector< unsigned int > > hlIndex_
Definition: HLTrigReport.h:87
std::vector< unsigned int > hlAccept_
Definition: HLTrigReport.h:79
std::vector< std::vector< unsigned int > > dsAccTotS_
Definition: HLTrigReport.h:94
edm::InputTag hlTriggerResults_
Definition: HLTrigReport.h:68
std::vector< std::vector< unsigned int > > dsIndex_
Definition: HLTrigReport.h:93
const std::vector< unsigned int > & HLTrigReport::datasetCounts ( ) const

Definition at line 131 of file HLTrigReport.cc.

References hlAllTotDS_.

Referenced by analyze(), endJob(), endLuminosityBlock(), and endRun().

131  {
132  return hlAllTotDS_;
133 }
std::vector< unsigned int > hlAllTotDS_
Definition: HLTrigReport.h:89
const std::vector< std::string > & HLTrigReport::datasetNames ( ) const

Definition at line 125 of file HLTrigReport.cc.

References datasetNames_.

125  {
126  return datasetNames_;
127 }
std::vector< std::string > datasetNames_
Definition: HLTrigReport.h:90
HLTrigReport::ReportEvery HLTrigReport::decode ( const std::string &  value)
static

Definition at line 30 of file HLTrigReport.cc.

References EVERY_EVENT, EVERY_JOB, EVERY_LUMI, EVERY_RUN, edm::hlt::Exception, and NEVER.

30  {
31  if (value == "never")
32  return NEVER;
33 
34  if (value == "job")
35  return EVERY_JOB;
36 
37  if (value == "run")
38  return EVERY_RUN;
39 
40  if (value == "lumi")
41  return EVERY_LUMI;
42 
43  if (value == "event")
44  return EVERY_EVENT;
45 
46  throw cms::Exception("Configuration") << "Invalid option value \"" << value << "\". Legal values are \"job\", \"run\", \"lumi\", \"event\" and \"never\".";
47 }
void HLTrigReport::dumpReport ( std::string const &  header = std::string())
private

Definition at line 459 of file HLTrigReport.cc.

References alpha, configured_, datasetNames_, dsAccTotS_, dsAllTotS_, dsIndex_, hlAccept_, hlAccTot_, hlAccTotDS_, hlAllTotDS_, hlErrors_, hlIndex_, hlNames_, hltL1s_, hltPre_, hlWasRun_, i, max(), n, nAccept_, nErrors_, nEvents_, nWasRun_, AlCaHLTBitMon_ParallelJobs::p, refIndex_, refRate_, alignCSCRings::s, pileupReCalc_HLTpaths::scale, and streamNames_.

Referenced by analyze(), beginRun(), endJob(), endLuminosityBlock(), and endRun().

460 {
461  // final printout of accumulated statistics
462 
463  using namespace std;
464  using namespace edm;
465  const unsigned int n(hlNames_.size());
466 
467  if ((n==0) and (nEvents_==0)) return;
468 
469  LogVerbatim("HLTrigReport") << dec << endl;
470  LogVerbatim("HLTrigReport") << "HLT-Report " << "---------- Event Summary ------------" << endl;
471  if (not header.empty())
472  LogVerbatim("HLTrigReport") << "HLT-Report " << header << endl;
473  LogVerbatim("HLTrigReport") << "HLT-Report"
474  << " Events total = " << nEvents_
475  << " wasrun = " << nWasRun_
476  << " passed = " << nAccept_
477  << " errors = " << nErrors_
478  << endl;
479 
480  // HLTConfigProvider not configured - cannot produce any detailed statistics
481  if (not configured_)
482  return;
483 
484  double scale = hlAccept_[refIndex_]>0 ? refRate_/hlAccept_[refIndex_] : 0.;
485  double alpha = 1 - (1.0 - .6854)/2; // for the Clopper-Pearson 68% CI
486 
487  LogVerbatim("HLTrigReport") << endl;
488  LogVerbatim("HLTrigReport") << "HLT-Report " << "---------- HLTrig Summary ------------" << endl;
489  LogVerbatim("HLTrigReport") << "HLT-Report "
490  << right << setw(7) << "HLT #" << " "
491  << right << setw(7) << "WasRun" << " "
492  << right << setw(7) << "L1S" << " "
493  << right << setw(7) << "Pre" << " "
494  << right << setw(7) << "HLT" << " "
495  << right << setw(9) << "%L1sPre" << " "
496  << right << setw(7) << "Rate" << " "
497  << right << setw(7) << "RateHi" << " "
498  << right << setw(7) << "Errors" << " "
499  << "Name" << endl;
500 
501  if (n>0) {
502  for (unsigned int i=0; i!=n; ++i) {
503  LogVerbatim("HLTrigReport") << "HLT-Report "
504  << right << setw(7) << i << " "
505  << right << setw(7) << hlWasRun_[i] << " "
506  << right << setw(7) << hltL1s_[i] << " "
507  << right << setw(7) << hltPre_[i] << " "
508  << right << setw(7) << hlAccept_[i] << " "
509  << right << setw(9) << fixed << setprecision(5)
510  << static_cast<float>(100*hlAccept_[i])/
511  static_cast<float>(max(hltPre_[i], 1u)) << " "
512  << right << setw(7) << fixed << setprecision(1) << scale*hlAccept_[i] << " "
513  << right << setw(7) << fixed << setprecision(1) <<
514  ((hlAccept_[refIndex_]-hlAccept_[i] > 0) ? refRate_*ROOT::Math::beta_quantile(alpha, hlAccept_[i]+1, hlAccept_[refIndex_]-hlAccept_[i]) : 0) << " "
515  << right << setw(7) << hlErrors_[i] << " "
516  << hlNames_[i] << endl;
517  }
518  }
519 
520  LogVerbatim("HLTrigRprtTt") << endl;
521  LogVerbatim("HLTrigRprtTt") << "HLT-Report " << "---------- HLTrig Summary ------------" << endl;
522  LogVerbatim("HLTrigRprtTt") << "HLT-Report "
523  << right << setw(7) << "HLT #" << " "
524  << right << setw(7) << "WasRun" << " "
525  << right << setw(7) << "L1S" << " "
526  << right << setw(7) << "Pre" << " "
527  << right << setw(7) << "HLT" << " "
528  << right << setw(9) << "%L1sPre" << " "
529  << right << setw(7) << "Rate" << " "
530  << right << setw(7) << "RateHi" << " "
531  << right << setw(7) << "HLTtot" << " "
532  << right << setw(7) << "RateTot" << " "
533  << right << setw(7) << "Errors" << " "
534  << "Name" << endl;
535 
536  if (n>0) {
537  for (unsigned int i=0; i!=n; ++i) {
538  LogVerbatim("HLTrigRprtTt") << "HLT-Report "
539  << right << setw(7) << i << " "
540  << right << setw(7) << hlWasRun_[i] << " "
541  << right << setw(7) << hltL1s_[i] << " "
542  << right << setw(7) << hltPre_[i] << " "
543  << right << setw(7) << hlAccept_[i] << " "
544  << right << setw(9) << fixed << setprecision(5)
545  << static_cast<float>(100*hlAccept_[i])/
546  static_cast<float>(max(hltPre_[i], 1u)) << " "
547  << right << setw(7) << fixed << setprecision(1) << scale*hlAccept_[i] << " "
548  << right << setw(7) << fixed << setprecision(1) <<
549  ((hlAccept_[refIndex_]-hlAccept_[i] > 0) ? refRate_*ROOT::Math::beta_quantile(alpha, hlAccept_[i]+1, hlAccept_[refIndex_]-hlAccept_[i]) : 0) << " "
550  << right << setw(7) << hlAccTot_[i] << " "
551  << right << setw(7) << fixed << setprecision(1) << scale*hlAccTot_[i] << " "
552  << right << setw(7) << hlErrors_[i] << " "
553  << hlNames_[i] << endl;
554  }
555 
556  // now for each dataset
557  for (size_t ds=0; ds<hlIndex_.size(); ++ds) {
558  LogVerbatim("HLTrigRprtPD") << endl;
559  LogVerbatim("HLTrigRprtPD") << "HLT-Report " << "---------- Dataset Summary: " << datasetNames_[ds] << " ------------" << hlAllTotDS_[ds] << endl;
560  LogVerbatim("HLTrigRprtPD") << "HLT-Report "
561  << right << setw(7) << "HLT #" << " "
562  << right << setw(7) << "WasRun" << " "
563  << right << setw(7) << "L1S" << " "
564  << right << setw(7) << "Pre" << " "
565  << right << setw(7) << "HLT" << " "
566  << right << setw(9) << "%L1sPre" << " "
567  << right << setw(7) << "Rate" << " "
568  << right << setw(7) << "RateHi" << " "
569  << right << setw(7) << "HLTtot" << " "
570  << right << setw(7) << "RateTot" << " "
571  << right << setw(7) << "Errors" << " "
572  << "Name" << endl;
573  for (size_t p=0; p<hlIndex_[ds].size(); ++p) {
574  LogVerbatim("HLTrigRprtPD") << "HLT-Report "
575  << right << setw(7) << p << " "
576  << right << setw(7) << hlWasRun_[hlIndex_[ds][p]] << " "
577  << right << setw(7) << hltL1s_[hlIndex_[ds][p]] << " "
578  << right << setw(7) << hltPre_[hlIndex_[ds][p]] << " "
579  << right << setw(7) << hlAccept_[hlIndex_[ds][p]] << " "
580  << right << setw(9) << fixed << setprecision(5)
581  << static_cast<float>(100*hlAccept_[hlIndex_[ds][p]])/
582  static_cast<float>(max(hltPre_[hlIndex_[ds][p]], 1u)) << " "
583  << right << setw(7) << fixed << setprecision(1) << scale*hlAccept_[hlIndex_[ds][p]] << " "
584  << right << setw(7) << fixed << setprecision(1) <<
585  ((hlAccept_[refIndex_]-hlAccept_[hlIndex_[ds][p]] > 0) ? refRate_*ROOT::Math::beta_quantile(alpha, hlAccept_[hlIndex_[ds][p]]+1, hlAccept_[refIndex_]-hlAccept_[hlIndex_[ds][p]]) : 0) << " "
586  << right << setw(7) << hlAccTotDS_[ds][p] << " "
587  << right << setw(7) << fixed << setprecision(1) << scale*hlAccTotDS_[ds][p] << " "
588  << right << setw(7) << hlErrors_[hlIndex_[ds][p]] << " "
589  << hlNames_[hlIndex_[ds][p]] << endl;
590  }
591  }
592 
593  // now for each stream
594  for (size_t s=0; s<dsIndex_.size(); ++s) {
595  LogVerbatim("HLTrigRprtST") << endl;
596  LogVerbatim("HLTrigRprtST") << "HLT-Report " << "---------- Stream Summary: " << streamNames_[s] << " ------------" << dsAllTotS_[s] << endl;
597  LogVerbatim("HLTrigRprtST") << "HLT-Report "
598  << right << setw(10) << "Dataset #" << " "
599  << right << setw(10) << "Individual" << " "
600  << right << setw(10) << "Total" << " "
601  << right << setw(10) << "Rate" << " "
602  << right << setw(10) << "RateHi" << " "
603  << right << setw(10) << "RateTot" << " "
604  << "Name" << endl;
605  for (size_t ds=0;ds<dsIndex_[s].size(); ++ds) {
606  unsigned int acceptedDS = hlAccTotDS_[dsIndex_[s][ds]][hlIndex_[dsIndex_[s][ds]].size()-1];
607  LogVerbatim("HLTrigRprtST") << "HLT-Report "
608  << right << setw(10) << ds << " "
609  << right << setw(10) << acceptedDS << " "
610  << right << setw(10) << dsAccTotS_[s][ds] << " "
611  << right << setw(10) << fixed << setprecision(1) << scale*acceptedDS << " "
612  << right << setw(10) << fixed << setprecision(1) <<
613  ((hlAccept_[refIndex_]-acceptedDS > 0) ? refRate_*ROOT::Math::beta_quantile(alpha, acceptedDS+1, hlAccept_[refIndex_]-acceptedDS) : 0) << " "
614  << right << setw(10) << fixed << setprecision(1) << scale*dsAccTotS_[s][ds] << " "
615  << datasetNames_[dsIndex_[s][ds]] << endl;
616  }
617  }
618 
619  } else {
620  LogVerbatim("HLTrigReport") << "HLT-Report - No HLT paths found!" << endl;
621  }
622 
623  LogVerbatim("HLTrigReport") << endl;
624  LogVerbatim("HLTrigReport") << "HLT-Report end!" << endl;
625  LogVerbatim("HLTrigReport") << endl;
626 
627  return;
628 }
std::vector< unsigned int > hlErrors_
Definition: HLTrigReport.h:81
int i
Definition: DBlmapReader.cc:9
float alpha
Definition: AMPTWrapper.h:95
std::vector< unsigned int > hlAccTot_
Definition: HLTrigReport.h:80
std::vector< std::string > hlNames_
Definition: HLTrigReport.h:85
std::vector< unsigned int > dsAllTotS_
Definition: HLTrigReport.h:95
std::vector< std::vector< unsigned int > > hlAccTotDS_
Definition: HLTrigReport.h:88
unsigned int nWasRun_
Definition: HLTrigReport.h:72
std::vector< std::string > datasetNames_
Definition: HLTrigReport.h:90
double refRate_
Definition: HLTrigReport.h:101
std::vector< unsigned int > hltL1s_
Definition: HLTrigReport.h:77
const T & max(const T &a, const T &b)
std::vector< std::string > streamNames_
Definition: HLTrigReport.h:96
unsigned int nAccept_
Definition: HLTrigReport.h:73
unsigned int refIndex_
Definition: HLTrigReport.h:100
std::vector< unsigned int > hlWasRun_
Definition: HLTrigReport.h:76
bool configured_
Definition: HLTrigReport.h:69
std::vector< unsigned int > hlAllTotDS_
Definition: HLTrigReport.h:89
unsigned int nEvents_
Definition: HLTrigReport.h:71
std::vector< unsigned int > hltPre_
Definition: HLTrigReport.h:78
unsigned int nErrors_
Definition: HLTrigReport.h:74
std::vector< std::vector< unsigned int > > hlIndex_
Definition: HLTrigReport.h:87
std::vector< unsigned int > hlAccept_
Definition: HLTrigReport.h:79
std::vector< std::vector< unsigned int > > dsAccTotS_
Definition: HLTrigReport.h:94
std::vector< std::vector< unsigned int > > dsIndex_
Definition: HLTrigReport.h:93
void HLTrigReport::endJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 291 of file HLTrigReport.cc.

References datasetCounts(), dumpReport(), EVERY_JOB, reportBy_, serviceBy_, and streamCounts().

291  {
292  if (reportBy_ == EVERY_JOB)
293  dumpReport("Summary for Job");
295  edm::Service<HLTrigReportService>()->setDatasetCounts(datasetCounts());
296  edm::Service<HLTrigReportService>()->setStreamCounts(streamCounts());
297  }
298 
299 }
const std::vector< unsigned int > & streamCounts() const
ReportEvery reportBy_
Definition: HLTrigReport.h:103
void dumpReport(std::string const &header=std::string())
const std::vector< unsigned int > & datasetCounts() const
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
void HLTrigReport::endLuminosityBlock ( edm::LuminosityBlock const &  lumi,
edm::EventSetup const &  setup 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 356 of file HLTrigReport.cc.

References datasetCounts(), dumpReport(), EVERY_LUMI, edm::LuminosityBlockBase::luminosityBlock(), reportBy_, edm::LuminosityBlockBase::run(), serviceBy_, and streamCounts().

356  {
357  if (reportBy_ == EVERY_LUMI) {
358  std::stringstream stream;
359  stream << "Summary for Run " << lumi.run() << ", LumiSection " << lumi.luminosityBlock();
360  dumpReport(stream.str());
361  }
363  edm::Service<HLTrigReportService>()->setDatasetCounts(datasetCounts());
364  edm::Service<HLTrigReportService>()->setStreamCounts(streamCounts());
365  }
366 }
const std::vector< unsigned int > & streamCounts() const
tuple lumi
Definition: fjr2json.py:35
ReportEvery reportBy_
Definition: HLTrigReport.h:103
void dumpReport(std::string const &header=std::string())
const std::vector< unsigned int > & datasetCounts() const
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
void HLTrigReport::endRun ( edm::Run const &  run,
edm::EventSetup const &  setup 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 340 of file HLTrigReport.cc.

References datasetCounts(), dumpReport(), EVERY_RUN, reportBy_, edm::RunBase::run(), serviceBy_, and streamCounts().

340  {
341  if (reportBy_ == EVERY_RUN) {
342  std::stringstream stream;
343  stream << "Summary for Run " << run.run();
344  dumpReport(stream.str());
345  }
347  edm::Service<HLTrigReportService>()->setDatasetCounts(datasetCounts());
348  edm::Service<HLTrigReportService>()->setStreamCounts(streamCounts());
349  }
350 }
const std::vector< unsigned int > & streamCounts() const
ReportEvery reportBy_
Definition: HLTrigReport.h:103
void dumpReport(std::string const &header=std::string())
const std::vector< unsigned int > & datasetCounts() const
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
void HLTrigReport::reset ( bool  changed = false)

Definition at line 138 of file HLTrigReport.cc.

References HLTConfigProvider::datasetContents(), datasetContents_, HLTConfigProvider::datasetNames(), datasetNames_, dsAccTotS_, dsAllTotS_, dsIndex_, hlAccept_, hlAccTot_, hlAccTotDS_, hlAllTotDS_, hlErrors_, hlIndex_, hlNames_, hltConfig_, hltL1s_, hltPre_, hlWasRun_, i, isCustomDatasets_, isCustomStreams_, j, diffTwoXMLs::label, HLTConfigProvider::moduleLabels(), HLTConfigProvider::moduleType(), n, nAccept_, nErrors_, nEvents_, NEVER, nWasRun_, AlCaHLTBitMon_ParallelJobs::p, posL1s_, posPre_, refIndex_, refPath_, alignCSCRings::s, serviceBy_, findQualityFiles::size, HLTConfigProvider::streamContents(), streamContents_, HLTConfigProvider::streamNames(), streamNames_, HLTConfigProvider::triggerIndex(), and HLTConfigProvider::triggerNames().

Referenced by analyze(), beginJob(), beginLuminosityBlock(), and beginRun().

138  {
139 
140  // reset global counters
141  nEvents_ = 0;
142  nWasRun_ = 0;
143  nAccept_ = 0;
144  nErrors_ = 0;
145 
146  // update trigger names
147  if (changed)
149 
150  const unsigned int n = hlNames_.size();
151 
152  if (changed) {
153  // resize per-path counters
154  hlWasRun_.resize(n);
155  hltL1s_.resize(n);
156  hltPre_.resize(n);
157  hlAccept_.resize(n);
158  hlAccTot_.resize(n);
159  hlErrors_.resize(n);
160  // find the positions of seeding and prescaler modules
161  posL1s_.resize(n);
162  posPre_.resize(n);
163  for (unsigned int i = 0; i < n; ++i) {
164  posL1s_[i] = -1;
165  posPre_[i] = -1;
166  const std::vector<std::string> & moduleLabels(hltConfig_.moduleLabels(i));
167  for (unsigned int j = 0; j < moduleLabels.size(); ++j) {
168  const std::string & label = hltConfig_.moduleType(moduleLabels[j]);
169  if (label == "HLTLevel1GTSeed")
170  posL1s_[i] = j;
171  else if (label == "HLTPrescaler")
172  posPre_[i] = j;
173  }
174  }
175  }
176 
177  // reset per-path counters
178  for (unsigned int i = 0; i < n; ++i) {
179  hlWasRun_[i] = 0;
180  hltL1s_[i] = 0;
181  hltPre_[i] = 0;
182  hlAccept_[i] = 0;
183  hlAccTot_[i] = 0;
184  hlErrors_[i] = 0;
185  }
186 
187  // if not overridden, reload the datasets and streams
188  if (changed and not isCustomDatasets_) {
191  }
192  if (changed and not isCustomStreams_) {
195  }
196 
197  if (changed) {
198  // fill the matrices of hlIndex_, hlAccTotDS_
199  hlIndex_.clear();
200  hlIndex_.resize(datasetNames_.size());
201  hlAccTotDS_.clear();
202  hlAllTotDS_.clear();
203  hlAccTotDS_.resize(datasetNames_.size());
204  hlAllTotDS_.resize(datasetNames_.size());
205  for (unsigned int ds = 0; ds < datasetNames_.size(); ds++) {
206  unsigned int size = datasetContents_[ds].size();
207  hlIndex_[ds].reserve(size);
208  hlAccTotDS_[ds].reserve(size);
209  hlAllTotDS_[ds]=0;
210  for (unsigned int p = 0; p < size; ++p) {
211  unsigned int i = hltConfig_.triggerIndex(datasetContents_[ds][p]);
212  if (i<n) {
213  hlIndex_[ds].push_back(i);
214  hlAccTotDS_[ds].push_back(0);
215  }
216  }
217  }
218  } else {
219  // reset the matrix of hlAccTotDS_
220  for (unsigned int ds = 0; ds < datasetNames_.size(); ds++) {
221  hlAllTotDS_[ds]=0;
222  for (unsigned int i = 0; i < hlAccTotDS_[ds].size(); ++i)
223  hlAccTotDS_[ds][i] = 0;
224  }
225  }
226 
227  if (changed) {
228  // fill the matrices of dsIndex_, dsAccTotS_
229  dsIndex_.clear();
230  dsIndex_.resize(streamNames_.size());
231  dsAccTotS_.clear();
232  dsAllTotS_.clear();
233  dsAccTotS_.resize(streamNames_.size());
234  dsAllTotS_.resize(streamNames_.size());
235  for (unsigned int s = 0; s < streamNames_.size(); ++s) {
236  unsigned int size = streamContents_[s].size();
237  dsIndex_.reserve(size);
238  dsAccTotS_.reserve(size);
239  dsAllTotS_[s]=0;
240  for (unsigned int ds = 0; ds < size; ++ds) {
241  unsigned int i = 0;
242  for (; i<datasetNames_.size(); i++) if (datasetNames_[i] == streamContents_[s][ds])
243  break;
244  // report only datasets that have at least one path otherwise crash
245  if (i < datasetNames_.size() and hlIndex_[i].size() > 0) {
246  dsIndex_[s].push_back(i);
247  dsAccTotS_[s].push_back(0);
248  }
249  }
250  }
251  } else {
252  // reset the matrix of dsAccTotS_
253  for (unsigned int s = 0; s < streamNames_.size(); ++s) {
254  dsAllTotS_[s]=0;
255  for (unsigned int i = 0; i < dsAccTotS_[s].size(); ++i)
256  dsAccTotS_[s][i] = 0;
257  }
258  }
259 
260  // if needed, update the reference path
261  if (changed) {
263  if (refIndex_ >= n) {
264  refIndex_ = 0;
265  edm::LogWarning("HLTrigReport")
266  << "Requested reference path '"+refPath_+"' not in HLT menu. "
267  << "Using HLTriggerFinalPath instead.";
268  refPath_ = "HLTriggerFinalPath";
270  if (refIndex_ >= n) {
271  refIndex_ = 0;
272  edm::LogWarning("HLTrigReport")
273  << "Requested reference path '"+refPath_+"' not in HLT menu. "
274  << "Using first path in table (index=0) instead.";
275  }
276  }
277  }
278 
279  if (changed and serviceBy_ != NEVER and edm::Service<HLTrigReportService>()) {
282  }
283 
284 }
std::vector< unsigned int > hlErrors_
Definition: HLTrigReport.h:81
std::vector< std::vector< std::string > > datasetContents_
Definition: HLTrigReport.h:91
bool isCustomStreams_
Definition: HLTrigReport.h:98
int i
Definition: DBlmapReader.cc:9
bool isCustomDatasets_
Definition: HLTrigReport.h:92
std::vector< unsigned int > hlAccTot_
Definition: HLTrigReport.h:80
std::vector< std::string > hlNames_
Definition: HLTrigReport.h:85
const std::string moduleType(const std::string &module) const
C++ class name of module.
const std::vector< std::vector< std::string > > & streamContents() const
names of datasets for all streams
std::vector< unsigned int > dsAllTotS_
Definition: HLTrigReport.h:95
std::vector< std::vector< unsigned int > > hlAccTotDS_
Definition: HLTrigReport.h:88
const std::vector< std::string > & triggerNames() const
names of trigger paths
unsigned int nWasRun_
Definition: HLTrigReport.h:72
std::vector< std::string > datasetNames_
Definition: HLTrigReport.h:90
std::vector< int > posL1s_
Definition: HLTrigReport.h:83
unsigned int triggerIndex(const std::string &triggerName) const
slot position of trigger path in trigger table (0 to size-1)
std::vector< int > posPre_
Definition: HLTrigReport.h:84
std::vector< unsigned int > hltL1s_
Definition: HLTrigReport.h:77
const std::vector< std::string > & streamNames() const
int j
Definition: DBlmapReader.cc:9
std::vector< std::string > streamNames_
Definition: HLTrigReport.h:96
unsigned int nAccept_
Definition: HLTrigReport.h:73
unsigned int refIndex_
Definition: HLTrigReport.h:100
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
std::vector< unsigned int > hlWasRun_
Definition: HLTrigReport.h:76
std::string refPath_
Definition: HLTrigReport.h:99
HLTConfigProvider hltConfig_
Definition: HLTrigReport.h:106
std::vector< unsigned int > hlAllTotDS_
Definition: HLTrigReport.h:89
std::vector< std::vector< std::string > > streamContents_
Definition: HLTrigReport.h:97
unsigned int nEvents_
Definition: HLTrigReport.h:71
std::vector< unsigned int > hltPre_
Definition: HLTrigReport.h:78
unsigned int nErrors_
Definition: HLTrigReport.h:74
const std::vector< std::vector< std::string > > & datasetContents() const
names of trigger paths for all datasets
std::vector< std::vector< unsigned int > > hlIndex_
Definition: HLTrigReport.h:87
std::vector< unsigned int > hlAccept_
Definition: HLTrigReport.h:79
std::vector< std::vector< unsigned int > > dsAccTotS_
Definition: HLTrigReport.h:94
std::vector< std::vector< unsigned int > > dsIndex_
Definition: HLTrigReport.h:93
tuple size
Write out results.
const std::vector< std::string > & datasetNames() const
ReportEvery serviceBy_
Definition: HLTrigReport.h:105
const std::vector< unsigned int > & HLTrigReport::streamCounts ( ) const

Definition at line 134 of file HLTrigReport.cc.

References dsAllTotS_.

Referenced by analyze(), endJob(), endLuminosityBlock(), and endRun().

134  {
135  return dsAllTotS_;
136 }
std::vector< unsigned int > dsAllTotS_
Definition: HLTrigReport.h:95
const std::vector< std::string > & HLTrigReport::streamNames ( ) const

Definition at line 128 of file HLTrigReport.cc.

References streamNames_.

128  {
129  return streamNames_;
130 }
std::vector< std::string > streamNames_
Definition: HLTrigReport.h:96

Member Data Documentation

bool HLTrigReport::configured_
private

Definition at line 69 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), and dumpReport().

std::vector<std::vector<std::string> > HLTrigReport::datasetContents_
private

Definition at line 91 of file HLTrigReport.h.

Referenced by HLTrigReport(), and reset().

std::vector<std::string> HLTrigReport::datasetNames_
private

Definition at line 90 of file HLTrigReport.h.

Referenced by datasetNames(), dumpReport(), HLTrigReport(), and reset().

std::vector<std::vector<unsigned int> > HLTrigReport::dsAccTotS_
private

Definition at line 94 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::dsAllTotS_
private

Definition at line 95 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), reset(), and streamCounts().

std::vector<std::vector<unsigned int> > HLTrigReport::dsIndex_
private

Definition at line 93 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::hlAccept_
private

Definition at line 79 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::hlAccTot_
private

Definition at line 80 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<std::vector<unsigned int> > HLTrigReport::hlAccTotDS_
private

Definition at line 88 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::hlAllTotDS_
private

Definition at line 89 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), datasetCounts(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::hlErrors_
private

Definition at line 81 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<std::vector<unsigned int> > HLTrigReport::hlIndex_
private

Definition at line 87 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<std::string> HLTrigReport::hlNames_
private

Definition at line 85 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

HLTConfigProvider HLTrigReport::hltConfig_
private

Definition at line 106 of file HLTrigReport.h.

Referenced by beginRun(), and reset().

std::vector<unsigned int> HLTrigReport::hltL1s_
private

Definition at line 77 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<unsigned int> HLTrigReport::hltPre_
private

Definition at line 78 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

edm::InputTag HLTrigReport::hlTriggerResults_
private

Definition at line 68 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), and HLTrigReport().

std::vector<unsigned int> HLTrigReport::hlWasRun_
private

Definition at line 76 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

bool HLTrigReport::isCustomDatasets_
private

Definition at line 92 of file HLTrigReport.h.

Referenced by HLTrigReport(), and reset().

bool HLTrigReport::isCustomStreams_
private

Definition at line 98 of file HLTrigReport.h.

Referenced by HLTrigReport(), and reset().

unsigned int HLTrigReport::nAccept_
private

Definition at line 73 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

unsigned int HLTrigReport::nErrors_
private

Definition at line 74 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

unsigned int HLTrigReport::nEvents_
private

Definition at line 71 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

unsigned int HLTrigReport::nWasRun_
private

Definition at line 72 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), dumpReport(), and reset().

std::vector<int> HLTrigReport::posL1s_
private

Definition at line 83 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), and reset().

std::vector<int> HLTrigReport::posPre_
private

Definition at line 84 of file HLTrigReport.h.

Referenced by analyze(), beginRun(), and reset().

unsigned int HLTrigReport::refIndex_
private

Definition at line 100 of file HLTrigReport.h.

Referenced by dumpReport(), HLTrigReport(), and reset().

std::string HLTrigReport::refPath_
private

Definition at line 99 of file HLTrigReport.h.

Referenced by HLTrigReport(), and reset().

double HLTrigReport::refRate_
private

Definition at line 101 of file HLTrigReport.h.

Referenced by dumpReport(), and HLTrigReport().

ReportEvery HLTrigReport::reportBy_
private

Definition at line 103 of file HLTrigReport.h.

Referenced by analyze(), endJob(), endLuminosityBlock(), and endRun().

ReportEvery HLTrigReport::resetBy_
private

Definition at line 104 of file HLTrigReport.h.

Referenced by analyze(), beginJob(), beginLuminosityBlock(), and beginRun().

ReportEvery HLTrigReport::serviceBy_
private

Definition at line 105 of file HLTrigReport.h.

Referenced by analyze(), endJob(), endLuminosityBlock(), endRun(), HLTrigReport(), and reset().

std::vector<std::vector<std::string> > HLTrigReport::streamContents_
private

Definition at line 97 of file HLTrigReport.h.

Referenced by HLTrigReport(), and reset().

std::vector<std::string> HLTrigReport::streamNames_
private

Definition at line 96 of file HLTrigReport.h.

Referenced by dumpReport(), HLTrigReport(), reset(), and streamNames().