diff options
author | Robb Matzke <matzke@llnl.gov> | 1999-07-28 18:25:43 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1999-07-28 18:25:43 (GMT) |
commit | e4834c43ce6528308ebd5375bd4c7a0df88af427 (patch) | |
tree | 0039040d95cc92fdb197b2902436e32a020a7b6f /src/H5Fmpio.c | |
parent | 139688863f191366fe27fbab9654a52285e63c11 (diff) | |
download | hdf5-e4834c43ce6528308ebd5375bd4c7a0df88af427.zip hdf5-e4834c43ce6528308ebd5375bd4c7a0df88af427.tar.gz hdf5-e4834c43ce6528308ebd5375bd4c7a0df88af427.tar.bz2 |
[svn-r1548] Changes since 19990727
----------------------
./src/H5.c [1.3]
./src/H5AC.c [1.3]
./src/H5ACprivate.h [1.3]
./src/H5B.c [1.3]
./src/H5Bprivate.h [1.3]
./src/H5D.c [1.3]
./src/H5F.c [1.3]
./src/H5Farray.c [1.3]
./src/H5Fcore.c [1.3]
./src/H5Ffamily.c [1.3]
./src/H5Fistore.c [1.3]
./src/H5Flow.c [1.3]
./src/H5Fmpio.c [1.3]
./src/H5Fprivate.h [1.3]
./src/H5Fsec2.c [1.3]
./src/H5Fsplit.c [1.3]
./src/H5Fstdio.c [1.3]
./src/H5G.c [1.3]
./src/H5Gent.c [1.3]
./src/H5Gnode.c [1.3]
./src/H5Gprivate.h [1.3]
./src/H5Gstab.c [1.3]
./src/H5HG.c [1.3]
./src/H5HGprivate.h [1.3]
./src/H5HL.c [1.3]
./src/H5HLprivate.h [1.3]
./src/H5MF.c [1.3]
./src/H5MFprivate.h [1.3]
./src/H5O.c [1.3]
./src/H5Oattr.c [1.3]
./src/H5Ocont.c [1.3]
./src/H5Odtype.c [1.3]
./src/H5Oefl.c [1.3]
./src/H5Olayout.c [1.3]
./src/H5Oprivate.h [1.3]
./src/H5Oshared.c [1.3]
./src/H5Ostab.c [1.3]
./src/H5P.c [1.3]
./src/H5R.c [1.3]
./src/H5Smpio.c [1.3]
./src/H5T.c [1.3]
./src/H5Tvlen.c [1.3]
./src/H5private.h [1.3]
./test/dtypes.c [1.3]
./test/gheap.c [1.3]
./test/istore.c [1.3]
./test/lheap.c [1.3]
./test/ohdr.c [1.3]
./tools/h5debug.c [1.3]
File addresses (the `haddr_t' type) are passed by value
instead of by reference. The type is no longer a struct. This
is one of the preliminary changes needed for the Virtual File
Layer stuff.
./src/H5Fprivate.h [1.3]
./src/H5Flow.c [1.3]
Some address functions were rewritten as macros.
Diffstat (limited to 'src/H5Fmpio.c')
-rw-r--r-- | src/H5Fmpio.c | 47 |
1 files changed, 26 insertions, 21 deletions
diff --git a/src/H5Fmpio.c b/src/H5Fmpio.c index b5f3858..11f8da5 100644 --- a/src/H5Fmpio.c +++ b/src/H5Fmpio.c @@ -104,16 +104,15 @@ static H5F_low_t *H5F_mpio_open(const char *name, H5F_search_t *key/*out*/); static herr_t H5F_mpio_close(H5F_low_t *lf, const H5F_access_t *access_parms); static herr_t H5F_mpio_read(H5F_low_t *lf, H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, const haddr_t *addr, + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, uint8_t *buf/*out*/); htri_t H5F_mpio_tas_allsame(H5F_low_t *lf, hbool_t newval ); static herr_t H5F_mpio_write(H5F_low_t *lf, H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, const haddr_t *addr, + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, const uint8_t *buf); static herr_t H5F_mpio_flush(H5F_low_t *lf, const H5F_access_t *access_parms); -static herr_t H5F_MPIOff_to_haddr(MPI_Offset mpi_off, haddr_t *addr/*out*/); -static herr_t H5F_haddr_to_MPIOff(const haddr_t *addr, - MPI_Offset *mpi_off/*out*/); +static herr_t H5F_MPIOff_to_haddr(MPI_Offset mpi_off, haddr_t *addr_p/*out*/); +static herr_t H5F_haddr_to_MPIOff(haddr_t addr, MPI_Offset *mpi_off/*out*/); const H5F_low_class_t H5F_LOW_MPIO_g[1] = {{ H5F_mpio_access, /*access method */ @@ -125,8 +124,8 @@ const H5F_low_class_t H5F_LOW_MPIO_g[1] = {{ * in the parameter list of the write function in H5F_low_class_t * would propagate to a lot of functions that don't change that param */ (int(*)(struct H5F_low_t *lf, const H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, const haddr_t *addr, - size_t size, uint8_t *buf)) + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, + uint8_t *buf)) H5F_mpio_read, /*read method */ /* rky 980816 @@ -134,8 +133,8 @@ const H5F_low_class_t H5F_LOW_MPIO_g[1] = {{ * in the parameter list of the write function in H5F_low_class_t * would propagate to a lot of functions that don't change that param */ (int(*)(struct H5F_low_t *lf, const H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, const haddr_t *addr, - size_t size, const uint8_t *buf)) + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, + const uint8_t *buf)) H5F_mpio_write, /*write method */ H5F_mpio_flush, /*flush method */ @@ -509,15 +508,17 @@ H5F_mpio_close(H5F_low_t *lf, const H5F_access_t UNUSED *access_parms) * The guts of H5F_mpio_read and H5F_mpio_write * should be replaced by a single dual-purpose routine. * - * Robb Matzke, 19990421 + * Robb Matzke, 1999-04-21 * Changed xfer_mode to xfer_parms for all H5F_*_read() callbacks. * + * Robb Matzke, 1999-07-28 + * The ADDR argument is passed by value. *------------------------------------------------------------------------- */ static herr_t H5F_mpio_read(H5F_low_t *lf, H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, - const haddr_t *addr, size_t size, uint8_t *buf/*out*/) + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, + uint8_t *buf/*out*/) { MPI_Offset mpi_off, mpi_disp; MPI_Status mpi_stat; @@ -761,15 +762,17 @@ H5F_mpio_tas_allsame(H5F_low_t *lf, hbool_t newval ) * rky, 980828 * Added allsame parameter to make all but proc 0 skip the actual write. * - * Robb Matzke, 19990421 - * Changed xfer_mode to xfer_parms for all H5F_*_write() callbacks. + * Robb Matzke, 1999-04-21 + * Changed XFER_MODE to XFER_PARMS for all H5F_*_write() callbacks. * + * Robb Matzke, 1999-07-28 + * The ADDR argument is passed by value. *------------------------------------------------------------------------- */ static herr_t H5F_mpio_write(H5F_low_t *lf, H5F_access_t *access_parms, - const H5F_xfer_t *xfer_parms, - const haddr_t *addr, size_t size, const uint8_t *buf) + const H5F_xfer_t *xfer_parms, haddr_t addr, size_t size, + const uint8_t *buf) { MPI_Offset mpi_off, mpi_disp; MPI_Status mpi_stat; @@ -989,11 +992,11 @@ H5F_mpio_flush(H5F_low_t *lf, const H5F_access_t UNUSED *access_parms) *------------------------------------------------------------------------- */ static herr_t -H5F_MPIOff_to_haddr(MPI_Offset mpi_off, haddr_t *addr/*out*/) +H5F_MPIOff_to_haddr(MPI_Offset mpi_off, haddr_t *addr_p/*out*/) { FUNC_ENTER(H5F_MPIOff_to_haddr, FAIL); - if (addr) addr->offset = (uint64_t) mpi_off; + if (addr_p) *addr_p = (uint64_t) mpi_off; if (mpi_off != (MPI_Offset)(uint64_t)mpi_off) { HRETURN_ERROR(H5E_IO, H5E_OVERFLOW, FAIL, "bad MPI address"); } @@ -1020,15 +1023,17 @@ H5F_MPIOff_to_haddr(MPI_Offset mpi_off, haddr_t *addr/*out*/) * An error is reported for address overflows. The ADDR output * argument is optional. * + * Robb Matzke, 1999-07-28 + * The ADDR argument is passed by value. *------------------------------------------------------------------------- */ static herr_t -H5F_haddr_to_MPIOff(const haddr_t *addr, MPI_Offset *mpi_off/*out*/) +H5F_haddr_to_MPIOff(haddr_t addr, MPI_Offset *mpi_off/*out*/) { FUNC_ENTER(H5F_haddr_to_MPIOff, FAIL); - if (mpi_off) *mpi_off = (MPI_Offset)addr->offset; - if (addr->offset != (uint64_t)(MPI_Offset)(addr->offset)) { + if (mpi_off) *mpi_off = (MPI_Offset)addr; + if (addr != (uint64_t)(MPI_Offset)(addr)) { HRETURN_ERROR(H5E_IO, H5E_OVERFLOW, FAIL, "hdf5 address overflows MPI address"); } |