diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2008-09-11 14:03:23 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2008-09-11 14:03:23 (GMT) |
commit | f1d22675ffc09e604c8715b2a6a010ec21acb771 (patch) | |
tree | e6d1551f3f8eb71bfeace3255a3fca50cca25cbb /src/H5EAprivate.h | |
parent | 37ebc24cf85a9aca975181f67afea59ddf08a5ed (diff) | |
download | hdf5-f1d22675ffc09e604c8715b2a6a010ec21acb771.zip hdf5-f1d22675ffc09e604c8715b2a6a010ec21acb771.tar.gz hdf5-f1d22675ffc09e604c8715b2a6a010ec21acb771.tar.bz2 |
[svn-r15614] Description:
More extensible array features: add support for setting/getting
elements in the array's index block.
Tested on:
Mac OS X/32 10.5.4 (amazon) in debug mode
Mac OS X/32 10.5.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
in production mode
FreeBSD/32 6.3 (duty) in debug mode
FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
in debug mode
Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, in production mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
Diffstat (limited to 'src/H5EAprivate.h')
-rw-r--r-- | src/H5EAprivate.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/H5EAprivate.h b/src/H5EAprivate.h index e39cefe..5893ebb 100644 --- a/src/H5EAprivate.h +++ b/src/H5EAprivate.h @@ -62,9 +62,9 @@ typedef struct H5EA_class_t { size_t nat_elmt_size; /* Size of native (memory) element */ /* Extensible array client callback methods */ - herr_t (*fill)(uint8_t *raw_blk, size_t nelmts); /* Fill array of elements with encoded form of "missing element" value */ - herr_t (*encode)(uint8_t *raw, const void *elmt); /* Encode element from native form to disk storage form */ - herr_t (*decode)(const uint8_t *raw, void *elmt); /* Decode element from disk storage form to native form */ + herr_t (*fill)(void *nat_blk, size_t nelmts); /* Fill array of elements with encoded form of "missing element" value */ + herr_t (*encode)(void *raw, const void *elmt, size_t nelmts); /* Encode elements from native form to disk storage form */ + herr_t (*decode)(const void *raw, void *elmt, size_t nelmts); /* Decode elements from disk storage form to native form */ herr_t (*debug)(FILE *stream, int indent, int fwidth, const void *elmt); /* Print an element for debugging */ } H5EA_class_t; @@ -99,11 +99,14 @@ typedef struct H5EA_t H5EA_t; /* General routines */ H5_DLL H5EA_t *H5EA_create(H5F_t *f, hid_t dxpl_id, const H5EA_create_t *cparam); -H5_DLL H5EA_t *H5EA_open(H5F_t *f, hid_t dxpl_id, haddr_t ea_addr); +H5_DLL H5EA_t *H5EA_open(H5F_t *f, hid_t dxpl_id, haddr_t ea_addr, + const H5EA_class_t *cls); H5_DLL herr_t H5EA_get_nelmts(const H5EA_t *ea, hsize_t *nelmts); H5_DLL herr_t H5EA_get_addr(const H5EA_t *ea, haddr_t *addr); -H5_DLL herr_t H5EA_delete(H5F_t *f, hid_t dxpl_id, haddr_t ea_addr); +H5_DLL herr_t H5EA_set(const H5EA_t *ea, hid_t dxpl_id, hsize_t idx, const void *elmt); +herr_t H5EA_get(const H5EA_t *ea, hid_t dxpl_id, hsize_t idx, void *elmt); H5_DLL herr_t H5EA_close(H5EA_t *ea, hid_t dxpl_id); +H5_DLL herr_t H5EA_delete(H5F_t *f, hid_t dxpl_id, haddr_t ea_addr); /* Statistics routines */ H5_DLL herr_t H5EA_get_stats(const H5EA_t *ea, H5EA_stat_t *stats); |