ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/MCAnalyzer.h
Revision: 1.9
Committed: Fri Dec 19 12:26:01 2008 UTC (16 years, 4 months ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: pat_2_2_5_01, pat_2_1_12_02
Changes since 1.8: +8 -4 lines
Log Message:
Replace MC infos encapsulated in TRootObjects by a TRef pointing to TRootMCParticles stocked in MCParticles branch
pdgId is now signed

File Contents

# User Rev Content
1 mlethuil 1.1 #ifndef MCAnalyzer_h
2     #define MCAnalyzer_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/EDAnalyzer.h"
12     #include "FWCore/Framework/interface/Event.h"
13     //#include "FWCore/Framework/interface/Handle.h"
14     #include "FWCore/Framework/interface/MakerMacros.h"
15     #include "FWCore/ParameterSet/interface/ParameterSet.h"
16     #include "FWCore/Framework/interface/ESHandle.h"
17    
18 lethuill 1.6 #include "DataFormats/JetReco/interface/GenJet.h"
19     #include "DataFormats/JetReco/interface/GenJetCollection.h"
20 lethuill 1.3 #include "DataFormats/HepMCCandidate/interface/GenParticle.h"
21     #include "DataFormats/HepMCCandidate/interface/GenParticleFwd.h"
22 mlethuil 1.1
23 lethuill 1.9 #include "SimDataFormats/HepMCProduct/interface/HepMCProduct.h"
24    
25 mlethuil 1.2 #include "SimDataFormats/Track/interface/SimTrack.h"
26     #include "SimDataFormats/Track/interface/SimTrackContainer.h"
27     #include "SimDataFormats/Vertex/interface/SimVertex.h"
28     #include "SimDataFormats/Vertex/interface/SimVertexContainer.h"
29     #include "RecoEgamma/EgammaMCTools/interface/PhotonMCTruthFinder.h"
30     #include "RecoEgamma/EgammaMCTools/interface/PhotonMCTruth.h"
31     #include "RecoEgamma/EgammaMCTools/interface/ElectronMCTruth.h"
32     //#include "DataFormats/EgammaCandidates/interface/ConvertedPhoton.h"
33    
34 lethuill 1.5 #include "../interface/ParticleTreeDrawer.h"
35 lethuill 1.7 #include "../interface/TRootEvent.h"
36 lethuill 1.5 #include "../interface/TRootSignalEvent.h"
37 lethuill 1.6 #include "../interface/TRootTopTop.h"
38 lethuill 1.5 #include "../interface/TRootParticle.h"
39 lethuill 1.8 #include "../interface/TRootMCParticle.h"
40 lethuill 1.5 #include "../interface/TRootMCPhoton.h"
41 lethuill 1.6 #include "../interface/TRootJet.h"
42 mlethuil 1.1
43     #include "TClonesArray.h"
44    
45    
46    
47     class MCAnalyzer{
48    
49     public:
50     MCAnalyzer();
51 lethuill 1.5 MCAnalyzer(const edm::ParameterSet& config, const edm::ParameterSet& producersNames);
52 mlethuil 1.1 ~MCAnalyzer();
53 lethuill 1.5 void SetVerbosity(int verbosity) {verbosity_ = verbosity; };
54     void DrawMCTree(const edm::Event& iEvent, const edm::EventSetup& iSetup, const edm::ParameterSet& config, const edm::ParameterSet& producersNames);
55 lethuill 1.7 void PDFInfo(const edm::Event& iEvent, TRootEvent* rootEvent);
56 lethuill 1.6 void ProcessMCParticle(const edm::Event& iEvent, TClonesArray* rootMCParticles);
57 lethuill 1.9 void ProcessMCJets(const edm::Event& iEvent, TClonesArray* rootMCJets);
58 lethuill 1.5 void ProcessConvertedPhoton(const edm::Event& iEvent, TClonesArray* rootMCPhotons);
59     void ProcessMuMuGammaEvent(const edm::Event& iEvent, TRootSignalEvent* rootSignalEvent);
60 lethuill 1.6 void ProcessTopTopEvent(const edm::Event& iEvent, TClonesArray* rootMCTopTop);
61 lethuill 1.9
62 mlethuil 1.1 private:
63 lethuill 1.5
64     int verbosity_;
65 mlethuil 1.1
66 lethuill 1.5 bool doPhotonMC_;
67     double photonMC_etaMax_;
68     double photonMC_ptMin_;
69     bool doElectronMC_;
70     double electronMC_etaMax_;
71     double electronMC_ptMin_;
72     bool doMuonMC_;
73     double muonMC_etaMax_;
74     double muonMC_ptMin_;
75 lethuill 1.9 bool doJetMC_;
76     double jetMC_etaMax_;
77     double jetMC_ptMin_;
78 lethuill 1.6 bool doUnstablePartsMC_;
79 lethuill 1.9 bool doMETMC_;
80 lethuill 1.5
81     std::string signalGenerator_;
82     edm::InputTag genParticlesProducer_;
83 lethuill 1.6 edm::InputTag genJetsProducer_;
84 mlethuil 1.1 };
85    
86     #endif