From 6f31cdc594616c2d20014738aa03ad46fe4b9524 Mon Sep 17 00:00:00 2001
From: Sergi Hernandez Juan <shernand@iri.upc.edu>
Date: Tue, 10 Jul 2018 21:25:04 +0200
Subject: [PATCH] Necessary changes for the ROS kinetic version.

---
 bno055_imu/CMakeLists.txt                         |  2 ++
 bno055_imu/cfg/Bno055Imu.cfg                      |  2 +-
 bno055_imu/src/bno055_imu_ros_driver.cpp          |  6 +++---
 bno055_imu/src/bno055_imu_ros_driver_node.cpp     |  4 ++--
 humanoid_common/package.xml                       |  2 ++
 ir_foot_sensor/CMakeLists.txt                     |  2 ++
 ir_foot_sensor/cfg/IrFootSensor.cfg               |  2 +-
 ir_foot_sensor/src/ir_foot_sensor_driver.cpp      |  6 +++---
 ir_foot_sensor/src/ir_foot_sensor_driver_node.cpp | 12 ++++++------
 qr_detector/CMakeLists.txt                        |  8 +++++---
 qr_detector/cfg/QrDetector.cfg                    |  2 +-
 qr_detector/src/qr_detector_driver.cpp            |  6 +++---
 qr_detector/src/qr_detector_driver_node.cpp       |  2 +-
 13 files changed, 32 insertions(+), 24 deletions(-)

diff --git a/bno055_imu/CMakeLists.txt b/bno055_imu/CMakeLists.txt
index e1e039a..0857c32 100644
--- a/bno055_imu/CMakeLists.txt
+++ b/bno055_imu/CMakeLists.txt
@@ -101,6 +101,8 @@ target_link_libraries(${PROJECT_NAME} ${bno055_imu_driver_LIBRARY})
 # ******************************************************************** 
 # add_dependencies(${PROJECT_NAME} <msg_package_name>_generate_messages_cpp)
 add_dependencies(${PROJECT_NAME} sensor_msgs_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME} iri_base_driver_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME}_gencfg iri_base_driver_generate_messages_cpp)
 # ******************************************************************** 
 #               Add dynamic reconfigure dependencies 
 # ******************************************************************** 
diff --git a/bno055_imu/cfg/Bno055Imu.cfg b/bno055_imu/cfg/Bno055Imu.cfg
index 5a4c162..8b76ff3 100755
--- a/bno055_imu/cfg/Bno055Imu.cfg
+++ b/bno055_imu/cfg/Bno055Imu.cfg
@@ -33,7 +33,7 @@
 
 PACKAGE='bno055_imu'
 
-from driver_base.msg import SensorLevels
+from iri_base_driver.msg import SensorLevels
 from dynamic_reconfigure.parameter_generator_catkin import *
 
 gen = ParameterGenerator()
diff --git a/bno055_imu/src/bno055_imu_ros_driver.cpp b/bno055_imu/src/bno055_imu_ros_driver.cpp
index 07d0a50..65a9a76 100644
--- a/bno055_imu/src/bno055_imu_ros_driver.cpp
+++ b/bno055_imu/src/bno055_imu_ros_driver.cpp
@@ -84,14 +84,14 @@ void Bno055ImuDriver::config_update(Config& new_cfg, uint32_t level)
   // update driver with new_cfg data
   switch(this->getState())
   {
-    case Bno055ImuDriver::CLOSED:
+    case iri_base_driver::CLOSED:
       this->frame_id=new_cfg.tf_prefix+"/"+new_cfg.frame_id;
       break;
 
-    case Bno055ImuDriver::OPENED:
+    case iri_base_driver::OPENED:
       break;
 
-    case Bno055ImuDriver::RUNNING:
+    case iri_base_driver::RUNNING:
       break;
   }
 
diff --git a/bno055_imu/src/bno055_imu_ros_driver_node.cpp b/bno055_imu/src/bno055_imu_ros_driver_node.cpp
index de25be4..4db5265 100644
--- a/bno055_imu/src/bno055_imu_ros_driver_node.cpp
+++ b/bno055_imu/src/bno055_imu_ros_driver_node.cpp
@@ -7,7 +7,7 @@ Bno055ImuDriverNode::Bno055ImuDriverNode(ros::NodeHandle &nh) :
   unsigned int i;
 
   //init class attributes if necessary
-  this->loop_rate_ = 500;//in [Hz]
+  this->setRate(500);//in [Hz]
 
   // [init publishers]
   this->imu_publisher_ = this->public_node_handle_.advertise<sensor_msgs::Imu>("imu", 1);
@@ -117,5 +117,5 @@ Bno055ImuDriverNode::~Bno055ImuDriverNode(void)
 /* main function */
 int main(int argc,char *argv[])
 {
-  return driver_base::main<Bno055ImuDriverNode>(argc, argv, "bno055_imu_driver_node");
+  return iri_base_driver::main<Bno055ImuDriverNode>(argc, argv, "bno055_imu_driver_node");
 }
diff --git a/humanoid_common/package.xml b/humanoid_common/package.xml
index 1061ee3..2df862a 100755
--- a/humanoid_common/package.xml
+++ b/humanoid_common/package.xml
@@ -56,6 +56,8 @@
   <run_depend>automatic_charge</run_depend>
   <run_depend>stairs_client</run_depend>
   <run_depend>ir_foot_sensor</run_depend>
+  <run_depend>bno055_imu</run_depend>
+  <run_depend>gazebo_image_to_video_dev</run_depend>
 
   <!-- The export tag contains other, unspecified, tags -->
   <export>
diff --git a/ir_foot_sensor/CMakeLists.txt b/ir_foot_sensor/CMakeLists.txt
index ca5fdd2..92efceb 100644
--- a/ir_foot_sensor/CMakeLists.txt
+++ b/ir_foot_sensor/CMakeLists.txt
@@ -114,6 +114,8 @@ target_link_libraries(${PROJECT_NAME}_nodelet ${ir_feet_LIBRARY})
 # ******************************************************************** 
 # add_dependencies(${PROJECT_NAME} <msg_package_name>_generate_messages_cpp)
 add_dependencies(${PROJECT_NAME} humanoid_common_msgs_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME} iri_base_driver_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME}_gencfg iri_base_driver_generate_messages_cpp)
 # ******************************************************************** 
 #               Add dynamic reconfigure dependencies 
 # ******************************************************************** 
diff --git a/ir_foot_sensor/cfg/IrFootSensor.cfg b/ir_foot_sensor/cfg/IrFootSensor.cfg
index 6de3d38..b7e16e6 100755
--- a/ir_foot_sensor/cfg/IrFootSensor.cfg
+++ b/ir_foot_sensor/cfg/IrFootSensor.cfg
@@ -33,7 +33,7 @@
 
 PACKAGE='ir_foot_sensor'
 
-from driver_base.msg import SensorLevels
+from iri_base_driver.msg import SensorLevels
 from dynamic_reconfigure.parameter_generator_catkin import *
 
 gen = ParameterGenerator()
diff --git a/ir_foot_sensor/src/ir_foot_sensor_driver.cpp b/ir_foot_sensor/src/ir_foot_sensor_driver.cpp
index 18fdc9b..5aca919 100644
--- a/ir_foot_sensor/src/ir_foot_sensor_driver.cpp
+++ b/ir_foot_sensor/src/ir_foot_sensor_driver.cpp
@@ -65,13 +65,13 @@ void IrFootSensorDriver::config_update(Config& new_cfg, uint32_t level)
   // update driver with new_cfg data
   switch(this->getState())
   {
-    case IrFootSensorDriver::CLOSED:
+    case iri_base_driver::CLOSED:
       break;
 
-    case IrFootSensorDriver::OPENED:
+    case iri_base_driver::OPENED:
       break;
 
-    case IrFootSensorDriver::RUNNING:
+    case iri_base_driver::RUNNING:
       break;
   }
 
diff --git a/ir_foot_sensor/src/ir_foot_sensor_driver_node.cpp b/ir_foot_sensor/src/ir_foot_sensor_driver_node.cpp
index 1ff6a06..0d55028 100644
--- a/ir_foot_sensor/src/ir_foot_sensor_driver_node.cpp
+++ b/ir_foot_sensor/src/ir_foot_sensor_driver_node.cpp
@@ -6,7 +6,7 @@ IrFootSensorDriverNode::IrFootSensorDriverNode(ros::NodeHandle &nh) :
   std::string dyn_serial="";
   int dyn_baudrate=-1,dev_id=-1;
   //init class attributes if necessary
-  this->loop_rate_ = 10;//in [Hz]
+  this->setRate(10);//in [Hz]
 
   // [init publishers]
   
@@ -31,15 +31,15 @@ IrFootSensorDriverNode::IrFootSensorDriverNode(ros::NodeHandle &nh) :
   this->sensor_data_ir_foot_data_msg_.names[8]="front_right";
   this->sensor_data_ir_foot_data_msg_.names[9]="front_analog";
 
-  this->node_handle_.getParam("dyn_serial",dyn_serial);
+  this->public_node_handle_.getParam("dyn_serial",dyn_serial);
   this->driver_.set_dynamixel_device(dyn_serial);
-  this->node_handle_.getParam("dyn_baudrate",dyn_baudrate);
+  this->public_node_handle_.getParam("dyn_baudrate",dyn_baudrate);
   this->driver_.set_dynamixel_baudrate(dyn_baudrate);
-  this->node_handle_.getParam("ir_foot_id",dev_id);
+  this->public_node_handle_.getParam("ir_foot_id",dev_id);
   this->driver_.set_device_id(dev_id);
 
   if(dyn_serial!="" && dyn_baudrate!=-1 && dev_id!=-1)
-    this->sensor_data_publisher_ = this->node_handle_.advertise<humanoid_common_msgs::ir_foot_data>("sensor_data", 1);
+    this->sensor_data_publisher_ = this->public_node_handle_.advertise<humanoid_common_msgs::ir_foot_data>("sensor_data", 1);
   else
     this->sensor_data_publisher_ = this->public_node_handle_.advertise<humanoid_common_msgs::ir_foot_data>("sensor_data", 1);
 }
@@ -119,7 +119,7 @@ IrFootSensorDriverNode::~IrFootSensorDriverNode(void)
 /* main function */
 int main(int argc,char *argv[])
 {
-  return driver_base::main<IrFootSensorDriverNode>(argc, argv, "ir_foot_sensor_driver_node");
+  return iri_base_driver::main<IrFootSensorDriverNode>(argc, argv, "ir_foot_sensor_driver_node");
 }
 
 #include <pluginlib/class_list_macros.h>
diff --git a/qr_detector/CMakeLists.txt b/qr_detector/CMakeLists.txt
index 61e8fea..56416ec 100644
--- a/qr_detector/CMakeLists.txt
+++ b/qr_detector/CMakeLists.txt
@@ -15,7 +15,7 @@ find_package(catkin REQUIRED COMPONENTS iri_base_driver humanoid_common_msgs geo
 #           Add system and labrobotica dependencies here
 # ******************************************************************** 
 find_package(detectqrcode REQUIRED)
-#find_package(OpenCV 2.4 REQUIRED)
+find_package(OpenCV REQUIRED)
 
 # ******************************************************************** 
 #           Add topic, service and action definition here
@@ -78,7 +78,7 @@ catkin_package(
 include_directories(include)
 include_directories(${catkin_INCLUDE_DIRS})
 include_directories(${detectqrcode_INCLUDE_DIR})
-#include_directories(${OpenCV_INCLUDE_DIRS})
+include_directories(${OpenCV_INCLUDE_DIRS})
 
 ## Declare a cpp library
 # add_library(${PROJECT_NAME} <list of source files>)
@@ -91,7 +91,7 @@ add_executable(${PROJECT_NAME} src/qr_detector_driver.cpp src/qr_detector_driver
 # ******************************************************************** 
 target_link_libraries(${PROJECT_NAME} ${catkin_LIBRARIES})
 target_link_libraries(${PROJECT_NAME} ${detectqrcode_LIBRARY})
-#target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBRARIES})
+target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBRARIES})
 
 # ******************************************************************** 
 #               Add message headers dependencies 
@@ -100,6 +100,8 @@ target_link_libraries(${PROJECT_NAME} ${detectqrcode_LIBRARY})
 add_dependencies(${PROJECT_NAME} humanoid_common_msgs_generate_messages_cpp)
 add_dependencies(${PROJECT_NAME} geometry_msgs_generate_messages_cpp)
 add_dependencies(${PROJECT_NAME} sensor_msgs_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME} iri_base_driver_generate_messages_cpp)
+add_dependencies(${PROJECT_NAME}_gencfg iri_base_driver_generate_messages_cpp)
 # ******************************************************************** 
 #               Add dynamic reconfigure dependencies 
 # ******************************************************************** 
diff --git a/qr_detector/cfg/QrDetector.cfg b/qr_detector/cfg/QrDetector.cfg
index 78d9702..1d2039b 100755
--- a/qr_detector/cfg/QrDetector.cfg
+++ b/qr_detector/cfg/QrDetector.cfg
@@ -33,7 +33,7 @@
 
 PACKAGE='qr_detector'
 
-from driver_base.msg import SensorLevels
+from iri_base_driver.msg import SensorLevels
 from dynamic_reconfigure.parameter_generator_catkin import *
 
 gen = ParameterGenerator()
diff --git a/qr_detector/src/qr_detector_driver.cpp b/qr_detector/src/qr_detector_driver.cpp
index 93f8d5e..18882d1 100644
--- a/qr_detector/src/qr_detector_driver.cpp
+++ b/qr_detector/src/qr_detector_driver.cpp
@@ -57,13 +57,13 @@ void QrDetectorDriver::config_update(Config& new_cfg, uint32_t level)
   // update driver with new_cfg data
   switch(this->getState())
   {
-    case QrDetectorDriver::CLOSED:
+    case iri_base_driver::CLOSED:
       break;
 
-    case QrDetectorDriver::OPENED:
+    case iri_base_driver::OPENED:
       break;
 
-    case QrDetectorDriver::RUNNING:
+    case iri_base_driver::RUNNING:
       break;
   }
 
diff --git a/qr_detector/src/qr_detector_driver_node.cpp b/qr_detector/src/qr_detector_driver_node.cpp
index abfcb7f..70e6810 100644
--- a/qr_detector/src/qr_detector_driver_node.cpp
+++ b/qr_detector/src/qr_detector_driver_node.cpp
@@ -199,5 +199,5 @@ QrDetectorDriverNode::~QrDetectorDriverNode(void)
 /* main function */
 int main(int argc,char *argv[])
 {
-  return driver_base::main<QrDetectorDriverNode>(argc, argv, "qr_detector_driver_node");
+  return iri_base_driver::main<QrDetectorDriverNode>(argc, argv, "qr_detector_driver_node");
 }
-- 
GitLab