Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:04

0001 //
0002 //
0003 
0004 #ifndef PhysicsTools_PatUtils_TrackerIsolationPt_h
0005 #define PhysicsTools_PatUtils_TrackerIsolationPt_h
0006 
0007 /**
0008   \class    pat::TrackerIsolationPt TrackerIsolationPt.h "PhysicsTools/PatUtils/interface/TrackerIsolationPt.h"
0009   \brief    Calculates a lepton's tracker isolation pt
0010 
0011    TrackerIsolationPt calculates a tracker isolation pt in a cone
0012    around the lepton's direction, without doing track extrapolation
0013 
0014   \author   Steven Lowette
0015   \version  $Id: TrackerIsolationPt.h,v 1.3 2008/02/28 14:54:24 llista Exp $
0016 */
0017 
0018 namespace reco {
0019   class Track;
0020 }
0021 
0022 namespace edm {
0023   template <typename T>
0024   class View;
0025   class InputTag;
0026 }  // namespace edm
0027 
0028 namespace pat {
0029   class Electron;
0030   class Muon;
0031   class TrackerIsolationPt {
0032   public:
0033     TrackerIsolationPt();
0034     virtual ~TrackerIsolationPt();
0035 
0036     float calculate(const Electron& theElectron,
0037                     const edm::View<reco::Track>& theTracks,
0038                     float isoConeElectron = 0.3) const;
0039     float calculate(const Muon& theMuon, const edm::View<reco::Track>& theTracks, float isoConeMuon = 0.3) const;
0040 
0041   private:
0042     float calculate(const reco::Track& theTrack, const edm::View<reco::Track>& theTracks, float isoCone) const;
0043   };
0044 
0045 }  // namespace pat
0046 
0047 #endif