From dcc5fae24b3f05c27609ada52bace755881647ed Mon Sep 17 00:00:00 2001
From: Olivier Stasse <ostasse@laas.fr>
Date: Wed, 21 Sep 2016 07:23:50 +0200
Subject: [PATCH] Fix pb with pinocchio-devel getFrameParent->getFrameId Fix pb
 with unitary tests.

---
 cmake                                |  2 +-
 src/RobotDynamics/pinocchiorobot.cpp | 12 ++++-----
 tests/CMakeLists.txt                 | 37 +++++++++++++++++++++++-----
 3 files changed, 38 insertions(+), 13 deletions(-)

diff --git a/cmake b/cmake
index 5663a002..1ad98457 160000
--- a/cmake
+++ b/cmake
@@ -1 +1 @@
-Subproject commit 5663a002a905b5c8d84a69d8e74044a8e34a48ed
+Subproject commit 1ad984575ca91a4e19ce9eb9d092e92d09fcb7fb
diff --git a/src/RobotDynamics/pinocchiorobot.cpp b/src/RobotDynamics/pinocchiorobot.cpp
index 79625915..80f73be6 100644
--- a/src/RobotDynamics/pinocchiorobot.cpp
+++ b/src/RobotDynamics/pinocchiorobot.cpp
@@ -144,12 +144,12 @@ bool PinocchioRobot::initializeRobotModelAndData(se3::Model * robotModel,
   m_robotModel = robotModel;
 
   // initialize the short cut for the joint ids
-  m_chest = m_robotModel->getFrameParent("torso");
-  m_waist = m_robotModel->getFrameParent("BODY");
-  m_leftFoot.associatedAnkle  = m_robotModel->getFrameParent("l_ankle");
-  m_rightFoot.associatedAnkle = m_robotModel->getFrameParent("r_ankle");
-  m_leftWrist  = m_robotModel->getFrameParent("l_wrist");
-  m_rightWrist = m_robotModel->getFrameParent("r_wrist");
+  m_chest = m_robotModel->getFrameId("torso");
+  m_waist = m_robotModel->getFrameId("BODY");
+  m_leftFoot.associatedAnkle  = m_robotModel->getFrameId("l_ankle");
+  m_rightFoot.associatedAnkle = m_robotModel->getFrameId("r_ankle");
+  m_leftWrist  = m_robotModel->getFrameId("l_wrist");
+  m_rightWrist = m_robotModel->getFrameId("r_wrist");
   DetectAutomaticallyShoulders();
 
   // intialize the "initial pose" (q=[0]) data
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index fdc7c22a..11803503 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -113,6 +113,31 @@ MACRO(ADD_JRL_WALKGEN_TEST test_arg test_file_name)
 
 ENDMACRO(ADD_JRL_WALKGEN_TEST)
 
+MACRO(ADD_JRL_WALKGEN_EXE test_arg test_file_name)
+
+  SET(test_name "${test_arg}${BITS}")
+
+  ADD_EXECUTABLE(${test_name}
+    ${test_file_name}
+    TestObject.cpp
+    CommonTools.cpp
+    ClockCPUTime.cpp
+    ../src/portability/gettimeofday.cc
+  )
+
+  MESSAGE(STATUS "Prepare test : " ${test_name})
+  SET(urdfpath
+    ${SIMPLE_HUMANOID_DESCRIPTION_PKGDATAROOTDIR}/simple_humanoid_description/urdf/simple_humanoid.urdf
+  )
+  SET(srdfpath
+    ${SIMPLE_HUMANOID_DESCRIPTION_PKGDATAROOTDIR}/simple_humanoid_description/srdf/simple_humanoid.srdf
+  )
+
+  LIST(APPEND LOGGING_WATCHED_VARIABLES urdfpath srdfpath)
+
+  TARGET_LINK_LIBRARIES(${test_name} ${PROJECT_NAME})
+  PKG_CONFIG_USE_DEPENDENCY(${test_name} jrl-mal)
+ENDMACRO(ADD_JRL_WALKGEN_EXE)
 
 #######################
 ## Test Morisawa 2007 #
@@ -123,12 +148,12 @@ ENDMACRO(ADD_JRL_WALKGEN_TEST)
 
 # the following disabled test case are just useful code for offline
 # motion generation using the specialized inverse kinmatics of a robot
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007ShortWalk TestMorisawa2007.cpp)
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007Climbing TestMorisawa2007.cpp)
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007GoingDown TestMorisawa2007.cpp)
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007SteppingStones TestMorisawa2007.cpp)
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007WalkingOnBeam TestMorisawa2007.cpp)
-#ADD_JRL_WALKGEN_TEST(TestMorisawa2007GoThroughWall TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007ShortWalk TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007Climbing TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007GoingDown TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007SteppingStones TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007WalkingOnBeam TestMorisawa2007.cpp)
+ADD_JRL_WALKGEN_EXE(TestMorisawa2007GoThroughWall TestMorisawa2007.cpp)
 
 ####################
 ## Test Herdt 2010 #
-- 
GitLab