[ros-users] rosoct and private parameters

trinighost trinighost at gmail.com
Sun Nov 7 21:16:16 UTC 2010


Hello everyone, I am having trouble using rosoct with private or local
parameters.  
It seems that rosoct sets and has access to only global parameters or items
in / (the global namespace).

According to the  http://www.ros.org/wiki/Names#line-39 wiki , by default,
resolution is done relative to the node's namespace.  Shouldn't this mean
that a node should be able to access a parameter in its own namespace
without having to access nodehandle methods which I couldn't find mention of
for octave?

I attempted to create two nodes which are initialized with unique
parameters.
The two parameters (/node_a/test1 and /node_b/test1) do get generated, but
the nodes are not able to find any data in them when they execute
rosoct_get_param('test1').  To make this work I actually have to pass in the
node name as an argument, and compose the full name of the parameter,
rosoct_get_param([myname,'/test1'])

I've also tried rosoct_get_param('/test1') just for good measure to see if
the leading / mattered.

When attempts are made to create private parameters, e.g.:
rosoct_set_param('~test1','test1val');
the following type of error occurs.
terminate called after throwing an instance of 'ros::InvalidNameException'
  what():  Using ~ names with NodeHandle methods is not allowed.  If you
want to use private names with the NodeHandle interface, construct a
NodeHandle using a private name as its namespace.  e.g. ros::NodeHandle
nh("~");  nh.getParam("my_private_name"); (name = [~test1])
A similar error occurs when rosoct_get_param is used.
Am I just attempting to do these two things in the wrong manner?
I see references to global namespaces impeding portability and I agree, but
passing an argument to the node seems like brutish manner to fix the
problem.   Maybe it's just that the nodehandling hasn't been implemented for
rosoct, but that would only address the private parameter issue and not the
default relative namespace resolution.

Thoughts?

-- 
View this message in context: http://ros-users.122217.n3.nabble.com/rosoct-and-private-parameters-tp1859364p1859364.html
Sent from the ROS-Users mailing list archive at Nabble.com.



More information about the ros-users mailing list