OpenAssetIO
An abstract API for generalising interactions between a host application and an asset management system
|
A factory to manage CppPluginSystemUIDelegatePlugin derived plugins. More...
#include <CppPluginSystemUIDelegateImplementationFactory.hpp>
Public Types | |
using | Ptr = CppPluginSystemUIDelegateImplementationFactoryPtr |
using | ConstPtr = CppPluginSystemUIDelegateImplementationFactoryConstPtr |
![]() | |
using | Ptr = UIDelegateImplementationFactoryInterfacePtr |
using | ConstPtr = UIDelegateImplementationFactoryInterfaceConstPtr |
Public Member Functions | |
Identifiers | identifiers () override |
Get a list of all manager plugin identifiers known to the factory. More... | |
managerApi::UIDelegateInterfacePtr | instantiate (const Identifier &identifier) override |
Create an instance of the UIDelegateInterface with the specified identifier. More... | |
![]() | |
UIDelegateImplementationFactoryInterface (log::LoggerInterfacePtr logger) | |
Construct an instance of this class. More... | |
virtual | ~UIDelegateImplementationFactoryInterface () |
Defaulted polymorphic destructor. More... | |
Static Public Member Functions | |
static CppPluginSystemUIDelegateImplementationFactoryPtr | 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_UI_PLUGIN_PATH" |
Environment variable to read the plugin search path from. More... | |
static constexpr std::string_view | kModuleHookName = "openassetioUIPlugin" |
Name of entry point function to locate within discovered paths. More... | |
Additional Inherited Members | |
![]() | |
const log::LoggerInterfacePtr & | logger () const |
Get logger instance. More... | |
A factory to manage CppPluginSystemUIDelegatePlugin derived plugins.
This class is not usually used directly by a host, which instead uses the UIDelegateFactory.
The factory loads plugins found under paths specified in the OPENASSETIO_UI_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 UIDelegateImplementationFactoryInterface.
|
overridevirtual |
Create an instance of the UIDelegateInterface with the specified identifier.
identifier | Identifier of the UIDelegateInterface to instantiate. |
InputValidationException | if the requested identifier has not been registered as a manager plugin. |
Implements UIDelegateImplementationFactoryInterface.
|
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 |
Name of entry point function to locate within discovered paths.
|
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