use proper remappings for loading pose parameter
beetleskin opened this issue · comments
Thanks for the plugin, I've been looking forward for something like this for a while :)
However, right after startup, the rqt-node crashes. Debugging resolves:
- you are looking up the parameter "poses" within the global parameter server
- you are looking up by sub-string match
- you "find" the first parameter to match and return
In my case, I had another parameter that had the phrase "poses" in it. So it grabbed the wrong param, which, of course, failed. Why are you searching for parameters anyway? This is not how one uses the ros parameter server. The program should respect the namespace it lives. The user can add remappings from outside, if necessary. Searching for parameters is very error-prone.
I suggest to remove the whole function getFullParamName() and just use the normal way of looking up parameters, and appropriate remappings. It'd also be less ambiguous if you'd rename the param "poses" to "camera_poses" or similar.
Thanks for using the plugin and opening this issue :)
You're right. I didn't think this through. I just searched for the parameters, because the namespace of the private node handle in the gui changes on each start up, as this is an rqt plugin.
I fixed this by giving the node handle a global name that corresponds to the name specified in the launch file. This way it's possible to use the ros parameter server as usual. Additionally I gave the parameter a more specific name.