00001 #ifndef RecoLocalCalo_EcalRecProducers_EcalRecHitProducer_hh 00002 #define RecoLocalCalo_EcalRecProducers_EcalRecHitProducer_hh 00003 00014 #include "FWCore/Framework/interface/EDProducer.h" 00015 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00016 #include "FWCore/Framework/interface/Event.h" 00017 #include "FWCore/Framework/interface/EventSetup.h" 00018 00019 //#include "RecoLocalCalo/EcalRecAlgos/interface/EcalRecHitAbsAlgo.h" 00020 #include "RecoLocalCalo/EcalRecProducers/interface/EcalRecHitWorkerBaseClass.h" 00021 00022 // forward declaration 00023 class EcalRecHitProducer : public edm::EDProducer { 00024 00025 public: 00026 explicit EcalRecHitProducer(const edm::ParameterSet& ps); 00027 ~EcalRecHitProducer(); 00028 virtual void produce(edm::Event& evt, const edm::EventSetup& es); 00029 00030 private: 00031 00032 edm::InputTag ebUncalibRecHitCollection_; // secondary name given to collection of EB uncalib rechits 00033 edm::InputTag eeUncalibRecHitCollection_; // secondary name given to collection of EE uncalib rechits 00034 std::string ebRechitCollection_; // secondary name to be given to EB collection of hits 00035 std::string eeRechitCollection_; // secondary name to be given to EE collection of hits 00036 00037 bool recoverEBIsolatedChannels_; 00038 bool recoverEEIsolatedChannels_; 00039 bool recoverEBVFE_; 00040 bool recoverEEVFE_; 00041 bool recoverEBFE_; 00042 bool recoverEEFE_; 00043 bool killDeadChannels_; 00044 00045 edm::InputTag ebDetIdToBeRecovered_; 00046 edm::InputTag eeDetIdToBeRecovered_; 00047 edm::InputTag ebFEToBeRecovered_; 00048 edm::InputTag eeFEToBeRecovered_; 00049 00050 EcalRecHitWorkerBaseClass * worker_; 00051 EcalRecHitWorkerBaseClass * workerRecover_; 00052 }; 00053 00054 #endif