72ZXC_EXPORT uint32_t
zxc_dict_id(
const void* dict,
size_t dict_size,
const void* huf_lengths);
91ZXC_EXPORT
int zxc_dict_load(
const void* buf,
size_t buf_size,
const void** content_out,
92 size_t* content_size_out,
const void** huf_out, uint32_t* dict_id_out);
108ZXC_EXPORT int64_t
zxc_dict_save(
const void* content,
size_t content_size,
const void* huf_lengths,
109 void* buf,
size_t buf_capacity);
146ZXC_EXPORT int64_t
zxc_train_dict(
const void*
const* samples,
const size_t* sample_sizes,
147 size_t n_samples,
void* dict_buf,
size_t dict_capacity);
172ZXC_EXPORT
int zxc_train_dict_huf(
const void*
const* samples,
const size_t* sample_sizes,
173 size_t n_samples,
const void* dict,
size_t dict_size,
174 uint8_t* huf_lengths_out);
195ZXC_EXPORT int64_t
zxc_dict_train(
const void*
const* samples,
const size_t* sample_sizes,
196 size_t n_samples,
void* zxd_buf,
size_t zxd_capacity);
208ZXC_EXPORT
const void*
zxc_dict_huf(
const void* buf,
size_t buf_size);
int64_t zxc_dict_train(const void *const *samples, const size_t *sample_sizes, size_t n_samples, void *zxd_buf, size_t zxd_capacity)
One-call dictionary creation: content + shared table, serialized to ready-to-write ....
int zxc_train_dict_huf(const void *const *samples, const size_t *sample_sizes, size_t n_samples, const void *dict, size_t dict_size, uint8_t *huf_lengths_out)
Trains the shared literal Huffman table for an already-trained dictionary.
int64_t zxc_train_dict(const void *const *samples, const size_t *sample_sizes, size_t n_samples, void *dict_buf, size_t dict_capacity)
Trains a dictionary from a corpus of samples.
size_t zxc_dict_save_bound(size_t content_size)
Returns the .zxd file size for a given content size.
const void * zxc_dict_huf(const void *buf, size_t buf_size)
Returns a pointer to the shared Huffman table inside a .zxd buffer.
int zxc_dict_load(const void *buf, size_t buf_size, const void **content_out, size_t *content_size_out, const void **huf_out, uint32_t *dict_id_out)
Loads and validates a .zxd dictionary file from a memory buffer.
int64_t zxc_dict_save(const void *content, size_t content_size, const void *huf_lengths, void *buf, size_t buf_capacity)
Serializes dictionary content and its shared Huffman table to .zxd.
uint32_t zxc_dict_get_id(const void *buf, size_t buf_size)
Returns the dictionary ID stored in a .zxd file buffer.
uint32_t zxc_dict_id(const void *dict, size_t dict_size, const void *huf_lengths)
Computes the dictionary ID for the given content and optional table.
Platform-specific symbol visibility macros.