diff options
Diffstat (limited to 'src/module/sdk/Basic.h')
-rw-r--r-- | src/module/sdk/Basic.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/module/sdk/Basic.h b/src/module/sdk/Basic.h index 62a547b3..a232fd64 100644 --- a/src/module/sdk/Basic.h +++ b/src/module/sdk/Basic.h @@ -28,9 +28,31 @@ #pragma once -namespace GpgFrontend::Module::SDK { +#include "GpgFrontendModuleSDKExport.h" +extern "C" { +using CommandExeucteCallback = void (*)(void* data, int errcode, + const char* out, const char* err); +using CommandExecuteContext = struct { + const char* cmd; + int32_t argc; + const char** argv; + CommandExeucteCallback cb; + void* data; +}; +auto GPGFRONTEND_MODULE_SDK_EXPORT AllocateMemory(uint32_t size) -> void*; + +void GPGFRONTEND_MODULE_SDK_EXPORT FreeMemory(void*); + +void GPGFRONTEND_MODULE_SDK_EXPORT ExecuteCommandSync(const char* cmd, + int32_t argc, + const char** argv, + CommandExeucteCallback cb, + void* data); + +void GPGFRONTEND_MODULE_SDK_EXPORT ExecuteCommandBatchSync( + int32_t context_size, const CommandExecuteContext* context); }
\ No newline at end of file |