Switchboard Extension SDK
Toggle main menu visibility
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/export.h>
11
#include <switchboard_core/Extension.hpp>
12
#include <map>
13
#include <string>
14
15
namespace
switchboard {
16
20
class
SWITCHBOARDSDK_EXPORT
ExtensionManager
final {
21
public
:
25
static
ExtensionManager
&
getInstance
();
26
32
void
registerExtension
(std::shared_ptr<Extension> extension);
33
42
Result<void>
initializeExtension
(
const
std::string& extensionName,
const
SBAnyMap& config);
43
51
Result<void>
deinitializeExtension
(
const
std::string& extensionName);
52
56
void
deinitializeAllExtensions
();
57
58
private
:
59
static
ExtensionManager
* sharedInstance;
60
61
std::map<std::string, std::shared_ptr<Extension>> extensions;
62
};
63
64
}
switchboard::ExtensionManager
Manages the extensions of the Switchboard SDK.
Definition
ExtensionManager.hpp:20
switchboard::ExtensionManager::deinitializeAllExtensions
void deinitializeAllExtensions()
Deinitializes all registered extensions.
switchboard::ExtensionManager::initializeExtension
Result< void > initializeExtension(const std::string &extensionName, const SBAnyMap &config)
Initializes an extension with the given configuration.
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.
switchboard::ExtensionManager::deinitializeExtension
Result< void > deinitializeExtension(const std::string &extensionName)
Deinitializes an extension.
SwitchboardSDK
include
switchboard_core
ExtensionManager.hpp
Generated by
1.17.0