CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MCPhotonAnalyzer.h
Go to the documentation of this file.
1 #ifndef MCPhotonAnalyzer_H
2 #define MCPhotonAnalyzer_H
4 
8 
9 #include <map>
10 #include <vector>
11 
12 
13 // forward declarations
14 class TFile;
15 class TH1F;
16 class TH2F;
17 class TProfile;
18 class TTree;
19 class SimVertex;
20 class SimTrack;
21 
22 
24 {
25 
26  public:
27 
28  //
29  explicit MCPhotonAnalyzer( const edm::ParameterSet& ) ;
30  virtual ~MCPhotonAnalyzer();
31 
32 
33  virtual void analyze( const edm::Event&, const edm::EventSetup& ) ;
34  virtual void beginJob() ;
35  virtual void endJob() ;
36 
37  private:
38 
39 
40  float etaTransformation( float a, float b);
41  float phiNormalization( float& a);
42 
43 
44  //
46 
48 
49  std::string fOutputFileName_ ;
50  TFile* fOutputFile_ ;
51 
52 
53 
54 
55  int nEvt_;
56  int nMatched_;
57 
59 
60  double mcPhi_;
61  double mcEta_;
62 
63  std::string HepMCLabel;
64  std::string SimTkLabel;
65  std::string SimVtxLabel;
66  std::string SimHitLabel;
67 
68 
69  // all photons
70  TH1F* h_MCPhoE_;
71  TH1F* h_MCPhoEta_;
72  TH1F* h_MCPhoEta1_;
73  TH1F* h_MCPhoEta2_;
74  TH1F* h_MCPhoEta3_;
75  TH1F* h_MCPhoEta4_;
76  TH1F* h_MCPhoPhi_;
77  // Conversion
90 
91 
102 
103  TH1F* h_MCEleE_;
104  TH1F* h_MCEleEta_;
105  TH1F* h_MCElePhi_;
106  TH1F* h_BremFrac_;
110 
111  TProfile* p_BremVsR_;
112  TProfile* p_BremVsEta_;
113 
114  TProfile* p_BremVsConvR_;
115  TProfile* p_BremVsConvEta_;
116 
118 
119 };
120 
121 #endif
float etaTransformation(float a, float b)
TH1F * h_MCConvPhoOneTrackE_
Conversions with one track.
double mcPhi_
global variable for the MC photon
virtual void beginJob()
TH1F * h_MCConvPhoTwoTracksPhi_
TProfile * p_BremVsEta_
const TrackerGeometry * trackerGeom
TH1F * h_MCConvPhoOneTrackPhi_
TProfile * p_BremVsConvR_
std::string fOutputFileName_
TH1F * h_MCConvPhoTwoTracksR_
TH1F * h_MCConvPhoTwoTracksE_
Conversions with two tracks.
TH1F * h_MCConvPhoOneTrackEta_
TProfile * p_BremVsConvEta_
std::string SimTkLabel
MCPhotonAnalyzer(const edm::ParameterSet &)
virtual ~MCPhotonAnalyzer()
std::string HepMCLabel
std::string SimVtxLabel
virtual void endJob()
double b
Definition: hdecay.h:120
std::string SimHitLabel
TH1F * h_MCConvPhoTwoTracksEta_
virtual void analyze(const edm::Event &, const edm::EventSetup &)
double a
Definition: hdecay.h:121
PhotonMCTruthFinder * thePhotonMCTruthFinder_
float phiNormalization(float &a)