From 8f31d8ddd5422679ce61a30717b3e1e2ce2ca732 Mon Sep 17 00:00:00 2001 From: Achim Gsell Date: Wed, 20 Sep 2006 21:07:25 +0000 Subject: [PATCH] test/H5BlockTestAttributesF.f90 - added --- .gitattributes | 1 + test/H5BlockTestAttributesF.f90 | 62 +++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 test/H5BlockTestAttributesF.f90 diff --git a/.gitattributes b/.gitattributes index f710cb6..ffbd941 100644 --- a/.gitattributes +++ b/.gitattributes @@ -100,6 +100,7 @@ test/H5BlockDissolveGhosts.c -text test/H5BlockParTestScalarField.c -text test/H5BlockParTestScalarField.pbs -text test/H5BlockTestAttributes.c -text +test/H5BlockTestAttributesF.f90 -text test/H5ParallelTest.cc -text test/H5PartAndreasTest.cc -text test/H5PartTest.cc -text diff --git a/test/H5BlockTestAttributesF.f90 b/test/H5BlockTestAttributesF.f90 new file mode 100644 index 0000000..df4c6de --- /dev/null +++ b/test/H5BlockTestAttributesF.f90 @@ -0,0 +1,62 @@ +PROGRAM H5BlockTestAttributesF + IMPLICIT NONE + + INCLUDE 'mpif.h' + INCLUDE 'H5PartF90.inc' + + INTERFACE + INTEGER*8 FUNCTION write_file ( fname, myproc, comm, layout ) + CHARACTER(LEN=*), INTENT(IN) :: fname + INTEGER, INTENT(IN) :: myproc + INTEGER, INTENT(IN) :: comm + INTEGER*8, INTENT(IN) :: layout(6) + END FUNCTION + + INTEGER*8 FUNCTION read_file ( fname, myproc, comm, layout ) + CHARACTER(LEN=*), INTENT(IN) :: fname + INTEGER, INTENT(IN) :: myproc + INTEGER, INTENT(IN) :: comm + INTEGER*8, INTENT(IN) :: layout(6) + END FUNCTION + + END INTERFACE + + INTEGER :: myproc + INTEGER :: nprocs + INTEGER :: mpi_err + INTEGER*8 :: h5pt_err + INTEGER :: comm + INTEGER :: i + CHARACTER(LEN=32) :: arg_str + LOGICAL :: opt_read + LOGICAL :: opt_write + INTEGER*8 :: layout(6) ! = ( 0, 64, 0, 64, 0, 512 ) + + CALL MPI_Init ( mpi_err) + comm = MPI_COMM_WORLD + CALL MPI_Comm_rank ( comm, myproc, mpi_err) + CALL MPI_Comm_size ( comm, nprocs, mpi_err) + + DO i = 1, IARGC () + CALL GETARG ( i, arg_str, 32) + IF ( arg_str == "-r" ) THEN + opt_read = .TRUE. + ELSE IF ( arg_str == "-w" ) THEN + opt_write = .TRUE. + ELSE + PRINT *, "Illegal option ", arg_str, "\n" + PRINT *, "Usage: H5BlockTestAttributesF -w | -r" + END IF + + END DO + + h5pt_err = h5pt_set_verbosity_level ( 4_8 ) + + IF ( opt_write ) THEN + h5pt_err = write_file ( "blockfile0.h5", myproc, comm, layout ) + ELSE IF ( opt_read ) THEN + h5pt_err = read_file ( "blockfile0.h5", myproc, comm, layout ) + ENDIF + + CALL MPI_Finalize() +END PROGRAM