class_loader
- Software
- Middleware
- Library
A ROS-independent C++ library for loading plugins at runtime from shared libraries, without needing the classes' header files. It underpins the ROS pluginlib package.
Made by ROS core stacks.
Source on GitHub: github.com/ros/class_loader (opens in a new tab). Facts read at commit 7ca3a02 (opens in a new tab).
Licenses
- Code
- BSD-3-Clause (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (BSD-3-Clause) at commit 7ca3a02 (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
What it does
- Uses the host operating system's runtime loader to open shared libraries such as .so, .dll or dylib files.
- Introspects a library for exported plugin classes and lists those that implement a given base class.
- Creates and destroys instances of exported classes without declaring them in a header file.
- Offers ClassLoader for a single runtime library and MultiLibraryClassLoader for several libraries.
- Intended for plugins used by non-ROS packages; ROS packages should use pluginlib instead.
Written by Robotheca from the project's README (opens in a new tab) at commit 7ca3a02.
Getting started
- Difficulty
- Advanced
- How to start
- The project's README (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 6 Oct 2026 on rolling
- Latest release
- None published on GitHub
Checked on GitHub on 16 Oct 2026.
Links
Robots that can run it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.