From fc862ab02c60dcdaf327ed7702100954f4290d75 Mon Sep 17 00:00:00 2001 From: Thomas Madlener <thomas.madlener@desy.de> Date: Mon, 13 Feb 2023 14:59:10 +0100 Subject: [PATCH] Make storing of double parameters in EDM4hep version dependent --- DDG4/edm4hep/Geant4Output2EDM4hep.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp index f22d2beca..4c6a37f67 100644 --- a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp +++ b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp @@ -23,6 +23,7 @@ /// podio include files #include <podio/Frame.h> #include <podio/ROOTFrameWriter.h> +#include <podio/podioVersion.h> /// Namespace for the AIDA detector description toolkit namespace dd4hep { @@ -107,10 +108,13 @@ namespace dd4hep { printout(DEBUG, "Geant4OutputEDM4hep", "Saving event parameter: %s", p.first); frame.putParameter(p.first, p.second); } +#if podio_VERSION_MAJOR > 0 || podio_VERSION_MINOR > 16 || podio_VERSION_PATCH > 2 + // This functionality is only present in podio > 0.16.2 for (auto const& p: this->dblParameters()) { printout(DEBUG, "Geant4OutputEDM4hep", "Saving event parameter: %s", p.first); frame.putParameter(p.first, p.second); } +#endif } } // End namespace sim } // End namespace dd4hep @@ -378,7 +382,10 @@ void Geant4Output2EDM4hep::saveEvent(OutputContext<G4Event>& ctxt) { runNumber = parameters->runNumber() + runNumberOffset; eventNumber = parameters->eventNumber() + eventNumberOffset; parameters->extractParameters(m_frame); +#if podio_VERSION_MAJOR > 0 || podio_VERSION_MINOR > 16 || podio_VERSION_PATCH > 2 + // This functionality is only present in podio > 0.16.2 eventWeight = m_frame.getParameter<double>("EventWeights"); +#endif } else { // ... or from DD4hep framework runNumber = m_runNo + runNumberOffset; eventNumber = ctxt.context->GetEventID() + eventNumberOffset; -- GitLab