CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalDigisValidation.h
Go to the documentation of this file.
1 #ifndef HCALDIGISVALIDATION_H
2 #define HCALDIGISVALIDATION_H
3 
4 #include <memory>
5 
9 
11 
15 
17 
19 
24 
29 
31 
32 
35 
36 
37 
38 #include <map>
39 #include <vector>
40 #include <utility>
41 #include <ostream>
42 #include <string>
43 #include <algorithm>
44 #include <cmath>
45 #include <iostream>
46 
48 public:
49  explicit HcalDigisValidation(const edm::ParameterSet&);
50 
52  };
53 
54  virtual void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &);
55 
56 private:
57 
58  struct HistLim {
59 
60  HistLim(int nbin, double mini, double maxi)
61  : n(nbin), min(mini), max(maxi) {
62  }
63  int n;
64  double min;
65  double max;
66  };
67 
68  virtual void analyze(const edm::Event&, const edm::EventSetup&);
69 
70  void beginRun();
71 
72  void endRun();
73 
74  std::map<std::string, MonitorElement*> *msm_;
75 
76  void book1D(DQMStore::IBooker &ib, std::string name, int n, double min, double max);
77 
78  void book1D(DQMStore::IBooker &ib, std::string name, const HistLim& limX);
79 
80  void fill1D(std::string name, double X, double weight = 1);
81 
82  void book2D(DQMStore::IBooker &ib, std::string name, const HistLim& limX, const HistLim& limY);
83 
84  void fill2D(std::string name, double X, double Y, double weight = 1);
85 
86  void bookPf(DQMStore::IBooker &ib, std::string name, const HistLim& limX, const HistLim& limY);
87 
88  void fillPf(std::string name, double X, double Y);
89 
91 
92  void booking(DQMStore::IBooker &ib, std::string subdetopt, int bnoise, int bmc);
93 
94  std::string str(int x);
95 
96  template<class Digi> void reco(const edm::Event& iEvent, const edm::EventSetup& iSetup, const edm::EDGetTokenT<edm::SortedCollection<Digi> > &tok);
97  void eval_occupancy();
98 
106  int noise_;
107 
112 
115  int nevent1;
116  int nevent2;
117  int nevent3;
118  int nevent4;
119  int nevtot;
120 
121 };
122 
123 #endif
124 
125 
virtual void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)
edm::ESHandle< CaloGeometry > geometry
int ib
Definition: cuy.py:660
edm::EDGetTokenT< edm::SortedCollection< HBHEDataFrame > > tok_hbhe_
edm::EDGetTokenT< edm::SortedCollection< HODataFrame > > tok_ho_
#define X(str)
Definition: MuonsGrabber.cc:48
void reco(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::EDGetTokenT< edm::SortedCollection< Digi > > &tok)
virtual void analyze(const edm::Event &, const edm::EventSetup &)
std::map< std::string, MonitorElement * > * msm_
int iEvent
Definition: GenABIO.cc:230
MonitorElement * monitor(std::string name)
void fillPf(std::string name, double X, double Y)
void fill2D(std::string name, double X, double Y, double weight=1)
HcalDigisValidation(const edm::ParameterSet &)
void bookPf(DQMStore::IBooker &ib, std::string name, const HistLim &limX, const HistLim &limY)
T min(T a, T b)
Definition: MathUtil.h:58
void book2D(DQMStore::IBooker &ib, std::string name, const HistLim &limX, const HistLim &limY)
edm::EDGetTokenT< edm::SortedCollection< HFDataFrame > > tok_hf_
void fill1D(std::string name, double X, double weight=1)
edm::EDGetTokenT< edm::PCaloHitContainer > tok_mc_
void booking(DQMStore::IBooker &ib, std::string subdetopt, int bnoise, int bmc)
std::string str(int x)
edm::ESHandle< HcalDbService > conditions
void book1D(DQMStore::IBooker &ib, std::string name, int n, double min, double max)
Definition: DDAxes.h:10
int weight
Definition: histoStyle.py:50
HistLim(int nbin, double mini, double maxi)
Definition: Run.h:41