https://github.com/gazebosim/gz-plugin
Cross-platform C++ library for dynamically loading plugins.
https://github.com/gazebosim/gz-plugin
cpp gazebo gazebosim hacktoberfest ignition-plugin ignition-robotics plugin-loader plugin-manager plugin-system robotics-simulation
Last synced: 4 months ago
JSON representation
Cross-platform C++ library for dynamically loading plugins.
- Host: GitHub
- URL: https://github.com/gazebosim/gz-plugin
- Owner: gazebosim
- License: apache-2.0
- Created: 2020-04-15T09:18:05.000Z (almost 6 years ago)
- Default Branch: gz-plugin4
- Last Pushed: 2025-09-26T20:48:02.000Z (6 months ago)
- Last Synced: 2025-10-12T17:35:47.570Z (6 months ago)
- Topics: cpp, gazebo, gazebosim, hacktoberfest, ignition-plugin, ignition-robotics, plugin-loader, plugin-manager, plugin-system, robotics-simulation
- Language: C++
- Homepage: https://gazebosim.org
- Size: 2.63 MB
- Stars: 45
- Watchers: 6
- Forks: 24
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Authors: AUTHORS
Awesome Lists containing this project
README
# Gazebo Plugin
**Maintainer:** ahcorde [AT] gmail [DOT] com
[](https://github.com/gazebosim/gz-plugin/issues)
[](https://github.com/gazebosim/gz-plugin/pulls)
[](https://community.gazebosim.org)
[](https://www.apache.org/licenses/LICENSE-2.0)
Build | Status
-- | --
Test coverage | [](https://codecov.io/gh/gazebosim/gz-plugin/tree/main)
Ubuntu Noble | [](https://build.osrfoundation.org/job/gz_plugin-ci-main-noble-amd64/)
Homebrew | [](https://build.osrfoundation.org/job/gz_plugin-ci-main-homebrew-amd64)
Windows | [](https://build.osrfoundation.org/job/gz_plugin-main-clowin)
Gazebo Plugin is a component in the [Gazebo](http://gazebosim.org) framework, a set
of libraries designed to rapidly develop robot applications.
It is used to register plugin libraries and load them dynamically at runtime.
If you want to make a Gazebo Plugin, you can start learning how to [with a tutorial](https://gazebosim.org/api/sim/9/createsystemplugins.html)
[http://gazebosim.org](http://gazebosim.org)
## Features
* Registration of **templated and non-templated** classes from any translation unit.
* Querying of interfaces **by C++ type or name string**.
* **Dynamically load** plugins at runtime according to the interfaces they provide.
* **Reference counting** of plugin objects to unload libraries no longer in use.
* **Command line tool** `gz plugin` to inspect plugins.
## Installation
See the [installation tutorial](https://gazebosim.org/api/plugin/2/installation.html).
# Documentation
Visit the [documentation page](https://gazebosim.org/api/plugin/2/index.html).