NetCDF  4.9.2
netcdf_filter.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define H5_SZIP_ALL_MASKS   (H5_SZIP_CHIP_OPTION_MASK|H5_SZIP_EC_OPTION_MASK|H5_SZIP_NN_OPTION_MASK)
 
#define H5_SZIP_ALLOW_K13_OPTION_MASK   1
 
#define H5_SZIP_CHIP_OPTION_MASK   2
 
#define H5_SZIP_EC_OPTION_MASK   4
 
#define H5_SZIP_LSB_OPTION_MASK   8
 
#define H5_SZIP_MAX_PIXELS_PER_BLOCK   32
 
#define H5_SZIP_MSB_OPTION_MASK   16
 
#define H5_SZIP_NN_OPTION_MASK   32
 
#define H5_SZIP_RAW_OPTION_MASK   128
 
#define H5Z_FILTER_BLOSC   32001
 
#define H5Z_FILTER_BZIP2   307
 
#define H5Z_FILTER_DEFLATE   1
 
#define H5Z_FILTER_FLETCHER32   3
 
#define H5Z_FILTER_SHUFFLE   2
 
#define H5Z_FILTER_SZIP   4
 
#define H5Z_FILTER_ZSTD   32015
 
#define NC_MAX_PIXELS_PER_BLOCK   32
 The maximum allowed setting for pixels_per_block when calling nc_def_var_szip(). More...
 
#define NC_SZIP_EC   4
 Selects entropy coding method for szip. More...
 
#define NC_SZIP_NN   32
 Selects nearest neighbor coding method for szip. More...
 

Enumerations

enum  BLOSC_SHUFFLE { BLOSC_NOSHUFFLE =0 , BLOSC_SHUFFLE =1 , BLOSC_BITSHUFFLE =2 }
 
enum  BLOSC_SUBCOMPRESSORS {
  BLOSC_LZ =0 , BLOSC_LZ4 =1 , BLOSC_LZ4HC =2 , BLOSC_SNAPPY =3 ,
  BLOSC_ZLIB =4 , BLOSC_ZSTD =5
}
 

Functions

EXTERNL int nc_def_var_blosc (int ncid, int varid, unsigned subcompressor, unsigned level, unsigned blocksize, unsigned addshuffle)
 Turn on blosc for a variable. More...
 
EXTERNL int nc_def_var_bzip2 (int ncid, int varid, int level)
 Turn on bzip2 compression for a variable. More...
 
EXTERNL int nc_def_var_filter (int ncid, int varid, unsigned int id, size_t nparams, const unsigned int *parms)
 Define a new variable filter Assumes HDF5 format using unsigned ints. More...
 
EXTERNL int nc_def_var_zstandard (int ncid, int varid, int level)
 Turn on Zstandard compression for a variable. More...
 
EXTERNL int nc_inq_filter_avail (int ncid, unsigned id)
 Test if filter is available. More...
 
EXTERNL int nc_inq_var_blosc (int ncid, int varid, int *hasfilterp, unsigned *subcompressorp, unsigned *levelp, unsigned *blocksizep, unsigned *addshufflep)
 Learn whether Blosc compression is on for a variable, and, if so, the settings. More...
 
EXTERNL int nc_inq_var_bzip2 (int ncid, int varid, int *hasfilterp, int *levelp)
 Learn whether bzip2 compression is on for a variable, and, if so, the level setting. More...
 
EXTERNL int nc_inq_var_filter (int ncid, int varid, unsigned int *idp, size_t *nparams, unsigned int *params)
 Find the first filter (if any) associated with a variable. More...
 
EXTERNL int nc_inq_var_filter_ids (int ncid, int varid, size_t *nfilters, unsigned int *filterids)
 Find the set of filters (if any) associated with a variable. More...
 
EXTERNL int nc_inq_var_filter_info (int ncid, int varid, unsigned int id, size_t *nparams, unsigned int *params)
 Find the the param info about filter (if any) associated with a variable and with specified id. More...
 
EXTERNL int nc_inq_var_zstandard (int ncid, int varid, int *hasfilterp, int *levelp)
 Learn whether Zstandard compression is on for a variable, and, if so, the level setting. More...
 

Macro Definition Documentation

◆ NC_MAX_PIXELS_PER_BLOCK

#define NC_MAX_PIXELS_PER_BLOCK   32

The maximum allowed setting for pixels_per_block when calling nc_def_var_szip().

Definition at line 43 of file netcdf_filter.h.

◆ NC_SZIP_EC

#define NC_SZIP_EC   4

Selects entropy coding method for szip.

Definition at line 36 of file netcdf_filter.h.

◆ NC_SZIP_NN

#define NC_SZIP_NN   32

Selects nearest neighbor coding method for szip.

Definition at line 37 of file netcdf_filter.h.

Function Documentation

◆ nc_def_var_bzip2()

EXTERNL int nc_def_var_bzip2 ( int  ncid,
int  varid,
int  level 
)

Turn on bzip2 compression for a variable.

Parameters
ncidFile ID.
varidVariable ID.
levelFrom 1 to 9. Set the block size to 100k, 200k ... 900k when compressing. (bzip2 default level is 9).
Returns
0 for success, error code otherwise.
Author
Dennis Heimbigner, Ed Hartnett

Definition at line 332 of file dfilter.c.

◆ nc_def_var_filter()

EXTERNL int nc_def_var_filter ( int  ncid,
int  varid,
unsigned int  id,
size_t  nparams,
const unsigned int *  params 
)

Define a new variable filter Assumes HDF5 format using unsigned ints.

Only variables with chunked storage can use filters.

Parameters
ncidFile and group ID.
varidVariable ID.
idFilter ID.
nparamsNumber of filter parameters.
paramsFilter parameters.
Returns
NC_NOERR No error.
NC_EINVAL Variable must be chunked.
NC_EBADID Bad ID.
Author
Dennis Heimbigner

Definition at line 124 of file dfilter.c.

◆ nc_def_var_zstandard()

EXTERNL int nc_def_var_zstandard ( int  ncid,
int  varid,
int  level 
)

Turn on Zstandard compression for a variable.

Parameters
ncidFile ID.
varidVariable ID.
levelFrom -131072 to 22 (depends on Zstandard version). when compressing. Regular compression levels are from 1 up to 19. Use levels >= 20, labeled --ultra, cautiously: they require more memory. Negative compression levels that extend the range of speed vs. ratio preferences. The lower the level, the faster the speed (at the cost of compression).
Returns
0 for success, error code otherwise.
Author
Charlie Zender, Dennis Heimbigner, Ed Hartnett

Definition at line 400 of file dfilter.c.

◆ nc_inq_filter_avail()

EXTERNL int nc_inq_filter_avail ( int  ncid,
unsigned  id 
)

Test if filter is available.

Would prefer returning a list of all available filters, but HDF5 does not support that capability.

Parameters
ncidID of file for which filter list is desired
idfilter id of interest
Returns
NC_NOERR if the filter is available
NC_EBADID if ncid is invalid
NC_ENOFILTER if filter is not available.
Author
Dennis Heimbigner

Definition at line 213 of file dfilter.c.

◆ nc_inq_var_blosc()

EXTERNL int nc_inq_var_blosc ( int  ncid,
int  varid,
int *  hasfilterp,
unsigned *  subcompressorp,
unsigned *  levelp,
unsigned *  blocksizep,
unsigned *  addshufflep 
)

Learn whether Blosc compression is on for a variable, and, if so, the settings.

Parameters
ncidFile ID.
varidVariable ID.
hasfilterpPointer that gets a 0 if blosc is not in use for this var, and a 1 if it is. Ignored if NULL.
subcompressorpPointer that gets the subcompressor, if blosc is in use. Ignored if NULL.
levelpPointer that gets the level setting, if blosc is in use. Ignored if NULL.
blocksizepPointer that gets the block size, if blosc is in use. Ignored if NULL.
addshufflepPointer that gets non-zero value if shuffle is in use, if blosc is in use. Ignored if NULL.
Returns
0 for success, error code otherwise.
Author
Dennis Heimbigner

Definition at line 527 of file dfilter.c.

◆ nc_inq_var_bzip2()

EXTERNL int nc_inq_var_bzip2 ( int  ncid,
int  varid,
int *  hasfilterp,
int *  levelp 
)

Learn whether bzip2 compression is on for a variable, and, if so, the level setting.

Parameters
ncidFile ID.
varidVariable ID.
hasfilterpPointer that gets a 0 if bzip2 is not in use for this var, and a 1 if it is. Ignored if NULL.
levelpPointer that gets the level setting (from 1 to 9), if bzip2 is in use. Ignored if NULL.
Returns
0 for success, error code otherwise.
Author
Dennis Heimbigner, Ed Hartnett

Definition at line 363 of file dfilter.c.

◆ nc_inq_var_zstandard()

EXTERNL int nc_inq_var_zstandard ( int  ncid,
int  varid,
int *  hasfilterp,
int *  levelp 
)

Learn whether Zstandard compression is on for a variable, and, if so, the level setting.

Parameters
ncidFile ID.
varidVariable ID.
hasfilterpPointer that gets a 0 if Zstandard is not in use for this var, and a 1 if it is. Ignored if NULL.
levelpPointer that gets the level setting (from -131072 to 22), if Zstandard is in use. Ignored if NULL.
Returns
0 for success, error code otherwise.
Author
Charlie Zender, Dennis Heimbigner, Ed Hartnett

Definition at line 436 of file dfilter.c.