00001 #ifndef PhotonIDProducer_h 00002 #define PhotonIDProducer_h 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/Framework/interface/Event.h" 00006 #include "FWCore/Framework/interface/EventSetup.h" 00007 #include "DataFormats/Common/interface/Handle.h" 00008 #include "FWCore/Framework/interface/ESHandle.h" 00009 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00010 #include "DataFormats/EgammaCandidates/interface/Photon.h" 00011 #include "RecoEgamma/PhotonIdentification/interface/CutBasedPhotonIDAlgo.h" 00012 00013 00014 class PhotonIDProducer : public edm::EDProducer 00015 { 00016 public: 00017 00018 explicit PhotonIDProducer(const edm::ParameterSet& conf); 00019 virtual ~PhotonIDProducer(); 00020 00021 // virtual void beginJob(edm::EventSetup const& iSetup); 00022 virtual void produce(edm::Event& e, const edm::EventSetup& c); 00023 00024 private: 00025 00026 CutBasedPhotonIDAlgo* cutBasedAlgo_; 00027 00028 edm::ParameterSet conf_; 00029 00030 std::string photonProducer_; 00031 std::string photonLabel_; 00032 std::string photonIDLabel_; 00033 std::string photonIDAssociation_; //association map 00034 00035 bool doCutBased_; 00036 00037 }; 00038 00039 #endif