From 4eeaf1f12f4c2c78e6e220fccd71908e6f564aa4 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck <wdconinc@gmail.com> Date: Mon, 15 Aug 2022 18:51:14 +0000 Subject: [PATCH] fix: template instantiation for `vector_x<edm4hep::Vector2f>` --- utils/include/eicd/vector_utils_legacy.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/utils/include/eicd/vector_utils_legacy.h b/utils/include/eicd/vector_utils_legacy.h index c0b341f..92d3898 100644 --- a/utils/include/eicd/vector_utils_legacy.h +++ b/utils/include/eicd/vector_utils_legacy.h @@ -8,6 +8,7 @@ #else #include <cmath> +#include <edm4hep/Vector2f.h> #include <edm4hep/Vector3f.h> #include <eicd/Vector2f.h> #include <eicd/Vector3f.h> @@ -34,11 +35,24 @@ template <> inline auto vector_y<eicd::Vector2f>(const eicd::Vector2f& v) { return v.b; } +// Vector2f uses a,b instead of x,y +template <> +inline auto vector_x<edm4hep::Vector2f>(const edm4hep::Vector2f& v) { + return v.a; +} +template <> +inline auto vector_y<edm4hep::Vector2f>(const edm4hep::Vector2f& v) { + return v.b; +} // no z-component for 2D vectors template <> inline auto vector_z<eicd::Vector2f>(const eicd::Vector2f& v) { return 0; } +template <> +inline auto vector_z<edm4hep::Vector2f>(const edm4hep::Vector2f& v) { + return 0; +} // inline edm4hep::Vector2f VectorFromPolar(const double r, const double theta) // { -- GitLab