00001 #ifndef EgammaTowerIsolation_h 00002 #define EgammaTowerIsolation_h 00003 00004 //***************************************************************************** 00005 // File: EgammaTowerIsolation.h 00006 // ---------------------------------------------------------------------------- 00007 // OrigAuth: Matthias Mozer 00008 // Institute: IIHE-VUB 00009 //============================================================================= 00010 //***************************************************************************** 00011 00012 //C++ includes 00013 #include <vector> 00014 #include <functional> 00015 00016 //CMSSW includes 00017 #include "FWCore/Framework/interface/ESHandle.h" 00018 #include "DataFormats/Candidate/interface/Candidate.h" 00019 #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h" 00020 00021 00022 00023 class EgammaTowerIsolation { 00024 public: 00025 00026 //constructors 00027 EgammaTowerIsolation (double extRadius, 00028 double intRadius, 00029 double etLow, 00030 const CaloTowerCollection* ) ; 00031 00032 //destructor 00033 ~EgammaTowerIsolation() ; 00034 //methods 00035 00036 int getNumberTracks(const reco::Candidate*) const ; 00037 double getTowerEtSum (const reco::Candidate*) const ; 00038 00039 private: 00040 00041 double extRadius_ ; 00042 double intRadius_ ; 00043 double etLow_ ; 00044 00045 const CaloTowerCollection *towercollection_ ; 00046 00047 }; 00048 00049 #endif