ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h
(Generate patch)

Comparing UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h (file contents):
Revision 1.16 by khahn, Tue Jun 5 19:35:47 2012 UTC vs.
Revision 1.18 by dkralph, Mon Dec 17 17:12:27 2012 UTC

# Line 1 | Line 1
1 + #ifndef ISOLATIONSELECTION
2 + #define ISOLATIONSELECTION
3 +
4   #include "Array.h"
5   #include "Electron.h"
6   #include "Muon.h"
# Line 15 | Line 18
18   #include "SelectionStatus.h"
19   #include "SimpleLepton.h"
20  
21 + using namespace std;
22 + using namespace mithep;
23 +
24   #define MUON_ISOMVA_CUT_BIN0  -0.615
25   #define MUON_ISOMVA_CUT_BIN1   0.235
26   #define MUON_ISOMVA_CUT_BIN2  -0.825
# Line 164 | Line 170 | Float_t computePFEleIso(const mithep::El
170  
171   SelectionStatus electronIsoSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
172   SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex *, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
167 bool pairwiseIsoSelection( ControlFlags &, vector<SimpleLepton> &, float rho );
173   bool noIso(ControlFlags &, vector<SimpleLepton> &, float rho);
174  
175   void initMuonIsoMVA();
# Line 193 | Line 198 | double muonPFIso04(ControlFlags &ctrl,
198                     mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
199                     vector<const mithep::PFCandidate*> photonsToVeto);
200  
196 // hacked version
197 double muonPFIso04(ControlFlags &ctrl,
198                   const mithep::Muon * mu,
199                   const mithep::Vertex * vtx,
200                   const mithep::Array<mithep::PFCandidate> * fPFCandidates,
201                   float rho,  // the hack
202                   mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
203                   vector<const mithep::Muon*> muonsToVeto,
204                   vector<const mithep::Electron*> electronsToVeto);
205 //
201   SelectionStatus muonReferenceIsoSelection(ControlFlags &ctrl,
202                                            const mithep::Muon * mu,
203                                            const mithep::Vertex * vtx,
# Line 210 | Line 205 | SelectionStatus muonReferenceIsoSelectio
205                                            const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
206                                            mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
207                                            vector<const mithep::PFCandidate*> photonsToVeto);
213 // hacked version
214 SelectionStatus muonReferenceIsoSelection(ControlFlags &ctrl,
215                                          const mithep::Muon * mu,
216                                          const mithep::Vertex * vtx,
217                                          const mithep::Array<mithep::PFCandidate> * fPFCandidates,
218                                          float,
219                                          mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
220                                          vector<const mithep::Muon*> muonsToVeto,
221                                          vector<const mithep::Electron*> electronsToVeto);
208  
209   void initElectronIsoMVA();
210   SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
# Line 246 | Line 232 | float electronPFIso04(ControlFlags &ctrl
232                        mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
233                        vector<const mithep::PFCandidate*> photonsToVeto);                
234  
249 // hacked version
250 float electronPFIso04(ControlFlags &ctrl,
251                      const mithep::Electron * ele,
252                      const mithep::Vertex * vtx,
253                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
254                      float rho, // the hack
255                      mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
256                      vector<const mithep::Muon*> muonsToVeto,
257                      vector<const mithep::Electron*> electronsToVeto) ;
258 //
235   SelectionStatus electronReferenceIsoSelection(ControlFlags &ctrl,
236                                                const mithep::Electron * ele,
237                                                const mithep::Vertex * vtx,
# Line 263 | Line 239 | SelectionStatus electronReferenceIsoSele
239                                                const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
240                                                mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
241                                                vector<const mithep::PFCandidate*> photonsToVeto);
266 // hacked version
267 SelectionStatus electronReferenceIsoSelection(ControlFlags &ctrl,
268                                              const mithep::Electron * ele,
269                                              const mithep::Vertex * vtx,
270                                              const mithep::Array<mithep::PFCandidate> * fPFCandidates,
271                                              float,
272                                              mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
273                                              vector<const mithep::Muon*> muonsToVeto,
274                                              vector<const mithep::Electron*> electronsToVeto);
275
276 double  dbetaCorrectedIsoDr03(ControlFlags & ctrl,
277                              const mithep::PFCandidate * photon,
278                              const mithep::Muon * mu, // need to veto          
279                              const mithep::Array<mithep::PFCandidate> * fPFCandidates);
242  
243   double  dbetaCorrectedIsoDr03(ControlFlags & ctrl,
244                                const mithep::PFCandidate * photon,
245 <                              const mithep::Electron * el, // need to veto              
245 >                              const mithep::ChargedParticle * lep, // need to veto              
246                                const mithep::Array<mithep::PFCandidate> * fPFCandidates);
247  
248   double  nonCorrectedIsoDr03(ControlFlags & ctrl,
249                              const mithep::PFCandidate * photon,
250 <                            const mithep::Muon * mu, // need to veto            
289 <                            const mithep::Array<mithep::PFCandidate> * fPFCandidates);
290 <
291 < double  nonCorrectedIsoDr03(ControlFlags & ctrl,
292 <                            const mithep::PFCandidate * photon,
293 <                            const mithep::Electron * el, // need to veto                
250 >                            const mithep::ChargedParticle *lep, // need to veto                
251                              const mithep::Array<mithep::PFCandidate> * fPFCandidates);
252  
253 + double  isoDr03ForFsr(ControlFlags & ctrl,
254 +                      const PFCandidate * photon,
255 +                      const ChargedParticle * lep,
256 +                      const Array<PFCandidate> * fPFCandidates,
257 +                      bool doDBetaCorr=false);
258 + #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines