ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
...not as such. ROS messages are transmitted over the network; as a result, "passing a pointer" doesn't make any sense.
But wait, there's more!
One possibility is to just implement your pipeline in a single node; then it can pass pointers around because it's all in one process.
Another is to use nodelets, which offer a way of defining something that behaves like a node, but lets you have several in the same process; these were devised to solve exactly the problem you're talking about.
2 | No.2 Revision |
...not as such. ROS messages are transmitted over the network; as a result, "passing a pointer" doesn't make any sense.
But wait, there's more!
One possibility is to just implement your pipeline in a single node; then it can pass pointers around because it's all in one process.
Another is to use nodelets, which offer a way of defining something that behaves like a node, but lets you have several in the same process; these were devised to solve exactly the problem you're talking about.
A third option is ecto; where ROS is by-design asynchronous (which makes multi-input perceptual pipelines very painful), ecto is by-design synchronous, to make such pipelines easy. Ecto's still in heavy development, but it'll be seriously cool when it's done.