CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/RecoEcal/EgammaCoreTools/interface/EcalClusterPUCleaningTools.h

Go to the documentation of this file.
00001 #ifndef RecoEcal_EgammaCoreTools_EcalClusterPUCleaningTools_h
00002 #define RecoEcal_EgammaCoreTools_EcalClusterPUCleaningTools_h
00003 
00014 #include "FWCore/Framework/interface/Event.h"
00015 #include "DataFormats/EgammaReco/interface/SuperCluster.h"
00016 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
00017 
00018 #include "FWCore/Framework/interface/ESHandle.h"
00019 
00020 class CaloGeometry;
00021 
00022 class EcalClusterPUCleaningTools {
00023  public:
00024   EcalClusterPUCleaningTools( const edm::Event &ev, const edm::EventSetup &es, edm::InputTag redEBRecHits, edm::InputTag redEERecHits );
00025   ~EcalClusterPUCleaningTools();
00026   reco::SuperCluster CleanedSuperCluster(float xi, const reco::SuperCluster &cluster, const edm::Event &ev);
00027   
00028  private:
00029   void getGeometry( const edm::EventSetup &es );
00030   void getEBRecHits( const edm::Event &ev, edm::InputTag redEBRecHits );
00031   void getEERecHits( const edm::Event &ev, edm::InputTag redEERecHits );
00032   
00033   const CaloGeometry *geometry_;
00034   const EcalRecHitCollection *ebRecHits_;
00035   const EcalRecHitCollection *eeRecHits_;
00036                 
00037 };
00038 
00039 #endif