Streaming non yarp object through yarp ports #2145
Replies: 3 comments
-
Hi @GiulioRomualdi , You are right, in order to stream a custom type through the yarp network, that type should inherits from You are right, converting from a datastructure of another library could be time consuming, unless you simply copy the raw pointer of external data. This has been possible in the On the other hand Actually #1582 was intended to add Unfortunately we never found the time to add this class that would be very useful indeed. |
Beta Was this translation helpful? Give feedback.
-
Related PR on iDynTree: robotology/idyntree#734 . Having a similar |
Beta Was this translation helpful? Give feedback.
-
Related: #1603 I think all types in general require a big refactor. In order to split the "storage" part of the types from their serialization |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I would like to stream a Vector (Matrix) through a
yarp::os::BufferedPort
, as far as I understood I could:yarp::sig::Vector
(yarp::sig::Matrix
);yarp::os::Portable
class.However
iDynTree
,Eigen
,openCV
, etc... define their vectors (Matrix). So, every time I would like to send the vector (matrix) through ayarp::os::BufferedPort
I should instantiate ayarp::sig::Vector
(yarp::sig::Matrix
) and copy the value and this is time-consuming.It would be nice to introduce a portable based on
Eigen::Map
, indeed every vector (matrix) can be easily wrapped using anEigen::Map<Eigen::MatrixXd>(.)
method. For instance, inyarp
andiDynTree
there are already functions that convert a Vector (Matrix) inEigen:Map<>
object.What do you think? Is it worth spending time on this?
@traversaro @Nicogene @prashanthr05 @kouroshD
Related issue: #76
Beta Was this translation helpful? Give feedback.
All reactions