CMS 3D CMS Logo

HLTScalers.h
Go to the documentation of this file.
1 // -*-c++-*-
2 //
3 //
4 // Class to collect HLT scaler information
5 // for Trigger Cross Section Monitor
6 // [wittich 11/07]
7 
8 // Revision 1.19 2011/03/29 09:46:03 rekovic
9 // clean vector pairPDPaths in beginRun and tidy up
10 //
11 // Revision 1.18 2011/03/24 18:25:45 rekovic
12 // Add single 1D plot of streamA content
13 //
14 // Revision 1.17 2010/03/17 20:54:51 wittich
15 // add scalers that I manually reset on beginLumi
16 //
17 // Revision 1.16 2010/02/24 17:43:47 wittich
18 // - keep trying to get path names if it doesn't work first time
19 // - move the Bx histograms out of raw to the toplevel directory.
20 //
21 // Revision 1.15 2010/02/11 00:11:05 wmtan
22 // Adapt to moved framework header
23 //
24 // Revision 1.14 2010/02/02 11:42:53 wittich
25 // new diagnostic histograms
26 //
27 // Revision 1.13 2009/11/20 00:39:21 lorenzo
28 // fixes
29 //
30 // Revision 1.12 2008/09/03 13:59:05 wittich
31 // make HLT DQM path configurable via python parameter,
32 // which defaults to HLT/HLTScalers_EvF
33 //
34 // Revision 1.11 2008/09/03 02:13:47 wittich
35 // - bug fix in L1Scalers
36 // - configurable dqm directory in L1SCalers
37 // - other minor tweaks in HLTScalers
38 //
39 // Revision 1.10 2008/09/02 02:37:21 wittich
40 // - split L1 code from HLTScalers into L1Scalers
41 // - update cfi file accordingly
42 // - make sure to cd to correct directory before booking ME's
43 //
44 // Revision 1.9 2008/08/22 20:56:55 wittich
45 // - add client for HLT Scalers
46 // - Move rate calculation to HLTScalersClient and slim down the
47 // filter-farm part of HLTScalers
48 //
49 // Revision 1.8 2008/08/15 15:40:57 wteo
50 // split hltScalers into smaller histos, calculate rates
51 //
52 // Revision 1.7 2008/08/01 14:37:33 bjbloom
53 // Added ability to specify which paths are cross-correlated
54 //
55 
56 #ifndef HLTSCALERS_H
57 #define HLTSCALERS_H
58 
65 
66 class HLTScalers : public DQMEDAnalyzer {
67  public:
68  HLTScalers(const edm::ParameterSet &ps);
69  ~HLTScalers() override{};
70  void beginJob(void);
71  void dqmBeginRun(const edm::Run &run, const edm::EventSetup &c) override;
73  edm::EventSetup const &) override;
74  void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg,
75  const edm::EventSetup &c) override;
76  void analyze(const edm::Event &e, const edm::EventSetup &c) override;
78  void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg,
79  const edm::EventSetup &c) override;
80  void endRun(const edm::Run &run, const edm::EventSetup &c) override;
81 
82  private:
84  std::string folderName_; // dqm folder name
86  std::vector<std::pair<std::string, std::vector<std::string> > > pairPDPaths_;
88 
101 
103 
104  int nev_; // Number of events processed
105  int nLumi_; // number of lumi blocks
107 };
108 
109 #endif // HLTSCALERS_H
std::vector< std::pair< std::string, std::vector< std::string > > > pairPDPaths_
Definition: HLTScalers.h:86
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: HLTScalers.cc:140
HLTScalers(const edm::ParameterSet &ps)
Definition: HLTScalers.cc:79
MonitorElement * scalersN_
Definition: HLTScalers.h:91
MonitorElement * detailedScalers_
Definition: HLTScalers.h:94
std::string processname_
Definition: HLTScalers.h:85
void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override
DQM Client Diagnostic should be performed here:
Definition: HLTScalers.cc:302
MonitorElement * hltOverallScaler_
Definition: HLTScalers.h:98
MonitorElement * scalers_
Definition: HLTScalers.h:90
MonitorElement * diagnostic_
Definition: HLTScalers.h:100
MonitorElement * hltBxVsPath_
Definition: HLTScalers.h:97
void beginJob(void)
void dqmBeginRun(const edm::Run &run, const edm::EventSetup &c) override
Definition: HLTScalers.cc:104
~HLTScalers() override
Definition: HLTScalers.h:69
MonitorElement * hltCorrelations_
Definition: HLTScalers.h:93
int currentRun_
Definition: HLTScalers.h:106
HLTConfigProvider hltConfig_
Definition: HLTScalers.h:83
MonitorElement * scalersException_
Definition: HLTScalers.h:92
MonitorElement * nLumiBlock_
Definition: HLTScalers.h:96
bool resetMe_
Definition: HLTScalers.h:102
MonitorElement * hltOverallScalerN_
Definition: HLTScalers.h:99
void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override
Definition: HLTScalers.cc:186
bool sentPaths_
Definition: HLTScalers.h:102
std::string folderName_
Definition: HLTScalers.h:84
bool monitorDaemon_
Definition: HLTScalers.h:102
MonitorElement * hltBx_
Definition: HLTScalers.h:97
MonitorElement * nProc_
Definition: HLTScalers.h:95
MonitorElement * scalersPD_
Definition: HLTScalers.h:89
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: HLTScalers.cc:194
void endRun(const edm::Run &run, const edm::EventSetup &c) override
Definition: HLTScalers.cc:311
Definition: Run.h:43
edm::EDGetTokenT< edm::TriggerResults > trigResultsSource_
Definition: HLTScalers.h:87