From 58e367220d1cfa352412c57a4c6f99fb4d85fa13 Mon Sep 17 00:00:00 2001 From: Marcel Andre Schneider Date: Mon, 22 Jun 2020 14:29:18 +0200 Subject: [PATCH 1/5] Add dqmEndLuminosityBlock to DQMOneEDAnalyzer. Turns out we can set EndLuminosityBlockProducer without using WatchLuminosityBlocks? That gives an option to enable dqmEndLuminosityBlock by default. This is once again risky, since the semantics now are subtly different compared to 2018: The same callbacks exist, but events of multiple lumis can arrive alternatingly. This could lead to subtle bugs. The good thing is, we have eliminated almost all usages of the old API, so we know there are not many places where such bugs could happen. This is sort-of required to allow 'per-lumi ME with lumi data' with concurrent lumis. --- DQMServices/Core/interface/DQMOneEDAnalyzer.h | 44 +++++++++++-------- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/DQMServices/Core/interface/DQMOneEDAnalyzer.h b/DQMServices/Core/interface/DQMOneEDAnalyzer.h index 5b2fe4ab836ae..974596b140776 100644 --- a/DQMServices/Core/interface/DQMOneEDAnalyzer.h +++ b/DQMServices/Core/interface/DQMOneEDAnalyzer.h @@ -17,8 +17,11 @@ * and fill per-run histograms with the results. */ template -class DQMOneEDAnalyzer - : public edm::one::EDProducer { +class DQMOneEDAnalyzer : public edm::one::EDProducer { public: typedef dqm::reco::DQMStore DQMStore; typedef dqm::reco::MonitorElement MonitorElement; @@ -29,6 +32,7 @@ class DQMOneEDAnalyzer DQMOneEDAnalyzer() { // for whatever reason we need the explicit `template` keyword here. runToken_ = this->template produces("DQMGenerationRecoRun"); + lumiToken_ = this->template produces("DQMGenerationRecoLumi"); } void beginRun(edm::Run const& run, edm::EventSetup const& setup) final { @@ -58,12 +62,27 @@ class DQMOneEDAnalyzer lumi.run(), lumi.luminosityBlock(), this->moduleDescription().id()); } + void endLuminosityBlockProduce(edm::LuminosityBlock& lumi, edm::EventSetup const& setup) final { + edm::Service()->enterLumi( + lumi.run(), lumi.luminosityBlock(), this->moduleDescription().id()); + dqmEndLuminosityBlock(lumi, setup); + // fully qualified name required for... reasons. + edm::Service()->leaveLumi( + lumi.run(), lumi.luminosityBlock(), this->moduleDescription().id()); + lumi.emplace(lumiToken_); + } + void endRunProduce(edm::Run& run, edm::EventSetup const& setup) final { dqmEndRun(run, setup); edm::Service()->leaveLumi(run.run(), /* lumi */ 0, this->moduleDescription().id()); run.emplace(runToken_); } + // This could safely be used, and might need to be used to get some types of + // products, but it will *only* be called if subsystem code adds a lumi cache. + // For consistency, we use endLuminosityBlockProduce and ban this. + virtual void globalEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final{}; + // Subsystems could safely override this, but any changes to MEs would not be // noticeable since the product was made already. void endRun(edm::Run const&, edm::EventSetup const&) final{}; @@ -73,9 +92,11 @@ class DQMOneEDAnalyzer virtual void dqmBeginRun(edm::Run const&, edm::EventSetup const&) {} virtual void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) = 0; virtual void analyze(edm::Event const&, edm::EventSetup const&) {} + virtual void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} virtual void dqmEndRun(edm::Run const&, edm::EventSetup const&) {} edm::EDPutTokenT runToken_; + edm::EDPutTokenT lumiToken_; }; /** @@ -87,16 +108,12 @@ class DQMOneEDAnalyzer */ template -class DQMOneLumiEDAnalyzer - : public DQMOneEDAnalyzer { +class DQMOneLumiEDAnalyzer : public DQMOneEDAnalyzer { public: bool getCanSaveByLumi() override { return true; } // framework calls in the order of invocation - DQMOneLumiEDAnalyzer() { - // for whatever reason we need the explicit `template` keyword here. - lumiToken_ = this->template produces("DQMGenerationRecoLumi"); - } + DQMOneLumiEDAnalyzer() {} void beginLuminosityBlock(edm::LuminosityBlock const& lumi, edm::EventSetup const& setup) final { edm::Service()->enterLumi( @@ -106,14 +123,6 @@ class DQMOneLumiEDAnalyzer void accumulate(edm::Event const& event, edm::EventSetup const& setup) override { this->analyze(event, setup); } - void endLuminosityBlockProduce(edm::LuminosityBlock& lumi, edm::EventSetup const& setup) final { - dqmEndLuminosityBlock(lumi, setup); - // fully qualified name required for... reasons. - edm::Service()->leaveLumi( - lumi.run(), lumi.luminosityBlock(), this->moduleDescription().id()); - lumi.emplace(lumiToken_); - } - // Subsystems could safely override this, but any changes to MEs would not be // noticeable since the product was made already. void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) final{}; @@ -121,9 +130,6 @@ class DQMOneLumiEDAnalyzer protected: // methods to be implemented by the user, in order of invocation virtual void dqmBeginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} - virtual void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) {} - - edm::EDPutTokenT lumiToken_; }; #endif // DQMServices_Core_DQMOneEDAnalyzer_h From 49cce0f6f27f3dfec550d5b69d74ac56bbf16060 Mon Sep 17 00:00:00 2001 From: Marcel Andre Schneider Date: Mon, 22 Jun 2020 14:49:44 +0200 Subject: [PATCH 2/5] Migrate modules to use the new API. --- DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc | 4 ++-- DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc | 4 ++-- DQM/CTPPS/plugins/TotemTimingDQMSource.cc | 4 ++-- DQM/HcalCommon/interface/DQTask.h | 2 +- DQM/HcalCommon/src/DQTask.cc | 2 +- DQM/HcalTasks/interface/DigiComparisonTask.h | 2 +- DQM/HcalTasks/interface/DigiTask.h | 2 +- DQM/HcalTasks/interface/LaserTask.h | 2 +- DQM/HcalTasks/interface/NoCQTask.h | 2 +- DQM/HcalTasks/interface/PedestalTask.h | 2 +- DQM/HcalTasks/interface/QIE10Task.h | 2 +- DQM/HcalTasks/interface/QIE11Task.h | 2 +- DQM/HcalTasks/interface/RawTask.h | 2 +- DQM/HcalTasks/interface/RecHitTask.h | 2 +- DQM/HcalTasks/interface/TPComparisonTask.h | 2 +- DQM/HcalTasks/interface/TPTask.h | 2 +- DQM/HcalTasks/interface/UMNioTask.h | 2 +- DQM/HcalTasks/plugins/DigiComparisonTask.cc | 4 ++-- DQM/HcalTasks/plugins/DigiTask.cc | 4 ++-- DQM/HcalTasks/plugins/LaserTask.cc | 4 ++-- DQM/HcalTasks/plugins/NoCQTask.cc | 4 ++-- DQM/HcalTasks/plugins/PedestalTask.cc | 4 ++-- DQM/HcalTasks/plugins/QIE10Task.cc | 4 ++-- DQM/HcalTasks/plugins/QIE11Task.cc | 4 ++-- DQM/HcalTasks/plugins/RawTask.cc | 4 ++-- DQM/HcalTasks/plugins/RecHitTask.cc | 4 ++-- DQM/HcalTasks/plugins/TPComparisonTask.cc | 4 ++-- DQM/HcalTasks/plugins/TPTask.cc | 4 ++-- DQM/HcalTasks/plugins/UMNioTask.cc | 4 ++-- DQM/L1TMonitor/interface/L1TdeRCT.h | 2 +- DQM/Physics/src/QcdLowPtDQM.cc | 2 +- DQM/Physics/src/QcdLowPtDQM.h | 2 +- DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h | 2 +- DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc | 2 +- DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc | 4 ++-- DQM/TrigXMonitor/interface/L1Scalers.h | 2 +- DQM/TrigXMonitor/src/L1Scalers.cc | 2 +- DQMOffline/L1Trigger/interface/L1TSync_Offline.h | 2 +- DQMServices/StreamerIO/plugins/RamdiskMonitor.cc | 2 +- 39 files changed, 55 insertions(+), 55 deletions(-) diff --git a/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc b/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc index df3a3fe5ff518..e055c3a50727f 100644 --- a/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc +++ b/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc @@ -36,7 +36,7 @@ class CTPPSCommonDQMSource : public DQMOneEDAnalyzer> globalBeginLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) override; void analyzeCTPPSRecord(edm::Event const &event, edm::EventSetup const &eventSetup); void analyzeTracks(edm::Event const &event, edm::EventSetup const &eventSetup); @@ -537,7 +537,7 @@ std::shared_ptr> CTPPSCommonDQMSource::globalBeginLuminosityBlo //---------------------------------------------------------------------------------------------------- -void CTPPSCommonDQMSource::globalEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) { +void CTPPSCommonDQMSource::dqmEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) { auto const &rpstate = *luminosityBlockCache(iLumi.index()); auto currentLS = iLumi.id().luminosityBlock(); for (std::vector::size_type i = 0; i < rpstate.size(); i++) diff --git a/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc b/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc index b6a2908e1f5bb..1d6439e7c7608 100644 --- a/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc +++ b/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc @@ -76,7 +76,7 @@ class CTPPSDiamondDQMSource : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) override; private: // Constants @@ -1126,7 +1126,7 @@ void CTPPSDiamondDQMSource::analyze(const edm::Event& event, const edm::EventSet //---------------------------------------------------------------------------------------------------- -void CTPPSDiamondDQMSource::globalEndLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup&) { +void CTPPSDiamondDQMSource::dqmEndLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup&) { auto lumiCache = luminosityBlockCache(iLumi.index()); for (auto& plot : potPlots_) { *(plot.second.hitDistribution2d_lumisection->getTH2F()) = *(lumiCache->hitDistribution2dMap[plot.first]); diff --git a/DQM/CTPPS/plugins/TotemTimingDQMSource.cc b/DQM/CTPPS/plugins/TotemTimingDQMSource.cc index 3b0edf9976c3b..3d664d0ccecbd 100644 --- a/DQM/CTPPS/plugins/TotemTimingDQMSource.cc +++ b/DQM/CTPPS/plugins/TotemTimingDQMSource.cc @@ -57,7 +57,7 @@ class TotemTimingDQMSource : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) override; private: // Constants @@ -734,7 +734,7 @@ void TotemTimingDQMSource::analyze(const edm::Event &event, const edm::EventSetu //---------------------------------------------------------------------------------------------------- -void TotemTimingDQMSource::globalEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &) { +void TotemTimingDQMSource::dqmEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &) { auto lumiCache = luminosityBlockCache(iLumi.index()); for (auto &plot : potPlots_) { *(plot.second.hitDistribution2d_lumisection->getTH2F()) = *(lumiCache->hitDistribution2dMap[plot.first]); diff --git a/DQM/HcalCommon/interface/DQTask.h b/DQM/HcalCommon/interface/DQTask.h index c6fe7c37eec1c..12eb41da8aa8b 100644 --- a/DQM/HcalCommon/interface/DQTask.h +++ b/DQM/HcalCommon/interface/DQTask.h @@ -42,7 +42,7 @@ namespace hcaldqm { void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: // protected funcs diff --git a/DQM/HcalCommon/src/DQTask.cc b/DQM/HcalCommon/src/DQTask.cc index fa887092dcee1..efda89f7bd190 100644 --- a/DQM/HcalCommon/src/DQTask.cc +++ b/DQM/HcalCommon/src/DQTask.cc @@ -129,7 +129,7 @@ namespace hcaldqm { return d; } - void DQTask::globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) { _procLSs++; } + void DQTask::dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) { _procLSs++; } void DQTask::_resetMonitors(UpdateFreq uf) { // reset per event diff --git a/DQM/HcalTasks/interface/DigiComparisonTask.h b/DQM/HcalTasks/interface/DigiComparisonTask.h index eababb7623610..b9444286ada71 100644 --- a/DQM/HcalTasks/interface/DigiComparisonTask.h +++ b/DQM/HcalTasks/interface/DigiComparisonTask.h @@ -22,7 +22,7 @@ class DigiComparisonTask : public hcaldqm::DQTask { ~DigiComparisonTask() override {} void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; - void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; protected: // funcs diff --git a/DQM/HcalTasks/interface/DigiTask.h b/DQM/HcalTasks/interface/DigiTask.h index ff6125c3ede00..7f8890b10361b 100644 --- a/DQM/HcalTasks/interface/DigiTask.h +++ b/DQM/HcalTasks/interface/DigiTask.h @@ -34,7 +34,7 @@ class DigiTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: void _process(edm::Event const &, edm::EventSetup const &) override; diff --git a/DQM/HcalTasks/interface/LaserTask.h b/DQM/HcalTasks/interface/LaserTask.h index f802f16975d34..5ab2ffb874eb8 100644 --- a/DQM/HcalTasks/interface/LaserTask.h +++ b/DQM/HcalTasks/interface/LaserTask.h @@ -35,7 +35,7 @@ class LaserTask : public hcaldqm::DQTask { this->_dump(); } } - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: // funcs diff --git a/DQM/HcalTasks/interface/NoCQTask.h b/DQM/HcalTasks/interface/NoCQTask.h index b11b34f5ddaa7..1eaffbbd8a03c 100644 --- a/DQM/HcalTasks/interface/NoCQTask.h +++ b/DQM/HcalTasks/interface/NoCQTask.h @@ -22,7 +22,7 @@ class NoCQTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: void _process(edm::Event const &, edm::EventSetup const &) override; diff --git a/DQM/HcalTasks/interface/PedestalTask.h b/DQM/HcalTasks/interface/PedestalTask.h index 3ff4c38a0afc8..3524c5768097b 100644 --- a/DQM/HcalTasks/interface/PedestalTask.h +++ b/DQM/HcalTasks/interface/PedestalTask.h @@ -26,7 +26,7 @@ class PedestalTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; void dqmEndRun(edm::Run const &, edm::EventSetup const &) override; protected: diff --git a/DQM/HcalTasks/interface/QIE10Task.h b/DQM/HcalTasks/interface/QIE10Task.h index 761566c8d4094..f3e1ac9ec5242 100644 --- a/DQM/HcalTasks/interface/QIE10Task.h +++ b/DQM/HcalTasks/interface/QIE10Task.h @@ -25,7 +25,7 @@ class QIE10Task : public hcaldqm::DQTask { ~QIE10Task() override {} void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; - void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; protected: void _process(edm::Event const&, edm::EventSetup const&) override; diff --git a/DQM/HcalTasks/interface/QIE11Task.h b/DQM/HcalTasks/interface/QIE11Task.h index 4d3adf13be964..1c6f1ae6b525b 100644 --- a/DQM/HcalTasks/interface/QIE11Task.h +++ b/DQM/HcalTasks/interface/QIE11Task.h @@ -25,7 +25,7 @@ class QIE11Task : public hcaldqm::DQTask { ~QIE11Task() override {} void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; - void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; protected: void _process(edm::Event const&, edm::EventSetup const&) override; diff --git a/DQM/HcalTasks/interface/RawTask.h b/DQM/HcalTasks/interface/RawTask.h index c702630b5626c..cf4ac29d6d7c8 100644 --- a/DQM/HcalTasks/interface/RawTask.h +++ b/DQM/HcalTasks/interface/RawTask.h @@ -29,7 +29,7 @@ class RawTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: void _process(edm::Event const &, edm::EventSetup const &) override; diff --git a/DQM/HcalTasks/interface/RecHitTask.h b/DQM/HcalTasks/interface/RecHitTask.h index 5c1261aed37ae..741fe77e64708 100644 --- a/DQM/HcalTasks/interface/RecHitTask.h +++ b/DQM/HcalTasks/interface/RecHitTask.h @@ -31,7 +31,7 @@ class RecHitTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: void _process(edm::Event const &, edm::EventSetup const &) override; diff --git a/DQM/HcalTasks/interface/TPComparisonTask.h b/DQM/HcalTasks/interface/TPComparisonTask.h index a8bd5f2e5b6d7..18bf82f38b729 100644 --- a/DQM/HcalTasks/interface/TPComparisonTask.h +++ b/DQM/HcalTasks/interface/TPComparisonTask.h @@ -23,7 +23,7 @@ class TPComparisonTask : public hcaldqm::DQTask { ~TPComparisonTask() override {} void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; - void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; protected: // funcs diff --git a/DQM/HcalTasks/interface/TPTask.h b/DQM/HcalTasks/interface/TPTask.h index abd4ae8dcc91d..4cee8aa872854 100644 --- a/DQM/HcalTasks/interface/TPTask.h +++ b/DQM/HcalTasks/interface/TPTask.h @@ -27,7 +27,7 @@ class TPTask : public hcaldqm::DQTask { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: void _process(edm::Event const &, edm::EventSetup const &) override; diff --git a/DQM/HcalTasks/interface/UMNioTask.h b/DQM/HcalTasks/interface/UMNioTask.h index 7270c3cf0c46e..929f87b75e4ef 100644 --- a/DQM/HcalTasks/interface/UMNioTask.h +++ b/DQM/HcalTasks/interface/UMNioTask.h @@ -32,7 +32,7 @@ class UMNioTask : public hcaldqm::DQTask { return; } } - void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; + void dqmEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override; protected: // funcs diff --git a/DQM/HcalTasks/plugins/DigiComparisonTask.cc b/DQM/HcalTasks/plugins/DigiComparisonTask.cc index 979be9969b101..9ed631d81aa62 100644 --- a/DQM/HcalTasks/plugins/DigiComparisonTask.cc +++ b/DQM/HcalTasks/plugins/DigiComparisonTask.cc @@ -211,10 +211,10 @@ DigiComparisonTask::DigiComparisonTask(edm::ParameterSet const& ps) : DQTask(ps) } } -/* virtual */ void DigiComparisonTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, +/* virtual */ void DigiComparisonTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { // in the end always - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(DigiComparisonTask); diff --git a/DQM/HcalTasks/plugins/DigiTask.cc b/DQM/HcalTasks/plugins/DigiTask.cc index 9772cfde9962c..5b254b4db1e11 100644 --- a/DQM/HcalTasks/plugins/DigiTask.cc +++ b/DQM/HcalTasks/plugins/DigiTask.cc @@ -1418,7 +1418,7 @@ std::shared_ptr DigiTask::globalBeginLuminosityBlock(edm::Lumino return DQTask::globalBeginLuminosityBlock(lb, es); } -/* virtual */ void DigiTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void DigiTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { auto lumiCache = luminosityBlockCache(lb.index()); _currentLS = lumiCache->currentLS; _evsPerLS = lumiCache->EvtCntLS; @@ -1540,7 +1540,7 @@ std::shared_ptr DigiTask::globalBeginLuminosityBlock(edm::Lumino _xBadCapid.reset(); // in the end always do the DQTask::endLumi - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(DigiTask); diff --git a/DQM/HcalTasks/plugins/LaserTask.cc b/DQM/HcalTasks/plugins/LaserTask.cc index 0084cbb9a1ba0..e629b14980ed8 100644 --- a/DQM/HcalTasks/plugins/LaserTask.cc +++ b/DQM/HcalTasks/plugins/LaserTask.cc @@ -800,7 +800,7 @@ void LaserTask::processLaserMon(edm::Handle& col, std::vect } } -/* virtual */ void LaserTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void LaserTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { auto lumiCache = luminosityBlockCache(lb.index()); _currentLS = lumiCache->currentLS; @@ -808,7 +808,7 @@ void LaserTask::processLaserMon(edm::Handle& col, std::vect return; this->_dump(); - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } /* virtual */ bool LaserTask::_isApplicable(edm::Event const& e) { diff --git a/DQM/HcalTasks/plugins/NoCQTask.cc b/DQM/HcalTasks/plugins/NoCQTask.cc index 54bab12b762c3..3d66b6176de6e 100644 --- a/DQM/HcalTasks/plugins/NoCQTask.cc +++ b/DQM/HcalTasks/plugins/NoCQTask.cc @@ -130,8 +130,8 @@ std::shared_ptr NoCQTask::globalBeginLuminosityBlock(edm::Lumino return DQTask::globalBeginLuminosityBlock(lb, es); } -/* virtual */ void NoCQTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { - DQTask::globalEndLuminosityBlock(lb, es); +/* virtual */ void NoCQTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(NoCQTask); diff --git a/DQM/HcalTasks/plugins/PedestalTask.cc b/DQM/HcalTasks/plugins/PedestalTask.cc index 11b9a021f5baa..5af6af2887b5d 100644 --- a/DQM/HcalTasks/plugins/PedestalTask.cc +++ b/DQM/HcalTasks/plugins/PedestalTask.cc @@ -937,7 +937,7 @@ std::shared_ptr PedestalTask::globalBeginLuminosityBlock(edm::Lu return; } -/* virtual */ void PedestalTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void PedestalTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { auto lumiCache = luminosityBlockCache(lb.index()); _currentLS = lumiCache->currentLS; _xQuality.reset(); @@ -947,7 +947,7 @@ std::shared_ptr PedestalTask::globalBeginLuminosityBlock(edm::Lu return; this->_dump(); - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } /* virtual */ void PedestalTask::_process(edm::Event const& e, edm::EventSetup const& es) { diff --git a/DQM/HcalTasks/plugins/QIE10Task.cc b/DQM/HcalTasks/plugins/QIE10Task.cc index baf92bbb68bb4..e4a97f7981979 100644 --- a/DQM/HcalTasks/plugins/QIE10Task.cc +++ b/DQM/HcalTasks/plugins/QIE10Task.cc @@ -154,9 +154,9 @@ QIE10Task::QIE10Task(edm::ParameterSet const& ps) : DQTask(ps) { _ehashmap.initialize(_emap, electronicsmap::fD2EHashMap); } -/* virtual */ void QIE10Task::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void QIE10Task::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { // finish - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } /* virtual */ void QIE10Task::_process(edm::Event const& e, edm::EventSetup const&) { diff --git a/DQM/HcalTasks/plugins/QIE11Task.cc b/DQM/HcalTasks/plugins/QIE11Task.cc index 9f316d5b951df..799b6f3fa6540 100644 --- a/DQM/HcalTasks/plugins/QIE11Task.cc +++ b/DQM/HcalTasks/plugins/QIE11Task.cc @@ -159,9 +159,9 @@ QIE11Task::QIE11Task(edm::ParameterSet const& ps) : DQTask(ps) { _ehashmap.initialize(_emap, electronicsmap::fD2EHashMap, _filter_C34); } -/* virtual */ void QIE11Task::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void QIE11Task::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { // finish - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } /* virtual */ void QIE11Task::_process(edm::Event const& e, edm::EventSetup const&) { diff --git a/DQM/HcalTasks/plugins/RawTask.cc b/DQM/HcalTasks/plugins/RawTask.cc index b0a66e5350b1a..5ffed1e315366 100644 --- a/DQM/HcalTasks/plugins/RawTask.cc +++ b/DQM/HcalTasks/plugins/RawTask.cc @@ -421,7 +421,7 @@ std::shared_ptr RawTask::globalBeginLuminosityBlock(edm::Luminos // _cSummaryvsLS.extendAxisRange(_currentLS); } -/* virtual */ void RawTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void RawTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { auto lumiCache = luminosityBlockCache(lb.index()); _currentLS = lumiCache->currentLS; _evsPerLS = lumiCache->EvtCntLS; @@ -490,7 +490,7 @@ std::shared_ptr RawTask::globalBeginLuminosityBlock(edm::Luminos _xBadQLS.reset(); // in the end always do the DQTask::endLumi - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(RawTask); diff --git a/DQM/HcalTasks/plugins/RecHitTask.cc b/DQM/HcalTasks/plugins/RecHitTask.cc index fd6c2fc286a6a..ec13cb572cf96 100644 --- a/DQM/HcalTasks/plugins/RecHitTask.cc +++ b/DQM/HcalTasks/plugins/RecHitTask.cc @@ -868,7 +868,7 @@ std::shared_ptr RecHitTask::globalBeginLuminosityBlock(edm::Lumi return DQTask::globalBeginLuminosityBlock(lb, es); } -/* virtual */ void RecHitTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void RecHitTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { if (_ptype != fOnline) return; @@ -941,7 +941,7 @@ std::shared_ptr RecHitTask::globalBeginLuminosityBlock(edm::Lumi } // in the end always do the DQTask::endLumi - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(RecHitTask); diff --git a/DQM/HcalTasks/plugins/TPComparisonTask.cc b/DQM/HcalTasks/plugins/TPComparisonTask.cc index cb94c75655765..b95a4db180bd4 100644 --- a/DQM/HcalTasks/plugins/TPComparisonTask.cc +++ b/DQM/HcalTasks/plugins/TPComparisonTask.cc @@ -245,10 +245,10 @@ TPComparisonTask::TPComparisonTask(edm::ParameterSet const& ps) : DQTask(ps) { } } -/* virtual */ void TPComparisonTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, +/* virtual */ void TPComparisonTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { // in the end always - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(TPComparisonTask); diff --git a/DQM/HcalTasks/plugins/TPTask.cc b/DQM/HcalTasks/plugins/TPTask.cc index 3b4c9d571426d..a069cd33f589c 100644 --- a/DQM/HcalTasks/plugins/TPTask.cc +++ b/DQM/HcalTasks/plugins/TPTask.cc @@ -1195,7 +1195,7 @@ std::shared_ptr TPTask::globalBeginLuminosityBlock(edm::Luminosi return DQTask::globalBeginLuminosityBlock(lb, es); } -/* virtual */ void TPTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { +/* virtual */ void TPTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { if (_ptype != fOnline) return; @@ -1285,7 +1285,7 @@ std::shared_ptr TPTask::globalBeginLuminosityBlock(edm::Luminosi _xEmulTotal.reset(); // in the end always do the DQTask::endLumi - DQTask::globalEndLuminosityBlock(lb, es); + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(TPTask); diff --git a/DQM/HcalTasks/plugins/UMNioTask.cc b/DQM/HcalTasks/plugins/UMNioTask.cc index 2a1d5aebaa107..19b7a39064baf 100644 --- a/DQM/HcalTasks/plugins/UMNioTask.cc +++ b/DQM/HcalTasks/plugins/UMNioTask.cc @@ -131,8 +131,8 @@ int UMNioTask::getOrbitGapIndex(uint8_t eventType, uint32_t laserType) { _cTotalChargeProfile.fill(it->id(), _currentLS, sumQ); } } -/* virtual */ void UMNioTask::globalEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { - DQTask::globalEndLuminosityBlock(lb, es); +/* virtual */ void UMNioTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { + DQTask::dqmEndLuminosityBlock(lb, es); } DEFINE_FWK_MODULE(UMNioTask); diff --git a/DQM/L1TMonitor/interface/L1TdeRCT.h b/DQM/L1TMonitor/interface/L1TdeRCT.h index e2ccd926122e3..357b2317e8f29 100644 --- a/DQM/L1TMonitor/interface/L1TdeRCT.h +++ b/DQM/L1TMonitor/interface/L1TdeRCT.h @@ -62,7 +62,7 @@ class L1TdeRCT : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final {} + void dqmEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final {} void readFEDVector(MonitorElement*, const edm::EventSetup&) const; private: diff --git a/DQM/Physics/src/QcdLowPtDQM.cc b/DQM/Physics/src/QcdLowPtDQM.cc index d883de11df519..f43db6d29936f 100644 --- a/DQM/Physics/src/QcdLowPtDQM.cc +++ b/DQM/Physics/src/QcdLowPtDQM.cc @@ -918,7 +918,7 @@ std::shared_ptr QcdLowPtDQM::globalBeginLuminosityBlock(const Lumin return std::shared_ptr(); } -void QcdLowPtDQM::globalEndLuminosityBlock(const LuminosityBlock &l, const EventSetup &iSetup) { +void QcdLowPtDQM::dqmEndLuminosityBlock(const LuminosityBlock &l, const EventSetup &iSetup) { // Update various histograms. repSummary_->Fill(1.); repSumMap_->Fill(0.5, 0.5, 1.); diff --git a/DQM/Physics/src/QcdLowPtDQM.h b/DQM/Physics/src/QcdLowPtDQM.h index 3e4de8f305d6d..4b1232f5f7d24 100644 --- a/DQM/Physics/src/QcdLowPtDQM.h +++ b/DQM/Physics/src/QcdLowPtDQM.h @@ -126,7 +126,7 @@ class QcdLowPtDQM : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &iSetup) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &iSetup) override; void dqmEndRun(const edm::Run &r, const edm::EventSetup &iSetup) override; private: diff --git a/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h b/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h index 798c2554c32a8..4e99da5a06b47 100644 --- a/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h +++ b/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h @@ -38,7 +38,7 @@ class SiStripMonitorDigi : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; void dqmBeginRun(const edm::Run& r, const edm::EventSetup& c) override; diff --git a/DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc b/DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc index 3cd563bad9cfb..f1f807509443e 100644 --- a/DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc +++ b/DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc @@ -275,7 +275,7 @@ std::shared_ptr SiStripMonitorDigi::globalBeginLuminosityBlock(const edm:: } //-------------------------------------------------------------------------------------------- -void SiStripMonitorDigi::globalEndLuminosityBlock(const edm::LuminosityBlock& lb, const edm::EventSetup& es) { +void SiStripMonitorDigi::dqmEndLuminosityBlock(const edm::LuminosityBlock& lb, const edm::EventSetup& es) { unsigned int currentLS = lb.id().luminosityBlock(); const bool isStableBeams = luminosityBlockCache(lb.index()); if (subdetswitchtotdigifailureon && isStableBeams && !SBTransitionDone) { diff --git a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc index 9ac6b61463fe3..207194e6c96c8 100644 --- a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc +++ b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc @@ -77,7 +77,7 @@ class SiStripFEDMonitorPlugin : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) const override; - void globalEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; @@ -518,7 +518,7 @@ std::shared_ptr SiStripFEDMonitorPlugin::globalBeginLumino return lumiErrors; } -void SiStripFEDMonitorPlugin::globalEndLuminosityBlock(const edm::LuminosityBlock& lumi, +void SiStripFEDMonitorPlugin::dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) { auto lumiErrors = luminosityBlockCache(lumi.index()); if (enableFEDerrLumi_ && lumiErrfac_) { diff --git a/DQM/TrigXMonitor/interface/L1Scalers.h b/DQM/TrigXMonitor/interface/L1Scalers.h index afb78327951a2..dcf5f40ff4796 100644 --- a/DQM/TrigXMonitor/interface/L1Scalers.h +++ b/DQM/TrigXMonitor/interface/L1Scalers.h @@ -25,7 +25,7 @@ class L1Scalers : public DQMOneEDAnalyzer> /// DQM Client Diagnostic should be performed here: std::shared_ptr globalBeginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) const final; - void globalEndLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override; + void dqmEndLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override; private: int nev_; // Number of events processed diff --git a/DQM/TrigXMonitor/src/L1Scalers.cc b/DQM/TrigXMonitor/src/L1Scalers.cc index 3bb6f112c3906..fad65f1dd8caa 100644 --- a/DQM/TrigXMonitor/src/L1Scalers.cc +++ b/DQM/TrigXMonitor/src/L1Scalers.cc @@ -416,6 +416,6 @@ std::shared_ptr L1Scalers::globalBeginLuminosityBlock(const edm::Lum return std::shared_ptr(); } -void L1Scalers::globalEndLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup) { +void L1Scalers::dqmEndLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup) { nLumiBlock_->Fill(lumiSeg.id().luminosityBlock()); } diff --git a/DQMOffline/L1Trigger/interface/L1TSync_Offline.h b/DQMOffline/L1Trigger/interface/L1TSync_Offline.h index 4a8aa9ae9fae1..b3ea09db2bddf 100644 --- a/DQMOffline/L1Trigger/interface/L1TSync_Offline.h +++ b/DQMOffline/L1Trigger/interface/L1TSync_Offline.h @@ -111,7 +111,7 @@ class L1TSync_Offline : public DQMOneEDAnalyzer globalBeginLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) const final; - void globalEndLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) final {} + void dqmEndLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) final {} void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override; void bookHistograms(DQMStore::IBooker& ibooker, const edm::Run&, const edm::EventSetup&) override; diff --git a/DQMServices/StreamerIO/plugins/RamdiskMonitor.cc b/DQMServices/StreamerIO/plugins/RamdiskMonitor.cc index d722c7ac7d4c0..e5809ff1fe043 100644 --- a/DQMServices/StreamerIO/plugins/RamdiskMonitor.cc +++ b/DQMServices/StreamerIO/plugins/RamdiskMonitor.cc @@ -35,7 +35,7 @@ namespace dqm { void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) const override; - void globalEndLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) final {} + void dqmEndLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) final {} void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override{}; void analyzeFile(std::string fn, unsigned int run, unsigned int lumi, std::string label) const; From e46c58416607cf04fa9ddd38da508ec1a5928c14 Mon Sep 17 00:00:00 2001 From: Marcel Andre Schneider Date: Mon, 22 Jun 2020 15:09:59 +0200 Subject: [PATCH 3/5] Code-checks && code-format. The result does not compile. --- DQM/HcalTasks/plugins/DigiComparisonTask.cc | 2 +- DQM/HcalTasks/plugins/TPComparisonTask.cc | 3 +-- DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc | 3 +-- DQMServices/Core/interface/DQMOneEDAnalyzer.h | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/DQM/HcalTasks/plugins/DigiComparisonTask.cc b/DQM/HcalTasks/plugins/DigiComparisonTask.cc index 9ed631d81aa62..5ca4bdb1c3bec 100644 --- a/DQM/HcalTasks/plugins/DigiComparisonTask.cc +++ b/DQM/HcalTasks/plugins/DigiComparisonTask.cc @@ -212,7 +212,7 @@ DigiComparisonTask::DigiComparisonTask(edm::ParameterSet const& ps) : DQTask(ps) } /* virtual */ void DigiComparisonTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, - edm::EventSetup const& es) { + edm::EventSetup const& es) { // in the end always DQTask::dqmEndLuminosityBlock(lb, es); } diff --git a/DQM/HcalTasks/plugins/TPComparisonTask.cc b/DQM/HcalTasks/plugins/TPComparisonTask.cc index b95a4db180bd4..6b6a796e01171 100644 --- a/DQM/HcalTasks/plugins/TPComparisonTask.cc +++ b/DQM/HcalTasks/plugins/TPComparisonTask.cc @@ -245,8 +245,7 @@ TPComparisonTask::TPComparisonTask(edm::ParameterSet const& ps) : DQTask(ps) { } } -/* virtual */ void TPComparisonTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, - edm::EventSetup const& es) { +/* virtual */ void TPComparisonTask::dqmEndLuminosityBlock(edm::LuminosityBlock const& lb, edm::EventSetup const& es) { // in the end always DQTask::dqmEndLuminosityBlock(lb, es); } diff --git a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc index 207194e6c96c8..78c59fc5ed426 100644 --- a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc +++ b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc @@ -518,8 +518,7 @@ std::shared_ptr SiStripFEDMonitorPlugin::globalBeginLumino return lumiErrors; } -void SiStripFEDMonitorPlugin::dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, - const edm::EventSetup& iSetup) { +void SiStripFEDMonitorPlugin::dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) { auto lumiErrors = luminosityBlockCache(lumi.index()); if (enableFEDerrLumi_ && lumiErrfac_) { for (unsigned int iD(0); iD < lumiErrors->nTotal.size(); iD++) { diff --git a/DQMServices/Core/interface/DQMOneEDAnalyzer.h b/DQMServices/Core/interface/DQMOneEDAnalyzer.h index 974596b140776..4c4de665b9d57 100644 --- a/DQMServices/Core/interface/DQMOneEDAnalyzer.h +++ b/DQMServices/Core/interface/DQMOneEDAnalyzer.h @@ -81,7 +81,7 @@ class DQMOneEDAnalyzer : public edm::one::EDProducer Date: Tue, 23 Jun 2020 12:14:17 +0200 Subject: [PATCH 4/5] Re-introduce globalEndLuminosityBlock where needed. I removed the cache type where it was not used. --- DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc | 1 + DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc | 1 + DQM/CTPPS/plugins/TotemTimingDQMSource.cc | 1 + DQM/HcalCommon/interface/DQTask.h | 1 + DQM/L1TMonitor/interface/L1TdeRCT.h | 1 + DQM/Physics/src/QcdLowPtDQM.cc | 5 ----- DQM/Physics/src/QcdLowPtDQM.h | 8 +------- DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h | 1 + DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc | 1 + DQM/TrigXMonitor/interface/L1Scalers.h | 8 +------- DQM/TrigXMonitor/src/L1Scalers.cc | 5 ----- DQMOffline/L1Trigger/interface/L1TSync_Offline.h | 1 + DQMServices/Core/interface/DQMOneEDAnalyzer.h | 3 ++- DQMServices/StreamerIO/plugins/RamdiskMonitor.cc | 1 + 14 files changed, 13 insertions(+), 25 deletions(-) diff --git a/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc b/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc index e055c3a50727f..bfad66d0ba795 100644 --- a/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc +++ b/DQM/CTPPS/plugins/CTPPSCommonDQMSource.cc @@ -36,6 +36,7 @@ class CTPPSCommonDQMSource : public DQMOneEDAnalyzer> globalBeginLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) const override; + void globalEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) override{}; void dqmEndLuminosityBlock(const edm::LuminosityBlock &iLumi, const edm::EventSetup &c) override; void analyzeCTPPSRecord(edm::Event const &event, edm::EventSetup const &eventSetup); diff --git a/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc b/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc index 1d6439e7c7608..100d69d594881 100644 --- a/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc +++ b/DQM/CTPPS/plugins/CTPPSDiamondDQMSource.cc @@ -76,6 +76,7 @@ class CTPPSDiamondDQMSource : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) const override; + void globalEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) override{}; void dqmEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) override; private: diff --git a/DQM/CTPPS/plugins/TotemTimingDQMSource.cc b/DQM/CTPPS/plugins/TotemTimingDQMSource.cc index 3d664d0ccecbd..4aa247c89f13d 100644 --- a/DQM/CTPPS/plugins/TotemTimingDQMSource.cc +++ b/DQM/CTPPS/plugins/TotemTimingDQMSource.cc @@ -57,6 +57,7 @@ class TotemTimingDQMSource : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) const override; + void globalEndLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) override{}; void dqmEndLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) override; private: diff --git a/DQM/HcalCommon/interface/DQTask.h b/DQM/HcalCommon/interface/DQTask.h index 12eb41da8aa8b..4b7b1eabcd1c1 100644 --- a/DQM/HcalCommon/interface/DQTask.h +++ b/DQM/HcalCommon/interface/DQTask.h @@ -42,6 +42,7 @@ namespace hcaldqm { void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override; std::shared_ptr globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override; + void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override{}; void dqmEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override; protected: diff --git a/DQM/L1TMonitor/interface/L1TdeRCT.h b/DQM/L1TMonitor/interface/L1TdeRCT.h index 357b2317e8f29..156f255d9f3fd 100644 --- a/DQM/L1TMonitor/interface/L1TdeRCT.h +++ b/DQM/L1TMonitor/interface/L1TdeRCT.h @@ -62,6 +62,7 @@ class L1TdeRCT : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) const override; + void globalEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final {} void dqmEndLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final {} void readFEDVector(MonitorElement*, const edm::EventSetup&) const; diff --git a/DQM/Physics/src/QcdLowPtDQM.cc b/DQM/Physics/src/QcdLowPtDQM.cc index f43db6d29936f..6927707e86843 100644 --- a/DQM/Physics/src/QcdLowPtDQM.cc +++ b/DQM/Physics/src/QcdLowPtDQM.cc @@ -913,11 +913,6 @@ void QcdLowPtDQM::filldNdeta(const TH3F *AlphaTracklets, } } -std::shared_ptr QcdLowPtDQM::globalBeginLuminosityBlock(const LuminosityBlock &, - const EventSetup &) const { - return std::shared_ptr(); -} - void QcdLowPtDQM::dqmEndLuminosityBlock(const LuminosityBlock &l, const EventSetup &iSetup) { // Update various histograms. repSummary_->Fill(1.); diff --git a/DQM/Physics/src/QcdLowPtDQM.h b/DQM/Physics/src/QcdLowPtDQM.h index 4b1232f5f7d24..da8be7e337b7b 100644 --- a/DQM/Physics/src/QcdLowPtDQM.h +++ b/DQM/Physics/src/QcdLowPtDQM.h @@ -19,11 +19,7 @@ class TH1F; class TH2F; class TH3F; -namespace qlpd { - struct Cache {}; -} // namespace qlpd - -class QcdLowPtDQM : public DQMOneEDAnalyzer> { +class QcdLowPtDQM : public DQMOneEDAnalyzer<> { public: class Pixel { public: @@ -124,8 +120,6 @@ class QcdLowPtDQM : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock &, - const edm::EventSetup &) const override; void dqmEndLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &iSetup) override; void dqmEndRun(const edm::Run &r, const edm::EventSetup &iSetup) override; diff --git a/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h b/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h index 4e99da5a06b47..8843c0acd1334 100644 --- a/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h +++ b/DQM/SiStripMonitorDigi/interface/SiStripMonitorDigi.h @@ -38,6 +38,7 @@ class SiStripMonitorDigi : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) const override; + void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; void dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; void dqmBeginRun(const edm::Run& r, const edm::EventSetup& c) override; diff --git a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc index 78c59fc5ed426..47408826a5849 100644 --- a/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc +++ b/DQM/SiStripMonitorHardware/src/SiStripFEDMonitor.cc @@ -77,6 +77,7 @@ class SiStripFEDMonitorPlugin : public DQMOneEDAnalyzer globalBeginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) const override; + void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override{}; void dqmEndLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& iSetup) override; void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; diff --git a/DQM/TrigXMonitor/interface/L1Scalers.h b/DQM/TrigXMonitor/interface/L1Scalers.h index dcf5f40ff4796..cab0725956fcb 100644 --- a/DQM/TrigXMonitor/interface/L1Scalers.h +++ b/DQM/TrigXMonitor/interface/L1Scalers.h @@ -13,18 +13,12 @@ #define MAX_LUMI_SEG 2000 #define MAX_LUMI_BIN 400 -namespace l1s { - struct Empty {}; -} // namespace l1s -class L1Scalers : public DQMOneEDAnalyzer> { +class L1Scalers : public DQMOneEDAnalyzer<> { public: L1Scalers(const edm::ParameterSet &ps); ~L1Scalers() override{}; void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override; void analyze(const edm::Event &e, const edm::EventSetup &c) override; - /// DQM Client Diagnostic should be performed here: - std::shared_ptr globalBeginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, - const edm::EventSetup &c) const final; void dqmEndLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override; private: diff --git a/DQM/TrigXMonitor/src/L1Scalers.cc b/DQM/TrigXMonitor/src/L1Scalers.cc index fad65f1dd8caa..14fe7d19e3e10 100644 --- a/DQM/TrigXMonitor/src/L1Scalers.cc +++ b/DQM/TrigXMonitor/src/L1Scalers.cc @@ -411,11 +411,6 @@ void L1Scalers::analyze(const edm::Event& e, const edm::EventSetup& iSetup) { return; } -std::shared_ptr L1Scalers::globalBeginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, - const edm::EventSetup& c) const { - return std::shared_ptr(); -} - void L1Scalers::dqmEndLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup) { nLumiBlock_->Fill(lumiSeg.id().luminosityBlock()); } diff --git a/DQMOffline/L1Trigger/interface/L1TSync_Offline.h b/DQMOffline/L1Trigger/interface/L1TSync_Offline.h index b3ea09db2bddf..bc0abef794cad 100644 --- a/DQMOffline/L1Trigger/interface/L1TSync_Offline.h +++ b/DQMOffline/L1Trigger/interface/L1TSync_Offline.h @@ -111,6 +111,7 @@ class L1TSync_Offline : public DQMOneEDAnalyzer globalBeginLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) const final; + void globalEndLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) final {} void dqmEndLuminosityBlock(edm::LuminosityBlock const& lumiBlock, edm::EventSetup const& c) final {} void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override; void bookHistograms(DQMStore::IBooker& ibooker, const edm::Run&, const edm::EventSetup&) override; diff --git a/DQMServices/Core/interface/DQMOneEDAnalyzer.h b/DQMServices/Core/interface/DQMOneEDAnalyzer.h index 4c4de665b9d57..a473eb1722d52 100644 --- a/DQMServices/Core/interface/DQMOneEDAnalyzer.h +++ b/DQMServices/Core/interface/DQMOneEDAnalyzer.h @@ -81,7 +81,8 @@ class DQMOneEDAnalyzer : public edm::one::EDProducer globalBeginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) const override; + void globalEndLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) final {} void dqmEndLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &eSetup) final {} void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override{}; From be52986a455f1de91fec935b3ec8b8980d36cd15 Mon Sep 17 00:00:00 2001 From: Marcel Andre Schneider Date: Tue, 23 Jun 2020 17:42:38 +0200 Subject: [PATCH 5/5] Adjust tests for the new module type. --- DQMServices/Demo/test/TestDQMEDAnalyzer.cc | 31 ++++++++ DQMServices/Demo/test/run_analyzers_cfg.py | 4 +- DQMServices/Demo/test/runtests.sh | 84 +++++++++++----------- 3 files changed, 76 insertions(+), 43 deletions(-) diff --git a/DQMServices/Demo/test/TestDQMEDAnalyzer.cc b/DQMServices/Demo/test/TestDQMEDAnalyzer.cc index 6f803dd577572..fb972ef4c7abb 100644 --- a/DQMServices/Demo/test/TestDQMEDAnalyzer.cc +++ b/DQMServices/Demo/test/TestDQMEDAnalyzer.cc @@ -175,6 +175,37 @@ class TestDQMOneFillRunEDAnalyzer : public DQMOneEDAnalyzer<> { }; DEFINE_FWK_MODULE(TestDQMOneFillRunEDAnalyzer); +class TestDQMOneFillLumiEDAnalyzer : public DQMOneEDAnalyzer<> { +public: + explicit TestDQMOneFillLumiEDAnalyzer(const edm::ParameterSet& iConfig) + : mymes_(iConfig.getParameter("folder"), iConfig.getParameter("howmany")), + myvalue_(iConfig.getParameter("value")) {} + + ~TestDQMOneFillLumiEDAnalyzer() override{}; + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("folder", "One/testonefilllumi")->setComment("Where to put all the histograms"); + desc.add("howmany", 1)->setComment("How many copies of each ME to put"); + desc.add("value", 1)->setComment("Which value to use on the third axis (first two are lumi and run)"); + descriptions.add("testonefilllumi", desc); + } + +private: + void bookHistograms(DQMStore::IBooker& ibooker, edm::Run const&, edm::EventSetup const&) override { + mymes_.bookall(ibooker); + } + + void analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) override {} + void dqmEndLuminosityBlock(edm::LuminosityBlock const& lumi, edm::EventSetup const&) override { + mymes_.fillall(lumi.luminosityBlock(), lumi.run(), myvalue_); + } + + BookerFiller mymes_; + double myvalue_; +}; +DEFINE_FWK_MODULE(TestDQMOneFillLumiEDAnalyzer); + class TestDQMOneLumiEDAnalyzer : public DQMOneLumiEDAnalyzer<> { public: explicit TestDQMOneLumiEDAnalyzer(const edm::ParameterSet& iConfig) diff --git a/DQMServices/Demo/test/run_analyzers_cfg.py b/DQMServices/Demo/test/run_analyzers_cfg.py index 6a793a10e5e86..c55171fb26e40 100644 --- a/DQMServices/Demo/test/run_analyzers_cfg.py +++ b/DQMServices/Demo/test/run_analyzers_cfg.py @@ -7,6 +7,7 @@ process.load("DQMServices.Demo.test_cfi") process.load("DQMServices.Demo.testone_cfi") process.load("DQMServices.Demo.testonefillrun_cfi") +process.load("DQMServices.Demo.testonefilllumi_cfi") process.load("DQMServices.Demo.testonelumi_cfi") process.load("DQMServices.Demo.testonelumifilllumi_cfi") process.load("DQMServices.Demo.testglobal_cfi") @@ -16,7 +17,8 @@ process.test_general = cms.Sequence(process.test + process.testglobal) process.test_one = cms.Sequence(process.testone - + process.testonefillrun) + + process.testonefillrun + + process.testonefilllumi) process.test_legacy = cms.Sequence(process.testonelumi + process.testonelumifilllumi + process.testlegacy + process.testlegacyfillrun + process.testlegacyfilllumi) diff --git a/DQMServices/Demo/test/runtests.sh b/DQMServices/Demo/test/runtests.sh index 66a66de5da3f5..81ffe7b740964 100755 --- a/DQMServices/Demo/test/runtests.sh +++ b/DQMServices/Demo/test/runtests.sh @@ -10,23 +10,23 @@ fi # 1. Run a very simple configuration with all module types. cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=alltypes.root numberEventsInRun=100 numberEventsInLuminosityBlock=20 nEvents=100 -# actually we'd expect 99, but the MEs by legacy modules are booked with JOB scope and cannot be saved to DQMIO. -[ 66 = $(dqmiolistmes.py alltypes.root -r 1 | wc -l) ] -[ 66 = $(dqmiolistmes.py alltypes.root -r 1 -l 1 | wc -l) ] +# actually we'd expect more, but the MEs by legacy modules are booked with JOB scope and cannot be saved to DQMIO. +[ 77 = $(dqmiolistmes.py alltypes.root -r 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py alltypes.root -r 1 -l 1 | wc -l) ] # this is deeply related to what the analyzers actually do. # again, the legacy modules output is not saved. # most run histos (4 modules * 9 types) fill on every event and should have 100 entries. -# the scalar MEs should have the last lumi number (5) (5 float + 5 int) -# testonefilllumi also should have 5 entries in the histograms (9 more) +# the scalar MEs should have the last lumi number (5) (6 float + 6 int) +# testone(lumi)filllumi also should have 5 entries in the histograms (2*9 more) # the "fillrun" module should have one entry in the histograms (9 total) and 0 in the scalars (2 total) -[ "0: 1, 0.0: 1, 1: 9, 100: 36, 5: 14, 5.0: 5" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 --summary)" ] -# per lumi we see 20 in most histograms (4*9), and the current lumi number in the scalars (6 modules * 2). -# the two fillumi modules should have one entry in each of the lumi histograms, (2*9 total) -[ "1: 24, 1.0: 6, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 1 --summary)" ] -[ "1: 18, 2: 6, 2.0: 6, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 2 --summary)" ] -[ "1: 18, 20: 36, 3: 6, 3.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 3 --summary)" ] -[ "1: 18, 20: 36, 4: 6, 4.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 4 --summary)" ] -[ "1: 18, 20: 36, 5: 6, 5.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 5 --summary)" ] +[ "0: 1, 0.0: 1, 1: 9, 100: 36, 5: 24, 5.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 --summary)" ] +# per lumi we see 20 in most histograms (4*9), and the current lumi number in the scalars (7 modules * 2). +# the three fillumi modules should have one entry in each of the lumi histograms, (3*9 total) +[ "1: 34, 1.0: 7, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 1 --summary)" ] +[ "1: 27, 2: 7, 2.0: 7, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 2 --summary)" ] +[ "1: 27, 20: 36, 3: 7, 3.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 3 --summary)" ] +[ "1: 27, 20: 36, 4: 7, 4.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 4 --summary)" ] +[ "1: 27, 20: 36, 5: 7, 5.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 5 --summary)" ] # just make sure we are not off by one [ "" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py alltypes.root -r 1 -l 6 --summary)" ] @@ -42,12 +42,12 @@ cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=nolegacy-cl.root numberEvent # same math as above, just a few less modules, and more events. for f in nolegacy.root nolegacy-mt.root nolegacy-cl.root do - [ "0: 1, 0.0: 1, 1: 9, 1000: 27, 5: 3, 5.0: 3" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 --summary)" ] - [ "1: 2, 1.0: 2, 200: 18" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 1 --summary)" ] - [ "2: 2, 2.0: 2, 200: 18" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 2 --summary)" ] - [ "200: 18, 3: 2, 3.0: 2" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 3 --summary)" ] - [ "200: 18, 4: 2, 4.0: 2" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 4 --summary)" ] - [ "200: 18, 5: 2, 5.0: 2" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 5 --summary)" ] + [ "0: 1, 0.0: 1, 1: 9, 1000: 27, 5: 13, 5.0: 4" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 --summary)" ] + [ "1: 12, 1.0: 3, 200: 18" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 1 --summary)" ] + [ "1: 9, 2: 3, 2.0: 3, 200: 18" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 2 --summary)" ] + [ "1: 9, 200: 18, 3: 3, 3.0: 3" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 3 --summary)" ] + [ "1: 9, 200: 18, 4: 3, 4.0: 3" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 4 --summary)" ] + [ "1: 9, 200: 18, 5: 3, 5.0: 3" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 5 --summary)" ] [ "" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py $f -r 1 -l 6 --summary)" ] done @@ -89,9 +89,9 @@ cmp <($LOCAL_TEST_DIR/dqmiodumpentries.py multirun.root -r 1 -l 2) <($LOCAL_TEST # 7. Try writing a TDirectory file. cmsRun $LOCAL_TEST_DIR/run_harvesters_cfg.py inputFiles=alltypes.root nomodules=True legacyoutput=True reScope=JOB -# this number is rather messy: we have 66 per-lumi objecs (harvested), 66 per-run objects (no legacy output), one folder for each set of 11, +# this number is rather messy: we have 77 per-lumi objects (harvested), 77 per-run objects (no legacy output), one folder for each set of 11, # plus some higher-level folders and the ProvInfo hierarchy create by the FileSaver. -[ 161 = $(rootlist DQM_V0001_R000000001__Harvesting__DQMTests__DQMIO.root | wc -l) ] +[ 185 = $(rootlist DQM_V0001_R000000001__Harvesting__DQMTests__DQMIO.root | wc -l) ] cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py numberEventsInRun=100 numberEventsInLuminosityBlock=20 nEvents=100 legacyoutput=True # we expect only the (per-job) legacy histograms here: 3*11 objects in 3 folders, plus 9 more for ProvInfo and higher-level folders. @@ -101,25 +101,25 @@ cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py numberEventsInRun=100 numberEventsIn cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py numberEventsInRun=300 numberEventsInLuminosityBlock=100 nEvents=1200 protobufoutput=True cmsRun $LOCAL_TEST_DIR/run_harvesters_cfg.py inputFiles=./run000001 outfile=pbdata.root nomodules=True protobufinput=True -[ 99 = $(dqmiolistmes.py pbdata.root -r 1 | wc -l) ] -[ 66 = $(dqmiolistmes.py pbdata.root -r 1 -l 1 | wc -l) ] +[ 110 = $(dqmiolistmes.py pbdata.root -r 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py pbdata.root -r 1 -l 1 | wc -l) ] # this will potentially mess up statistics (we should only fastHadd *within* a lumisection, not *across*), but should technically work. fastHadd add -o streamDQMHistograms.pb run000001/run000001_ls*_streamDQMHistograms.pb # the output format is different from the harvesting above, this is a not-DQM-formatted TDirectory file. fastHadd convert -o streamDQMHistograms.root streamDQMHistograms.pb -# here we expect all (incl. legacy) MEs (99+66), plus folders (14 + 4 higher-level) -[ 184 = $(rootlist streamDQMHistograms.root | wc -l) ] +# here we expect all (incl. legacy) MEs (110+77), plus folders (17 + 4 higher-level) +[ 208 = $(rootlist streamDQMHistograms.root | wc -l) ] # 9. Try writing online files. This is really TDirectory files, but written via a different module. # Note that this does not really need to support multiple runs, but it appears it does. cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py numberEventsInRun=300 numberEventsInLuminosityBlock=100 nEvents=1200 onlineoutput=True -# here we expect full per-run output (99 objects), no per-lumi MEs, plus folders (9 + 10 higher-level). -[ 118 = $(rootlist DQM_V0001_UNKNOWN_R000000001.root | wc -l) ] -[ 118 = $(rootlist DQM_V0001_UNKNOWN_R000000002.root | wc -l) ] -[ 118 = $(rootlist DQM_V0001_UNKNOWN_R000000003.root | wc -l) ] -[ 118 = $(rootlist DQM_V0001_UNKNOWN_R000000004.root | wc -l) ] +# here we expect full per-run output (110 objects), no per-lumi MEs, plus folders (10 + 10 higher-level). +[ 130 = $(rootlist DQM_V0001_UNKNOWN_R000000001.root | wc -l) ] +[ 130 = $(rootlist DQM_V0001_UNKNOWN_R000000002.root | wc -l) ] +[ 130 = $(rootlist DQM_V0001_UNKNOWN_R000000003.root | wc -l) ] +[ 130 = $(rootlist DQM_V0001_UNKNOWN_R000000004.root | wc -l) ] # 10. Try running some harvesting modules and check if their output makes it out. @@ -130,15 +130,15 @@ cmsRun $LOCAL_TEST_DIR/run_harvesters_cfg.py inputFiles=part1.root inputFiles=pa # 11. Try MEtoEDM and EDMtoME. cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=metoedm.root numberEventsInRun=100 numberEventsInLuminosityBlock=20 nEvents=100 metoedmoutput=True cmsRun $LOCAL_TEST_DIR/run_harvesters_cfg.py outfile=edmtome.root inputFiles=metoedm.root nomodules=True metoedminput=True -[ 66 = $(dqmiolistmes.py edmtome.root -r 1 | wc -l) ] -[ 66 = $(dqmiolistmes.py edmtome.root -r 1 -l 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py edmtome.root -r 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py edmtome.root -r 1 -l 1 | wc -l) ] # again, no legacy module (run) output here due to JOB scope for legacy modules -[ "0: 1, 0.0: 1, 1: 9, 100: 36, 5: 14, 5.0: 5" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 --summary)" ] -[ "1: 24, 1.0: 6, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 1 --summary)" ] -[ "1: 18, 2: 6, 2.0: 6, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 2 --summary)" ] -[ "1: 18, 20: 36, 3: 6, 3.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 3 --summary)" ] -[ "1: 18, 20: 36, 4: 6, 4.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 4 --summary)" ] -[ "1: 18, 20: 36, 5: 6, 5.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 5 --summary)" ] +[ "0: 1, 0.0: 1, 1: 9, 100: 36, 5: 24, 5.0: 6" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 --summary)" ] +[ "1: 34, 1.0: 7, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 1 --summary)" ] +[ "1: 27, 2: 7, 2.0: 7, 20: 36" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 2 --summary)" ] +[ "1: 27, 20: 36, 3: 7, 3.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 3 --summary)" ] +[ "1: 27, 20: 36, 4: 7, 4.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 4 --summary)" ] +[ "1: 27, 20: 36, 5: 7, 5.0: 7" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 5 --summary)" ] [ "" = "$($LOCAL_TEST_DIR/dqmiodumpentries.py edmtome.root -r 1 -l 6 --summary)" ] cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=part1_metoedm.root metoedmoutput=True numberEventsInRun=300 numberEventsInLuminosityBlock=100 nEvents=50 # 1st half of 1st lumi @@ -157,9 +157,9 @@ cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=empty.root howmany=0 legacyo cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=empty.root howmany=0 protobufoutput=True # nLumisections might be a bit buggy (off by one) in EDM, but is fine here. cmsRun $LOCAL_TEST_DIR/run_analyzers_cfg.py outfile=noevents.root processingMode='RunsAndLumis' nLumisections=20 -[ 66 = $(dqmiolistmes.py noevents.root -r 1 | wc -l) ] -[ 66 = $(dqmiolistmes.py noevents.root -r 1 -l 1 | wc -l) ] -[ 66 = $(dqmiolistmes.py noevents.root -r 2 | wc -l) ] -[ 66 = $(dqmiolistmes.py noevents.root -r 2 -l 2 | wc -l) ] +[ 77 = $(dqmiolistmes.py noevents.root -r 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py noevents.root -r 1 -l 1 | wc -l) ] +[ 77 = $(dqmiolistmes.py noevents.root -r 2 | wc -l) ] +[ 77 = $(dqmiolistmes.py noevents.root -r 2 -l 2 | wc -l) ]