ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/plugins/HbbTreeMaker.hh
(Generate patch)

Comparing UserCode/HbbAnalysis/plugins/HbbTreeMaker.hh (file contents):
Revision 1.3 by amagnan, Tue Feb 9 14:52:23 2010 UTC vs.
Revision 1.19 by agilbert, Tue Oct 25 13:26:51 2011 UTC

# Line 12 | Line 12
12   #include "FWCore/Framework/interface/ESHandle.h"
13   #include "FWCore/Framework/interface/Event.h"
14   #include "FWCore/Framework/interface/EventSetup.h"
15 < #include "FWCore/Framework/interface/TriggerNames.h"
15 > #include "FWCore/Common/interface/TriggerNames.h"
16   #include "FWCore/ParameterSet/interface/ParameterSet.h"
17  
18   #include "DataFormats/Common/interface/Handle.h"
19 +
20 + #include "DataFormats/L1Trigger/interface/L1JetParticleFwd.h"
21 + #include "DataFormats/L1Trigger/interface/L1JetParticle.h"
22 + #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutRecord.h"
23 + #include "DataFormats/HLTReco/interface/TriggerEvent.h"
24 + #include "DataFormats/BeamSpot/interface/BeamSpot.h"
25 + #include "DataFormats/JetReco/interface/GenJet.h"
26 +
27   #include "DataFormats/PatCandidates/interface/Lepton.h"
28   #include "DataFormats/PatCandidates/interface/Jet.h"
29   #include "DataFormats/PatCandidates/interface/Muon.h"
30   #include "DataFormats/PatCandidates/interface/Electron.h"
31   #include "DataFormats/PatCandidates/interface/Tau.h"
32  
33 + #include "SimDataFormats/GeneratorProducts/interface/GenRunInfoProduct.h"
34 + #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h"
35 + #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h"
36 +
37   #include "UserCode/HbbAnalysis/interface/JetFlavour.hh"
38   #include "UserCode/HbbAnalysis/interface/HbbEvent.hh"
39  
40 + #include "CondFormats/JetMETObjects/interface/JetCorrectionUncertainty.h"
41 + #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h"
42 + #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
43 +
44   #include "TTree.h"
45 + #include "boost/regex.hpp"
46  
47   class HbbTreeMaker : public edm::EDAnalyzer {//class
48  
# Line 34 | Line 51 | class HbbTreeMaker : public edm::EDAnaly
51    HbbTreeMaker(const edm::ParameterSet & pset);
52    ~HbbTreeMaker();
53  
54 <  void beginJob(const edm::EventSetup&);
54 >  void beginJob();
55    void analyze(const edm::Event& ,
56                 const edm::EventSetup&
57                 );
58 +  void beginRun(const edm::Run& ,
59 +               const edm::EventSetup&
60 +               );
61    void endJob();
62  
63   private:
64 +  HLTConfigProvider hltConfig_;
65 +  bool jecUncSet_;
66 +
67 +
68  
69    void HbbParticles(const edm::Handle<reco::GenParticleCollection> & aCol,
70 <                    std::vector<HbbAnalysis::GenParticle> & aVec);
70 >                    std::vector<HbbAnalysis::GenParticle> & aVec, HbbAnalysis::P4Total & p4total);
71 >
72 >  void HbbGenJets(const edm::Handle<reco::GenJetCollection> & aCol,
73 >                  std::vector<HbbAnalysis::GenJet> & aVec,
74 >                  const bool aSaveConstituants);
75 >
76 >
77 >  void HbbLHEInfo(const edm::Handle<LHEEventProduct> & aLHEEvt,
78 >                  std::vector<HbbAnalysis::GenParticle> & aVec);
79 >
80 >  void HbbPUInfo(const edm::Handle<std::vector<PileupSummaryInfo> > & aPUInfo,
81 >      std::vector<HbbAnalysis::PUVars> & aVec);
82 >
83 >
84 >
85 >  void HbbBeamSpot(const edm::Handle<reco::BeamSpot> & aBeamSpot,
86 >                   HbbAnalysis::BeamSpot & aBS);
87  
88    void HbbElectrons(const edm::Handle<std::vector<pat::Electron> > & aCol,
89 <                    std::vector<HbbAnalysis::Electron> & aVec);
89 >                    std::vector<HbbAnalysis::Electron> & aVec, const edm::Handle<reco::BeamSpot> & aBeamSpot);
90  
91    void HbbMuons(const edm::Handle<std::vector<pat::Muon> > & aCol,
92                  const edm::Handle<std::vector<reco::Vertex> > & aRecoVertices,
93 +                const edm::Handle<reco::BeamSpot> & aBeamSpot,
94                  std::vector<HbbAnalysis::Muon> & aVec);
95  
96 +  /*
97    void HbbTaus(const edm::Handle<std::vector<pat::Tau> > & aCol,
98                 const edm::Handle<std::vector<reco::Vertex> > & aRecoVertices,
99                 std::vector<HbbAnalysis::Tau> & aVec);
100 +  */
101  
102    void HbbJets(const edm::Handle<std::vector<pat::Jet> > & aCol,
103                 const HbbAnalysis::JetFlavour & aFlavour,
104                 const edm::Handle<reco::GenParticleCollection> & aGenParticles,
105                 std::vector<HbbAnalysis::Jet> & aVec);
106  
107 +  JetCorrectionUncertainty* jecUncCalo;
108 +  JetCorrectionUncertainty* jecUncPF;
109 +  JetCorrectionUncertainty* jecUncJPT;
110 +
111    void HbbMet(const edm::Handle<std::vector<pat::MET> > & aCol,
112                HbbAnalysis::Met & aVec);
113  
114    void HbbTrigger(const edm::Handle<edm::TriggerResults> & aCol,
115 <                  std::vector<HbbAnalysis::Trigger> & aVec);
115 >                  const edm::TriggerNames & aNames,
116 >                  std::vector<HbbAnalysis::Trigger> & aVec, int prescaleSet);
117 >
118 >  void HbbVertices(const edm::Handle<std::vector<reco::Vertex> > & aCol,
119 >                   std::vector<HbbAnalysis::Vertex> & aVec);
120  
121 +  /*
122 +  void HbbL1Objects(const edm::Handle<l1extra::L1JetParticleCollection> & aCol,
123 +                    std::vector<HbbAnalysis::L1Object> & aVec,
124 +                    const unsigned int aType);
125 +  
126 +  void HbbHLTObjects(const edm::Handle<trigger::TriggerEvent> & aCol,
127 +                     std::vector<HbbAnalysis::HLTObject> & aVec);
128  
129 +  void fillHLTVector(const edm::InputTag & aTag,
130 +                     const edm::Handle<trigger::TriggerEvent> & aCol,
131 +                     std::vector<HbbAnalysis::HLTObject> & aVec,
132 +                     const unsigned int aType);
133 +  */
134 +
135 +  void HbbGenInfo(const edm::Handle<edm::HepMCProduct> & amcProd,
136 +                  const edm::Handle<GenRunInfoProduct> & aRunProd);
137  
138    int debug_;
139  
# Line 84 | Line 150 | class HbbTreeMaker : public edm::EDAnaly
150    HbbAnalysis::JetFlavour jetFlav_;
151  
152    edm::InputTag genParticleSrc_;
153 +  edm::InputTag genJetSrc_;
154 +  edm::InputTag partonJetSrc_;
155 +  edm::InputTag ak7genJetSrc_;
156 +  edm::InputTag ak7partonJetSrc_;
157 +  edm::InputTag trackSrc_;
158 +  edm::InputTag dcsSrc_;
159    edm::InputTag electronSrc_;
160    edm::InputTag muonSrc_;
161    edm::InputTag caloTauSrc_;
162    edm::InputTag pfTauSrc_;
163    edm::InputTag caloJetSrc_;
164    edm::InputTag jptJetSrc_;
165 +  edm::InputTag ak7JetSrc_;
166    edm::InputTag pfJetSrc_;
167 +  edm::InputTag ak7pfJetSrc_;
168    edm::InputTag caloMetSrc_;
169    edm::InputTag tcMetSrc_;
170    edm::InputTag pfMetSrc_;
# Line 101 | Line 175 | class HbbTreeMaker : public edm::EDAnaly
175    edm::InputTag vertexSrc_;
176    edm::InputTag triggerSrc_;
177    std::vector<std::string> hltPaths_;
178 +  edm::InputTag l1CenJetSrc_;
179 +  edm::InputTag l1TauJetSrc_;
180 +  edm::InputTag l1FwdJetSrc_;
181 +  edm::InputTag hltSummarySrc_;
182 +  std::vector<std::string> status1ToKeep_;
183 +  std::vector<std::string> status2ToKeep_;
184 +  std::vector<std::string> status3ToKeep_;
185 +  std::vector<boost::regex> status1ToKeepRegex_;
186 +  std::vector<boost::regex> status2ToKeepRegex_;
187 +  std::vector<boost::regex> status3ToKeepRegex_;
188 +
189    //vector filled during processing with all existing collections
190    //std::vector<std::pair<std::string,std::string> > collections_;
191  
# Line 110 | Line 195 | class HbbTreeMaker : public edm::EDAnaly
195    HbbAnalysis::HbbEvent * event_;
196  
197    TTree *tree_;
198 <  
198 >
199 >  //name of the desired collection for hlt matches
200 >  std::vector<edm::InputTag> hltTagsElec_;  
201 >  std::vector<edm::InputTag> hltTagsMu_;  
202 >  std::vector<edm::InputTag> hltTagsJet_;  
203 >
204   };//class
205  
206   #endif //HbbAnalysis_HbbTreeMaker_hh

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines