CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups 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,
38  const std::vector<CaloTower>& theTowers,
39  float isoConeElectron = 0.3) const;
40  float calculate(const Muon& aMuon, const std::vector<CaloTower>& theTowers, float isoConeMuon = 0.3) const;
41 
42  private:
43  float calculate(const reco::Track& track,
44  const float leptonEnergy,
45  const std::vector<CaloTower>& theTowers,
46  float isoCone) const;
47  };
48 
49 } // namespace pat
50 
51 #endif
Analysis-level electron class.
Definition: Electron.h:51
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
constexpr char Electron[]
Definition: modules.cc:12
Analysis-level muon class.
Definition: Muon.h:51
virtual ~CaloIsolationEnergy()
destructor