|
FairMQ
1.4.33
C++ Message Queuing Library and Framework
|
manages and owns plugin instances More...
#include <fairmq/PluginManager.h>
Classes | |
| struct | BadSearchPath |
| struct | PluginInstantiationError |
| struct | PluginLoadError |
| struct | ProgramOptionsParseError |
Public Types | |
| using | PluginFactory = std::unique_ptr< fair::mq::Plugin >(PluginServices &) |
Public Member Functions | |
| PluginManager (const std::vector< std::string > args) | |
| 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 | LibPrefix () -> const std::string & |
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)