diff --git a/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigDump.h b/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigDump.h index 373a8ca3e7290..b11895132c58c 100644 --- a/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigDump.h +++ b/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigDump.h @@ -15,23 +15,35 @@ * */ -#include "FWCore/Framework/interface/EDAnalyzer.h" +#include "FWCore/Framework/interface/one/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" // forward declarations +class L1GctJetFinderParams; +class L1GctChannelMask; +class L1CaloEtScale; +class L1GctJetFinderParamsRcd; +class L1GctChannelMaskRcd; +class L1JetEtScaleRcd; +class L1HtMissScaleRcd; +class L1HfRingEtScaleRcd; // class declaration -class L1GctConfigDump : public edm::EDAnalyzer { +class L1GctConfigDump : public edm::one::EDAnalyzer<> { public: // constructor explicit L1GctConfigDump(const edm::ParameterSet&); - // destructor - ~L1GctConfigDump() override; - void analyze(const edm::Event&, const edm::EventSetup&) override; + +private: + const edm::ESGetToken m_jfParamsToken; + const edm::ESGetToken m_chanMaskToken; + const edm::ESGetToken m_jetScaleToken; + const edm::ESGetToken m_htmScaleToken; + const edm::ESGetToken m_hfRingScaleToken; }; #endif diff --git a/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigProducers.h b/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigProducers.h index 4e4a4dc5271d8..5d180ea01cfc9 100644 --- a/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigProducers.h +++ b/L1TriggerConfig/GctConfigProducers/interface/L1GctConfigProducers.h @@ -39,6 +39,7 @@ class L1GctChannelMask; class L1GctJetFinderParamsRcd; class L1GctChannelMaskRcd; +class L1CaloGeometryRecord; // // class declaration @@ -74,6 +75,8 @@ class L1GctConfigProducers : public edm::ESProducer { std::vector > m_jetCalibFunc; std::vector > m_tauCalibFunc; + edm::ESGetToken m_caloGeomToken; + unsigned m_metEtaMask; unsigned m_tetEtaMask; unsigned m_mhtEtaMask; diff --git a/L1TriggerConfig/GctConfigProducers/src/L1GctConfigDump.cc b/L1TriggerConfig/GctConfigProducers/src/L1GctConfigDump.cc index 6fc59851512da..31a33190fccdc 100644 --- a/L1TriggerConfig/GctConfigProducers/src/L1GctConfigDump.cc +++ b/L1TriggerConfig/GctConfigProducers/src/L1GctConfigDump.cc @@ -25,32 +25,27 @@ #include -L1GctConfigDump::L1GctConfigDump(const edm::ParameterSet& pSet) { - // empty -} - -// destructor -L1GctConfigDump::~L1GctConfigDump() { +L1GctConfigDump::L1GctConfigDump(const edm::ParameterSet& pSet) + : m_jfParamsToken{esConsumes()}, + m_chanMaskToken{esConsumes()}, + m_jetScaleToken{esConsumes()}, + m_htmScaleToken{esConsumes()}, + m_hfRingScaleToken{esConsumes()} { // empty } void L1GctConfigDump::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { // get records - edm::ESHandle jfParams; - iSetup.get().get(jfParams); + edm::ESHandle jfParams = iSetup.getHandle(m_jfParamsToken); - edm::ESHandle chanMask; - iSetup.get().get(chanMask); + edm::ESHandle chanMask = iSetup.getHandle(m_chanMaskToken); - edm::ESHandle jetScale; - iSetup.get().get(jetScale); + edm::ESHandle jetScale = iSetup.getHandle(m_jetScaleToken); - edm::ESHandle htmScale; - iSetup.get().get(htmScale); + edm::ESHandle htmScale = iSetup.getHandle(m_htmScaleToken); - edm::ESHandle hfRingScale; - iSetup.get().get(hfRingScale); + edm::ESHandle hfRingScale = iSetup.getHandle(m_hfRingScaleToken); edm::LogInfo("L1GctConfigDump") << (*jfParams) << std::endl; edm::LogInfo("L1GctConfigDump") << (*chanMask) << std::endl; diff --git a/L1TriggerConfig/GctConfigProducers/src/L1GctConfigProducers.cc b/L1TriggerConfig/GctConfigProducers/src/L1GctConfigProducers.cc index 30a34b377f527..654961f483ef0 100644 --- a/L1TriggerConfig/GctConfigProducers/src/L1GctConfigProducers.cc +++ b/L1TriggerConfig/GctConfigProducers/src/L1GctConfigProducers.cc @@ -43,7 +43,7 @@ L1GctConfigProducers::L1GctConfigProducers(const edm::ParameterSet& iConfig) m_thtEtaMask(iConfig.getParameter("HtEtaMask")) { //the following lines are needed to tell the framework what // data is being produced - setWhatProduced(this, &L1GctConfigProducers::produceJfParams); + m_caloGeomToken = setWhatProduced(this, &L1GctConfigProducers::produceJfParams).consumes(); setWhatProduced(this, &L1GctConfigProducers::produceChanMask); //now do what ever other initialization is needed @@ -115,9 +115,7 @@ L1GctConfigProducers::~L1GctConfigProducers() { L1GctConfigProducers::JfParamsReturnType L1GctConfigProducers::produceJfParams(const L1GctJetFinderParamsRcd& aRcd) { // get geometry - const L1CaloGeometryRecord& geomRcd = aRcd.getRecord(); - edm::ESHandle geom; - geomRcd.get(geom); + edm::ESHandle geom = aRcd.getHandle(m_caloGeomToken); // construct jet finder params object auto pL1GctJetFinderParams = std::make_unique(m_rgnEtLsb,