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 getJurassicArea( double r1, double r2, double width) ;
00025 double getBCMax(const reco::SuperClusterRef clus,int i);
00026 double getCx(const reco::SuperClusterRef clus, double i,double threshold);
00027 double getCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold);
00028 double getCCx(const reco::SuperClusterRef clus, double i,double threshold);
00029 double getJc (const reco::SuperClusterRef cluster, double r1=0.4, double r2=0.06, double jWidth=0.04, double threshold=0);
00030 double getJcc(const reco::SuperClusterRef cluster, double r1=0.4, double r2=0.06, double jWidth=0.04, double threshold=0);
00031 double getCCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold);
00032 double getCorrection(const reco::SuperClusterRef clus, double i,double j,double threshold);
00033 double getAvgBCEt(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold);
00034 double getNBC(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold);
00035 bool checkUsed(const reco::SuperClusterRef clus, const reco::BasicCluster* clu);
00036
00037 private:
00038
00039 const reco::BasicClusterCollection *fEBclusters_;
00040 const reco::BasicClusterCollection *fEEclusters_;
00041 const CaloGeometry *geometry_;
00042
00043 };
00044
00045 #endif