Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

138 lines
3.5 KiB
C
Raw Normal View History

2025-09-09 20:30:03 +02:00
/**
* libcodex.h - C Interface for Example Library
*
* This header provides the public API for libcodex
*
* To see the auto-generated header by Nim, run `make libcodex` from the
* repository root. The generated file will be created at:
* nimcache/release/libcodex/libcodex.h
*/
#ifndef __libcodex__
#define __libcodex__
#include <stddef.h>
#include <stdint.h>
// The possible returned values for the functions that return int
#define RET_OK 0
#define RET_ERR 1
#define RET_MISSING_CALLBACK 2
2025-09-09 20:30:03 +02:00
#ifdef __cplusplus
extern "C" {
#endif
typedef void (*CodexCallback) (int callerRet, const char* msg, size_t len, void* userData);
void* codex_new(
const char* configJson,
CodexCallback callback,
void* userData);
2025-09-12 12:18:17 +02:00
int codex_version(
void* ctx,
CodexCallback callback,
void* userData);
2025-09-12 12:22:16 +02:00
int codex_revision(
void* ctx,
CodexCallback callback,
void* userData);
int codex_repo(
void* ctx,
CodexCallback callback,
void* userData);
2025-09-16 15:45:11 +02:00
int codex_debug(
void* ctx,
CodexCallback callback,
void* userData);
2025-09-16 16:10:57 +02:00
int codex_spr(
void* ctx,
CodexCallback callback,
void* userData);
2025-09-17 07:50:11 +02:00
int codex_peer_id(
void* ctx,
CodexCallback callback,
void* userData);
2025-09-17 09:03:56 +02:00
int codex_log_level(
void* ctx,
const char* logLevel,
CodexCallback callback,
void* userData);
2025-09-17 13:25:30 +02:00
int codex_connect(
void* ctx,
const char* peerId,
const char** peerAddresses,
size_t peerAddressesSize,
CodexCallback callback,
void* userData);
2025-09-17 14:37:34 +02:00
int codex_peer_debug(
void* ctx,
const char* peerId,
CodexCallback callback,
void* userData);
2025-09-18 09:14:49 +02:00
int codex_upload_init(
void* ctx,
2025-09-19 15:05:03 +02:00
const char* filepath,
2025-09-18 09:14:49 +02:00
CodexCallback callback,
void* userData);
int codex_upload_chunk(
void* ctx,
const char* sessionId,
2025-09-19 15:05:03 +02:00
const uint8_t* chunk,
2025-09-18 09:14:49 +02:00
size_t len,
CodexCallback callback,
void* userData);
int codex_upload_finalize(
void* ctx,
const char* sessionId,
CodexCallback callback,
void* userData);
int codex_upload_cancel(
void* ctx,
const char* sessionId,
CodexCallback callback,
void* userData);
2025-09-19 15:05:03 +02:00
int codex_upload_file(
void* ctx,
const char* sessionId,
size_t chunkSize,
CodexCallback callback,
void* userData);
2025-09-09 20:30:03 +02:00
int codex_start(void* ctx,
CodexCallback callback,
void* userData);
int codex_stop(void* ctx,
CodexCallback callback,
void* userData);
// Destroys an instance of a codex node created with codex_new
int codex_destroy(void* ctx,
CodexCallback callback,
void* userData);
void codex_set_event_callback(void* ctx,
CodexCallback callback,
void* userData);
#ifdef __cplusplus
}
#endif
#endif /* __libcodex__ */