Go to the documentation of this file.00001 #ifndef GammaJetAnalysis_h
00002 #define GammaJetAnalysis_h
00003
00004 #include <memory>
00005 #include <string>
00006 #include <iostream>
00007 #include <map>
00008
00009
00010
00011 #include "FWCore/Framework/interface/EDAnalyzer.h"
00012 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include <fstream>
00033
00034
00035 namespace edm {
00036 class ParameterSet;
00037 class Event;
00038 class EventSetup;
00039 }
00040
00041 class TFile;
00042 class TTree;
00043 class CaloGeometry;
00044
00045
00046
00047
00048 namespace cms
00049 {
00050 class GammaJetAnalysis : public edm::EDAnalyzer {
00051 public:
00052 explicit GammaJetAnalysis(const edm::ParameterSet&);
00053 ~GammaJetAnalysis();
00054
00055 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00056 virtual void beginJob() ;
00057 virtual void endJob() ;
00058
00059 private:
00060
00061
00062
00063 std::string nameProd_;
00064 std::string jetCalo_;
00065 std::string gammaClus_;
00066 std::string ecalInput_;
00067 std::string hbheInput_;
00068 std::string hoInput_;
00069 std::string hfInput_;
00070 std::string Tracks_;
00071 std::string myName;
00072 double CutOnEgammaEnergy_;
00073
00074
00075
00076 std::string fOutputFileName ;
00077 bool allowMissingInputs_;
00078 bool useMC;
00079
00080 TFile* hOutputFile ;
00081 TTree * myTree;
00082 std::ofstream *myout_part;
00083 std::ofstream *myout_hcal;
00084 std::ofstream *myout_ecal;
00085 std::ofstream *myout_jet;
00086 std::ofstream *myout_photon;
00087
00088 int NumRecoJets,NumGenJets,NumRecoGamma,NumRecoTrack,NumRecoHcal,NumPart;
00089 int run,event;
00090 float JetRecoEt[10],JetRecoEta[10],JetRecoPhi[10],JetRecoType[10];
00091 float JetGenEt[10],JetGenEta[10],JetGenPhi[10],JetGenType[10];
00092 float TrackRecoEt[10],TrackRecoEta[10],TrackRecoPhi[10];
00093 int EcalClusDet[20];
00094 float GammaRecoEt[20],GammaRecoEta[20],GammaRecoPhi[20],GammaIsoEcal[9][20],GammaIsoHcal[9][20];
00095 float HcalDet[8000],HcalRecoEt[8000],HcalRecoEta[8000],HcalRecoPhi[8000];
00096 int Status[4000],Code[4000],Mother1[4000];
00097 float partpx[4000],partpy[4000],partpz[4000],parte[4000],partm[4000],partvx[4000];
00098 float partvy[4000],partvz[4000],partvt[4000];
00099 float risol[3];
00100 float ecut[3][3];
00101
00102
00103 const CaloGeometry* geo;
00104
00105 };
00106 }
00107 #endif