Thread-safe generation-qualified registry for editing extension providers. 更多...
#include <EditingExtension.h>
类 | |
| struct | Impl |
Public 成员函数 | |
| ExtensionProviderRegistry () | |
| Extension provider registry. | |
| ~ExtensionProviderRegistry () | |
| Extension provider registry. | |
| ExtensionProviderRegistry (const ExtensionProviderRegistry &)=delete | |
| ExtensionProviderRegistry & | operator= (const ExtensionProviderRegistry &)=delete |
| Result< ProviderHandle > | registerProvider (ExtensionDescriptor descriptor, std::shared_ptr< IEditingExtensionProvider > provider) |
| Publish and activate a provider atomically from the caller's perspective. | |
| Result< ProviderLease > | acquire (const ProviderHandle &handle) const |
| Acquire an owning lease or return Unsupported/StaleHandle diagnostics. | |
| Result< ProviderLease > | acquire (const std::string &id) const |
| Acquire the current generation by id; missing providers are explicit. | |
| Result< void > | unload (const ProviderHandle &handle) |
| Stop, unpublish and deactivate the exact provider generation. | |
| std::vector< ExtensionDescriptor > | descriptors () const |
| Return owning copies of current descriptors. | |
详细描述
Thread-safe generation-qualified registry for editing extension providers.
在文件 EditingExtension.h 第 78 行定义.
构造及析构函数说明
◆ ExtensionProviderRegistry() [1/2]
| eve::editing::ExtensionProviderRegistry::ExtensionProviderRegistry | ( | ) |
Extension provider registry.
在文件 EditingExtension.cpp 第 23 行定义.
◆ ~ExtensionProviderRegistry()
| eve::editing::ExtensionProviderRegistry::~ExtensionProviderRegistry | ( | ) |
Extension provider registry.
在文件 EditingExtension.cpp 第 25 行定义.
◆ ExtensionProviderRegistry() [2/2]
|
delete |
成员函数说明
◆ acquire() [1/2]
| Result< ProviderLease > eve::editing::ExtensionProviderRegistry::acquire | ( | const ProviderHandle & | handle | ) | const |
Acquire an owning lease or return Unsupported/StaleHandle diagnostics.
在文件 EditingExtension.cpp 第 75 行定义.
引用了 found, generation , 以及 handle.
◆ acquire() [2/2]
| Result< ProviderLease > eve::editing::ExtensionProviderRegistry::acquire | ( | const std::string & | id | ) | const |
Acquire the current generation by id; missing providers are explicit.
在文件 EditingExtension.cpp 第 93 行定义.
引用了 found.
◆ descriptors()
| std::vector< ExtensionDescriptor > eve::editing::ExtensionProviderRegistry::descriptors | ( | ) | const |
◆ operator=()
|
delete |
◆ registerProvider()
| Result< ProviderHandle > eve::editing::ExtensionProviderRegistry::registerProvider | ( | ExtensionDescriptor | descriptor, |
| std::shared_ptr< IEditingExtensionProvider > | provider | ||
| ) |
Publish and activate a provider atomically from the caller's perspective.
在文件 EditingExtension.cpp 第 38 行定义.
引用了 descriptor , 以及 handle.
◆ unload()
| Result< void > eve::editing::ExtensionProviderRegistry::unload | ( | const ProviderHandle & | handle | ) |
Stop, unpublish and deactivate the exact provider generation.
在文件 EditingExtension.cpp 第 102 行定义.
该类的文档由以下文件生成:
- src/modules/editing/EditingExtension.h
- src/modules/editing/EditingExtension.cpp