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 Blosc/c-blosc2

enumerator BLOSC_FILTER_NDMEAN#

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

See Blosc/c-blosc2

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 Blosc/c-blosc2

enumerator BLOSC_CODEC_ZFP_FIXED_PRECISION#

ZFP compressor for fixed precision.

The desired precision is set in compcode_meta. See Blosc/c-blosc2

enumerator BLOSC_CODEC_ZFP_FIXED_RATE#

ZFP compressor for fixed precision.

The desired rate is set in compcode_meta. See Blosc/c-blosc2

enumerator BLOSC_CODEC_OPENHTJ2K#

OpenHTJ2K compressor for JPEG 2000 HT.

See Blosc/blosc2_openhtj2k

enumerator BLOSC_CODEC_GROK#

Grok compressor for JPEG 2000.

See 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