33 #include "core/module/Event.h"
34 #include "core/thread/TaskRunner.h"
35 #include "function/SecureMemoryAllocator.h"
36 #include "module/GlobalRegisterTable.h"
40 class GlobalModuleContext;
41 class GlobalRegisterTable;
45 using ModuleIdentifier = QString;
46 using ModulePtr = std::shared_ptr<Module>;
47 using ModuleRawPtr = Module*;
49 using GMCPtr = std::shared_ptr<GlobalModuleContext>;
50 using GRTPtr = std::shared_ptr<GlobalRegisterTable>;
52 using TaskRunnerPtr = std::shared_ptr<Thread::TaskRunner>;
65 auto GetTaskRunner(
ModuleRawPtr) -> std::optional<TaskRunnerPtr>;
67 auto GetTaskRunner(ModuleIdentifier) -> std::optional<TaskRunnerPtr>;
69 auto GetGlobalTaskRunner() -> std::optional<TaskRunnerPtr>;
71 auto RegisterModule(ModulePtr) -> bool;
73 auto ActiveModule(ModuleIdentifier) -> bool;
75 auto DeactivateModule(ModuleIdentifier) -> bool;
77 auto ListenEvent(ModuleIdentifier, EventIdentifier) -> bool;
79 auto TriggerEvent(EventRefrernce) -> bool;
81 auto IsModuleActivated(ModuleIdentifier) -> bool;
85 SecureUniquePtr<Impl> p_;
Definition: GlobalModuleContext.cpp:44
Definition: GlobalModuleContext.h:54