gz/plugin/Loader.hh
Go to the documentation of this file.
std::shared_ptr< InterfaceType > Factory(const std::string &_pluginNameOrAlias) const
Instantiates a plugin for the given plugin name, and then returns a reference-counting interface corr...
PluginPtr Instantiate(const std::string &_pluginNameOrAlias) const
Instantiates a plugin for the given plugin name.
bool ForgetLibraryOfPlugin(const std::string &_pluginNameOrAlias)
Forget the library that provides the plugin with the given name. Note that this will also forget all ...
std::unordered_set< std::string > PluginsImplementing(const std::string &_interface, const bool _demangled=true) const
Get plugin names that implement the specified interface string. Note that the templated version of th...
std::set< std::string > AliasesOfPlugin(const std::string &_pluginName) const
Get the aliases of the plugin with the given name.
std::set< std::string > PluginsWithAlias(const std::string &_alias) const
Get plugin names that correspond to the specified alias string.
std::set< std::string > AllPlugins() const
Get a set of the names of all plugins that are currently known to this Loader.
std::unordered_set< std::string > LoadLib(const std::string &_pathToLibrary)
Load a library at the given path.
PluginPtrType Instantiate(const std::string &_pluginNameOrAlias) const
Instantiates a plugin of PluginType for the given plugin name. This can be used to create a specializ...
std::unordered_set< std::string > InterfacesImplemented() const
Get demangled names of interfaces that the loader has plugins for.
std::string PrettyStr() const
Makes a printable string with info about plugins.
std::string LookupPlugin(const std::string &_nameOrAlias) const
Resolve the plugin name or alias into the name of the plugin that it maps to. If this is a name or al...
bool ForgetLibrary(const std::string &_pathToLibrary)
This loader will forget about the library at the given path location. If you want to instantiate a pl...
std::unordered_set< std::string > PluginsImplementing() const
Get plugin names that implement the specified interface.
This class manages the lifecycle of a plugin instance. It can receive a plugin instance from the igni...
Definition: gz/plugin/PluginPtr.hh:53
Definition: gz/plugin/EnablePluginFromThis.hh:26