ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbbAnalysis/HbbAnalyzer/interface/HbbAnalyzerNew.h
Revision: 1.6
Committed: Mon Aug 22 18:05:00 2011 UTC (13 years, 8 months ago) by bortigno
Content type: text/plain
Branch: MAIN
CVS Tags: AR_Sep8_LightNtuple, VHBB_EDMNtupleV3
Changes since 1.5: +34 -0 lines
Log Message:
genJet matching from PAT

File Contents

# Content
1 // system include files
2 #include <memory>
3 #include <iostream>
4 using namespace std;
5
6 // user include files
7 #include "FWCore/Framework/interface/Frameworkfwd.h"
8 #include "FWCore/Framework/interface/EDProducer.h"
9
10 #include "FWCore/Framework/interface/Event.h"
11 #include "FWCore/Framework/interface/MakerMacros.h"
12
13 #include "FWCore/ParameterSet/interface/ParameterSet.h"
14 #include "FWCore/ServiceRegistry/interface/Service.h"
15 #include "CommonTools/UtilAlgos/interface/TFileService.h"
16 #include "FWCore/Utilities/interface/InputTag.h"
17
18 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
19
20 #include "DataFormats/PatCandidates/interface/Muon.h"
21 #include "DataFormats/PatCandidates/interface/Jet.h"
22 #include "DataFormats/PatCandidates/interface/Electron.h"
23 #include "DataFormats/PatCandidates/interface/Tau.h"
24 #include "DataFormats/PatCandidates/interface/Photon.h"
25 #include "DataFormats/PatCandidates/interface/MET.h"
26
27 #include "DataFormats/Common/interface/View.h"
28
29 #include "DataFormats/Candidate/interface/Candidate.h"
30 #include "DataFormats/Candidate/interface/Particle.h"
31 #include "DataFormats/HepMCCandidate/interface/GenParticle.h"
32
33 #include "TH1.h"
34 #include "TTree.h"
35 #include "TMath.h"
36
37 #include "DataFormats/Common/interface/TriggerResults.h"
38 #include "FWCore/Common/interface/TriggerNames.h"
39 #include <TString.h>
40
41 #include "DataFormats/GeometryVector/interface/Phi.h"
42
43 #include<TVector2.h>
44
45 #include "TArrayD.h"
46 #include "TLorentzVector.h"
47
48 #include "DataFormats/METReco/interface/PFMET.h"
49
50 //from .cc
51 #include "VHbbAnalysis/VHbbDataFormats/interface/VHbbEvent.h"
52 #include "VHbbAnalysis/VHbbDataFormats/interface/VHbbEventAuxInfo.h"
53
54 #include "DataFormats/GeometryVector/interface/VectorUtil.h"
55
56 #include "FWCore/Framework/interface/ESHandle.h"
57 #include "DataFormats/PatCandidates/interface/PATObject.h"
58 #include "DataFormats/PatCandidates/interface/TriggerObject.h"
59 #include "DataFormats/PatCandidates/interface/TriggerObjectStandAlone.h"
60 #include "RecoBTag/Records/interface/BTagPerformanceRecord.h"
61 #include "CondFormats/PhysicsToolsObjects/interface/BinningPointByMap.h"
62 #include "RecoBTag/PerformanceDB/interface/BtagPerformance.h"
63
64
65 struct BTV_SF{
66
67
68 const BtagPerformance * BTAGSF_CSVL;
69 const BtagPerformance * BTAGSF_CSVM;
70 const BtagPerformance * BTAGSF_CSVT;
71
72 const BtagPerformance * MISTAGSF_CSVL;
73 const BtagPerformance * MISTAGSF_CSVM;
74 const BtagPerformance * MISTAGSF_CSVT;
75
76 };
77
78
79 //
80 // class decleration
81 //
82
83
84
85 class HbbAnalyzerNew : public edm::EDProducer {
86
87 public:
88 explicit HbbAnalyzerNew(const edm::ParameterSet&);
89 ~HbbAnalyzerNew();
90
91 protected:
92 TVector2 getTvect( const pat::Jet* patJet );
93
94 TLorentzVector getChargedTracksMomentum(const pat::Jet* patJet );
95
96 private:
97 virtual void beginJob() ;
98 virtual void produce( edm::Event&, const edm::EventSetup&);
99 virtual void endJob() ;
100 virtual void fillMuBlock(edm::View<pat::Muon>::const_iterator mu, int muInfo[15]);
101 virtual void fillScaleFactors(VHbbEvent::SimpleJet, BTV_SF);
102
103 // ----------member data ---------------------------
104
105 edm::InputTag eleLabel_;
106 edm::InputTag muoLabel_;
107 edm::InputTag jetLabel_;
108 edm::InputTag subjetLabel_;
109 edm::InputTag simplejet1Label_;
110 edm::InputTag simplejet2Label_;
111 edm::InputTag simplejet3Label_;
112 edm::InputTag simplejet4Label_;
113 edm::InputTag tauLabel_;
114 edm::InputTag metLabel_;
115 edm::InputTag phoLabel_;
116 edm::InputTag dimuLabel_;
117 edm::InputTag dielecLabel_;
118 edm::InputTag hltResults_;
119
120 bool runOnMC_;
121
122 // TMatrixD *pointerPt;
123 TMatrixD *pointerEta;
124 TMatrixD *pointerPhi;
125
126 bool verbose_;
127
128 BTV_SF iBTV;
129
130 };
131
132
133 //
134 // constants, enums and typedefs
135 //
136
137 //
138 // static data member definitions
139 //
140
141 //
142