Utility variables

This are enum values which avoid the nuisance of remembering codes and IDs.

Limits for different features

enumerator BLOSC_MIN_HEADER_LENGTH

Minimum header length (Blosc1)

enumerator BLOSC_EXTENDED_HEADER_LENGTH

Extended header length (Blosc2, see README_HEADER)

enumerator BLOSC2_MAX_OVERHEAD

The maximum overhead during compression in bytes.

This equals to BLOSC_EXTENDED_HEADER_LENGTH now, but can be higher in future implementations.

enumerator BLOSC_MIN_BUFFERSIZE

Minimum buffer size to be compressed.

enumerator BLOSC2_MAX_BUFFERSIZE

Maximum source buffer size to be compressed.

enumerator BLOSC_MAX_TYPESIZE

Maximum typesize before considering source buffer as a stream of bytes.

Cannot be larger than 255.

enumerator BLOSC2_MAX_FILTERS

Maximum number of filters in the filter pipeline.

Codes for filters

enumerator BLOSC_NOSHUFFLE

No shuffle (for compatibility with Blosc1).

enumerator BLOSC_NOFILTER

No filter.

enumerator BLOSC_SHUFFLE

Byte-wise shuffle. filters_meta does not have any effect here.

enumerator BLOSC_BITSHUFFLE

Bit-wise shuffle. filters_meta does not have any effect here.

enumerator BLOSC_DELTA

Delta filter. filters_meta does not have any effect here.

enumerator BLOSC_TRUNC_PREC

Truncate mantissa precision.

Positive values in filters_meta will keep bits; negative values will zero bits.

enumerator BLOSC_FILTER_NDCELL

Simple filter for grouping NDim cell data together.

See https://github.com/Blosc/c-blosc2/blob/main/plugins/filters/ndcell/README.md

enumerator BLOSC_FILTER_NDMEAN

Simple filter for replacing content of a NDim cell with its mean value.

See https://github.com/Blosc/c-blosc2/blob/main/plugins/filters/ndmean/README.md

enumerator BLOSC_FILTER_BYTEDELTA

Byteshuffle + delta.

The typesize should be specified in the filters_meta slot. Sometimes this can represent an advantage over BLOSC_SHUFFLE or BLOSC_BITSHUFFLE. See https://www.blosc.org/posts/bytedelta-enhance-compression-toolset/

enumerator BLOSC_FILTER_INT_TRUNC

Truncate int precision; positive values in filters_meta slot will keep bits; negative values will remove (set to zero) bits.

This is similar to BLOSC_TRUNC_PREC, but for integers instead of floating point data.

Compressor codecs

enumerator BLOSC_BLOSCLZ
enumerator BLOSC_LZ4
enumerator BLOSC_LZ4HC
enumerator BLOSC_ZLIB
enumerator BLOSC_ZSTD
enumerator BLOSC_CODEC_NDLZ

Simple Lempel-Ziv compressor for NDim data. Experimental, mainly for teaching purposes.

enumerator BLOSC_CODEC_ZFP_FIXED_ACCURACY

ZFP compressor for fixed accuracy mode.

The desired accuracy is set in compcode_meta. See https://github.com/Blosc/c-blosc2/blob/main/plugins/codecs/zfp/README.md

enumerator BLOSC_CODEC_ZFP_FIXED_PRECISION

ZFP compressor for fixed precision.

The desired precision is set in compcode_meta. See https://github.com/Blosc/c-blosc2/blob/main/plugins/codecs/zfp/README.md

enumerator BLOSC_CODEC_ZFP_FIXED_RATE

ZFP compressor for fixed precision.

The desired rate is set in compcode_meta. See https://github.com/Blosc/c-blosc2/blob/main/plugins/codecs/zfp/README.md

enumerator BLOSC_CODEC_OPENHTJ2K

OpenHTJ2K compressor for JPEG 2000 HT.

See https://github.com/Blosc/blosc2_openhtj2k

enumerator BLOSC_CODEC_GROK

Grok compressor for JPEG 2000.

See https://github.com/Blosc/blosc2_grok

Compressor names

BLOSC_BLOSCLZ_COMPNAME "blosclz"
BLOSC_LZ4_COMPNAME "lz4"
BLOSC_LZ4HC_COMPNAME "lz4hc"
BLOSC_ZLIB_COMPNAME "zlib"
BLOSC_ZSTD_COMPNAME "zstd"

Internal flags (blosc1_cbuffer_metainfo)

enumerator BLOSC_DOSHUFFLE

byte-wise shuffle

enumerator BLOSC_MEMCPYED

plain copy

enumerator BLOSC_DOBITSHUFFLE

bit-wise shuffle

enumerator BLOSC_DODELTA

delta coding