From 321df8cfec09f1ff4a0900f26e5086f4b5df3812 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Thu, 9 Jan 2025 14:57:11 +0100 Subject: [PATCH] spatial: Add fwd decl in some se3 headers to avoid issue with cppadcg --- include/pinocchio/spatial/se3-expr-base.hpp | 12 ++++++++++++ include/pinocchio/spatial/se3-tpl.hpp | 8 ++++++++ 2 files changed, 20 insertions(+) diff --git a/include/pinocchio/spatial/se3-expr-base.hpp b/include/pinocchio/spatial/se3-expr-base.hpp index a27f7be49..b45d13dec 100644 --- a/include/pinocchio/spatial/se3-expr-base.hpp +++ b/include/pinocchio/spatial/se3-expr-base.hpp @@ -7,6 +7,18 @@ namespace pinocchio { + // Forward declaration + // TODO: This should go into spatial/fwd.hpp but because of a strange include path + // in context/cppadcg.hpp we can include se3.hpp without including spatial/fwd.hpp first. + template + struct SE3ExprBase; + template + struct SE3ExprNoalias; + template + struct SE3ExprProduct; + template + SE3ExprProduct + make_se3_expr_product(RotProduct rot_prod, TransProduct trans_prod); // Forward traits typedef #define PINOCCHIO_SE3_EXPR_TYPEDEF_TPL(Derived) \ diff --git a/include/pinocchio/spatial/se3-tpl.hpp b/include/pinocchio/spatial/se3-tpl.hpp index d3d4a48f6..21b5fc80b 100644 --- a/include/pinocchio/spatial/se3-tpl.hpp +++ b/include/pinocchio/spatial/se3-tpl.hpp @@ -17,6 +17,14 @@ namespace pinocchio { + // Forward declarations + // TODO: This should go into spatial/fwd.hpp but because of a strange include path + // in context/cppadcg.hpp we can include se3.hpp without including spatial/fwd.hpp first. + template + struct SE3TplExpr; + template + struct SE3TplConstExpr; + template struct traits> {