fair::mq::PluginManager Class Reference

manages and owns plugin instances More...

`#include <fairmq/PluginManager.h>`

## Classes

struct | BadSearchPath
struct | PluginInstantiationError
struct | PluginLoadError
struct | ProgramOptionsParseError

## Public Types

using | PluginFactory = std::shared_ptr< fair::mq::Plugin >(PluginServices &)

## Public Member Functions

auto | SetSearchPaths (const std::vector< boost::filesystem::path > &) -> void
auto | AppendSearchPath (const boost::filesystem::path &) -> void
auto | PrependSearchPath (const boost::filesystem::path &) -> void
auto | SearchPaths () const -> const std::vector< boost::filesystem::path > &
auto | LoadPlugin (const std::string &pluginName) -> void
auto | LoadPlugins (const std::vector< std::string > &pluginNames) -> void
auto | InstantiatePlugins () -> void
auto | ForEachPlugin (std::function< void(Plugin &)> func) -> void
auto | ForEachPluginProgOptions (std::function< void(boost::program_options::options_description)> func) const -> void
template<typename... Args>
auto | EmplacePluginServices (Args &&... args) -> void
auto | WaitForPluginsToReleaseDeviceControl () -> void

## Static Public Member Functions

static auto | ProgramOptions () -> boost::program_options::options_description
static auto | MakeFromCommandLineOptions (const std::vector< std::string >) -> std::shared_ptr< PluginManager >
static auto | LibPrefix () -> const std::string &

## Detailed Description

manages and owns plugin instances

The plugin manager is responsible for the whole plugin lifecycle. It facilitates two plugin mechanisms: A prelinked dynamic plugins (shared libraries) B dynamic plugins (shared libraries) C static plugins (builtin)

The documentation for this class was generated from the following files:

- fairmq/PluginManager.h
- fairmq/PluginManager.cxx