46QSC_CPLUSPLUS_ENABLED_START
97#define QSC_LIST_ALIGNMENT 64ULL
103#define QSC_LIST_MAX_DEPTH 102400ULL
231#if defined(QSC_DEBUG_MODE)
240QSC_CPLUSPLUS_ENABLED_END
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.
#define QSC_EXPORT_API
API export macro for Microsoft compilers when importing from a DLL.
Definition common.h:520
QSC_EXPORT_API size_t qsc_list_serialize(uint8_t *output, const qsc_list_state *ctx)
Serialize the list into a byte array.
Definition list.c:239
QSC_EXPORT_API void qsc_list_dispose(qsc_list_state *ctx)
Dispose of the list state.
Definition list.c:88
QSC_EXPORT_API void qsc_list_rshuffle(qsc_list_state *ctx)
Randomly shuffle the items in the list.
Definition list.c:165
QSC_EXPORT_API void qsc_list_add(qsc_list_state *ctx, void *item)
Add an item to the list.
Definition list.c:7
QSC_EXPORT_API void qsc_list_deserialize(qsc_list_state *ctx, const uint8_t *input)
Convert a serialized list into a list context.
Definition list.c:70
QSC_EXPORT_API size_t qsc_list_size(const qsc_list_state *ctx)
Get the serialized size of the list.
Definition list.c:262
QSC_EXPORT_API size_t qsc_list_count(const qsc_list_state *ctx)
Get the number of items in the list.
Definition list.c:54
QSC_EXPORT_API bool qsc_list_empty(const qsc_list_state *ctx)
Check if the list is empty.
Definition list.c:103
QSC_EXPORT_API void qsc_list_copy(const qsc_list_state *ctx, size_t index, void *item)
Copy an item from the list.
Definition list.c:36
QSC_EXPORT_API void qsc_list_item(const qsc_list_state *ctx, uint8_t *item, size_t index)
Retrieve a pointer to a list item.
Definition list.c:148
QSC_EXPORT_API void qsc_list_sort(qsc_list_state *ctx)
Sort the items in the list.
Definition list.c:278
QSC_EXPORT_API void qsc_list_remove(qsc_list_state *ctx, size_t index)
Remove an item from the list.
Definition list.c:201
QSC_EXPORT_API bool qsc_list_full(const qsc_list_state *ctx)
Check if the list is full.
Definition list.c:119
QSC_EXPORT_API void qsc_list_initialize(qsc_list_state *ctx, size_t width)
Initialize the list state.
Definition list.c:135
Contains the list context state.
Definition list.h:113
size_t width
Definition list.h:116
size_t count
Definition list.h:115
uint8_t * items
Definition list.h:114