CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_2_9_HLT1_bphpatch4/src/RecoEgamma/EgammaIsolationAlgos/interface/EgammaTowerIsolation.h

Go to the documentation of this file.
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/RecoCandidate/interface/RecoCandidate.h"
00019 #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h"
00020 #include "DataFormats/EgammaReco/interface/SuperCluster.h"
00021 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h"
00022 
00023 
00024 
00025 class EgammaTowerIsolation {
00026  public:
00027   
00028   enum HcalDepth{AllDepths=-1,Undefined=0,Depth1=1,Depth2=2};
00029 
00030   //constructors
00031   EgammaTowerIsolation (double extRadius,
00032                 double intRadius,
00033                 double etLow,
00034                 signed int depth,
00035                 const CaloTowerCollection* ) ;
00036  
00037    //destructor 
00038   ~EgammaTowerIsolation() ;
00039     //methods
00040 
00041   int getNumberTracks(const reco::Candidate*) const ;
00042   double getTowerEtSum (const reco::Candidate*) const ;
00043   double getTowerESum (const reco::Candidate*) const ;
00044   double getTowerEtSum(const reco::SuperCluster*) const;
00045   double getTowerESum(const reco::SuperCluster*) const;
00046 
00047  private:
00048 
00049   double extRadius_ ;
00050   double intRadius_ ;
00051   double etLow_ ;
00052   signed int depth_;
00053 
00054   const CaloTowerCollection *towercollection_ ;
00055   
00056 };
00057 
00058 #endif