CMS 3D CMS Logo

PhotonIDSimpleAnalyzer.h
Go to the documentation of this file.
1 #ifndef RecoEgamma_PhotonIdentification_PhotonIDSimpleAnalyzer_H
2 #define RecoEgamma_PhotonIdentification_PhotonIDSimpleAnalyzer_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 PhotonIDSimpleAnalyzer( const edm::ParameterSet& );
40  ~PhotonIDSimpleAnalyzer() 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 isEBEtaGap;
67  float isEBPhiGap;
68  float isEERingGap;
69  float isEEDeeGap;
70  float isEBEEGap;
71  float r9;
72  float et;
73  float eta;
74  float phi;
76  } ;
78 
79  // root file to store histograms
80  TFile* rootFile_;
81 
82  // data members for histograms to be filled
83 
84  // PhotonID Histograms
91  TH1F* h_ebetagap_;
92  TH1F* h_ebphigap_;
93  TH1F* h_eeringGap_;
94  TH1F* h_eedeeGap_;
95  TH1F* h_ebeeGap_;
96  TH1F* h_r9_;
97 
98  // Photon Histograms
99  TH1F* h_photonEt_;
103 
104  // Photon's SuperCluster Histograms
109 
110  // Composite or Other Histograms
113  TH1F* h_nPassEM_;
114  TH1F* h_nPho_;
115 
116  // TTree
118 };
119 #endif
PhotonIDSimpleAnalyzer(const edm::ParameterSet &)
void analyze(const edm::Event &, const edm::EventSetup &) override