CMS 3D CMS Logo

SiPixelHitEfficiencyModule.h
Go to the documentation of this file.
1 // Package: SiPixelMonitorTrack
2 // Class: SiPixelHitEfficiencyModule
3 //
4 // class SiPixelHitEfficiencyModule SiPixelHitEfficiencyModule.h
5 // DQM/SiPixelMonitorTrack/src/SiPixelHitEfficiencyModule.h
6 //
7 // Description: SiPixel hit efficiency data quality monitoring modules
8 // Implementation: prototype -> improved -> never final - end of the 1st step
9 //
10 // Original Authors: Romain Rougny & Luca Mucibello
11 // Created: Mar Nov 10 13:29:00 CET 2009
12 
13 #ifndef SiPixelMonitorTrack_SiPixelHitEfficiencyModule_h
14 #define SiPixelMonitorTrack_SiPixelHitEfficiencyModule_h
15 
16 #include <utility>
17 
18 //#include "DataFormats/GeometryCommonDetAlgo/interface/MeasurementVector.h"
24 #include <cstdint>
25 
26 namespace edm {
27  class EventSetup;
28 }
29 
31 public:
34 
36  SiPixelHitEfficiencyModule(const uint32_t);
38 
39  void book(
40  const edm::ParameterSet &, edm::EventSetup const &, DQMStore::IBooker &, int type = 0, bool isUpgrade = false);
41  void fill(const TrackerTopology *pTT,
42  const LocalTrajectoryParameters &ltp,
43  bool isHitValid,
44  bool modon = true,
45  bool ladon = true,
46  bool layon = true,
47  bool phion = true,
48  bool bladeon = true,
49  bool diskon = true,
50  bool ringon = true);
51  void computeEfficiencies(bool modon = true,
52  bool ladon = true,
53  bool layon = true,
54  bool phion = true,
55  bool bladeon = true,
56  bool diskon = true,
57  bool ringon = true);
58  std::pair<double, double> eff(double nValid, double nMissing);
59 
60 private:
61  uint32_t id_;
63  bool debug_;
65 
66  // EFFICIENCY
67  MonitorElement *meEfficiency_;
68  MonitorElement *meEfficiencyX_;
69  MonitorElement *meEfficiencyY_;
70  MonitorElement *meEfficiencyAlpha_;
71  MonitorElement *meEfficiencyBeta_;
72 
73  MonitorElement *meEfficiencyLad_;
74  MonitorElement *meEfficiencyXLad_;
75  MonitorElement *meEfficiencyYLad_;
76  MonitorElement *meEfficiencyAlphaLad_;
77  MonitorElement *meEfficiencyBetaLad_;
78 
79  MonitorElement *meEfficiencyLay_;
80  MonitorElement *meEfficiencyXLay_;
81  MonitorElement *meEfficiencyYLay_;
82  MonitorElement *meEfficiencyAlphaLay_;
83  MonitorElement *meEfficiencyBetaLay_;
84 
85  MonitorElement *meEfficiencyPhi_;
86  MonitorElement *meEfficiencyXPhi_;
87  MonitorElement *meEfficiencyYPhi_;
88  MonitorElement *meEfficiencyAlphaPhi_;
89  MonitorElement *meEfficiencyBetaPhi_;
90 
91  MonitorElement *meEfficiencyBlade_;
92  MonitorElement *meEfficiencyXBlade_;
93  MonitorElement *meEfficiencyYBlade_;
94  MonitorElement *meEfficiencyAlphaBlade_;
95  MonitorElement *meEfficiencyBetaBlade_;
96 
97  MonitorElement *meEfficiencyDisk_;
98  MonitorElement *meEfficiencyXDisk_;
99  MonitorElement *meEfficiencyYDisk_;
100  MonitorElement *meEfficiencyAlphaDisk_;
101  MonitorElement *meEfficiencyBetaDisk_;
102 
103  MonitorElement *meEfficiencyRing_;
104  MonitorElement *meEfficiencyXRing_;
105  MonitorElement *meEfficiencyYRing_;
106  MonitorElement *meEfficiencyAlphaRing_;
107  MonitorElement *meEfficiencyBetaRing_;
108 
109  // VALID HITS
110  MonitorElement *meValid_;
111  MonitorElement *meValidX_;
112  MonitorElement *meValidY_;
113  MonitorElement *meValidAlpha_;
114  MonitorElement *meValidBeta_;
115 
116  MonitorElement *meValidLad_;
117  MonitorElement *meValidXLad_;
118  MonitorElement *meValidYLad_;
119  MonitorElement *meValidModLad_;
120  MonitorElement *meValidAlphaLad_;
121  MonitorElement *meValidBetaLad_;
122 
123  MonitorElement *meValidLay_;
124  MonitorElement *meValidXLay_;
125  MonitorElement *meValidYLay_;
126  MonitorElement *meValidAlphaLay_;
127  MonitorElement *meValidBetaLay_;
128 
129  MonitorElement *meValidPhi_;
130  MonitorElement *meValidXPhi_;
131  MonitorElement *meValidYPhi_;
132  MonitorElement *meValidAlphaPhi_;
133  MonitorElement *meValidBetaPhi_;
134 
135  MonitorElement *meValidBlade_;
136  MonitorElement *meValidXBlade_;
137  MonitorElement *meValidYBlade_;
138  MonitorElement *meValidAlphaBlade_;
139  MonitorElement *meValidBetaBlade_;
140 
141  MonitorElement *meValidDisk_;
142  MonitorElement *meValidXDisk_;
143  MonitorElement *meValidYDisk_;
144  MonitorElement *meValidAlphaDisk_;
145  MonitorElement *meValidBetaDisk_;
146 
147  MonitorElement *meValidRing_;
148  MonitorElement *meValidXRing_;
149  MonitorElement *meValidYRing_;
150  MonitorElement *meValidAlphaRing_;
151  MonitorElement *meValidBetaRing_;
152 
153  // MISSING HITS
154  MonitorElement *meMissing_;
155  MonitorElement *meMissingX_;
156  MonitorElement *meMissingY_;
157  MonitorElement *meMissingAlpha_;
158  MonitorElement *meMissingBeta_;
159 
160  MonitorElement *meMissingLad_;
161  MonitorElement *meMissingXLad_;
162  MonitorElement *meMissingYLad_;
163  MonitorElement *meMissingModLad_;
164  MonitorElement *meMissingAlphaLad_;
165  MonitorElement *meMissingBetaLad_;
166 
167  MonitorElement *meMissingLay_;
168  MonitorElement *meMissingXLay_;
169  MonitorElement *meMissingYLay_;
170  MonitorElement *meMissingAlphaLay_;
171  MonitorElement *meMissingBetaLay_;
172 
173  MonitorElement *meMissingPhi_;
174  MonitorElement *meMissingXPhi_;
175  MonitorElement *meMissingYPhi_;
176  MonitorElement *meMissingAlphaPhi_;
177  MonitorElement *meMissingBetaPhi_;
178 
179  MonitorElement *meMissingBlade_;
180  MonitorElement *meMissingXBlade_;
181  MonitorElement *meMissingYBlade_;
182  MonitorElement *meMissingAlphaBlade_;
183  MonitorElement *meMissingBetaBlade_;
184 
185  MonitorElement *meMissingDisk_;
186  MonitorElement *meMissingXDisk_;
187  MonitorElement *meMissingYDisk_;
188  MonitorElement *meMissingAlphaDisk_;
189  MonitorElement *meMissingBetaDisk_;
190 
191  MonitorElement *meMissingRing_;
192  MonitorElement *meMissingXRing_;
193  MonitorElement *meMissingYRing_;
194  MonitorElement *meMissingAlphaRing_;
195  MonitorElement *meMissingBetaRing_;
196 };
197 
198 #endif
type
Definition: HCALResponse.h:21
dqm::reco::MonitorElement MonitorElement
HLT enums.