Gazebo Utils : Classes and functions for robot applications
Maintainer: addisu AT openrobotics DOT org
Build | Status |
---|---|
Test coverage | |
Ubuntu Focal | |
Homebrew | |
Windows |
Gazebo Utils, a component of Gazebo, provides general purpose classes and functions designed for robotic applications.
Table of Contents
Features
Gazebo Utils provides a wide range of functionality, including:
- A helper class to implement the PIMPL pattern
- A command line parsing utility (vendored CLI11)
- Macros to suppress warnings
Install
See the installation tutorial.
Usage
Please refer to the examples directory.
Documentation
API and tutorials can be found at https://gazebosim.org/libs/utils.
You can also generate the documentation from a clone of this repository by following these steps.
-
You will need Doxygen. On Ubuntu Doxygen can be installed using
sudo apt-get install doxygen
-
Clone the repository
git clone https://github.com/gazebosim/gz-utils
-
Configure and build the documentation.
cd gz-utils; mkdir build; cd build; cmake ../; make doc
-
View the documentation by running the following command from the build directory.
firefox doxygen/html/index.html
Testing
Follow these steps to run tests and static code analysis in your clone of this repository.
-
Follow the source install instruction.
-
Run tests.
make test
-
Static code checker.
make codecheck
Folder Structure
Refer to the following table for information about important directories and files in this repository.
gz-utils
├── examples Example programs.
├── include/gz/utils Header files.
├── src Source files and unit tests.
├── test
│ ├── integration Integration tests.
│ ├── performance Performance tests.
│ └── regression Regression tests.
├── tutorials Tutorials, written in markdown.
├── Changelog.md Changelog.
└── CMakeLists.txt CMake build script.
Contributing
Please see CONTRIBUTING.md.
Code of Conduct
Please see CODE_OF_CONDUCT.md
Versioning
This library uses Semantic Versioning. Additionally, this library is part of the Gazebo project which periodically releases a versioned set of compatible and complimentary libraries. See the Gazebo website for version and release information.
License
This library is licensed under Apache 2.0. See also the LICENSE file.