From 656dd032b53e610b6de34e8b80dab33c883cbfed Mon Sep 17 00:00:00 2001 From: John Chapman <John.Chapman@cern.ch> Date: Fri, 17 May 2024 08:33:02 +0200 Subject: [PATCH] Add new TruthBinding::childTruthBinding method to simplify creating TruthBindings for child particles --- Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.h | 3 +++ Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.icc | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.h b/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.h index c5ea7705b414..745f107e69ce 100644 --- a/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.h +++ b/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.h @@ -59,6 +59,9 @@ namespace ISF { inline HepMC::ConstGenParticlePtr getGenerationZeroTruthParticle() const; inline void setGenerationZeroTruthParticle(HepMC::GenParticlePtr p); + /** Create a TruthBinding for a child particle */ + inline TruthBinding* childTruthBinding(HepMC::GenParticlePtr childP) const; + private: HepMC::GenParticlePtr m_truthParticle{}; //!< pointer to particle in MC truth HepMC::GenParticlePtr m_primaryTruthParticle{}; //!< pointer to corresponding primary (generator) particle diff --git a/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.icc b/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.icc index a8fe524692c2..36e1a3e046c1 100644 --- a/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.icc +++ b/Simulation/ISF/ISF_Core/ISF_Event/ISF_Event/TruthBinding.icc @@ -88,4 +88,9 @@ namespace ISF { HepMC::ConstGenParticlePtr TruthBinding::getGenerationZeroTruthParticle() const { return m_generationZeroTruthParticle; } void TruthBinding::setGenerationZeroTruthParticle(HepMC::GenParticlePtr p) { m_generationZeroTruthParticle = p; } + /** Create a TruthBinding for a child particle */ + TruthBinding* TruthBinding::childTruthBinding(HepMC::GenParticlePtr childP) const { + return new TruthBinding(childP, m_primaryTruthParticle, childP); + } + } // end ISF namespace -- GitLab