00001 #ifndef RecoEcal_EgammaClusterProducers_CleanAndMergeProducer_h_ 00002 #define RecoEcal_EgammaClusterProducers_CleanAndMergeProducer_h_ 00003 00004 #include <memory> 00005 00006 #include "FWCore/Framework/interface/Frameworkfwd.h" 00007 #include "FWCore/Framework/interface/EDProducer.h" 00008 #include "FWCore/Framework/interface/Event.h" 00009 #include "FWCore/Framework/interface/EventSetup.h" 00010 00011 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00012 00013 #include "RecoEcal/EgammaCoreTools/interface/ClusterShapeAlgo.h" 00014 00015 00016 class CleanAndMergeProducer : public edm::EDProducer 00017 { 00018 00019 public: 00020 00021 CleanAndMergeProducer(const edm::ParameterSet& ps); 00022 00023 ~CleanAndMergeProducer(); 00024 00025 virtual void produce(edm::Event&, const edm::EventSetup&); 00026 00027 private: 00028 00029 00030 edm::InputTag cleanScInputTag_; 00031 edm::InputTag uncleanScInputTag_; 00032 00033 // the names of the products to be produced: 00034 std::string bcCollection_; 00035 std::string scCollection_; 00036 std::string refScCollection_; 00037 // other collections 00038 std::string hitproducer_; 00039 std::string hitcollection_; 00040 00041 00042 }; 00043 00044 00045 #endif 00046 00047