diff --git a/DQM/EcalMonitorTasks/interface/OccupancyTask.h b/DQM/EcalMonitorTasks/interface/OccupancyTask.h index b4f101edcda62..bd4cd4e9d0a48 100644 --- a/DQM/EcalMonitorTasks/interface/OccupancyTask.h +++ b/DQM/EcalMonitorTasks/interface/OccupancyTask.h @@ -10,6 +10,7 @@ #include "CalibCalorimetry/EcalLaserCorrection/interface/EcalLaserDbRecord.h" #include "CalibCalorimetry/EcalLaserCorrection/interface/EcalLaserDbService.h" #include "DataFormats/Provenance/interface/Timestamp.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" namespace ecaldqm { class OccupancyTask : public DQWorkerTask { @@ -29,9 +30,11 @@ namespace ecaldqm { void runOnTPDigis(EcalTrigPrimDigiCollection const&); void runOnRecHits(EcalRecHitCollection const&, Collections); void setEventTime(const edm::TimeValue_t& iTime); + void setTokens(edm::ConsumesCollector&) override; + private: void setParams(edm::ParameterSet const&) override; - edm::ESHandle laser; + edm::ESGetToken lasertoken_; bool FillLaser = false; float recHitThreshold_; float tpThreshold_; diff --git a/DQM/EcalMonitorTasks/interface/PresampleTask.h b/DQM/EcalMonitorTasks/interface/PresampleTask.h index 09142861779be..4b1e80ae37095 100644 --- a/DQM/EcalMonitorTasks/interface/PresampleTask.h +++ b/DQM/EcalMonitorTasks/interface/PresampleTask.h @@ -8,6 +8,7 @@ #include "FWCore/Framework/interface/ESHandle.h" #include "CondFormats/EcalObjects/interface/EcalPedestals.h" #include "CondFormats/DataRecord/interface/EcalPedestalsRcd.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" namespace ecaldqm { class PresampleTask : public DQWorkerTask { @@ -23,17 +24,16 @@ namespace ecaldqm { template void runOnDigis(DigiCollection const&); + void setTokens(edm::ConsumesCollector&) override; private: void setParams(edm::ParameterSet const&) override; - + edm::ESGetToken Pedtoken_; bool doPulseMaxCheck_; int pulseMaxPosition_; int nSamples_; MESet* mePedestalByLS; bool FillPedestal = false; - edm::ESHandle pPeds; - }; inline bool PresampleTask::analyze(void const* _p, Collections _collection) { diff --git a/DQM/EcalMonitorTasks/src/OccupancyTask.cc b/DQM/EcalMonitorTasks/src/OccupancyTask.cc index 86d9b9341a452..2cc8afba48ade 100644 --- a/DQM/EcalMonitorTasks/src/OccupancyTask.cc +++ b/DQM/EcalMonitorTasks/src/OccupancyTask.cc @@ -12,6 +12,8 @@ namespace ecaldqm { tpThreshold_ = _params.getUntrackedParameter("tpThreshold"); } + void OccupancyTask::setTokens(edm::ConsumesCollector& _collector) { lasertoken_ = _collector.esConsumes(); } + bool OccupancyTask::filterRunType(short const* _runType) { for (int iFED(0); iFED < 54; iFED++) { if (_runType[iFED] == EcalDCCHeaderBlock::COSMIC || _runType[iFED] == EcalDCCHeaderBlock::MTCC || @@ -23,54 +25,42 @@ namespace ecaldqm { return false; } - - void OccupancyTask::beginRun(edm::Run const&, edm::EventSetup const& _es) - { - - _es.get().get(laser); - FillLaser = true; - - } - void OccupancyTask::setEventTime(const edm::TimeValue_t& iTime) { - m_iTime = iTime; - } + + void OccupancyTask::beginRun(edm::Run const&, edm::EventSetup const& _es) { FillLaser = true; } + void OccupancyTask::setEventTime(const edm::TimeValue_t& iTime) { m_iTime = iTime; } void OccupancyTask::beginEvent(edm::Event const& _evt, edm::EventSetup const& _es, bool const& ByLumiResetSwitch, - bool&) { + bool&) { if (ByLumiResetSwitch) { MEs_.at("DigiAllByLumi").reset(GetElectronicsMap()); MEs_.at("TPDigiThrAllByLumi").reset(GetElectronicsMap()); MEs_.at("RecHitThrAllByLumi").reset(GetElectronicsMap()); } MESet& meLaserCorrProjEta(MEs_.at("LaserCorrProjEta")); - if (FillLaser){ - for ( int i = 0; i < EBDetId::kSizeForDenseIndexing; i++ ) { - if ( !EBDetId::validDenseIndex(i) ) continue; - EBDetId ebid( EBDetId::unhashIndex(i) ); - - const edm::Timestamp& evtTimeStamp = edm::Timestamp(m_iTime); - - float lasercalib = 1.; - lasercalib = laser->getLaserCorrection( ebid, evtTimeStamp); + if (FillLaser) { + float lasercalib = 1.; + auto const& laser = &_es.getData(lasertoken_); + const edm::Timestamp& evtTimeStamp = edm::Timestamp(m_iTime); + + for (int i = 0; i < EBDetId::kSizeForDenseIndexing; i++) { + if (!EBDetId::validDenseIndex(i)) + continue; + EBDetId ebid(EBDetId::unhashIndex(i)); + lasercalib = laser->getLaserCorrection(ebid, evtTimeStamp); meLaserCorrProjEta.fill(getEcalDQMSetupObjects(), ebid, lasercalib); + } - } - - for ( int i = 0; i < EEDetId::kSizeForDenseIndexing; i++ ) { - if ( !EEDetId::validDenseIndex(i) ) continue; - EEDetId eeid( EEDetId::unhashIndex(i) ); - - const edm::Timestamp& evtTimeStamp = edm::Timestamp(m_iTime); - - float lasercalib = 1.; - lasercalib = laser->getLaserCorrection( eeid, evtTimeStamp); + for (int i = 0; i < EEDetId::kSizeForDenseIndexing; i++) { + if (!EEDetId::validDenseIndex(i)) + continue; + EEDetId eeid(EEDetId::unhashIndex(i)); + lasercalib = laser->getLaserCorrection(eeid, evtTimeStamp); meLaserCorrProjEta.fill(getEcalDQMSetupObjects(), eeid, lasercalib); - + } + FillLaser = false; } - FillLaser = false; - } -} + } void OccupancyTask::runOnRawData(EcalRawDataCollection const& _dcchs) { MESet& meDCC(MEs_.at("DCC")); diff --git a/DQM/EcalMonitorTasks/src/PresampleTask.cc b/DQM/EcalMonitorTasks/src/PresampleTask.cc index f34b5a6a7bdd1..6e1ce28c56493 100644 --- a/DQM/EcalMonitorTasks/src/PresampleTask.cc +++ b/DQM/EcalMonitorTasks/src/PresampleTask.cc @@ -16,6 +16,7 @@ namespace ecaldqm { pulseMaxPosition_ = _params.getUntrackedParameter("pulseMaxPosition"); nSamples_ = _params.getUntrackedParameter("nSamples"); } + void PresampleTask::setTokens(edm::ConsumesCollector& _collector) { Pedtoken_ = _collector.esConsumes(); } bool PresampleTask::filterRunType(short const* _runType) { for (int iFED(0); iFED < nDCC; iFED++) { @@ -29,12 +30,7 @@ namespace ecaldqm { return false; } -void PresampleTask::beginRun(edm::Run const&, edm::EventSetup const& _es) - { - _es.get().get(pPeds); - FillPedestal = true; - } - + void PresampleTask::beginRun(edm::Run const&, edm::EventSetup const& _es) { FillPedestal = true; } void PresampleTask::beginEvent(edm::Event const& _evt, edm::EventSetup const& _es, @@ -53,33 +49,34 @@ void PresampleTask::beginRun(edm::Run const&, edm::EventSetup const& _es) MESet& mePedestalProjEtaG6(MEs_.at("PedestalProjEtaG6")); MESet& mePedestalProjEtaG12(MEs_.at("PedestalProjEtaG12")); - if (FillPedestal){ - const EcalPedestals* myped = pPeds.product(); + if (FillPedestal) { + const EcalPedestals* myped = &_es.getData(Pedtoken_); - for ( int i = 0; i < EBDetId::kSizeForDenseIndexing; i++ ) { - if ( !EBDetId::validDenseIndex(i) ) continue; - EBDetId ebid( EBDetId::unhashIndex(i) ); + for (int i = 0; i < EBDetId::kSizeForDenseIndexing; i++) { + if (!EBDetId::validDenseIndex(i)) + continue; + EBDetId ebid(EBDetId::unhashIndex(i)); EcalPedestals::const_iterator it = myped->find(ebid.rawId()); if (it != myped->end()) { - mePedestalProjEtaG1.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x1); - mePedestalProjEtaG6.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x6); - mePedestalProjEtaG12.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x12); - } - } - for ( int i = 0; i < EEDetId::kSizeForDenseIndexing; i++ ) { - if ( !EEDetId::validDenseIndex(i) ) continue; - EEDetId eeid( EEDetId::unhashIndex(i) ); + mePedestalProjEtaG1.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x1); + mePedestalProjEtaG6.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x6); + mePedestalProjEtaG12.fill(getEcalDQMSetupObjects(), ebid, (*it).rms_x12); + } + } + for (int i = 0; i < EEDetId::kSizeForDenseIndexing; i++) { + if (!EEDetId::validDenseIndex(i)) + continue; + EEDetId eeid(EEDetId::unhashIndex(i)); EcalPedestals::const_iterator it = myped->find(eeid.rawId()); if (it != myped->end()) { - mePedestalProjEtaG1.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x1); - mePedestalProjEtaG6.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x6); - mePedestalProjEtaG12.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x12); - } - } - - FillPedestal = false; - } + mePedestalProjEtaG1.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x1); + mePedestalProjEtaG6.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x6); + mePedestalProjEtaG12.fill(getEcalDQMSetupObjects(), eeid, (*it).rms_x12); + } + } + FillPedestal = false; + } } template