Plugins#
Filters#
-
typedef int (*blosc2_filter_forward_cb)(const uint8_t*, uint8_t*, int32_t, uint8_t, blosc2_cparams*, uint8_t)#
-
typedef int (*blosc2_filter_backward_cb)(const uint8_t*, uint8_t*, int32_t, uint8_t, blosc2_dparams*, uint8_t)#
-
struct blosc2_filter#
The parameters for a user-defined filter.
Public Members
-
uint8_t id#
The filter identifier.
-
char *name#
The filter name.
-
uint8_t version#
The filter version.
-
blosc2_filter_forward_cb forward#
The filter function that is used during compression.
-
blosc2_filter_backward_cb backward#
The filter function that is used during decompression.
-
uint8_t id#
-
int blosc2_register_filter(blosc2_filter *filter)#
Register locally a user-defined filter in Blosc.
- Parameters:
filter – The filter to register.
- Returns:
0 if succeeds. Else a negative code is returned.
Codecs#
-
typedef int (*blosc2_codec_encoder_cb)(const uint8_t *input, int32_t input_len, uint8_t *output, int32_t output_len, uint8_t meta, blosc2_cparams *cparams, const void *chunk)#
-
typedef int (*blosc2_codec_decoder_cb)(const uint8_t *input, int32_t input_len, uint8_t *output, int32_t output_len, uint8_t meta, blosc2_dparams *dparams, const void *chunk)#
-
struct blosc2_codec#
Public Members
-
uint8_t compcode#
The codec identifier.
-
char *compname#
The codec name.
-
uint8_t complib#
The codec library format.
-
uint8_t version#
The codec version.
-
blosc2_codec_encoder_cb encoder#
The codec encoder that is used during compression.
-
blosc2_codec_decoder_cb decoder#
The codec decoder that is used during decompression.
-
uint8_t compcode#
-
int blosc2_register_codec(blosc2_codec *codec)#
Register locally a user-defined codec in Blosc.
- Parameters:
codec – The codec to register.
- Returns:
0 if succeeds. Else a negative code is returned.
Tuners#
-
struct blosc2_tuner#
Public Members
-
int (*init)(void *config, blosc2_context *cctx, blosc2_context *dctx)#
Initialize tuner. Keep in mind dctx may be NULL. This should memcpy the cctx->tuner_params.
-
int (*next_blocksize)(blosc2_context *context)#
Only compute the next blocksize. Only it is executed if tuner is not initialized.
-
int (*next_cparams)(blosc2_context *context)#
Compute the next cparams. Only is executed if tuner is initialized.
-
int (*update)(blosc2_context *context, double ctime)#
Update the tuner parameters.
-
int (*free)(blosc2_context *context)#
Free the tuner.
-
int id#
The tuner id.
-
char *name#
The tuner name.
-
int (*init)(void *config, blosc2_context *cctx, blosc2_context *dctx)#
-
int blosc2_register_tuner(blosc2_tuner *tuner)#
Register locally a user-defined tuner in Blosc.
- Parameters:
tuner – The tuner to register.
- Returns:
0 if succeeds. Else a negative code is returned.
IO backends#
-
typedef void *(*blosc2_open_cb)(const char *urlpath, const char *mode, void *params)#
-
typedef int (*blosc2_close_cb)(void *stream)#
-
typedef int64_t (*blosc2_write_cb)(const void *ptr, int64_t size, int64_t nitems, int64_t position, void *stream)#
-
typedef int64_t (*blosc2_read_cb)(void **ptr, int64_t size, int64_t nitems, int64_t position, void *stream)#
-
typedef int (*blosc2_truncate_cb)(void *stream, int64_t size)#
-
struct blosc2_io_cb#
Public Members
-
uint8_t id#
The IO identifier.
-
char *name#
The IO name.
-
bool is_allocation_necessary#
If true, the caller needs to allocate data for the read function (ptr argument).
If false, the read function takes care of memory allocation and stores the address in the allocated_ptr argument.
-
blosc2_open_cb open#
The IO open callback.
-
blosc2_close_cb close#
The IO close callback.
-
blosc2_size_cb size#
The IO size callback.
-
blosc2_write_cb write#
The IO write callback.
-
blosc2_read_cb read#
The IO read callback.
-
blosc2_truncate_cb truncate#
The IO truncate callback.
-
blosc2_destroy_cb destroy#
The IO destroy callback (called in the end when finished with the schunk).
-
uint8_t id#
-
struct blosc2_io#
-
int blosc2_register_io_cb(const blosc2_io_cb *io)#
Register a user-defined input/output callbacks in Blosc.
- Parameters:
io – The callbacks API to register.
- Returns:
0 if succeeds. Else a negative code is returned.
-
blosc2_io_cb *blosc2_get_io_cb(uint8_t id)#
Get a user-defined input/output callback in Blosc.
- Parameters:
id – The id of the callback to get.
- Returns:
A pointer containing the desired callback if success. Else a NULL pointer is returned.