diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2002-02-14 15:57:48 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2002-02-14 15:57:48 (GMT) |
commit | 5883b9d67d32b3319f1ef5634acaa697733c07ed (patch) | |
tree | 937bcf76b9471c93db037fa3e588c980a869b964 /src/H5Sprivate.h | |
parent | a1c37b6eb8c01cd87a1c442da76172e51da05b79 (diff) | |
download | hdf5-5883b9d67d32b3319f1ef5634acaa697733c07ed.zip hdf5-5883b9d67d32b3319f1ef5634acaa697733c07ed.tar.gz hdf5-5883b9d67d32b3319f1ef5634acaa697733c07ed.tar.bz2 |
[svn-r4965] Purpose:
Bug Fix
Description:
If a non-zero fill-value is used for a chunked dataset, any non-existent
chunked read with an "all" selection (or a contiguous hyperslab selection)
will return zero for those instead of the user's fill-value.
Solution:
Fixed I/O code to pass down fill-value to "optimized" I/O routines, so it
will be available to fill the user's buffer with.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Diffstat (limited to 'src/H5Sprivate.h')
-rw-r--r-- | src/H5Sprivate.h | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h index 42986d7..e024502 100644 --- a/src/H5Sprivate.h +++ b/src/H5Sprivate.h @@ -142,6 +142,7 @@ typedef struct H5S_conv_t { /* Read from file to application w/o intermediate scratch buffer */ herr_t (*read)(H5F_t *f, const struct H5O_layout_t *layout, const struct H5O_pline_t *pline, + const struct H5O_fill_t *fill, const struct H5O_efl_t *efl, size_t elmt_size, const H5S_t *file_space, const H5S_t *mem_space, hid_t dxpl_id, void *buf/*out*/, @@ -150,11 +151,12 @@ typedef struct H5S_conv_t { /* Write directly from app buffer to file */ herr_t (*write)(H5F_t *f, const struct H5O_layout_t *layout, - const struct H5O_pline_t *pline, - const struct H5O_efl_t *efl, size_t elmt_size, - const H5S_t *file_space, const H5S_t *mem_space, - hid_t dxpl_id, const void *buf, - hbool_t *must_convert/*out*/); + const struct H5O_pline_t *pline, + const struct H5O_fill_t *fill, + const struct H5O_efl_t *efl, size_t elmt_size, + const H5S_t *file_space, const H5S_t *mem_space, + hid_t dxpl_id, const void *buf, + hbool_t *must_convert/*out*/); #ifdef H5S_DEBUG struct { @@ -227,6 +229,7 @@ __DLL__ herr_t H5S_sel_iter_release(const H5S_t *space, __DLL__ herr_t H5S_mpio_spaces_read(H5F_t *f, const struct H5O_layout_t *layout, const struct H5O_pline_t *pline, + const struct H5O_fill_t *fill, const struct H5O_efl_t *efl, size_t elmt_size, const H5S_t *file_space, const H5S_t *mem_space, hid_t dxpl_id, @@ -235,13 +238,14 @@ __DLL__ herr_t H5S_mpio_spaces_read(H5F_t *f, /* MPI-IO function to write directly from app buffer to file rky980813 */ __DLL__ herr_t H5S_mpio_spaces_write(H5F_t *f, - const struct H5O_layout_t *layout, - const struct H5O_pline_t *pline, - const struct H5O_efl_t *efl, - size_t elmt_size, const H5S_t *file_space, - const H5S_t *mem_space, hid_t dxpl_id, - const void *buf, - hbool_t *must_convert /*out*/ ); + const struct H5O_layout_t *layout, + const struct H5O_pline_t *pline, + const struct H5O_fill_t *fill, + const struct H5O_efl_t *efl, + size_t elmt_size, const H5S_t *file_space, + const H5S_t *mem_space, hid_t dxpl_id, + const void *buf, + hbool_t *must_convert /*out*/ ); #ifndef _H5S_IN_H5S_C /* Global var whose value comes from environment variable */ __DLLVAR__ hbool_t H5_mpi_opt_types_g; |