ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbbAnalysis/HbbAnalyzer/interface/HbbAnalyzerNew.h
Revision: 1.10
Committed: Thu Sep 15 10:50:35 2011 UTC (13 years, 8 months ago) by arizzi
Content type: text/plain
Branch: MAIN
CVS Tags: EdmV11Oct2011, EdmV10Oct2011, EdmV9Sept2011, Sept19th2011_2, Sept19th2011, Sept19th, VHNtupleV9_AR1, VHSept15_AR1
Changes since 1.9: +0 -2 lines
Log Message:
remove dimu dielectron and unused vars

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 // class decleration
66 //
67 class JetCorrectionUncertainty;
68
69
70 class HbbAnalyzerNew : public edm::EDProducer {
71
72 struct BTagSFContainer{
73 const BtagPerformance * BTAGSF_CSVL;
74 const BtagPerformance * BTAGSF_CSVM;
75 const BtagPerformance * BTAGSF_CSVT;
76 const BtagPerformance * MISTAGSF_CSVL;
77 const BtagPerformance * MISTAGSF_CSVM;
78 const BtagPerformance * MISTAGSF_CSVT;
79 };
80
81 public:
82 explicit HbbAnalyzerNew(const edm::ParameterSet&);
83 ~HbbAnalyzerNew();
84
85 protected:
86 TVector2 getTvect( const pat::Jet* patJet );
87
88 TLorentzVector getChargedTracksMomentum(const pat::Jet* patJet );
89
90 private:
91 virtual void beginJob() ;
92 virtual void produce( edm::Event&, const edm::EventSetup&);
93 virtual void endJob() ;
94 virtual void fillMuBlock(edm::View<pat::Muon>::const_iterator mu, int muInfo[15]);
95 virtual void fillScaleFactors(VHbbEvent::SimpleJet&, BTagSFContainer);
96
97 // ----------member data ---------------------------
98
99 edm::InputTag eleLabel_;
100 edm::InputTag muoLabel_;
101 edm::InputTag jetLabel_;
102 edm::InputTag subjetLabel_;
103 edm::InputTag simplejet1Label_;
104 edm::InputTag simplejet2Label_;
105 edm::InputTag simplejet3Label_;
106 edm::InputTag simplejet4Label_;
107 edm::InputTag tauLabel_;
108 edm::InputTag metLabel_;
109 edm::InputTag phoLabel_;
110 edm::InputTag hltResults_;
111
112 bool runOnMC_;
113
114 // TMatrixD *pointerPt;
115 TMatrixD *pointerEta;
116 TMatrixD *pointerPhi;
117
118 bool verbose_;
119 protected:
120 void fillSimpleJet (VHbbEvent::SimpleJet& sj, edm::View<pat::Jet>::const_iterator iter);
121 void setJecUnc(VHbbEvent::SimpleJet& sj,JetCorrectionUncertainty* jecunc);
122
123 };
124
125