Pure Python library for working with the files in ROS packages
Project description
ros_introspect
is a Pure Python library for working with the files in ROS packages in a structured way.
It is compatible with both ROS 1 and ROS 2.
You can specify the path directly.
from ros_introspect import Package
package = Package('/full/path/geometry_msgs')
or you can use the built-in crawler to search recursively
from ros_introspect import find_packages
for package in find_packages('/home/dlu/ros2_ws/src'):
print(package)
Installation
sudo pip3 install ros-introspect
The Package
Class
A Package
is a path where the $PATH/package.xml
exists and a collection of PackageFile
s that are contained within that folder.
Each of the package files are a subtype of PackageFile
based on their functionality, with each of the subtypes being defined in ros_introspect.components
, including...
package.xml
CMakeLists.txt
- Source code (Python or C++)
- ROS Interfaces, i.e. messages, services and actions
- DynamicReconfig configurations (ROS 1 only)
- Plugin XML, for use with
pluginlib
- Launch files, both
XML
(ROS 1) and Python (ROS 2) - Parameter files (
.yaml
) - RViz configurations (
.rviz
) - Robot model files (
.urdf
and.xacro
) setup.py
andsetup.cfg
for Python code- Documentation (Markdown, RST, licenses, etc.)
- Miscellaneous Config files (various metadata like the
.github
folder)
Everything that does not fall into one of those categories ends up as "Other"**
**Excluding .pyc
, *~
, and .git/
files
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ros_introspect-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cb3d7ab995a0cc50817b769a191c715d3a02fa439ea8a9b279e808dbc58858c |
|
MD5 | fd8c196d706c001320d71d22ad0f4cf0 |
|
BLAKE2b-256 | 2cba4b5caf82c63dcf2514523499f3e922006b097da5dfe122206c61421c3149 |