CMS 3D CMS Logo

PatPhotonSimpleAnalyzer.h
Go to the documentation of this file.
1 #ifndef RecoEgamma_PhotonIdentification_PatPhotonSimpleAnalyzer_H
2 #define RecoEgamma_PhotonIdentification_PatPhotonSimpleAnalyzer_H
3 
11 //
12 
13 //
14 
15 // system include files
16 #include <memory>
17 
18 // user include files
21 
24 
26 
27 #include <string>
28 #include "TH1.h"
29 #include "TTree.h"
30 
31 
32 class TFile;
33 
34 //
35 // class declaration
36 //
38  public:
39  explicit PatPhotonSimpleAnalyzer( const edm::ParameterSet& );
40  ~PatPhotonSimpleAnalyzer() override;
41 
42 
43  void analyze( const edm::Event&, const edm::EventSetup& ) override;
44  void beginJob() override;
45  void endJob() override;
46  private:
47 
48  std::string outputFile_; // output file
49  double minPhotonEt_; // minimum photon Et
50  double minPhotonAbsEta_; // min and
51  double maxPhotonAbsEta_; // max abs(eta)
52  double minPhotonR9_; // minimum R9 = E(3x3)/E(SuperCluster)
53  double maxPhotonHoverE_; // maximum HCAL / ECAL
54  bool createPhotonTTree_; // Create a TTree of photon variables
55 
56  // Will be used for creating TTree of photons.
57  // These names did not have to match those from a phtn->...
58  // but do match for clarity.
66  float isEBGap;
67  float isEEGap;
68  float isEBEEGap;
69  float r9;
70  float et;
71  float eta;
72  float phi;
74  float ecalIso;
75  float hcalIso;
76  float trackIso;
77  } ;
79 
80  // root file to store histograms
81  TFile* rootFile_;
82 
83  // data members for histograms to be filled
84 
85  // PhotonID Histograms
92  TH1F* h_ebgap_;
93  TH1F* h_eeGap_;
94  TH1F* h_ebeeGap_;
95  TH1F* h_r9_;
96 
97  // Photon Histograms
98  TH1F* h_photonEt_;
99  TH1F* h_photonEta_;
102 
103  // Photon's SuperCluster Histograms
108 
109  // Composite or Other Histograms
112  TH1F* h_nPho_;
113 
114  // TTree
116 };
117 #endif
PatPhotonSimpleAnalyzer(const edm::ParameterSet &)
void analyze(const edm::Event &, const edm::EventSetup &) override