pub unsafe extern "C" fn om_decoder_decode_chunks(
decoder: *const OmDecoder_t,
chunkIndex: OmRange_t,
data: *const c_void,
dataCount: u64,
into: *mut c_void,
chunkBuffer: *mut c_void,
error: *mut OmError_t,
) -> boolExpand description
@brief Decodes multiple data chunks from compressed input into a target buffer.
This function iteratively decodes a range of chunks from the compressed input data
using the specified decoder configuration. It processes each chunk within the provided
range, decompressing it into a buffer and copying the decompressed data into the
output buffer. The decoding uses an internal function _om_decoder_decode_chunk
for each individual chunk.
@param[in] decoder A pointer to the om_decoder_t structure, which defines
the decoder configuration, including dimensions, chunk sizes,
data type and compression type.
@param[in] chunk An om_range_t structure specifying the range of chunks
to decode. The range is defined by chunk.lowerBound
(inclusive) and chunk.upperBound (exclusive).
@param[in] data A pointer to the compressed data buffer from which the chunks
are read and decoded.
@param[in] data_size The size of the data buffer, in bytes. This ensures that
the function does not read beyond the provided data size.
@param[out] into A pointer to the output buffer where the decompressed data
will be written. The buffer should have enough space to store
the decompressed output.
@param[out] chunkBuffer A temporary buffer used for storing intermediate decompressed
chunk data before copying it into the final output buffer.
Must be sized according to om_decoder_read_buffer_size
@param[out] error May return an out-of-bounds read error on corrupted data.
@returns false if an error occurred.