OpenAssetIO
An abstract API for generalising interactions between a host application and an asset management system
|
A factory to manage CppPluginSystemManagerPlugin derived plugins. More...
#include <CppPluginSystemManagerImplementationFactory.hpp>
Public Types | |
using | Ptr = CppPluginSystemManagerImplementationFactoryPtr |
using | ConstPtr = CppPluginSystemManagerImplementationFactoryConstPtr |
![]() | |
using | Ptr = ManagerImplementationFactoryInterfacePtr |
using | ConstPtr = ManagerImplementationFactoryInterfaceConstPtr |
Public Member Functions | |
Identifiers | identifiers () override |
Get a list of all manager plugin identifiers known to the factory. More... | |
managerApi::ManagerInterfacePtr | instantiate (const Identifier &identifier) override |
Create an instance of the ManagerInterface with the specified identifier. More... | |
![]() | |
ManagerImplementationFactoryInterface (log::LoggerInterfacePtr logger) | |
Construct an instance of this class. More... | |
virtual | ~ManagerImplementationFactoryInterface () |
Defaulted polymorphic destructor. More... | |
Static Public Member Functions | |
static CppPluginSystemManagerImplementationFactoryPtr | make (log::LoggerInterfacePtr logger) |
Construct a new instance. More... | |
static Ptr | make (openassetio::Str paths, log::LoggerInterfacePtr logger) |
Construct a new instance. More... | |
Static Public Attributes | |
static constexpr std::string_view | kPluginEnvVar = "OPENASSETIO_PLUGIN_PATH" |
Environment variable to read the plugin search path from. More... | |
Additional Inherited Members | |
![]() | |
const log::LoggerInterfacePtr & | logger () const |
Get logger instance. More... | |
A factory to manage CppPluginSystemManagerPlugin derived plugins.
This class is not usually used directly by a host, which instead uses the ManagerFactory.
The factory loads plugins found under paths specified in the OPENASSETIO_PLUGIN_PATH
env var.
Plugins are scanned and loaded lazily when required. In particular, this means no plugin scanning is done on construction.
|
overridevirtual |
Get a list of all manager plugin identifiers known to the factory.
Implements ManagerImplementationFactoryInterface.
|
overridevirtual |
Create an instance of the ManagerInterface with the specified identifier.
identifier | Identifier of the ManagerInterface to instantiate. |
InputValidationException | if the requested identifier has not been registered as a manager plugin. |
Implements ManagerImplementationFactoryInterface.
|
static |
Construct a new instance.
Plugin search path(s) will be taken from the kPluginEnvVar environment variable.
logger | Logger for progress and warnings. |
|
static |
Construct a new instance.
The kPluginEnvVar environment variable will be ignored.
paths | Plugin search paths. |
logger | Logger for progress and warnings. |
|
static |
Environment variable to read the plugin search path from.
Copyright 2013-2023 The Foundry Visionmongers Ltd. OpenAssetIO is released under the Apache 2.0 License