1 |
mlethuil |
1.1 |
#ifndef TotoAnalyzer_h
|
2 |
|
|
#define TotoAnalyzer_h
|
3 |
|
|
|
4 |
|
|
// system include files
|
5 |
|
|
#include <memory>
|
6 |
|
|
#include <string>
|
7 |
|
|
#include <iostream>
|
8 |
|
|
|
9 |
|
|
// user include files
|
10 |
|
|
#include "FWCore/Framework/interface/Frameworkfwd.h"
|
11 |
|
|
#include "FWCore/Framework/interface/MakerMacros.h"
|
12 |
|
|
#include "FWCore/Framework/interface/EDAnalyzer.h"
|
13 |
|
|
#include "FWCore/Framework/interface/Event.h"
|
14 |
|
|
#include "FWCore/Framework/interface/EventSetup.h"
|
15 |
|
|
#include "FWCore/Framework/interface/ESHandle.h"
|
16 |
|
|
#include "FWCore/Utilities/interface/EDMException.h"
|
17 |
|
|
#include "FWCore/ParameterSet/interface/ParameterSet.h"
|
18 |
|
|
|
19 |
|
|
#include "DataFormats/Common/interface/Ref.h"
|
20 |
|
|
#include "DataFormats/DetId/interface/DetId.h"
|
21 |
|
|
#include "DataFormats/Candidate/interface/Candidate.h"
|
22 |
|
|
|
23 |
|
|
#include "DataFormats/EgammaCandidates/interface/PixelMatchGsfElectron.h"
|
24 |
|
|
#include "DataFormats/EgammaCandidates/interface/Photon.h"
|
25 |
|
|
#include "DataFormats/EgammaReco/interface/BasicCluster.h"
|
26 |
|
|
#include "DataFormats/EgammaReco/interface/SuperCluster.h"
|
27 |
|
|
#include "DataFormats/EgammaReco/interface/BasicClusterShapeAssociation.h"
|
28 |
|
|
#include "DataFormats/EgammaReco/interface/ClusterShape.h"
|
29 |
|
|
|
30 |
|
|
#include "DataFormats/MuonReco/interface/Muon.h"
|
31 |
|
|
|
32 |
|
|
#include "DataFormats/JetReco/interface/Jet.h"
|
33 |
|
|
#include "DataFormats/JetReco/interface/CaloJetCollection.h"
|
34 |
|
|
#include "DataFormats/JetReco/interface/CaloJet.h"
|
35 |
|
|
#include "DataFormats/JetReco/interface/GenJet.h"
|
36 |
|
|
#include "DataFormats/JetReco/interface/GenJetfwd.h"
|
37 |
|
|
|
38 |
|
|
#include "DataFormats/CaloTowers/interface/CaloTowerCollection.h"
|
39 |
|
|
|
40 |
|
|
#include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h"
|
41 |
|
|
#include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
|
42 |
|
|
#include "Geometry/CaloGeometry/interface/CaloCellGeometry.h"
|
43 |
|
|
#include "Geometry/CaloGeometry/interface/CaloGeometry.h"
|
44 |
|
|
#include "Geometry/Records/interface/IdealGeometryRecord.h"
|
45 |
|
|
|
46 |
|
|
|
47 |
|
|
#include "DataFormats/METReco/interface/CaloMETCollection.h"
|
48 |
|
|
|
49 |
|
|
#include "DataFormats/BTauReco/interface/JetTracksAssociation.h"
|
50 |
|
|
#include "DataFormats/BTauReco/interface/IsolatedTauTagInfo.h"
|
51 |
|
|
|
52 |
|
|
#include "DataFormats/TrackReco/interface/Track.h"
|
53 |
|
|
|
54 |
|
|
#include "DataFormats/VertexReco/interface/Vertex.h"
|
55 |
|
|
|
56 |
|
|
#include "DataFormats/HepMCCandidate/interface/GenParticleCandidate.h"
|
57 |
|
|
#include "SimDataFormats/HepMCProduct/interface/HepMCProduct.h"
|
58 |
|
|
|
59 |
|
|
|
60 |
|
|
#include "UserCode/Morgan/interface/MCAnalyzer.h"
|
61 |
|
|
#include "UserCode/Morgan/interface/PhotonAnalyzer.h"
|
62 |
|
|
#include "UserCode/Morgan/interface/ClusterAnalyzer.h"
|
63 |
|
|
#include "UserCode/Morgan/interface/SuperClusterAnalyzer.h"
|
64 |
|
|
#include "UserCode/Morgan/interface/ClusterAssociator.h"
|
65 |
|
|
#include "UserCode/Morgan/interface/PhotonAssociator.h"
|
66 |
|
|
#include "UserCode/Morgan/interface/PhotonIsolator.h"
|
67 |
|
|
|
68 |
|
|
#include "UserCode/Morgan/interface/TRootEvent.h"
|
69 |
|
|
#include "UserCode/Morgan/interface/TRootSignalEvent.h"
|
70 |
|
|
#include "UserCode/Morgan/interface/TRootParticle.h"
|
71 |
|
|
#include "UserCode/Morgan/interface/TRootPhoton.h"
|
72 |
|
|
#include "UserCode/Morgan/interface/TRootElectron.h"
|
73 |
|
|
#include "UserCode/Morgan/interface/TRootMuon.h"
|
74 |
|
|
#include "UserCode/Morgan/interface/TRootJet.h"
|
75 |
|
|
#include "UserCode/Morgan/interface/TRootCluster.h"
|
76 |
|
|
#include "UserCode/Morgan/interface/TRootSuperCluster.h"
|
77 |
|
|
|
78 |
|
|
#include "TFile.h"
|
79 |
|
|
#include "TTree.h"
|
80 |
|
|
#include "TClonesArray.h"
|
81 |
|
|
|
82 |
|
|
|
83 |
|
|
|
84 |
|
|
class TotoAnalyzer : public edm::EDAnalyzer {
|
85 |
|
|
public:
|
86 |
|
|
explicit TotoAnalyzer(const edm::ParameterSet&);
|
87 |
|
|
~TotoAnalyzer();
|
88 |
|
|
|
89 |
|
|
|
90 |
|
|
private:
|
91 |
|
|
virtual void beginJob(const edm::EventSetup&) ;
|
92 |
|
|
virtual void analyze(const edm::Event&, const edm::EventSetup&);
|
93 |
|
|
virtual void endJob() ;
|
94 |
|
|
|
95 |
|
|
// ----------member data ---------------------------
|
96 |
|
|
|
97 |
|
|
edm::ParameterSet myConfig;
|
98 |
|
|
|
99 |
|
|
int verbosity;
|
100 |
|
|
std::string rootFileName_ ;
|
101 |
|
|
TFile* rootFile_ ;
|
102 |
|
|
TTree* rootTree_;
|
103 |
|
|
bool doMC;
|
104 |
|
|
bool doSignalMC;
|
105 |
|
|
bool doTrack;
|
106 |
|
|
bool doJet;
|
107 |
|
|
bool doMuon;
|
108 |
|
|
bool doPhoton;
|
109 |
|
|
bool doElectron;
|
110 |
|
|
bool doCluster;
|
111 |
|
|
|
112 |
|
|
MCAnalyzer* myMCAnalyzer;
|
113 |
|
|
PhotonAnalyzer* myPhotonAnalyzer;
|
114 |
|
|
ClusterAnalyzer* myClusterAnalyzer;
|
115 |
|
|
SuperClusterAnalyzer* mySClusterAnalyzer;
|
116 |
|
|
|
117 |
|
|
int nTotEvt_;
|
118 |
|
|
TRootEvent* rootEvent;
|
119 |
|
|
TRootSignalEvent* rootMCSignalEvent;
|
120 |
|
|
TClonesArray* mcParticles;
|
121 |
|
|
TClonesArray* tracks;
|
122 |
|
|
TClonesArray* jets;
|
123 |
|
|
TClonesArray* muons;
|
124 |
|
|
TClonesArray* electrons;
|
125 |
|
|
TClonesArray* uncorrectedPhotons;
|
126 |
|
|
TClonesArray* correctedPhotons;
|
127 |
|
|
TClonesArray* clusters;
|
128 |
|
|
TClonesArray* superClusters;
|
129 |
|
|
};
|
130 |
|
|
|
131 |
|
|
#endif
|