add cluster i/o pipeline

This commit is contained in:
2025-01-30 18:10:38 +00:00
parent a69595b324
commit dad7c27bf6
18 changed files with 1147 additions and 50 deletions

30
src/zstd.c Normal file
View File

@@ -0,0 +1,30 @@
#include "pipeline.h"
#include <zstd.h>
static enum ec3_status compress(
struct ec3_pipeline_stage *stage,
const void *src,
size_t len,
void *dest,
size_t *nr_written)
{
*nr_written = ZSTD_compress(dest, len, src, len, 10);
return EC3_SUCCESS;
}
static enum ec3_status decompress(
struct ec3_pipeline_stage *stage,
const void *src,
void *dest,
size_t *nr_read)
{
return EC3_SUCCESS;
}
const struct ec3_pipeline_stage_type pipeline_zstd = {
.t_id = EC3_PIPELINE_ZSTD,
.t_flags = EC3_PIPELINE_F_BUFFERED,
.t_data_in = decompress,
.t_data_out = compress,
};