CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CaloIsolationEnergy.h
Go to the documentation of this file.
1 //
2 //
3 
4 #ifndef PhysicsTools_PatUtils_CaloIsolationEnergy_h
5 #define PhysicsTools_PatUtils_CaloIsolationEnergy_h
6 
18 #include <vector>
19 
20 class MagneticField;
21 class TrackToEcalPropagator;
22 class CaloTower;
23 
24 namespace reco {
25  class Track;
26 }
27 
28 namespace pat {
29  class Muon;
30  class Electron;
31 
33  public:
35  virtual ~CaloIsolationEnergy();
36 
37  float calculate(const Electron & anElectron, const std::vector<CaloTower> & theTowers, float isoConeElectron = 0.3) const;
38  float calculate(const Muon & aMuon, const std::vector<CaloTower> & theTowers, float isoConeMuon = 0.3) const;
39 
40  private:
41  float calculate(const reco::Track & track, const float leptonEnergy, const std::vector<CaloTower> & theTowers, float isoCone) const;
42  };
43 
44 }
45 
46 #endif
47 
Analysis-level electron class.
Definition: Electron.h:50
Calculates a lepton&#39;s calorimetric isolation energy.
float calculate(const Electron &anElectron, const std::vector< CaloTower > &theTowers, float isoConeElectron=0.3) const
calculate the CalIsoE from the lepton object
Analysis-level muon class.
Definition: Muon.h:49
virtual ~CaloIsolationEnergy()
destructor