CMS 3D CMS Logo

L1TTestsSummary.h
Go to the documentation of this file.
1 #ifndef DQM_L1TMONITORCLIENT_L1TOCCUPANCYCLIENT_H
2 #define DQM_L1TMONITORCLIENT_L1TOCCUPANCYCLIENT_H
3 
9 
14 
15 #include <memory>
16 #include <iostream>
17 #include <fstream>
18 #include <string>
19 #include <vector>
20 #include <map>
21 #include <TH1F.h>
22 #include <TH1D.h>
23 #include <TH2F.h>
24 #include <TF1.h>
25 #include <TProfile2D.h>
26 
28 
29  public:
30 
31  // Constructor
33 
34  // Destructor
35  ~L1TTestsSummary() override;
36 
37  protected:
38 
39  void dqmEndLuminosityBlock (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const edm::LuminosityBlock& lumiSeg,const edm::EventSetup& c) override; // DQM Client Diagnostic
40 
41  void dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)override;
42  virtual void book(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter);
43 
44  private:
45 
46  edm::ParameterSet mParameters; //parameter set from python
47 
48  // bool
49  bool mVerbose; // verbose mode
50  bool mMonitorL1TRate; // If we are going to monitor the L1TRate Module
51  bool mMonitorL1TSync; // If we are going to monitor the L1TSync Module
52  bool mMonitorL1TOccupancy; // If we are going to monitor the L1TOccupancy Module
53 
54  // int
55  int binYRate,binYSync,binYOccpancy; // What bin in Y corresponds to which test in L1TSummary
56 
57  // string
58  std::string mL1TRatePath; // Path to histograms produced by L1TRate Module
59  std::string mL1TSyncPath; // Path to histograms produced by L1TSync Module
60  std::string mL1TOccupancyPath; // Path to histograms produced by L1TOccupancy Module
61 
62  // vector
63  std::vector<int> mProcessedLS; // Already processed Luminosity Blocks
64 
65  // MonitorElement
70 
71  // Private Functions
72  private:
73 
77  void updateL1TSummary(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter);
78 };
79 
80 #endif
void updateL1TRateMonitor(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
MonitorElement * mL1TOccupancyMonitor
~L1TTestsSummary() override
void dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) override
void updateL1TSummary(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
virtual void book(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
void updateL1TOccupancyMonitor(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
std::vector< int > mProcessedLS
MonitorElement * mL1TSummary
MonitorElement * mL1TSyncMonitor
void updateL1TSyncMonitor(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter)
void dqmEndLuminosityBlock(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override
MonitorElement * mL1TRateMonitor
std::string mL1TRatePath
std::string mL1TSyncPath
std::string mL1TOccupancyPath
L1TTestsSummary(const edm::ParameterSet &ps)
edm::ParameterSet mParameters