Skip to content

Commit dad4507

Browse files
committed
further protections for HGCalValidation for HLT
1 parent 05248a5 commit dad4507

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

RecoHGCal/TICL/plugins/SimTrackstersProducer.cc

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,7 @@ void SimTrackstersProducer::produce(edm::Event& evt, const edm::EventSetup& es)
248248
if (!layerClustersHandle.isValid() || !layerClustersTimesHandle.isValid() || !inputClusterMaskHandle.isValid()) {
249249
edm::LogWarning("SimTrackstersProducer") << "Missing input collections. Producing empty outputs.";
250250

251+
evt.put(std::move(result));
251252
evt.put(std::move(result_ticlCandidates));
252253
evt.put(std::move(output_mask));
253254
evt.put(std::move(result_fromCP), "fromCPs");
@@ -280,7 +281,22 @@ void SimTrackstersProducer::produce(edm::Event& evt, const edm::EventSetup& es)
280281
evt.getByToken(trackingParticleToken_, trackingParticles_h);
281282
edm::Handle<std::vector<reco::Track>> recoTracks_h;
282283
evt.getByToken(recoTracksToken_, recoTracks_h);
283-
const auto& TPtoRecoTrackMap = evt.get(associatormapStRsToken_);
284+
285+
//TP to reco track map
286+
const auto TPtoRecoTrackMapHandle = evt.getHandle(associatormapStRsToken_);
287+
if (!TPtoRecoTrackMapHandle.isValid()) {
288+
edm::LogWarning("SimTrackstersProducer") << "Missing TP->RecoTrack association.";
289+
evt.put(std::move(result));
290+
evt.put(std::move(result_ticlCandidates));
291+
evt.put(std::move(output_mask));
292+
evt.put(std::move(result_fromCP), "fromCPs");
293+
evt.put(std::move(resultPU), "PU");
294+
evt.put(std::move(output_mask_fromCP), "fromCPs");
295+
evt.put(std::move(cpToSc_SimTrackstersMap));
296+
return;
297+
}
298+
const auto& TPtoRecoTrackMap = *TPtoRecoTrackMapHandle;
299+
284300
const auto& simTrackToTPMap = evt.get(associationSimTrackToTPToken_);
285301
const auto& recoTracks = *recoTracks_h;
286302

Validation/HGCalValidation/plugins/HGCalValidator.cc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,8 @@ void HGCalValidator::dqmAnalyze(const edm::Event& event,
420420
for (const auto& token : hits_tokens_) {
421421
Handle<HGCRecHitCollection> hitsHandle;
422422
event.getByToken(token, hitsHandle);
423+
if (!hitsHandle.isValid())
424+
continue;
423425
rechitManager.addVector(*hitsHandle);
424426
}
425427

@@ -451,6 +453,10 @@ void HGCalValidator::dqmAnalyze(const edm::Event& event,
451453
//Layer clusters
452454
edm::Handle<reco::CaloClusterCollection> clusterHandle;
453455
event.getByToken(layerclusters_, clusterHandle);
456+
457+
if (!clusterHandle.isValid())
458+
return;
459+
454460
const reco::CaloClusterCollection& clusters = *clusterHandle;
455461

456462
std::vector<edm::Handle<TracksterToTracksterMap>> tracksterToTracksterMapsHandles;

0 commit comments

Comments
 (0)