summaryrefslogtreecommitdiffstats
path: root/src/H5Bprivate.h
diff options
context:
space:
mode:
authorPedro Vicente Nunes <pvn@hdfgroup.org>2002-04-11 21:28:59 (GMT)
committerPedro Vicente Nunes <pvn@hdfgroup.org>2002-04-11 21:28:59 (GMT)
commitf368891ac839f5b6e20d717b586fc14afa194f3b (patch)
tree47d8cfd3a20bab35639a576c74e592c28feb0fbd /src/H5Bprivate.h
parent03520e73ed215adb28cad26fecdaf60ec7514355 (diff)
downloadhdf5-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.h10
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