From 22f4d59113b35b6d19c1ac0083a60b725f4ff2ca Mon Sep 17 00:00:00 2001 From: Valenza Florian <fvalenza@laas.fr> Date: Tue, 13 Sep 2016 12:07:44 +0200 Subject: [PATCH] [C++][Minor] Added doc for using boost make_recursive_variant + minir clean --- bindings/python/joint.hpp | 2 +- src/multibody/joint/joint-composite.hpp | 1 - src/multibody/joint/joint-variant.hpp | 5 +++++ src/multibody/model.hpp | 1 - src/multibody/visitor.hpp | 10 ---------- 5 files changed, 6 insertions(+), 13 deletions(-) diff --git a/bindings/python/joint.hpp b/bindings/python/joint.hpp index 9014d720f..094bb7f02 100644 --- a/bindings/python/joint.hpp +++ b/bindings/python/joint.hpp @@ -20,7 +20,7 @@ #include <eigenpy/exception.hpp> #include <eigenpy/eigenpy.hpp> -#include "pinocchio/multibody/joint/joint.hpp" +#include "pinocchio/multibody/joint/joint-composite.hpp" namespace se3 { diff --git a/src/multibody/joint/joint-composite.hpp b/src/multibody/joint/joint-composite.hpp index 26b7e3ac1..82585752e 100644 --- a/src/multibody/joint/joint-composite.hpp +++ b/src/multibody/joint/joint-composite.hpp @@ -19,7 +19,6 @@ #define __se3_joint_composite_hpp__ #include "pinocchio/assert.hpp" -// #include "pinocchio/multibody/joint/joint-basic-visitors.hpp" #include "pinocchio/multibody/joint/joint.hpp" EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(se3::SE3) diff --git a/src/multibody/joint/joint-variant.hpp b/src/multibody/joint/joint-variant.hpp index 64fdacff9..b1e2b43c2 100644 --- a/src/multibody/joint/joint-variant.hpp +++ b/src/multibody/joint/joint-variant.hpp @@ -42,6 +42,11 @@ namespace se3 struct JointModelComposite; struct JointDataComposite; + // The JointModelComposite contains several JointModel (which are JointModelVariant). Hence there is a circular + // dependency between JointModelComposite and JointModelVariant that can be resolved with the use of boost::recursive_variant + // For more details, see http://www.boost.org/doc/libs/1_58_0/doc/html/variant/tutorial.html#variant.tutorial.recursive + // + // The same applies for JointDataComposite typedef boost::variant< JointModelRX, JointModelRY, JointModelRZ, JointModelRevoluteUnaligned, JointModelSpherical, JointModelSphericalZYX, JointModelPX, JointModelPY, JointModelPZ, JointModelPrismaticUnaligned, JointModelFreeFlyer, JointModelPlanar, JointModelTranslation, diff --git a/src/multibody/model.hpp b/src/multibody/model.hpp index 38f2a0f2b..6e478a9bc 100644 --- a/src/multibody/model.hpp +++ b/src/multibody/model.hpp @@ -26,7 +26,6 @@ #include "pinocchio/spatial/inertia.hpp" #include "pinocchio/multibody/fwd.hpp" #include "pinocchio/multibody/frame.hpp" -// #include "pinocchio/multibody/joint/joint.hpp" #include "pinocchio/multibody/joint/joint-composite.hpp" #include "pinocchio/deprecated.hh" #include "pinocchio/tools/string-generator.hpp" diff --git a/src/multibody/visitor.hpp b/src/multibody/visitor.hpp index e430fd5ad..d0cce5bb5 100644 --- a/src/multibody/visitor.hpp +++ b/src/multibody/visitor.hpp @@ -61,16 +61,6 @@ namespace se3 static_cast<const Visitor*>(this)->args)); } - // void operator() (const JointModelBase<JointModelComposite> & jmodel) const - // { - // JointDataVariant& jdataSpec = static_cast<const Visitor*>(this)->jdata; - - // bf::invoke(&Visitor::template algo<JointModelComposite>, - // bf::append2(jmodel, - // boost::ref(boost::get<JointDataComposite>(jdataSpec)), - // static_cast<const Visitor*>(this)->args)); - // } - template<typename ArgsTmp> static void run(const JointModelVariant & jmodel, JointDataVariant & jdata, -- GitLab