Switchboard Extension SDK
Loading...
Searching...
No Matches
ExtensionManager.hpp
1
//
2
// ExtensionManager.hpp
3
// SwitchboardSDK
4
//
5
// Created by Balazs Kiss on 30/08/2024.
6
//
7
8
#pragma once
9
10
#include <switchboard_core/Extension.hpp>
11
#include <vector>
12
13
namespace
switchboard {
14
18
class
ExtensionManager
final {
19
public
:
23
static
ExtensionManager
&
getInstance
();
24
30
void
registerExtension
(std::shared_ptr<Extension> extension);
31
32
Result<void> initializeExtension(
const
std::string& extensionName,
const
std::map<std::string, std::any>& config);
33
Result<void> deinitializeExtension(
const
std::string& extensionName);
34
35
private
:
36
static
ExtensionManager
* sharedInstance;
37
38
std::vector<std::shared_ptr<Extension>> extensions;
39
};
40
41
}
switchboard::ExtensionManager
Manages the extensions of the Switchboard SDK.
Definition
ExtensionManager.hpp:18
switchboard::ExtensionManager::getInstance
static ExtensionManager & getInstance()
Gets the shared instance of the ExtensionManager.
switchboard::ExtensionManager::registerExtension
void registerExtension(std::shared_ptr< Extension > extension)
Registers an extension.
SwitchboardSDK
include
switchboard_core
ExtensionManager.hpp
Generated by
1.14.0