Skip to content

facontidavide/rosx_introspection

Repository files navigation

ROS X Introspection

Unified successor of the following libraries:

The library compiles either using:

  • ROS1 (catkin),
  • ROS2 (colcon/ament) or
  • without any ROS dependency (vanilla cmake).

To parse any ROS message at runtime, it requires:

  • The name of the type (for instance "sensors_msgs/JointState")
  • The definition of the type (for instance this one),
  • The raw memory buffer to be deserialized into individual key/values pairs.

The raw memory buffer is usually obtained by:

Python binding

Compilation instructions:

cmake -S. -B build_python -DCMAKE_BUILD_TYPE=Release -DROSX_PYTHON_BINDINGS=ON
cmake --build build_python

If you have a rosbag (MCAP file) you can test it with this command

PYTHONPATH=build_python/python python3 python/mcap_ros_parser.py path_to_your_rosbag.mcap

Note that we are providing the folder where the dynamic library is using PYTHONPATH.

About

Deserialize any ROS message, without compilation time information.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6