Skip to content

Commit 6828a9f

Browse files
committed
use edm::ESWatcher to see if records change
1 parent ad22b28 commit 6828a9f

File tree

5 files changed

+13
-13
lines changed

5 files changed

+13
-13
lines changed

RecoEgamma/EgammaElectronAlgos/interface/ElectronSeedGenerator.h

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
#include "FWCore/Framework/interface/EventSetup.h"
3636
#include "FWCore/Framework/interface/Event.h"
3737
#include "FWCore/Framework/interface/ESHandle.h"
38+
#include "FWCore/Framework/interface/ESWatcher.h"
3839
#include "FWCore/Framework/interface/EDConsumerBase.h"
3940

4041
#include "TrackingTools/KalmanUpdators/interface/KFUpdator.h"
@@ -74,6 +75,8 @@ class ElectronSeedGenerator {
7475
const edm::EDGetTokenT<reco::BeamSpot> beamSpotTag_;
7576
const edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> magFieldToken_;
7677
const edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> trackerGeometryToken_;
78+
edm::ESWatcher<IdealMagneticFieldRecord> magneticFieldWatcher_;
79+
edm::ESWatcher<TrackerDigiGeometryRecord> trackerGeometryWatcher_;
7780

7881
const float lowPtThresh_;
7982
const float highPtThresh_;
@@ -90,11 +93,6 @@ class ElectronSeedGenerator {
9093

9194
const std::vector<const TrajectorySeedCollection*>* initialSeedCollectionVector_ = nullptr;
9295

93-
// keep cacheIds to get records only when necessary
94-
unsigned long long cacheIDMagField_ = 0;
95-
unsigned long long cacheIDCkfComp_ = 0;
96-
unsigned long long cacheIDTrkGeom_ = 0;
97-
9896
const bool useRecoVertex_;
9997

10098
const float deltaPhi2B_;

RecoEgamma/EgammaElectronAlgos/src/ElectronSeedGenerator.cc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,9 @@ ElectronSeedGenerator::ElectronSeedGenerator(const edm::ParameterSet &pset,
164164
useRecoVertex_) {}
165165

166166
void ElectronSeedGenerator::setupES(const edm::EventSetup &setup) {
167-
matcher_.setES(setup.getData(magFieldToken_), setup.getData(trackerGeometryToken_));
167+
if (magneticFieldWatcher_.check(setup) || trackerGeometryWatcher_.check(setup)) {
168+
matcher_.setES(setup.getData(magFieldToken_), setup.getData(trackerGeometryToken_));
169+
}
168170
}
169171

170172
void ElectronSeedGenerator::run(edm::Event &e,

RecoEgamma/EgammaElectronProducers/plugins/ElectronSeedProducer.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ ElectronSeedProducer::ElectronSeedProducer(const edm::ParameterSet& conf)
7272
auto theconsumes = consumesCollector();
7373

7474
// new beamSpot tag
75-
beamSpotTag_ = consumes<reco::BeamSpot>(conf.getParameter<edm::InputTag>("beamSpot"));
75+
beamSpotTag_ = consumes(conf.getParameter<edm::InputTag>("beamSpot"));
7676

7777
// for H/E
7878
applyHOverECut_ = conf.getParameter<bool>("applyHOverECut");
@@ -81,7 +81,7 @@ ElectronSeedProducer::ElectronSeedProducer(const edm::ParameterSet& conf)
8181
hcalCfg.hOverEConeSize = conf.getParameter<double>("hOverEConeSize");
8282
if (hcalCfg.hOverEConeSize > 0) {
8383
hcalCfg.useTowers = true;
84-
hcalCfg.hcalTowers = consumes<CaloTowerCollection>(conf.getParameter<edm::InputTag>("hcalTowers"));
84+
hcalCfg.hcalTowers = consumes(conf.getParameter<edm::InputTag>("hcalTowers"));
8585
hcalCfg.hOverEPtMin = conf.getParameter<double>("hOverEPtMin");
8686
}
8787
hcalHelper_ = std::make_unique<ElectronHcalHelper>(hcalCfg, consumesCollector());

RecoEgamma/EgammaElectronProducers/plugins/TrackingRegionsFromSuperClustersProducer.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -172,15 +172,15 @@ TrackingRegionsFromSuperClustersProducer::TrackingRegionsFromSuperClustersProduc
172172
auto measTrackerEventTag = regionPSet.getParameter<edm::InputTag>("measurementTrackerEvent");
173173

174174
if (useZInVertex_) {
175-
verticesToken_ = iC.consumes<reco::VertexCollection>(verticesTag);
175+
verticesToken_ = iC.consumes(verticesTag);
176176
} else {
177-
beamSpotToken_ = iC.consumes<reco::BeamSpot>(beamSpotTag);
177+
beamSpotToken_ = iC.consumes(beamSpotTag);
178178
}
179179
if (whereToUseMeasTracker_ != RectangularEtaPhiTrackingRegion::UseMeasurementTracker::kNever) {
180-
measTrackerEventToken_ = iC.consumes<MeasurementTrackerEvent>(measTrackerEventTag);
180+
measTrackerEventToken_ = iC.consumes(measTrackerEventTag);
181181
}
182182
for (const auto& tag : superClustersTags) {
183-
superClustersTokens_.emplace_back(iC.consumes<std::vector<reco::SuperClusterRef>>(tag));
183+
superClustersTokens_.emplace_back(iC.consumes(tag));
184184
}
185185
}
186186

RecoLocalCalo/HGCalRecAlgos/interface/ClusterTools.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
#include "DataFormats/HGCRecHit/interface/HGCRecHitCollections.h"
1010
#include "DataFormats/CaloRecHit/interface/CaloCluster.h"
1111
#include "DataFormats/ParticleFlowReco/interface/HGCalMultiCluster.h"
12-
#include "Geometry/Records/interface/IdealGeometryRecord.h"
1312
#include "Geometry/CaloGeometry/interface/CaloGeometry.h"
13+
#include "Geometry/Records/interface/CaloGeometryRecord.h"
1414

1515
#include "FWCore/ParameterSet/interface/ParameterSet.h"
1616
#include "FWCore/Framework/interface/ConsumesCollector.h"

0 commit comments

Comments
 (0)