From 28294afbb9f8d7da759568b4d6e7f44cb9e2586f Mon Sep 17 00:00:00 2001 From: Paul Gessinger <paul.gessinger@cern.ch> Date: Fri, 15 Jul 2022 17:16:24 +0200 Subject: [PATCH] Make VariantParameters::value_or const --- DDRec/include/DDRec/DetectorData.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/DDRec/include/DDRec/DetectorData.h b/DDRec/include/DDRec/DetectorData.h index 50af66a03..dcf1162d4 100644 --- a/DDRec/include/DDRec/DetectorData.h +++ b/DDRec/include/DDRec/DetectorData.h @@ -517,13 +517,22 @@ namespace dd4hep { const T& get(const std::string& key) const { auto it = variantParameters.find(key); if(it == variantParameters.end()) { - throw std::runtime_error{"Key "+key+"not found"}; + throw std::runtime_error{"Key "+key+" not found"}; } return boost::get<T>(it->second); } template <typename T> - T value_or(const std::string& key, T alternative) { + T& get(const std::string& key) { + auto it = variantParameters.find(key); + if(it == variantParameters.end()) { + throw std::runtime_error{"Key "+key+" not found"}; + } + return boost::get<T>(it->second); + } + + template <typename T> + T value_or(const std::string& key, T alternative) const { auto it = variantParameters.find(key); if(it == variantParameters.end()) { return alternative; -- GitLab