CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HLTJets.h
Go to the documentation of this file.
1 #ifndef HLTJETS_H
2 #define HLTJETS_H
3 
4 #include "TH1.h"
5 #include "TH2.h"
6 #include "TFile.h"
7 #include "TNamed.h"
8 #include <vector>
9 #include <map>
10 #include "TROOT.h"
11 #include "TChain.h"
12 
15 
19 
22 
25 
29 
33 
37 
40 
42 
44 
45 typedef std::vector<std::string> MyStrings;
46 
54 class GetPtGreater {
55 public:
56  template <typename T> bool operator () (const T& i, const T& j) {
57  return (i.getPt() > j.getPt());
58  }
59 };
60 
62 public:
63  template <typename T> bool operator () (const T& i, const T& j) {
64  return (i.pt() > j.pt());
65  }
66 };
67 
68 class HLTJets {
69 public:
70  HLTJets();
71 
72  void setup(const edm::ParameterSet& pSet, TTree* tree, edm::ConsumesCollector&& iC);
73 
75  void analyze(edm::Event const& iEvent,
77  const edm::Handle<reco::CaloJetCollection> & ohcorjets,
78  const edm::Handle<reco::CaloJetCollection> & ohcorL1L2L3jets,
79  const edm::Handle<double> & rho,
80  const edm::Handle<reco::CaloJetCollection> & recojets,
81  const edm::Handle<reco::CaloJetCollection> & recocorjets,
86  const edm::Handle<reco::CaloJetCollection> & myHLTL2Tau,
87  const edm::Handle<reco::HLTTauCollection> & myHLTTau,
88  const edm::Handle<reco::PFTauCollection> & myHLTPFTau,
89  const edm::Handle<reco::PFTauCollection> & myHLTPFTauTightCone,
90  const edm::Handle<reco::PFJetCollection> & myHLTPFJets,
91  const edm::Handle<reco::PFTauCollection> & myRecoPFTau,
92  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrByTanCOnePercent,
93  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrByTanCHalfPercent,
94  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrByTanCQuarterPercent,
95  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrByTanCTenthPercent,
96  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrByIsolation,
97  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrAgainstElec,
98  const edm::Handle<reco::PFTauDiscriminator> & theRecoPFTauDiscrAgainstMuon,
101  const edm::Handle<CaloTowerCollection> & caloTowersCleanerUpperR45,
102  const edm::Handle<CaloTowerCollection> & caloTowersCleanerLowerR45,
103  const edm::Handle<CaloTowerCollection> & caloTowersCleanerNoR45,
104  const edm::Handle<reco::PFMETCollection> & pfmets,
105  double thresholdForSavingTowers,
106  double minPtCH,
107  double minPtGamma,
108  TTree * tree);
109 
110 private:
111 
112  // Tree variables
116  double jrho;
117 
120 
121  float *jgenpt, *jgenphi, *jgeneta, *jgene;
122  float *towet, *toweta, *towphi, *towen, *towem, *towhd, *towoe;
127 
129 
133 
134  // Taus
138  float *tauEta, *tauPt, *tauPhi;
139  //PFTau
140  int nohPFTau;
144  //PFTau with tight cone
149  //PFJets
150  float pfHT;
151  float pfMHT;
152  int nohPFJet;
154  //Reco PFTau
159  //Reco PF jets
162  int nrpj;
163 
164 
165  // isolation/signal cands for recoPFTau and HLTPFtau
170 
175 
180 
185 
187 
188 
189  // input variables
192 
194 
195  static float etaBarrel() { return 1.4; }
196 
197  //create maps linking histogram pointers to HCAL Channel hits and digis
199 
200 };
201 
202 #endif
float * jhcalpt
Definition: HLTJets.h:113
float * l2tauPhi
Definition: HLTJets.h:135
float * tauPhi
Definition: HLTJets.h:138
int i
Definition: DBlmapReader.cc:9
float * ohpfTauJetPt
Definition: HLTJets.h:142
int noRecoPFTausSignal
Definition: HLTJets.h:166
float _CalJetMin
Definition: HLTJets.h:191
float * recopfTauDiscrAgainstElec
Definition: HLTJets.h:158
float * jrcorcalemf
Definition: HLTJets.h:119
float * jrcorcaleta
Definition: HLTJets.h:119
float * pfJetPhi
Definition: HLTJets.h:153
TString calopfx
Definition: HLTJets.h:198
int * hltpftauIsoTrToPFTauMatch
Definition: HLTJets.h:182
float * HLTPFTauIsoTrPt
Definition: HLTJets.h:184
float * towem
Definition: HLTJets.h:122
float * l2tauEta
Definition: HLTJets.h:135
float * jrcorcaln90hits
Definition: HLTJets.h:119
bool _Debug
Definition: HLTJets.h:190
float * jhcorL1L2L3cale
Definition: HLTJets.h:115
float * jrcaln90
Definition: HLTJets.h:118
float * ohpfTauEta
Definition: HLTJets.h:142
float * ohpfTauTightConeLeadTrackPt
Definition: HLTJets.h:147
TString rjetpfx
Definition: HLTJets.h:198
float * HLTPFTauSignalTrDz
Definition: HLTJets.h:178
float * ohpfTauTightConeTrkIso
Definition: HLTJets.h:148
float * ohpfTauTightConePt
Definition: HLTJets.h:147
int * jpfrecochargedMultiplicity
Definition: HLTJets.h:161
float * ohpfTauLeadTrackPt
Definition: HLTJets.h:142
Definition: DDAxes.h:10
float htcalet
Definition: HLTJets.h:125
bool _Monte
Definition: HLTJets.h:190
float * recopfTauDiscrByTancQuarterPercent
Definition: HLTJets.h:158
float * pfJetchargedHadronFraction
Definition: HLTJets.h:153
int * recopfTauGammaIso
Definition: HLTJets.h:157
float * recopfTauEta
Definition: HLTJets.h:156
float * jpfrecochargedHadronFraction
Definition: HLTJets.h:160
float * ohpfTauPhi
Definition: HLTJets.h:142
float mgensum
Definition: HLTJets.h:126
float mgenphi
Definition: HLTJets.h:126
int noHLTPFTausIso
Definition: HLTJets.h:181
float * recopfTauDiscrByIso
Definition: HLTJets.h:158
float pfmetphi
Definition: HLTJets.h:128
float * recopfTauLeadTrackPt
Definition: HLTJets.h:156
float * jhcalemf
Definition: HLTJets.h:113
float * recopfTauDiscrByTancHalfPercent
Definition: HLTJets.h:158
int noHLTPFTausSignal
Definition: HLTJets.h:176
int * towR45upper
Definition: HLTJets.h:123
float mgenmet
Definition: HLTJets.h:126
float * jpfrecoe
Definition: HLTJets.h:160
float htcalphi
Definition: HLTJets.h:125
float * recoPFTauSignalTrPt
Definition: HLTJets.h:169
int nhjetcal
Definition: HLTJets.h:131
float * jhcorcalpt
Definition: HLTJets.h:114
float * jhcorcaleta
Definition: HLTJets.h:114
int nrjetcal
Definition: HLTJets.h:132
float * jhcorL1L2L3caleta
Definition: HLTJets.h:115
float * jhcale
Definition: HLTJets.h:113
int * hltpftauSignalTrToPFTauMatch
Definition: HLTJets.h:177
float * jrcaln90hits
Definition: HLTJets.h:118
float * ohpfTauTightConeLeadPionPt
Definition: HLTJets.h:147
float * jrcale
Definition: HLTJets.h:118
TString gmetpfx
Definition: HLTJets.h:198
float * ohpfTauTightConeJetPt
Definition: HLTJets.h:147
float * jpfrecoeta
Definition: HLTJets.h:160
float * pfJetE
Definition: HLTJets.h:153
float * toweta
Definition: HLTJets.h:122
float * l2tauPt
Definition: HLTJets.h:135
float * jrcaleta
Definition: HLTJets.h:118
float * HLTPFTauIsoTrDz
Definition: HLTJets.h:183
float * recoPFTauIsoTrPt
Definition: HLTJets.h:174
float * tauPt
Definition: HLTJets.h:138
float * recopfTauPhi
Definition: HLTJets.h:156
int iEvent
Definition: GenABIO.cc:230
TString rmetpfx
Definition: HLTJets.h:198
float * ohpfTauTightConeEta
Definition: HLTJets.h:147
float * recopfTauJetPt
Definition: HLTJets.h:156
float * ohpfTauGammaIso
Definition: HLTJets.h:143
float pfsumet
Definition: HLTJets.h:128
float * pfJetPt
Definition: HLTJets.h:153
float * jhcaln90hits
Definition: HLTJets.h:113
float * towet
Definition: HLTJets.h:122
float * jrcorcaln90
Definition: HLTJets.h:119
float * ohpfTauTrkIso
Definition: HLTJets.h:143
float * jhcaln90
Definition: HLTJets.h:113
float * jpfreconeutralHadronFraction
Definition: HLTJets.h:160
float * recopfTauLeadPionPt
Definition: HLTJets.h:156
float * recopfTauPt
Definition: HLTJets.h:156
reco::helper::JetIDHelper * jetID
Definition: HLTJets.h:186
float * towphi
Definition: HLTJets.h:122
float * jhcorcalemf
Definition: HLTJets.h:114
float * recoPFTauIsoTrDz
Definition: HLTJets.h:173
float mcalphi
Definition: HLTJets.h:124
int j
Definition: DBlmapReader.cc:9
static float etaBarrel()
Definition: HLTJets.h:195
float * jgenphi
Definition: HLTJets.h:121
void analyze(edm::Event const &iEvent, const edm::Handle< reco::CaloJetCollection > &ohjets, const edm::Handle< reco::CaloJetCollection > &ohcorjets, const edm::Handle< reco::CaloJetCollection > &ohcorL1L2L3jets, const edm::Handle< double > &rho, const edm::Handle< reco::CaloJetCollection > &recojets, const edm::Handle< reco::CaloJetCollection > &recocorjets, const edm::Handle< reco::GenJetCollection > &gjets, const edm::Handle< reco::CaloMETCollection > &rmets, const edm::Handle< reco::GenMETCollection > &gmets, const edm::Handle< reco::METCollection > &ht, const edm::Handle< reco::CaloJetCollection > &myHLTL2Tau, const edm::Handle< reco::HLTTauCollection > &myHLTTau, const edm::Handle< reco::PFTauCollection > &myHLTPFTau, const edm::Handle< reco::PFTauCollection > &myHLTPFTauTightCone, const edm::Handle< reco::PFJetCollection > &myHLTPFJets, const edm::Handle< reco::PFTauCollection > &myRecoPFTau, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrByTanCOnePercent, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrByTanCHalfPercent, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrByTanCQuarterPercent, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrByTanCTenthPercent, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrByIsolation, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrAgainstElec, const edm::Handle< reco::PFTauDiscriminator > &theRecoPFTauDiscrAgainstMuon, const edm::Handle< reco::PFJetCollection > &recoPFJets, const edm::Handle< CaloTowerCollection > &caloTowers, const edm::Handle< CaloTowerCollection > &caloTowersCleanerUpperR45, const edm::Handle< CaloTowerCollection > &caloTowersCleanerLowerR45, const edm::Handle< CaloTowerCollection > &caloTowersCleanerNoR45, const edm::Handle< reco::PFMETCollection > &pfmets, double thresholdForSavingTowers, double minPtCH, double minPtGamma, TTree *tree)
Definition: HLTJets.cc:400
int * towR45lower
Definition: HLTJets.h:123
int * signalTrToPFTauMatch
Definition: HLTJets.h:167
float * ohpfTauTightConeGammaIso
Definition: HLTJets.h:148
float * recopfTauDiscrAgainstMuon
Definition: HLTJets.h:158
void setup(const edm::ParameterSet &pSet, TTree *tree, edm::ConsumesCollector &&iC)
Definition: HLTJets.cc:28
TString gjetpfx
Definition: HLTJets.h:198
std::vector< std::string > MyStrings
EgammaCoreTools.
Definition: HLTAlCa.h:39
float * recopfTauDiscrByTancOnePercent
Definition: HLTJets.h:158
float * tauEta
Definition: HLTJets.h:138
HLTJets()
Definition: HLTJets.cc:17
float * towoe
Definition: HLTJets.h:122
double jrho
Definition: HLTJets.h:116
float * pfJetneutralMultiplicity
Definition: HLTJets.h:153
float mcalsum
Definition: HLTJets.h:124
float * pfJetneutralHadronEnergyFraction
Definition: HLTJets.h:153
float pfmet
Definition: HLTJets.h:128
float * ohpfTauLeadPionPt
Definition: HLTJets.h:142
int njetgen
Definition: HLTJets.h:130
float * jhcorcale
Definition: HLTJets.h:114
float * l25tauPt
Definition: HLTJets.h:135
float * HLTPFTauSignalTrPt
Definition: HLTJets.h:179
float * jhcaleta
Definition: HLTJets.h:113
float * jgeneta
Definition: HLTJets.h:121
bool operator()(const T &i, const T &j)
Definition: HLTJets.h:56
bool operator()(const T &i, const T &j)
Definition: HLTJets.h:63
float * jpfreconeutralEMFraction
Definition: HLTJets.h:160
float * jhcorL1L2L3caln90hits
Definition: HLTJets.h:115
float * l2tauemiso
Definition: HLTJets.h:135
float * jrcorcalphi
Definition: HLTJets.h:119
float * jrcalpt
Definition: HLTJets.h:118
int * towR45none
Definition: HLTJets.h:123
float * pfJetEta
Definition: HLTJets.h:153
int ntowcal
Definition: HLTJets.h:130
int * jpfreconeutralMultiplicity
Definition: HLTJets.h:161
int * recopfTauTrkIso
Definition: HLTJets.h:157
int * ohpfTauTightConeProngs
Definition: HLTJets.h:146
int nohPFTauTightCone
Definition: HLTJets.h:145
float * recoPFTauSignalTrDz
Definition: HLTJets.h:168
float * jrcalphi
Definition: HLTJets.h:118
int nrpj
Definition: HLTJets.h:162
int noRecoPFTausIso
Definition: HLTJets.h:171
float * jhcorL1L2L3calemf
Definition: HLTJets.h:115
float * jhcorL1L2L3caln90
Definition: HLTJets.h:115
float _GenJetMin
Definition: HLTJets.h:191
float * jpfrecophi
Definition: HLTJets.h:160
int * l3tautckiso
Definition: HLTJets.h:136
int nohPFJet
Definition: HLTJets.h:152
float * jpfrecochargedEMFraction
Definition: HLTJets.h:160
float * towen
Definition: HLTJets.h:122
float * jhcorcalphi
Definition: HLTJets.h:114
float * jhcorcaln90
Definition: HLTJets.h:114
float mcalmet
Definition: HLTJets.h:124
float * pfJetneutralEMFraction
Definition: HLTJets.h:153
float * jpfrecopt
Definition: HLTJets.h:160
float * jhcalphi
Definition: HLTJets.h:113
int nRecoPFTau
Definition: HLTJets.h:155
float * ohpfTauTightConePhi
Definition: HLTJets.h:147
int * ohpfTauProngs
Definition: HLTJets.h:141
float * recopfTauDiscrByTancTenthPercent
Definition: HLTJets.h:158
float * jhcorL1L2L3calphi
Definition: HLTJets.h:115
int * isoTrToPFTauMatch
Definition: HLTJets.h:172
int nohtau
Definition: HLTJets.h:137
float * pfJetchargedMultiplicity
Definition: HLTJets.h:153
float pfMHT
Definition: HLTJets.h:151
int nohPFTau
Definition: HLTJets.h:140
float * pfJetchargedEMFraction
Definition: HLTJets.h:153
float * jrcorcale
Definition: HLTJets.h:119
long double T
float * jrcorcalpt
Definition: HLTJets.h:119
float * jgene
Definition: HLTJets.h:121
float * towhd
Definition: HLTJets.h:122
float * jhcorcaln90hits
Definition: HLTJets.h:114
float * jhcorL1L2L3calpt
Definition: HLTJets.h:115
int evtCounter
Definition: HLTJets.h:193
int nhcorjetcal
Definition: HLTJets.h:131
int nohl2tau
Definition: HLTJets.h:137
int nrcorjetcal
Definition: HLTJets.h:132
float * jrcalemf
Definition: HLTJets.h:118
float * ohpfTauLeadTrackVtxZ
Definition: HLTJets.h:142
float * jgenpt
Definition: HLTJets.h:121
float htcalsum
Definition: HLTJets.h:125
float pfHT
Definition: HLTJets.h:150
float * ohpfTauPt
Definition: HLTJets.h:142
int nhcorL1L2L3jetcal
Definition: HLTJets.h:131