From 64811ebf8f2eab2c1e81b1fea960cdfb5fdacea5 Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Thu, 30 Jul 2020 13:18:43 -0500 Subject: [PATCH 1/6] Removed EventSetup use from RecHitTools class. --- RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc | 4 +++- .../TICL/plugins/FilteredLayerClustersProducer.cc | 6 +++++- RecoHGCal/TICL/plugins/PatternRecognitionbyCA.cc | 8 +++++++- RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc | 6 +++++- RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc | 4 +++- .../HGCalRecAlgos/interface/HGCal3DClustering.h | 4 +++- .../HGCalRecAlgos/interface/HGCalDepthPreClusterer.h | 4 +++- .../HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h | 4 +++- RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h | 7 +++++-- RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc | 7 +++++-- RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc | 10 +++++----- .../interface/HGCalClusteringAlgoBase.h | 4 +++- .../plugins/HGCalRecHitWorkerSimple.cc | 4 +++- .../PFClusterProducer/interface/PFHGCalRecHitCreator.h | 6 +++++- .../plugins/SimMappers/RealisticSimClusterMapper.cc | 6 +++++- .../LayerClusterAssociatorByEnergyScoreProducer.cc | 4 +++- .../HGCalValidation/plugins/HGCalHitCalibration.cc | 4 +++- .../HGCalValidation/plugins/HGCalShowerSeparation.cc | 4 +++- Validation/HGCalValidation/plugins/HGCalValidator.cc | 4 +++- 19 files changed, 75 insertions(+), 25 deletions(-) diff --git a/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc b/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc index a0376c739f65e..f5958823fd8bb 100644 --- a/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc +++ b/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc @@ -30,7 +30,9 @@ void HGCalEgammaIDHelper::eventInit(const edm::Event& iEvent, const edm::EventSe edm::Handle> hitMapHandle; iEvent.getByToken(hitMap_, hitMapHandle); - recHitTools_.getEventSetup(iSetup); + edm::ESHandle geom; + iSetup.get().get(geom); + recHitTools_.setGeometry(*geom); pcaHelper_.setRecHitTools(&recHitTools_); isoHelper_.setRecHitTools(&recHitTools_); pcaHelper_.setHitMap(hitMapHandle.product()); diff --git a/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc b/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc index 9b3eb9e6ef793..729e8ae448301 100644 --- a/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc +++ b/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc @@ -47,7 +47,11 @@ FilteredLayerClustersProducer::FilteredLayerClustersProducer(const edm::Paramete produces>(iteration_label_); } -void FilteredLayerClustersProducer::beginRun(edm::Run const&, edm::EventSetup const& es) { rhtools_.getEventSetup(es); } +void FilteredLayerClustersProducer::beginRun(edm::Run const&, edm::EventSetup const& es) { + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); +} void FilteredLayerClustersProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { // hgcalMultiClusters diff --git a/RecoHGCal/TICL/plugins/PatternRecognitionbyCA.cc b/RecoHGCal/TICL/plugins/PatternRecognitionbyCA.cc index 060246842cb7f..dcc0c039d15db 100644 --- a/RecoHGCal/TICL/plugins/PatternRecognitionbyCA.cc +++ b/RecoHGCal/TICL/plugins/PatternRecognitionbyCA.cc @@ -10,6 +10,9 @@ #include "RecoLocalCalo/HGCalRecProducers/interface/ComputeClusterTime.h" #include "TrackstersPCA.h" +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" +#include "FWCore/Framework/interface/EventSetup.h" using namespace ticl; @@ -55,7 +58,10 @@ void PatternRecognitionbyCA::makeTracksters( if (input.regions.empty()) return; - rhtools_.getEventSetup(input.es); + edm::ESHandle geom; + edm::EventSetup const &es = input.es; + es.get().get(geom); + rhtools_.setGeometry(*geom); theGraph_->setVerbosity(PatternRecognitionAlgoBaseT::algo_verbosity_); theGraph_->clear(); diff --git a/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc b/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc index 1d5aeeae4ad24..a0b60e30e175d 100644 --- a/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc +++ b/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc @@ -43,7 +43,11 @@ TICLLayerTileProducer::TICLLayerTileProducer(const edm::ParameterSet &ps) produces(); } -void TICLLayerTileProducer::beginRun(edm::Run const &, edm::EventSetup const &es) { rhtools_.getEventSetup(es); } +void TICLLayerTileProducer::beginRun(edm::Run const &, edm::EventSetup const &es) { + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); +} void TICLLayerTileProducer::produce(edm::Event &evt, const edm::EventSetup &) { auto result = std::make_unique(); diff --git a/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc b/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc index b0a2ec14a4427..f70680e00d660 100644 --- a/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc +++ b/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc @@ -143,7 +143,9 @@ void TrackstersMergeProducer::dumpTrackster(const Trackster &t) const { } void TrackstersMergeProducer::produce(edm::Event &evt, const edm::EventSetup &es) { - rhtools_.getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); auto result = std::make_unique>(); auto mergedTrackstersTRK = std::make_unique>(); diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/HGCal3DClustering.h b/RecoLocalCalo/HGCalRecAlgos/interface/HGCal3DClustering.h index e12d2620d064c..0fd3fba15249c 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/HGCal3DClustering.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/HGCal3DClustering.h @@ -36,7 +36,9 @@ class HGCal3DClustering { void getEvent(const edm::Event& ev) { clusterTools->getEvent(ev); } void getEventSetup(const edm::EventSetup& es) { clusterTools->getEventSetup(es); - rhtools_.getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); maxlayer = rhtools_.lastLayerBH(); points.clear(); minpos.clear(); diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalDepthPreClusterer.h b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalDepthPreClusterer.h index 1be09da6c8251..ad74c02963802 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalDepthPreClusterer.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalDepthPreClusterer.h @@ -35,7 +35,9 @@ class HGCalDepthPreClusterer { void getEvent(const edm::Event& ev) { clusterTools->getEvent(ev); } void getEventSetup(const edm::EventSetup& es) { clusterTools->getEventSetup(es); - rhtools_.getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); } typedef std::vector ClusterCollection; diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h index 66611fca86844..923874af17c0a 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h @@ -14,6 +14,7 @@ #include "DataFormats/HGCRecHit/interface/HGCUncalibratedRecHit.h" #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h" + class HGCalRecHitAbsAlgo { public: /// Constructor @@ -22,7 +23,8 @@ class HGCalRecHitAbsAlgo { /// Destructor virtual ~HGCalRecHitAbsAlgo(){}; - inline void set(const edm::EventSetup& es) { rhtools_.getEventSetup(es); } + inline void set(const edm::EventSetup& es) { edm::ESHandle geom; + es.get().get(geom); rhtools_.setGeometry(*geom); } /// make rechits from dataframes virtual void setLayerWeights(const std::vector& weights){}; diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h b/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h index 2ef4de13a1cf0..a90996c8af794 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h @@ -7,6 +7,8 @@ #include "DataFormats/DetId/interface/DetId.h" #include "DataFormats/ForwardDetId/interface/ForwardSubdetector.h" #include "DataFormats/ForwardDetId/interface/HFNoseDetId.h" +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" class CaloGeometry; class CaloSubdetectorGeometry; @@ -23,8 +25,9 @@ namespace hgcal { RecHitTools() : geom_(nullptr), fhOffset_(0), bhOffset_(0), fhLastLayer_(0), noseLastLayer_(0), geometryType_(0) {} ~RecHitTools() {} - void getEvent(const edm::Event&); - void getEventSetup(const edm::EventSetup&); + //void getEvent(const edm::Event&); + //void getEventSetup(const edm::EventSetup&); + void setGeometry(CaloGeometry const&); const CaloSubdetectorGeometry* getSubdetectorGeometry(const DetId& id) const; GlobalPoint getPosition(const DetId& id) const; diff --git a/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc b/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc index 778db1264fb31..18f829fbb8ac2 100644 --- a/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc +++ b/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc @@ -5,6 +5,7 @@ #include "DataFormats/HcalDetId/interface/HcalSubdetector.h" #include "Geometry/HGCalGeometry/interface/HGCalGeometry.h" #include "Geometry/Records/interface/IdealGeometryRecord.h" +#include "Geometry/CaloGeometry/interface/CaloGeometry.h" #include "FWCore/Framework/interface/ESHandle.h" @@ -25,7 +26,6 @@ ClusterTools::ClusterTools(const edm::ParameterSet& conf, edm::ConsumesCollector bhtok(sumes.consumes(conf.getParameter("HGCBHInput"))) {} void ClusterTools::getEvent(const edm::Event& ev) { - rhtools_.getEvent(ev); edm::Handle temp; ev.getByToken(eetok, temp); eerh_ = temp.product(); @@ -35,7 +35,10 @@ void ClusterTools::getEvent(const edm::Event& ev) { bhrh_ = temp.product(); } -void ClusterTools::getEventSetup(const edm::EventSetup& es) { rhtools_.getEventSetup(es); } +void ClusterTools::getEventSetup(const edm::EventSetup& es) { + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); } float ClusterTools::getClusterHadronFraction(const reco::CaloCluster& clus) const { float energy = 0.f, energyHad = 0.f; diff --git a/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc b/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc index c622b11a4bf58..3d3b240d08817 100644 --- a/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc +++ b/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc @@ -65,13 +65,13 @@ namespace { } // namespace -void RecHitTools::getEvent(const edm::Event& ev) {} +//void RecHitTools::getEvent(const edm::Event& ev) {} -void RecHitTools::getEventSetup(const edm::EventSetup& es) { - edm::ESHandle geom; - es.get().get(geom); +void RecHitTools::setGeometry(const CaloGeometry& geom) { + //edm::ESHandle geom; + //es.get().get(geom); - geom_ = geom.product(); + geom_ = &geom; unsigned int wmaxEE(0), wmaxFH(0); auto geomEE = static_cast( geom_->getSubdetectorGeometry(DetId::HGCalEE, ForwardSubdetector::ForwardEmpty)); diff --git a/RecoLocalCalo/HGCalRecProducers/interface/HGCalClusteringAlgoBase.h b/RecoLocalCalo/HGCalRecProducers/interface/HGCalClusteringAlgoBase.h index 3d7dbf4d7b0c0..11dd849ea1f80 100644 --- a/RecoLocalCalo/HGCalRecProducers/interface/HGCalClusteringAlgoBase.h +++ b/RecoLocalCalo/HGCalRecProducers/interface/HGCalClusteringAlgoBase.h @@ -59,7 +59,9 @@ class HGCalClusteringAlgoBase { virtual void getEventSetupPerAlgorithm(const edm::EventSetup &es) {} inline void getEventSetup(const edm::EventSetup &es) { - rhtools_.getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); maxlayer_ = rhtools_.lastLayer(isNose_); lastLayerEE_ = rhtools_.lastLayerEE(isNose_); lastLayerFH_ = rhtools_.lastLayerFH(); diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc b/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc index 64d30e9e76d4e..3d205797b0055 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc @@ -90,7 +90,9 @@ HGCalRecHitWorkerSimple::HGCalRecHitWorkerSimple(const edm::ParameterSet& ps) : } void HGCalRecHitWorkerSimple::set(const edm::EventSetup& es) { - tools_->getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + tools_->setGeometry(*geom); rechitMaker_->set(es); if (hgcEE_isSiFE_) { edm::ESHandle hgceeGeoHandle; diff --git a/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h b/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h index 3809c1ec02500..38f7aa18fa1c9 100644 --- a/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h +++ b/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h @@ -36,7 +36,11 @@ class PFHGCalRecHitCreator : public PFRecHitCreatorBase { const edm::Event& iEvent, const edm::EventSetup& iSetup) override { // Setup RecHitTools to properly compute the position of the HGCAL Cells vie their DetIds - recHitTools_.getEventSetup(iSetup); + { + edm::ESHandle geom; + iSetup.get().get(geom); + recHitTools_.setGeometry(*geom); + } for (unsigned int i = 0; i < qualityTests_.size(); ++i) { qualityTests_.at(i)->beginEvent(iEvent, iSetup); diff --git a/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc b/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc index 4bfe67108cf1d..6b50d402f371c 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc @@ -43,7 +43,11 @@ namespace { void RealisticSimClusterMapper::updateEvent(const edm::Event& ev) { ev.getByToken(simClusterToken_, simClusterH_); } -void RealisticSimClusterMapper::update(const edm::EventSetup& es) { rhtools_.getEventSetup(es); } +void RealisticSimClusterMapper::update(const edm::EventSetup& es) { + edm::ESHandle geom; + es.get().get(geom); + rhtools_.setGeometry(*geom); +} void RealisticSimClusterMapper::buildClusters(const edm::Handle& input, const std::vector& rechitMask, diff --git a/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc b/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc index 5edc3e646cc91..d00c847131898 100644 --- a/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc +++ b/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc @@ -41,7 +41,9 @@ LayerClusterAssociatorByEnergyScoreProducer::~LayerClusterAssociatorByEnergyScor void LayerClusterAssociatorByEnergyScoreProducer::produce(edm::StreamID, edm::Event &iEvent, const edm::EventSetup &es) const { - rhtools_->getEventSetup(es); + edm::ESHandle geom; + es.get().get(geom); + rhtools_->setGeometry(*geom); const std::unordered_map *hitMap = &iEvent.get(hitMap_); diff --git a/Validation/HGCalValidation/plugins/HGCalHitCalibration.cc b/Validation/HGCalValidation/plugins/HGCalHitCalibration.cc index 60804def16afd..ef197e0f9d60d 100644 --- a/Validation/HGCalValidation/plugins/HGCalHitCalibration.cc +++ b/Validation/HGCalValidation/plugins/HGCalHitCalibration.cc @@ -191,7 +191,9 @@ void HGCalHitCalibration::fillWithRecHits(std::map& hit void HGCalHitCalibration::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - recHitTools_.getEventSetup(iSetup); + edm::ESHandle geom; + iSetup.get().get(geom); + recHitTools_.setGeometry(*geom); Handle recHitHandleEE; Handle recHitHandleFH; diff --git a/Validation/HGCalValidation/plugins/HGCalShowerSeparation.cc b/Validation/HGCalValidation/plugins/HGCalShowerSeparation.cc index 12f9f01afa287..fa2b9047ab22a 100644 --- a/Validation/HGCalValidation/plugins/HGCalShowerSeparation.cc +++ b/Validation/HGCalValidation/plugins/HGCalShowerSeparation.cc @@ -160,7 +160,9 @@ void HGCalShowerSeparation::bookHistograms(DQMStore::IBooker& ibooker, void HGCalShowerSeparation::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - recHitTools_.getEventSetup(iSetup); + edm::ESHandle geom; + iSetup.get().get(geom); + recHitTools_.setGeometry(*geom); Handle> caloParticleHandle; iEvent.getByToken(caloParticles_, caloParticleHandle); diff --git a/Validation/HGCalValidation/plugins/HGCalValidator.cc b/Validation/HGCalValidation/plugins/HGCalValidator.cc index 6462c38ec30e1..0ee7f7cc4383c 100644 --- a/Validation/HGCalValidation/plugins/HGCalValidator.cc +++ b/Validation/HGCalValidation/plugins/HGCalValidator.cc @@ -178,7 +178,9 @@ void HGCalValidator::dqmAnalyze(const edm::Event& event, event.getByToken(label_cp_effic, caloParticleHandle); std::vector const& caloParticles = *caloParticleHandle; - tools_->getEventSetup(setup); + edm::ESHandle geom; + setup.get().get(geom); + tools_->setGeometry(*geom); histoProducerAlgo_->setRecHitTools(tools_); edm::Handle LCAssocByEnergyScoreHandle; From c3018f34db27f6628d52df04e7e85fd16dd05a56 Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Fri, 31 Jul 2020 11:21:16 -0500 Subject: [PATCH 2/6] removed eventSetup dependency for HGCalrecHitAbsAlgo --- RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h | 4 +--- .../HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h index 923874af17c0a..d880716869f09 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/HGCalRecHitAbsAlgo.h @@ -14,7 +14,6 @@ #include "DataFormats/HGCRecHit/interface/HGCUncalibratedRecHit.h" #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h" - class HGCalRecHitAbsAlgo { public: /// Constructor @@ -23,8 +22,7 @@ class HGCalRecHitAbsAlgo { /// Destructor virtual ~HGCalRecHitAbsAlgo(){}; - inline void set(const edm::EventSetup& es) { edm::ESHandle geom; - es.get().get(geom); rhtools_.setGeometry(*geom); } + inline void set(const CaloGeometry& geom) { rhtools_.setGeometry(geom); } /// make rechits from dataframes virtual void setLayerWeights(const std::vector& weights){}; diff --git a/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc b/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc index 3d205797b0055..cf461c5bb73d2 100644 --- a/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc +++ b/RecoLocalCalo/HGCalRecProducers/plugins/HGCalRecHitWorkerSimple.cc @@ -93,7 +93,7 @@ void HGCalRecHitWorkerSimple::set(const edm::EventSetup& es) { edm::ESHandle geom; es.get().get(geom); tools_->setGeometry(*geom); - rechitMaker_->set(es); + rechitMaker_->set(*geom); if (hgcEE_isSiFE_) { edm::ESHandle hgceeGeoHandle; es.get().get("HGCalEESensitive", hgceeGeoHandle); From 42158b3edf4eb4c04215c6779528085ad16c24cb Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Fri, 31 Jul 2020 11:21:56 -0500 Subject: [PATCH 3/6] removed duplicate get of ESHandle --- .../PFClusterProducer/interface/PFHGCalRecHitCreator.h | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h b/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h index 38f7aa18fa1c9..73d4a8197bad4 100644 --- a/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h +++ b/RecoParticleFlow/PFClusterProducer/interface/PFHGCalRecHitCreator.h @@ -36,11 +36,9 @@ class PFHGCalRecHitCreator : public PFRecHitCreatorBase { const edm::Event& iEvent, const edm::EventSetup& iSetup) override { // Setup RecHitTools to properly compute the position of the HGCAL Cells vie their DetIds - { - edm::ESHandle geom; - iSetup.get().get(geom); - recHitTools_.setGeometry(*geom); - } + edm::ESHandle geoHandle; + iSetup.get().get(geoHandle); + recHitTools_.setGeometry(*geoHandle); for (unsigned int i = 0; i < qualityTests_.size(); ++i) { qualityTests_.at(i)->beginEvent(iEvent, iSetup); @@ -50,8 +48,6 @@ class PFHGCalRecHitCreator : public PFRecHitCreatorBase { iEvent.getByToken(recHitToken_, recHitHandle); const HGCRecHitCollection& rechits = *recHitHandle; - edm::ESHandle geoHandle; - iSetup.get().get(geoHandle); const CaloGeometry* geom = geoHandle.product(); unsigned skipped_rechits = 0; From ebf903bb6da74fd6f88cc59a36c9f1f1bac6fb9e Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Fri, 31 Jul 2020 16:14:03 -0500 Subject: [PATCH 4/6] added EsGetTokens to modules using RecHitTools --- .../EgammaTools/interface/HGCalEgammaIDHelper.h | 2 ++ RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc | 4 ++-- .../TICL/plugins/FilteredLayerClustersProducer.cc | 10 ++++++---- RecoHGCal/TICL/plugins/SeedingRegionByTracks.cc | 14 +++++++++----- RecoHGCal/TICL/plugins/SeedingRegionByTracks.h | 7 +++++++ RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc | 10 ++++++---- RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc | 6 ++++-- .../LayerClusterAssociatorByEnergyScoreProducer.cc | 8 +++++--- 8 files changed, 41 insertions(+), 20 deletions(-) diff --git a/RecoEgamma/EgammaTools/interface/HGCalEgammaIDHelper.h b/RecoEgamma/EgammaTools/interface/HGCalEgammaIDHelper.h index 0a95ac5f0bbff..0aa4f36c226bd 100644 --- a/RecoEgamma/EgammaTools/interface/HGCalEgammaIDHelper.h +++ b/RecoEgamma/EgammaTools/interface/HGCalEgammaIDHelper.h @@ -14,6 +14,7 @@ #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Utilities/interface/InputTag.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "FWCore/Framework/interface/ConsumesCollector.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" @@ -80,6 +81,7 @@ class HGCalEgammaIDHelper { edm::EDGetTokenT recHitsFH_; edm::EDGetTokenT recHitsBH_; edm::EDGetTokenT> hitMap_; + edm::ESGetToken caloGeometry_; hgcal::RecHitTools recHitTools_; bool debug_; }; diff --git a/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc b/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc index f5958823fd8bb..0a3a929da50d4 100644 --- a/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc +++ b/RecoEgamma/EgammaTools/src/HGCalEgammaIDHelper.cc @@ -16,6 +16,7 @@ HGCalEgammaIDHelper::HGCalEgammaIDHelper(const edm::ParameterSet& iConfig, edm:: recHitsFH_ = iC.consumes(fhRecHitInputTag_); recHitsBH_ = iC.consumes(bhRecHitInputTag_); hitMap_ = iC.consumes>(hitMapInputTag_); + caloGeometry_ = iC.esConsumes(); pcaHelper_.setdEdXWeights(dEdXWeights_); debug_ = iConfig.getUntrackedParameter("debug", false); } @@ -30,8 +31,7 @@ void HGCalEgammaIDHelper::eventInit(const edm::Event& iEvent, const edm::EventSe edm::Handle> hitMapHandle; iEvent.getByToken(hitMap_, hitMapHandle); - edm::ESHandle geom; - iSetup.get().get(geom); + edm::ESHandle geom = iSetup.getHandle(caloGeometry_); recHitTools_.setGeometry(*geom); pcaHelper_.setRecHitTools(&recHitTools_); isoHelper_.setRecHitTools(&recHitTools_); diff --git a/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc b/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc index 729e8ae448301..bd26080cc959a 100644 --- a/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc +++ b/RecoHGCal/TICL/plugins/FilteredLayerClustersProducer.cc @@ -10,6 +10,7 @@ #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "DataFormats/ParticleFlowReco/interface/PFCluster.h" #include "RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h" @@ -30,6 +31,7 @@ class FilteredLayerClustersProducer : public edm::stream::EDProducer<> { private: edm::EDGetTokenT> clusters_token_; edm::EDGetTokenT> clustersMask_token_; + edm::ESGetToken caloGeometry_token_; std::string clusterFilter_; std::string iteration_label_; std::unique_ptr theFilter_; @@ -41,16 +43,16 @@ DEFINE_FWK_MODULE(FilteredLayerClustersProducer); FilteredLayerClustersProducer::FilteredLayerClustersProducer(const edm::ParameterSet& ps) { clusters_token_ = consumes>(ps.getParameter("LayerClusters")); clustersMask_token_ = consumes>(ps.getParameter("LayerClustersInputMask")); + caloGeometry_token_ = esConsumes(); clusterFilter_ = ps.getParameter("clusterFilter"); theFilter_ = ClusterFilterFactory::get()->create(clusterFilter_, ps); iteration_label_ = ps.getParameter("iteration_label"); produces>(iteration_label_); } -void FilteredLayerClustersProducer::beginRun(edm::Run const&, edm::EventSetup const& es) { - edm::ESHandle geom; - es.get().get(geom); - rhtools_.setGeometry(*geom); +void FilteredLayerClustersProducer::beginRun(edm::Run const&, edm::EventSetup const& es) { + edm::ESHandle geom = es.getHandle(caloGeometry_token_); + rhtools_.setGeometry(*geom); } void FilteredLayerClustersProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { diff --git a/RecoHGCal/TICL/plugins/SeedingRegionByTracks.cc b/RecoHGCal/TICL/plugins/SeedingRegionByTracks.cc index e384db9b7fb8e..45ecb51d13907 100644 --- a/RecoHGCal/TICL/plugins/SeedingRegionByTracks.cc +++ b/RecoHGCal/TICL/plugins/SeedingRegionByTracks.cc @@ -17,19 +17,23 @@ SeedingRegionByTracks::SeedingRegionByTracks(const edm::ParameterSet &conf, edm: : SeedingRegionAlgoBase(conf, sumes), tracks_token_(sumes.consumes(conf.getParameter("tracks"))), cutTk_(conf.getParameter("cutTk")), - propName_(conf.getParameter("propagator")) {} + propName_(conf.getParameter("propagator")), + hdc_token_(sumes.esConsumes( + edm::ESInputTag("", detectorName_))), + bfield_token_(sumes.esConsumes()), + propagator_token_(sumes.esConsumes( + edm::ESInputTag("", propName_))) {} SeedingRegionByTracks::~SeedingRegionByTracks() {} void SeedingRegionByTracks::initialize(const edm::EventSetup &es) { - edm::ESHandle hdc; - es.get().get(detectorName_, hdc); + edm::ESHandle hdc = es.getHandle(hdc_token_); hgcons_ = hdc.product(); buildFirstLayers(); - es.get().get(bfield_); - es.get().get(propName_, propagator_); + bfield_ = es.getHandle(bfield_token_); + propagator_ = es.getHandle(propagator_token_); } void SeedingRegionByTracks::makeRegions(const edm::Event &ev, diff --git a/RecoHGCal/TICL/plugins/SeedingRegionByTracks.h b/RecoHGCal/TICL/plugins/SeedingRegionByTracks.h index e1ca3ff7fb827..d8d9f61214c02 100644 --- a/RecoHGCal/TICL/plugins/SeedingRegionByTracks.h +++ b/RecoHGCal/TICL/plugins/SeedingRegionByTracks.h @@ -22,6 +22,10 @@ #include "TrackingTools/Records/interface/TrackingComponentsRecord.h" #include "Geometry/CommonDetUnit/interface/GeomDet.h" #include "CommonTools/Utils/interface/StringCutObjectSelector.h" +#include "FWCore/Utilities/interface/ESGetToken.h" +#include "Geometry/Records/interface/IdealGeometryRecord.h" +#include "MagneticField/Records/interface/IdealMagneticFieldRecord.h" +#include "TrackingTools/Records/interface/TrackingComponentsRecord.h" namespace ticl { class SeedingRegionByTracks final : public SeedingRegionAlgoBase { @@ -45,6 +49,9 @@ namespace ticl { const std::string propName_; edm::ESHandle bfield_; std::unique_ptr firstDisk_[2]; + edm::ESGetToken hdc_token_; + edm::ESGetToken bfield_token_; + edm::ESGetToken propagator_token_; }; } // namespace ticl #endif diff --git a/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc b/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc index a0b60e30e175d..e3b1c633eddbf 100644 --- a/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc +++ b/RecoHGCal/TICL/plugins/TICLLayerTileProducer.cc @@ -7,6 +7,7 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "DataFormats/CaloRecHit/interface/CaloCluster.h" #include "DataFormats/HGCalReco/interface/TICLLayerTile.h" @@ -24,6 +25,7 @@ class TICLLayerTileProducer : public edm::stream::EDProducer<> { private: edm::EDGetTokenT> clusters_token_; edm::EDGetTokenT> clusters_HFNose_token_; + edm::ESGetToken geometry_token_; hgcal::RecHitTools rhtools_; std::string detector_; bool doNose_; @@ -34,6 +36,7 @@ TICLLayerTileProducer::TICLLayerTileProducer(const edm::ParameterSet &ps) clusters_HFNose_token_ = consumes>(ps.getParameter("layer_HFNose_clusters")); clusters_token_ = consumes>(ps.getParameter("layer_clusters")); + geometry_token_ = esConsumes(); doNose_ = (detector_ == "HFNose"); @@ -43,10 +46,9 @@ TICLLayerTileProducer::TICLLayerTileProducer(const edm::ParameterSet &ps) produces(); } -void TICLLayerTileProducer::beginRun(edm::Run const &, edm::EventSetup const &es) { - edm::ESHandle geom; - es.get().get(geom); - rhtools_.setGeometry(*geom); +void TICLLayerTileProducer::beginRun(edm::Run const &, edm::EventSetup const &es) { + edm::ESHandle geom = es.getHandle(geometry_token_); + rhtools_.setGeometry(*geom); } void TICLLayerTileProducer::produce(edm::Event &evt, const edm::EventSetup &) { diff --git a/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc b/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc index f70680e00d660..290eb66a605b5 100644 --- a/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc +++ b/RecoHGCal/TICL/plugins/TrackstersMergeProducer.cc @@ -4,6 +4,7 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "DataFormats/CaloRecHit/interface/CaloCluster.h" #include "DataFormats/HGCalReco/interface/Common.h" @@ -45,6 +46,7 @@ class TrackstersMergeProducer : public edm::stream::EDProducer> seedingTrk_token_; const edm::EDGetTokenT> clusters_token_; const edm::EDGetTokenT> tracks_token_; + const edm::ESGetToken geometry_token_; const bool optimiseAcrossTracksters_; const int eta_bin_window_; const int phi_bin_window_; @@ -76,6 +78,7 @@ TrackstersMergeProducer::TrackstersMergeProducer(const edm::ParameterSet &ps, co seedingTrk_token_(consumes>(ps.getParameter("seedingTrk"))), clusters_token_(consumes>(ps.getParameter("layer_clusters"))), tracks_token_(consumes>(ps.getParameter("tracks"))), + geometry_token_(esConsumes()), optimiseAcrossTracksters_(ps.getParameter("optimiseAcrossTracksters")), eta_bin_window_(ps.getParameter("eta_bin_window")), phi_bin_window_(ps.getParameter("phi_bin_window")), @@ -143,8 +146,7 @@ void TrackstersMergeProducer::dumpTrackster(const Trackster &t) const { } void TrackstersMergeProducer::produce(edm::Event &evt, const edm::EventSetup &es) { - edm::ESHandle geom; - es.get().get(geom); + edm::ESHandle geom = es.getHandle(geometry_token_); rhtools_.setGeometry(*geom); auto result = std::make_unique>(); auto mergedTrackstersTRK = std::make_unique>(); diff --git a/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc b/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc index d00c847131898..760de51a17bb2 100644 --- a/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc +++ b/SimCalorimetry/HGCalAssociatorProducers/plugins/LayerClusterAssociatorByEnergyScoreProducer.cc @@ -9,6 +9,7 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/EDGetToken.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "SimDataFormats/Associations/interface/LayerClusterToCaloParticleAssociator.h" #include "LayerClusterAssociatorByEnergyScoreImpl.h" @@ -23,12 +24,14 @@ class LayerClusterAssociatorByEnergyScoreProducer : public edm::global::EDProduc private: void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override; edm::EDGetTokenT> hitMap_; + edm::ESGetToken caloGeometry_; const bool hardScatterOnly_; std::shared_ptr rhtools_; }; LayerClusterAssociatorByEnergyScoreProducer::LayerClusterAssociatorByEnergyScoreProducer(const edm::ParameterSet &ps) : hitMap_(consumes>(ps.getParameter("hitMapTag"))), + caloGeometry_(esConsumes()), hardScatterOnly_(ps.getParameter("hardScatterOnly")) { rhtools_.reset(new hgcal::RecHitTools()); @@ -41,9 +44,8 @@ LayerClusterAssociatorByEnergyScoreProducer::~LayerClusterAssociatorByEnergyScor void LayerClusterAssociatorByEnergyScoreProducer::produce(edm::StreamID, edm::Event &iEvent, const edm::EventSetup &es) const { - edm::ESHandle geom; - es.get().get(geom); - rhtools_->setGeometry(*geom); + edm::ESHandle geom = es.getHandle(caloGeometry_); + rhtools_->setGeometry(*geom); const std::unordered_map *hitMap = &iEvent.get(hitMap_); From fd3e2ba6befcf2e915e0e451ed3a7a6261a74656 Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Sat, 1 Aug 2020 11:16:16 -0500 Subject: [PATCH 5/6] clang format --- RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc | 3 ++- .../plugins/SimMappers/RealisticSimClusterMapper.cc | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc b/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc index 18f829fbb8ac2..098c5b3990510 100644 --- a/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc +++ b/RecoLocalCalo/HGCalRecAlgos/src/ClusterTools.cc @@ -38,7 +38,8 @@ void ClusterTools::getEvent(const edm::Event& ev) { void ClusterTools::getEventSetup(const edm::EventSetup& es) { edm::ESHandle geom; es.get().get(geom); - rhtools_.setGeometry(*geom); } + rhtools_.setGeometry(*geom); +} float ClusterTools::getClusterHadronFraction(const reco::CaloCluster& clus) const { float energy = 0.f, energyHad = 0.f; diff --git a/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc b/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc index 6b50d402f371c..9022fbf721593 100644 --- a/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc +++ b/RecoParticleFlow/PFClusterProducer/plugins/SimMappers/RealisticSimClusterMapper.cc @@ -43,9 +43,9 @@ namespace { void RealisticSimClusterMapper::updateEvent(const edm::Event& ev) { ev.getByToken(simClusterToken_, simClusterH_); } -void RealisticSimClusterMapper::update(const edm::EventSetup& es) { +void RealisticSimClusterMapper::update(const edm::EventSetup& es) { edm::ESHandle geom; - es.get().get(geom); + es.get().get(geom); rhtools_.setGeometry(*geom); } From 6e129b97ff86d4813e69fded5d627d424aa3a0c6 Mon Sep 17 00:00:00 2001 From: Ben Jones Date: Thu, 6 Aug 2020 10:48:11 -0500 Subject: [PATCH 6/6] removed old commented out code --- RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h | 2 -- RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc | 5 ----- 2 files changed, 7 deletions(-) diff --git a/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h b/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h index a90996c8af794..f18c1cafb8d33 100644 --- a/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h +++ b/RecoLocalCalo/HGCalRecAlgos/interface/RecHitTools.h @@ -25,8 +25,6 @@ namespace hgcal { RecHitTools() : geom_(nullptr), fhOffset_(0), bhOffset_(0), fhLastLayer_(0), noseLastLayer_(0), geometryType_(0) {} ~RecHitTools() {} - //void getEvent(const edm::Event&); - //void getEventSetup(const edm::EventSetup&); void setGeometry(CaloGeometry const&); const CaloSubdetectorGeometry* getSubdetectorGeometry(const DetId& id) const; diff --git a/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc b/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc index 3d3b240d08817..2d99384d5b197 100644 --- a/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc +++ b/RecoLocalCalo/HGCalRecAlgos/src/RecHitTools.cc @@ -65,12 +65,7 @@ namespace { } // namespace -//void RecHitTools::getEvent(const edm::Event& ev) {} - void RecHitTools::setGeometry(const CaloGeometry& geom) { - //edm::ESHandle geom; - //es.get().get(geom); - geom_ = &geom; unsigned int wmaxEE(0), wmaxFH(0); auto geomEE = static_cast(