From 959400cfc381414e894c15ddca2233a6d4989126 Mon Sep 17 00:00:00 2001
From: Florent Lamiraux <florent@laas.fr>
Date: Fri, 11 Feb 2011 17:53:57 +0100
Subject: [PATCH] If device is provided, do not create it in Hrp2 class.

---
 src/dynamic_graph/sot/dynamics/hrp2.py.in       | 17 ++++++++++-------
 .../sot/dynamics/humanoid_robot.py              |  6 ++++++
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/src/dynamic_graph/sot/dynamics/hrp2.py.in b/src/dynamic_graph/sot/dynamics/hrp2.py.in
index fb7303f..d4c2683 100755
--- a/src/dynamic_graph/sot/dynamics/hrp2.py.in
+++ b/src/dynamic_graph/sot/dynamics/hrp2.py.in
@@ -38,16 +38,17 @@ class Hrp2(AbstractHumanoidRobot):
         res = (config + 10*(0.,))
         return res
 
-    def __init__(self, name, modelDir, xmlDir):
+    def __init__(self, name, modelDir, xmlDir, device):
         AbstractHumanoidRobot.__init__ (self, name)
 
+        self.device = device
         modelName = 'HRP2JRLmainsmall.wrl'
         specificitiesPath = xmlDir + '/HRP2SpecificitiesSmall.xml'
         jointRankPath = xmlDir + '/HRP2LinkJointRankSmall.xml'
 
         self.dynamic = DynamicHrp2(self.name + '.dynamics')
         self.dynamic.setFiles(modelDir, modelName,
-                                   specificitiesPath, jointRankPath)
+                                  specificitiesPath, jointRankPath)
         self.dynamic.parse()
         self.dimension = self.dynamic.getDimension()
         if self.dimension != len(self.halfSitting):
@@ -76,9 +77,10 @@ class Hrp2Jrl (Hrp2):
 
     def __init__(self, name,
                  modelDir = hrp2_10_pkgdatarootdir,
-                 xmlDir = hrp2_10_pkgdatarootdir):
-        Hrp2.__init__(self, modelDir, xmlDir)
-    
+                 xmlDir = hrp2_10_pkgdatarootdir,
+                 device = None):
+        Hrp2.__init__(self, name, modelDir, xmlDir, device)
+
 class Hrp2Laas (Hrp2):
     """
     This class instanciates LAAS Hrp2 robot
@@ -101,5 +103,6 @@ class Hrp2Laas (Hrp2):
 
     def __init__(self, name,
                  modelDir = hrp2_14_pkgdatarootdir,
-                 xmlDir = hrp2_14_pkgdatarootdir):
-        Hrp2.__init__(self, modelDir, xmlDir)
+                 xmlDir = hrp2_14_pkgdatarootdir,
+                 device = None):
+        Hrp2.__init__(self, name, modelDir, xmlDir, device)
diff --git a/src/dynamic_graph/sot/dynamics/humanoid_robot.py b/src/dynamic_graph/sot/dynamics/humanoid_robot.py
index 11e8161..45d221e 100755
--- a/src/dynamic_graph/sot/dynamics/humanoid_robot.py
+++ b/src/dynamic_graph/sot/dynamics/humanoid_robot.py
@@ -68,6 +68,12 @@ class AbstractHumanoidRobot (object):
     """
     The robot dynamic model.
     """
+    device = None
+    """
+    The device that integrates the dynamic equation, namely
+      - the real robot or
+      - a simulator
+    """
     dimension = None
     """The configuration size."""
 
-- 
GitLab