diff options
author | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2002-04-11 21:28:59 (GMT) |
---|---|---|
committer | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2002-04-11 21:28:59 (GMT) |
commit | f368891ac839f5b6e20d717b586fc14afa194f3b (patch) | |
tree | 47d8cfd3a20bab35639a576c74e592c28feb0fbd /src/H5Bprivate.h | |
parent | 03520e73ed215adb28cad26fecdaf60ec7514355 (diff) | |
download | hdf5-f368891ac839f5b6e20d717b586fc14afa194f3b.zip hdf5-f368891ac839f5b6e20d717b586fc14afa194f3b.tar.gz hdf5-f368891ac839f5b6e20d717b586fc14afa194f3b.tar.bz2 |
[svn-r5168]
Purpose:
H5Dset_extent API function
Description:
1 new public function: H5Dset_extent, that allows shrinking a dataset
several private functions that free the previously allocated chunks
H5F_istore_prune_by_extent, H5B_prune_by_extent : removes the chunks
H5F_istore_initialize_by_extent : initializes them with the fill value
H5S_select_fill is used to fill the selection in the memory buffer
Platforms tested:
Windows 2000
SUN( arabica)
LINUX (eirene)
IRIX64 (modi4)
Diffstat (limited to 'src/H5Bprivate.h')
-rw-r--r-- | src/H5Bprivate.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/H5Bprivate.h b/src/H5Bprivate.h index 8cab893..e6fc2ac 100644 --- a/src/H5Bprivate.h +++ b/src/H5Bprivate.h @@ -87,6 +87,13 @@ typedef struct H5B_class_t { herr_t (*decode)(H5F_t*, struct H5B_t*, uint8_t*, void*); herr_t (*encode)(H5F_t*, struct H5B_t*, uint8_t*, void*); herr_t (*debug_key)(FILE*, int, int, const void*, const void*); + + /*pvn */ + + /* iterate through the leaf nodes, removing chunks upon H5Dset_extend request */ + herr_t (*prune_extent)( H5F_t *f, void *_lt_key, haddr_t addr, + void *_udata, hsize_t *size ); + } H5B_class_t; /* @@ -132,5 +139,8 @@ __DLL__ herr_t H5B_remove(H5F_t *f, const H5B_class_t *type, haddr_t addr, __DLL__ herr_t H5B_iterate (H5F_t *f, const H5B_class_t *type, haddr_t addr, void *udata); __DLL__ int H5B_Kvalue(H5F_t *f, const H5B_class_t *type); +__DLL__ herr_t H5B_prune_by_extent( H5F_t *f, const H5B_class_t *type, haddr_t addr, + void *udata, hsize_t *size ); + #endif |