Skip to content

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

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.

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.