Proposal for removal of classes yarp::os::Node, yarp:os::Publisher, yarp::os::Subscriber #3181
randaz81
started this conversation in
Architecture
Replies: 1 comment
-
I could not find any use in AMI code of |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
These classes were mainly introduced to support direct communication with ROS1, now obsolete.
While they can be used also for communication in yarp (via topic), I think that they are not optimal and should be deprecated and removed. Here some considerations:
yarp::os::Node
does not support opening topics from different nodes within the same process. For example, let's consider the case of yarprobotinterface, which loads multiple plugins, each opening different topics (viayarp::os::Publisher
,yarp::os::Subscriber
). However, all topics will belong to the sameyarp::os::Node
(the first one opened), even if explicitly requested otherwise. A more precise signature of classes Publisher/Subscriber should include the node to which they refer to, i.e.Please note that this is not currently possible since it is not possible to assign to a Publisher/Subscriber a specific node (n1/n2).
(please note that
/in
and/out
can be eventually have the same name/topic
and that they are here separated only for clarity of the diagram).A novel implementation of these classes (breaking change: the new classes would have a different signature) could indeed replace the current implementation by internally implementing a yarp repeater.
Beta Was this translation helpful? Give feedback.
All reactions