diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2000-09-19 20:06:49 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2000-09-19 20:06:49 (GMT) |
commit | 8055378bcecfc77af85b2bb07e7904edc9492789 (patch) | |
tree | 01c100c34cd727b9dc15ae21c89b6e0dfa361303 /fortran/src/H5Pff_parallel.f90 | |
parent | 8272da0b67a9ef3a7299fd10cc5f3ccbf80cbeae (diff) | |
download | hdf5-8055378bcecfc77af85b2bb07e7904edc9492789.zip hdf5-8055378bcecfc77af85b2bb07e7904edc9492789.tar.gz hdf5-8055378bcecfc77af85b2bb07e7904edc9492789.tar.bz2 |
[svn-r2576] Purpose:
Adding the Fortran interface to the HDF5 library
Description:
Fortran is now a subdirectory of the HDF5 library tree.
Platforms tested:
Solaris and IRIX (O2K)
Diffstat (limited to 'fortran/src/H5Pff_parallel.f90')
-rw-r--r-- | fortran/src/H5Pff_parallel.f90 | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/fortran/src/H5Pff_parallel.f90 b/fortran/src/H5Pff_parallel.f90 new file mode 100644 index 0000000..488b7a0 --- /dev/null +++ b/fortran/src/H5Pff_parallel.f90 @@ -0,0 +1,59 @@ +! +! This file contains Fortran90 interfaces for H5P functions needed by || MPI programs. +! + MODULE H5P_parallel + USE H5FORTRAN_TYPES + USE H5FORTRAN_FLAGS + CONTAINS + SUBROUTINE h5pset_mpi_f(prp_id, comm, info, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(IN) :: comm ! MPI communicator to be used for file open + ! as defined in MPI_FILE_OPEN of MPI-2 + INTEGER, INTENT(IN) :: info ! MPI info object to be used for file open + ! as defined in MPI_FILE_OPEN of MPI-2 + INTEGER, INTENT(OUT) :: hdferr ! Error code + + INTEGER, EXTERNAL :: h5pset_mpi_c + hdferr = h5pset_mpi_c(prp_id, comm, info) + END SUBROUTINE h5pset_mpi_f + + SUBROUTINE h5pget_mpi_f(prp_id, comm, info, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(OUT) :: comm ! buffer to return communicator + INTEGER, INTENT(IN) :: info ! buffer to return info object + ! as defined in MPI_FILE_OPEN of MPI-2 + INTEGER, INTENT(OUT) :: hdferr ! Error code + + INTEGER, EXTERNAL :: h5pget_mpi_c + hdferr = h5pget_mpi_c(prp_id, comm, info) + END SUBROUTINE h5pget_mpi_f + + SUBROUTINE h5pset_xfer_f(prp_id, data_xfer_mode, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(IN) :: data_xfer_mode ! Data transfer mode. Possible values are: + ! H5D_XFER_INDEPENDENT_F (0) + ! H5D_XFER_COLLECTIVE_F (1) + ! H5D_XFER_DFLT_F (2) + INTEGER, INTENT(OUT) :: hdferr ! Error code + + INTEGER, EXTERNAL :: h5pset_xfer_c + hdferr = h5pset_xfer_c(prp_id, data_xfer_mode) + END SUBROUTINE h5pset_xfer_f + + SUBROUTINE h5pget_xfer_f(prp_id, data_xfer_mode, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(OUT) :: data_xfer_mode ! Data transfer mode. Possible values are: + ! H5D_XFER_INDEPENDENT_F (0) + ! H5D_XFER_COLLECTIVE_F (1) + ! H5D_XFER_DFLT_F (2) + INTEGER, INTENT(OUT) :: hdferr ! Error code + + INTEGER, EXTERNAL :: h5pget_xfer_c + hdferr = h5pget_xfer_c(prp_id, data_xfer_mode) + END SUBROUTINE h5pget_xfer_f + + END MODULE H5P_parallel |