ddn.data.hdf5.filter
HDF5 Filter/Compression Wrapper
This module provides a D wrapper for HDF5 filter and compression operations. Filters are used to transform data during I/O operations, commonly for compression, checksumming, and data transformation.
License
BSD-3-Clause
enum SzipOption
Types 3
enumSzipOption : uint
SZIP options for compression.
ALLOW_K13 = 1Allow encoding with SZIP
CHIP = 2Use chip encoding
EC = 4Use entropy coding (EC)
NN = 32Use nearest neighbor coding (NN)
structFilterInfo
Filter information flags.
Fields
bool canEncodeWhether the filter can encode (compress) databool canDecodeWhether the filter can decode (decompress) datastructFilter
Static wrapper for HDF5 filter and compression operations.
This struct provides static methods for checking filter availability and convenience methods for enabling filters on dataset creation property lists.
Example:
// Check if GZIP is available
if (Filter.isAvailable(H5Z_FILTER.DEFLATE)) {
// Enable GZIP compression on a property list
Filter.enableGzip(dcpl, 6);
}
// Enable a compression pipeline
Filter.enableShuffle(dcpl);
Filter.enableGzip(dcpl, 6);
Filter.enableFletcher32(dcpl);Methods
FilterInfo getInfo(H5Z_FILTER filter) staticGets information about a filter's capabilities (enum overload).void enableGzip(hid_t plistId, uint level = 6) staticEnables GZIP (DEFLATE) compression on a dataset creation property list.void enableSzip(hid_t plistId, uint optionsMask, uint pixelsPerBlock = 16) staticEnables SZIP compression on a dataset creation property list.void enableShuffle(hid_t plistId) staticEnables the shuffle filter on a dataset creation property list.void enableScaleOffset(hid_t plistId, H5Z_SO scaleType, int scaleFactor = 0) staticEnables the scale-offset filter on a dataset creation property list.void enableFletcher32(hid_t plistId) staticEnables the Fletcher32 checksum filter on a dataset creation property list.void enableStandardPipeline(hid_t plistId, uint gzipLevel = 6) staticEnables a standard compression pipeline: shuffle + gzip + fletcher32.