CMS 3D CMS Logo

ElectronDqmAnalyzerBase.h
Go to the documentation of this file.
1 
2 #ifndef ElectronDqmAnalyzerBase_h
3 #define ElectronDqmAnalyzerBase_h
4 
5 class DQMStore ;
6 class MonitorElement ;
7 
10 #include <Rtypes.h>
11 #include <string>
12 #include <vector>
13 
14 //DQM
18 
20  {
21 
22  protected:
23 
24  explicit ElectronDqmAnalyzerBase( const edm::ParameterSet & conf ) ;
25  virtual ~ElectronDqmAnalyzerBase() ;
26 
27  // specific implementation of EDAnalyzer
28  virtual void endRun( edm::Run const &, edm::EventSetup const & ) override;
29  virtual void endLuminosityBlock( edm::LuminosityBlock const &, edm::EventSetup const & ) override ;
30  virtual void dqmBeginRun( edm::Run const & , edm::EventSetup const & ) override;
31  void bookHistograms( DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
32 
33  // interface to implement in derived classes
34  virtual void analyze( const edm::Event & e, const edm::EventSetup & c ) override {}
35 
36  // utility methods
37  bool finalStepDone() { return finalDone_ ; }
38  int verbosity() { return verbosity_ ; }
39 
40  void setBookPrefix( const std::string & ) ;
41  void setBookIndex( short ) ;
42  void setBookEfficiencyFlag( const bool & ) ;
43  void setBookStatOverflowFlag ( const bool & ) ;
44 
46  ( DQMStore::IBooker & , const std::string & name, const std::string & title,
47  int nchX, double lowX, double highX,
48  const std::string & titleX ="", const std::string & titleY ="Events",
49  Option_t * option = "E1 P" ) ;
50 
52  ( DQMStore::IBooker & , const std::string & name, const std::string & title,
53  int nchX, double lowX, double highX,
54  const std::string & titleX ="", const std::string & titleY ="Events",
55  Option_t * option = "E1 P" ) ;
56 
58  ( DQMStore::IBooker & , const std::string & name, const std::string & title,
59  int nchX, double lowX, double highX,
60  int nchY, double lowY, double highY,
61  const std::string & titleX ="", const std::string & titleY ="",
62  Option_t * option = "COLZ" ) ;
63 
65  ( DQMStore::IBooker & , const std::string & name, const std::string & title,
66  int nchX, double lowX, double highX,
67  int nchY, double lowY, double highY,
68  const std::string & titleX ="", const std::string & titleY ="",
69  Option_t * option = "COLZ" ) ;
70 
72  ( DQMStore::IBooker & , const std::string & name, const std::string & title,
73  int nchX, double lowX, double highX,
74  double lowY, double highY,
75  const std::string & titleX ="", const std::string & titleY ="",
76  Option_t * option = "E1 P" ) ;
77 
79  ( DQMStore::IBooker & iBooker, const std::string & name, MonitorElement * original,
80  const std::string & title ="" ) ;
81 
83  ( DQMStore::IBooker & iBooker, const std::string & name, const std::string & original,
84  const std::string & title ="" ) ;
85 
86  private:
87 
88  int verbosity_ ;
90  short bookIndex_ ;
91  bool bookEfficiencyFlag_ = false;
92  bool bookStatOverflowFlag_ = false;
94  std::vector<std::string> histoNames_ ;
100  bool finalDone_ ;
101 
102  // utility methods
103  std::string newName( const std::string & name ) ;
104  } ;
105 
106 #endif
107 
108 
109 
MonitorElement * bookH2withSumw2(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
MonitorElement * cloneH1(DQMStore::IBooker &iBooker, const std::string &name, MonitorElement *original, const std::string &title="")
virtual void analyze(const edm::Event &e, const edm::EventSetup &c) override
MonitorElement * bookH1withSumw2(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
MonitorElement * bookH2(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
void setBookPrefix(const std::string &)
ElectronDqmAnalyzerBase(const edm::ParameterSet &conf)
MonitorElement * bookP1(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="E1 P")
void setBookEfficiencyFlag(const bool &)
std::vector< std::string > histoNames_
MonitorElement * bookH1(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
virtual void endRun(edm::Run const &, edm::EventSetup const &) override
virtual void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override
virtual void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
void setBookStatOverflowFlag(const bool &)
Definition: Run.h:42
std::string newName(const std::string &name)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override