int adapt_init(void **data, int *level, int nthreads, uint64_t chunksize, int file_version, compress_op_t op) { struct adapt_data *adat = (struct adapt_data *)(*data); int rv = 0, lv = 1; if (!adat) { adat = (struct adapt_data *)slab_alloc(NULL, sizeof (struct adapt_data)); adat->adapt_mode = 1; rv = ppmd_state_init(&(adat->ppmd_data), level, 0); /* * LZ4 is used to tackle some embedded archive headers and/or zero paddings in * otherwise incompressible data. So we always use it at the lowest and fastest * compression level. */ if (rv == 0) rv = lz4_init(&(adat->lz4_data), &lv, nthreads, chunksize, file_version, op); adat->lzma_data = NULL; adat->bsc_data = NULL; *data = adat; if (*level > 9) *level = 9; } lzma_count = 0; bzip2_count = 0; ppmd_count = 0; bsc_count = 0; lz4_count = 0; return (rv); }
int ppmd_init(void **data, int *level, int nthreads, uint64_t chunksize, int file_version, compress_op_t op) { return (ppmd_state_init(data, level, 1)); }