00001 #ifndef RecoLocalCalo_EcalRecProducers_EcalDetIdToBeRecoveredProducer_hh 00002 #define RecoLocalCalo_EcalRecProducers_EcalDetIdToBeRecoveredProducer_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 #include "FWCore/Framework/interface/ESHandle.h" 00019 00020 #include "DataFormats/EcalDigi/interface/EBSrFlag.h" 00021 #include "DataFormats/EcalDigi/interface/EESrFlag.h" 00022 00023 #include "CondFormats/EcalObjects/interface/EcalChannelStatus.h" 00024 00025 #include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h" 00026 #include "Geometry/CaloTopology/interface/EcalTrigTowerConstituentsMap.h" 00027 00028 class EcalDetIdToBeRecoveredProducer : public edm::EDProducer { 00029 00030 public: 00031 explicit EcalDetIdToBeRecoveredProducer(const edm::ParameterSet& ps); 00032 ~EcalDetIdToBeRecoveredProducer(); 00033 virtual void produce(edm::Event& evt, const edm::EventSetup& es); 00034 virtual void beginRun(edm::Run & run, const edm::EventSetup& es); 00035 00036 private: 00037 00038 //edm::InputTag eeUncalibRecHitCollection_; // secondary name given to collection of EE uncalib rechits 00039 //std::string eeRechitCollection_; // secondary name to be given to EE collection of hits 00040 00041 const EcalChannelStatusMap * chStatus_; 00042 const EcalElectronicsMapping * ecalMapping_; 00043 edm::ESHandle<EcalTrigTowerConstituentsMap> ttMap_; 00044 00045 /* 00046 * InputTag for collections 00047 */ 00048 // SRP collections 00049 edm::InputTag ebSrFlagCollection_; 00050 edm::InputTag eeSrFlagCollection_; 00051 00052 // Integrity for xtal data 00053 edm::InputTag ebIntegrityGainErrorsCollection_; 00054 edm::InputTag ebIntegrityGainSwitchErrorsCollection_; 00055 edm::InputTag ebIntegrityChIdErrorsCollection_; 00056 00057 // Integrity for xtal data - EE specific (to be rivisited towards EB+EE common collection) 00058 edm::InputTag eeIntegrityGainErrorsCollection_; 00059 edm::InputTag eeIntegrityGainSwitchErrorsCollection_; 00060 edm::InputTag eeIntegrityChIdErrorsCollection_; 00061 00062 // Integrity Errors 00063 edm::InputTag integrityTTIdErrorsCollection_; 00064 edm::InputTag integrityBlockSizeErrorsCollection_; 00065 00066 /* 00067 * output collections 00068 */ 00069 std::string ebDetIdCollection_; 00070 std::string eeDetIdCollection_; 00071 std::string ttDetIdCollection_; 00072 std::string scDetIdCollection_; 00073 }; 00074 00075 #endif