When I create sub-nodes using Node::create_sub_node() and then resolve a private name on this sub-node, the sub-namespace is ignored.
auto nh_left = this->create_sub_node( "left" );
std::string resolved_service_name = nh_left->get_node_base_interface()->resolve_topic_or_service_name(
"~/set_camera_info", true, false );
Resolves to: /test_cam_info_manager/set_camera_info
But I would expect it to resolve to: /test_cam_info_manager/**left**/set_camera_info
Background:
In order to create two CameraInfoManager's for a stereo setup, I need some way to push the CameraInfoManagers into a sub-namespace. I thought this is exactly what sub-nodes are for, but it's not working. Original issue: ros-perception/image_common#341
Note: In rolling release, I believe this can be circumvented because CameraInfoManager has a new namespace parameter, but this is not the case in jazzy.
Required Info:
- Operating System:
- Installation type:
- Version or commit hash:
- Client library (if applicable):
When I create sub-nodes using Node::create_sub_node() and then resolve a private name on this sub-node, the sub-namespace is ignored.
Resolves to:
/test_cam_info_manager/set_camera_infoBut I would expect it to resolve to:
/test_cam_info_manager/**left**/set_camera_infoBackground:
In order to create two
CameraInfoManager's for a stereo setup, I need some way to push the CameraInfoManagers into a sub-namespace. I thought this is exactly what sub-nodes are for, but it's not working. Original issue: ros-perception/image_common#341Note: In rolling release, I believe this can be circumvented because CameraInfoManager has a new namespace parameter, but this is not the case in jazzy.
Required Info: