@@ -235,6 +235,45 @@ ncmpi_def_var(int ncid, /* IN: file ID */
235235 return NC_NOERR ;
236236}
237237
238+ #ifdef ENABLE_COMPRESSION
239+ /*----< ncmpi_var_set_chunk() >----------------------------------------------------*/
240+ /* This is a collective subroutine. */
241+ int ncmpi_var_set_chunk (int ncid , /* IN: file ID */
242+ int varid ,
243+ int * chunk_dim )
244+ {
245+ int err ;
246+ int ndim ;
247+
248+ err = ncmpi_inq_varndims (ncid ,varid , & ndim );
249+ if (err != NC_NOERR ) return err ;
250+
251+ return ncmpi_put_att_int (ncid , varid , "_chunkdim" , NC_INT , ndim , chunk_dim );
252+ }
253+ /*----< ncmpi_var_get_chunk() >----------------------------------------------------*/
254+ int ncmpi_var_get_chunk (int ncid , /* IN: file ID */
255+ int varid ,
256+ int * chunk_dim )
257+ {
258+ return ncmpi_get_att_int (ncid , varid , "_chunkdim" , chunk_dim );
259+ }
260+ /*----< ncmpi_var_set_filter() >----------------------------------------------------*/
261+ /* This is a collective subroutine. */
262+ int ncmpi_var_set_filter (int ncid , /* IN: file ID */
263+ int varid ,
264+ int filter )
265+ {
266+ return ncmpi_put_att_int (ncid , varid , "_filter" , NC_INT , 1 , & filter );
267+ }
268+ /*----< ncmpi_var_get_filter() >----------------------------------------------------*/
269+ int ncmpi_var_get_filter (int ncid , /* IN: file ID */
270+ int varid ,
271+ int * filter )
272+ {
273+ return ncmpi_get_att_int (ncid , varid , "_filter" , filter );
274+ }
275+ #endif
276+
238277/*----< ncmpi_def_var_fill() >-----------------------------------------------*/
239278/* this API is collective, and must be called in define mode */
240279int
0 commit comments