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 private:
55 
56  struct HistLim {
57 
58  HistLim(int nbin, double mini, double maxi)
59  : n(nbin), min(mini), max(maxi) {
60  }
61  int n;
62  double min;
63  double max;
64  };
65 
66  virtual void analyze(const edm::Event&, const edm::EventSetup&);
67 
68  virtual void beginJob();
69 
70  virtual void endJob();
71 
72  void beginRun();
73 
74  void endRun();
75 
77  std::map<std::string, MonitorElement*> *msm_;
78 
79  void book1D(std::string name, int n, double min, double max);
80 
81  void book1D(std::string name, const HistLim& limX);
82 
83  void fill1D(std::string name, double X, double weight = 1);
84 
85  void book2D(std::string name, const HistLim& limX, const HistLim& limY);
86 
87  void fill2D(std::string name, double X, double Y, double weight = 1);
88 
89  void bookPf(std::string name, const HistLim& limX, const HistLim& limY);
90 
91  void fillPf(std::string name, double X, double Y);
92 
94 
95  void booking(std::string subdetopt, int bnoise, int bmc);
96 
97  std::string str(int x);
98 
99  template<class Digi> void reco(const edm::Event& iEvent, const edm::EventSetup& iSetup, const edm::EDGetTokenT<edm::SortedCollection<Digi> > &tok);
100  void eval_occupancy();
101 
109  int noise_;
110 
115 
118  int nevent1;
119  int nevent2;
120  int nevent3;
121  int nevent4;
122  int nevtot;
123 
124 };
125 
126 #endif
127 
128 
edm::ESHandle< CaloGeometry > geometry
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 &)
void book1D(std::string name, int n, double min, double max)
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 &)
T min(T a, T b)
Definition: MathUtil.h:58
edm::EDGetTokenT< edm::SortedCollection< HFDataFrame > > tok_hf_
void fill1D(std::string name, double X, double weight=1)
edm::EDGetTokenT< edm::PCaloHitContainer > tok_mc_
std::string str(int x)
void bookPf(std::string name, const HistLim &limX, const HistLim &limY)
edm::ESHandle< HcalDbService > conditions
void book2D(std::string name, const HistLim &limX, const HistLim &limY)
Definition: DDAxes.h:10
int weight
Definition: histoStyle.py:50
void booking(std::string subdetopt, int bnoise, int bmc)
HistLim(int nbin, double mini, double maxi)