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.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dc0c013e7bde1e591db81512193a5e701147bd1d3e48ab249cf95286a6f9d66 |
|
MD5 | 70ad43ec882204f55f9934ef2da9669a |
|
BLAKE2b-256 | 17f5ce84504bb998e2f33161dac4fe5b98ee0313700d3d7622d1b3c9c0319f2a |