CMS 3D CMS Logo

PhotonAnalyzer.h
Go to the documentation of this file.
1 #ifndef PhotonAnalyzer_H
2 #define PhotonAnalyzer_H
3 
6 //
11 // DataFormats
31 
36 
40 
42 
43 // Geometry
53 
54 #include "TFile.h"
55 #include "TH1.h"
56 #include "TH2.h"
57 #include "TTree.h"
58 #include "TVector3.h"
59 #include "TProfile.h"
60 
68 
69 //DQM services
72 
73 //
74 
75 #include <vector>
76 #include <string>
77 
88 // forward declarations
89 class TFile;
90 class TH1F;
91 class TH2F;
92 class TProfile;
93 class TTree;
94 class SimVertex;
95 class SimTrack;
96 
97 class PhotonAnalyzer : public DQMEDAnalyzer {
98 public:
99  explicit PhotonAnalyzer(const edm::ParameterSet&);
100  ~PhotonAnalyzer() override;
101  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
102  void analyze(const edm::Event&, const edm::EventSetup&) override;
103 
104 private:
106 
111 
113 
117  std::vector<std::vector<MonitorElement*> >& toFill,
118  std::string histoType,
121  int xbin,
122  double xmin,
123  double xmax,
124  int ybin = 1,
125  double ymin = 1,
126  double ymax = 2);
128  std::vector<std::vector<std::vector<MonitorElement*> > >& toFill,
129  std::string histoType,
132  int xbin,
133  double xmin,
134  double xmax,
135  int ybin = 1,
136  double ymin = 1,
137  double ymax = 2);
138 
139  void fill2DHistoVector(std::vector<std::vector<MonitorElement*> >& histoVector, double x, int cut, int type);
140  void fill2DHistoVector(std::vector<std::vector<MonitorElement*> >& histoVector, double x, double y, int cut, int type);
141 
142  void fill3DHistoVector(
143  std::vector<std::vector<std::vector<MonitorElement*> > >& histoVector, double x, int cut, int type, int part);
144  void fill3DHistoVector(std::vector<std::vector<std::vector<MonitorElement*> > >& histoVector,
145  double x,
146  double y,
147  int cut,
148  int type,
149  int part);
150 
151  bool photonSelection(const reco::Photon* p);
153  float phiNormalization(float& a);
154 
156 
158 
159  unsigned int prescaleFactor_;
160 
168 
169  double minPhoEtCut_;
172 
173  double cutStep_;
175 
179 
182 
184 
186 
188 
189  std::stringstream currentFolder_;
190 
195 
196  int nEvt_;
197 
198  std::vector<std::string> types_;
199  std::vector<std::string> parts_;
200 
202 
203  // Histogram parameters
204  int etaBin_;
205  double etaMin_;
206  double etaMax_;
207 
208  int etBin_;
209  double etMin_;
210  double etMax_;
211 
212  int phiBin_;
213  double phiMin_;
214  double phiMax_;
215 
216  int eBin_;
217  double eMin_;
218  double eMax_;
219 
221  double numberMin_;
222  double numberMax_;
223 
224  int r9Bin_;
225  double r9Min_;
226  double r9Max_;
227 
231 
232  int sumBin_;
233  double sumMin_;
234  double sumMax_;
235 
237  double hOverEMin_;
238  double hOverEMax_;
239 
241  double eOverPMin_;
242  double eOverPMax_;
243 
247 
251 
252  int chi2Bin_;
253  double chi2Min_;
254  double chi2Max_;
255 
256  int zBin_;
257  double zMin_;
258  double zMax_;
259 
260  int rBin_;
261  double rMin_;
262  double rMax_;
263 
264  int xBin_;
265  double xMin_;
266  double xMax_;
267 
268  int yBin_;
269  double yMin_;
270  double yMax_;
271 
276 
281 
283 
288 
293 
298 
300 
308 
310 
311  std::vector<std::vector<MonitorElement*> > h_nTrackIsolSolidVsEta_;
312  std::vector<std::vector<MonitorElement*> > h_trackPtSumSolidVsEta_;
313  std::vector<std::vector<MonitorElement*> > h_nTrackIsolHollowVsEta_;
314  std::vector<std::vector<MonitorElement*> > h_trackPtSumHollowVsEta_;
315  std::vector<std::vector<MonitorElement*> > h_ecalSumVsEta_;
316  std::vector<std::vector<MonitorElement*> > h_hcalSumVsEta_;
317 
318  std::vector<std::vector<MonitorElement*> > h_nTrackIsolSolidVsEt_;
319  std::vector<std::vector<MonitorElement*> > h_trackPtSumSolidVsEt_;
320  std::vector<std::vector<MonitorElement*> > h_nTrackIsolHollowVsEt_;
321  std::vector<std::vector<MonitorElement*> > h_trackPtSumHollowVsEt_;
322  std::vector<std::vector<MonitorElement*> > h_ecalSumVsEt_;
323  std::vector<std::vector<MonitorElement*> > h_hcalSumVsEt_;
324 
325  std::vector<std::vector<MonitorElement*> > h_nTrackIsolSolid_;
326  std::vector<std::vector<MonitorElement*> > h_trackPtSumSolid_;
327  std::vector<std::vector<MonitorElement*> > h_nTrackIsolHollow_;
328  std::vector<std::vector<MonitorElement*> > h_trackPtSumHollow_;
329  std::vector<std::vector<MonitorElement*> > h_ecalSum_;
330  std::vector<std::vector<MonitorElement*> > h_ecalSumEBarrel_;
331  std::vector<std::vector<MonitorElement*> > h_ecalSumEEndcap_;
332  std::vector<std::vector<MonitorElement*> > h_hcalSum_;
333  std::vector<std::vector<MonitorElement*> > h_hcalSumEBarrel_;
334  std::vector<std::vector<MonitorElement*> > h_hcalSumEEndcap_;
335 
336  std::vector<std::vector<MonitorElement*> > h_phoIsoBarrel_;
337  std::vector<std::vector<MonitorElement*> > h_phoIsoEndcap_;
338  std::vector<std::vector<MonitorElement*> > h_chHadIsoBarrel_;
339  std::vector<std::vector<MonitorElement*> > h_chHadIsoEndcap_;
340  std::vector<std::vector<MonitorElement*> > h_nHadIsoBarrel_;
341  std::vector<std::vector<MonitorElement*> > h_nHadIsoEndcap_;
342 
343  std::vector<std::vector<MonitorElement*> > p_nTrackIsolSolidVsEta_;
344  std::vector<std::vector<MonitorElement*> > p_trackPtSumSolidVsEta_;
345  std::vector<std::vector<MonitorElement*> > p_nTrackIsolHollowVsEta_;
346  std::vector<std::vector<MonitorElement*> > p_trackPtSumHollowVsEta_;
347  std::vector<std::vector<MonitorElement*> > p_ecalSumVsEta_;
348  std::vector<std::vector<MonitorElement*> > p_hcalSumVsEta_;
349 
350  std::vector<std::vector<MonitorElement*> > p_nTrackIsolSolidVsEt_;
351  std::vector<std::vector<MonitorElement*> > p_trackPtSumSolidVsEt_;
352  std::vector<std::vector<MonitorElement*> > p_nTrackIsolHollowVsEt_;
353  std::vector<std::vector<MonitorElement*> > p_trackPtSumHollowVsEt_;
354 
355  std::vector<std::vector<MonitorElement*> > p_r9VsEt_;
356  std::vector<std::vector<MonitorElement*> > p_r9VsEta_;
357 
358  std::vector<std::vector<MonitorElement*> > p_e1x5VsEt_;
359  std::vector<std::vector<MonitorElement*> > p_e1x5VsEta_;
360 
361  std::vector<std::vector<MonitorElement*> > p_e2x5VsEt_;
362  std::vector<std::vector<MonitorElement*> > p_e2x5VsEta_;
363 
364  std::vector<std::vector<MonitorElement*> > p_maxEXtalOver3x3VsEt_;
365  std::vector<std::vector<MonitorElement*> > p_maxEXtalOver3x3VsEta_;
366 
367  std::vector<std::vector<MonitorElement*> > p_r1x5VsEt_;
368  std::vector<std::vector<MonitorElement*> > p_r1x5VsEta_;
369 
370  std::vector<std::vector<MonitorElement*> > p_r2x5VsEt_;
371  std::vector<std::vector<MonitorElement*> > p_r2x5VsEta_;
372 
373  std::vector<std::vector<MonitorElement*> > p_sigmaIetaIetaVsEta_;
374 
375  std::vector<std::vector<MonitorElement*> > p_dCotTracksVsEta_;
376 
377  std::vector<std::vector<MonitorElement*> > p_hOverEVsEta_;
378  std::vector<std::vector<MonitorElement*> > p_hOverEVsEt_;
379 
380  std::vector<std::vector<MonitorElement*> > h_phoEta_;
381  std::vector<std::vector<MonitorElement*> > h_scEta_;
382 
383  std::vector<std::vector<MonitorElement*> > h_phoConvEtaForEfficiency_;
384 
385  std::vector<std::vector<MonitorElement*> > h_phoEta_BadChannels_;
386  std::vector<std::vector<MonitorElement*> > h_phoEt_BadChannels_;
387  std::vector<std::vector<MonitorElement*> > h_phoPhi_BadChannels_;
388 
389  std::vector<std::vector<MonitorElement*> > h_phoConvEta_;
390 
391  std::vector<std::vector<MonitorElement*> > h_convVtxRvsZ_;
392  std::vector<std::vector<MonitorElement*> > h_convVtxZEndcap_;
393  std::vector<std::vector<MonitorElement*> > h_convVtxZ_;
394  std::vector<std::vector<MonitorElement*> > h_convVtxYvsX_;
395  std::vector<std::vector<MonitorElement*> > h_convVtxR_;
396 
397  std::vector<std::vector<MonitorElement*> > h_r9VsEt_;
398  std::vector<std::vector<MonitorElement*> > h_r9VsEta_;
399 
400  std::vector<std::vector<MonitorElement*> > h_e1x5VsEt_;
401  std::vector<std::vector<MonitorElement*> > h_e1x5VsEta_;
402 
403  std::vector<std::vector<MonitorElement*> > h_e2x5VsEt_;
404  std::vector<std::vector<MonitorElement*> > h_e2x5VsEta_;
405 
406  std::vector<std::vector<MonitorElement*> > h_maxEXtalOver3x3VsEt_;
407  std::vector<std::vector<MonitorElement*> > h_maxEXtalOver3x3VsEta_;
408 
409  std::vector<std::vector<MonitorElement*> > h_r1x5VsEt_;
410  std::vector<std::vector<MonitorElement*> > h_r1x5VsEta_;
411 
412  std::vector<std::vector<MonitorElement*> > h_r2x5VsEt_;
413  std::vector<std::vector<MonitorElement*> > h_r2x5VsEta_;
414 
415  std::vector<std::vector<MonitorElement*> > h_sigmaIetaIetaVsEta_;
416 
417  std::vector<std::vector<MonitorElement*> > h_tkChi2_;
418 
419  std::vector<std::vector<MonitorElement*> > h_vertexChi2Prob_;
420 
421  std::vector<std::vector<MonitorElement*> > p_nHitsVsEta_;
422 
423  std::vector<std::vector<MonitorElement*> > p_tkChi2VsEta_;
424 
426 
427  std::vector<std::vector<std::vector<MonitorElement*> > > p_ecalSumVsEt_;
428  std::vector<std::vector<std::vector<MonitorElement*> > > p_hcalSumVsEt_;
429 
430  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoE_;
431  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoSigmaEoverE_;
432  std::vector<std::vector<std::vector<MonitorElement*> > > p_phoSigmaEoverEvsNVtx_;
433  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoEt_;
434  std::vector<std::vector<std::vector<MonitorElement*> > > h_r9_;
435  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoPhi_;
436  std::vector<std::vector<std::vector<MonitorElement*> > > h_scPhi_;
437  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoConvPhiForEfficiency_;
438  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoConvPhi_;
439 
440  std::vector<std::vector<std::vector<MonitorElement*> > > h_hOverE_;
441  std::vector<std::vector<std::vector<MonitorElement*> > > h_h1OverE_;
442  std::vector<std::vector<std::vector<MonitorElement*> > > h_h2OverE_;
443 
444  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoSigmaIetaIeta_;
445 
446  std::vector<std::vector<std::vector<MonitorElement*> > > h_nPho_;
447 
448  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoConvE_;
449  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoConvEt_;
450  std::vector<std::vector<std::vector<MonitorElement*> > > h_phoConvR9_;
451 
452  std::vector<std::vector<std::vector<MonitorElement*> > > h_nConv_;
453 
454  std::vector<std::vector<std::vector<MonitorElement*> > > h_eOverPTracks_;
455  std::vector<std::vector<std::vector<MonitorElement*> > > h_pOverETracks_;
456 
457  std::vector<std::vector<std::vector<MonitorElement*> > > h_dCotTracks_;
458 
459  std::vector<std::vector<std::vector<MonitorElement*> > > h_dPhiTracksAtVtx_;
460  std::vector<std::vector<std::vector<MonitorElement*> > > h_dPhiTracksAtEcal_;
461 
462  std::vector<std::vector<std::vector<MonitorElement*> > > h_dEtaTracksAtEcal_;
463 };
464 
465 #endif
bool photonSelection(const reco::Photon *p)
std::vector< std::vector< MonitorElement * > > h_sigmaIetaIetaVsEta_
MonitorElement * h_invMassOneWithTracks_
std::vector< std::vector< std::vector< MonitorElement * > > > h_dEtaTracksAtEcal_
void fill3DHistoVector(std::vector< std::vector< std::vector< MonitorElement *> > > &histoVector, double x, int cut, int type, int part)
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoEt_
void bookHistogramsPhotons(DQMStore::IBooker &)
edm::EDGetTokenT< reco::VertexCollection > offline_pvToken_
MonitorElement * h_phoEt_preHLT_
std::vector< std::vector< MonitorElement * > > h_phoEta_BadChannels_
MonitorElement * totalNumberOfHistos_photonsFolder
std::vector< std::vector< MonitorElement * > > p_maxEXtalOver3x3VsEta_
std::vector< std::vector< MonitorElement * > > p_trackPtSumSolidVsEta_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolSolid_
std::vector< std::vector< MonitorElement * > > p_hOverEVsEta_
std::vector< std::vector< MonitorElement * > > p_nTrackIsolSolidVsEt_
std::vector< std::vector< MonitorElement * > > p_r9VsEta_
edm::EDGetTokenT< edm::ValueMap< bool > > PhotonIDLoose_token_
std::vector< std::vector< MonitorElement * > > p_sigmaIetaIetaVsEta_
std::vector< std::vector< MonitorElement * > > h_e1x5VsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoE_
MonitorElement * h_phoEta_Vertex_
std::vector< std::vector< MonitorElement * > > p_e2x5VsEta_
std::vector< std::vector< MonitorElement * > > p_e1x5VsEta_
std::vector< std::vector< MonitorElement * > > h_convVtxRvsZ_
std::vector< std::vector< MonitorElement * > > p_r2x5VsEt_
std::vector< std::string > parts_
MonitorElement * h_convEta_Loose_
MonitorElement * h_nRecoVtx_
std::vector< std::vector< MonitorElement * > > h_nHadIsoBarrel_
std::vector< std::vector< MonitorElement * > > h_phoEta_
std::vector< std::vector< MonitorElement * > > h_chHadIsoEndcap_
MonitorElement * totalNumberOfHistos_efficiencyFolder
std::vector< std::vector< MonitorElement * > > h_hcalSumEBarrel_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoConvPhiForEfficiency_
void book2DHistoVector(DQMStore::IBooker &, std::vector< std::vector< MonitorElement *> > &toFill, std::string histoType, std::string histoName, std::string title, int xbin, double xmin, double xmax, int ybin=1, double ymin=1, double ymax=2)
int histo_index_conversions_
std::vector< std::vector< MonitorElement * > > p_r1x5VsEt_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolHollow_
MonitorElement * h_phoEta_preHLT_
edm::EDGetTokenT< edm::ValueMap< bool > > PhotonIDTight_token_
std::vector< std::vector< MonitorElement * > > h_convVtxZ_
std::vector< std::vector< MonitorElement * > > h_ecalSumVsEta_
std::vector< std::vector< std::vector< MonitorElement * > > > h_dCotTracks_
std::vector< std::vector< MonitorElement * > > h_chHadIsoBarrel_
std::vector< std::vector< std::vector< MonitorElement * > > > h_hOverE_
MonitorElement * h_convEt_Loose_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoSigmaEoverE_
std::vector< std::vector< MonitorElement * > > h_trackPtSumSolidVsEta_
std::vector< std::vector< std::vector< MonitorElement * > > > h_pOverETracks_
MonitorElement * totalNumberOfHistos_conversionsFolder
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoConvR9_
void bookHistogramsConversions(DQMStore::IBooker &)
std::vector< std::vector< MonitorElement * > > h_r9VsEta_
std::vector< std::vector< MonitorElement * > > h_hcalSumEEndcap_
MonitorElement * bookHisto(DQMStore::IBooker &, std::string histoName, std::string title, int bin, double min, double max)
std::vector< std::vector< MonitorElement * > > h_vertexChi2Prob_
MonitorElement * h_phoEt_postHLT_
std::stringstream currentFolder_
std::vector< std::vector< MonitorElement * > > h_convVtxZEndcap_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolHollowVsEta_
MonitorElement * h_convEta_Tight_
std::vector< std::vector< MonitorElement * > > h_e2x5VsEta_
std::vector< std::vector< MonitorElement * > > h_ecalSum_
std::vector< std::vector< MonitorElement * > > p_dCotTracksVsEta_
std::vector< std::vector< std::vector< MonitorElement * > > > p_hcalSumVsEt_
std::vector< std::vector< MonitorElement * > > h_scEta_
std::vector< std::vector< MonitorElement * > > h_r1x5VsEt_
MonitorElement * h_invMassZeroWithTracks_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoConvE_
std::vector< std::vector< MonitorElement * > > h_convVtxR_
std::vector< std::vector< MonitorElement * > > h_hcalSumVsEta_
std::vector< std::vector< MonitorElement * > > h_maxEXtalOver3x3VsEta_
std::string fName_
void fillHistogramsForHistogramCounts(DQMStore::IBooker &)
std::vector< std::vector< MonitorElement * > > h_phoConvEta_
std::vector< std::vector< std::vector< MonitorElement * > > > h_eOverPTracks_
EgammaCoreTools.
std::vector< std::vector< MonitorElement * > > h_maxEXtalOver3x3VsEt_
MonitorElement * h_phoEt_Tight_
std::vector< std::vector< MonitorElement * > > h_hcalSum_
MonitorElement * h_invMassPhotonsEBarrel_
std::vector< std::vector< MonitorElement * > > p_hcalSumVsEta_
std::vector< std::vector< MonitorElement * > > h_r1x5VsEta_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoConvEt_
std::vector< std::vector< MonitorElement * > > p_nHitsVsEta_
void analyze(const edm::Event &, const edm::EventSetup &) override
unsigned int prescaleFactor_
std::vector< std::string > types_
MonitorElement * totalNumberOfHistos_invMassFolder
std::vector< std::vector< std::vector< MonitorElement * > > > h_h1OverE_
std::vector< std::vector< MonitorElement * > > p_r1x5VsEta_
std::vector< std::vector< MonitorElement * > > p_hOverEVsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_dPhiTracksAtVtx_
edm::EDGetTokenT< edm::SortedCollection< EcalRecHit, edm::StrictWeakOrdering< EcalRecHit > > > barrelRecHit_token_
std::vector< std::vector< MonitorElement * > > h_phoIsoEndcap_
edm::EDGetTokenT< edm::SortedCollection< EcalRecHit, edm::StrictWeakOrdering< EcalRecHit > > > endcapRecHit_token_
std::vector< std::vector< MonitorElement * > > p_e2x5VsEt_
std::vector< std::vector< MonitorElement * > > p_maxEXtalOver3x3VsEt_
MonitorElement * h_invMassTwoWithTracks_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolHollowVsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoSigmaIetaIeta_
std::vector< std::vector< MonitorElement * > > h_e2x5VsEt_
std::vector< std::vector< MonitorElement * > > h_phoPhi_BadChannels_
MonitorElement * h_invMassPhotonsEEndcapEBarrel_
std::vector< std::vector< MonitorElement * > > p_nTrackIsolSolidVsEta_
void bookHistogramsInvMass(DQMStore::IBooker &)
float phiNormalization(float &a)
MonitorElement * h_phoEta_Tight_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolSolidVsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > p_phoSigmaEoverEvsNVtx_
MonitorElement * h_phoEt_Loose_
std::vector< std::vector< std::vector< MonitorElement * > > > p_ecalSumVsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_r9_
MonitorElement * h_invMassAllPhotons_
std::vector< std::vector< MonitorElement * > > p_nTrackIsolHollowVsEt_
std::vector< std::vector< MonitorElement * > > h_trackPtSumHollowVsEt_
std::vector< std::vector< MonitorElement * > > h_nTrackIsolSolidVsEta_
edm::EDGetTokenT< trigger::TriggerEvent > triggerEvent_token_
std::vector< std::vector< std::vector< MonitorElement * > > > h_scPhi_
bool photonSelectionSlimmed(const reco::Photon *p)
std::vector< std::vector< MonitorElement * > > p_e1x5VsEt_
part
Definition: HCALResponse.h:20
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * h_invMassPhotonsEEndcap_
std::vector< std::vector< MonitorElement * > > p_nTrackIsolHollowVsEta_
std::vector< std::vector< MonitorElement * > > h_trackPtSumSolidVsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_h2OverE_
std::vector< std::vector< MonitorElement * > > p_r2x5VsEta_
std::vector< std::vector< MonitorElement * > > p_r9VsEt_
std::vector< std::vector< MonitorElement * > > h_phoIsoBarrel_
std::vector< std::vector< MonitorElement * > > p_trackPtSumHollowVsEta_
std::vector< std::vector< MonitorElement * > > p_trackPtSumSolidVsEt_
std::vector< std::vector< MonitorElement * > > p_ecalSumVsEta_
std::vector< std::vector< MonitorElement * > > h_tkChi2_
std::vector< std::vector< MonitorElement * > > h_trackPtSumHollowVsEta_
double a
Definition: hdecay.h:119
std::vector< std::vector< MonitorElement * > > h_phoConvEtaForEfficiency_
void bookHistogramsForHistogramCounts(DQMStore::IBooker &)
MonitorElement * h_convEt_Tight_
void fill2DHistoVector(std::vector< std::vector< MonitorElement *> > &histoVector, double x, int cut, int type)
std::vector< std::vector< MonitorElement * > > h_hcalSumVsEt_
std::vector< std::vector< MonitorElement * > > p_trackPtSumHollowVsEt_
MonitorElement * h_phoEta_postHLT_
std::vector< std::vector< MonitorElement * > > h_e1x5VsEta_
MonitorElement * h_phoEta_Loose_
std::vector< std::vector< std::vector< MonitorElement * > > > h_dPhiTracksAtEcal_
std::vector< std::vector< MonitorElement * > > h_trackPtSumSolid_
void bookHistogramsEfficiency(DQMStore::IBooker &)
std::vector< std::vector< std::vector< MonitorElement * > > > h_nConv_
std::vector< std::vector< MonitorElement * > > h_r2x5VsEt_
edm::EDGetTokenT< std::vector< reco::Photon > > photon_token_
~PhotonAnalyzer() override
std::vector< std::vector< MonitorElement * > > h_phoEt_BadChannels_
std::vector< std::vector< MonitorElement * > > h_r2x5VsEta_
std::vector< std::vector< MonitorElement * > > h_nHadIsoEndcap_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoPhi_
std::vector< std::vector< MonitorElement * > > h_convVtxYvsX_
std::vector< std::vector< MonitorElement * > > h_trackPtSumHollow_
std::vector< std::vector< std::vector< MonitorElement * > > > h_nPho_
std::vector< std::vector< MonitorElement * > > h_r9VsEt_
std::vector< std::vector< std::vector< MonitorElement * > > > h_phoConvPhi_
PhotonAnalyzer(const edm::ParameterSet &)
std::vector< std::vector< MonitorElement * > > h_ecalSumVsEt_
Definition: Run.h:45
void book3DHistoVector(DQMStore::IBooker &, std::vector< std::vector< std::vector< MonitorElement *> > > &toFill, std::string histoType, std::string histoName, std::string title, int xbin, double xmin, double xmax, int ybin=1, double ymin=1, double ymax=2)
std::vector< std::vector< MonitorElement * > > h_ecalSumEEndcap_
std::vector< std::vector< MonitorElement * > > h_ecalSumEBarrel_
std::vector< std::vector< MonitorElement * > > p_tkChi2VsEta_