ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

You can see #q304083 for an example.

This launch file provides the nodelet manager when including freenect.launch. If you look at this file (source code) you will find this :

<include file="$(find rgbd_launch)/launch/includes/manager.launch.xml">
      <arg name="name"                value="$(arg manager)" />
      <arg name="debug"               value="$(arg debug)" />
      <arg name="num_worker_threads"  value="$(arg num_worker_threads)" />
</include>

This other launch file load the nodelet manager for you. In the link you gave, the launch file doesn't load any nodelet manager but expect one : zed_nodelet_manager. So if you want to use this launch file, all you have to do is load a manager before like this :

rosrun nodelet nodelet manager __name:=zed_nodelet_manager

Or by adding this line at the beginning of the launch file you linked :

< node pkg="nodelet" type="nodelet" name="$(arg nodelet_manager_name)" args="manager"/>

You need a nodelet manager because nodelets are like plugins, they are loaded at runtime by an executable, this executable being your nodelet manager. This link might help you understand the concept of nodelets.