From 12d70e1792a5b1ff08d4b58fb49fb9e58d6551a8 Mon Sep 17 00:00:00 2001 From: saturneric Date: Thu, 29 Feb 2024 00:32:43 +0800 Subject: feat: upgrade module system 1. load module and resolve symbols at runtime 2. restrict sdk functions and structures to c style 3. add some core api to support it --- src/core/module/ModuleManager.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/core/module/ModuleManager.h') diff --git a/src/core/module/ModuleManager.h b/src/core/module/ModuleManager.h index 93b89e95..5bebe934 100644 --- a/src/core/module/ModuleManager.h +++ b/src/core/module/ModuleManager.h @@ -65,12 +65,20 @@ class GPGFRONTEND_CORE_EXPORT ModuleManager virtual ~ModuleManager() override; + auto LoadModule(QString) -> void; + + auto SearchModule(ModuleIdentifier) -> ModulePtr; + void RegisterModule(ModulePtr); auto IsModuleActivated(ModuleIdentifier) -> bool; + void ListenEvent(ModuleIdentifier, EventIdentifier); + void TriggerEvent(EventRefrernce); + auto SearchEvent(EventTriggerIdentifier) -> std::optional; + void ActiveModule(ModuleIdentifier); void DeactiveModule(ModuleIdentifier); -- cgit v1.2.3