CMS 3D CMS Logo

CutBasedPhotonIDAlgo.h

Go to the documentation of this file.
00001 #ifndef CutBasedPhotonIDAlgo_H
00002 #define CutBasedPhotonIDAlgo_H
00003 
00004 #include "RecoEgamma/PhotonIdentification/interface/PhotonIDAlgo.h"
00005 #include "DataFormats/EgammaCandidates/interface/PhotonID.h"
00006 #include "DataFormats/EgammaCandidates/interface/Photon.h"
00007 #include "FWCore/Framework/interface/Event.h"
00008 #include "FWCore/Framework/interface/EventSetup.h"
00009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00010 
00011 class CutBasedPhotonIDAlgo : PhotonIDAlgo {
00012 
00013 public:
00014 
00015   CutBasedPhotonIDAlgo(){};
00016 
00017   virtual ~CutBasedPhotonIDAlgo(){};
00018 
00019   void setup(const edm::ParameterSet& conf);
00020   reco::PhotonID calculate(const reco::Photon*, const edm::Event&, const edm::EventSetup& es);
00021   void decideEB(reco::PhotonID &phID, const reco::Photon* pho);
00022   void decideEE(reco::PhotonID &phID, const reco::Photon* pho);
00023  private:
00024   
00025   //Which cuts to do?
00026   bool dophotonBCIsolationCut_;
00027   bool dophotonEcalRecHitIsolationCut_;
00028   bool dophotonHcalRecHitIsolationCut_;
00029   bool dophotonHCTrkIsolationCut_;
00030   bool dophotonSCTrkIsolationCut_;
00031   bool dophotonHCNTrkCut_;
00032   bool dophotonSCNTrkCut_;
00033   bool dorequireNotElectron_;
00034   bool dorequireFiducial_;
00035   bool dophotonHadOverEMCut_;
00036   bool dophotonsigmaeeCut_;
00037   bool dophotonR9Cut_;
00038 
00039   //Actual cut values
00040   double looseEMEcalRecHitIsolationCutEB_;
00041   double looseEMHcalRecHitIsolationCutEB_;
00042   double looseEMHollowConeTrkIsolationCutEB_;
00043   double looseEMSolidConeTrkIsolationCutEB_;
00044   int looseEMSolidConeNTrkCutEB_;
00045   int looseEMHollowConeNTrkCutEB_;
00046   double looseEMEtaWidthCutEB_;
00047   double looseEMHadOverEMCutEB_;
00048   double looseEMR9CutEB_;
00049 
00050   double loosephotonEcalRecHitIsolationCutEB_;
00051   double loosephotonHcalRecHitIsolationCutEB_;
00052   double loosephotonHollowConeTrkIsolationCutEB_;
00053   double loosephotonSolidConeTrkIsolationCutEB_;
00054   int loosephotonSolidConeNTrkCutEB_;
00055   int loosephotonHollowConeNTrkCutEB_;
00056   double loosephotonEtaWidthCutEB_;
00057   double loosephotonHadOverEMCutEB_;
00058   double loosephotonR9CutEB_;
00059 
00060   double tightphotonEcalRecHitIsolationCutEB_;
00061   double tightphotonHcalRecHitIsolationCutEB_;
00062   double tightphotonHollowConeTrkIsolationCutEB_;
00063   double tightphotonSolidConeTrkIsolationCutEB_;
00064   int tightphotonSolidConeNTrkCutEB_;
00065   int tightphotonHollowConeNTrkCutEB_;
00066   double tightphotonEtaWidthCutEB_;
00067   double tightphotonHadOverEMCutEB_;
00068   double tightphotonR9CutEB_;
00069 
00070   double looseEMEcalRecHitIsolationCutEE_;
00071   double looseEMHcalRecHitIsolationCutEE_;
00072   double looseEMHollowConeTrkIsolationCutEE_;
00073   double looseEMSolidConeTrkIsolationCutEE_;
00074   int looseEMSolidConeNTrkCutEE_;
00075   int looseEMHollowConeNTrkCutEE_;
00076   double looseEMEtaWidthCutEE_;
00077   double looseEMHadOverEMCutEE_;
00078   double looseEMR9CutEE_;
00079 
00080   double loosephotonEcalRecHitIsolationCutEE_;
00081   double loosephotonHcalRecHitIsolationCutEE_;
00082   double loosephotonHollowConeTrkIsolationCutEE_;
00083   double loosephotonSolidConeTrkIsolationCutEE_;
00084   int loosephotonSolidConeNTrkCutEE_;
00085   int loosephotonHollowConeNTrkCutEE_;
00086   double loosephotonEtaWidthCutEE_;
00087   double loosephotonHadOverEMCutEE_;
00088   double loosephotonR9CutEE_;
00089 
00090   double tightphotonEcalRecHitIsolationCutEE_;
00091   double tightphotonHcalRecHitIsolationCutEE_;
00092   double tightphotonHollowConeTrkIsolationCutEE_;
00093   double tightphotonSolidConeTrkIsolationCutEE_;
00094   int tightphotonSolidConeNTrkCutEE_;
00095   int tightphotonHollowConeNTrkCutEE_;
00096   double tightphotonEtaWidthCutEE_;
00097   double tightphotonHadOverEMCutEE_;
00098   double tightphotonR9CutEE_;
00099 
00100   //Isolation parameters
00101   double photonEcalRecHitConeInnerRadius_;
00102   double photonEcalRecHitConeOuterRadius_;
00103   double photonEcalRecHitEtaSlice_;
00104   double photonEcalRecHitThresh_;
00105   double photonHcalRecHitConeInnerRadius_;
00106   double photonHcalRecHitConeOuterRadius_;
00107   double photonHcalRecHitEtaSlice_;
00108   double photonHcalRecHitThresh_;
00109   double trackConeOuterRadius_;
00110   double trackConeInnerRadius_;
00111   double isolationtrackThreshold_;
00112  
00113 };
00114 
00115 #endif // CutBasedPhotonIDAlgo_H

Generated on Tue Jun 9 17:43:34 2009 for CMSSW by  doxygen 1.5.4