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.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfc670f8dadcc4034c19979c6317701d6b57bfc46d8fa9b320ea0a209894cdf1 |
|
MD5 | 0b8b02bb93f07522220609b1360c8433 |
|
BLAKE2b-256 | 9cc731dbb2d2273f37064c704deb4324555bdd7fadd0eb93d44918d26a14c79a |