From de702d223a336417e8b2b547ddc8b3ec0a4101e7 Mon Sep 17 00:00:00 2001 From: Gabriel mermelstein Date: Thu, 10 Apr 2025 12:41:48 +0300 Subject: [PATCH] adding SetEventCallback --- library/libsds.h | 7 ++----- library/libsds.nim | 7 +++++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/library/libsds.h b/library/libsds.h index c11a432..5d25140 100644 --- a/library/libsds.h +++ b/library/libsds.h @@ -23,13 +23,10 @@ typedef void (*SdsCallBack) (int callerRet, const char* msg, size_t len, void* u // --- Core API Functions --- -/** - * @brief Creates a new ReliabilityManager instance. - * @param channelId A unique identifier for the communication channel. - * @return An opaque handle (void*) representing the instance, or NULL on failure. - */ + void* NewReliabilityManager(const char* channelId, SdsCallBack callback, void* userData); +void SetEventCallback(void* ctx, SdsCallBack callback, void* userData); #ifdef __cplusplus } diff --git a/library/libsds.nim b/library/libsds.nim index 767586c..903bbec 100644 --- a/library/libsds.nim +++ b/library/libsds.nim @@ -140,5 +140,12 @@ proc NewReliabilityManager( return ctx +proc SetEventCallback( + ctx: ptr SdsContext, callback: SdsCallBack, userData: pointer +) {.dynlib, exportc.} = + initializeLibrary() + ctx[].eventCallback = cast[pointer](callback) + ctx[].eventUserData = userData + ### End of exported procs ################################################################################