From be8ddede477192c7682e9743005fdbfdf554dd33 Mon Sep 17 00:00:00 2001
From: Christopher Jones <chrisdjones15@gmail.com>
Date: Tue, 18 Oct 2022 14:52:27 -0500
Subject: [PATCH 1/4] Fixed deprecation warnings in MuonRecoGeometryAnalyzer

- changed to one::EDAnalyzer
- added missing esConsumes
---
 .../DetLayers/test/MuonRecoGeometryAnalyzer.cc  | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/RecoMuon/DetLayers/test/MuonRecoGeometryAnalyzer.cc b/RecoMuon/DetLayers/test/MuonRecoGeometryAnalyzer.cc
index fc39272b344a2..df1336152cb2f 100644
--- a/RecoMuon/DetLayers/test/MuonRecoGeometryAnalyzer.cc
+++ b/RecoMuon/DetLayers/test/MuonRecoGeometryAnalyzer.cc
@@ -3,7 +3,7 @@
  */
 
 #include <FWCore/Framework/interface/Frameworkfwd.h>
-#include <FWCore/Framework/interface/EDAnalyzer.h>
+#include <FWCore/Framework/interface/one/EDAnalyzer.h>
 #include <FWCore/Framework/interface/Event.h>
 #include <FWCore/Framework/interface/EventSetup.h>
 #include <FWCore/Framework/interface/ESHandle.h>
@@ -33,11 +33,11 @@
 using namespace std;
 using namespace edm;
 
-class MuonRecoGeometryAnalyzer : public EDAnalyzer {
+class MuonRecoGeometryAnalyzer : public one::EDAnalyzer<> {
 public:
   MuonRecoGeometryAnalyzer(const ParameterSet& pset);
 
-  virtual void analyze(const Event& ev, const EventSetup& es);
+  void analyze(const Event& ev, const EventSetup& es) override;
 
   void testDTLayers(const MuonDetLayerGeometry*, const MagneticField* field);
   void testCSCLayers(const MuonDetLayerGeometry*, const MagneticField* field);
@@ -46,20 +46,21 @@ class MuonRecoGeometryAnalyzer : public EDAnalyzer {
 
 private:
   MeasurementEstimator* theEstimator;
+  ESGetToken<MuonDetLayerGeometry, MuonRecoGeometryRecord> theGeomToken;
+  ESGetToken<MagneticField, IdealMagneticFieldRecord> theMagfieldToken;
 };
 
 MuonRecoGeometryAnalyzer::MuonRecoGeometryAnalyzer(const ParameterSet& iConfig) {
   float theMaxChi2 = 25.;
   float theNSigma = 3.;
   theEstimator = new Chi2MeasurementEstimator(theMaxChi2, theNSigma);
+  theGeomToken = esConsumes();
+  theMagfieldToken = esConsumes();
 }
 
 void MuonRecoGeometryAnalyzer::analyze(const Event& ev, const EventSetup& es) {
-  ESHandle<MuonDetLayerGeometry> geo;
-  es.get<MuonRecoGeometryRecord>().get(geo);
-
-  ESHandle<MagneticField> magfield;
-  es.get<IdealMagneticFieldRecord>().get(magfield);
+  ESHandle<MuonDetLayerGeometry> geo = es.getHandle(theGeomToken);
+  ESHandle<MagneticField> magfield = es.getHandle(theMagfieldToken);
   // Some printouts
 
   cout << "*** allDTLayers(): " << geo->allDTLayers().size() << endl;

From 83279767b103ed50973fe5a9f9347cbda1e70f2b Mon Sep 17 00:00:00 2001
From: Christopher Jones <chrisdjones15@gmail.com>
Date: Tue, 18 Oct 2022 14:53:33 -0500
Subject: [PATCH 2/4] Fix deprecation warnings in
 RecoMuon/L2MuonIsolationProducer

- changed modules to one::EDAnalyzers
---
 .../test/L2MuonIsolationAnalyzer.h                   | 12 ++++++------
 .../test/L3MuonIsolationAnalyzer.h                   | 12 ++++++------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/RecoMuon/L2MuonIsolationProducer/test/L2MuonIsolationAnalyzer.h b/RecoMuon/L2MuonIsolationProducer/test/L2MuonIsolationAnalyzer.h
index f49eacac3c012..adbf65071e284 100644
--- a/RecoMuon/L2MuonIsolationProducer/test/L2MuonIsolationAnalyzer.h
+++ b/RecoMuon/L2MuonIsolationProducer/test/L2MuonIsolationAnalyzer.h
@@ -7,7 +7,7 @@
  *  \author J. Alcaraz
  */
 
-#include "FWCore/Framework/interface/EDAnalyzer.h"
+#include "FWCore/Framework/interface/one/EDAnalyzer.h"
 #include "FWCore/Utilities/interface/InputTag.h"
 #include "RecoMuon/MuonIsolation/interface/Cuts.h"
 
@@ -21,19 +21,19 @@ class TFile;
 class TH1F;
 class TH2F;
 
-class L2MuonIsolationAnalyzer : public edm::EDAnalyzer {
+class L2MuonIsolationAnalyzer : public edm::one::EDAnalyzer<> {
 public:
   /// Constructor
   L2MuonIsolationAnalyzer(const edm::ParameterSet& pset);
 
   /// Destructor
-  virtual ~L2MuonIsolationAnalyzer();
+  ~L2MuonIsolationAnalyzer() override;
 
   // Operations
-  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup);
+  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup) override;
 
-  virtual void beginJob();
-  virtual void endJob();
+  void beginJob() override;
+  void endJob() override;
 
 private:
   void Puts(const char* fmt, ...);
diff --git a/RecoMuon/L3MuonIsolationProducer/test/L3MuonIsolationAnalyzer.h b/RecoMuon/L3MuonIsolationProducer/test/L3MuonIsolationAnalyzer.h
index d3d974f74304f..13089bc02935a 100644
--- a/RecoMuon/L3MuonIsolationProducer/test/L3MuonIsolationAnalyzer.h
+++ b/RecoMuon/L3MuonIsolationProducer/test/L3MuonIsolationAnalyzer.h
@@ -6,7 +6,7 @@
  *
  */
 
-#include "FWCore/Framework/interface/EDAnalyzer.h"
+#include "FWCore/Framework/interface/one/EDAnalyzer.h"
 #include "FWCore/Utilities/interface/InputTag.h"
 #include "RecoMuon/MuonIsolation/interface/Cuts.h"
 
@@ -20,19 +20,19 @@ class TFile;
 class TH1F;
 class TH2F;
 
-class L3MuonIsolationAnalyzer : public edm::EDAnalyzer {
+class L3MuonIsolationAnalyzer : public edm::one::EDAnalyzer<> {
 public:
   /// Constructor
   L3MuonIsolationAnalyzer(const edm::ParameterSet& pset);
 
   /// Destructor
-  virtual ~L3MuonIsolationAnalyzer();
+  ~L3MuonIsolationAnalyzer() override;
 
   // Operations
-  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup);
+  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup) override;
 
-  virtual void beginJob();
-  virtual void endJob();
+  void beginJob() override;
+  void endJob() override;
 
 private:
   void Puts(const char* fmt, ...);

From 027ecfc6763db8498ec07aab86f0eb7e8c96d4d6 Mon Sep 17 00:00:00 2001
From: Christopher Jones <chrisdjones15@gmail.com>
Date: Tue, 18 Oct 2022 14:55:17 -0500
Subject: [PATCH 3/4] Fix deprecation warnings in MuonNavigationTest

- changed to one::EDAnalyzer
- added missing esConsumes
---
 RecoMuon/Navigation/test/MuonNavigationTest.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/RecoMuon/Navigation/test/MuonNavigationTest.cc b/RecoMuon/Navigation/test/MuonNavigationTest.cc
index ff28cbc9afd71..7f8ece3f05bc0 100644
--- a/RecoMuon/Navigation/test/MuonNavigationTest.cc
+++ b/RecoMuon/Navigation/test/MuonNavigationTest.cc
@@ -5,7 +5,7 @@
  */
 
 #include "FWCore/Framework/interface/Frameworkfwd.h"
-#include "FWCore/Framework/interface/EDAnalyzer.h"
+#include "FWCore/Framework/interface/one/EDAnalyzer.h"
 
 #include "FWCore/Framework/interface/Event.h"
 #include "FWCore/Framework/interface/EventSetup.h"
@@ -24,19 +24,21 @@
 //#include "RecoTracker/Record/interface/TrackerRecoGeometryRecord.h"
 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
 
-class MuonNavigationTest : public edm::EDAnalyzer {
+class MuonNavigationTest : public edm::one::EDAnalyzer<> {
 public:
   explicit MuonNavigationTest(const edm::ParameterSet&);
-  ~MuonNavigationTest();
+  ~MuonNavigationTest() override;
 
-  virtual void analyze(const edm::Event&, const edm::EventSetup&);
+  void analyze(const edm::Event&, const edm::EventSetup&) override;
 
 private:
+  edm::ESGetToken<MuonDetLayerGeometry, MuonRecoGeometryRecord> geomToken_;
 };
 
 // constructor
 
 MuonNavigationTest::MuonNavigationTest(const edm::ParameterSet& iConfig) {
+  geomToken_ = esConsumes();
   std::cout << "Muon Navigation Printer Begin:" << std::endl;
 }
 
@@ -51,13 +53,11 @@ void MuonNavigationTest::analyze(const edm::Event& iEvent, const edm::EventSetup
   //
   // get Geometry
   //
-  edm::ESHandle<MuonDetLayerGeometry> muon;
-  iSetup.get<MuonRecoGeometryRecord>().get(muon);
-  const MuonDetLayerGeometry* mm(&(*muon));
+  const MuonDetLayerGeometry& mm = iSetup.getData(geomToken_);
 
   if (testMuon) {
-    MuonNavigationSchool school(mm);
-    MuonNavigationPrinter* printer = new MuonNavigationPrinter(mm, school);
+    MuonNavigationSchool school(&mm);
+    MuonNavigationPrinter* printer = new MuonNavigationPrinter(&mm, school);
     delete printer;
   }
   /*

From 4a9030c40ae2e77bc97b84aa63e5bddc6213b461 Mon Sep 17 00:00:00 2001
From: Christopher Jones <chrisdjones15@gmail.com>
Date: Tue, 18 Oct 2022 14:55:57 -0500
Subject: [PATCH 4/4] Fix deprecation warnings in STAMuonAnalyzer

- changed to one::EDAnalyzer
- added missing esConsumes
---
 .../test/STAMuonAnalyzer.cc                    | 10 +++++-----
 .../test/STAMuonAnalyzer.h                     | 18 ++++++++++++------
 2 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.cc b/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.cc
index 963cf28df864e..4d2c737e94317 100644
--- a/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.cc
+++ b/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.cc
@@ -46,6 +46,9 @@ STAMuonAnalyzer::STAMuonAnalyzer(const ParameterSet& pset) {
 
   numberOfSimTracks = 0;
   numberOfRecTracks = 0;
+
+  theFieldToken = esConsumes();
+  theGeomToken = esConsumes();
 }
 
 /// Destructor
@@ -97,11 +100,8 @@ void STAMuonAnalyzer::analyze(const Event& event, const EventSetup& eventSetup)
   Handle<reco::TrackCollection> staTracks;
   event.getByLabel(theSTAMuonLabel, staTracks);
 
-  ESHandle<MagneticField> theMGField;
-  eventSetup.get<IdealMagneticFieldRecord>().get(theMGField);
-
-  ESHandle<GlobalTrackingGeometry> theTrackingGeometry;
-  eventSetup.get<GlobalTrackingGeometryRecord>().get(theTrackingGeometry);
+  ESHandle<MagneticField> theMGField = eventSetup.getHandle(theFieldToken);
+  ESHandle<GlobalTrackingGeometry> theTrackingGeometry = eventSetup.getHandle(theGeomToken);
 
   double recPt = 0.;
   double simPt = 0.;
diff --git a/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.h b/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.h
index 422d6c5bb30e9..37c69655ece0a 100644
--- a/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.h
+++ b/RecoMuon/StandAloneMuonProducer/test/STAMuonAnalyzer.h
@@ -8,7 +8,7 @@
  */
 
 // Base Class Headers
-#include "FWCore/Framework/interface/EDAnalyzer.h"
+#include "FWCore/Framework/interface/one/EDAnalyzer.h"
 
 namespace edm {
   class ParameterSet;
@@ -19,21 +19,25 @@ namespace edm {
 class TFile;
 class TH1F;
 class TH2F;
+class MagneticField;
+class IdealMagneticFieldRecord;
+class GlobalTrackingGeometry;
+class GlobalTrackingGeometryRecord;
 
-class STAMuonAnalyzer : public edm::EDAnalyzer {
+class STAMuonAnalyzer : public edm::one::EDAnalyzer<> {
 public:
   /// Constructor
   STAMuonAnalyzer(const edm::ParameterSet &pset);
 
   /// Destructor
-  virtual ~STAMuonAnalyzer();
+  ~STAMuonAnalyzer() override;
 
   // Operations
 
-  void analyze(const edm::Event &event, const edm::EventSetup &eventSetup);
+  void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override;
 
-  virtual void beginJob();
-  virtual void endJob();
+  void beginJob() override;
+  void endJob() override;
 
 protected:
 private:
@@ -58,5 +62,7 @@ class STAMuonAnalyzer : public edm::EDAnalyzer {
   int numberOfRecTracks;
 
   std::string theDataType;
+  edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> theFieldToken;
+  edm::ESGetToken<GlobalTrackingGeometry, GlobalTrackingGeometryRecord> theGeomToken;
 };
 #endif