CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/RecoHI/HiEgammaAlgos/interface/CxCalculator.h

Go to the documentation of this file.
00001 #ifndef CxCalculator_h
00002 #define CxCalculator_h
00003 
00004 #include "FWCore/Framework/interface/Event.h"
00005 #include "FWCore/Framework/interface/EventSetup.h"
00006 #include "FWCore/Framework/interface/ESHandle.h"
00007 
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 #include "FWCore/Utilities/interface/InputTag.h"
00010 
00011 #include "DataFormats/EgammaReco/interface/BasicClusterFwd.h"
00012 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h"
00013 
00014 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
00015 #include "Geometry/Records/interface/IdealGeometryRecord.h"
00016 
00017 
00018 class CxCalculator
00019 {
00020   public:
00021   
00022    CxCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, edm::InputTag barrelLabel, edm::InputTag endcapLabel) ;
00023   
00024    double getBCMax(const reco::SuperClusterRef clus,int i);
00025    double getCx(const reco::SuperClusterRef clus, double i,double threshold);
00026    double getCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold);
00027    double getCCx(const reco::SuperClusterRef clus, double i,double threshold); // background subtracted Cx
00028    double getCCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold); // background subtracted Cx
00029    double getCorrection(const reco::SuperClusterRef clus, double i,double j,double threshold); // background subtracted Cx
00030    double getAvgBCEt(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold); // background subtracted Cx
00031    double getNBC(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold); // background subtracted Cx
00032    bool checkUsed(const reco::SuperClusterRef clus, const reco::BasicCluster* clu);
00033 
00034   private:
00035    
00036    const reco::BasicClusterCollection *fEBclusters_;
00037    const reco::BasicClusterCollection *fEEclusters_;
00038    const CaloGeometry                 *geometry_;
00039    
00040 };
00041 
00042 #endif