17 return StatusCode::SUCCESS;
23 ATH_CHECK(prdTruth.record(std::make_unique<PRD_MultiTruthCollection>()));
26 if (!readHandle.isPresent()) {
28 return StatusCode::FAILURE;
31 if (!truthHit->genParticleLink().isValid()){
34 const auto& pl{truthHit->genParticleLink()};
38 std::pair<truthiter, truthiter>
r = prdTruth->equal_range(prdId);
39 if (
r.second == std::find_if(
r.first,
r.second,
40 [pl](
const PRD_MultiTruthCollection::value_type& prd_to_truth) {
41 return prd_to_truth.second == pl;
43 prdTruth->insert(std::make_pair(prdId, pl));
46 return StatusCode::SUCCESS;