![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge | |
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |
Launch files
Messages
Services
Plugins
Recent questions tagged rosx_introspection at Robotics Stack Exchange
![]() |
rosx_introspection package from rosx_introspection reporosx_introspection |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | Deserialize any ROS message, without compilation time information. |
Checkout URI | https://github.com/facontidavide/rosx_introspection.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-10-01 |
Dev Status | DEVELOPED |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Davide Faconti
Authors
- Davide Faconti
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:
- rosbag::MessageInstance and Topic::ShapeShifter in ROS1.
-
GenericSubscriber
or
rosbag2_storage::SerializedBagMessage
on ROS2. - MCAP.
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.
Changelog for package rosx_introspection
2.0.1 (2025-10-01)
- Merge pull request #21 from bryzhao/fix/scikit-build-core-compatibility Fix CMakeLists to support scikit-build-core installations
- Fix CMakeLists to support scikit-build-core installations
- Merge pull request #20 from nealtanner/bugfix/mac-compliation fix compilation errors on mac
- replace sprintf with snprintf
- inline vs constexpr
- Contributors: Bryan Zhao, Davide Faconti, Neal Tanner
2.0.0 (2025-09-24)
- optionally remove JSON support
- new formatting
- fix memory and add README
- add python binding
- NanoCDR
- Merge pull request #16 from traversaro/patch-1 Add missing include of functional header in message_definition_cache.cpp
- Fix issue #13
- Merge pull request #11 from valgur/bugfix/clang Fix ros_parser.cpp compilation failures on Clang
- Contributors: Davide Faconti, Martin Valgur, Silvio Traversaro
1.0.2 (2024-07-28)
- bug fix
- add unit tests
- Contributors: Davide Faconti
1.0.1 (2024-06-29)
- use CPM to download dependenies
- Merge pull request #9 from valgur/feature/cmake-improvements
- Contributors: Davide Faconti, Martin Valgur
1.0.0 (2024-06-26)
- New version including JSON conversion
- Contributors: Basavaraj-PN, Davide Faconti, ahmad-ra
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
sensor_msgs | |
geometry_msgs | |
roscpp | |
roscpp_serialization | |
ament_index_cpp | |
rclcpp | |
rosbag2_cpp |
System Dependencies
Name |
---|
rapidjson-dev |
Dependant Packages
Name | Deps |
---|---|
foxglove_bridge |