diff options
Diffstat (limited to 'fortran')
69 files changed, 8036 insertions, 8036 deletions
diff --git a/fortran/examples/attrexample.f90 b/fortran/examples/attrexample.f90 index 9cf96dc..ffbeabe 100644 --- a/fortran/examples/attrexample.f90 +++ b/fortran/examples/attrexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,30 +11,30 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! -! This example shows how to create and write a dataset attribute. +! This example shows how to create and write a dataset attribute. ! It opens the existing file 'dset.h5', obtains the identifier of -! the dataset "/dset", defines attribute's dataspace, +! the dataset "/dset", defines attribute's dataspace, ! creates dataset attribute, writes the attribute, and then closes -! the attribute's dataspace, attribute, dataset, and file. +! the attribute's dataspace, attribute, dataset, and file. PROGRAM ATTREXAMPLE - - USE HDF5 ! This module contains all necessary modules - + + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=8), PARAMETER :: filename = "dsetf.h5" ! File name CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name CHARACTER(LEN=9), PARAMETER :: aname = "attr_long" ! Attribute name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: attr_id ! Attribute identifier - INTEGER(HID_T) :: aspace_id ! Attribute Dataspace identifier - INTEGER(HID_T) :: atype_id ! Attribute Dataspace identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: attr_id ! Attribute identifier + INTEGER(HID_T) :: aspace_id ! Attribute Dataspace identifier + INTEGER(HID_T) :: atype_id ! Attribute Dataspace identifier INTEGER(HSIZE_T), DIMENSION(1) :: adims = (/2/) ! Attribute dimension INTEGER :: arank = 1 ! Attribure rank INTEGER(SIZE_T) :: attrlen ! Length of the attribute string @@ -43,31 +43,31 @@ INTEGER :: error ! Error flag INTEGER(HSIZE_T), DIMENSION(1) :: data_dims - + ! ! Initialize attribute's data ! attr_data(1) = "Dataset character attribute" attr_data(2) = "Some other string here " - attrlen = 80 + attrlen = 80 ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) - + CALL h5open_f(error) + ! ! Open an existing file. ! CALL h5fopen_f (filename, H5F_ACC_RDWR_F, file_id, error) ! - ! Open an existing dataset. + ! Open an existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) ! - ! Create scalar data space for the attribute. + ! Create scalar data space for the attribute. ! CALL h5screate_simple_f(arank, adims, aspace_id, error) ! @@ -75,35 +75,35 @@ ! CALL h5tcopy_f(H5T_NATIVE_CHARACTER, atype_id, error) CALL h5tset_size_f(atype_id, attrlen, error) - + ! ! Create dataset attribute. ! CALL h5acreate_f(dset_id, aname, atype_id, aspace_id, & attr_id, error) - + ! ! Write the attribute data. ! data_dims(1) = 2 CALL h5awrite_f(attr_id, atype_id, attr_data, data_dims, error) - + ! - ! Close the attribute. + ! Close the attribute. ! CALL h5aclose_f(attr_id, error) - + ! ! Terminate access to the data space. ! CALL h5sclose_f(aspace_id, error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -113,5 +113,5 @@ ! CALL h5close_f(error) - END PROGRAM ATTREXAMPLE - + END PROGRAM ATTREXAMPLE + diff --git a/fortran/examples/compound.f90 b/fortran/examples/compound.f90 index a315fb0..2005f41 100644 --- a/fortran/examples/compound.f90 +++ b/fortran/examples/compound.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This program creates a dataset that is one dimensional array of @@ -26,23 +26,23 @@ PROGRAM COMPOUNDEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=11), PARAMETER :: filename = "compound.h5" ! File name CHARACTER(LEN=8), PARAMETER :: dsetname = "Compound" ! Dataset name INTEGER, PARAMETER :: dimsize = 6 ! Size of the dataset - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: dtype_id ! Compound datatype identifier INTEGER(HID_T) :: dt1_id ! Memory datatype identifier (for character field) INTEGER(HID_T) :: dt2_id ! Memory datatype identifier (for integer field) INTEGER(HID_T) :: dt3_id ! Memory datatype identifier (for double precision field) INTEGER(HID_T) :: dt4_id ! Memory datatype identifier (for real field) - INTEGER(HID_T) :: dt5_id ! Memory datatype identifier + INTEGER(HID_T) :: dt5_id ! Memory datatype identifier INTEGER(HID_T) :: plist_id ! Dataset trasfer property INTEGER(SIZE_T) :: typesize @@ -52,7 +52,7 @@ INTEGER :: error ! Error flag INTEGER(SIZE_T) :: type_size ! Size of the datatype - INTEGER(SIZE_T) :: type_sizec ! Size of the character datatype + INTEGER(SIZE_T) :: type_sizec ! Size of the character datatype INTEGER(SIZE_T) :: type_sizei ! Size of the integer datatype INTEGER(SIZE_T) :: type_sized ! Size of the double precision datatype INTEGER(SIZE_T) :: type_sizer ! Size of the real datatype @@ -63,7 +63,7 @@ DOUBLE PRECISION, DIMENSION(dimsize) :: double_member REAL, DIMENSION(dimsize) :: real_member INTEGER :: i - INTEGER(HSIZE_T), DIMENSION(1) :: data_dims + INTEGER(HSIZE_T), DIMENSION(1) :: data_dims data_dims(1) = dimsize ! ! Initialize data buffer. @@ -71,8 +71,8 @@ do i = 1, dimsize char_member(i)(1:1) = char(65+i) char_member(i)(2:2) = char(65+i) - char_member_out(i)(1:1) = char(65) - char_member_out(i)(2:2) = char(65) + char_member_out(i)(1:1) = char(65) + char_member_out(i)(2:2) = char(65) int_member(i) = i double_member(i) = 2.* i real_member(i) = 3. * i @@ -91,10 +91,10 @@ ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -141,8 +141,8 @@ CALL h5dcreate_f(file_id, dsetname, dtype_id, dspace_id, & dset_id, error) ! - ! Create memory types. We have to create a compound datatype - ! for each member we want to write. + ! Create memory types. We have to create a compound datatype + ! for each member we want to write. ! CALL h5tcreate_f(H5T_COMPOUND_F, type_sizec, dt1_id, error) offset = 0 @@ -167,9 +167,9 @@ CALL h5dwrite_f(dset_id, dt3_id, double_member, data_dims, error, xfer_prp = plist_id) CALL h5dwrite_f(dset_id, dt2_id, int_member, data_dims, error, xfer_prp = plist_id) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) ! @@ -186,11 +186,11 @@ CALL h5tclose_f(dt4_id, error) CALL h5tclose_f(dt5_id, error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) - + ! ! Open the file. ! @@ -227,6 +227,6 @@ ! CALL h5close_f(error) - END PROGRAM COMPOUNDEXAMPLE - - + END PROGRAM COMPOUNDEXAMPLE + + diff --git a/fortran/examples/dsetexample.f90 b/fortran/examples/dsetexample.f90 index 69609b4..209a516 100644 --- a/fortran/examples/dsetexample.f90 +++ b/fortran/examples/dsetexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,10 +11,10 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! The following example shows how to create an empty dataset. +! The following example shows how to create an empty dataset. ! It creates a file called 'dsetf.h5', defines the ! dataset dataspace, creates a dataset which is a 4x6 integer array, ! and then closes the dataspace, the dataset, and the file. @@ -22,15 +22,15 @@ PROGRAM DSETEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=8), PARAMETER :: filename = "dsetf.h5" ! File name CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier @@ -46,10 +46,10 @@ ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -60,9 +60,9 @@ CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dspace_id, & dset_id, error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) ! @@ -70,7 +70,7 @@ ! CALL h5sclose_f(dspace_id, error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -80,6 +80,6 @@ ! CALL h5close_f(error) - END PROGRAM DSETEXAMPLE - - + END PROGRAM DSETEXAMPLE + + diff --git a/fortran/examples/fileexample.f90 b/fortran/examples/fileexample.f90 index c25bfef..87119d2 100644 --- a/fortran/examples/fileexample.f90 +++ b/fortran/examples/fileexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! The following example demonstrates how to create and close an HDF5 file. @@ -20,22 +20,22 @@ PROGRAM FILEEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=8), PARAMETER :: filename = "filef.h5" ! File name INTEGER(HID_T) :: file_id ! File identifier - + INTEGER :: error ! Error flag - + ! ! Initialize FORTRAN interface. ! CALL h5open_f (error) ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! @@ -46,4 +46,4 @@ ! Close FORTRAN interface. ! CALL h5close_f(error) - END PROGRAM FILEEXAMPLE + END PROGRAM FILEEXAMPLE diff --git a/fortran/examples/groupexample.f90 b/fortran/examples/groupexample.f90 index cb069df..91ebc50 100644 --- a/fortran/examples/groupexample.f90 +++ b/fortran/examples/groupexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,35 +11,35 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! The following example shows how to create and close a group. +! The following example shows how to create and close a group. ! It creates a file called 'group.h5', creates a group ! called MyGroup in the root group, and then closes the group and file. -! +! PROGRAM GROUPEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=9), PARAMETER :: filename = "groupf.h5" ! File name CHARACTER(LEN=7), PARAMETER :: groupname = "MyGroup" ! Group name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: group_id ! Group identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: group_id ! Group identifier INTEGER :: error ! Error flag ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! @@ -61,4 +61,4 @@ ! CALL h5close_f(error) - END PROGRAM GROUPEXAMPLE + END PROGRAM GROUPEXAMPLE diff --git a/fortran/examples/grpdsetexample.f90 b/fortran/examples/grpdsetexample.f90 index ce89304..19fc660 100644 --- a/fortran/examples/grpdsetexample.f90 +++ b/fortran/examples/grpdsetexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This example shows how to create a dataset in a particular group. @@ -22,8 +22,8 @@ PROGRAM GRPDSETEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=10), PARAMETER :: filename = "groupsf.h5" ! File name @@ -31,17 +31,17 @@ CHARACTER(LEN=13), PARAMETER :: dsetname1 = "MyGroup/dset1" ! Dataset name CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: group_id ! Group identifier - INTEGER(HID_T) :: dataset_id ! Dataset identifier - INTEGER(HID_T) :: dataspace_id ! Data space identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: group_id ! Group identifier + INTEGER(HID_T) :: dataset_id ! Dataset identifier + INTEGER(HID_T) :: dataspace_id ! Data space identifier - INTEGER :: i, j + INTEGER :: i, j INTEGER :: error ! Error flag - INTEGER, DIMENSION(3,3) :: dset1_data ! Data arrays + INTEGER, DIMENSION(3,3) :: dset1_data ! Data arrays INTEGER, DIMENSION(2,10) :: dset2_data ! - + INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/3,3/) ! Datasets dimensions INTEGER(HSIZE_T), DIMENSION(2) :: dims2 = (/2,10/)! INTEGER(HSIZE_T), DIMENSION(2) :: data_dims @@ -70,7 +70,7 @@ ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Open an existing file. @@ -78,7 +78,7 @@ CALL h5fopen_f (filename, H5F_ACC_RDWR_F, file_id, error) ! - ! Create the data space for the first dataset. + ! Create the data space for the first dataset. ! CALL h5screate_simple_f(rank, dims1, dataspace_id, error) @@ -111,7 +111,7 @@ CALL h5gopen_f(file_id, groupname, group_id, error) ! - !Create the data space for the second dataset. + !Create the data space for the second dataset. ! CALL h5screate_simple_f(rank, dims2, dataspace_id, error) @@ -125,7 +125,7 @@ ! Write the second dataset. ! data_dims(1) = 2 - data_dims(1) = 10 + data_dims(1) = 10 CALL h5dwrite_f(dataset_id, H5T_NATIVE_INTEGER, dset2_data, data_dims, error) ! @@ -153,4 +153,4 @@ ! CALL h5close_f(error) - END PROGRAM GRPDSETEXAMPLE + END PROGRAM GRPDSETEXAMPLE diff --git a/fortran/examples/grpit.f90 b/fortran/examples/grpit.f90 index 86a87b1..9361b17 100644 --- a/fortran/examples/grpit.f90 +++ b/fortran/examples/grpit.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! In this example we iterate through the members of the groups. @@ -20,8 +20,8 @@ PROGRAM GRPITEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=11), PARAMETER :: filename = "iteratef.h5" ! File name @@ -34,12 +34,12 @@ INTEGER :: type ! Type of the object INTEGER :: nmembers ! Number of group members - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dataset1_id ! Dataset1 identifier - INTEGER(HID_T) :: dataset2_id ! Dataset2 identifier - INTEGER(HID_T) :: dataspace1_id ! Data space identifier - INTEGER(HID_T) :: dataspace2_id ! Data space identifier - INTEGER(HID_T) :: group1_id, group2_id ! Group identifiers + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dataset1_id ! Dataset1 identifier + INTEGER(HID_T) :: dataset2_id ! Dataset2 identifier + INTEGER(HID_T) :: dataspace1_id ! Data space identifier + INTEGER(HID_T) :: dataspace2_id ! Data space identifier + INTEGER(HID_T) :: group1_id, group2_id ! Group identifiers INTEGER :: i, j @@ -47,11 +47,11 @@ INTEGER, DIMENSION(3,3) :: dset1_data ! Arrays to hold data INTEGER, DIMENSION(2,10) :: dset2_data ! - - + + INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/3,3/) ! Dataset dimensions INTEGER(HSIZE_T), DIMENSION(2) :: dims2 = (/2,10/)! - INTEGER :: rank = 2 ! Datasets rank + INTEGER :: rank = 2 ! Datasets rank INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! @@ -76,11 +76,11 @@ ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! @@ -94,7 +94,7 @@ CALL h5gcreate_f(group1_id, groupname2, group2_id, error) ! - ! Create the data space for the first dataset. + ! Create the data space for the first dataset. ! CALL h5screate_simple_f(rank, dims1, dataspace1_id, error) @@ -112,7 +112,7 @@ CALL h5dwrite_f(dataset1_id, H5T_NATIVE_INTEGER, dset1_data, data_dims, error) ! - ! Create the data space for the second dataset. + ! Create the data space for the second dataset. ! CALL h5screate_simple_f(rank, dims2, dataspace2_id, error) @@ -206,10 +206,10 @@ ! Close the file. ! CALL h5fclose_f(file_id, error) - + ! ! Close FORTRAN interface. ! CALL h5close_f(error) - END PROGRAM GRPITEXAMPLE + END PROGRAM GRPITEXAMPLE diff --git a/fortran/examples/grpsexample.f90 b/fortran/examples/grpsexample.f90 index 3a6efac..0f694e9 100644 --- a/fortran/examples/grpsexample.f90 +++ b/fortran/examples/grpsexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,41 +11,41 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! The following example code shows how to create groups +! The following example code shows how to create groups ! using absolute and relative names. It creates three groups: -! the first two groups are created using the file identifier and -! the group absolute names, and the third group is created using +! the first two groups are created using the file identifier and +! the group absolute names, and the third group is created using ! a group identifier and the name relative to the specified group. ! PROGRAM GRPSEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=10), PARAMETER :: filename = "groupsf.h5" ! File name CHARACTER(LEN=8), PARAMETER :: groupname1 = "/MyGroup" ! Group name - CHARACTER(LEN=16), PARAMETER :: groupname2 = "/MyGroup/Group_A" + CHARACTER(LEN=16), PARAMETER :: groupname2 = "/MyGroup/Group_A" ! Group name CHARACTER(LEN=7), PARAMETER :: groupname3 = "Group_B" ! Group name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: group1_id, group2_id, group3_id ! Group identifiers + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: group1_id, group2_id, group3_id ! Group identifiers INTEGER :: error ! Error flag ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) - + CALL h5open_f(error) + ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! @@ -62,7 +62,7 @@ ! Create group "Group_B" in group "MyGroup" using relative name. ! CALL h5gcreate_f(group1_id, groupname3, group3_id, error) - + ! ! Close the groups. ! @@ -78,6 +78,6 @@ ! ! Close FORTRAN interface. ! - CALL h5close_f(error) + CALL h5close_f(error) - END PROGRAM GRPSEXAMPLE + END PROGRAM GRPSEXAMPLE diff --git a/fortran/examples/hyperslab.f90 b/fortran/examples/hyperslab.f90 index 151ecf3..ca27f35 100644 --- a/fortran/examples/hyperslab.f90 +++ b/fortran/examples/hyperslab.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,57 +11,57 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! This example shows how to write and read a hyperslab. +! This example shows how to write and read a hyperslab. ! PROGRAM SELECTEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=7), PARAMETER :: filename = "sdsf.h5" ! File name CHARACTER(LEN=8), PARAMETER :: dsetname = "IntArray" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: dataspace ! Dataspace identifier - INTEGER(HID_T) :: memspace ! memspace identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: dataspace ! Dataspace identifier + INTEGER(HID_T) :: memspace ! memspace identifier INTEGER(HSIZE_T), DIMENSION(3) :: dimsm = (/7,7,3/) ! Dataset dimensions ! in memory - INTEGER(HSIZE_T), DIMENSION(2) :: dims_out ! Buffer to read in dataset + INTEGER(HSIZE_T), DIMENSION(2) :: dims_out ! Buffer to read in dataset ! dimesions INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/5,6/) ! Dataset dimensions. - INTEGER(HSIZE_T), DIMENSION(2) :: count = (/3,4/) + INTEGER(HSIZE_T), DIMENSION(2) :: count = (/3,4/) ! Size of the hyperslab in the file INTEGER(HSIZE_T), DIMENSION(2) :: offset = (/1,2/) - !hyperslab offset in the file + !hyperslab offset in the file INTEGER(HSIZE_T), DIMENSION(3) :: count_out = (/3,4,1/) - !Size of the hyperslab in memory + !Size of the hyperslab in memory INTEGER(HSIZE_T), DIMENSION(3) :: offset_out = (/3,0,0/) - !hyperslab offset in memory + !hyperslab offset in memory INTEGER, DIMENSION(5,6) :: data ! Data to write INTEGER, DIMENSION(7,7,3) :: data_out ! Output buffer INTEGER :: dsetrank = 2 ! Dataset rank ( in file ) INTEGER :: memrank = 3 ! Dataset rank ( in memory ) - INTEGER :: rank - INTEGER :: i, j, k + INTEGER :: rank + INTEGER :: i, j, k INTEGER :: error, error_n ! Error flags INTEGER(HSIZE_T), DIMENSION(3) :: data_dims ! - ! Write data to the HDF5 file. + ! Write data to the HDF5 file. ! ! - ! Data initialization. + ! Data initialization. ! do i = 1, 5 do j = 1, 6 @@ -75,19 +75,19 @@ ! 3, 4, 5, 6, 7, 8 ! 4, 5, 6, 7, 8, 9 ! - + ! - ! Initialize FORTRAN interface. + ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Create a new file using default properties. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! - ! Create the data space for the dataset. + ! Create the data space for the dataset. ! CALL h5screate_simple_f(dsetrank, dimsf, dataspace, error) @@ -101,7 +101,7 @@ ! Write the dataset. ! data_dims(1) = 5 - data_dims(2) = 6 + data_dims(2) = 6 CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data, data_dims, error) ! @@ -120,14 +120,14 @@ CALL h5fclose_f(file_id, error) ! - ! This part of the code reads the hyperslab from the sds.h5 file just + ! This part of the code reads the hyperslab from the sds.h5 file just ! created, into a 2-dimensional plane of the 3-dimensional dataset. ! ! ! Initialize data_out array. ! - do k = 1, 3 + do k = 1, 3 do j = 1, 7 do i = 1, 7 data_out(i,j,k) = 0; @@ -141,7 +141,7 @@ ! CALL h5fopen_f (filename, H5F_ACC_RDONLY_F, file_id, error) CALL h5fopen_f (filename, H5F_ACC_RDWR_F, file_id, error) write(*,*) error - + ! ! Open the dataset. ! @@ -156,7 +156,7 @@ ! Select hyperslab in the dataset. ! CALL h5sselect_hyperslab_f(dataspace, H5S_SELECT_SET_F, & - offset, count, error) + offset, count, error) ! ! Create memory dataspace. ! @@ -166,18 +166,18 @@ ! Select hyperslab in memory. ! CALL h5sselect_hyperslab_f(memspace, H5S_SELECT_SET_F, & - offset_out, count_out, error) + offset_out, count_out, error) ! - ! Read data from hyperslab in the file into the hyperslab in + ! Read data from hyperslab in the file into the hyperslab in ! memory and display. ! data_dims(1) = 7 data_dims(2) = 7 - data_dims(3) = 3 + data_dims(3) = 3 CALL H5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, & memspace, dataspace) - + ! ! Display data_out array ! @@ -188,7 +188,7 @@ ! 0 0 0 0 0 0 0 ! 0 0 0 0 0 0 0 ! 0 0 0 0 0 0 0 - ! 3 4 5 6 0 0 0 + ! 3 4 5 6 0 0 0 ! 4 5 6 7 0 0 0 ! 5 6 7 8 0 0 0 ! 0 0 0 0 0 0 0 @@ -219,4 +219,4 @@ ! CALL h5close_f(error) - END PROGRAM SELECTEXAMPLE + END PROGRAM SELECTEXAMPLE diff --git a/fortran/examples/mountexample.f90 b/fortran/examples/mountexample.f90 index fe9eb7e..5bdec2a 100644 --- a/fortran/examples/mountexample.f90 +++ b/fortran/examples/mountexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,19 +11,19 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -!In the following example we create one file with a group in it, +!In the following example we create one file with a group in it, !and another file with a dataset. Mounting is used to -!access the dataset from the second file as a member of a group -!in the first file. +!access the dataset from the second file as a member of a group +!in the first file. ! PROGRAM MOUNTEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE ! @@ -42,53 +42,53 @@ ! ! File identifiers ! - INTEGER(HID_T) :: file1_id, file2_id - + INTEGER(HID_T) :: file1_id, file2_id + ! ! Group identifier ! - INTEGER(HID_T) :: gid + INTEGER(HID_T) :: gid ! ! Dataset identifier ! INTEGER(HID_T) :: dset_id - + ! ! Data space identifier ! INTEGER(HID_T) :: dataspace - + ! ! Data type identifier ! INTEGER(HID_T) :: dtype_id - ! + ! ! The dimensions for the dataset. ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/NX,NY/) ! - ! Flag to check operation success - ! + ! Flag to check operation success + ! INTEGER :: error ! - ! General purpose integer - ! + ! General purpose integer + ! INTEGER :: i, j ! - ! Data buffers - ! + ! Data buffers + ! INTEGER, DIMENSION(NX,NY) :: data_in, data_out INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! - ! Initialize FORTRAN interface. + ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Initialize data_in buffer @@ -101,36 +101,36 @@ ! ! Create first file "mount1.h5" using default properties. - ! + ! CALL h5fcreate_f(filename1, H5F_ACC_TRUNC_F, file1_id, error) ! ! Create group "/G" inside file "mount1.h5". - ! + ! CALL h5gcreate_f(file1_id, "/G", gid, error) ! ! Close file and group identifiers. - ! + ! CALL h5gclose_f(gid, error) CALL h5fclose_f(file1_id, error) ! ! Create second file "mount2.h5" using default properties. - ! + ! CALL h5fcreate_f(filename2, H5F_ACC_TRUNC_F, file2_id, error) ! - ! Create data space for the dataset. + ! Create data space for the dataset. ! CALL h5screate_simple_f(RANK, dims, dataspace, error) ! ! Create dataset "/D" inside file "mount2.h5". - ! + ! CALL h5dcreate_f(file2_id, "/D", H5T_NATIVE_INTEGER, dataspace, & dset_id, error) - + ! ! Write data_in to the dataset ! @@ -140,41 +140,41 @@ ! ! Close file, dataset and dataspace identifiers. - ! + ! CALL h5sclose_f(dataspace, error) CALL h5dclose_f(dset_id, error) CALL h5fclose_f(file2_id, error) ! ! Reopen both files. - ! + ! CALL h5fopen_f (filename1, H5F_ACC_RDWR_F, file1_id, error) CALL h5fopen_f (filename2, H5F_ACC_RDWR_F, file2_id, error) ! ! Mount the second file under the first file's "/G" group. - ! + ! CALL h5fmount_f (file1_id, "/G", file2_id, error) ! ! Access dataset D in the first file under /G/D name. - ! + ! CALL h5dopen_f(file1_id, "/G/D", dset_id, error) ! ! Get dataset's data type. - ! + ! CALL h5dget_type_f(dset_id, dtype_id, error) ! ! Read the dataset. - ! + ! CALL h5dread_f(dset_id, dtype_id, data_out, data_dims, error) ! ! Print out the data. - ! + ! do i = 1, NX print *, (data_out(i,j), j = 1, NY) end do @@ -182,24 +182,24 @@ ! !Close dset_id and dtype_id. - ! + ! CALL h5dclose_f(dset_id, error) CALL h5tclose_f(dtype_id, error) ! ! Unmount the second file. - ! + ! CALL h5funmount_f(file1_id, "/G", error); ! ! Close both files. - ! + ! CALL h5fclose_f(file1_id, error) CALL h5fclose_f(file2_id, error) ! - ! Close FORTRAN interface. + ! Close FORTRAN interface. ! - CALL h5close_f(error) + CALL h5close_f(error) END PROGRAM MOUNTEXAMPLE diff --git a/fortran/examples/ph5example.f90 b/fortran/examples/ph5example.f90 index 208ebc7..a0db200 100644 --- a/fortran/examples/ph5example.f90 +++ b/fortran/examples/ph5example.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,15 +11,15 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! Fortran parallel example. Copied from Tutorial's example program of ! dataset.f90. PROGRAM DATASET - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INCLUDE 'mpif.h' @@ -28,18 +28,18 @@ CHARACTER(LEN=100) :: filename ! File name INTEGER :: fnamelen ! File name length - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: filespace ! Dataspace identifier in file - INTEGER(HID_T) :: plist_id ! Property list identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: filespace ! Dataspace identifier in file + INTEGER(HID_T) :: plist_id ! Property list identifier INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/5,8/) ! Dataset dimensions. -! INTEGER, DIMENSION(7) :: dimsfi = (/5,8,0,0,0,0,0/) +! INTEGER, DIMENSION(7) :: dimsfi = (/5,8,0,0,0,0,0/) ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsfi = (/5,8/) INTEGER(HSIZE_T), DIMENSION(2) :: dimsfi INTEGER, ALLOCATABLE :: data(:,:) ! Data to write - INTEGER :: rank = 2 ! Dataset rank + INTEGER :: rank = 2 ! Dataset rank INTEGER :: error, error_n ! Error flags INTEGER :: i, j @@ -53,22 +53,22 @@ info = MPI_INFO_NULL CALL MPI_INIT(mpierror) CALL MPI_COMM_SIZE(comm, mpi_size, mpierror) - CALL MPI_COMM_RANK(comm, mpi_rank, mpierror) - ! + CALL MPI_COMM_RANK(comm, mpi_rank, mpierror) + ! ! Initialize data buffer with trivial data. ! ALLOCATE ( data(dimsf(1),dimsf(2))) do i = 1, dimsf(2) do j = 1, dimsf(1) - data(j,i) = j - 1 + (i-1)*dimsf(1) + data(j,i) = j - 1 + (i-1)*dimsf(1) enddo enddo ! ! Initialize FORTRAN interface ! - CALL h5open_f(error) + CALL h5open_f(error) - ! + ! ! Setup file access property list with parallel I/O access. ! CALL h5pcreate_f(H5P_FILE_ACCESS_F, plist_id, error) @@ -89,11 +89,11 @@ ! ! Create the file collectively. - ! + ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, access_prp = plist_id) CALL h5pclose_f(plist_id, error) ! - ! Create the data space for the dataset. + ! Create the data space for the dataset. ! CALL h5screate_simple_f(rank, dimsf, filespace, error) @@ -105,15 +105,15 @@ ! ! Create property list for collective dataset write ! - CALL h5pcreate_f(H5P_DATASET_XFER_F, plist_id, error) + CALL h5pcreate_f(H5P_DATASET_XFER_F, plist_id, error) CALL h5pset_dxpl_mpio_f(plist_id, H5FD_MPIO_COLLECTIVE_F, error) ! - ! For independent write use + ! For independent write use ! CALL h5pset_dxpl_mpio_f(plist_id, H5FD_MPIO_INDEPENDENT_F, error) ! - + ! - ! Write the dataset collectively. + ! Write the dataset collectively. ! CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data, dimsfi, error, & xfer_prp = plist_id) diff --git a/fortran/examples/refobjexample.f90 b/fortran/examples/refobjexample.f90 index 1889b8b..c8622a7 100644 --- a/fortran/examples/refobjexample.f90 +++ b/fortran/examples/refobjexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,49 +11,49 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This program shows how to create and store references to the objects. -! Program creates a file, two groups, a dataset to store integer data and -! a dataset to store references to the objects. +! Program creates a file, two groups, a dataset to store integer data and +! a dataset to store references to the objects. ! Stored references are used to open the objects they are point to. ! Data is written to the dereferenced dataset, and class type is displayed for ! the shared datatype. ! - PROGRAM OBJ_REFERENCES + PROGRAM OBJ_REFERENCES + + USE HDF5 ! This module contains all necessary modules - USE HDF5 ! This module contains all necessary modules - IMPLICIT NONE - CHARACTER(LEN=10), PARAMETER :: filename = "FORTRAN.h5" ! File + CHARACTER(LEN=10), PARAMETER :: filename = "FORTRAN.h5" ! File CHARACTER(LEN=8), PARAMETER :: dsetnamei = "INTEGERS" ! Dataset with the integer data CHARACTER(LEN=17), PARAMETER :: dsetnamer = "OBJECT_REFERENCES" ! Dataset wtih object ! references CHARACTER(LEN=6), PARAMETER :: groupname1 = "GROUP1" ! Groups in the file CHARACTER(LEN=6), PARAMETER :: groupname2 = "GROUP2" ! - - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: grp1_id ! Group identifiers - INTEGER(HID_T) :: grp2_id ! - INTEGER(HID_T) :: dset_id ! Dataset identifiers - INTEGER(HID_T) :: dsetr_id ! - INTEGER(HID_T) :: type_id ! Type identifier - INTEGER(HID_T) :: space_id ! Dataspace identifiers - INTEGER(HID_T) :: spacer_id ! + + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: grp1_id ! Group identifiers + INTEGER(HID_T) :: grp2_id ! + INTEGER(HID_T) :: dset_id ! Dataset identifiers + INTEGER(HID_T) :: dsetr_id ! + INTEGER(HID_T) :: type_id ! Type identifier + INTEGER(HID_T) :: space_id ! Dataspace identifiers + INTEGER(HID_T) :: spacer_id ! INTEGER :: error INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/5/) INTEGER(HSIZE_T), DIMENSION(1) :: dimsr= (/4/) INTEGER(HSIZE_T), DIMENSION(1) :: my_maxdims = (/5/) - INTEGER :: rank = 1 - INTEGER :: rankr = 1 + INTEGER :: rank = 1 + INTEGER :: rankr = 1 TYPE(hobj_ref_t_f), DIMENSION(4) :: ref TYPE(hobj_ref_t_f), DIMENSION(4) :: ref_out INTEGER, DIMENSION(5) :: data = (/1, 2, 3, 4, 5/) INTEGER :: class INTEGER(HSIZE_T), DIMENSION(2) :: data_dims, ref_size ! - ! Initialize FORTRAN interface. + ! Initialize FORTRAN interface. ! CALL h5open_f(error) ! @@ -61,17 +61,17 @@ ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! Default file access and file creation - ! properties are used. + ! properties are used. ! ! Create a group in the file ! CALL h5gcreate_f(file_id, groupname1, grp1_id, error) ! - ! Create a group inside the created gorup + ! Create a group inside the created gorup ! CALL h5gcreate_f(grp1_id, groupname2, grp2_id, error) - ! - ! Create dataspaces for datasets + ! + ! Create dataspaces for datasets ! CALL h5screate_simple_f(rank, dims, space_id, error, maxdims=my_maxdims) CALL h5screate_simple_f(rankr, dimsr, spacer_id, error) @@ -92,7 +92,7 @@ CALL h5tcommit_f(file_id, "MyType", type_id, error) ! ! Close dataspaces, groups and integer dataset - ! + ! CALL h5sclose_f(space_id, error) CALL h5sclose_f(spacer_id, error) CALL h5tclose_f(type_id, error) @@ -113,7 +113,7 @@ ! Close the dataset ! CALL h5dclose_f(dsetr_id, error) - ! + ! ! Reopen the dataset with object references and read references to the buffer ! CALL h5dopen_f(file_id, dsetnamer,dsetr_id,error) @@ -141,7 +141,7 @@ ! Get datatype class and display it if it is of a FLOAT class. ! CALL h5tget_class_f(type_id, class, error) - if(class .eq. H5T_FLOAT_F) write(*,*) "Stored datatype is of a FLOAT class" + if(class .eq. H5T_FLOAT_F) write(*,*) "Stored datatype is of a FLOAT class" ! ! Close all objects. ! @@ -150,10 +150,10 @@ CALL h5dclose_f(dsetr_id, error) CALL h5fclose_f(file_id, error) ! - ! Close FORTRAN interface. + ! Close FORTRAN interface. ! CALL h5close_f(error) - END PROGRAM OBJ_REFERENCES + END PROGRAM OBJ_REFERENCES diff --git a/fortran/examples/refregexample.f90 b/fortran/examples/refregexample.f90 index e7728bb..68fbd24 100644 --- a/fortran/examples/refregexample.f90 +++ b/fortran/examples/refregexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,43 +11,43 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! This program shows how to create, store and dereference references +! This program shows how to create, store and dereference references ! to the dataset regions. ! Program creates a file and writes two dimensional integer dataset ! to it. Then program creates and stores references to the hyperslab -! and 3 points selected in the integer dataset, in the second dataset. +! and 3 points selected in the integer dataset, in the second dataset. ! Program reopens the second dataset, reads and dereferences region -! references, and then reads and displays selected data from the +! references, and then reads and displays selected data from the ! integer dataset. -! +! PROGRAM REG_REFERENCE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=10), PARAMETER :: filename = "FORTRAN.h5" CHARACTER(LEN=6), PARAMETER :: dsetnamev = "MATRIX" CHARACTER(LEN=17), PARAMETER :: dsetnamer = "REGION_REFERENCES" - - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: space_id ! Dataspace identifier - INTEGER(HID_T) :: spacer_id ! Dataspace identifier - INTEGER(HID_T) :: dsetv_id ! Dataset identifier - INTEGER(HID_T) :: dsetr_id ! Dataset identifier + + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: space_id ! Dataspace identifier + INTEGER(HID_T) :: spacer_id ! Dataspace identifier + INTEGER(HID_T) :: dsetv_id ! Dataset identifier + INTEGER(HID_T) :: dsetr_id ! Dataset identifier INTEGER :: error TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref ! Buffers to store references TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref_out ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/2,9/) ! Datasets dimensions - INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) ! + INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) ! INTEGER(HSIZE_T), DIMENSION(2) :: start INTEGER(HSIZE_T), DIMENSION(2) :: count - INTEGER :: rankr = 1 + INTEGER :: rankr = 1 INTEGER :: rank = 2 - INTEGER , DIMENSION(2,9) :: data - INTEGER , DIMENSION(2,9) :: data_out = 0 + INTEGER , DIMENSION(2,9) :: data + INTEGER , DIMENSION(2,9) :: data_out = 0 INTEGER(HSIZE_T) , DIMENSION(2,3) :: coord INTEGER(SIZE_T) ::num_points = 3 ! Number of selected points INTEGER :: i, j @@ -64,26 +64,26 @@ ! CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error) ! Default file access and file creation - ! properties are used. - ! + ! properties are used. + ! ! Create dataspaces: - ! - ! for dataset with references to dataset regions + ! + ! for dataset with references to dataset regions ! CALL h5screate_simple_f(rankr, dimsr, spacer_id, error) ! - ! for integer dataset + ! for integer dataset ! CALL h5screate_simple_f(rank, dims, space_id, error) ! ! Create and write datasets: ! - ! Integer dataset + ! Integer dataset ! CALL h5dcreate_f(file_id, dsetnamev, H5T_NATIVE_INTEGER, space_id, & dsetv_id, error) data_dims(1) = 2 - data_dims(2) = 9 + data_dims(2) = 9 CALL h5dwrite_f(dsetv_id, H5T_NATIVE_INTEGER, data, data_dims, error) CALL h5dclose_f(dsetv_id, error) ! @@ -94,25 +94,25 @@ ! ! Create a reference to the hyperslab selection. ! - start(1) = 0 - start(2) = 3 + start(1) = 0 + start(2) = 3 count(1) = 2 count(2) = 3 CALL h5sselect_hyperslab_f(space_id, H5S_SELECT_SET_F, & - start, count, error) - CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(1), error) + start, count, error) + CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(1), error) ! ! Create a reference to elements selection. ! CALL h5sselect_none_f(space_id, error) CALL h5sselect_elements_f(space_id, H5S_SELECT_SET_F, rank, num_points,& - coord, error) - CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(2), error) + coord, error) + CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(2), error) ! - ! Write dataset with the references. + ! Write dataset with the references. ! ref_size(1) = size(ref) - CALL h5dwrite_f(dsetr_id, H5T_STD_REF_DSETREG, ref, ref_size, error) + CALL h5dwrite_f(dsetr_id, H5T_STD_REF_DSETREG, ref, ref_size, error) ! ! Close all objects. ! @@ -129,12 +129,12 @@ ! Read references to the dataset regions. ! ref_size(1) = size(ref_out) - CALL h5dread_f(dsetr_id, H5T_STD_REF_DSETREG, ref_out, ref_size, error) - ! + CALL h5dread_f(dsetr_id, H5T_STD_REF_DSETREG, ref_out, ref_size, error) + ! ! Dereference the first reference. - ! + ! CALL H5rdereference_f(dsetr_id, ref_out(1), dsetv_id, error) - CALL H5rget_region_f(dsetr_id, ref_out(1), space_id, error) + CALL H5rget_region_f(dsetr_id, ref_out(1), space_id, error) ! ! Read selected data from the dataset. ! @@ -142,18 +142,18 @@ mem_space_id = space_id, file_space_id = space_id) write(*,*) "Hypeslab selection" write(*,*) - do i = 1,2 + do i = 1,2 write(*,*) (data_out (i,j), j = 1,9) enddo write(*,*) CALL h5sclose_f(space_id, error) CALL h5dclose_f(dsetv_id, error) data_out = 0 - ! + ! ! Dereference the second reference. - ! + ! CALL H5rdereference_f(dsetr_id, ref_out(2), dsetv_id, error) - CALL H5rget_region_f(dsetr_id, ref_out(2), space_id, error) + CALL H5rget_region_f(dsetr_id, ref_out(2), space_id, error) ! ! Read selected data from the dataset. ! @@ -161,7 +161,7 @@ mem_space_id = space_id, file_space_id = space_id) write(*,*) "Point selection" write(*,*) - do i = 1,2 + do i = 1,2 write(*,*) (data_out (i,j), j = 1,9) enddo ! @@ -173,8 +173,8 @@ ! ! Close FORTRAN interface. ! - CALL h5close_f(error) + CALL h5close_f(error) - END PROGRAM REG_REFERENCE + END PROGRAM REG_REFERENCE diff --git a/fortran/examples/rwdsetexample.f90 b/fortran/examples/rwdsetexample.f90 index 37ee282..1e84e23 100644 --- a/fortran/examples/rwdsetexample.f90 +++ b/fortran/examples/rwdsetexample.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,34 +11,34 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! The following example shows how to write and read to/from an existing dataset. -! It opens the file created in the previous example, obtains the dataset -! identifier, writes the data to the dataset in the file, -! then reads the dataset to memory. +! The following example shows how to write and read to/from an existing dataset. +! It opens the file created in the previous example, obtains the dataset +! identifier, writes the data to the dataset in the file, +! then reads the dataset to memory. ! PROGRAM RWDSETEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=8), PARAMETER :: filename = "dsetf.h5" ! File name CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER :: error ! Error flag INTEGER :: i, j INTEGER, DIMENSION(4,6) :: dset_data, data_out ! Data buffers INTEGER(HSIZE_T), DIMENSION(2) :: data_dims - + ! ! Initialize the dset_data array. ! @@ -51,7 +51,7 @@ ! ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Open an existing file. @@ -59,7 +59,7 @@ CALL h5fopen_f (filename, H5F_ACC_RDWR_F, file_id, error) ! - ! Open an existing dataset. + ! Open an existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) @@ -67,7 +67,7 @@ ! Write the dataset. ! data_dims(1) = 4 - data_dims(2) = 6 + data_dims(2) = 6 CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error) ! @@ -84,13 +84,13 @@ ! Close the file. ! CALL h5fclose_f(file_id, error) - + ! ! Close FORTRAN interface. ! CALL h5close_f(error) - END PROGRAM RWDSETEXAMPLE + END PROGRAM RWDSETEXAMPLE + - diff --git a/fortran/examples/selectele.f90 b/fortran/examples/selectele.f90 index 461fd0b..3ab7ebc 100644 --- a/fortran/examples/selectele.f90 +++ b/fortran/examples/selectele.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,25 +11,25 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! -! This program creates two files, copy1.h5, and copy2.h5. -! In copy1.h5, it creates a 3x4 dataset called 'Copy1', -! and write 0's to this dataset. -! In copy2.h5, it create a 3x4 dataset called 'Copy2', -! and write 1's to this dataset. -! It closes both files, reopens both files, selects two -! points in copy1.h5 and writes values to them. Then it -! uses an H5Scopy to write the same selection to copy2.h5. -! Program reopens the files, and reads and prints the contents of -! the two datasets. -! +! This program creates two files, copy1.h5, and copy2.h5. +! In copy1.h5, it creates a 3x4 dataset called 'Copy1', +! and write 0's to this dataset. +! In copy2.h5, it create a 3x4 dataset called 'Copy2', +! and write 1's to this dataset. +! It closes both files, reopens both files, selects two +! points in copy1.h5 and writes values to them. Then it +! uses an H5Scopy to write the same selection to copy2.h5. +! Program reopens the files, and reads and prints the contents of +! the two datasets. +! PROGRAM SELECTEXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=8), PARAMETER :: filename1 = "copy1.h5" ! File name @@ -41,27 +41,27 @@ INTEGER(SIZE_T), PARAMETER :: NUMP = 2 ! Number of points selected - INTEGER(HID_T) :: file1_id ! File1 identifier - INTEGER(HID_T) :: file2_id ! File2 identifier - INTEGER(HID_T) :: dset1_id ! Dataset1 identifier - INTEGER(HID_T) :: dset2_id ! Dataset2 identifier - INTEGER(HID_T) :: dataspace1 ! Dataspace identifier - INTEGER(HID_T) :: dataspace2 ! Dataspace identifier - INTEGER(HID_T) :: memspace ! memspace identifier + INTEGER(HID_T) :: file1_id ! File1 identifier + INTEGER(HID_T) :: file2_id ! File2 identifier + INTEGER(HID_T) :: dset1_id ! Dataset1 identifier + INTEGER(HID_T) :: dset2_id ! Dataset2 identifier + INTEGER(HID_T) :: dataspace1 ! Dataspace identifier + INTEGER(HID_T) :: dataspace2 ! Dataspace identifier + INTEGER(HID_T) :: memspace ! memspace identifier - INTEGER(HSIZE_T), DIMENSION(1) :: dimsm = (/2/) - ! Memory dataspace dimensions + INTEGER(HSIZE_T), DIMENSION(1) :: dimsm = (/2/) + ! Memory dataspace dimensions INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/3,4/) ! File dataspace dimensions INTEGER(HSIZE_T), DIMENSION(RANK,NUMP) :: coord ! Elements coordinates - ! in the file + ! in the file INTEGER, DIMENSION(3,4) :: buf1, buf2, bufnew ! Data buffers INTEGER, DIMENSION(2) :: val = (/53, 59/) ! Values to write - + INTEGER :: memrank = 1 ! Rank of the dataset in memory - INTEGER :: i, j + INTEGER :: i, j INTEGER :: error ! Error flag LOGICAL :: status @@ -70,11 +70,11 @@ ! ! Create two files containing identical datasets. Write 0's to one - ! and 1's to the other. + ! and 1's to the other. ! ! - ! Data initialization. + ! Data initialization. ! do i = 1, 3 do j = 1, 4 @@ -87,21 +87,21 @@ buf2(i,j) = 1; end do end do - + ! - ! Initialize FORTRAN interface. + ! Initialize FORTRAN interface. ! - CALL h5open_f(error) + CALL h5open_f(error) ! ! Create file1, file2 using default properties. - ! + ! CALL h5fcreate_f(filename1, H5F_ACC_TRUNC_F, file1_id, error) CALL h5fcreate_f(filename2, H5F_ACC_TRUNC_F, file2_id, error) ! - ! Create the data space for the datasets. + ! Create the data space for the datasets. ! CALL h5screate_simple_f(RANK, dimsf, dataspace1, error) @@ -120,7 +120,7 @@ ! Write the datasets. ! data_dims(1) = 3 - data_dims(2) = 4 + data_dims(2) = 4 CALL h5dwrite_f(dset1_id, H5T_NATIVE_INTEGER, buf1, data_dims, error) CALL h5dwrite_f(dset2_id, H5T_NATIVE_INTEGER, buf2, data_dims, error) @@ -147,8 +147,8 @@ CALL h5fclose_f(file2_id, error) ! - ! Open the two files. Select two points in one file, write values to - ! those point locations, then do H5Scopy and write the values to the + ! Open the two files. Select two points in one file, write values to + ! those point locations, then do H5Scopy and write the values to the ! other file. Close files. ! @@ -156,7 +156,7 @@ ! Open the files. ! CALL h5fopen_f (filename1, H5F_ACC_RDWR_F, file1_id, error) - + CALL h5fopen_f (filename2, H5F_ACC_RDWR_F, file2_id, error) ! @@ -170,19 +170,19 @@ ! Get dataset1's dataspace identifier. ! CALL h5dget_space_f(dset1_id, dataspace1, error) - + ! ! Create memory dataspace. ! CALL h5screate_simple_f(memrank, dimsm, memspace, error) - + ! - ! Set the selected point positions. Because Fortran array index starts + ! Set the selected point positions. Because Fortran array index starts ! from 1, so add one to the actual select points in C. ! - coord(1,1) = 1 - coord(2,1) = 2 - coord(1,2) = 1 + coord(1,1) = 1 + coord(2,1) = 2 + coord(1,2) = 1 coord(2,2) = 4 ! @@ -201,7 +201,7 @@ ! ! Copy the daspace1 into dataspace2. ! - CALL h5scopy_f(dataspace1, dataspace2, error) + CALL h5scopy_f(dataspace1, dataspace2, error) ! ! Write value into the selected points in dataset2. @@ -244,7 +244,7 @@ ! Open the files. ! CALL h5fopen_f (filename1, H5F_ACC_RDWR_F, file1_id, error) - + CALL h5fopen_f (filename2, H5F_ACC_RDWR_F, file2_id, error) ! @@ -257,8 +257,8 @@ ! ! Read dataset from the first file. ! - data_dims(1) = 3 - data_dims(2) = 4 + data_dims(1) = 3 + data_dims(2) = 4 CALL h5dread_f(dset1_id, H5T_NATIVE_INTEGER, bufnew, data_dims, error) ! diff --git a/fortran/src/H5Aff.f90 b/fortran/src/H5Aff.f90 index 9eda259..49f3e70 100644 --- a/fortran/src/H5Aff.f90 +++ b/fortran/src/H5Aff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5A functions. @@ -20,29 +20,29 @@ MODULE H5A USE H5GLOBAL ! -!On Windows there are no big (integer*8) integers, so overloading +!On Windows there are no big (integer*8) integers, so overloading !for bug #670 does not work. I have to use DEC compilation directives to make !Windows DEC Visual Fortran and OSF compilers happy and do right things. ! 05/01/02 EP ! INTERFACE h5awrite_f - MODULE PROCEDURE h5awrite_integer_scalar - MODULE PROCEDURE h5awrite_integer_1 - MODULE PROCEDURE h5awrite_integer_2 - MODULE PROCEDURE h5awrite_integer_3 - MODULE PROCEDURE h5awrite_integer_4 - MODULE PROCEDURE h5awrite_integer_5 - MODULE PROCEDURE h5awrite_integer_6 - MODULE PROCEDURE h5awrite_integer_7 - MODULE PROCEDURE h5awrite_char_scalar - MODULE PROCEDURE h5awrite_char_1 - MODULE PROCEDURE h5awrite_char_2 - MODULE PROCEDURE h5awrite_char_3 - MODULE PROCEDURE h5awrite_char_4 - MODULE PROCEDURE h5awrite_char_5 - MODULE PROCEDURE h5awrite_char_6 - MODULE PROCEDURE h5awrite_char_7 + MODULE PROCEDURE h5awrite_integer_scalar + MODULE PROCEDURE h5awrite_integer_1 + MODULE PROCEDURE h5awrite_integer_2 + MODULE PROCEDURE h5awrite_integer_3 + MODULE PROCEDURE h5awrite_integer_4 + MODULE PROCEDURE h5awrite_integer_5 + MODULE PROCEDURE h5awrite_integer_6 + MODULE PROCEDURE h5awrite_integer_7 + MODULE PROCEDURE h5awrite_char_scalar + MODULE PROCEDURE h5awrite_char_1 + MODULE PROCEDURE h5awrite_char_2 + MODULE PROCEDURE h5awrite_char_3 + MODULE PROCEDURE h5awrite_char_4 + MODULE PROCEDURE h5awrite_char_5 + MODULE PROCEDURE h5awrite_char_6 + MODULE PROCEDURE h5awrite_char_7 MODULE PROCEDURE h5awrite_real_scalar MODULE PROCEDURE h5awrite_real_1 MODULE PROCEDURE h5awrite_real_2 @@ -57,21 +57,21 @@ MODULE H5A INTERFACE h5aread_f MODULE PROCEDURE h5aread_integer_scalar - MODULE PROCEDURE h5aread_integer_1 - MODULE PROCEDURE h5aread_integer_2 - MODULE PROCEDURE h5aread_integer_3 - MODULE PROCEDURE h5aread_integer_4 - MODULE PROCEDURE h5aread_integer_5 - MODULE PROCEDURE h5aread_integer_6 - MODULE PROCEDURE h5aread_integer_7 - MODULE PROCEDURE h5aread_char_scalar - MODULE PROCEDURE h5aread_char_1 - MODULE PROCEDURE h5aread_char_2 - MODULE PROCEDURE h5aread_char_3 - MODULE PROCEDURE h5aread_char_4 - MODULE PROCEDURE h5aread_char_5 - MODULE PROCEDURE h5aread_char_6 - MODULE PROCEDURE h5aread_char_7 + MODULE PROCEDURE h5aread_integer_1 + MODULE PROCEDURE h5aread_integer_2 + MODULE PROCEDURE h5aread_integer_3 + MODULE PROCEDURE h5aread_integer_4 + MODULE PROCEDURE h5aread_integer_5 + MODULE PROCEDURE h5aread_integer_6 + MODULE PROCEDURE h5aread_integer_7 + MODULE PROCEDURE h5aread_char_scalar + MODULE PROCEDURE h5aread_char_1 + MODULE PROCEDURE h5aread_char_2 + MODULE PROCEDURE h5aread_char_3 + MODULE PROCEDURE h5aread_char_4 + MODULE PROCEDURE h5aread_char_5 + MODULE PROCEDURE h5aread_char_6 + MODULE PROCEDURE h5aread_char_7 MODULE PROCEDURE h5aread_real_scalar MODULE PROCEDURE h5aread_real_1 MODULE PROCEDURE h5aread_real_2 @@ -82,56 +82,56 @@ MODULE H5A MODULE PROCEDURE h5aread_real_7 END INTERFACE - + CONTAINS !---------------------------------------------------------------------- -! Name: h5acreate_f +! Name: h5acreate_f ! -! Purpose: Creates a dataset as an attribute of a group, dataset, -! or named datatype +! Purpose: Creates a dataset as an attribute of a group, dataset, +! or named datatype ! -! Inputs: +! Inputs: ! loc_id - identifier of an object (group, dataset, ! or named datatype) attribute is attached to ! name - attribute name ! type_id - attribute datatype identifier ! space_id - attribute dataspace identifier ! -! Outputs: +! Outputs: ! attr_id - attribute identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! acpl_id - Attribute creation property list identifier -! appl_id - Attribute access property list identifier +! appl_id - Attribute access property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5acreate_f(loc_id, name, type_id, space_id, attr_id, & hdferr, acpl_id, aapl_id ) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name - INTEGER(HID_T), INTENT(IN) :: type_id - ! Attribute datatype identifier - INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(HID_T), INTENT(IN) :: type_id + ! Attribute datatype identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Attribute dataspace identifier - INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: acpl_id ! Attribute creation property list identifier INTEGER(HID_T), OPTIONAL, INTENT(IN) :: aapl_id ! Attribute access property list identifier - + INTEGER(HID_T) :: acpl_id_default - INTEGER(HID_T) :: aapl_id_default + INTEGER(HID_T) :: aapl_id_default INTEGER(SIZE_T) :: namelen ! INTEGER, EXTERNAL :: h5acreate_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -154,7 +154,7 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: attr_id END FUNCTION h5acreate_c END INTERFACE - + acpl_id_default = H5P_DEFAULT_F aapl_id_default = H5P_DEFAULT_F namelen = LEN(NAME) @@ -168,36 +168,36 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5aopen_name_f +! Name: h5aopen_name_f ! -! Purpose: Opens an attribute specified by name. +! Purpose: Opens an attribute specified by name. ! -! Inputs: -! obj_id - identifier of a group, dataset, or named +! Inputs: +! obj_id - identifier of a group, dataset, or named ! datatype atttribute to be attached to ! name - attribute name -! Outputs: +! Outputs: ! attr_id - attribute identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aopen_name_f(obj_id, name, attr_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name - INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(SIZE_T) :: namelen @@ -217,45 +217,45 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: attr_id END FUNCTION h5aopen_name_c END INTERFACE - + namelen = LEN(name) hdferr = h5aopen_name_c(obj_id, name, namelen, attr_id) END SUBROUTINE h5aopen_name_f !---------------------------------------------------------------------- -! Name: h5aopen_idx_f +! Name: h5aopen_idx_f ! ! Purpose: Opens the attribute specified by its index. ! -! Inputs: +! Inputs: ! obj_id - identifier of a group, dataset, or named ! datatype an attribute to be attached to ! index - index of the attribute to open (zero-based) -! Outputs: +! Outputs: ! attr_id - attribute identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aopen_idx_f(obj_id, index, attr_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier - INTEGER, INTENT(IN) :: index ! Attribute index - INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER, INTENT(IN) :: index ! Attribute index + INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! INTEGER, EXTERNAL :: h5aopen_idx_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -270,18 +270,18 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: attr_id END FUNCTION h5aopen_idx_c END INTERFACE - + hdferr = h5aopen_idx_c(obj_id, index, attr_id) END SUBROUTINE h5aopen_idx_f SUBROUTINE h5awrite_integer_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - INTEGER, INTENT(IN) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER, INTENT(IN) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_integer_s_c @@ -293,27 +293,27 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_S_C'::h5awrite_integer_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN)::buf END FUNCTION h5awrite_integer_s_c END INTERFACE - + hdferr = h5awrite_integer_s_c(attr_id, memtype_id, buf, dims) END SUBROUTINE h5awrite_integer_scalar SUBROUTINE h5awrite_integer_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN) , & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! INTEGER, EXTERNAL :: h5awrite_integer_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -323,7 +323,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_1_C'::h5awrite_integer_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), DIMENSION(dims(1)) :: buf @@ -337,15 +337,15 @@ CONTAINS SUBROUTINE h5awrite_integer_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN) , & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! INTEGER, EXTERNAL :: h5awrite_integer_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -355,7 +355,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_2_C'::h5awrite_integer_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2)) :: buf @@ -368,12 +368,12 @@ CONTAINS SUBROUTINE h5awrite_integer_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_integer_3_c @@ -385,26 +385,26 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_3_C'::h5awrite_integer_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)) :: buf END FUNCTION h5awrite_integer_3_c END INTERFACE - + hdferr = h5awrite_integer_3_c(attr_id, memtype_id, buf, dims) END SUBROUTINE h5awrite_integer_3 SUBROUTINE h5awrite_integer_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_integer_4_c @@ -416,7 +416,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_4_C'::h5awrite_integer_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf @@ -429,12 +429,12 @@ CONTAINS SUBROUTINE h5awrite_integer_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_integer_5_c @@ -446,7 +446,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_5_C'::h5awrite_integer_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf @@ -459,15 +459,15 @@ CONTAINS SUBROUTINE h5awrite_integer_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! INTEGER, EXTERNAL :: h5awrite_integer_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -477,7 +477,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_6_C'::h5awrite_integer_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), & @@ -491,13 +491,13 @@ CONTAINS SUBROUTINE h5awrite_integer_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_integer_7_c @@ -509,7 +509,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_7_C'::h5awrite_integer_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(IN), & @@ -523,11 +523,11 @@ CONTAINS SUBROUTINE h5awrite_real_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - REAL, INTENT(IN) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + REAL, INTENT(IN) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_s_c @@ -539,7 +539,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_S_C'::h5awrite_real_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN)::buf @@ -551,13 +551,13 @@ CONTAINS SUBROUTINE h5awrite_real_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_1_c @@ -569,7 +569,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_1_C'::h5awrite_real_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -583,13 +583,13 @@ CONTAINS SUBROUTINE h5awrite_real_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_2_c @@ -601,7 +601,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_2_C'::h5awrite_real_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -615,13 +615,13 @@ CONTAINS SUBROUTINE h5awrite_real_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_3_c @@ -633,7 +633,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_3_C'::h5awrite_real_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -647,13 +647,13 @@ CONTAINS SUBROUTINE h5awrite_real_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_4_c @@ -665,7 +665,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_4_C'::h5awrite_real_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -679,13 +679,13 @@ CONTAINS SUBROUTINE h5awrite_real_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_5_c @@ -697,7 +697,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_5_C'::h5awrite_real_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -711,13 +711,13 @@ CONTAINS SUBROUTINE h5awrite_real_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_6_c @@ -729,7 +729,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_6_C'::h5awrite_real_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -743,13 +743,13 @@ CONTAINS SUBROUTINE h5awrite_real_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_real_7_c @@ -761,7 +761,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_7_C'::h5awrite_real_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(IN), & @@ -775,12 +775,12 @@ CONTAINS SUBROUTINE h5awrite_char_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - CHARACTER(LEN=*),INTENT(IN) :: buf - ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + CHARACTER(LEN=*),INTENT(IN) :: buf + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_s_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -791,7 +791,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_S_C'::h5awritec_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id @@ -804,13 +804,13 @@ CONTAINS SUBROUTINE h5awrite_char_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_1_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -822,7 +822,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_1_C'::h5awritec_1_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1))::buf @@ -835,13 +835,13 @@ CONTAINS SUBROUTINE h5awrite_char_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_2_c @@ -853,7 +853,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_2_C'::h5awritec_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id @@ -868,13 +868,13 @@ CONTAINS SUBROUTINE h5awrite_char_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_3_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -886,7 +886,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_3_C'::h5awritec_3_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), & @@ -900,13 +900,13 @@ CONTAINS SUBROUTINE h5awrite_char_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_4_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -918,7 +918,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_4_C'::h5awritec_4_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), & @@ -932,13 +932,13 @@ CONTAINS SUBROUTINE h5awrite_char_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_5_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -950,7 +950,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_5_C'::h5awritec_5_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), & @@ -964,13 +964,13 @@ CONTAINS SUBROUTINE h5awrite_char_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_6_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -982,7 +982,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_6_C'::h5awritec_6_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), & @@ -996,13 +996,13 @@ CONTAINS SUBROUTINE h5awrite_char_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awritec_7_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1014,7 +1014,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_7_C'::h5awritec_7_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(IN), & @@ -1026,29 +1026,29 @@ CONTAINS END SUBROUTINE h5awrite_char_7 !---------------------------------------------------------------------- -! Name: h5aread_f +! Name: h5aread_f ! ! Purpose: Reads an attribute. ! -! Inputs: +! Inputs: ! attr_id - attribute identifier ! memtype_id - attribute memory type identifier -! dims - 1D array of size 7, stores sizes of the +! dims - 1D array of size 7, stores sizes of the ! - buf array dimensions. -! Outputs: +! Outputs: ! buf - buffer to read attribute data in -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! ! dims parameter was added to make code portable; ! Aprile 4, 2001 @@ -1060,16 +1060,16 @@ CONTAINS ! ! Comment: This function is overloaded to write INTEGER, ! REAL, DOUBLE PRECISION and CHARACTER buffers -! up to 7 dimensions. +! up to 7 dimensions. !---------------------------------------------------------------------- SUBROUTINE h5aread_integer_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - INTEGER, INTENT(INOUT) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER, INTENT(INOUT) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_integer_s_c @@ -1081,7 +1081,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_S_C'::h5aread_integer_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT)::buf @@ -1092,10 +1092,10 @@ CONTAINS SUBROUTINE h5aread_integer_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), DIMENSION(dims(1)) :: buf INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1108,7 +1108,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_1_C'::h5aread_integer_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), DIMENSION(dims(1)) :: buf @@ -1121,10 +1121,10 @@ CONTAINS SUBROUTINE h5aread_integer_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT),DIMENSION(dims(1),dims(2)) :: buf INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1137,7 +1137,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_2_C'::h5aread_integer_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2)) :: buf @@ -1150,10 +1150,10 @@ CONTAINS SUBROUTINE h5aread_integer_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1167,7 +1167,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_3_C'::h5aread_integer_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), & @@ -1181,13 +1181,13 @@ CONTAINS SUBROUTINE h5aread_integer_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_integer_4_c @@ -1199,7 +1199,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_4_C'::h5aread_integer_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), & @@ -1213,13 +1213,13 @@ CONTAINS SUBROUTINE h5aread_integer_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_integer_5_c @@ -1231,7 +1231,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_5_C'::h5aread_integer_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), & @@ -1245,13 +1245,13 @@ CONTAINS SUBROUTINE h5aread_integer_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_integer_6_c @@ -1263,7 +1263,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_6_C'::h5aread_integer_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), & @@ -1277,13 +1277,13 @@ CONTAINS SUBROUTINE h5aread_integer_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_integer_7_c @@ -1295,7 +1295,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_7_C'::h5aread_integer_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id INTEGER, INTENT(INOUT), & @@ -1309,11 +1309,11 @@ CONTAINS SUBROUTINE h5aread_real_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - REAL, INTENT(INOUT) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + REAL, INTENT(INOUT) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_s_c @@ -1325,7 +1325,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_S_C'::h5aread_real_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT)::buf @@ -1337,13 +1337,13 @@ CONTAINS SUBROUTINE h5aread_real_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_1_c @@ -1355,7 +1355,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_1_C'::h5aread_real_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1369,13 +1369,13 @@ CONTAINS SUBROUTINE h5aread_real_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_2_c @@ -1387,7 +1387,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_2_C'::h5aread_real_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1401,13 +1401,13 @@ CONTAINS SUBROUTINE h5aread_real_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_3_c @@ -1419,7 +1419,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_3_C'::h5aread_real_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1433,13 +1433,13 @@ CONTAINS SUBROUTINE h5aread_real_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_4_c @@ -1451,7 +1451,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_4_C'::h5aread_real_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1465,13 +1465,13 @@ CONTAINS SUBROUTINE h5aread_real_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_5_c @@ -1483,7 +1483,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_5_C'::h5aread_real_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1497,13 +1497,13 @@ CONTAINS SUBROUTINE h5aread_real_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_6_c @@ -1515,7 +1515,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_6_C'::h5aread_real_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1529,13 +1529,13 @@ CONTAINS SUBROUTINE h5aread_real_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_real_7_c @@ -1547,7 +1547,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_7_C'::h5aread_real_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id REAL, INTENT(INOUT), & @@ -1560,12 +1560,12 @@ CONTAINS SUBROUTINE h5aread_char_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - CHARACTER(LEN=*), INTENT(INOUT) :: buf - ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + CHARACTER(LEN=*), INTENT(INOUT) :: buf + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_s_c @@ -1578,7 +1578,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_S_C'::h5areadc_s_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT) :: buf @@ -1590,13 +1590,13 @@ CONTAINS SUBROUTINE h5aread_char_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_1_c @@ -1609,7 +1609,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_1_C'::h5areadc_1_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1623,13 +1623,13 @@ CONTAINS SUBROUTINE h5aread_char_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_2_c @@ -1642,7 +1642,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_2_C'::h5areadc_2_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1656,13 +1656,13 @@ CONTAINS SUBROUTINE h5aread_char_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_3_c @@ -1675,7 +1675,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_3_C'::h5areadc_3_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1689,13 +1689,13 @@ CONTAINS SUBROUTINE h5aread_char_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_4_c @@ -1708,7 +1708,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_4_C'::h5areadc_4_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1722,13 +1722,13 @@ CONTAINS SUBROUTINE h5aread_char_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_5_c @@ -1741,7 +1741,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_5_C'::h5areadc_5_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1755,13 +1755,13 @@ CONTAINS SUBROUTINE h5aread_char_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_6_c @@ -1774,7 +1774,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_6_C'::h5areadc_6_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1788,13 +1788,13 @@ CONTAINS SUBROUTINE h5aread_char_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5areadc_7_c @@ -1807,7 +1807,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_7_C'::h5areadc_7_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: buf - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id CHARACTER(LEN=*), INTENT(INOUT), & @@ -1820,33 +1820,33 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5aget_space_f +! Name: h5aget_space_f ! ! Purpose: Gets a copy of the dataspace for an attribute. ! -! Inputs: +! Inputs: ! attr_id - attribute identifier -! Outputs: +! Outputs: ! space_id - attribite dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aget_space_f(attr_id, space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(OUT) :: space_id + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(OUT) :: space_id ! Attribute dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1868,33 +1868,33 @@ CONTAINS END SUBROUTINE h5aget_space_f !---------------------------------------------------------------------- -! Name: h5aget_type_f +! Name: h5aget_type_f ! ! Purpose: Gets an attribute datatype. ! -! Inputs: +! Inputs: ! attr_id - attribute identifier -! Outputs: +! Outputs: ! type_id - attribute datatype identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aget_type_f(attr_id, type_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(OUT) :: type_id + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(OUT) :: type_id ! Attribute datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1916,36 +1916,36 @@ CONTAINS END SUBROUTINE h5aget_type_f !---------------------------------------------------------------------- -! Name: h5aget_name_f +! Name: h5aget_name_f ! -! Purpose: Gets an attribute name. +! Purpose: Gets an attribute name. ! -! Inputs: +! Inputs: ! attr_id - attribute identifier ! size - size of a buffer to read name in -! Outputs: +! Outputs: ! buf - buffer to read name in -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aget_name_f(attr_id, size, buf, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(SIZE_T), INTENT(IN) :: size ! Buffer size - CHARACTER(LEN=*), INTENT(INOUT) :: buf + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(SIZE_T), INTENT(IN) :: size ! Buffer size + CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Buffer to hold attribute name INTEGER, INTENT(OUT) :: hdferr ! Error code: ! name length is successful, @@ -1972,9 +1972,9 @@ CONTAINS !---------------------------------------------------------------------- ! Name: h5aget_name_by_idx_f ! -! Purpose: Gets an attribute name, by attribute index position. +! Purpose: Gets an attribute name, by attribute index position. ! -! Inputs: +! Inputs: ! loc_id - Location of object to which attribute is attached ! obj_name - Name of object to which attribute is attached, relative to location ! idx_type - Type of index; Possible values are: @@ -1995,13 +1995,13 @@ CONTAINS ! order - Index traversal order ! n - Attribute’s position in index ! -! Outputs: +! Outputs: ! name - Attribute name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list +! lapl_id - Link access property list ! size - Size, in bytes, of attribute name ! ! Programmer: M.S. Breitenfeld @@ -2030,10 +2030,10 @@ CONTAINS ! H5_ITER_N_F - Number of iteration orders INTEGER(HSIZE_T), INTENT(IN) :: n ! Attribute’s position in index - + CHARACTER(LEN=*), INTENT(OUT) :: name ! Attribute name - + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! Returns attribute name size, ! -1 if fail @@ -2058,7 +2058,7 @@ CONTAINS INTEGER, INTENT(IN) :: idx_type INTEGER, INTENT(IN) :: order INTEGER(HSIZE_T), INTENT(IN) :: n - + CHARACTER(LEN=*), INTENT(OUT) :: name INTEGER(SIZE_T) :: size_default INTEGER(HID_T) :: lapl_id_default @@ -2074,7 +2074,7 @@ CONTAINS hdferr = h5aget_name_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, & n, name, size_default, lapl_id_default) - + IF(PRESENT(size)) size = size_default @@ -2082,33 +2082,33 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5aget_num_attrs_f +! Name: h5aget_num_attrs_f ! ! Purpose: Determines the number of attributes attached to an object. ! -! Inputs: +! Inputs: ! obj_id - object (group, dataset, or named datatype) ! identifier -! Outputs: +! Outputs: ! attr_num - number of attributes attached to the object -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aget_num_attrs_f(obj_id, attr_num, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier INTEGER, INTENT(OUT) :: attr_num ! Number of attributes of the ! object INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2126,39 +2126,39 @@ CONTAINS INTEGER, INTENT(OUT) :: attr_num END FUNCTION h5aget_num_attrs_c END INTERFACE - + hdferr = h5aget_num_attrs_c(obj_id, attr_num) END SUBROUTINE h5aget_num_attrs_f !---------------------------------------------------------------------- -! Name: h5adelete_f +! Name: h5adelete_f ! ! Purpose: Deletes an attribute of an object (group, dataset or ! named datatype) ! -! Inputs: +! Inputs: ! obj_id - object identifier ! name - attribute name -! Outputs: +! Outputs: ! -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5adelete_f(obj_id, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(SIZE_T) :: namelen @@ -2167,7 +2167,7 @@ CONTAINS ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5adelete_c(obj_id, name, namelen) + INTEGER FUNCTION h5adelete_c(obj_id, name, namelen) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ADELETE_C'::h5adelete_c @@ -2178,38 +2178,38 @@ CONTAINS INTEGER(SIZE_T) :: namelen END FUNCTION h5adelete_c END INTERFACE - + namelen = LEN(name) hdferr = h5adelete_c(obj_id, name, namelen) END SUBROUTINE h5adelete_f !---------------------------------------------------------------------- -! Name: h5aclose_f +! Name: h5aclose_f ! ! Purpose: Closes the specified attribute. -! -! Inputs: +! +! Inputs: ! attr_id - attribute identifier -! Outputs: +! Outputs: ! -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces are added for +! Modifications: Explicit Fortran interfaces are added for ! called C functions (it is needed for Windows -! port). February 27, 2001 +! port). February 27, 2001 ! !---------------------------------------------------------------------- SUBROUTINE h5aclose_f(attr_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier INTEGER, INTENT(OUT) :: hdferr ! Error code: ! INTEGER, EXTERNAL :: h5aclose_c @@ -2224,27 +2224,27 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: attr_id END FUNCTION h5aclose_c END INTERFACE - + hdferr = h5aclose_c(attr_id) END SUBROUTINE h5aclose_f !---------------------------------------------------------------------- -! Name: h5aget_storage_size_f +! Name: h5aget_storage_size_f ! ! Purpose: Returns the amount of storage required for an attribute. -! -! Inputs: +! +! Inputs: ! attr_id - attribute identifier -! Outputs: +! Outputs: ! size - attribute storage size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M. S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2252,7 +2252,7 @@ CONTAINS SUBROUTINE h5aget_storage_size_f(attr_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier INTEGER(HSIZE_T), INTENT(OUT) :: size ! Attribute storage requirement INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2268,27 +2268,27 @@ CONTAINS INTEGER(HSIZE_T), INTENT(OUT) :: size END FUNCTION h5aget_storage_size_c END INTERFACE - + hdferr = h5aget_storage_size_c(attr_id, size) END SUBROUTINE h5aget_storage_size_f !---------------------------------------------------------------------- -! Name: h5aget_create_plist_f +! Name: h5aget_create_plist_f ! ! Purpose: Gets an attribute creation property list identifier -! -! Inputs: +! +! Inputs: ! attr_id - Identifier of the attribute -! Outputs: +! Outputs: ! creation_prop_id - Identifier for the attribute’s creation property -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M. S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2296,7 +2296,7 @@ CONTAINS SUBROUTINE h5aget_create_plist_f(attr_id, creation_prop_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Identifier of the attribute + INTEGER(HID_T), INTENT(IN) :: attr_id ! Identifier of the attribute INTEGER(HID_T), INTENT(OUT) :: creation_prop_id ! Identifier for the attribute’s creation property INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure @@ -2313,30 +2313,30 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: creation_prop_id END FUNCTION h5aget_create_plist_c END INTERFACE - + hdferr = h5aget_create_plist_c(attr_id, creation_prop_id) END SUBROUTINE h5aget_create_plist_f !---------------------------------------------------------------------- -! Name: h5arename_by_name_f +! Name: h5arename_by_name_f ! ! Purpose: Renames an attribute ! -! Inputs: +! Inputs: ! loc_id - Location or object identifier; may be dataset or group -! obj_name - Name of object, relative to location, +! obj_name - Name of object, relative to location, ! whose attribute is to be renamed ! old_attr_name - Prior attribute name ! new_attr_name - New attribute name ! lapl_id - Link access property list identifier ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: M.S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2345,12 +2345,12 @@ CONTAINS SUBROUTINE h5arename_by_name_f(loc_id, obj_name, old_attr_name, new_attr_name, & hdferr, lapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier - CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, + INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier + CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, ! whose attribute is to be renamed CHARACTER(LEN=*), INTENT(IN) :: old_attr_name ! Prior attribute name CHARACTER(LEN=*), INTENT(IN) :: new_attr_name ! New attribute name - + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier @@ -2359,7 +2359,7 @@ CONTAINS INTEGER(SIZE_T) :: obj_namelen INTEGER(SIZE_T) :: old_attr_namelen INTEGER(SIZE_T) :: new_attr_namelen - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -2379,7 +2379,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: new_attr_name INTEGER(SIZE_T) :: new_attr_namelen INTEGER(HID_T) :: lapl_id_default - + END FUNCTION h5arename_by_name_c END INTERFACE @@ -2389,45 +2389,45 @@ CONTAINS lapl_id_default = H5P_DEFAULT_F IF(PRESENT(lapl_id)) lapl_id_default=lapl_id - + hdferr = h5arename_by_name_c(loc_id, obj_name, obj_namelen, & old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen, & lapl_id_default) - + END SUBROUTINE h5arename_by_name_f !---------------------------------------------------------------------- -! Name: h5aopen_f +! Name: h5aopen_f ! -! Purpose: Opens an attribute for an object specified by object +! Purpose: Opens an attribute for an object specified by object ! identifier and attribute name ! -! Inputs: +! Inputs: ! obj_id - Identifer for object to which attribute is attached ! attr_name - Name of attribute to open -! Outputs: +! Outputs: ! attr_id - attribute identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! aapl_id - Attribute access property list ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- SUBROUTINE h5aopen_f(obj_id, attr_name, attr_id, hdferr, aapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name - INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 INTEGER(HID_T), OPTIONAL, INTENT(IN) :: aapl_id ! Attribute access property list INTEGER(HID_T) :: aapl_id_default @@ -2445,7 +2445,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: obj_id CHARACTER(LEN=*), INTENT(IN) :: attr_name INTEGER(HID_T) :: aapl_id_default - INTEGER(SIZE_T) :: attr_namelen + INTEGER(SIZE_T) :: attr_namelen INTEGER(HID_T), INTENT(OUT) :: attr_id END FUNCTION h5aopen_c END INTERFACE @@ -2460,11 +2460,11 @@ CONTAINS END SUBROUTINE h5aopen_f !---------------------------------------------------------------------- -! Name: h5adelete_by_idx_f +! Name: h5adelete_by_idx_f ! -! Purpose: Deletes an attribute from an object according to index order +! Purpose: Deletes an attribute from an object according to index order ! -! Inputs: +! Inputs: ! loc_id - Location or object identifier; may be dataset or group ! obj_name - Name of object, relative to location, from which attribute is to be removed ! idx_type - Type of index; Possible values are: @@ -2473,7 +2473,7 @@ CONTAINS ! H5_INDEX_NAME_F - Index on names ! H5_INDEX_CRT_ORDER_F - Index on creation order ! H5_INDEX_N_F - Number of indices defined -! +! ! order - Order in which to iterate over index; Possible values are: ! ! H5_ITER_UNKNOWN_F - Unknown order @@ -2484,22 +2484,22 @@ CONTAINS ! ! n - Offset within index ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Link access property list ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- SUBROUTINE h5adelete_by_idx_f(loc_id, obj_name, idx_type, order, n, hdferr, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifer for object to which attribute is attached - CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, + CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, ! from which attribute is to be removed INTEGER, INTENT(IN) :: idx_type ! Type of index; Possible values are: ! H5_INDEX_UNKNOWN_F - Unknown index type @@ -2514,14 +2514,14 @@ CONTAINS ! H5_ITER_NATIVE_F - No particular order, whatever is fastest ! H5_ITER_N_F - Number of iteration orders ! - INTEGER(HSIZE_T), INTENT(IN) :: n ! Offset within index + INTEGER(HSIZE_T), INTENT(IN) :: n ! Offset within index INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(SIZE_T) :: obj_namelen INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(HID_T) :: lapl_id_default - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -2535,7 +2535,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER, INTENT(IN) :: idx_type INTEGER, INTENT(IN) :: order - INTEGER(HSIZE_T), INTENT(IN) :: n + INTEGER(HSIZE_T), INTENT(IN) :: n INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: obj_namelen END FUNCTION h5adelete_by_idx_c @@ -2543,44 +2543,44 @@ CONTAINS lapl_id_default = H5P_DEFAULT_F IF(PRESENT(lapl_id)) lapl_id_default = lapl_id - + obj_namelen = LEN(obj_name) hdferr = h5adelete_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default) - + END SUBROUTINE h5adelete_by_idx_f !---------------------------------------------------------------------- -! Name: h5adelete_by_name_f +! Name: h5adelete_by_name_f ! ! Purpose: Removes an attribute from a specified location ! -! Inputs: +! Inputs: ! loc_id - Identifer for object to which attribute is attached ! obj_name - Name of attribute to open ! attr_name - Attribute access property list ! lapl_id - Link access property list ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- SUBROUTINE h5adelete_by_name_f(loc_id, obj_name, attr_name, hdferr, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifer for object to which attribute is attached - CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, + CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location, ! from which attribute is to be removed CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Name of attribute to delete INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(SIZE_T) :: attr_namelen INTEGER(SIZE_T) :: obj_namelen @@ -2603,7 +2603,7 @@ CONTAINS INTEGER(SIZE_T) :: obj_namelen END FUNCTION h5adelete_by_name_c END INTERFACE - + obj_namelen = LEN(obj_name) attr_namelen = LEN(attr_name) @@ -2615,28 +2615,28 @@ CONTAINS END SUBROUTINE h5adelete_by_name_f !---------------------------------------------------------------------- -! Name: h5aopen_by_idx_f +! Name: h5aopen_by_idx_f ! ! Purpose: Opens an existing attribute that is attached to an object specified by location and name ! -! Inputs: +! Inputs: ! loc_id - Location of object to which attribute is attached ! obj_name - Name of object to which attribute is attached, relative to location ! idx_type - Type of index ! order - Index traversal order ! n - Attribute’s position in index ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! aapl_id - Attribute access property list ! lapl_id - Link access property list ! ! Programmer: M.S. Breitenfeld -! January, 2008 +! January, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- @@ -2654,7 +2654,7 @@ CONTAINS ! H5_ITER_INC_F - Increasing order ! H5_ITER_DEC_F - Decreasing order ! H5_ITER_NATIVE_F - No particular order, whatever is fastest - + INTEGER(HSIZE_T), INTENT(IN) :: n ! Attribute’s position in index INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier @@ -2664,7 +2664,7 @@ CONTAINS INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(SIZE_T) :: obj_namelen - INTEGER(HID_T) :: aapl_id_default + INTEGER(HID_T) :: aapl_id_default INTEGER(HID_T) :: lapl_id_default ! @@ -2706,25 +2706,25 @@ CONTAINS ! Name: h5aget_info_f ! ! Purpose: Retrieves attribute information, by attribute identifier -! -! Inputs: +! +! Inputs: ! attr_id - attribute identifier ! ! Outputs: NOTE: In C it is defined as a structure: H5A_info_t ! ! corder_valid - indicates whether the creation order data is valid for this attribute -! corder - is a positive integer containing the creation order of the attribute -! cset - indicates the character set used for the attribute’s name +! corder - is a positive integer containing the creation order of the attribute +! cset - indicates the character set used for the attribute’s name ! data_size - indicates the size, in the number of characters, of the attribute -! -! hdferr - error code +! +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M. S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2734,7 +2734,7 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER, INTENT(OUT) :: corder ! Is a positive integer containing the creation order of the attribute INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T), INTENT(OUT) :: data_size ! Indicates the size, in the number of characters, of the attribute @@ -2761,10 +2761,10 @@ CONTAINS END INTERFACE hdferr = h5aget_info_c(attr_id, corder_valid, corder, cset, data_size) - + f_corder_valid =.FALSE. IF (corder_valid .EQ. 1) f_corder_valid =.TRUE. - + END SUBROUTINE h5aget_info_f @@ -2773,7 +2773,7 @@ CONTAINS ! Name: h5aget_info_by_idx_f ! ! Purpose: Retrieves attribute information, by attribute index position -! +! ! Inputs: ! loc_id - Location of object to which attribute is attached ! obj_name - Name of object to which attribute is attached, relative to location @@ -2783,17 +2783,17 @@ CONTAINS ! ! Outputs: NOTE: In C it is defined as a structure: H5A_info_t ! corder_valid - indicates whether the creation order data is valid for this attribute -! corder - is a positive integer containing the creation order of the attribute -! cset - indicates the character set used for the attribute’s name -! data_size - indicates the size, in the number of characters, of the attribute -! hdferr - error code +! corder - is a positive integer containing the creation order of the attribute +! cset - indicates the character set used for the attribute’s name +! data_size - indicates the size, in the number of characters, of the attribute +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list +! lapl_id - Link access property list ! ! Programmer: M. S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2813,11 +2813,11 @@ CONTAINS ! H5_ITER_INC_F - Increasing order ! H5_ITER_DEC_F - Decreasing order ! H5_ITER_NATIVE_F - No particular order, whatever is fastest - + INTEGER(HSIZE_T), INTENT(IN) :: n ! Attribute’s position in index - LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER, INTENT(OUT) :: corder ! Is a positive integer containing the creation order of the attribute INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T), INTENT(OUT) :: data_size ! Indicates the size, in the number of characters, of the attribute @@ -2844,7 +2844,7 @@ CONTAINS INTEGER, INTENT(IN) :: order INTEGER(HSIZE_T), INTENT(IN) :: n INTEGER(HID_T) :: lapl_id_default - INTEGER, INTENT(OUT) :: corder_valid + INTEGER, INTENT(OUT) :: corder_valid INTEGER, INTENT(OUT) :: corder INTEGER, INTENT(OUT) :: cset INTEGER(HSIZE_T), INTENT(OUT) :: data_size @@ -2863,14 +2863,14 @@ CONTAINS f_corder_valid =.FALSE. IF (corder_valid .EQ. 1) f_corder_valid =.TRUE. - + END SUBROUTINE h5aget_info_by_idx_f !---------------------------------------------------------------------- ! Name: h5aget_info_by_name_f ! ! Purpose: Retrieves attribute information, by attribute name -! +! ! Inputs: ! loc_id - Location of object to which attribute is attached ! obj_name - Name of object to which attribute is attached, relative to location @@ -2878,17 +2878,17 @@ CONTAINS ! ! Outputs: NOTE: In C it is defined as a structure: H5A_info_t ! corder_valid - indicates whether the creation order data is valid for this attribute -! corder - is a positive integer containing the creation order of the attribute -! cset - indicates the character set used for the attribute’s name -! data_size - indicates the size, in the number of characters, of the attribute -! hdferr - error code +! corder - is a positive integer containing the creation order of the attribute +! cset - indicates the character set used for the attribute’s name +! data_size - indicates the size, in the number of characters, of the attribute +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list +! lapl_id - Link access property list ! ! Programmer: M. S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -2901,7 +2901,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name - LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER, INTENT(OUT) :: corder ! Is a positive integer containing the creation order of the attribute INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T), INTENT(OUT) :: data_size ! Indicates the size, in the number of characters, of the attribute @@ -2912,7 +2912,7 @@ CONTAINS INTEGER(SIZE_T) :: attr_namelen INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(HID_T) :: lapl_id_default - + ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -2930,7 +2930,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: attr_name INTEGER(SIZE_T), INTENT(IN) :: attr_namelen INTEGER(HID_T) :: lapl_id_default - INTEGER, INTENT(OUT) :: corder_valid + INTEGER, INTENT(OUT) :: corder_valid INTEGER, INTENT(OUT) :: corder INTEGER, INTENT(OUT) :: cset INTEGER(HSIZE_T), INTENT(OUT) :: data_size @@ -2942,21 +2942,21 @@ CONTAINS attr_namelen = LEN(attr_name) lapl_id_default = H5P_DEFAULT_F - IF(PRESENT(lapl_id)) lapl_id_default = lapl_id + IF(PRESENT(lapl_id)) lapl_id_default = lapl_id hdferr = h5aget_info_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, & corder_valid, corder, cset, data_size) f_corder_valid =.FALSE. IF (corder_valid .EQ. 1) f_corder_valid =.TRUE. - + END SUBROUTINE h5aget_info_by_name_f !---------------------------------------------------------------------- -! Name: H5Acreate_by_name_f +! Name: H5Acreate_by_name_f ! ! Purpose: Creates an attribute attached to a specified object -! +! ! Inputs: ! loc_id - Location or object identifier; may be dataset or group ! obj_name - Name, relative to loc_id, of object that attribute is to be attached to @@ -2966,16 +2966,16 @@ CONTAINS ! ! Outputs: ! attr - an attribute identifier -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! acpl_id - Attribute creation property list identifier (Currently not used.) ! aapl_id - Attribute access property list identifier (Currently not used.) -! lapl_id - Link access property list +! lapl_id - Link access property list ! ! Programmer: M. S. Breitenfeld -! February, 2008 +! February, 2008 ! ! Modifications: N/A ! @@ -3020,7 +3020,7 @@ CONTAINS INTEGER(SIZE_T), INTENT(IN) :: obj_namelen CHARACTER(LEN=*), INTENT(IN) :: attr_name INTEGER(SIZE_T), INTENT(IN) :: attr_namelen - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(HID_T), INTENT(IN) :: space_id INTEGER(HID_T) :: acpl_id_default INTEGER(HID_T) :: aapl_id_default @@ -3040,30 +3040,30 @@ CONTAINS IF(PRESENT(acpl_id)) acpl_id_default = acpl_id IF(PRESENT(aapl_id)) aapl_id_default = aapl_id IF(PRESENT(lapl_id)) lapl_id_default = lapl_id - + hdferr = h5acreate_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, & type_id, space_id, acpl_id_default, aapl_id_default, lapl_id_default, attr) END SUBROUTINE h5acreate_by_name_f !---------------------------------------------------------------------- -! Name: H5Aexists_f +! Name: H5Aexists_f ! ! Purpose: Determines whether an attribute with a given name exists on an object -! +! ! Inputs: ! obj_id - Object identifier ! attr_name - Attribute name ! ! Outputs: ! attr_exists - attribute exists status -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M. S. Breitenfeld -! February, 2008 +! February, 2008 ! ! Modifications: N/A ! @@ -3099,15 +3099,15 @@ CONTAINS hdferr = h5aexists_c(obj_id, attr_name, attr_namelen, attr_exists_c) attr_exists = .FALSE. - IF(attr_exists_c.GT.0) attr_exists = .TRUE. + IF(attr_exists_c.GT.0) attr_exists = .TRUE. END SUBROUTINE h5aexists_f !---------------------------------------------------------------------- -! Name: H5Aexists_by_name_f +! Name: H5Aexists_by_name_f ! ! Purpose: Determines whether an attribute with a given name exists on an object -! +! ! Inputs: ! loc_id - Location identifier ! obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot) @@ -3115,14 +3115,14 @@ CONTAINS ! ! Outputs: ! attr_exists - attribute exists status -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list identifier +! lapl_id - Link access property list identifier ! ! Programmer: M. S. Breitenfeld -! February, 2008 +! February, 2008 ! ! Modifications: N/A ! @@ -3130,7 +3130,7 @@ CONTAINS SUBROUTINE h5aexists_by_name_f(loc_id, obj_name, attr_name, attr_exists, hdferr, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier - CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id, + CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id, ! absolute from the file’s root group, or '.' CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name LOGICAL, INTENT(OUT) :: attr_exists ! .TRUE. if exists, .FALSE. otherwise @@ -3151,8 +3151,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AEXISTS_BY_NAME_C'::h5aexists_by_name_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: obj_name, attr_name - INTEGER(HID_T), INTENT(IN) :: loc_id + !DEC$ATTRIBUTES reference :: obj_name, attr_name + INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen CHARACTER(LEN=*), INTENT(IN) :: attr_name @@ -3171,30 +3171,30 @@ CONTAINS hdferr = h5aexists_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, attr_exists_c) attr_exists = .FALSE. - IF(attr_exists_c.GT.0) attr_exists = .TRUE. + IF(attr_exists_c.GT.0) attr_exists = .TRUE. END SUBROUTINE h5aexists_by_name_f !---------------------------------------------------------------------- -! Name: H5Aopen_by_name_f +! Name: H5Aopen_by_name_f ! ! Purpose: Opens an attribute for an object by object name and attribute name. -! +! ! Inputs: -! loc_id - Location from which to find object to which attribute is attached +! loc_id - Location from which to find object to which attribute is attached ! obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot) ! attr_name - Attribute name ! ! Outputs: ! attr_id - attribute identifier -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! aapl_id - Attribute access property list (Currently unused; should be passed in as H5P_DEFAULT.) -! lapl_id - Link access property list identifier +! lapl_id - Link access property list identifier ! ! Programmer: M. S. Breitenfeld -! February, 2008 +! February, 2008 ! ! Modifications: N/A ! @@ -3202,16 +3202,16 @@ CONTAINS SUBROUTINE h5aopen_by_name_f(loc_id, obj_name, attr_name, attr_id, hdferr, aapl_id, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier - CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id, + CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id, ! absolute from the file’s root group, or '.' CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: aapl_id ! Attribute access property list + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: aapl_id ! Attribute access property list ! (Currently unused; should be passed in as H5P_DEFAULT_F) INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier - + INTEGER(HID_T) :: aapl_id_default INTEGER(HID_T) :: lapl_id_default @@ -3228,7 +3228,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_BY_NAME_C'::h5aopen_by_name_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: obj_name, attr_name - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen CHARACTER(LEN=*), INTENT(IN) :: attr_name @@ -3253,22 +3253,22 @@ CONTAINS END SUBROUTINE h5aopen_by_name_f !---------------------------------------------------------------------- -! Name: h5arename_f +! Name: h5arename_f ! ! Purpose: Renames an attribute ! -! Inputs: +! Inputs: ! loc_id - Location or object identifier; may be dataset or group ! old_attr_name - Prior attribute name ! new_attr_name - New attribute name ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: M.S. Breitenfeld -! January, 2008 +! January, 2008 ! ! Modifications: N/A ! @@ -3283,7 +3283,7 @@ CONTAINS ! 0 on success and -1 on failure INTEGER(SIZE_T) :: old_attr_namelen INTEGER(SIZE_T) :: new_attr_namelen - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -3299,16 +3299,16 @@ CONTAINS INTEGER(SIZE_T) :: old_attr_namelen CHARACTER(LEN=*), INTENT(IN) :: new_attr_name INTEGER(SIZE_T) :: new_attr_namelen - + END FUNCTION h5arename_c END INTERFACE old_attr_namelen = LEN(old_attr_name) new_attr_namelen = LEN(new_attr_name) - + hdferr = h5arename_c(loc_id, & old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen) - + END SUBROUTINE h5arename_f END MODULE H5A diff --git a/fortran/src/H5Df.c b/fortran/src/H5Df.c index a7c6e75..573315a 100644 --- a/fortran/src/H5Df.c +++ b/fortran/src/H5Df.c @@ -2015,7 +2015,7 @@ nh5dget_access_plist_c (hid_t_f *dset_id, hid_t_f *plist_id) goto DONE; ret_value = 0; - + DONE: return ret_value; } diff --git a/fortran/src/H5Dff.f90 b/fortran/src/H5Dff.f90 index f06f5a5..c4810b3 100644 --- a/fortran/src/H5Dff.f90 +++ b/fortran/src/H5Dff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,11 +11,11 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5D functions. -! +! MODULE H5D USE H5GLOBAL @@ -24,21 +24,21 @@ MODULE H5D MODULE PROCEDURE h5dwrite_reference_obj MODULE PROCEDURE h5dwrite_reference_dsetreg MODULE PROCEDURE h5dwrite_integer_scalar - MODULE PROCEDURE h5dwrite_integer_1 - MODULE PROCEDURE h5dwrite_integer_2 - MODULE PROCEDURE h5dwrite_integer_3 - MODULE PROCEDURE h5dwrite_integer_4 - MODULE PROCEDURE h5dwrite_integer_5 - MODULE PROCEDURE h5dwrite_integer_6 - MODULE PROCEDURE h5dwrite_integer_7 + MODULE PROCEDURE h5dwrite_integer_1 + MODULE PROCEDURE h5dwrite_integer_2 + MODULE PROCEDURE h5dwrite_integer_3 + MODULE PROCEDURE h5dwrite_integer_4 + MODULE PROCEDURE h5dwrite_integer_5 + MODULE PROCEDURE h5dwrite_integer_6 + MODULE PROCEDURE h5dwrite_integer_7 MODULE PROCEDURE h5dwrite_char_scalar - MODULE PROCEDURE h5dwrite_char_1 - MODULE PROCEDURE h5dwrite_char_2 - MODULE PROCEDURE h5dwrite_char_3 - MODULE PROCEDURE h5dwrite_char_4 - MODULE PROCEDURE h5dwrite_char_5 - MODULE PROCEDURE h5dwrite_char_6 - MODULE PROCEDURE h5dwrite_char_7 + MODULE PROCEDURE h5dwrite_char_1 + MODULE PROCEDURE h5dwrite_char_2 + MODULE PROCEDURE h5dwrite_char_3 + MODULE PROCEDURE h5dwrite_char_4 + MODULE PROCEDURE h5dwrite_char_5 + MODULE PROCEDURE h5dwrite_char_6 + MODULE PROCEDURE h5dwrite_char_7 MODULE PROCEDURE h5dwrite_real_scalar MODULE PROCEDURE h5dwrite_real_1 MODULE PROCEDURE h5dwrite_real_2 @@ -54,21 +54,21 @@ MODULE H5D MODULE PROCEDURE h5dread_reference_obj MODULE PROCEDURE h5dread_reference_dsetreg MODULE PROCEDURE h5dread_integer_scalar - MODULE PROCEDURE h5dread_integer_1 - MODULE PROCEDURE h5dread_integer_2 - MODULE PROCEDURE h5dread_integer_3 - MODULE PROCEDURE h5dread_integer_4 - MODULE PROCEDURE h5dread_integer_5 - MODULE PROCEDURE h5dread_integer_6 - MODULE PROCEDURE h5dread_integer_7 + MODULE PROCEDURE h5dread_integer_1 + MODULE PROCEDURE h5dread_integer_2 + MODULE PROCEDURE h5dread_integer_3 + MODULE PROCEDURE h5dread_integer_4 + MODULE PROCEDURE h5dread_integer_5 + MODULE PROCEDURE h5dread_integer_6 + MODULE PROCEDURE h5dread_integer_7 MODULE PROCEDURE h5dread_char_scalar - MODULE PROCEDURE h5dread_char_1 - MODULE PROCEDURE h5dread_char_2 - MODULE PROCEDURE h5dread_char_3 - MODULE PROCEDURE h5dread_char_4 - MODULE PROCEDURE h5dread_char_5 - MODULE PROCEDURE h5dread_char_6 - MODULE PROCEDURE h5dread_char_7 + MODULE PROCEDURE h5dread_char_1 + MODULE PROCEDURE h5dread_char_2 + MODULE PROCEDURE h5dread_char_3 + MODULE PROCEDURE h5dread_char_4 + MODULE PROCEDURE h5dread_char_5 + MODULE PROCEDURE h5dread_char_6 + MODULE PROCEDURE h5dread_char_7 MODULE PROCEDURE h5dread_real_scalar MODULE PROCEDURE h5dread_real_1 MODULE PROCEDURE h5dread_real_2 @@ -103,49 +103,49 @@ MODULE H5D CONTAINS - + !---------------------------------------------------------------------- -! Name: h5dcreate_f +! Name: h5dcreate_f ! -! Purpose: Creates a dataset at the specified location +! Purpose: Creates a dataset at the specified location ! -! Inputs: +! Inputs: ! loc_id - file or group identifier ! name - dataset name ! type_id - dataset datatype identifier ! space_id - dataset dataspace identifier -! Outputs: +! Outputs: ! dset_id - dataset identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! creation_prp - Dataset creation property list ! lcpl_id - Link creation property list ! dapl_id - Dataset access property list ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: -! - Explicit Fortran interfaces were added for +! Modifications: +! - Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! ! - Added version's 1.8 new optional parameters ! February, 2008 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - - SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id, & + + SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id, & hdferr, dcpl_id, lcpl_id, dapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list @@ -174,14 +174,14 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: dcpl_id_default INTEGER(HID_T) :: dapl_id_default INTEGER(HID_T), INTENT(OUT) :: dset_id END FUNCTION h5dcreate_c END INTERFACE - + lcpl_id_default = H5P_DEFAULT_F dcpl_id_default = H5P_DEFAULT_F dapl_id_default = H5P_DEFAULT_F @@ -191,46 +191,46 @@ CONTAINS IF(PRESENT(dapl_id)) dapl_id_default = dapl_id namelen = LEN(name) - hdferr = h5dcreate_c(loc_id, name, namelen, type_id, space_id, & + hdferr = h5dcreate_c(loc_id, name, namelen, type_id, space_id, & lcpl_id_default, dcpl_id_default, dapl_id_default, dset_id) - + END SUBROUTINE h5dcreate_f - + !---------------------------------------------------------------------- -! Name: h5dopen_f +! Name: h5dopen_f ! -! Purpose: Opens an existing dataset. +! Purpose: Opens an existing dataset. ! -! Inputs: +! Inputs: ! loc_id - file or group identifier ! name - dataset name -! Outputs: +! Outputs: ! dset_id - dataset identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! dapl_id - Dataset access property list +! dapl_id - Dataset access property list ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: -Explicit Fortran interfaces were added for +! Modifications: -Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! ! -Added 1.8 (optional) parameter dapl_id ! February, 2008, M. Scot Breitenfeld ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dopen_f(loc_id, name, dset_id, hdferr, dapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list INTEGER :: namelen ! Name length @@ -258,32 +258,32 @@ CONTAINS IF(PRESENT(dapl_id)) dapl_id_default = dapl_id namelen = LEN(name) - hdferr = h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id) + hdferr = h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id) END SUBROUTINE h5dopen_f - + !---------------------------------------------------------------------- -! Name: h5dclose_f +! Name: h5dclose_f ! -! Purpose: Closes a dataset. +! Purpose: Closes a dataset. ! -! Inputs: +! Inputs: ! dset_id - dataset identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dclose_f(dset_id, hdferr) @@ -315,14 +315,14 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(IN) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -338,26 +338,26 @@ CONTAINS file_space_id_default, xfer_prp_default, ref_buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_OBJ_C'::h5dwrite_ref_obj_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_OBJ_C'::h5dwrite_ref_obj_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default INTEGER(HADDR_T), DIMENSION(*) :: ref_buf INTEGER(HSIZE_T), DIMENSION(*) :: dims END FUNCTION h5dwrite_ref_obj_c - END INTERFACE + END INTERFACE xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id - + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id + allocate(ref_buf(dims(1)), stat=hdferr) if (hdferr .NE. 0 ) then hdferr = -1 @@ -365,7 +365,7 @@ CONTAINS else do j = 1, dims(1) ref_buf(j) = buf(j)%ref - enddo + enddo endif hdferr = h5dwrite_ref_obj_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, ref_buf, dims(1)) @@ -378,16 +378,16 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier - INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf + INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf TYPE(hdset_reg_ref_t_f), DIMENSION(dims(1)), INTENT(IN) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -403,26 +403,26 @@ CONTAINS file_space_id_default, xfer_prp_default, ref_buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_REG_C'::h5dwrite_ref_reg_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_REG_C'::h5dwrite_ref_reg_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default INTEGER, DIMENSION(*) :: ref_buf INTEGER(HSIZE_T), DIMENSION(*) :: dims END FUNCTION h5dwrite_ref_reg_c - END INTERFACE + END INTERFACE xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id allocate(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr) if (hdferr .NE. 0 ) then @@ -430,7 +430,7 @@ CONTAINS return else do j = 1, dims(1) - do i = 1, REF_REG_BUF_LEN + do i = 1, REF_REG_BUF_LEN ref_buf(REF_REG_BUF_LEN*(j-1) + i) = buf(j)%ref(i) enddo enddo @@ -440,8 +440,8 @@ CONTAINS deallocate(ref_buf) END SUBROUTINE h5dwrite_reference_dsetreg - - + + SUBROUTINE h5dwrite_integer_scalar(dset_id, mem_type_id, buf, dims, hdferr, & mem_space_id, file_space_id, xfer_prp) IMPLICIT NONE @@ -449,14 +449,14 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER, INTENT(IN) :: buf ! Data buffer INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -466,7 +466,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_integer_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -488,13 +488,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_integer_scalar SUBROUTINE h5dwrite_integer_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -505,24 +505,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_integer_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -545,13 +545,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_integer_1 SUBROUTINE h5dwrite_integer_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -562,24 +562,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_integer_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -602,13 +602,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_2 SUBROUTINE h5dwrite_integer_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -619,16 +619,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_3_c @@ -636,7 +636,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_integer_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -659,14 +659,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_3 SUBROUTINE h5dwrite_integer_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -677,24 +677,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_integer_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -716,14 +716,14 @@ CONTAINS xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_4 SUBROUTINE h5dwrite_integer_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -734,15 +734,15 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -751,7 +751,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_integer_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -775,14 +775,14 @@ CONTAINS file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_5 SUBROUTINE h5dwrite_integer_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -793,24 +793,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_integer_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -833,14 +833,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_6 SUBROUTINE h5dwrite_integer_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -851,24 +851,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_integer_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_integer_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -890,14 +890,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_integer_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dwrite_integer_7 @@ -908,15 +908,15 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -925,14 +925,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwritec_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_S_C'::h5dwritec_s_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -948,13 +948,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_scalar SUBROUTINE h5dwrite_char_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -965,31 +965,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_1_C'::h5dwritec_1_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1006,13 +1006,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_1 SUBROUTINE h5dwrite_char_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1023,31 +1023,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_2_C'::h5dwritec_2_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1064,13 +1064,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_2 SUBROUTINE h5dwrite_char_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1081,31 +1081,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_3_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_3_C'::h5dwritec_3_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1122,13 +1122,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_3 SUBROUTINE h5dwrite_char_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1139,31 +1139,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_4_C'::h5dwritec_4_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1180,13 +1180,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_4 SUBROUTINE h5dwrite_char_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1197,14 +1197,14 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -1214,14 +1214,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwritec_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_5_C'::h5dwritec_5_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1238,13 +1238,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_5 SUBROUTINE h5dwrite_char_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1255,31 +1255,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_6_C'::h5dwritec_6_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1296,13 +1296,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_6 SUBROUTINE h5dwrite_char_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1313,31 +1313,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwritec_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwritec_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_7_C'::h5dwritec_7_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -1353,13 +1353,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwritec_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_char_7 SUBROUTINE h5dwrite_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1369,15 +1369,15 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_s_c @@ -1385,7 +1385,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_real_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1406,13 +1406,13 @@ CONTAINS xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_scalar SUBROUTINE h5dwrite_real_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1423,24 +1423,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1463,13 +1463,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_1 SUBROUTINE h5dwrite_real_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1480,24 +1480,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1520,13 +1520,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_2 SUBROUTINE h5dwrite_real_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1537,15 +1537,15 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_3_c @@ -1553,7 +1553,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_real_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1576,13 +1576,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_3 SUBROUTINE h5dwrite_real_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1593,23 +1593,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1632,13 +1632,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_4 SUBROUTINE h5dwrite_real_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1649,23 +1649,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_5_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1688,13 +1688,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_5 SUBROUTINE h5dwrite_real_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1705,23 +1705,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1744,13 +1744,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_6 SUBROUTINE h5dwrite_real_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1761,23 +1761,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_real_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_real_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1799,43 +1799,43 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_real_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dwrite_real_7 !---------------------------------------------------------------------- -! Name: h5dread_f +! Name: h5dread_f ! -! Purpose: Reads raw data from the specified dataset into buf, -! converting from file datatype and dataspace to memory +! Purpose: Reads raw data from the specified dataset into buf, +! converting from file datatype and dataspace to memory ! datatype and dataspace. ! -! Inputs: +! Inputs: ! dset_id - dataset identifier ! mem_type_id - memory type identifier -! dims - 1-dim array of size 7; dims(k) has the size +! dims - 1-dim array of size 7; dims(k) has the size ! - of k-th dimension of the buf array -! Outputs: +! Outputs: ! buf - buffer to read data in -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! mem_space_id - memory dataspace identifier ! file_space_id - file dataspace identifier -! xfer_prp - trasfer property list identifier +! xfer_prp - trasfer property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! ! dims parameter was added to make code portable; ! n parameter was replaced with dims parameter in @@ -1846,7 +1846,7 @@ CONTAINS ! REAL, DOUBLE PRECISION and CHARACTER buffers ! up to 7 dimensions, and one dimensional buffers ! of the TYPE(hobj_ref_t_f) and TYPE(hdset_reg_ref_t_f) -! types. +! types. !---------------------------------------------------------------------- SUBROUTINE h5dread_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, & mem_space_id, file_space_id, xfer_prp) @@ -1856,19 +1856,19 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims TYPE(hobj_ref_t_f), INTENT(INOUT) , & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default INTEGER(HADDR_T), ALLOCATABLE, DIMENSION(:) :: ref_buf - INTEGER :: j + INTEGER :: j ! INTEGER, EXTERNAL :: h5dread_ref_obj_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1879,38 +1879,38 @@ CONTAINS file_space_id_default, xfer_prp_default, ref_buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_OBJ_C'::h5dread_ref_obj_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_OBJ_C'::h5dread_ref_obj_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER(HADDR_T), DIMENSION(*) :: ref_buf END FUNCTION h5dread_ref_obj_c - END INTERFACE + END INTERFACE allocate(ref_buf(dims(1)), stat=hdferr) if (hdferr .NE. 0) then hdferr = -1 return - endif + endif xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_ref_obj_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, ref_buf, dims) do j = 1, dims(1) buf(j)%ref = ref_buf(j) - enddo - deallocate(ref_buf) + enddo + deallocate(ref_buf) END SUBROUTINE h5dread_reference_obj SUBROUTINE h5dread_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, & @@ -1919,21 +1919,21 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - TYPE(hdset_reg_ref_t_f), INTENT(INOUT), & + TYPE(hdset_reg_ref_t_f), INTENT(INOUT), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf - INTEGER :: i,j + INTEGER :: i,j ! INTEGER, EXTERNAL :: h5dread_ref_reg_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1944,17 +1944,17 @@ CONTAINS file_space_id_default, xfer_prp_default, ref_buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_REG_C'::h5dread_ref_reg_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_REG_C'::h5dread_ref_reg_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, DIMENSION(*) :: ref_buf END FUNCTION h5dread_ref_reg_c - END INTERFACE + END INTERFACE allocate(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr) if (hdferr .NE. 0) then @@ -1966,18 +1966,18 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, ref_buf, dims) - + do j = 1, dims(1) - do i = 1, REF_REG_BUF_LEN + do i = 1, REF_REG_BUF_LEN buf(j)%ref(i) = ref_buf(REF_REG_BUF_LEN*(j-1) + i) enddo - enddo + enddo deallocate(ref_buf) END SUBROUTINE h5dread_reference_dsetreg @@ -1989,15 +1989,15 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -2006,7 +2006,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_integer_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2028,13 +2028,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_integer_scalar SUBROUTINE h5dread_integer_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2045,14 +2045,14 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -2062,7 +2062,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_integer_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2085,13 +2085,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_integer_1 SUBROUTINE h5dread_integer_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2102,24 +2102,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_integer_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2142,14 +2142,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_2 SUBROUTINE h5dread_integer_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2160,24 +2160,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_3_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_integer_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2200,14 +2200,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_3 SUBROUTINE h5dread_integer_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2218,24 +2218,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_integer_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2258,14 +2258,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_4 SUBROUTINE h5dread_integer_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2276,24 +2276,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_5_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_integer_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2316,14 +2316,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_5 SUBROUTINE h5dread_integer_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2334,16 +2334,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_6_c @@ -2351,7 +2351,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_integer_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2374,14 +2374,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_6 SUBROUTINE h5dread_integer_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2392,24 +2392,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_integer_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_integer_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2431,14 +2431,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_integer_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims) - + END SUBROUTINE h5dread_integer_7 SUBROUTINE h5dread_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2448,16 +2448,16 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_s_c @@ -2465,14 +2465,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dreadc_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_S_C'::h5dreadc_s_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2488,13 +2488,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_scalar SUBROUTINE h5dread_char_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2505,14 +2505,14 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -2522,14 +2522,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dreadc_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_1_C'::h5dreadc_1_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2546,13 +2546,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_1 SUBROUTINE h5dread_char_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2563,31 +2563,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dreadc_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_2_C'::h5dreadc_2_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2604,13 +2604,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_2 SUBROUTINE h5dread_char_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2621,31 +2621,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_3_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dreadc_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_3_C'::h5dreadc_3_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2662,13 +2662,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_3 SUBROUTINE h5dread_char_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2679,31 +2679,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dreadc_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_4_C'::h5dreadc_4_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2720,13 +2720,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_4 SUBROUTINE h5dread_char_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2737,16 +2737,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_5_c @@ -2754,14 +2754,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dreadc_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_5_C'::h5dreadc_5_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2778,13 +2778,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_5 SUBROUTINE h5dread_char_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2795,31 +2795,31 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dreadc_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_6_C'::h5dreadc_6_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2836,13 +2836,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_6 SUBROUTINE h5dread_char_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2853,16 +2853,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims CHARACTER(LEN=*), INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dreadc_7_c @@ -2870,14 +2870,14 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dreadc_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_7_C'::h5dreadc_7_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: buf + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id INTEGER(HID_T) :: mem_space_id_default @@ -2893,13 +2893,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dreadc_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_char_7 SUBROUTINE h5dread_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2909,15 +2909,15 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_s_c @@ -2925,7 +2925,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_real_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -2947,13 +2947,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_scalar SUBROUTINE h5dread_real_1(dset_id, mem_type_id, buf, dims, hdferr, & @@ -2964,23 +2964,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_real_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3003,13 +3003,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_1 SUBROUTINE h5dread_real_2(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3020,15 +3020,15 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_2_c @@ -3036,7 +3036,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_real_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3059,13 +3059,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_2 SUBROUTINE h5dread_real_3(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3076,23 +3076,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_3_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_real_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3105,7 +3105,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - REAL, INTENT(INOUT), & + REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf END FUNCTION h5dread_real_3_c END INTERFACE @@ -3115,13 +3115,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_3 SUBROUTINE h5dread_real_4(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3132,23 +3132,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_real_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3171,13 +3171,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_4 SUBROUTINE h5dread_real_5(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3188,23 +3188,23 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_5_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_real_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3217,7 +3217,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - REAL, INTENT(INOUT), & + REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf END FUNCTION h5dread_real_5_c END INTERFACE @@ -3227,13 +3227,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_5 SUBROUTINE h5dread_real_6(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3244,14 +3244,14 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -3260,7 +3260,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_real_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3283,13 +3283,13 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_6 SUBROUTINE h5dread_real_7(dset_id, mem_type_id, buf, dims, hdferr, & @@ -3300,24 +3300,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_real_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_real_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -3339,45 +3339,45 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_real_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) - + END SUBROUTINE h5dread_real_7 !---------------------------------------------------------------------- -! Name: h5dget_space_f +! Name: h5dget_space_f ! -! Purpose: Returns an identifier for a copy of the dataspace for a -! dataset. +! Purpose: Returns an identifier for a copy of the dataspace for a +! dataset. ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier -! Outputs: +! Outputs: ! dataspace_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dget_space_f(dataset_id, dataspace_id, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HID_T), INTENT(OUT) :: dataspace_id ! Dataspace identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5dget_space_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -3394,39 +3394,39 @@ CONTAINS END INTERFACE hdferr = h5dget_space_c(dataset_id, dataspace_id) - END SUBROUTINE h5dget_space_f + END SUBROUTINE h5dget_space_f !---------------------------------------------------------------------- -! Name: h5dget_type_f +! Name: h5dget_type_f ! -! Purpose: Returns an identifier for a copy of the datatype for a -! dataset. +! Purpose: Returns an identifier for a copy of the datatype for a +! dataset. ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier -! Outputs: +! Outputs: ! datatype_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dget_type_f(dataset_id, datatype_id, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HID_T), INTENT(OUT) :: datatype_id ! Datatype identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5dget_type_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -3442,47 +3442,47 @@ CONTAINS END INTERFACE hdferr = h5dget_type_c (dataset_id, datatype_id) - END SUBROUTINE h5dget_type_f + END SUBROUTINE h5dget_type_f !---------------------------------------------------------------------- -! Name: h5dset_extent (instead of obsolete name: h5dextend_f) +! Name: h5dset_extent (instead of obsolete name: h5dextend_f) ! -! Purpose: Extends a dataset with unlimited dimension. +! Purpose: Extends a dataset with unlimited dimension. ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier -! size - array containing the new magnitude of +! size - array containing the new magnitude of ! each dimension -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! ! Changed name from the now obsolete h5dextend_f ! to h5dset_extent_f. Provided interface to old name ! for backward compatability. -MSB- March 14, 2008 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dset_extent_f(dataset_id, size, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size - ! Array containing - ! dimensions' sizes - INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! Array containing + ! dimensions' sizes + INTEGER, INTENT(OUT) :: hdferr ! Error code + ! ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -3496,44 +3496,44 @@ CONTAINS INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size END FUNCTION h5dset_extent_c END INTERFACE - + hdferr = H5Dset_extent_c(dataset_id, size) END SUBROUTINE h5dset_extent_f !---------------------------------------------------------------------- -! Name: h5dget_create_plist_f +! Name: h5dget_create_plist_f ! -! Purpose: Returns an identifier for a copy of the dataset creation -! property list for a dataset. +! Purpose: Returns an identifier for a copy of the dataset creation +! property list for a dataset. ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier -! Outputs: +! Outputs: ! plist_id - creation property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dget_create_plist_f(dataset_id, plist_id, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HID_T), INTENT(OUT) :: plist_id ! Dataset creation ! property list identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5dget_create_plist_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -3550,39 +3550,39 @@ CONTAINS END INTERFACE hdferr = h5dget_create_plist_c(dataset_id, plist_id) - END SUBROUTINE h5dget_create_plist_f + END SUBROUTINE h5dget_create_plist_f !---------------------------------------------------------------------- -! Name: h5dget_storage_size_f +! Name: h5dget_storage_size_f ! -! Purpose: Returns the amount of storage requires by a dataset +! Purpose: Returns the amount of storage requires by a dataset ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier -! Outputs: +! Outputs: ! size - datastorage size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! October 15, 2002 +! October 15, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dget_storage_size_f(dataset_id, size, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HSIZE_T), INTENT(OUT) :: size - ! Amount of storage + ! Amount of storage ! allocated for dataset - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE INTEGER FUNCTION h5dget_storage_size_c(dataset_id, size) @@ -3596,41 +3596,41 @@ CONTAINS END INTERFACE hdferr = h5dget_storage_size_c(dataset_id, size) - END SUBROUTINE h5dget_storage_size_f + END SUBROUTINE h5dget_storage_size_f !---------------------------------------------------------------------- -! Name: h5dvlen_get_max_len_f +! Name: h5dvlen_get_max_len_f ! ! Purpose: Returns maximum lenght of the VL array elements ! -! Inputs: +! Inputs: ! dataset_id - dataset identifier ! type_id - datatype identifier ! space_id - dataspace identifier -! Outputs: +! Outputs: ! size - buffer size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! October 15, 2002 +! October 15, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dvlen_get_max_len_f(dataset_id, type_id, space_id, len, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER(SIZE_T), INTENT(OUT) :: len ! Maximum length of the element - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE INTEGER FUNCTION h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len) @@ -3639,14 +3639,14 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DVLEN_GET_MAX_LEN_C'::h5dvlen_get_max_len_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: dataset_id - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(SIZE_T), INTENT(OUT) :: len + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(SIZE_T), INTENT(OUT) :: len END FUNCTION h5dvlen_get_max_len_c END INTERFACE hdferr = h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len) - END SUBROUTINE h5dvlen_get_max_len_f + END SUBROUTINE h5dvlen_get_max_len_f SUBROUTINE h5dwrite_vl_integer(dset_id, mem_type_id, buf, dims, len, & hdferr, & @@ -3655,26 +3655,26 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store ! the lenght of each ! element INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default INTERFACE INTEGER FUNCTION h5dwrite_vl_integer_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims, len) USE H5GLOBAL @@ -3687,7 +3687,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len INTEGER, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf END FUNCTION h5dwrite_vl_integer_c @@ -3698,14 +3698,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, len) - + END SUBROUTINE h5dwrite_vl_integer SUBROUTINE h5dread_vl_integer(dset_id, mem_type_id, buf, dims, len, & @@ -3715,29 +3715,29 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem - INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store + INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store ! the lenght of each ! element INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! -1 if failed, 0 otherwise - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: tmp INTEGER :: error INTERFACE INTEGER FUNCTION h5dread_vl_integer_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims, len) USE H5GLOBAL @@ -3750,25 +3750,25 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len + INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len INTEGER, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf END FUNCTION h5dread_vl_integer_c END INTERFACE - CALL h5dget_space_f(dset_id, tmp, error) + CALL h5dget_space_f(dset_id, tmp, error) xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = tmp file_space_id_default = tmp - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, len) - + END SUBROUTINE h5dread_vl_integer SUBROUTINE h5dwrite_vl_real(dset_id, mem_type_id, buf, dims, len, & @@ -3778,26 +3778,26 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store ! the lenght of each ! element REAL, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default INTERFACE INTEGER FUNCTION h5dwrite_vl_real_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims, len) USE H5GLOBAL @@ -3810,7 +3810,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len REAL, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf END FUNCTION h5dwrite_vl_real_c @@ -3821,14 +3821,14 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_vl_real_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, len) - + END SUBROUTINE h5dwrite_vl_real SUBROUTINE h5dread_vl_real(dset_id, mem_type_id, buf, dims, len, & @@ -3838,29 +3838,29 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem - INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store + INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store ! the lenght of each ! element REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! -1 if failed, 0 otherwise - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: tmp INTEGER :: error INTERFACE INTEGER FUNCTION h5dread_vl_real_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims, len) USE H5GLOBAL @@ -3873,25 +3873,25 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len + INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len REAL, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf END FUNCTION h5dread_vl_real_c END INTERFACE - CALL h5dget_space_f(dset_id, tmp, error) + CALL h5dget_space_f(dset_id, tmp, error) xfer_prp_default = H5P_DEFAULT_F mem_space_id_default = tmp file_space_id_default = tmp - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_vl_real_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, len) - + END SUBROUTINE h5dread_vl_real SUBROUTINE h5dwrite_vl_string(dset_id, mem_type_id, buf, dims, str_len, & @@ -3901,27 +3901,27 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! number of strings - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len ! Array to store + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len ! Array to store ! the lenght of each ! element CHARACTER(LEN=*), INTENT(IN), & DIMENSION(dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! CHARACTER, DIMENSION(dims(1)*dims(2)) :: tmp_buf INTERFACE INTEGER FUNCTION h5dwrite_vl_string_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & ! xfer_prp_default, tmp_buf, dims, str_len) xfer_prp_default, buf, dims, str_len) @@ -3936,7 +3936,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims - INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len + INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len ! CHARACTER, INTENT(IN), & ! DIMENSION(dims(1)*dims(2)) :: tmp_buf CHARACTER(LEN=*), DIMENSION(dims(2)) :: buf @@ -3948,21 +3948,21 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id ! do i = 1, dims(2) ! do j = 1, dims(1) ! tmp_buf((i-1)*dims(1) +j) = buf(i)(j:j) ! enddo -! enddo +! enddo ! write(*,*) (tmp_buf(j:j), j=1,dims(1)*dims(2)) ! write(*,*) str_len(1), str_len(2), str_len(3), str_len(4) hdferr = h5dwrite_vl_string_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, str_len) - + END SUBROUTINE h5dwrite_vl_string SUBROUTINE h5dread_vl_string(dset_id, mem_type_id, buf, dims, str_len, & @@ -3972,28 +3972,28 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! number of strings - INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len ! Array to store + INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len ! Array to store ! the lenght of each ! element CHARACTER(LEN=*), INTENT(OUT), & DIMENSION(dims(2)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: file_space_id_default ! CHARACTER, DIMENSION(dims(1)*dims(2)) :: tmp_buf ! integer i, j INTERFACE INTEGER FUNCTION h5dread_vl_string_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & ! xfer_prp_default, tmp_buf, dims, str_len) xfer_prp_default, buf, dims, str_len) @@ -4008,7 +4008,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims - INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len + INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len ! CHARACTER, INTENT(IN), & ! DIMENSION(dims(1)*dims(2)) :: tmp_buf CHARACTER(LEN=*), DIMENSION(dims(2)) :: buf @@ -4020,41 +4020,41 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id ! do i = 1, dims(2) ! do j = 1, dims(1) ! tmp_buf((i-1)*dims(1) +j) = buf(i)(j:j) ! enddo -! enddo +! enddo ! write(*,*) (tmp_buf(j:j), j=1,dims(1)*dims(2)) ! write(*,*) str_len(1), str_len(2), str_len(3), str_len(4) hdferr = h5dread_vl_string_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, & buf, dims, str_len) - RETURN + RETURN END SUBROUTINE h5dread_vl_string !---------------------------------------------------------------------- ! Name: h5dfill_integer ! -! Purpose: Fills dataspace elements with a fill value in a memory buffer. -! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes +! Purpose: Fills dataspace elements with a fill value in a memory buffer. +! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes ! of the fillvalues and buffers are supported. Buffer and fillvalue ! are assumed to have the same datatype. ! Only one-dimesional buffers are supported. ! -! Inputs: +! Inputs: ! fill_value - fill value ! space_id - memory space selection identifier ! buf - data buffer iin memory ro apply selection to ! - of k-th dimension of the buf array -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! March 12, 2003 @@ -4066,11 +4066,11 @@ CONTAINS INTEGER, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier INTEGER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier - + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + ! INTEGER, EXTERNAL :: h5dfill_integer_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -4079,19 +4079,19 @@ CONTAINS buf, mem_type_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_INTEGER_C'::h5dfill_integer_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_INTEGER_C'::h5dfill_integer_c !DEC$ENDIF INTEGER, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier INTEGER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier END FUNCTION h5dfill_integer_c - END INTERFACE + END INTERFACE fill_type_id = H5T_NATIVE_INTEGER mem_type_id = H5T_NATIVE_INTEGER - hdferr = h5dfill_integer_c(fill_value, fill_type_id, space_id, & + hdferr = h5dfill_integer_c(fill_value, fill_type_id, space_id, & buf, mem_type_id) END SUBROUTINE h5dfill_integer @@ -4099,21 +4099,21 @@ CONTAINS !---------------------------------------------------------------------- ! Name: h5dfill_real ! -! Purpose: Fills dataspace elements with a fill value in a memory buffer. -! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes +! Purpose: Fills dataspace elements with a fill value in a memory buffer. +! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes ! of the fillvalues and buffers are supported. Buffer and fillvalue ! are assumed to have the same datatype. ! Only one-dimesional buffers are supported. ! -! Inputs: +! Inputs: ! fill_value - fill value ! space_id - memory space selection identifier ! buf - data buffer iin memory ro apply selection to ! - of k-th dimension of the buf array -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! March 12, 2003 @@ -4125,11 +4125,11 @@ CONTAINS REAL, INTENT(IN) :: fill_valuer ! Fill value INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier REAL, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier - + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + ! INTEGER, EXTERNAL :: h5dfill_real_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -4138,40 +4138,40 @@ CONTAINS buf, mem_type_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_REAL_C'::h5dfill_real_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_REAL_C'::h5dfill_real_c !DEC$ENDIF REAL, INTENT(IN) :: fill_valuer ! Fill value INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier REAL, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier END FUNCTION h5dfill_real_c - END INTERFACE + END INTERFACE fill_type_id = H5T_NATIVE_REAL mem_type_id = H5T_NATIVE_REAL - hdferr = h5dfill_real_c(fill_valuer, fill_type_id, space_id, & + hdferr = h5dfill_real_c(fill_valuer, fill_type_id, space_id, & buf, mem_type_id) END SUBROUTINE h5dfill_real !---------------------------------------------------------------------- ! Name: h5dfill_char ! -! Purpose: Fills dataspace elements with a fill value in a memory buffer. -! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes +! Purpose: Fills dataspace elements with a fill value in a memory buffer. +! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes ! of the fillvalues and buffers are supported. Buffer and fillvalue ! are assumed to have the same datatype. ! Only one-dimesional buffers are supported. ! -! Inputs: +! Inputs: ! fill_value - fill value ! space_id - memory space selection identifier ! buf - data buffer iin memory ro apply selection to ! - of k-th dimension of the buf array -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! March 12, 2003 @@ -4183,11 +4183,11 @@ CONTAINS CHARACTER, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier CHARACTER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier - + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + ! INTEGER, EXTERNAL :: h5dfillc_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -4196,19 +4196,19 @@ CONTAINS buf, mem_type_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILLC_C'::h5dfillc_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILLC_C'::h5dfillc_c !DEC$ENDIF CHARACTER, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier CHARACTER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier END FUNCTION h5dfillc_c - END INTERFACE + END INTERFACE fill_type_id = H5T_NATIVE_CHARACTER mem_type_id = H5T_NATIVE_CHARACTER - hdferr = h5dfillc_c(fill_value, fill_type_id, space_id, & + hdferr = h5dfillc_c(fill_value, fill_type_id, space_id, & buf, mem_type_id) END SUBROUTINE h5dfill_char @@ -4216,19 +4216,19 @@ CONTAINS !---------------------------------------------------------------------- ! Name: h5dget_space_status_f ! -! Purpose: Returns the status of data space allocation. +! Purpose: Returns the status of data space allocation. ! -! Inputs: +! Inputs: ! dset_id - dataset identifier -! Outputs: +! Outputs: ! flag - status; may have one of the following values: ! H5D_SPACE_STS_ERROR_F ! H5D_SPACE_STS_NOT_ALLOCATED_F ! H5D_SPACE_STS_PART_ALLOCATED_F ! H5D_SPACE_STS_ALLOCATED_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! March 12, 2003 @@ -4239,8 +4239,8 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataspace identifier INTEGER, INTENT(IN) :: flag ! Memory buffer to fill in - INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER, INTENT(OUT) :: hdferr ! Error code + ! INTEGER, EXTERNAL :: h5dget_space_status_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -4248,30 +4248,30 @@ CONTAINS INTEGER FUNCTION h5dget_space_status_c(dset_id, flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_SPACE_STATUS_C'::h5dget_space_status_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_SPACE_STATUS_C'::h5dget_space_status_c !DEC$ENDIF INTEGER(HID_T) :: dset_id INTEGER :: flag END FUNCTION h5dget_space_status_c - END INTERFACE + END INTERFACE hdferr = h5dget_space_status_c(dset_id, flag) END SUBROUTINE h5dget_space_status_f !---------------------------------------------------------------------- -! Name: h5dcreate_anon_f +! Name: h5dcreate_anon_f ! -! Purpose: Creates a dataset in a file without linking it into the file structure +! Purpose: Creates a dataset in a file without linking it into the file structure ! -! Inputs: +! Inputs: ! loc_id - Identifier of the file or group within which to create the dataset. ! type_id - Identifier of the datatype to use when creating the dataset. ! space_id - Identifier of the dataspace to use when creating the dataset. -! Outputs: +! Outputs: ! dset_id - dataset identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! dcpl_id - Dataset creation property list identifier. ! dapl_id - Dataset access property list identifier. @@ -4281,15 +4281,15 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5dcreate_anon_f(loc_id, type_id, space_id, dset_id, hdferr, dcpl_id, dapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier. - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier. + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier. + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier. INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier. - INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier. + INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier. INTEGER, INTENT(OUT) :: hdferr ! Error code. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list identifier. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list identifier. @@ -4306,7 +4306,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DCREATE_ANON_C'::h5dcreate_anon_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(HID_T), INTENT(IN) :: space_id INTEGER(HID_T) :: dcpl_id_default @@ -4320,21 +4320,21 @@ CONTAINS IF(PRESENT(dcpl_id)) dcpl_id_default = dcpl_id IF(PRESENT(dapl_id)) dapl_id_default = dapl_id - + hdferr = h5dcreate_anon_c(loc_id, type_id, space_id, dcpl_id_default, dapl_id_default, dset_id) END SUBROUTINE h5dcreate_anon_f !---------------------------------------------------------------------- -! Name: h5dget_access_plist_f +! Name: h5dget_access_plist_f ! ! Purpose: Returns a copy of the dataset creation property list. ! -! Inputs: +! Inputs: ! dset_id - dataset identifier. -! Outputs: +! Outputs: ! plist_id - the dataset access property list identifier. -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! @@ -4343,15 +4343,15 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5dget_access_plist_f(dset_id, plist_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id - INTEGER(HID_T), INTENT(OUT) :: plist_id + INTEGER(HID_T), INTENT(OUT) :: plist_id INTEGER, INTENT(OUT) :: hdferr ! Error code. - + INTERFACE INTEGER FUNCTION h5dget_access_plist_c(dset_id, plist_id) USE H5GLOBAL @@ -4364,7 +4364,7 @@ CONTAINS END INTERFACE hdferr = h5dget_access_plist_c(dset_id, plist_id) - + END SUBROUTINE h5dget_access_plist_f END MODULE H5D diff --git a/fortran/src/H5Ef.c b/fortran/src/H5Ef.c index 4f9d652..e68c86c 100644 --- a/fortran/src/H5Ef.c +++ b/fortran/src/H5Ef.c @@ -62,7 +62,7 @@ nh5eprint_c1(_fcd name, int_f* namelen) FILE *file = NULL; char *c_name = NULL; int_f ret_value = 0; - + if(NULL == (c_name = (char*)HD5f2cstring(name, (size_t)*namelen))) HGOTO_DONE(FAIL) if(NULL == (file = HDfopen(c_name, "a"))) @@ -138,9 +138,9 @@ nh5eget_major_c(int_f* error_no, _fcd name, size_t_f* namelen) */ H5Eget_msg((hid_t)*error_no, NULL, c_name, c_namelen); HD5packFstring((char*)c_name, _fcdtocp(name), c_namelen); - if(!HDstrcmp(c_name, "Invalid major error number")) + if(!HDstrcmp(c_name, "Invalid major error number")) HGOTO_DONE(FAIL) - + done: if(c_name) HDfree(c_name); @@ -176,13 +176,13 @@ nh5eget_minor_c(int_f* error_no, _fcd name, size_t_f* namelen) */ H5Eget_msg((hid_t)*error_no, NULL, c_name, c_namelen); HD5packFstring((char *)c_name, _fcdtocp(name), c_namelen); - if(!HDstrcmp(c_name, "Invalid minor error number")) + if(!HDstrcmp(c_name, "Invalid minor error number")) HGOTO_DONE(FAIL) - + done: if(c_name) HDfree(c_name); - + return ret_value; } diff --git a/fortran/src/H5Eff.f90 b/fortran/src/H5Eff.f90 index b385f39..c33f9c1 100644 --- a/fortran/src/H5Eff.f90 +++ b/fortran/src/H5Eff.f90 @@ -2,7 +2,7 @@ ! ! NAME ! H5E -! +! ! FUNCTION ! This file contains Fortran interfaces for H5E functions. ! @@ -24,47 +24,47 @@ ! ! NOTES ! *** IMPORTANT *** -! If you add a new H5E function you must add the function name to the +! If you add a new H5E function you must add the function name to the ! Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory. ! This is needed for Windows based operating systems. ! !***** MODULE H5E - + USE H5GLOBAL !Turn on automatic printing of errors INTEGER, PARAMETER :: PRINTON = 1 - + !Turn off automatic printing of errors INTEGER, PARAMETER :: PRINTOFF = 0 - + CONTAINS !---------------------------------------------------------------------- ! Name: h5eclear_f ! -! Purpose: Clears the error stack for the current thread. +! Purpose: Clears the error stack for the current thread. ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! -! +! +! ! ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). April 6, 2001 +! port). April 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5eclear_f(hdferr) @@ -88,25 +88,25 @@ CONTAINS !---------------------------------------------------------------------- ! Name: h5h5eprint_f ! -! Purpose: Prints the error stack in a default manner. +! Purpose: Prints the error stack in a default manner. ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! name - name of the file that -! contains print output +! contains print output ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). April 6, 2001 +! port). April 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5eprint_f(hdferr, name) @@ -136,36 +136,36 @@ CONTAINS END INTERFACE namelen = LEN(NAME) IF (PRESENT(name)) THEN - hdferr = h5eprint_c1(name, namelen) + hdferr = h5eprint_c1(name, namelen) ELSE - hdferr = h5eprint_c2() + hdferr = h5eprint_c2() ENDIF END SUBROUTINE h5eprint_f !---------------------------------------------------------------------- ! Name: h5eget_major_f ! -! Purpose: Returns a character string describing an error specified -! by a major error number. +! Purpose: Returns a character string describing an error specified +! by a major error number. ! -! Inputs: -! error_no - mojor error number -! Outputs: +! Inputs: +! error_no - mojor error number +! Outputs: ! name - character string describing the error ! namelen - number of characters in the name buffer -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! +! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). April 6, 2001 +! port). April 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5eget_major_f(error_no, name, namelen, hdferr) @@ -183,40 +183,40 @@ CONTAINS !DEC$ENDIF !DEC$ATTRIBUTES reference :: name INTEGER :: error_no - CHARACTER(LEN=*) :: name + CHARACTER(LEN=*) :: name INTEGER(SIZE_T), INTENT(IN) :: namelen END FUNCTION h5eget_major_c END INTERFACE - - hdferr = h5eget_major_c(error_no, name, namelen) + + hdferr = h5eget_major_c(error_no, name, namelen) END SUBROUTINE h5eget_major_f !---------------------------------------------------------------------- ! Name: h5eget_minor_f ! -! Purpose: Returns a character string describing an error specified -! by a minor error number. +! Purpose: Returns a character string describing an error specified +! by a minor error number. ! -! Inputs: -! error_no - minor error number -! Outputs: +! Inputs: +! error_no - minor error number +! Outputs: ! name - character string describing the error -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! -! +! +! ! ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). April 6, 2001 +! port). April 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5eget_minor_f(error_no, name, hdferr) @@ -233,38 +233,38 @@ CONTAINS !DEC$ENDIF !DEC$ATTRIBUTES reference :: name INTEGER :: error_no - CHARACTER(LEN=*) :: name + CHARACTER(LEN=*) :: name END FUNCTION h5eget_minor_c END INTERFACE - hdferr = h5eget_minor_c(error_no, name) + hdferr = h5eget_minor_c(error_no, name) END SUBROUTINE h5eget_minor_f !---------------------------------------------------------------------- ! Name: h5eset_auto_f ! ! Purpose: Turns automatic error printing on or off ! -! Inputs: +! Inputs: ! printflag - flag to turn automatic error ! - Possible values are: ! - 1 (on), 0 (off) -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! -! +! +! ! ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). April 6, 2001 +! port). April 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- @@ -286,8 +286,8 @@ CONTAINS END FUNCTION h5eset_auto_c END INTERFACE - hdferr = h5eset_auto_c(printflag) + hdferr = h5eset_auto_c(printflag) END SUBROUTINE h5eset_auto_f - + END MODULE H5E - + diff --git a/fortran/src/H5FDmpioff.f90 b/fortran/src/H5FDmpioff.f90 index f98f654..787f0d5 100644 --- a/fortran/src/H5FDmpioff.f90 +++ b/fortran/src/H5FDmpioff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5P functions needed by || MPI programs. @@ -21,19 +21,19 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5pset_fapl_mpio_f +! Name: h5pset_fapl_mpio_f ! -! Purpose: Stores MPI IO communicator information to the file -! access property list. +! Purpose: Stores MPI IO communicator information to the file +! access property list. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier ! comm - MPI-2 communicator ! info - MPI-2 info object -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -42,9 +42,9 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pset_fapl_mpio_f(prp_id, comm, info, hdferr) + SUBROUTINE h5pset_fapl_mpio_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 @@ -58,34 +58,34 @@ END SUBROUTINE h5pset_fapl_mpio_f !---------------------------------------------------------------------- -! Name: h5pget_fapl_mpio_f +! Name: h5pget_fapl_mpio_f ! -! Purpose: Returns MPI communicator information. +! Purpose: Returns MPI communicator information. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: +! Outputs: ! comm - MPI-2 communicator ! info - MPI-2 info object -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! November, 2000 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pget_fapl_mpio_f(prp_id, comm, info, hdferr) + SUBROUTINE h5pget_fapl_mpio_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(OUT) :: info ! buffer to return info object + INTEGER, INTENT(OUT) :: comm ! buffer to return communicator + INTEGER, INTENT(OUT) :: info ! buffer to return info object ! as defined in MPI_FILE_OPEN of MPI-2 INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -94,32 +94,32 @@ END SUBROUTINE h5pget_fapl_mpio_f !---------------------------------------------------------------------- -! Name: h5pset_dxpl_mpio_f +! Name: h5pset_dxpl_mpio_f ! -! Purpose: Sets data transfer mode. +! Purpose: Sets data transfer mode. ! -! Inputs: +! Inputs: ! prp_id - data transfer property list identifier ! data_xfer_mode - transfer mode ! Possible values are: ! H5FD_MPIO_INDEPENDENT_F ! H5FD_MPIO_COLLECTIVE_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! November, 2000 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pset_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr) + SUBROUTINE h5pset_dxpl_mpio_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: @@ -127,37 +127,37 @@ ! H5FD_MPIO_COLLECTIVE_F INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER, EXTERNAL :: h5pset_dxpl_mpio_c + INTEGER, EXTERNAL :: h5pset_dxpl_mpio_c hdferr = h5pset_dxpl_mpio_c(prp_id, data_xfer_mode) END SUBROUTINE h5pset_dxpl_mpio_f !---------------------------------------------------------------------- -! Name: h5pget_dxpl_mpio_f +! Name: h5pget_dxpl_mpio_f ! -! Purpose: Returns the data transfer mode. +! Purpose: Returns the data transfer mode. ! -! Inputs: +! Inputs: ! prp_id - data transfer property list identifier -! Outputs: +! Outputs: ! data_xfer_mode - transfer mode ! Possible values are: ! H5FD_MPIO_INDEPENDENT_F ! H5FD_MPIO_COLLECTIVE_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! November, 2000 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pget_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr) + SUBROUTINE h5pget_dxpl_mpio_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: @@ -171,19 +171,19 @@ !---------------------------------------------------------------------- -! Name: h5pset_fapl_mpiposix_f +! Name: h5pset_fapl_mpiposix_f ! -! Purpose: Stores MPI IO communicator information to the file -! access property list. +! Purpose: Stores MPI IO communicator information to the file +! access property list. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier ! comm - MPI-2 communicator ! use_gpfs - logical flag to use the GPFS hints -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -192,9 +192,9 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pset_fapl_mpiposix_f(prp_id, comm, use_gpfs, hdferr) + SUBROUTINE h5pset_fapl_mpiposix_f(prp_id, comm, use_gpfs, 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 @@ -205,38 +205,38 @@ INTEGER, EXTERNAL :: h5pset_fapl_mpiposix_c flag = 0 - if(use_gpfs) flag = 1 + if(use_gpfs) flag = 1 hdferr = h5pset_fapl_mpiposix_c(prp_id, comm, flag) END SUBROUTINE h5pset_fapl_mpiposix_f !---------------------------------------------------------------------- -! Name: h5pget_fapl_mpiposix_f +! Name: h5pget_fapl_mpiposix_f ! -! Purpose: Returns MPI communicator information. +! Purpose: Returns MPI communicator information. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: +! Outputs: ! comm - MPI-2 communicator ! use_gpfs - flag to use GPFS hints -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! May 6, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pget_fapl_mpiposix_f(prp_id, comm, use_gpfs, hdferr) + SUBROUTINE h5pget_fapl_mpiposix_f(prp_id, comm, use_gpfs, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER, INTENT(OUT) :: comm ! buffer to return communicator + INTEGER, INTENT(OUT) :: comm ! buffer to return communicator LOGICAL, INTENT(OUT) :: use_gpfs INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: flag diff --git a/fortran/src/H5Ff.c b/fortran/src/H5Ff.c index 674d702..51a53a8 100644 --- a/fortran/src/H5Ff.c +++ b/fortran/src/H5Ff.c @@ -440,7 +440,7 @@ nh5fget_obj_count_c ( hid_t_f *file_id , int_f *obj_type, size_t_f * obj_count) * Programmer: Elena Pourmal * Monday, September 30, 2002 * Modifications: - * Changed type of max_obj to size_t_f; added parameter for the + * Changed type of max_obj to size_t_f; added parameter for the * number of open objects * Thursday, September 25, 2008 EIP *---------------------------------------------------------------------------*/ diff --git a/fortran/src/H5Fff.f90 b/fortran/src/H5Fff.f90 index 43c7c8f..dcd6ff6 100644 --- a/fortran/src/H5Fff.f90 +++ b/fortran/src/H5Fff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,58 +11,58 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5F functions. -! +! MODULE H5F USE H5GLOBAL - + CONTAINS - + !---------------------------------------------------------------------- -! Name: h5fcreate_f +! Name: h5fcreate_f ! -! Purpose: Creates HDF5 files. +! Purpose: Creates HDF5 files. ! -! Inputs: +! Inputs: ! name - name of the file to create -! access_flags - File access flags. Allowable values are: -! H5F_ACC_TRUNC_F -! H5F_ACC_EXCL_F -! Outputs: +! access_flags - File access flags. Allowable values are: +! H5F_ACC_TRUNC_F +! H5F_ACC_EXCL_F +! Outputs: ! file_id - file identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! creation_prp - file creation property list identifier ! access_prp - file access property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5fcreate_f(name, access_flags, file_id, hdferr, & creation_prp, access_prp) - IMPLICIT NONE + IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the file INTEGER, INTENT(IN) :: access_flags ! File access flags - INTEGER(HID_T), INTENT(OUT) :: file_id ! File identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: creation_prp + INTEGER(HID_T), INTENT(OUT) :: file_id ! File identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: creation_prp ! File creation propertly - ! list identifier + ! list identifier INTEGER(HID_T), OPTIONAL, INTENT(IN) :: access_prp ! File access property list ! identifier - INTEGER(HID_T) :: creation_prp_default + INTEGER(HID_T) :: creation_prp_default INTEGER(HID_T) :: access_prp_default INTEGER :: namelen ! Length of the name character string @@ -76,7 +76,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FCREATE_C':: h5fcreate_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name + !DEC$ATTRIBUTES reference :: name CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: access_flags INTEGER(HID_T), INTENT(OUT) :: file_id @@ -85,67 +85,67 @@ INTEGER :: namelen END FUNCTION h5fcreate_c END INTERFACE - + creation_prp_default = H5P_DEFAULT_F access_prp_default = H5P_DEFAULT_F - if (present(creation_prp)) creation_prp_default = creation_prp - if (present(access_prp)) access_prp_default = access_prp + if (present(creation_prp)) creation_prp_default = creation_prp + if (present(access_prp)) access_prp_default = access_prp namelen = LEN_TRIM(name) hdferr = h5fcreate_c(name, namelen, access_flags, & - creation_prp_default, access_prp_default, file_id) + creation_prp_default, access_prp_default, file_id) END SUBROUTINE h5fcreate_f - + !---------------------------------------------------------------------- -! Name: h5fflush_f +! Name: h5fflush_f ! -! Purpose: Flushes all buffers associated with a file to disk +! Purpose: Flushes all buffers associated with a file to disk ! -! Inputs: -! object_id - identifier of object used to identify -! the file. -! scope - specifies the scope of the flushing action. +! Inputs: +! object_id - identifier of object used to identify +! the file. +! scope - specifies the scope of the flushing action. ! Possible values are: ! H5F_SCOPE_GLOBAL_F ! H5F_SCOPE_LOCAL_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! creation_prp - file creation property list identifier ! access_prp - file access property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5fflush_f(object_id, scope, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: object_id !identifier for any object - !associate with a file, + !associate with a file, !including the file itself, !a dataset, a group, an !attribute, or a named !data type INTEGER, INTENT(IN) :: scope !scope of the flushing - !action, possible values + !action, possible values !are: H5F_SCOPE_GLOBAL_F ! which flushes the entire - !virtual file, + !virtual file, !and H5F_SCOPE_LOCAL_F - !which flushes only the + !which flushes only the !specified file. - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5fflush_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -161,52 +161,52 @@ END FUNCTION h5fflush_c END INTERFACE - hdferr = h5fflush_c(object_id, scope) + hdferr = h5fflush_c(object_id, scope) END SUBROUTINE h5fflush_f !---------------------------------------------------------------------- -! Name: h5fmount_f +! Name: h5fmount_f ! -! Purpose: Mounts a file. +! Purpose: Mounts a file. ! -! Inputs: -! loc_id - the identifier for of file or group in +! Inputs: +! loc_id - the identifier for of file or group in ! which name is defined -! name - the name of the group onto which the file -! specified by child_id is to be mounted. -! child_id - the identifier of the file to be mounted. -! Outputs: -! hdferr: - error code +! name - the name of the group onto which the file +! specified by child_id is to be mounted. +! child_id - the identifier of the file to be mounted. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! access_prp - the identifier of the property list to be used ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fmount_f(loc_id, name, child_id, hdferr, access_prp) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for file or group - ! in which dsetname is defined + INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for file or group + ! in which dsetname is defined CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group INTEGER(HID_T), INTENT(IN) :: child_id ! File identifier for the - ! file to be mounted - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! file to be mounted + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: access_prp ! File access property list ! identifier - INTEGER(HID_T) :: access_prp_default + INTEGER(HID_T) :: access_prp_default INTEGER :: namelen ! Length of the name character string - + ! INTEGER, EXTERNAL :: h5fmount_c ! Interface is needed for MS FORTRAN ! @@ -217,58 +217,58 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FMOUNT_C':: h5fmount_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: loc_id - CHARACTER(LEN=*), INTENT(IN) :: name - INTEGER(HID_T), INTENT(IN) :: child_id + !DEC$ATTRIBUTES reference :: name + INTEGER(HID_T), INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(HID_T), INTENT(IN) :: child_id INTEGER(HID_T), INTENT(IN) :: access_prp_default - INTEGER :: namelen + INTEGER :: namelen END FUNCTION h5fmount_c END INTERFACE access_prp_default = H5P_DEFAULT_F - if (present(access_prp)) access_prp_default = access_prp + if (present(access_prp)) access_prp_default = access_prp namelen = LEN(name) - hdferr = h5fmount_c(loc_id, name, namelen, child_id, access_prp_default) - + hdferr = h5fmount_c(loc_id, name, namelen, child_id, access_prp_default) + END SUBROUTINE h5fmount_f !---------------------------------------------------------------------- -! Name: h5funmount_f +! Name: h5funmount_f ! -! Purpose: Unmounts a file. +! Purpose: Unmounts a file. ! -! Inputs: -! loc_id - the identifier for of file or group in +! Inputs: +! loc_id - the identifier for of file or group in ! which name is defined ! name - the name of the mount point -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5funmount_f(loc_id, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for file or group - ! at which the specified file + INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for file or group + ! at which the specified file ! is to be unmounted CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the mount point - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Length of the name character string - + ! INTEGER, EXTERNAL :: h5fumount_c ! Interface is needed for MS FORTRAN ! @@ -278,56 +278,56 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FUNMOUNT_C':: h5funmount_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: loc_id - CHARACTER(LEN=*), INTENT(IN) :: name - INTEGER :: namelen + !DEC$ATTRIBUTES reference :: name + INTEGER(HID_T), INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER :: namelen END FUNCTION h5funmount_c END INTERFACE - + namelen = LEN(name) - hdferr = h5funmount_c(loc_id, name, namelen) - + hdferr = h5funmount_c(loc_id, name, namelen) + END SUBROUTINE h5funmount_f - + !---------------------------------------------------------------------- -! Name: h5fopen_f +! Name: h5fopen_f ! -! Purpose: Opens HDF5 file. +! Purpose: Opens HDF5 file. ! -! Inputs: +! Inputs: ! name - name of the file to acecss -! access_flags - File access flags. Allowable values are: -! H5F_ACC_RDWR_F -! H5F_ACC_RDONLY_F -! Outputs: +! access_flags - File access flags. Allowable values are: +! H5F_ACC_RDWR_F +! H5F_ACC_RDONLY_F +! Outputs: ! file_id - file identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! access_prp - file access property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5fopen_f(name, access_flags, file_id, hdferr, & access_prp) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the file INTEGER, INTENT(IN) :: access_flags ! File access flags - INTEGER(HID_T), INTENT(OUT) :: file_id ! File identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(OUT) :: file_id ! File identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: access_prp ! File access property list ! identifier - INTEGER(HID_T) :: access_prp_default + INTEGER(HID_T) :: access_prp_default INTEGER :: namelen ! Length of the name character string ! INTEGER, EXTERNAL :: h5fopen_c @@ -348,46 +348,46 @@ INTEGER(HID_T), INTENT(OUT) :: file_id END FUNCTION h5fopen_c END INTERFACE - + access_prp_default = H5P_DEFAULT_F - if (present(access_prp)) access_prp_default = access_prp + if (present(access_prp)) access_prp_default = access_prp namelen = LEN(name) hdferr = h5fopen_c(name, namelen, access_flags, & - access_prp_default, file_id) + access_prp_default, file_id) END SUBROUTINE h5fopen_f - + !---------------------------------------------------------------------- -! Name: h5freopen_f +! Name: h5freopen_f ! -! Purpose: Reopens HDF5 file. +! Purpose: Reopens HDF5 file. ! -! Inputs: -! file_id - identifier of a file for which an +! Inputs: +! file_id - identifier of a file for which an ! additional identifier is required -! Outputs: +! Outputs: ! ret_file_id - new file identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5freopen_f(file_id, ret_file_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier - INTEGER(HID_T), INTENT(OUT) :: ret_file_id ! New File identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier + INTEGER(HID_T), INTENT(OUT) :: ret_file_id ! New File identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5freopen_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -403,42 +403,42 @@ END FUNCTION h5freopen_c END INTERFACE - hdferr = h5freopen_c(file_id, ret_file_id) - + hdferr = h5freopen_c(file_id, ret_file_id) + END SUBROUTINE h5freopen_f - + !---------------------------------------------------------------------- ! Name: h5fget_create_plist_f ! -! Purpose: Returns a file creation property list identifier. +! Purpose: Returns a file creation property list identifier. ! -! Inputs: -! file_id - identifier of a file to get -! get creation property list of -! Outputs: +! Inputs: +! file_id - identifier of a file to get +! get creation property list of +! Outputs: ! prop_id - creation property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fget_create_plist_f(file_id, prop_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier + INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier INTEGER(HID_T), INTENT(OUT) :: prop_id ! File creation property - ! list identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! list identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5fget_create_plist_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -453,43 +453,43 @@ INTEGER(HID_T), INTENT(OUT) :: prop_id END FUNCTION h5fget_create_plist_c END INTERFACE - - hdferr = h5fget_create_plist_c(file_id, prop_id) + + hdferr = h5fget_create_plist_c(file_id, prop_id) END SUBROUTINE h5fget_create_plist_f - + !---------------------------------------------------------------------- ! Name: h5fget_access_plist_f ! -! Purpose: Returns a file access property list identifier. +! Purpose: Returns a file access property list identifier. ! -! Inputs: -! file_id - identifier of a file to get -! get creation property list of -! Outputs: +! Inputs: +! file_id - identifier of a file to get +! get creation property list of +! Outputs: ! access_id - access property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5fget_access_plist_f(file_id, access_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier + INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier INTEGER(HID_T), INTENT(OUT) :: access_id ! File access property - ! list identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! list identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5fget_access_plist_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -504,46 +504,46 @@ INTEGER(HID_T), INTENT(OUT) :: access_id END FUNCTION h5fget_access_plist_c END INTERFACE - - - hdferr = h5fget_access_plist_c(file_id, access_id) + + + hdferr = h5fget_access_plist_c(file_id, access_id) END SUBROUTINE h5fget_access_plist_f - + !---------------------------------------------------------------------- ! Name: h5fis_hdf5_f ! -! Purpose: Determines whether a file is in the HDF5 format. +! Purpose: Determines whether a file is in the HDF5 format. ! -! Inputs: +! Inputs: ! name - name of the file to check -! Outputs: +! Outputs: ! status - indicates if file is and HDF5 file -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fis_hdf5_f(name, status, hdferr) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the file LOGICAL, INTENT(OUT) :: status ! Indicates if file ! is an HDF5 file - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Length of the name character string INTEGER :: flag ! "TRUE/FALSE" flag from C routine - ! to define status value. + ! to define status value. ! INTEGER, EXTERNAL :: h5fis_hdf5_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -560,38 +560,38 @@ INTEGER :: flag END FUNCTION h5fis_hdf5_c END INTERFACE - + namelen = LEN(name) - hdferr = h5fis_hdf5_c(name, namelen, flag) + hdferr = h5fis_hdf5_c(name, namelen, flag) status = .TRUE. if (flag .EQ. 0) status = .FALSE. END SUBROUTINE h5fis_hdf5_f - + !---------------------------------------------------------------------- ! Name: h5fclose_f ! ! Purpose: Closes HDF5 file. ! -! Inputs: +! Inputs: ! file_id - file identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fclose_f(file_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier @@ -619,31 +619,31 @@ ! ! Purpose: Gets number of the objects open within a file ! -! Inputs: +! Inputs: ! file_id - file identifier ! obj_type - type of the object; possible values are: -! H5F_OBJ_FILE_F -! H5F_OBJ_DATASET_F -! H5F_OBJ_GROUP_F -! H5F_OBJ_DATATYPE_F -! H5F_OBJ_ALL_F -! Outputs: +! H5F_OBJ_FILE_F +! H5F_OBJ_DATASET_F +! H5F_OBJ_GROUP_F +! H5F_OBJ_DATATYPE_F +! H5F_OBJ_ALL_F +! Outputs: ! obj_count - number of open objects -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! September 30, 2002 ! -! Modifications: +! Modifications: ! Changed the type of obj_count to INTEGER(SIZE_T) ! September 25, 2008 EIP -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fget_obj_count_f(file_id, obj_type, obj_count, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier @@ -674,34 +674,34 @@ ! ! Purpose: Get list of open objects identifiers within a file ! -! Inputs: +! Inputs: ! file_id - file identifier ! obj_type - type of the object; possible values are: -! H5F_OBJ_FILE_F -! H5F_OBJ_DATASET_F -! H5F_OBJ_GROUP_F -! H5F_OBJ_DATATYPE_F -! H5F_OBJ_ALL_F -! Outputs: +! H5F_OBJ_FILE_F +! H5F_OBJ_DATASET_F +! H5F_OBJ_GROUP_F +! H5F_OBJ_DATATYPE_F +! H5F_OBJ_ALL_F +! Outputs: ! obj_ids - array of open object identifiers -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! September 30, 2002 ! -! Modifications: +! Modifications: ! Added optional parameter num_objs for number of open objects -! of the specified type and changed type of max_obj to +! of the specified type and changed type of max_obj to ! INTEGER(SIZE_T) ! September 25, 2008 EIP ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fget_obj_ids_f(file_id, obj_type, max_objs, obj_ids, hdferr, num_objs) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier @@ -710,8 +710,8 @@ INTEGER(HID_T), DIMENSION(*), INTENT(INOUT) :: obj_ids ! Array of open objects iidentifiers INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(SIZE_T), INTENT(OUT), OPTIONAL :: num_objs - INTEGER(SIZE_T) :: c_num_objs + INTEGER(SIZE_T), INTENT(OUT), OPTIONAL :: num_objs + INTEGER(SIZE_T) :: c_num_objs ! Number of open objects of the specified type INTERFACE @@ -721,10 +721,10 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_OBJ_IDS_C':: h5fget_obj_ids_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: file_id - INTEGER, INTENT(IN) :: obj_type + INTEGER, INTENT(IN) :: obj_type INTEGER(SIZE_T), INTENT(IN) :: max_objs - INTEGER(HID_T), DIMENSION(*), INTENT(INOUT) :: obj_ids - INTEGER(SIZE_T), INTENT(OUT) :: c_num_objs + INTEGER(HID_T), DIMENSION(*), INTENT(INOUT) :: obj_ids + INTEGER(SIZE_T), INTENT(OUT) :: c_num_objs END FUNCTION h5fget_obj_ids_c END INTERFACE @@ -738,28 +738,28 @@ ! ! Purpose: Get amount of free space within a file ! -! Inputs: +! Inputs: ! file_id - file identifier -! Outputs: +! Outputs: ! free_space - amount of free space in file -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Quincey Koziol ! October 7, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5fget_freespace_f(file_id, free_space, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier - INTEGER(HSSIZE_T), INTENT(OUT) :: free_space + INTEGER(HSSIZE_T), INTENT(OUT) :: free_space !amount of free space in file INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -770,7 +770,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_FREESPACE_C':: h5fget_freespace_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: file_id - INTEGER(HSSIZE_T), INTENT(OUT) :: free_space + INTEGER(HSSIZE_T), INTENT(OUT) :: free_space END FUNCTION h5fget_freespace_c END INTERFACE @@ -779,19 +779,19 @@ END SUBROUTINE h5fget_freespace_f !---------------------------------------------------------------------- -! Name: h5fget_name_f +! Name: h5fget_name_f ! ! Purpose: Gets the name of the file from the object identifier ! -! Inputs: +! Inputs: ! obj_id - object identifier ! Inputs/Outputs: ! buf - buffer to read name in -! Outputs: +! Outputs: ! size - actual size of the name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! ! Programmer: Elena Pourmal @@ -802,8 +802,8 @@ SUBROUTINE h5fget_name_f(obj_id, buf, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier - CHARACTER(LEN=*), INTENT(INOUT) :: buf + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Buffer to hold file name INTEGER(SIZE_T), INTENT(OUT) :: size ! Size of the file name INTEGER, INTENT(OUT) :: hdferr ! Error code: 0 on success, @@ -830,17 +830,17 @@ END SUBROUTINE h5fget_name_f !---------------------------------------------------------------------- -! Name: h5fget_filesize_f +! Name: h5fget_filesize_f ! ! Purpose: Retrieves the file size of the HDF5 file. ! -! Inputs: +! Inputs: ! file_id - file identifier -! Outputs: -! size - file size -! hdferr: - error code +! Outputs: +! size - file size +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! ! Programmer: Elena Pourmal @@ -852,7 +852,7 @@ SUBROUTINE h5fget_filesize_f(file_id, size, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: file_id ! file identifier - INTEGER(HSIZE_T), INTENT(OUT) :: size ! Size of the file + INTEGER(HSIZE_T), INTENT(OUT) :: size ! Size of the file INTEGER, INTENT(OUT) :: hdferr ! Error code: 0 on success, ! -1 if fail ! INTEGER, EXTERNAL :: h5fget_filesize_c diff --git a/fortran/src/H5Gff.f90 b/fortran/src/H5Gff.f90 index ae120bb..2e769ad 100644 --- a/fortran/src/H5Gff.f90 +++ b/fortran/src/H5Gff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,11 +11,11 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5F functions. -! +! MODULE H5G USE H5GLOBAL @@ -28,53 +28,53 @@ MODULE H5G ! END INTERFACE CONTAINS - + !---------------------------------------------------------------------- -! Name: h5gcreate_f +! Name: h5gcreate_f ! -! Purpose: Creates a new group. +! Purpose: Creates a new group. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - group name at the specified location -! Outputs: +! Outputs: ! grp_id - group identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! size_hint - a parameter indicating the number of bytes -! to reserve for the names that will appear +! size_hint - a parameter indicating the number of bytes +! to reserve for the names that will appear ! in the group ! lcpl_id - Property list for link creation ! gcpl_id - Property list for group creation ! gapl_id - Property list for group access ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! ! Added additional optional paramaters in 1.8 ! MSB - February 27, 2008 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gcreate_f(loc_id, name, grp_id, hdferr, size_hint, lcpl_id, gcpl_id, gapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group - INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(SIZE_T), OPTIONAL, INTENT(IN) :: size_hint + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group + INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(SIZE_T), OPTIONAL, INTENT(IN) :: size_hint ! Parameter indicating ! the number of bytes ! to reserve for the ! names that will appear ! in the group. Set to OBJECT_NAMELEN_DEFAULT_F - ! if using any of the optional + ! if using any of the optional ! parameters lcpl_id, gcpl_id, and/or gapl_id when not ! using keywords in specifying the optional parameters INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Property list for link creation @@ -86,7 +86,7 @@ CONTAINS INTEGER(HID_T) :: gapl_id_default INTEGER :: namelen ! Length of the name character string - INTEGER(SIZE_T) :: size_hint_default + INTEGER(SIZE_T) :: size_hint_default ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -109,7 +109,7 @@ CONTAINS END FUNCTION h5gcreate_c END INTERFACE - size_hint_default = OBJECT_NAMELEN_DEFAULT_F + size_hint_default = OBJECT_NAMELEN_DEFAULT_F IF (PRESENT(size_hint)) size_hint_default = size_hint lcpl_id_default = H5P_DEFAULT_F IF(PRESENT(lcpl_id)) lcpl_id_default = lcpl_id @@ -126,18 +126,18 @@ CONTAINS END SUBROUTINE h5gcreate_f !!$!---------------------------------------------------------------------- -!!$! Name: h5gcreate2_f +!!$! Name: h5gcreate2_f !!$! -!!$! Purpose: Creates a new group. +!!$! Purpose: Creates a new group. !!$! -!!$! Inputs: +!!$! Inputs: !!$! loc_id - location identifier !!$! name - group name at the specified location -!!$! Outputs: +!!$! Outputs: !!$! grp_id - group identifier -!!$! hdferr: - error code +!!$! hdferr: - error code !!$! Success: 0 -!!$! Failure: -1 +!!$! Failure: -1 !!$! Optional parameters: !!$! !!$! lcpl_id - Property list for link creation @@ -147,19 +147,19 @@ CONTAINS !!$! Programmer: M.S. BREITENFELD !!$! February 27, 2008 !!$! -!!$! Modifications: +!!$! Modifications: !!$! !!$! Comment: Needed to switch the first 2 arguments to avoid conflect -!!$! with h5gcreate1_f +!!$! with h5gcreate1_f !!$!---------------------------------------------------------------------- !!$ -!!$ SUBROUTINE h5gcreate2_f(name, loc_id, grp_id, hdferr, & +!!$ SUBROUTINE h5gcreate2_f(name, loc_id, grp_id, hdferr, & !!$ lcpl_id, gcpl_id, gapl_id) -!!$ IMPLICIT NONE +!!$ IMPLICIT NONE !!$ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group !!$ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier !!$ INTEGER, INTENT(OUT) :: hdferr ! Error code -!!$ INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier +!!$ INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier !!$ !!$ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Property list for link creation !!$ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gcpl_id ! Property list for group creation @@ -211,44 +211,44 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5gopen_f +! Name: h5gopen_f ! -! Purpose: Opens an existing group. +! Purpose: Opens an existing group. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the group to open -! Outputs: +! Outputs: ! grp_id - group identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! gapl_id - Group access property list identifier ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows ! port). March 5, 2001 -! +! ! Added 1.8 (optional) parameter gapl_id ! February, 2008 M.S. Breitenfeld ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gopen_f(loc_id, name, grp_id, hdferr, gapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group - INTEGER(HID_T), INTENT(OUT) :: grp_id ! File identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gapl_id ! Group access property list identifier - + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group + INTEGER(HID_T), INTENT(OUT) :: grp_id ! File identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gapl_id ! Group access property list identifier + INTEGER(HID_T) :: gapl_id_default INTEGER :: namelen ! Length of the name character string - + ! INTEGER, EXTERNAL :: h5gopen_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -261,7 +261,7 @@ CONTAINS !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name - INTEGER :: namelen + INTEGER :: namelen INTEGER(HID_T), INTENT(IN) :: gapl_id_default INTEGER(HID_T), INTENT(OUT) :: grp_id END FUNCTION h5gopen_c @@ -269,34 +269,34 @@ CONTAINS gapl_id_default = H5P_DEFAULT_F IF(PRESENT(gapl_id)) gapl_id_default = gapl_id - + namelen = LEN(name) - hdferr = h5gopen_c(loc_id, name, namelen, gapl_id_default, grp_id) - + hdferr = h5gopen_c(loc_id, name, namelen, gapl_id_default, grp_id) + END SUBROUTINE h5gopen_f !---------------------------------------------------------------------- -! Name: h5gclose_f +! Name: h5gclose_f ! -! Purpose: Closes the specified group. +! Purpose: Closes the specified group. ! -! Inputs: +! Inputs: ! grp_id - group identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gclose_f(grp_id, hdferr) IMPLICIT NONE @@ -322,42 +322,42 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5gget_obj_info_idx_f +! Name: h5gget_obj_info_idx_f ! -! Purpose: Returns name and type of the group member identified by -! its index. +! Purpose: Returns name and type of the group member identified by +! its index. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the group at the specified location ! idx - object index (zero-based) -! Outputs: +! Outputs: ! obj_name - object name ! obj_type - object type -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gget_obj_info_idx_f(loc_id, name, idx, & obj_name, obj_type, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group - INTEGER, INTENT(IN) :: idx ! Index of member object - CHARACTER(LEN=*), INTENT(OUT) :: obj_name ! Name of the object - INTEGER, INTENT(OUT) :: obj_type ! Object type - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group + INTEGER, INTENT(IN) :: idx ! Index of member object + CHARACTER(LEN=*), INTENT(OUT) :: obj_name ! Name of the object + INTEGER, INTENT(OUT) :: obj_type ! Object type + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Length of the name character string INTEGER :: obj_namelen ! Length of the obj_name character string @@ -388,46 +388,46 @@ CONTAINS namelen = LEN(name) obj_namelen = LEN(obj_name) hdferr = h5gget_obj_info_idx_c(loc_id, name, namelen, idx, & - obj_name, obj_namelen, obj_type) + obj_name, obj_namelen, obj_type) END SUBROUTINE h5gget_obj_info_idx_f !---------------------------------------------------------------------- -! Name: h5gn_members_f +! Name: h5gn_members_f ! -! Purpose: Returns the number of group members. +! Purpose: Returns the number of group members. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the group at the specified location -! Outputs: +! Outputs: ! nmembers - number of group members -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gn_members_f(loc_id, name, nmembers, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group INTEGER, INTENT(OUT) :: nmembers ! Number of members in the - ! group - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! group + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Length of the name character string - + ! INTEGER, EXTERNAL :: h5gn_members_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -446,56 +446,56 @@ CONTAINS END INTERFACE namelen = LEN(name) - hdferr = h5gn_members_c(loc_id, name, namelen, nmembers) + hdferr = h5gn_members_c(loc_id, name, namelen, nmembers) END SUBROUTINE h5gn_members_f !---------------------------------------------------------------------- -! Name: h5glink_f +! Name: h5glink_f ! -! Purpose: Creates a link of the specified type from new_name -! to current_name. +! Purpose: Creates a link of the specified type from new_name +! to current_name. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! link_type - link type ! Possible values are: ! H5G_LINK_HARD_F (0) or -! H5G_LINK_SOFT_F (1) -! current_name - name of the existing object if link is a -! hard link. Can be anything for the soft link. +! H5G_LINK_SOFT_F (1) +! current_name - name of the existing object if link is a +! hard link. Can be anything for the soft link. ! new_name - new name for the object -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5glink_f(loc_id, link_type, current_name, & new_name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier INTEGER, INTENT(IN) :: link_type ! link type ! Possible values are: ! H5G_LINK_HARD_F (0) or - ! H5G_LINK_SOFT_F (1) - - CHARACTER(LEN=*), INTENT(IN) :: current_name - ! Current name of an object + ! H5G_LINK_SOFT_F (1) + + CHARACTER(LEN=*), INTENT(IN) :: current_name + ! Current name of an object CHARACTER(LEN=*), INTENT(IN) :: new_name ! New name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: current_namelen ! Lenghth of the current_name string INTEGER :: new_namelen ! Lenghth of the new_name string @@ -505,14 +505,14 @@ CONTAINS INTERFACE INTEGER FUNCTION h5glink_c(loc_id, link_type, current_name, & current_namelen, new_name, new_namelen) - + USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GLINK_C'::h5glink_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: current_name !DEC$ATTRIBUTES reference :: new_name - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id INTEGER, INTENT(IN) :: link_type CHARACTER(LEN=*), INTENT(IN) :: current_name INTEGER :: current_namelen @@ -520,7 +520,7 @@ CONTAINS INTEGER :: new_namelen END FUNCTION h5glink_c END INTERFACE - + current_namelen = LEN(current_name) new_namelen = LEN(new_name) hdferr = h5glink_c(loc_id, link_type, current_name, & @@ -528,50 +528,50 @@ CONTAINS END SUBROUTINE h5glink_f !---------------------------------------------------------------------- -! Name: h5glink2_f +! Name: h5glink2_f ! -! Purpose: Creates a link of the specified type from new_name +! Purpose: Creates a link of the specified type from new_name ! to current_name. current_name and new_name are interpreted -! releative to current and new location identifiers. +! releative to current and new location identifiers. ! -! Inputs: +! Inputs: ! cur_loc_id - location identifier -! cur_name - name of the existing object if link is a -! hard link. Can be anything for the soft link. +! cur_name - name of the existing object if link is a +! hard link. Can be anything for the soft link. ! link_type - link type ! Possible values are: ! H5G_LINK_HARD_F (0) or -! H5G_LINK_SOFT_F (1) +! H5G_LINK_SOFT_F (1) ! new_loc_id - new location identifier ! new_name - new name for the object -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! September 25, 2002 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5glink2_f(cur_loc_id, cur_name, link_type, new_loc_id, & new_name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: cur_loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: cur_name - ! Current name of an object + INTEGER(HID_T), INTENT(IN) :: cur_loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: cur_name + ! Current name of an object INTEGER, INTENT(IN) :: link_type ! link type ! Possible values are: ! H5G_LINK_HARD_F (0) or - ! H5G_LINK_SOFT_F (1) - - INTEGER(HID_T), INTENT(IN) :: new_loc_id ! File or group identifier + ! H5G_LINK_SOFT_F (1) + + INTEGER(HID_T), INTENT(IN) :: new_loc_id ! File or group identifier CHARACTER(LEN=*), INTENT(IN) :: new_name ! New name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: cur_namelen ! Lenghth of the current_name string INTEGER :: new_namelen ! Lenghth of the new_name string @@ -579,15 +579,15 @@ CONTAINS INTEGER FUNCTION h5glink2_c(cur_loc_id, cur_name, cur_namelen, & link_type, new_loc_id, & new_name, new_namelen) - + USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GLINK2_C'::h5glink2_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: cur_name !DEC$ATTRIBUTES reference :: new_name - INTEGER(HID_T), INTENT(IN) :: cur_loc_id - INTEGER(HID_T), INTENT(IN) :: new_loc_id + INTEGER(HID_T), INTENT(IN) :: cur_loc_id + INTEGER(HID_T), INTENT(IN) :: new_loc_id INTEGER, INTENT(IN) :: link_type CHARACTER(LEN=*), INTENT(IN) :: cur_name CHARACTER(LEN=*), INTENT(IN) :: new_name @@ -595,7 +595,7 @@ CONTAINS INTEGER :: new_namelen END FUNCTION h5glink2_c END INTERFACE - + cur_namelen = LEN(cur_name) new_namelen = LEN(new_name) hdferr = h5glink2_c(cur_loc_id, cur_name, cur_namelen, link_type, & @@ -603,40 +603,40 @@ CONTAINS END SUBROUTINE h5glink2_f !---------------------------------------------------------------------- -! Name: h5gunlink_f +! Name: h5gunlink_f ! -! Purpose: Removes the specified name from the group graph and -! decrements the link count for the object to which name -! points +! Purpose: Removes the specified name from the group graph and +! decrements the link count for the object to which name +! points ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the object to unlink -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gunlink_f(loc_id, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of an object + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: namelen ! Lenghth of the name character string - + ! INTEGER, EXTERNAL :: h5gunlink_c ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -652,45 +652,45 @@ CONTAINS INTEGER :: namelen END FUNCTION h5gunlink_c END INTERFACE - + namelen = LEN(name) hdferr = h5gunlink_c(loc_id, name, namelen) END SUBROUTINE h5gunlink_f !---------------------------------------------------------------------- -! Name: h5gmove_f +! Name: h5gmove_f ! -! Purpose: Renames an object within an HDF5 file. +! Purpose: Renames an object within an HDF5 file. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - object's name at specified location ! new_name - object's new name -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5gmove_f(loc_id, name, new_name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object CHARACTER(LEN=*), INTENT(IN) :: new_name ! New name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: namelen ! Lenghth of the current_name string INTEGER :: new_namelen ! Lenghth of the new_name string @@ -712,44 +712,44 @@ CONTAINS INTEGER :: new_namelen END FUNCTION h5gmove_c END INTERFACE - + namelen = LEN(name) new_namelen = LEN(new_name) hdferr = h5gmove_c(loc_id, name, namelen, new_name, new_namelen) END SUBROUTINE h5gmove_f !---------------------------------------------------------------------- -! Name: h5gmove2_f +! Name: h5gmove2_f ! -! Purpose: Renames an object within an HDF5 file. +! Purpose: Renames an object within an HDF5 file. ! -! Inputs: +! Inputs: ! src_loc_id - original location identifier ! src_name - object's name at specified original location ! dst_loc_id - original location identifier ! dst_name - object's new name -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! September 25, 2002 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5gmove2_f(src_loc_id, src_name, dst_loc_id, dst_name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: src_loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: src_name ! Original name of an object - INTEGER(HID_T), INTENT(IN) :: dst_loc_id ! File or group identifier + INTEGER(HID_T), INTENT(IN) :: src_loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: src_name ! Original name of an object + INTEGER(HID_T), INTENT(IN) :: dst_loc_id ! File or group identifier CHARACTER(LEN=*), INTENT(IN) :: dst_name ! New name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: src_namelen ! Length of the current_name string INTEGER :: dst_namelen ! Lenghth of the new_name string @@ -773,7 +773,7 @@ CONTAINS INTEGER :: dst_namelen END FUNCTION h5gmove2_c END INTERFACE - + src_namelen = LEN(src_name) dst_namelen = LEN(dst_name) hdferr = h5gmove2_c(src_loc_id, src_name, src_namelen,& @@ -781,46 +781,46 @@ CONTAINS END SUBROUTINE h5gmove2_f !---------------------------------------------------------------------- -! Name: h5gget_linkval_f +! Name: h5gget_linkval_f ! -! Purpose: Returns the name of the object that the symbolic link -! points to. +! Purpose: Returns the name of the object that the symbolic link +! points to. ! -! Inputs: +! Inputs: ! loc_id - location identifier -! name - symbolic link to the object whose name -! is to be returned. +! name - symbolic link to the object whose name +! is to be returned. ! size - maximum number of characters to be returned -! Outputs: -! buffer - a buffer to hold the name of the object -! being sought -! hdferr: - error code +! Outputs: +! buffer - a buffer to hold the name of the object +! being sought +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gget_linkval_f(loc_id, name, size, buffer, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object INTEGER(SIZE_T), INTENT(IN) :: size ! Maximum number of buffer - CHARACTER(LEN=size), INTENT(OUT) :: buffer + CHARACTER(LEN=size), INTENT(OUT) :: buffer ! Buffer to hold a name of ! the object symbolic link ! points to INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: namelen ! Lenghth of the current_name string ! INTEGER, EXTERNAL :: h5gget_linkval_c @@ -833,52 +833,52 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_LINKVAL_C'::h5gget_linkval_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: name - !DEC$ATTRIBUTES reference :: buffer + !DEC$ATTRIBUTES reference :: buffer INTEGER(HID_T), INTENT(IN) :: loc_id - CHARACTER(LEN=*), INTENT(IN) :: name + CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen INTEGER(SIZE_T), INTENT(IN) :: size CHARACTER(LEN=*), INTENT(OUT) :: buffer END FUNCTION h5gget_linkval_c END INTERFACE - + namelen = LEN(name) hdferr = h5gget_linkval_c(loc_id, name, namelen, size, buffer) END SUBROUTINE h5gget_linkval_f !---------------------------------------------------------------------- -! Name: h5gset_comment_f +! Name: h5gset_comment_f ! -! Purpose: Sets comment for specified object. +! Purpose: Sets comment for specified object. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the object ! comment - comment to set for the object -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gset_comment_f(loc_id, name, comment, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object CHARACTER(LEN=*), INTENT(IN) :: comment ! New name of an object INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: namelen ! Lenghth of the current_name string INTEGER :: commentlen ! Lenghth of the comment string @@ -892,8 +892,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GSET_COMMENT_C'::h5gset_comment_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name - !DEC$ATTRIBUTES reference :: comment + !DEC$ATTRIBUTES reference :: name + !DEC$ATTRIBUTES reference :: comment INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen @@ -901,48 +901,48 @@ CONTAINS INTEGER :: commentlen END FUNCTION h5gset_comment_c END INTERFACE - + namelen = LEN(name) commentlen = LEN(comment) hdferr = h5gset_comment_c(loc_id, name, namelen, comment, commentlen) END SUBROUTINE h5gset_comment_f !---------------------------------------------------------------------- -! Name: h5gget_comment_f +! Name: h5gget_comment_f ! -! Purpose: Retrieves comment for specified object. +! Purpose: Retrieves comment for specified object. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the object at specified location ! size - size of the buffer required to hold comment -! Outputs: +! Outputs: ! buffer - buffer to hold object's comment -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gget_comment_f(loc_id, name, size, buffer, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Current name of an object INTEGER(SIZE_T), INTENT(IN) :: size ! Maximum number of buffer - CHARACTER(LEN=size), INTENT(OUT) :: buffer + CHARACTER(LEN=size), INTENT(OUT) :: buffer ! Buffer to hold a comment INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: namelen ! Lenghth of the current_name string ! INTEGER, EXTERNAL :: h5gget_comment_c @@ -963,7 +963,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(OUT) :: buffer END FUNCTION h5gget_comment_c END INTERFACE - + namelen = LEN(name) hdferr = h5gget_comment_c(loc_id, name, namelen, size, buffer) END SUBROUTINE h5gget_comment_f @@ -971,37 +971,37 @@ CONTAINS !---------------------------------------------------------------------- ! Name: H5Gcreate_anon_f ! -! Purpose: Creates a new empty group without linking it into the file structure. +! Purpose: Creates a new empty group without linking it into the file structure. ! -! Inputs: +! Inputs: ! loc_id - Location identifier -! Outputs: +! Outputs: ! grp_id - group identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! gcpl_id - Group creation property list identifier ! gapl_id - Group access property list identifier ! ! Programmer: M.S. Breitenfeld -! February 15, 2008 +! February 15, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5Gcreate_anon_f(loc_id, grp_id, hdferr, gcpl_id, gapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier + INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gcpl_id ! Property list for group creation INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gapl_id ! Property list for group access INTEGER(HID_T) :: gcpl_id_default INTEGER(HID_T) :: gapl_id_default - + INTERFACE INTEGER FUNCTION h5gcreate_anon_c(loc_id, gcpl_id_default, gapl_id_default, grp_id) USE H5GLOBAL @@ -1015,43 +1015,43 @@ CONTAINS END FUNCTION h5gcreate_anon_c END INTERFACE - gcpl_id_default = H5P_DEFAULT_F - gapl_id_default = H5P_DEFAULT_F + gcpl_id_default = H5P_DEFAULT_F + gapl_id_default = H5P_DEFAULT_F IF(PRESENT(gcpl_id)) gcpl_id_default = gcpl_id IF(PRESENT(gapl_id)) gapl_id_default = gapl_id - + hdferr = h5gcreate_anon_c(loc_id, gcpl_id_default, gapl_id_default, grp_id) - + END SUBROUTINE h5Gcreate_anon_f !---------------------------------------------------------------------- ! Name: H5Gget_create_plist_f ! -! Purpose: Gets a group creation property list identifier. +! Purpose: Gets a group creation property list identifier. ! -! Inputs: +! Inputs: ! grp_id - group identifier -! Outputs: +! Outputs: ! gcpl_id - Group creation property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! ! Programmer: M.S. Breitenfeld -! February 15, 2008 +! February 15, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5gget_create_plist_f(grp_id, gcpl_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: grp_id ! Group identifier INTEGER(HID_T), INTENT(OUT) :: gcpl_id ! Property list for group creation INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -1064,17 +1064,17 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: gcpl_id END FUNCTION h5gget_create_plist_c END INTERFACE - + hdferr = h5gget_create_plist_c(grp_id, gcpl_id ) - + END SUBROUTINE h5gget_create_plist_f !---------------------------------------------------------------------- ! Name: h5gget_info_f ! ! Purpose: Retrieves information about a group -! -! Inputs: +! +! Inputs: ! group_id - Group identifier ! ! Outputs: NOTE: In C it is defined as a structure: H5G_info_t @@ -1085,16 +1085,16 @@ CONTAINS ! H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure ! nlinks - Number of links in group ! max_corder - Current maximum creation order value for group -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! mounted - Whether group has a file mounted on it +! mounted - Whether group has a file mounted on it ! ! Programmer: M. S. Breitenfeld -! February 15, 2008 +! February 15, 2008 ! -! Modifications: +! Modifications: ! - Added 'mounted' paramater ! M.S. Breitenfeld ! July 16, 2008 @@ -1104,7 +1104,7 @@ CONTAINS SUBROUTINE h5gget_info_f(group_id, storage_type, nlinks, max_corder, hdferr, mounted) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: group_id ! Group identifier - + INTEGER, INTENT(OUT) :: storage_type ! Type of storage for links in group: ! H5G_STORAGE_TYPE_COMPACT_F: Compact storage ! H5G_STORAGE_TYPE_DENSE_F: Indexed storage @@ -1136,20 +1136,20 @@ CONTAINS hdferr = h5gget_info_c(group_id, storage_type, nlinks, max_corder, mounted_c) IF(PRESENT(mounted))THEN - IF(mounted_c.EQ.0) THEN + IF(mounted_c.EQ.0) THEN mounted = .FALSE. - ELSE + ELSE mounted = .TRUE. ENDIF ENDIF - + END SUBROUTINE h5gget_info_f !---------------------------------------------------------------------- ! Name: h5gget_info_by_idx_f ! ! Purpose: Retrieves information about a group, according to the group’s position within an index. -! +! ! Inputs: ! loc_id - File or group identifier ! group_name - Name of group containing group for which information is to be retrieved @@ -1165,17 +1165,17 @@ CONTAINS ! H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure ! nlinks - Number of links in group ! max_corder - Current maximum creation order value for group -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Link access property list -! mounted - Whether group has a file mounted on it +! mounted - Whether group has a file mounted on it ! ! Programmer: M. S. Breitenfeld -! February 18, 2008 +! February 18, 2008 ! -! Modifications: +! Modifications: ! - Added 'mounted' paramater ! M.S. Breitenfeld ! July 16, 2008 @@ -1215,7 +1215,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_BY_IDX_C'::h5gget_info_by_idx_c !DEC$ENDIF - + !DEC$ATTRIBUTES reference :: group_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name @@ -1224,7 +1224,7 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN) :: n INTEGER(HID_T) :: lapl_id_default INTEGER, INTENT(OUT) :: storage_type - INTEGER, INTENT(OUT) :: nlinks + INTEGER, INTENT(OUT) :: nlinks INTEGER, INTENT(OUT) :: max_corder INTEGER(SIZE_T) :: group_name_len @@ -1243,20 +1243,20 @@ CONTAINS storage_type, nlinks, max_corder, mounted_c) IF(PRESENT(mounted))THEN - IF(mounted_c.EQ.0) THEN + IF(mounted_c.EQ.0) THEN mounted = .FALSE. - ELSE + ELSE mounted = .TRUE. ENDIF ENDIF - + END SUBROUTINE h5gget_info_by_idx_f - + !---------------------------------------------------------------------- ! Name: h5gget_info_by_name_f ! -! Purpose: Retrieves information about a group. -! +! Purpose: Retrieves information about a group. +! ! Inputs: ! loc_id - File or group identifier ! group_name - Name of group containing group for which information is to be retrieved @@ -1269,17 +1269,17 @@ CONTAINS ! H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure ! nlinks - Number of links in group ! max_corder - Current maximum creation order value for group -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Link access property list -! mounted - Whether group has a file mounted on it +! mounted - Whether group has a file mounted on it ! ! Programmer: M. S. Breitenfeld -! February 18, 2008 +! February 18, 2008 ! -! Modifications: +! Modifications: ! - Added 'mounted' paramater ! M.S. Breitenfeld ! July 16, 2008 @@ -1303,7 +1303,7 @@ CONTAINS LOGICAL, INTENT(OUT), OPTIONAL :: mounted ! Whether group has a file mounted on it INTEGER :: mounted_c - INTEGER(HID_T) :: lapl_id_default + INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: group_name_len ! length of group name ! MS FORTRAN needs explicit interface for C functions called here. @@ -1320,7 +1320,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER(HID_T), INTENT(IN) :: lapl_id_default INTEGER, INTENT(OUT) :: storage_type - INTEGER, INTENT(OUT) :: nlinks + INTEGER, INTENT(OUT) :: nlinks INTEGER, INTENT(OUT) :: max_corder INTEGER(SIZE_T) :: group_name_len @@ -1330,7 +1330,7 @@ CONTAINS END INTERFACE group_name_len = LEN(group_name) - + lapl_id_default = H5P_DEFAULT_F IF(PRESENT(lapl_id)) lapl_id_default = lapl_id @@ -1338,13 +1338,13 @@ CONTAINS storage_type, nlinks, max_corder, mounted_c) IF(PRESENT(mounted))THEN - IF(mounted_c.EQ.0) THEN + IF(mounted_c.EQ.0) THEN mounted = .FALSE. - ELSE + ELSE mounted = .TRUE. ENDIF ENDIF - + END SUBROUTINE h5gget_info_by_name_f END MODULE H5G diff --git a/fortran/src/H5If.c b/fortran/src/H5If.c index e8b54f0..5f11fde 100644 --- a/fortran/src/H5If.c +++ b/fortran/src/H5If.c @@ -214,7 +214,7 @@ done: /*---------------------------------------------------------------------------- * Name: h5iis_valid_c - * Purpose: Calls H5Iis_valid + * Purpose: Calls H5Iis_valid * Inputs: obj_id - object identifier * Outputs: 0 = false, 1 = true * Returns: 0 on success, -1 on failure @@ -227,7 +227,7 @@ nh5iis_valid_c(hid_t_f *obj_id, int_f *c_valid) { int ret_value; htri_t c_ret_value; - + /* * Call H5Iis_valid */ diff --git a/fortran/src/H5Iff.f90 b/fortran/src/H5Iff.f90 index 83587ce..a082d5a 100644 --- a/fortran/src/H5Iff.f90 +++ b/fortran/src/H5Iff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains FORTRAN90 interfaces for H5I functions @@ -19,17 +19,17 @@ MODULE H5I USE H5GLOBAL - + CONTAINS !---------------------------------------------------------------------- -! Name: h5iget_type_f +! Name: h5iget_type_f ! -! Purpose: Retrieves the type of an object. +! Purpose: Retrieves the type of an object. ! -! Inputs: obj_id - object identifier -! Outputs: -! type - type of the object, possible values: +! Inputs: obj_id - object identifier +! Outputs: +! type - type of the object, possible values: ! H5I_FILE_F ! H5I_GROUP_F ! H5I_DATATYPE_F @@ -37,25 +37,25 @@ ! H5I_DATASET_F ! H5I_ATTR_F ! H5I_BADID_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 5, 2001 +! port). March 5, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5iget_type_f(obj_id, type, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier - INTEGER, INTENT(OUT) :: type !type of an object. + INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier + INTEGER, INTENT(OUT) :: type !type of an object. !possible values are: !H5I_FILE_F !H5I_GROUP_F @@ -75,7 +75,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_TYPE_C':: h5iget_type_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: obj_id + INTEGER(HID_T), INTENT(IN) :: obj_id INTEGER, INTENT(OUT) :: type END FUNCTION h5iget_type_c END INTERFACE @@ -83,35 +83,35 @@ END SUBROUTINE h5iget_type_f !---------------------------------------------------------------------- -! Name: h5iget_name_f +! Name: h5iget_name_f ! -! Purpose: Gets a name of an object specified by its idetifier. +! Purpose: Gets a name of an object specified by its idetifier. ! -! Inputs: +! Inputs: ! obj_id - attribute identifier ! buf_size - size of a buffer to read name in -! Outputs: +! Outputs: ! buf - buffer to read name in, name will be truncated if ! buffer is not big enough ! name_size - name size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! March 12, 2003 ! -! Modifications: +! Modifications: ! !---------------------------------------------------------------------- SUBROUTINE h5iget_name_f(obj_id, buf, buf_size, name_size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier - INTEGER(SIZE_T), INTENT(IN) :: buf_size ! Buffer size + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(SIZE_T), INTENT(IN) :: buf_size ! Buffer size CHARACTER(LEN=*), INTENT(OUT) :: buf ! Buffer to hold object name INTEGER(SIZE_T), INTENT(OUT) :: name_size ! Actual name size INTEGER, INTENT(OUT) :: hdferr ! Error code: @@ -142,25 +142,25 @@ ! ! Purpose: Increments the reference count of an ID ! -! Inputs: obj_id - object identifier -! Outputs: +! Inputs: obj_id - object identifier +! Outputs: ! ref_count - Current reference count of the ID -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Quincey Koziol -! December 9, 2003 +! December 9, 2003 ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5iinc_ref_f(obj_id, ref_count, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier INTEGER, INTENT(OUT) :: ref_count !Current reference count of ID INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -173,7 +173,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IINC_REF_C':: h5iinc_ref_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: obj_id + INTEGER(HID_T), INTENT(IN) :: obj_id INTEGER, INTENT(OUT) :: ref_count END FUNCTION h5iinc_ref_c END INTERFACE @@ -185,25 +185,25 @@ ! ! Purpose: Decrements the reference count of an ID ! -! Inputs: obj_id - object identifier -! Outputs: +! Inputs: obj_id - object identifier +! Outputs: ! ref_count - Current reference count of the ID -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Quincey Koziol -! December 9, 2003 +! December 9, 2003 ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5idec_ref_f(obj_id, ref_count, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier INTEGER, INTENT(OUT) :: ref_count !Current reference count of ID INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -216,7 +216,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IDEC_REF_C':: h5idec_ref_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: obj_id + INTEGER(HID_T), INTENT(IN) :: obj_id INTEGER, INTENT(OUT) :: ref_count END FUNCTION h5idec_ref_c END INTERFACE @@ -228,25 +228,25 @@ ! ! Purpose: Retrieves the reference count of an ID ! -! Inputs: obj_id - object identifier -! Outputs: +! Inputs: obj_id - object identifier +! Outputs: ! ref_count - Current reference count of the ID -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Quincey Koziol -! December 9, 2003 +! December 9, 2003 ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5iget_ref_f(obj_id, ref_count, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id !Object identifier INTEGER, INTENT(OUT) :: ref_count !Current reference count of ID INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -259,7 +259,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_REF_C':: h5iget_ref_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: obj_id + INTEGER(HID_T), INTENT(IN) :: obj_id INTEGER, INTENT(OUT) :: ref_count END FUNCTION h5iget_ref_c END INTERFACE @@ -271,12 +271,12 @@ ! ! Purpose: Obtains file identifier from the object identifier ! -! Inputs: obj_id - object identifier -! Outputs: +! Inputs: obj_id - object identifier +! Outputs: ! file_id - file identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -285,11 +285,11 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5iget_file_id_f(obj_id, file_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier + INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier INTEGER(HID_T), INTENT(OUT) :: file_id ! File identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -299,8 +299,8 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_FILE_ID_C':: h5iget_file_id_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: obj_id - INTEGER(HID_T), INTENT(OUT) :: file_id + INTEGER(HID_T), INTENT(IN) :: obj_id + INTEGER(HID_T), INTENT(OUT) :: file_id END FUNCTION h5iget_file_id_c END INTERFACE hdferr = h5iget_file_id_c(obj_id, file_id) @@ -311,20 +311,20 @@ ! ! Purpose: Check if an ID is valid without producing an error message ! -! Inputs: id - identifier -! Outputs: +! Inputs: id - identifier +! Outputs: ! valid - status of id as a valid identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Programmer: M. Scot Breitenfeld ! April 13, 2009 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5iis_valid_f(id, valid, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: id ! Identifier + INTEGER(HID_T), INTENT(IN) :: id ! Identifier LOGICAL, INTENT(OUT) :: valid ! Status of id as a valid identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: c_valid ! 0 = .false, 1 = .true. @@ -335,7 +335,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IIS_VALID_C':: h5iis_valid_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: id ! Identifier + INTEGER(HID_T), INTENT(IN) :: id ! Identifier INTEGER :: c_valid END FUNCTION h5iis_valid_c END INTERFACE @@ -344,7 +344,7 @@ valid = .FALSE. ! Default IF(c_valid.EQ.1) valid = .TRUE. - + END SUBROUTINE h5iis_valid_f diff --git a/fortran/src/H5Lff.f90 b/fortran/src/H5Lff.f90 index e38dade..8d30c20 100644 --- a/fortran/src/H5Lff.f90 +++ b/fortran/src/H5Lff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5L functions. @@ -23,7 +23,7 @@ MODULE H5L CONTAINS !---------------------------------------------------------------------- -! Name: h5lcopy_f +! Name: h5lcopy_f ! ! Purpose: Copies a link from one location to another. ! @@ -34,11 +34,11 @@ CONTAINS ! dest_name - Name to be assigned to the NEW copy ! loc_id - Identifier of the file or group containing the object ! name - Name of the link to delete -! -! Outputs: +! +! Outputs: ! hdferr - error code: ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier ! lapl_id - Link access property list identifier @@ -48,7 +48,7 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5lcopy_f(src_loc_id, src_name, dest_loc_id, dest_name, hdferr, & lcpl_id, lapl_id) @@ -58,17 +58,17 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dest_loc_id ! Location identifier specifying the destination of the copy CHARACTER(LEN=*), INTENT(IN) :: dest_name ! Name to be assigned to the NEW copy - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier - + INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: src_namelen INTEGER(SIZE_T) :: dest_namelen - + ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -84,10 +84,10 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: src_name INTEGER(HID_T), INTENT(IN) :: dest_loc_id CHARACTER(LEN=*), INTENT(IN) :: dest_name - + INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default - + INTEGER(SIZE_T) :: src_namelen INTEGER(SIZE_T) :: dest_namelen END FUNCTION h5lcopy_c @@ -107,18 +107,18 @@ CONTAINS END SUBROUTINE h5lcopy_f !---------------------------------------------------------------------- -! Name: h5ldelete_f +! Name: h5ldelete_f ! ! Purpose: Removes a link from a group. ! -! Inputs: +! Inputs: ! loc_id - Identifier of the file or group containing the object ! name - Name of the link to delete -! -! Outputs: -! hdferr: - error code +! +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Link access property list identifier ! @@ -127,18 +127,18 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5ldelete_f(loc_id, name, hdferr, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier of the file or group containing the object CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the link to delete - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: namelen - + ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -163,10 +163,10 @@ CONTAINS hdferr = h5ldelete_c(loc_id, name, namelen, lapl_id_default) - END SUBROUTINE h5ldelete_f + END SUBROUTINE h5ldelete_f !---------------------------------------------------------------------- -! Name: H5Lcreate_soft_f +! Name: H5Lcreate_soft_f ! ! Purpose: Creates a soft link to an object. ! @@ -174,11 +174,11 @@ CONTAINS ! target_path - Path to the target object, which is not required to exist. ! link_loc_id - The file or group identifier for the new link. ! link_name - The name of the new link. -! -! Outputs: -! hdferr: - error code +! +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier. ! lapl_id - Link access property list identifier. @@ -188,20 +188,20 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5lcreate_soft_f(target_path, link_loc_id, link_name, hdferr, lcpl_id, lapl_id) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: target_path ! Path to the target object, which is not required to exist. INTEGER(HID_T), INTENT(IN) :: link_loc_id ! The file or group identifier for the new link. CHARACTER(LEN=*), INTENT(IN) :: link_name ! The name of the new link. - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier. - INTEGER(HID_T) :: lcpl_id_default - INTEGER(HID_T) :: lapl_id_default + INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: target_path_len INTEGER(SIZE_T) :: link_name_len @@ -243,7 +243,7 @@ CONTAINS END SUBROUTINE h5lcreate_soft_f !---------------------------------------------------------------------- -! Name: H5Lcreate_hard_f +! Name: H5Lcreate_hard_f ! ! Purpose: Creates a hard link to an object. ! @@ -253,11 +253,11 @@ CONTAINS ! obj_name - Name of the target object, which must already exist. ! link_loc_id - The file or group identifier for the new link. ! link_name - The name of the new link. -! -! Outputs: -! hdferr: - error code +! +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier. ! lapl_id - Link access property list identifier. @@ -267,7 +267,7 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5lcreate_hard_f(obj_loc_id, obj_name, link_loc_id, link_name, hdferr, lcpl_id, lapl_id) IMPLICIT NONE @@ -276,23 +276,23 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: link_loc_id ! The file or group identifier for the new link. CHARACTER(LEN=*), INTENT(IN) :: link_name ! The name of the new link. - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier. - INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default - - INTEGER(SIZE_T) :: obj_namelen + + INTEGER(SIZE_T) :: obj_namelen INTEGER(SIZE_T) :: link_namelen ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5lcreate_hard_c(obj_loc_id, obj_name, obj_namelen, & - link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) + link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) @@ -303,13 +303,13 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(HID_T), INTENT(IN) :: link_loc_id CHARACTER(LEN=*), INTENT(IN) :: link_name - INTEGER(SIZE_T) :: obj_namelen + INTEGER(SIZE_T) :: obj_namelen INTEGER(SIZE_T) :: link_namelen INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default END FUNCTION h5lcreate_hard_c END INTERFACE - obj_namelen = LEN(obj_name) + obj_namelen = LEN(obj_name) link_namelen = LEN(link_name) lcpl_id_default = H5P_DEFAULT_F @@ -323,22 +323,22 @@ CONTAINS END SUBROUTINE h5lcreate_hard_f !---------------------------------------------------------------------- -! Name: H5Lcreate_external_f +! Name: H5Lcreate_external_f ! ! Purpose: Creates a soft link to an object in a different file. ! ! Inputs: ! -! file_name - Name of the file containing the target object. Neither the file nor the target object is +! file_name - Name of the file containing the target object. Neither the file nor the target object is ! required to exist. May be the file the link is being created in. ! obj_name - Path within the target file to the target object. ! link_loc_id - The file or group identifier for the new link. ! link_name - The name of the new link. -! -! Outputs: -! hdferr: - error code +! +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier. ! lapl_id - Link access property list identifier. @@ -348,35 +348,35 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5lcreate_external_f(file_name, obj_name, link_loc_id, link_name, hdferr, lcpl_id, lapl_id) IMPLICIT NONE - CHARACTER(LEN=*), INTENT(IN) :: file_name ! Name of the file containing the target object. Neither - ! the file nor the target object is required to exist. + CHARACTER(LEN=*), INTENT(IN) :: file_name ! Name of the file containing the target object. Neither + ! the file nor the target object is required to exist. ! May be the file the link is being created in. CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of the target object, which must already exist. INTEGER(HID_T), INTENT(IN) :: link_loc_id ! The file or group identifier for the new link. CHARACTER(LEN=*), INTENT(IN) :: link_name ! The name of the new link. - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier. - INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default - + INTEGER(SIZE_T) :: file_namelen - INTEGER(SIZE_T) :: obj_namelen + INTEGER(SIZE_T) :: obj_namelen INTEGER(SIZE_T) :: link_namelen ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5lcreate_external_c(file_name, file_namelen, obj_name, obj_namelen, & - link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) + link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) @@ -387,15 +387,15 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(HID_T), INTENT(IN) :: link_loc_id CHARACTER(LEN=*), INTENT(IN) :: link_name - INTEGER(SIZE_T) :: file_namelen - INTEGER(SIZE_T) :: obj_namelen + INTEGER(SIZE_T) :: file_namelen + INTEGER(SIZE_T) :: obj_namelen INTEGER(SIZE_T) :: link_namelen INTEGER(HID_T) :: lcpl_id_default INTEGER(HID_T) :: lapl_id_default END FUNCTION h5lcreate_external_c END INTERFACE - file_namelen = LEN(file_name) - obj_namelen = LEN(obj_name) + file_namelen = LEN(file_name) + obj_namelen = LEN(obj_name) link_namelen = LEN(link_name) lcpl_id_default = H5P_DEFAULT_F @@ -409,10 +409,10 @@ CONTAINS END SUBROUTINE h5lcreate_external_f !---------------------------------------------------------------------- -! Name: h5ldelete_by_idx_f +! Name: h5ldelete_by_idx_f ! ! Purpose: Removes the nth link in a group. -! Inputs: +! Inputs: ! loc_id - File or group identifier specifying location of subject group ! group_name - Name of subject group ! index_field - Type of index; Possible values are: @@ -421,7 +421,7 @@ CONTAINS ! H5_INDEX_NAME_F - Index on names ! H5_INDEX_CRT_ORDER_F - Index on creation order ! H5_INDEX_N_F - Number of indices defined -! +! ! order - Order within field or index; Possible values are: ! ! H5_ITER_UNKNOWN_F - Unknown order @@ -432,22 +432,22 @@ CONTAINS ! ! n - Link for which to retrieve information ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Link access property list ! ! Programmer: M.S. Breitenfeld ! February 29, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- SUBROUTINE h5ldelete_by_idx_f(loc_id, group_name, index_field, order, n, hdferr, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifer for object to which attribute is attached - CHARACTER(LEN=*), INTENT(IN) :: group_name ! Name of object, relative to location, + CHARACTER(LEN=*), INTENT(IN) :: group_name ! Name of object, relative to location, ! from which attribute is to be removed INTEGER, INTENT(IN) :: index_field ! Type of index; Possible values are: ! H5_INDEX_UNKNOWN_F - Unknown index type @@ -460,14 +460,14 @@ CONTAINS ! H5_ITER_DEC_F - Decreasing order ! H5_ITER_NATIVE_F - No particular order, whatever is fastest ! H5_ITER_N_F - Number of iteration orders - INTEGER(HSIZE_T), INTENT(IN) :: n ! Offset within index + INTEGER(HSIZE_T), INTENT(IN) :: n ! Offset within index INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: group_namelen - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -481,7 +481,7 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER, INTENT(IN) :: index_field INTEGER, INTENT(IN) :: order - INTEGER(HSIZE_T), INTENT(IN) :: n + INTEGER(HSIZE_T), INTENT(IN) :: n INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T) :: group_namelen END FUNCTION h5ldelete_by_idx_c @@ -489,31 +489,31 @@ CONTAINS lapl_id_default = H5P_DEFAULT_F IF(PRESENT(lapl_id)) lapl_id_default = lapl_id - + group_namelen = LEN(group_name) hdferr = h5ldelete_by_idx_c(loc_id, group_name, group_namelen, index_field, order, n, lapl_id_default) - + END SUBROUTINE h5ldelete_by_idx_f !---------------------------------------------------------------------- -! Name: H5Lexists_f +! Name: H5Lexists_f ! ! Purpose: Check if a link with a particular name exists in a group. -! +! ! Inputs: ! loc_id - Identifier of the file or group to query. ! name - Link name to check ! ! Outputs: ! link_exists - link exists status (.TRUE.,.FALSE.) -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list identifier. +! lapl_id - Link access property list identifier. ! ! Programmer: M. S. Breitenfeld -! February 29, 2008 +! February 29, 2008 ! ! Modifications: N/A ! @@ -525,7 +525,7 @@ CONTAINS LOGICAL, INTENT(OUT) :: link_exists ! .TRUE. if exists, .FALSE. otherwise INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier. INTEGER :: link_exists_c INTEGER(HID_T) :: lapl_id_default @@ -545,7 +545,7 @@ CONTAINS INTEGER(SIZE_T), INTENT(IN) :: namelen INTEGER, INTENT(OUT) :: link_exists_c INTEGER(HID_T) :: lapl_id_default - + END FUNCTION h5lexists_c END INTERFACE @@ -557,7 +557,7 @@ CONTAINS hdferr = h5lexists_c(loc_id, name, namelen, lapl_id_default, link_exists_c) link_exists = .FALSE. - IF(link_exists_c.GT.0) link_exists = .TRUE. + IF(link_exists_c.GT.0) link_exists = .TRUE. END SUBROUTINE h5lexists_f @@ -566,13 +566,13 @@ CONTAINS ! ! Purpose: Returns information about a link. ! -! Inputs: +! Inputs: ! link_loc_id - File or group identifier. -! link_name - Name of the link for which information is being sought +! link_name - Name of the link for which information is being sought ! ! Outputs: NOTE: In C these are contained in the structure H5L_info_t ! -! cset - indicates the character set used for link’s name. +! cset - indicates the character set used for link’s name. ! corder - specifies the link’s creation order position. !f_corder_valid - indicates whether the value in corder is valid. ! link_type - specifies the link class: @@ -581,20 +581,20 @@ CONTAINS ! H5L_TYPE_EXTERNAL_F - External link ! H5L_TYPE_ERROR_F - Error ! address - If the link is a hard link, address specifies the file address that the link points to -! val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g., -! the length of the name of the pointed-to object with a null terminator. -! hdferr - error code +! val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g., +! the length of the name of the pointed-to object with a null terminator. +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list +! lapl_id - Link access property list ! ! Programmer: M. S. Breitenfeld -! February 29, 2008 +! February 29, 2008 ! -! Modifications: +! Modifications: ! Changed the link_type names to match those in C (bug 1720) from, -! H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F +! H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F ! to ! H5L_TYPE_HARD_F, H5L_TYPE_SOFT_F,H5L_TYPE_EXTERNAL_F,H5L_TYPE_ERROR_F ! MSB January 8, 2010. @@ -608,9 +608,9 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: link_loc_id ! File or group identifier. CHARACTER(LEN=*), INTENT(IN) :: link_name ! Name of the link for which information is being sought - + ! Outputs: NOTE: In C these are contained in the structure H5L_info_t - INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the link’s name. + INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the link’s name. INTEGER, INTENT(OUT) :: corder ! Specifies the link’s creation order position. LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the value in corder is valid. INTEGER, INTENT(OUT) :: link_type ! Specifies the link class: @@ -619,8 +619,8 @@ CONTAINS ! H5L_TYPE_EXTERNAL_F - External link ! H5L_TYPE_ERROR _F - Error INTEGER(HADDR_T), INTENT(OUT) :: address ! If the link is a hard link, address specifies the file address that the link points to - INTEGER(SIZE_T), INTENT(OUT) :: val_size ! If the link is a symbolic link, val_size will be the length of the link value, e.g., - ! the length of the name of the pointed-to object with a null terminator. + INTEGER(SIZE_T), INTENT(OUT) :: val_size ! If the link is a symbolic link, val_size will be the length of the link value, e.g., + ! the length of the name of the pointed-to object with a null terminator. INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list @@ -642,7 +642,7 @@ CONTAINS !DEC$ATTRIBUTES reference :: link_name INTEGER(HID_T), INTENT(IN) :: link_loc_id CHARACTER(LEN=*), INTENT(IN) :: link_name - INTEGER, INTENT(OUT) :: cset + INTEGER, INTENT(OUT) :: cset INTEGER, INTENT(OUT) :: corder INTEGER, INTENT(OUT) :: link_type INTEGER(HADDR_T), INTENT(OUT) :: address @@ -662,7 +662,7 @@ CONTAINS cset, corder, corder_valid, link_type, & address, val_size, & lapl_id_default) - + f_corder_valid =.FALSE. IF(corder_valid .EQ. 1) f_corder_valid =.TRUE. @@ -672,7 +672,7 @@ CONTAINS ! Name: h5lget_info_by_idx_f ! ! Purpose: Retrieves metadata for a link in a group, according to the order within a field or index. -! +! ! Inputs: ! loc_id - File or group identifier specifying location of subject group ! group_name - Name of subject group @@ -682,23 +682,23 @@ CONTAINS ! ! Outputs: NOTE: In C these are defined as a structure: H5L_info_t ! corder_valid - indicates whether the creation order data is valid for this attribute -! corder - is a positive integer containing the creation order of the attribute -! cset - indicates the character set used for the attribute’s name +! corder - is a positive integer containing the creation order of the attribute +! cset - indicates the character set used for the attribute’s name ! address - If the link is a hard link, address specifies the file address that the link points to -! val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g., -! the length of the name of the pointed-to object with a null terminator. -! hdferr - error code +! val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g., +! the length of the name of the pointed-to object with a null terminator. +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! lapl_id - Link access property list +! lapl_id - Link access property list ! ! Programmer: M.S. Breitenfeld -! February 29, 2008 +! February 29, 2008 ! -! Modifications: +! Modifications: ! Changed the link_type names to match those in C (bug 1720) from, -! H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F +! H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F ! to ! H5L_TYPE_HARD_F, H5L_TYPE_SOFT_F,H5L_TYPE_EXTERNAL_F,H5L_TYPE_ERROR_F ! MSB January 8, 2010. @@ -707,7 +707,7 @@ CONTAINS SUBROUTINE h5lget_info_by_idx_f(loc_id, group_name, index_field, order, n, & link_type, f_corder_valid, corder, cset, address, val_size, hdferr, lapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group CHARACTER(LEN=*), INTENT(IN) :: group_name ! Name of subject group INTEGER, INTENT(IN) :: index_field ! Index or field which determines the order ! H5_INDEX_UNKNOWN_F - Unknown index type @@ -725,12 +725,12 @@ CONTAINS ! H5L_TYPE_SOFT_F - Soft link ! H5L_TYPE_EXTERNAL_F - External link ! H5L_TYPE_ERROR _F - Error - LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER, INTENT(OUT) :: corder ! Is a positive integer containing the creation order of the attribute INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the attribute’s name INTEGER(HADDR_T), INTENT(OUT) :: address ! If the link is a hard link, address specifies the file address that the link points to - INTEGER(SIZE_T), INTENT(OUT) :: val_size ! If the link is a symbolic link, val_size will be the length of the link value, e.g., - ! the length of the name of the pointed-to object with a null terminator. + INTEGER(SIZE_T), INTENT(OUT) :: val_size ! If the link is a symbolic link, val_size will be the length of the link value, e.g., + ! the length of the name of the pointed-to object with a null terminator. INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list @@ -755,7 +755,7 @@ CONTAINS INTEGER, INTENT(IN) :: order INTEGER(HSIZE_T), INTENT(IN) :: n INTEGER, INTENT(OUT) :: link_type - INTEGER :: corder_valid + INTEGER :: corder_valid INTEGER, INTENT(OUT) :: corder INTEGER, INTENT(OUT) :: cset INTEGER(HADDR_T), INTENT(OUT) :: address @@ -778,24 +778,24 @@ CONTAINS END SUBROUTINE h5lget_info_by_idx_f !---------------------------------------------------------------------- -! Name: h5lis_registered_f +! Name: h5lis_registered_f ! ! Purpose: Determines whether a class of user-defined links is registered. -! +! ! Inputs: ! link_cls_id - User-defined link class identifier ! ! Outputs: ! registered - .TRUE. - if the link class has been registered ! .FALSE. - if it is unregistered -! hdferr - Error code +! hdferr - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! None +! None ! ! Programmer: M.S. Breitenfeld -! February 29, 2008 +! February 29, 2008 ! ! Modifications: N/A ! @@ -827,30 +827,30 @@ CONTAINS ELSE IF(hdferr.EQ.0)THEN registered = .FALSE. ENDIF - + END SUBROUTINE h5lis_registered_f !---------------------------------------------------------------------- ! Name: h5lmove_f ! ! Purpose: Renames a link within an HDF5 file. -! +! ! Inputs: ! src_loc_id - Original file or group identifier. ! src_name - Original link name. ! dest_loc_id - Destination file or group identifier. ! dest_name - NEW link name. ! -! Outputs: -! hdferr - Error code +! Outputs: +! hdferr - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier to be associated WITH the NEW link. ! lapl_id - Link access property list identifier to be associated WITH the NEW link. ! ! Programmer: M.S. Breitenfeld -! March 3, 2008 +! March 3, 2008 ! ! Modifications: N/A ! @@ -863,37 +863,37 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: dest_name ! NEW link name. INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier ! to be associated WITH the NEW link. - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list identifier ! to be associated WITH the NEW link. INTEGER(SIZE_T) :: src_namelen INTEGER(SIZE_T) :: dest_namelen - INTEGER(HID_T) :: lcpl_id_default - INTEGER(HID_T) :: lapl_id_default - + INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lapl_id_default + ! ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5lmove_c(src_loc_id, src_name, src_namelen, dest_loc_id, & - dest_name, dest_namelen, lcpl_id_default, lapl_id_default) + dest_name, dest_namelen, lcpl_id_default, lapl_id_default) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LMOVE_C'::h5lmove_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: src_name, dest_name - INTEGER(HID_T), INTENT(IN) :: src_loc_id + INTEGER(HID_T), INTENT(IN) :: src_loc_id CHARACTER(LEN=*), INTENT(IN) :: src_name INTEGER(SIZE_T) :: src_namelen INTEGER(HID_T), INTENT(IN) :: dest_loc_id CHARACTER(LEN=*), INTENT(IN) :: dest_name INTEGER(SIZE_T) :: dest_namelen - - INTEGER(HID_T) :: lcpl_id_default - INTEGER(HID_T) :: lapl_id_default + + INTEGER(HID_T) :: lcpl_id_default + INTEGER(HID_T) :: lapl_id_default END FUNCTION h5lmove_c END INTERFACE @@ -916,16 +916,16 @@ CONTAINS ! ! Purpose: Retrieves name of the nth link in a group, according to the order within a specified field or index. ! -! Inputs: +! Inputs: ! loc_id - File or group identifier specifying location of subject group ! group_name - Name of subject group ! index_field - Index or field which determines the order ! order - Order within field or index ! n - Link for which to retrieve information ! -! Outputs: +! Outputs: ! name - Buffer in which link value is returned -! hdferr - error code +! hdferr - error code ! Success: 0 ! Failure: -1 ! @@ -934,7 +934,7 @@ CONTAINS ! size - Maximum number of characters of link value to be returned. ! ! Programmer: M. S. Breitenfeld -! March 10, 2008 +! March 10, 2008 ! ! Modifications: N/A ! @@ -942,7 +942,7 @@ CONTAINS SUBROUTINE h5lget_name_by_idx_f(loc_id, group_name, index_field, order, n, & name, hdferr, size, lapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group CHARACTER(LEN=*), INTENT(IN) :: group_name ! Name of subject group INTEGER, INTENT(IN) :: index_field ! Index or field which determines the order ! H5_INDEX_UNKNOWN_F - Unknown index type @@ -958,12 +958,12 @@ CONTAINS CHARACTER(LEN=*), INTENT(OUT) :: name ! Buffer in which link value is returned INTEGER, INTENT(OUT) :: hdferr ! Error code: ! 0 on success and -1 on failure - + INTEGER(SIZE_T) :: group_namelen INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list INTEGER(HID_T) :: lapl_id_default INTEGER(SIZE_T), OPTIONAL, INTENT(OUT) :: size ! Indicates the size, in the number of characters, of the link - INTEGER(SIZE_T) :: size_default + INTEGER(SIZE_T) :: size_default ! MS FORTRAN needs explicit interface for C functions called here. @@ -976,7 +976,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_NAME_BY_IDX_C'::h5lget_name_by_idx_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: group_name, name - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER(SIZE_T) :: group_namelen INTEGER, INTENT(IN) :: index_field @@ -1013,7 +1013,7 @@ CONTAINS !!$! an index. For symbolic links, this is the path to which the !!$! link points, including the null terminator. For user-defined !!$! links, it is the link buffer. -!!$! Inputs: +!!$! Inputs: !!$! loc_id - File or group identifier specifying location of subject group !!$! group_name - Name of subject group !!$! index_field - Index or field which determines the order @@ -1023,17 +1023,17 @@ CONTAINS !!$! !!$! Outputs: NOTE: In C these are defined as a structure: H5L_info_t !!$! corder_valid - indicates whether the creation order data is valid for this attribute -!!$! corder - is a positive integer containing the creation order of the attribute -!!$! cset - indicates the character set used for the attribute’s name -!!$! data_size - indicates the size, in the number of characters, of the attribute -!!$! hdferr - error code +!!$! corder - is a positive integer containing the creation order of the attribute +!!$! cset - indicates the character set used for the attribute’s name +!!$! data_size - indicates the size, in the number of characters, of the attribute +!!$! hdferr - error code !!$! Success: 0 -!!$! Failure: -1 +!!$! Failure: -1 !!$! Optional parameters: !!$! lapl_id - List access property list identifier. !!$! !!$! Programmer: M. S. Breitenfeld -!!$! March 3, 2008 +!!$! March 3, 2008 !!$! !!$! Modifications: N/A !!$! @@ -1041,7 +1041,7 @@ CONTAINS !!$ SUBROUTINE h5lget_val_by_idx_f(loc_id, group_name, index_field, order, n, & !!$ f_corder_valid, corder, cset, data_size, hdferr, lapl_id) !!$ IMPLICIT NONE -!!$ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group +!!$ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier specifying location of subject group !!$ CHARACTER(LEN=*), INTENT(IN) :: group_name ! Name of subject group !!$ INTEGER, INTENT(IN) :: index_field ! Index or field which determines the order !!$ ! H5_INDEX_UNKNOWN_F - Unknown index type @@ -1054,7 +1054,7 @@ CONTAINS !!$ ! H5_ITER_DEC_F - Decreasing order !!$ ! H5_ITER_NATIVE_F - No particular order, whatever is fastest !!$ INTEGER(HSIZE_T), INTENT(IN) :: n ! Attribute’s position in index -!!$ LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute +!!$ LOGICAL, INTENT(OUT) :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute !!$ INTEGER, INTENT(OUT) :: corder ! Is a positive integer containing the creation order of the attribute !!$ INTEGER, INTENT(OUT) :: cset ! Indicates the character set used for the attribute’s name !!$ INTEGER(HSIZE_T), INTENT(OUT) :: data_size ! Indicates the size, in the number of characters, of the attribute @@ -1074,7 +1074,7 @@ CONTAINS !!$ !DEC$IF DEFINED(HDF5F90_WINDOWS) !!$ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_VAL_BY_IDX_C'::h5lget_val_by_idx_c !!$ !DEC$ENDIF -!!$ INTEGER(HID_T), INTENT(IN) :: loc_id +!!$ INTEGER(HID_T), INTENT(IN) :: loc_id !!$ CHARACTER(LEN=*), INTENT(IN) :: group_name !!$ INTEGER(SIZE_T) :: group_namelen !!$ INTEGER, INTENT(IN) :: index_field @@ -1098,7 +1098,7 @@ CONTAINS !!$ !!$ f_corder_valid =.FALSE. !!$ IF (corder_valid .EQ. 1) f_corder_valid =.TRUE. -!!$ +!!$ !!$ END SUBROUTINE h5lget_val_by_idx_f @@ -1108,21 +1108,21 @@ CONTAINS ! ! Purpose: Returns the value of a symbolic link. ! -! Inputs: +! Inputs: ! link_loc_id - File or group identifier. ! link_name - Link whose value is to be returned. ! size - Maximum number of characters of link value to be returned. ! -! Outputs: +! Outputs: ! linkval_buff - The buffer to hold the returned link value. -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - List access property list identifier. ! ! Programmer: M. S. Breitenfeld -! March 3, 2008 +! March 3, 2008 ! ! Modifications: N/A ! @@ -1134,18 +1134,18 @@ CONTAINS !!$ INTEGER(HID_T), INTENT(IN) :: link_loc_id ! File or group identifier. !!$ CHARACTER(LEN=*), INTENT(IN) :: link_name ! Link whose value is to be returned. !!$ INTEGER(SIZE_T), INTENT(IN) :: size ! Maximum number of characters of link value to be returned. -!!$ +!!$ !!$ CHARACTER(LEN=size), INTENT(OUT) :: linkval_buff ! The buffer to hold the returned link value. !!$ INTEGER, INTENT(OUT) :: hdferr ! Error code: !!$ ! 0 on success and -1 on failure !!$ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list -!!$ +!!$ !!$ INTEGER :: link_namelen !!$ INTEGER(HID_T) :: lapl_id_default !!$ INTEGER :: corder_valid !!$ -!!$ INTEGER :: link_namelen -!!$ INTEGER(HID_T) :: lapl_id_default +!!$ INTEGER :: link_namelen +!!$ INTEGER(HID_T) :: lapl_id_default !!$ !!$! MS FORTRAN needs explicit interface for C functions called here. !!$! @@ -1158,9 +1158,9 @@ CONTAINS !!$ !DEC$ENDIF !!$ INTEGER(HID_T), INTENT(IN) :: link_loc_id ! File or group identifier. !!$ CHARACTER(LEN=*), INTENT(IN) :: link_name ! Link whose value is to be returned. -!!$ INTEGER :: link_namelen +!!$ INTEGER :: link_namelen !!$ INTEGER(SIZE_T), INTENT(IN) :: size ! Maximum number of characters of link value to be returned. -!!$ +!!$ !!$ CHARACTER(LEN=size), INTENT(OUT) :: linkval_buff ! The buffer to hold the returned link value. !!$ !!$ INTEGER :: link_namelen @@ -1182,30 +1182,30 @@ CONTAINS !---------------------------------------------------------------------- -! Name: H5Lregistered_f +! Name: H5Lregistered_f ! ! Purpose: Registers user-defined link class or changes behavior of existing class. -! +! ! Inputs: NOTE: In C the following represents struct H5L_class_t: -! version - Version number of this struct -! class_id - Link class identifier -! comment - Comment for debugging -! create_func - Callback during link creation -! move_func - Callback after moving link -! copy_func - Callback after copying link -! trav_func - The main traversal function -! del_func - Callback for link deletion -! query_func - Callback for queries +! version - Version number of this struct +! class_id - Link class identifier +! comment - Comment for debugging +! create_func - Callback during link creation +! move_func - Callback after moving link +! copy_func - Callback after copying link +! trav_func - The main traversal function +! del_func - Callback for link deletion +! query_func - Callback for queries ! ! Outputs: -! hdferr - Error code +! hdferr - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! None +! None ! ! Programmer: M.S. Breitenfeld -! February 29, 2008 +! February 29, 2008 ! ! Modifications: N/A ! @@ -1213,25 +1213,25 @@ CONTAINS !!$ SUBROUTINE H5Lregistered_f(version, class_id, comment, create_func, & !!$ move_func, copy_func, trav_func, del_func, query_func, hdferr) !!$ IMPLICIT NONE -!!$ INTEGER, INTENT(IN) :: version ! Version number of this struct -!!$ INTEGER, INTENT(IN) :: class_id ! Link class identifier -!!$ CHARACTER(LEN=*), INTENT(IN) :: comment ! Comment for debugging -!!$ CHARACTER(LEN=*), INTENT(IN) :: create_func ! Callback during link creation -!!$ CHARACTER(LEN=*), INTENT(IN) :: move_func ! Callback after moving link -!!$ CHARACTER(LEN=*), INTENT(IN) :: copy_func ! Callback after copying link -!!$ CHARACTER(LEN=*), INTENT(IN) :: trav_func ! The main traversal function -!!$ CHARACTER(LEN=*), INTENT(IN) :: del_func ! Callback for link deletion +!!$ INTEGER, INTENT(IN) :: version ! Version number of this struct +!!$ INTEGER, INTENT(IN) :: class_id ! Link class identifier +!!$ CHARACTER(LEN=*), INTENT(IN) :: comment ! Comment for debugging +!!$ CHARACTER(LEN=*), INTENT(IN) :: create_func ! Callback during link creation +!!$ CHARACTER(LEN=*), INTENT(IN) :: move_func ! Callback after moving link +!!$ CHARACTER(LEN=*), INTENT(IN) :: copy_func ! Callback after copying link +!!$ CHARACTER(LEN=*), INTENT(IN) :: trav_func ! The main traversal function +!!$ CHARACTER(LEN=*), INTENT(IN) :: del_func ! Callback for link deletion !!$ CHARACTER(LEN=*), INTENT(IN) :: query_func ! Callback for queries !!$ INTEGER, INTENT(OUT) :: hdferr ! Error code: !!$ ! 0 on success and -1 on failure -!!$ INTEGER :: comment_len +!!$ INTEGER :: comment_len !!$ INTEGER :: create_func_len -!!$ INTEGER :: move_func_len -!!$ INTEGER :: copy_func_len -!!$ INTEGER :: trav_func_len +!!$ INTEGER :: move_func_len +!!$ INTEGER :: copy_func_len +!!$ INTEGER :: trav_func_len !!$ INTEGER :: del_func_len !!$ INTEGER :: query_func_len -!!$ +!!$ !!$! !!$! MS FORTRAN needs explicit interface for C functions called here. !!$! @@ -1247,33 +1247,33 @@ CONTAINS !!$ !DEC$IF DEFINED(HDF5F90_WINDOWS) !!$ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LREGISTERED_C'::H5Lregistered_c !!$ !DEC$ENDIF -!!$ INTEGER, INTENT(IN) :: version ! Version number of this struct -!!$ INTEGER, INTENT(IN) :: class_id ! Link class identifier -!!$ CHARACTER(LEN=*), INTENT(IN) :: comment ! Comment for debugging -!!$ CHARACTER(LEN=*), INTENT(IN) :: create_func ! Callback during link creation -!!$ CHARACTER(LEN=*), INTENT(IN) :: move_func ! Callback after moving link -!!$ CHARACTER(LEN=*), INTENT(IN) :: copy_func ! Callback after copying link -!!$ CHARACTER(LEN=*), INTENT(IN) :: trav_func ! The main traversal function -!!$ CHARACTER(LEN=*), INTENT(IN) :: del_func ! Callback for link deletion +!!$ INTEGER, INTENT(IN) :: version ! Version number of this struct +!!$ INTEGER, INTENT(IN) :: class_id ! Link class identifier +!!$ CHARACTER(LEN=*), INTENT(IN) :: comment ! Comment for debugging +!!$ CHARACTER(LEN=*), INTENT(IN) :: create_func ! Callback during link creation +!!$ CHARACTER(LEN=*), INTENT(IN) :: move_func ! Callback after moving link +!!$ CHARACTER(LEN=*), INTENT(IN) :: copy_func ! Callback after copying link +!!$ CHARACTER(LEN=*), INTENT(IN) :: trav_func ! The main traversal function +!!$ CHARACTER(LEN=*), INTENT(IN) :: del_func ! Callback for link deletion !!$ CHARACTER(LEN=*), INTENT(IN) :: query_func ! Callback for queries !!$ INTEGER, INTENT(OUT) :: hdferr ! Error code: !!$ ! 0 on success and -1 on failure -!!$ INTEGER :: comment_len +!!$ INTEGER :: comment_len !!$ INTEGER :: create_func_len -!!$ INTEGER :: move_func_len -!!$ INTEGER :: copy_func_len -!!$ INTEGER :: trav_func_len +!!$ INTEGER :: move_func_len +!!$ INTEGER :: copy_func_len +!!$ INTEGER :: trav_func_len !!$ INTEGER :: del_func_len !!$ INTEGER :: query_func_len -!!$ +!!$ !!$ END FUNCTION H5Lregistered_c !!$ END INTERFACE !!$ !!$ comment_len = LEN(comment) !!$ create_func_len = LEN(create_func) !!$ move_func_len = LEN(move_func) -!!$ copy_func_len = LEN(copy_func) -!!$ trav_func_len = LEN(trav_func) +!!$ copy_func_len = LEN(copy_func) +!!$ trav_func_len = LEN(trav_func) !!$ del_func_len = LEN(del_func) !!$ query_func_len = LEN(query_func) !!$ @@ -1284,7 +1284,7 @@ CONTAINS !!$ trav_func, trav_func_len, & !!$ del_func, del_func_len, & !!$ query_func, query_func_len) -!!$ +!!$ !!$ END SUBROUTINE H5Lregistered_f END MODULE H5L diff --git a/fortran/src/H5Off.f90 b/fortran/src/H5Off.f90 index 0328fbc..af965e2 100644 --- a/fortran/src/H5Off.f90 +++ b/fortran/src/H5Off.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,30 +11,30 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5O functions. ! MODULE H5O - + USE H5GLOBAL - + CONTAINS !---------------------------------------------------------------------- -! Name: h5olink_f +! Name: h5olink_f ! ! Purpose: Creates a hard link to an object in an HDF5 file. ! -! Inputs: +! Inputs: ! object_id - Object to be linked. ! new_loc_id - File or group identifier specifying location at which object is to be linked. ! new_link_name - Name of link to be created, relative to new_loc_id. -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list identifier. ! lapl_id - Link access property list identifier. @@ -42,20 +42,20 @@ CONTAINS ! Programmer: M.S. Breitenfeld ! April 21, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- SUBROUTINE h5olink_f(object_id, new_loc_id, new_link_name, hdferr, lcpl_id, lapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: object_id ! Object to be linked - INTEGER(HID_T), INTENT(IN) :: new_loc_id ! File or group identifier specifying + INTEGER(HID_T), INTENT(IN) :: new_loc_id ! File or group identifier specifying ! location at which object is to be linked. CHARACTER(LEN=*), INTENT(IN) :: new_link_name ! Name of link to be created, relative to new_loc_id. - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! Success: 0 - ! Failure: -1 - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier. + ! Failure: -1 + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list identifier. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link creation property list identifier. INTEGER(HID_T) :: lapl_id_default INTEGER(HID_T) :: lcpl_id_default @@ -92,25 +92,25 @@ CONTAINS END SUBROUTINE h5olink_f !---------------------------------------------------------------------- -! Name: h5oopen_f +! Name: h5oopen_f ! ! Purpose: Opens an object in an HDF5 file by location identifier and path name.O ! -! Inputs: +! Inputs: ! loc_id - File or group identifier ! name - Path to the object, relative to loc_id. -! Outputs: -! obj_id - Object identifier for the opened object -! hdferr: - error code +! Outputs: +! obj_id - Object identifier for the opened object +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lapl_id - Access property list identifier for the link pointing to the object ! ! Programmer: M.S. Breitenfeld ! April 18, 2008 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- @@ -119,9 +119,9 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Path to the object, relative to loc_id INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier for the opened object - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Attribute access property list INTEGER(HID_T) :: lapl_id_default @@ -154,23 +154,23 @@ CONTAINS END SUBROUTINE h5oopen_f !---------------------------------------------------------------------- -! Name: h5oopen_by_addr_f +! Name: h5oopen_by_addr_f ! -! Purpose: Opens an object using its address within an HDF5 file. +! Purpose: Opens an object using its address within an HDF5 file. ! -! Inputs: +! Inputs: ! loc_id - File or group identifier ! addr - Object’s address in the file -! Outputs: -! obj_id - Object identifier for the opened object -! hdferr: - error code +! Outputs: +! obj_id - Object identifier for the opened object +! hdferr: - error code ! Success: 0 ! Failure: -1 ! ! Programmer: M. Scot Breitenfeld ! September 14, 2009 ! -! Modifications: N/A +! Modifications: N/A ! !---------------------------------------------------------------------- @@ -179,7 +179,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier INTEGER(HADDR_T), INTENT(IN) :: addr ! Object’s address in the file INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier for the opened object - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code ! Success: 0 ! Failure: -1 INTERFACE diff --git a/fortran/src/H5Pf.c b/fortran/src/H5Pf.c index ee2145d..96b771d 100644 --- a/fortran/src/H5Pf.c +++ b/fortran/src/H5Pf.c @@ -1717,7 +1717,7 @@ nh5pget_external_c(hid_t_f *prp_id, int_f *idx, size_t_f* name_size, _fcd name, *offset = (int_f)c_offset; *bytes = (hsize_t_f)size; /* Note: if the size of the fortran buffer is larger then the returned string - * from the function then we need to give HD5packFstring the fortran buffer size so + * from the function then we need to give HD5packFstring the fortran buffer size so * that it fills the remaining unused characters with blanks. MSB */ HD5packFstring(c_name, _fcdtocp(name), c_namelen+1); @@ -3996,7 +3996,7 @@ nh5pget_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_l done: if(c_expression) - HDfree(c_expression); + HDfree(c_expression); return ret_value; } @@ -4464,10 +4464,10 @@ nh5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group) * Purpose: Calls H5Pset_chunk_cache * * Inputs: dapl_id - Link creation property list identifier - * rdcc_nslots - + * rdcc_nslots - * rdcc_nbytes - * rdcc_w0 - - * + * * Returns: 0 on success, -1 on failure * Programmer: M.S. Breitenfeld * April 13, 2009 @@ -4495,10 +4495,10 @@ nh5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nb * * Inputs: dapl_id - Link creation property list identifier * Outputs: - * rdcc_nslots - + * rdcc_nslots - * rdcc_nbytes - * rdcc_w0 - - * + * * Returns: 0 on success, -1 on failure * Programmer: M.S. Breitenfeld * April 13, 2009 diff --git a/fortran/src/H5Pff.f90 b/fortran/src/H5Pff.f90 index 48d36ab..50aad81 100644 --- a/fortran/src/H5Pff.f90 +++ b/fortran/src/H5Pff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5P functions. @@ -25,7 +25,7 @@ MODULE PROCEDURE h5pset_fill_value_real MODULE PROCEDURE h5pset_fill_value_char END INTERFACE - + INTERFACE h5pget_fill_value_f MODULE PROCEDURE h5pget_fill_value_integer MODULE PROCEDURE h5pget_fill_value_real @@ -37,7 +37,7 @@ MODULE PROCEDURE h5pset_real MODULE PROCEDURE h5pset_char END INTERFACE - + INTERFACE h5pget_f MODULE PROCEDURE h5pget_integer MODULE PROCEDURE h5pget_real @@ -49,28 +49,28 @@ MODULE PROCEDURE h5pregister_real MODULE PROCEDURE h5pregister_char END INTERFACE - + INTERFACE h5pinsert_f MODULE PROCEDURE h5pinsert_integer MODULE PROCEDURE h5pinsert_real MODULE PROCEDURE h5pinsert_char END INTERFACE - + INTERFACE h5pset_fapl_multi_f MODULE PROCEDURE h5pset_fapl_multi_l MODULE PROCEDURE h5pset_fapl_multi_s - END INTERFACE + END INTERFACE + - CONTAINS !---------------------------------------------------------------------- -! Name: h5pcreate_f +! Name: h5pcreate_f ! -! Purpose: Creates a new property as an instance of a property +! Purpose: Creates a new property as an instance of a property ! list class. ! -! Inputs: +! Inputs: ! class - type of the property class to be created. ! Possible values are: ! H5P_FILE_CREATE_F @@ -78,34 +78,34 @@ ! H5P_DATASET_CREATE_F ! H5P_DATASET_XFER_F ! H5P_FILE_MOUNT_F -! Outputs: +! Outputs: ! prp_id - property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pcreate_f(class, prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: class ! The type of the property list + INTEGER(HID_T), INTENT(IN) :: class ! The type of the property list ! to be created. Possible values - ! are: + ! are: ! H5P_FILE_CREATE_F ! H5P_FILE_ACCESS_F ! H5P_DATASET_CREATE_F ! H5P_DATASET_XFER_F ! H5P_FILE_MOUNT_F - INTEGER(HID_T), INTENT(OUT) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(OUT) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pcreate_c @@ -122,46 +122,46 @@ END FUNCTION h5pcreate_c END INTERFACE - hdferr = h5pcreate_c(class, prp_id) + hdferr = h5pcreate_c(class, prp_id) END SUBROUTINE h5pcreate_f !---------------------------------------------------------------------- -! Name: h5pset_preserve_f +! Name: h5pset_preserve_f ! -! Purpose: Sets the dataset transfer property list status to +! Purpose: Sets the dataset transfer property list status to ! TRUE or FALSE for initializing compound datatype ! members during write/read operations. ! -! Inputs: +! Inputs: ! prp_id - property list identifier ! flag - status flag -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 -! Datatype of the flag parameter is changed from -! INTEGER to LOGICAL -! June 4, 2003 +! port). March 14, 2001 +! Datatype of the flag parameter is changed from +! INTEGER to LOGICAL +! June 4, 2003 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_preserve_f(prp_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier LOGICAL, INTENT(IN) :: flag ! TRUE/FALSE flag to set the dataset ! transfer property for partila writing/reading - ! compound datatype + ! compound datatype INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: flag_c @@ -180,43 +180,43 @@ END INTERFACE flag_c = 0 if(flag) flag_c = 1 - hdferr = h5pset_preserve_c(prp_id, flag_c) + hdferr = h5pset_preserve_c(prp_id, flag_c) END SUBROUTINE h5pset_preserve_f !---------------------------------------------------------------------- -! Name: h5pget_preserve_f +! Name: h5pget_preserve_f ! ! Purpose: Checks status of the dataset transfer property list. ! -! Inputs: +! Inputs: ! prp_id - property list identifier -! Outputs: +! Outputs: ! flag - status flag -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 -! Datatype of the flag parameter is changed from -! INTEGER to LOGICAL -! June 4, 2003 +! port). March 14, 2001 +! Datatype of the flag parameter is changed from +! INTEGER to LOGICAL +! June 4, 2003 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_preserve_f(prp_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier LOGICAL, INTENT(OUT) :: flag ! TRUE/FALSE flag. Shows status of the dataset's ! transfer property for partial writing/reading - ! compound datatype + ! compound datatype INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: flag_c @@ -234,19 +234,19 @@ END FUNCTION h5pget_preserve_c END INTERFACE - hdferr = h5pget_preserve_c(prp_id, flag_c) + hdferr = h5pget_preserve_c(prp_id, flag_c) flag = .FALSE. if(flag_c .eq. 1) flag = .TRUE. END SUBROUTINE h5pget_preserve_f !---------------------------------------------------------------------- -! Name: h5pget_class_f +! Name: h5pget_class_f ! ! Purpose: Returns the property list class for a property list. ! -! Inputs: +! Inputs: ! prp_id - property list identifier -! Outputs: +! Outputs: ! classtype - property list class ! Possible values are: ! H5P_ROOT_F @@ -255,32 +255,32 @@ ! H5PE_DATASET_CREATE_F ! H5P_DATASET_XFER_F ! H5P_FILE_MOUNT_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_class_f(prp_id, classtype, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER, INTENT(OUT) :: classtype ! The type of the property list + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(OUT) :: classtype ! The type of the property list ! to be created. Possible values - ! are: + ! are: ! H5P_ROOT_F ! H5P_FILE_CREATE_F ! H5P_FILE_ACCESS_F - ! H5PE_DATASET_CREATE_F + ! H5PE_DATASET_CREATE_F ! H5P_DATASET_XFER_F ! H5P_FILE_MOUNT_F INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -295,46 +295,46 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CLASS_C'::h5pget_class_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(OUT) :: classtype + INTEGER, INTENT(OUT) :: classtype END FUNCTION h5pget_class_c END INTERFACE - hdferr = h5pget_class_c(prp_id, classtype) + hdferr = h5pget_class_c(prp_id, classtype) END SUBROUTINE h5pget_class_f !---------------------------------------------------------------------- -! Name: h5pcopy_f +! Name: h5pcopy_f ! -! Purpose: Copies an existing property list to create a new +! Purpose: Copies an existing property list to create a new ! property list ! -! Inputs: +! Inputs: ! prp_id - property list identifier -! Outputs: +! Outputs: ! new_prp_id - new property list identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pcopy_f(prp_id, new_prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(OUT) :: new_prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(OUT) :: new_prp_id ! Identifier of property list - ! copy + ! copy INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pcopy_c @@ -355,34 +355,34 @@ END SUBROUTINE h5pcopy_f !---------------------------------------------------------------------- -! Name: h5pclose_f +! Name: h5pclose_f ! -! Purpose: Terminates access to a property list. +! Purpose: Terminates access to a property list. ! -! Inputs: -! prp_id - identifier of the property list to -! terminate access to. -! Outputs: -! hdferr: - error code +! Inputs: +! prp_id - identifier of the property list to +! terminate access to. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pclose_f(prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pclose_c @@ -394,7 +394,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCLOSE_C'::h5pclose_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id END FUNCTION h5pclose_c END INTERFACE @@ -402,38 +402,38 @@ END SUBROUTINE h5pclose_f !---------------------------------------------------------------------- -! Name: h5pset_chunk_f +! Name: h5pset_chunk_f ! -! Purpose: Sets the size of the chunks used to store -! a chunked layout dataset. +! Purpose: Sets the size of the chunks used to store +! a chunked layout dataset. ! -! Inputs: +! Inputs: ! prp_id - datatset creation property list identifier ! ndims - number of dimensions for each chunk ! dims - array with dimension sizes for each chunk -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_chunk_f(prp_id, ndims, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: ndims ! Number of chunk dimensions - INTEGER(HSIZE_T), DIMENSION(ndims), INTENT(IN) :: dims + INTEGER(HSIZE_T), DIMENSION(ndims), INTENT(IN) :: dims ! Array containing sizes of ! chunk dimensions INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -457,39 +457,39 @@ END SUBROUTINE h5pset_chunk_f !---------------------------------------------------------------------- -! Name: h5pget_chunk_f +! Name: h5pget_chunk_f ! -! Purpose: Retrieves the size of chunks for the raw data of a +! Purpose: Retrieves the size of chunks for the raw data of a ! chunked layout dataset ! -! Inputs: +! Inputs: ! prp_id - property list identifier ! ndims - size of dims array -! Outputs: +! Outputs: ! dims - array with dimension sizes for each chunk -! hdferr: - error code +! hdferr: - error code ! Success: number of chunk dimensions -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_chunk_f(prp_id, ndims, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: ndims ! Number of chunk dimensions to ! to return - INTEGER(HSIZE_T), DIMENSION(ndims), INTENT(OUT) :: dims + INTEGER(HSIZE_T), DIMENSION(ndims), INTENT(OUT) :: dims ! Array containing sizes of ! chunk dimensions INTEGER, INTENT(OUT) :: hdferr ! Error code; number of @@ -515,35 +515,35 @@ END SUBROUTINE h5pget_chunk_f !---------------------------------------------------------------------- -! Name: h5pset_deflate_f +! Name: h5pset_deflate_f ! -! Purpose: Sets compression method and compression level. +! Purpose: Sets compression method and compression level. ! -! Inputs: +! Inputs: ! prp_id - property list identifier ! level - compression level -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_deflate_f(prp_id, level, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER, INTENT(IN) :: level ! Compression level + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(IN) :: level ! Compression level INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_deflate_c @@ -564,41 +564,41 @@ END SUBROUTINE h5pset_deflate_f !---------------------------------------------------------------------- -! Name: h5pset(get)fill_value_f +! Name: h5pset(get)fill_value_f ! ! Purpose: Sets(gets) fill value for a dataset creation property list ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier ! type_id - datatype identifier for fill value ! fillvalue - fill value -! Outputs: +! Outputs: ! ( type_id - datatype identifier for fill value ) ! ( fillvalue - fill value ) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! ! Comment: h5pset(get)fill_value_f function is overloaded to support -! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes. +! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes. !---------------------------------------------------------------------- SUBROUTINE h5pset_fill_value_integer(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of - ! of fillvalue datatype + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + ! of fillvalue datatype ! (in memory) INTEGER, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -625,10 +625,10 @@ SUBROUTINE h5pget_fill_value_integer(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of ! of fillvalue datatype - ! (in memory) + ! (in memory) INTEGER, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -654,9 +654,9 @@ SUBROUTINE h5pset_fill_value_real(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of - ! of fillvalue datatype + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + ! of fillvalue datatype ! (in memory) REAL, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -683,10 +683,10 @@ SUBROUTINE h5pget_fill_value_real(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of ! of fillvalue datatype - ! (in memory) + ! (in memory) REAL, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -713,9 +713,9 @@ SUBROUTINE h5pset_fill_value_char(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of - ! of fillvalue datatype + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + ! of fillvalue datatype ! (in memory) CHARACTER, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -729,7 +729,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_VALUEC_C'::h5pset_fill_valuec_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: fillvalue + !DEC$ATTRIBUTES reference :: fillvalue INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER, INTENT(IN) :: fillvalue @@ -742,10 +742,10 @@ SUBROUTINE h5pget_fill_value_char(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of ! of fillvalue datatype - ! (in memory) + ! (in memory) CHARACTER, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -758,7 +758,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_VALUEC_C'::h5pget_fill_valuec_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: fillvalue + !DEC$ATTRIBUTES reference :: fillvalue INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER :: fillvalue @@ -769,43 +769,43 @@ END SUBROUTINE h5pget_fill_value_char !---------------------------------------------------------------------- -! Name: h5pget_version_f +! Name: h5pget_version_f ! -! Purpose: Retrieves the version information of various objects +! Purpose: Retrieves the version information of various objects ! for a file creation property list ! -! Inputs: +! Inputs: ! prp_id - file createion property list identifier -! Outputs: +! Outputs: ! boot - super block version number ! freelist - global freelist version number ! stab - symbol table version number ! shhdr - shared object header version number -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_version_f(prp_id, boot, freelist, & stab, shhdr, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, DIMENSION(:), INTENT(OUT) :: boot !array to put boot !block version number INTEGER, DIMENSION(:), INTENT(OUT) :: freelist !array to put global !freelist version number - + INTEGER, DIMENSION(:), INTENT(OUT) :: stab !array to put symbol !table version number INTEGER, DIMENSION(:), INTENT(OUT) :: shhdr !array to put shared @@ -822,8 +822,8 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_VERSION_C'::h5pget_version_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, DIMENSION(:), INTENT(OUT) :: boot - INTEGER, DIMENSION(:), INTENT(OUT) :: freelist + INTEGER, DIMENSION(:), INTENT(OUT) :: boot + INTEGER, DIMENSION(:), INTENT(OUT) :: freelist INTEGER, DIMENSION(:), INTENT(OUT) :: stab INTEGER, DIMENSION(:), INTENT(OUT) :: shhdr END FUNCTION h5pget_version_c @@ -833,34 +833,34 @@ END SUBROUTINE h5pget_version_f !---------------------------------------------------------------------- -! Name: h5pset_userblock_f +! Name: h5pset_userblock_f ! ! Purpose: Sets user block size ! -! Inputs: +! Inputs: ! prp_id - file creation property list to modify ! size - size of the user-block in bytes -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5pset_userblock_f (prp_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HSIZE_T), INTENT(IN) :: size !Size of the user-block in bytes + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HSIZE_T), INTENT(IN) :: size !Size of the user-block in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_userblock_c @@ -881,36 +881,36 @@ END SUBROUTINE h5pset_userblock_f !---------------------------------------------------------------------- -! Name: h5pget_userblock_f +! Name: h5pget_userblock_f ! ! Purpose: Gets user block size. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! Outputs: +! Outputs: ! block_size - size of the user block in bytes -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_userblock_f(prp_id, block_size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HSIZE_T), INTENT(OUT) :: block_size !Size of the - !user-block in bytes + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HSIZE_T), INTENT(OUT) :: block_size !Size of the + !user-block in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pget_userblock_c @@ -930,39 +930,39 @@ END SUBROUTINE h5pget_userblock_f !---------------------------------------------------------------------- -! Name: h5pset_sizes_f +! Name: h5pset_sizes_f ! -! Purpose: Sets the byte size of the offsets and lengths used +! Purpose: Sets the byte size of the offsets and lengths used ! to address objects in an HDF5 file. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! sizeof_addr - size of an object offset in bytes +! sizeof_addr - size of an object offset in bytes ! sizeof_size - size of an object length in bytes -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_sizes_f (prp_id, sizeof_addr, sizeof_size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(SIZE_T), INTENT(IN) :: sizeof_addr !Size of an object - !offset in bytes - INTEGER(SIZE_T), INTENT(IN) :: sizeof_size !Size of an object - !length in bytes + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(SIZE_T), INTENT(IN) :: sizeof_addr !Size of an object + !offset in bytes + INTEGER(SIZE_T), INTENT(IN) :: sizeof_size !Size of an object + !length in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_sizes_c @@ -974,7 +974,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SIZES_C'::h5pset_sizes_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER(SIZE_T), INTENT(IN) :: sizeof_addr INTEGER(SIZE_T), INTENT(IN) :: sizeof_size END FUNCTION h5pset_sizes_c @@ -984,41 +984,41 @@ END SUBROUTINE h5pset_sizes_f !---------------------------------------------------------------------- -! Name: h5pget_sizes_f +! Name: h5pget_sizes_f ! -! Purpose: Retrieves the size of the offsets and lengths used +! Purpose: Retrieves the size of the offsets and lengths used ! in an HDF5 file ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! Outputs: -! sizeof_addr - size of an object offset in bytes +! Outputs: +! sizeof_addr - size of an object offset in bytes ! sizeof_size - size of an object length in bytes -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_sizes_f(prp_id, sizeof_addr, sizeof_size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(SIZE_T), INTENT(OUT) :: sizeof_addr !Size of an object - !offset in bytes + !offset in bytes INTEGER(SIZE_T), INTENT(OUT) :: sizeof_size !Size of an object - !length in bytes - + !length in bytes + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pget_sizes_c @@ -1030,7 +1030,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SIZES_C'::h5pget_sizes_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER(SIZE_T), INTENT(OUT) :: sizeof_addr INTEGER(SIZE_T), INTENT(OUT) :: sizeof_size END FUNCTION h5pget_sizes_c @@ -1040,38 +1040,38 @@ END SUBROUTINE h5pget_sizes_f !---------------------------------------------------------------------- -! Name: h5pset_sym_k_f +! Name: h5pset_sym_k_f ! -! Purpose: Sets the size of parameters used to control the +! Purpose: Sets the size of parameters used to control the ! symbol table nodes ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier ! ik - symbol table tree rank ! lk - symbol table node size -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_sym_k_f (prp_id, ik, lk, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER, INTENT(IN) :: ik ! Symbol table tree rank - INTEGER, INTENT(IN) :: lk ! Symbol table node size - + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(IN) :: ik ! Symbol table tree rank + INTEGER, INTENT(IN) :: lk ! Symbol table node size + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_sym_k_c @@ -1083,7 +1083,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SYM_K_C'::h5pset_sym_k_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER, INTENT(IN) :: ik INTEGER, INTENT(IN) :: lk END FUNCTION h5pset_sym_k_c @@ -1093,36 +1093,36 @@ END SUBROUTINE h5pset_sym_k_f !---------------------------------------------------------------------- -! Name: h5pget_sym_k_f +! Name: h5pget_sym_k_f ! ! Purpose: Retrieves the size of the symbol table B-tree 1/2 rank -! and the symbol table leaf node 1/2 size. +! and the symbol table leaf node 1/2 size. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! Outputs: +! Outputs: ! ik - symbol table tree 1/2 rank ! lk - symbol table node 1/2 size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_sym_k_f(prp_id, ik, lk, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: ik !Symbol table tree rank INTEGER, INTENT(OUT) :: lk !Symbol table node size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1136,7 +1136,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SYM_K_C'::h5pget_sym_k_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER, INTENT(OUT) :: ik INTEGER, INTENT(OUT) :: lk END FUNCTION h5pget_sym_k_c @@ -1146,36 +1146,36 @@ END SUBROUTINE h5pget_sym_k_f !---------------------------------------------------------------------- -! Name: h5pset_istore_k_f +! Name: h5pset_istore_k_f ! -! Purpose: Sets the size of the parameter used to control the +! Purpose: Sets the size of the parameter used to control the ! B-trees for indexing chunked datasets ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier ! ik - 1/2 rank of chunked storage B-tree -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_istore_k_f (prp_id, ik, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: ik ! 1/2 rank of chunked storage B-tree - + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_istore_k_c @@ -1196,34 +1196,34 @@ END SUBROUTINE h5pset_istore_k_f !---------------------------------------------------------------------- -! Name: h5pget_istore_k_f +! Name: h5pget_istore_k_f ! -! Purpose: Queries the 1/2 rank of an indexed storage B-tree. +! Purpose: Queries the 1/2 rank of an indexed storage B-tree. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! Outputs: +! Outputs: ! ik - 1/2 rank of chunked storage B-tree -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_istore_k_f(prp_id, ik, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: ik !1/2 rank of chunked storage B-tree INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1245,34 +1245,34 @@ END SUBROUTINE h5pget_istore_k_f !---------------------------------------------------------------------- -! Name: h5pget_driver_f +! Name: h5pget_driver_f ! -! Purpose: Returns low-lever driver identifier. +! Purpose: Returns low-lever driver identifier. ! -! Inputs: -! prp_id - file access or data transfer property -! list identifier. -! Outputs: +! Inputs: +! prp_id - file access or data transfer property +! list identifier. +! Outputs: ! driver - low-level driver identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_driver_f(prp_id, driver, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HID_T), INTENT(OUT) :: driver !low-level file driver identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1294,32 +1294,32 @@ END SUBROUTINE h5pget_driver_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_stdio_f +! Name: h5pset_fapl_stdio_f ! -! Purpose: Sets the standard I/O driver. +! Purpose: Sets the standard I/O driver. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_stdio_f (prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_fapl_stdio_c @@ -1339,34 +1339,34 @@ END SUBROUTINE h5pset_fapl_stdio_f !---------------------------------------------------------------------- -! Name: h5pget_stdio_f +! Name: h5pget_stdio_f ! ! Purpose: NOT AVAILABLE ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- ! SUBROUTINE h5pget_stdio_f (prp_id, io, hdferr) ! ! IMPLICIT NONE -! INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier -! INTEGER, INTENT(OUT) :: io ! value indicates that the file - !access property list is set to +! INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier +! INTEGER, INTENT(OUT) :: io ! value indicates that the file + !access property list is set to !the stdio driver ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pget_stdio_c @@ -1374,32 +1374,32 @@ ! END SUBROUTINE h5pget_stdio_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_sec2_f +! Name: h5pset_fapl_sec2_f ! -! Purpose: Sets the sec2 driver. +! Purpose: Sets the sec2 driver. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_sec2_f (prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_fapl_sec2_c @@ -1411,7 +1411,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_SEC2_C'::h5pset_fapl_sec2_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier END FUNCTION h5pset_fapl_sec2_c END INTERFACE @@ -1419,32 +1419,32 @@ END SUBROUTINE h5pset_fapl_sec2_f !---------------------------------------------------------------------- -! Name: h5pget_sec2_f +! Name: h5pget_sec2_f ! ! Purpose: NOT AVAILABLE ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- -! SUBROUTINE h5pget_sec2_f (prp_id, sec2, hdferr) +! SUBROUTINE h5pget_sec2_f (prp_id, sec2, hdferr) ! IMPLICIT NONE -! INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier -! INTEGER, INTENT(OUT) :: sec2 ! value indicates whether the file +! INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier +! INTEGER, INTENT(OUT) :: sec2 ! value indicates whether the file !driver uses the functions declared !in the unistd.h file ! INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1453,34 +1453,34 @@ ! END SUBROUTINE h5pget_sec2_f !---------------------------------------------------------------------- -! Name: h5pset_alignment_f +! Name: h5pset_alignment_f ! -! Purpose: Sets alignment properties of a file access property list. +! Purpose: Sets alignment properties of a file access property list. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! threshold - threshold value +! threshold - threshold value ! alignment - alignment value -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_alignment_f(prp_id, threshold, alignment, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HSIZE_T), INTENT(IN) :: threshold ! Threshold value INTEGER(HSIZE_T), INTENT(IN) :: alignment ! alignment value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1504,35 +1504,35 @@ END SUBROUTINE h5pset_alignment_f !---------------------------------------------------------------------- -! Name: h5pget_alignment_f +! Name: h5pget_alignment_f ! -! Purpose: Retrieves the current settings for alignment -! properties from a file access property list. +! Purpose: Retrieves the current settings for alignment +! properties from a file access property list. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! threshold - threshold value +! Outputs: +! threshold - threshold value ! alignment - alignment value -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_alignment_f(prp_id, threshold, alignment, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HSIZE_T), INTENT(OUT) :: threshold ! Threshold value INTEGER(HSIZE_T), INTENT(OUT) :: alignment ! alignment value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1556,41 +1556,41 @@ END SUBROUTINE h5pget_alignment_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_core_f +! Name: h5pset_fapl_core_f ! -! Purpose: Modifies the file access property list to use the -! H5FD_CORE driver. +! Purpose: Modifies the file access property list to use the +! H5FD_CORE driver. ! ! Inputs: prp_id - file access property list identifier -! increment - size, in bytes, of memory increments -! backing_store - boolean flag indicating whether to write -! the file contents to disk when the file is closed. -! Outputs: -! hdferr: - error code +! increment - size, in bytes, of memory increments +! backing_store - boolean flag indicating whether to write +! the file contents to disk when the file is closed. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_core_f(prp_id, increment, backing_store, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(SIZE_T), INTENT(IN) :: increment ! File block size in bytes. LOGICAL, INTENT(IN) :: backing_store ! flag to indicate that - ! entire file contents are flushed to a file + ! entire file contents are flushed to a file ! with the same name as this core file. INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: backing_store_flag + INTEGER :: backing_store_flag ! INTEGER, EXTERNAL :: h5pset_fapl_core_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1601,9 +1601,9 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_CORE_C'::h5pset_fapl_core_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER(SIZE_T), INTENT(IN) :: increment - INTEGER :: backing_store_flag + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(SIZE_T), INTENT(IN) :: increment + INTEGER :: backing_store_flag END FUNCTION h5pset_fapl_core_c END INTERFACE backing_store_flag = 0 @@ -1612,41 +1612,41 @@ END SUBROUTINE h5pset_fapl_core_f !---------------------------------------------------------------------- -! Name: h5pget_fapl_core_f +! Name: h5pget_fapl_core_f ! -! Purpose: Queries core file driver properties. +! Purpose: Queries core file driver properties. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! increment - size, in bytes, of memory increments -! backing_store - boolean flag indicating whether to write -! the file contents to disk when the file is closed. -! hdferr: - error code +! Outputs: +! increment - size, in bytes, of memory increments +! backing_store - boolean flag indicating whether to write +! the file contents to disk when the file is closed. +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fapl_core_f(prp_id, increment, backing_store, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(SIZE_T), INTENT(OUT) :: increment ! File block size in bytes. LOGICAL, INTENT(OUT) :: backing_store ! flag to indicate that - ! entire file contents are flushed to a file + ! entire file contents are flushed to a file ! with the same name as this core file. INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: backing_store_flag + INTEGER :: backing_store_flag ! INTEGER, EXTERNAL :: h5pget_fapl_core_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1657,9 +1657,9 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_CORE_C'::h5pget_fapl_core_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER(SIZE_T), INTENT(OUT) :: increment - INTEGER :: backing_store_flag + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(SIZE_T), INTENT(OUT) :: increment + INTEGER :: backing_store_flag END FUNCTION h5pget_fapl_core_c END INTERFACE @@ -1669,39 +1669,39 @@ END SUBROUTINE h5pget_fapl_core_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_family_f +! Name: h5pset_fapl_family_f ! -! Purpose: Sets the file access property list to use the family driver. +! Purpose: Sets the file access property list to use the family driver. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! memb_size - size in bytes of each file member -! memb_plist - identifier of the file access property +! memb_size - size in bytes of each file member +! memb_plist - identifier of the file access property ! list to be used for each family member -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_family_f(prp_id, memb_size, memb_plist , hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HSIZE_T), INTENT(IN) :: memb_size ! Logical size, in bytes, !of each family member - INTEGER(HID_T), INTENT(IN) :: memb_plist !Identifier of the file - !access property list for + INTEGER(HID_T), INTENT(IN) :: memb_plist !Identifier of the file + !access property list for !each member of the family INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1724,40 +1724,40 @@ END SUBROUTINE h5pset_fapl_family_f !---------------------------------------------------------------------- -! Name: h5pget_fapl_family_f +! Name: h5pget_fapl_family_f ! -! Purpose: Returns file access property list information. +! Purpose: Returns file access property list information. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! memb_size - size in bytes of each file member -! memb_plist - identifier of the file access property +! Outputs: +! memb_size - size in bytes of each file member +! memb_plist - identifier of the file access property ! list to be used for each family member -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fapl_family_f(prp_id, memb_size, memb_plist , hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HSIZE_T), INTENT(OUT) :: memb_size ! Logical size, in bytes, !of each family member - INTEGER(HID_T), INTENT(OUT) :: memb_plist !Identifier of the file - !access property list for + INTEGER(HID_T), INTENT(OUT) :: memb_plist !Identifier of the file + !access property list for !each member of the family INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1780,45 +1780,45 @@ END SUBROUTINE h5pget_fapl_family_f !---------------------------------------------------------------------- -! Name: h5pset_cache_f +! Name: h5pset_cache_f ! -! Purpose: Sets the meta data cache and raw data chunk +! Purpose: Sets the meta data cache and raw data chunk ! cache parameters ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! mdc_nelmts - number of elements (objects) in the meta -! data cache -! rdcc_nelmts - number of elements (objects) in the raw -! data chunk cache -! rdcc_nbytes - total size of the raw data chunk cache, in bytes +! mdc_nelmts - number of elements (objects) in the meta +! data cache +! rdcc_nelmts - number of elements (objects) in the raw +! data chunk cache +! rdcc_nbytes - total size of the raw data chunk cache, in bytes ! rdcc_w0 - preemption policy (0 or 1) -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_cache_f(prp_id, mdc_nelmts,rdcc_nelmts, rdcc_nbytes, rdcc_w0, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: mdc_nelmts !Number of elements (objects) ! in the meta data cache INTEGER(SIZE_T), INTENT(IN) :: rdcc_nelmts !Number of elements (objects) ! in the meta data cache - INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes !Total size of the raw data - !chunk cache, in bytes + INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes !Total size of the raw data + !chunk cache, in bytes REAL, INTENT(IN) :: rdcc_w0 !Preemption policy INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1832,8 +1832,8 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CACHE_C'::h5pset_cache_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: mdc_nelmts - INTEGER(SIZE_T), INTENT(IN) :: rdcc_nelmts + INTEGER, INTENT(IN) :: mdc_nelmts + INTEGER(SIZE_T), INTENT(IN) :: rdcc_nelmts INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes REAL, INTENT(IN) :: rdcc_w0 END FUNCTION h5pset_cache_c @@ -1843,48 +1843,48 @@ END SUBROUTINE h5pset_cache_f !---------------------------------------------------------------------- -! Name: h5pget_cache_f +! Name: h5pget_cache_f ! -! Purpose: Queries the meta data cache and raw data chunk cache -! parameters. +! Purpose: Queries the meta data cache and raw data chunk cache +! parameters. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! mdc_nelmts - number of elements (objects) in the meta -! data cache -! rdcc_nelmts - number of elements (objects) in the raw -! data chunk cache -! rdcc_nbytes - total size of the raw data chunk cache, in bytes +! Outputs: +! mdc_nelmts - number of elements (objects) in the meta +! data cache +! rdcc_nelmts - number of elements (objects) in the raw +! data chunk cache +! rdcc_nbytes - total size of the raw data chunk cache, in bytes ! rdcc_w0 - preemption policy (0 or 1) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! ! Bug fix: type of the rdcc_nelmts parameter should be INTEGER -! instead of INTEGER(SIZE_T) October 10, 2003 +! instead of INTEGER(SIZE_T) October 10, 2003 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_cache_f(prp_id, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, rdcc_w0, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: mdc_nelmts !Number of elements (objects) ! in the meta data cache INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nelmts !Number of elements (objects) ! in the meta data cache - INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes !Total size of the raw data - !chunk cache, in bytes + INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes !Total size of the raw data + !chunk cache, in bytes REAL, INTENT(OUT) :: rdcc_w0 !Preemption policy INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1899,8 +1899,8 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CACHE_C'::h5pget_cache_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(OUT) :: mdc_nelmts - INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nelmts + INTEGER, INTENT(OUT) :: mdc_nelmts + INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nelmts INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes REAL, INTENT(OUT) :: rdcc_w0 END FUNCTION h5pget_cache_c @@ -1910,44 +1910,44 @@ END SUBROUTINE h5pget_cache_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_split_f +! Name: h5pset_fapl_split_f ! -! Purpose: Emulates the old split file driver. +! Purpose: Emulates the old split file driver. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! meta_ext - name of the extension for the metafile +! meta_ext - name of the extension for the metafile ! filename -! meta_plist - identifier of the meta file access property +! meta_plist - identifier of the meta file access property ! list ! raw_ext - name extension for the raw file filename ! raw_plist - identifier of the raw file access property list -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_split_f(prp_id, meta_ext, meta_plist, raw_ext, raw_plist, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: meta_ext !Name of the extension for !the metafile filename INTEGER(HID_T), INTENT(IN) :: meta_plist ! Identifier of the meta file ! access property list CHARACTER(LEN=*), INTENT(IN) :: raw_ext !Name extension for the raw file filename - INTEGER(HID_T), INTENT(IN) :: raw_plist !Identifier of the raw file + INTEGER(HID_T), INTENT(IN) :: raw_plist !Identifier of the raw file !access property list INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: meta_len, raw_len @@ -1964,10 +1964,10 @@ !DEC$ATTRIBUTES reference :: meta_ext !DEC$ATTRIBUTES reference :: raw_ext INTEGER(HID_T), INTENT(IN) :: prp_id - CHARACTER(LEN=*), INTENT(IN) :: meta_ext + CHARACTER(LEN=*), INTENT(IN) :: meta_ext INTEGER(HID_T), INTENT(IN) :: meta_plist CHARACTER(LEN=*), INTENT(IN) :: raw_ext - INTEGER(HID_T), INTENT(IN) :: raw_plist + INTEGER(HID_T), INTENT(IN) :: raw_plist INTEGER :: meta_len, raw_len END FUNCTION h5pset_fapl_split_c END INTERFACE @@ -1978,36 +1978,36 @@ END SUBROUTINE h5pset_fapl_split_f !---------------------------------------------------------------------- -! Name: h5pget_split_f +! Name: h5pget_split_f ! ! Purpose: NOT AVAILABLE ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- ! SUBROUTINE h5pget_split_f(prp_id, meta_ext_size, meta_ext, meta_plist,raw_ext_size,& -! raw_ext, raw_plist, hdferr) +! raw_ext, raw_plist, hdferr) ! IMPLICIT NONE ! INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier ! INTEGER(SIZE_T), INTENT(IN) :: meta_ext_size ! Number of characters of the meta ! file extension to be copied to the ! meta_ext buffer - + ! CHARACTER(LEN=*), INTENT(OUT) :: meta_ext !Name of the extension for !the metafile filename ! INTEGER(HID_T), INTENT(OUT) :: meta_plist ! Identifier of the meta file @@ -2016,7 +2016,7 @@ ! file extension to be copied to the ! raw_ext buffer ! CHARACTER(LEN=*), INTENT(OUT) :: raw_ext !Name extension for the raw file filename -! INTEGER(HID_T), INTENT(OUT) :: raw_plist !Identifier of the raw file +! INTEGER(HID_T), INTENT(OUT) :: raw_plist !Identifier of the raw file !access property list ! INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2026,35 +2026,35 @@ ! END SUBROUTINE h5pget_split_f !---------------------------------------------------------------------- -! Name: h5pset_gc_references_f +! Name: h5pset_gc_references_f ! -! Purpose: Sets garbage collecting references flag. +! Purpose: Sets garbage collecting references flag. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! gc_reference - flag for stting garbage collection on +! gc_reference - flag for stting garbage collection on ! and off (1 or 0) -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5pset_gc_references_f (prp_id, gc_reference, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: gc_reference !the flag for garbage collecting ! references for the file INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2077,34 +2077,34 @@ END SUBROUTINE h5pset_gc_references_f !---------------------------------------------------------------------- -! Name: h5pget_gc_references_f +! Name: h5pget_gc_references_f ! -! Purpose: Returns garbage collecting references setting. +! Purpose: Returns garbage collecting references setting. ! -! Inputs: +! Inputs: ! prp_id - file access property list identifier -! Outputs: -! gc_reference - flag for stting garbage collection on +! Outputs: +! gc_reference - flag for stting garbage collection on ! and off (1 or 0) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_gc_references_f (prp_id, gc_reference, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: gc_reference !the flag for garbage collecting ! references for the file INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2127,38 +2127,38 @@ END SUBROUTINE h5pget_gc_references_f !---------------------------------------------------------------------- -! Name: h5pset_layout_f +! Name: h5pset_layout_f ! -! Purpose: Sets the type of storage used store the raw data -! for a dataset. +! Purpose: Sets the type of storage used store the raw data +! for a dataset. ! -! Inputs: +! Inputs: ! prp_id - data creation property list identifier ! layout - type of storage layout for raw data ! possible values are: ! H5D_COMPACT_F ! H5D_CONTIGUOUS_F ! H5D_CHUNKED_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_layout_f (prp_id, layout, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: layout !Type of storage layout for raw data !possible values are: !H5D_COMPACT_F @@ -2184,37 +2184,37 @@ END SUBROUTINE h5pset_layout_f !---------------------------------------------------------------------- -! Name: h5pget_layout_f +! Name: h5pget_layout_f ! -! Purpose: Returns the layout of the raw data for a dataset. +! Purpose: Returns the layout of the raw data for a dataset. ! -! Inputs: +! Inputs: ! prp_id - data creation property list identifier -! Outputs: +! Outputs: ! layout - type of storage layout for raw data ! possible values are: ! H5D_COMPACT_F ! H5D_CONTIGUOUS_F ! H5D_CHUNKED_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_layout_f (prp_id, layout, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: layout !Type of storage layout for raw data !possible values are: !H5D_COMPACT_F(0) @@ -2240,36 +2240,36 @@ END SUBROUTINE h5pget_layout_f !---------------------------------------------------------------------- -! Name: h5pset_filter_f +! Name: h5pset_filter_f ! -! Purpose: Adds a filter to the filter pipeline. +! Purpose: Adds a filter to the filter pipeline. ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier -! filter - filter to be added to the pipeline +! filter - filter to be added to the pipeline ! flags - bit vector specifying certain general ! properties of the filter ! cd_nelmts - number of elements in cd_values ! cd_values - auxiliary data for the filter -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! February, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_filter_f(prp_id, filter, flags, cd_nelmts, cd_values, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: filter !Filter to be added to the pipeline. INTEGER, INTENT(IN) :: flags !Bit vector specifying certain general !properties of the filter. @@ -2287,11 +2287,11 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILTER_C'::h5pset_filter_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: filter - INTEGER, INTENT(IN) :: flags - INTEGER(SIZE_T), INTENT(IN) :: cd_nelmts - INTEGER, DIMENSION(*), INTENT(IN) :: cd_values + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER, INTENT(IN) :: filter + INTEGER, INTENT(IN) :: flags + INTEGER(SIZE_T), INTENT(IN) :: cd_nelmts + INTEGER, DIMENSION(*), INTENT(IN) :: cd_values END FUNCTION h5pset_filter_c END INTERFACE @@ -2299,34 +2299,34 @@ END SUBROUTINE h5pset_filter_f !---------------------------------------------------------------------- -! Name: h5pget_nfilters_f +! Name: h5pget_nfilters_f ! -! Purpose: Returns the number of filters in the pipeline. +! Purpose: Returns the number of filters in the pipeline. ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier -! Outputs: +! Outputs: ! nfilters - number of filters in the pipeline -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_nfilters_f (prp_id, nfilters, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: nfilters !the number of filters in the pipeline INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2348,43 +2348,43 @@ END SUBROUTINE h5pget_nfilters_f !---------------------------------------------------------------------- -! Name: h5pget_filter_f +! Name: h5pget_filter_f ! ! Purpose: Returns information about a filter in a pipeline ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier -! Outputs: +! Outputs: ! identifier -! filter - filter to be added to the pipeline +! filter - filter to be added to the pipeline ! flags - bit vector specifying certain general ! properties of the filter ! cd_nelmts - number of elements in cd_values ! cd_values - auxiliary data for the filter ! namelen - number of characters in the name buffer ! name - buffer to retrieve filter name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_filter_f(prp_id, filter_number, flags, cd_nelmts, cd_values, namelen, name, filter_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: filter_number !Sequence number within the filter - !pipeline of the filter for which + !pipeline of the filter for which !information is sought INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values !Auxiliary data for the filter. INTEGER, INTENT(OUT) :: flags !Bit vector specifying certain general @@ -2392,7 +2392,7 @@ INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts !Number of elements in cd_values. INTEGER(SIZE_T), INTENT(IN) :: namelen !Anticipated number of characters in name. CHARACTER(LEN=*), INTENT(OUT) :: name !Name of the filter - INTEGER, INTENT(OUT) :: filter_id ! filter identification number + INTEGER, INTENT(OUT) :: filter_id ! filter identification number INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2409,9 +2409,9 @@ !DEC$ENDIF !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: filter_number + INTEGER, INTENT(IN) :: filter_number INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values - INTEGER, INTENT(OUT) :: flags + INTEGER, INTENT(OUT) :: flags INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts INTEGER(SIZE_T), INTENT(IN) :: namelen CHARACTER(LEN=*), INTENT(OUT) :: name @@ -2419,47 +2419,47 @@ END FUNCTION h5pget_filter_c END INTERFACE - hdferr = h5pget_filter_c(prp_id, filter_number, flags, cd_nelmts, & + hdferr = h5pget_filter_c(prp_id, filter_number, flags, cd_nelmts, & cd_values, namelen, name, filter_id ) END SUBROUTINE h5pget_filter_f !---------------------------------------------------------------------- -! Name: h5pset_external_f +! Name: h5pset_external_f ! -! Purpose: Adds an external file to the list of external files. +! Purpose: Adds an external file to the list of external files. ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier ! name - name of external file -! offset - offset in bytes from the beginning of the +! offset - offset in bytes from the beginning of the ! file to the location in the file ! where the data starts -! bytes - size of the external file data. -! Outputs: -! hdferr: - error code +! bytes - size of the external file data. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_external_f(prp_id, name, offset,bytes, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name !Name of an external file - INTEGER, INTENT(IN) :: offset !Offset, in bytes, from the beginning - !of the file to the location in the file + INTEGER, INTENT(IN) :: offset !Offset, in bytes, from the beginning + !of the file to the location in the file !where the data starts. - INTEGER(HSIZE_T), INTENT(IN) :: bytes ! Number of bytes reserved in the + INTEGER(HSIZE_T), INTENT(IN) :: bytes ! Number of bytes reserved in the !file for the data INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2488,35 +2488,35 @@ END SUBROUTINE h5pset_external_f !---------------------------------------------------------------------- -! Name: h5pget_external_count_f +! Name: h5pget_external_count_f ! -! Purpose: Returns the number of external files for a dataset. +! Purpose: Returns the number of external files for a dataset. ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier -! Outputs: -! count - number of external files for the +! Outputs: +! count - number of external files for the ! specified dataset -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_external_count_f (prp_id, count, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER, INTENT(OUT) :: count !number of external files for the + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER, INTENT(OUT) :: count !number of external files for the !specified dataset INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pget_external_count_c @@ -2528,7 +2528,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EXTERNAL_COUNT_C'::h5pget_external_count_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER, INTENT(OUT) :: count END FUNCTION h5pget_external_count_c END INTERFACE @@ -2537,35 +2537,35 @@ END SUBROUTINE h5pget_external_count_f !---------------------------------------------------------------------- -! Name: h5pget_external_f +! Name: h5pget_external_f ! -! Purpose: Returns information about an external file. +! Purpose: Returns information about an external file. ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier -! Outputs: -! idx - external file index +! Outputs: +! idx - external file index ! name_size - maximum size of name array -! name - name of the external file +! name - name of the external file ! name - name of external file -! offset - offset in bytes from the beginning of the +! offset - offset in bytes from the beginning of the ! file to the location in the file ! where the data starts ! bytes - size of the external file data -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- @@ -2573,12 +2573,12 @@ IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: idx !External file index. - INTEGER(SIZE_T), INTENT(IN) :: name_size !Maximum length of name array + INTEGER(SIZE_T), INTENT(IN) :: name_size !Maximum length of name array CHARACTER(LEN=*), INTENT(OUT) :: name !Name of an external file - INTEGER, INTENT(OUT) :: offset !Offset, in bytes, from the beginning - !of the file to the location in the file + INTEGER, INTENT(OUT) :: offset !Offset, in bytes, from the beginning + !of the file to the location in the file !where the data starts. - INTEGER(HSIZE_T), INTENT(OUT) :: bytes ! Number of bytes reserved in the + INTEGER(HSIZE_T), INTENT(OUT) :: bytes ! Number of bytes reserved in the !file for the data INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2593,7 +2593,7 @@ !DEC$ENDIF !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: idx + INTEGER, INTENT(IN) :: idx INTEGER(SIZE_T), INTENT(IN) :: name_size CHARACTER(LEN=*), INTENT(OUT) :: name INTEGER, INTENT(OUT) :: offset @@ -2605,41 +2605,41 @@ END SUBROUTINE h5pget_external_f !---------------------------------------------------------------------- -! Name: h5pset_btree_ratios_f +! Name: h5pset_btree_ratios_f ! -! Purpose: Sets B-tree split ratios for a dataset transfer -! property list. +! Purpose: Sets B-tree split ratios for a dataset transfer +! property list. ! -! Inputs: -! prp_id - the dataset transfer property list -! identifier -! left - the B-tree split ratio for left-most nodes +! Inputs: +! prp_id - the dataset transfer property list +! identifier +! left - the B-tree split ratio for left-most nodes ! middle - the B-tree split ratio for all other nodes ! right - the B-tree split ratio for right-most nodes -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_btree_ratios_f(prp_id, left, middle, right, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier REAL, INTENT(IN) :: left !The B-tree split ratio for left-most nodes. - REAL, INTENT(IN) :: middle !The B-tree split ratio for all other nodes - REAL, INTENT(IN) :: right !The B-tree split ratio for right-most - !nodes and lone nodes. + REAL, INTENT(IN) :: middle !The B-tree split ratio for all other nodes + REAL, INTENT(IN) :: right !The B-tree split ratio for right-most + !nodes and lone nodes. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2663,40 +2663,40 @@ END SUBROUTINE h5pset_btree_ratios_f !---------------------------------------------------------------------- -! Name: h5pget_btree_ratios_f +! Name: h5pget_btree_ratios_f ! ! Purpose: Gets B-tree split ratios for a dataset transfer property list ! -! Inputs: -! prp_id - the dataset transfer property list -! identifier -! Outputs: -! left - the B-tree split ratio for left-most nodes +! Inputs: +! prp_id - the dataset transfer property list +! identifier +! Outputs: +! left - the B-tree split ratio for left-most nodes ! middle - the B-tree split ratio for all other nodes ! right - the B-tree split ratio for right-most nodes -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 14, 2001 +! port). March 14, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_btree_ratios_f(prp_id, left, middle, right, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier REAL, INTENT(OUT) :: left !The B-tree split ratio for left-most nodes. - REAL, INTENT(OUT) :: middle !The B-tree split ratio for all other nodes - REAL, INTENT(OUT) :: right !The B-tree split ratio for right-most - !nodes and lone nodes. + REAL, INTENT(OUT) :: middle !The B-tree split ratio for all other nodes + REAL, INTENT(OUT) :: right !The B-tree split ratio for right-most + !nodes and lone nodes. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2721,38 +2721,38 @@ END SUBROUTINE h5pget_btree_ratios_f !---------------------------------------------------------------------- -! Name: h5pget_fclose_degree_f +! Name: h5pget_fclose_degree_f ! ! Purpose: Returns the degree for the file close behavior. ! -! Inputs: +! Inputs: ! fapl_id - file access property list identifier -! Outputs: +! Outputs: ! degree - one of the following: ! Possible values are: ! H5F_CLOSE_DEFAULT_F ! H5F_CLOSE_WEAK_F ! H5F_CLOSE_SEMI_F ! H5F_CLOSE_STRONG_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! September 26, 2002 +! September 26, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fclose_degree_f(fapl_id, degree, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: fapl_id ! File Access Property list identifier + INTEGER(HID_T), INTENT(IN) :: fapl_id ! File Access Property list identifier INTEGER, INTENT(OUT) :: degree ! Possible values - ! are: + ! are: ! H5F_CLOSE_DEFAULT_F ! H5F_CLOSE_WEAK_F ! H5F_CLOSE_SEMI_F @@ -2774,15 +2774,15 @@ END FUNCTION h5pget_fclose_degree_c END INTERFACE - hdferr = h5pget_fclose_degree_c(fapl_id, degree) + hdferr = h5pget_fclose_degree_c(fapl_id, degree) END SUBROUTINE h5pget_fclose_degree_f !---------------------------------------------------------------------- -! Name: h5pset_fclose_degree_f +! Name: h5pset_fclose_degree_f ! ! Purpose: Sets the degree for the file close behavior. ! -! Inputs: +! Inputs: ! fapl_id - file access property list identifier ! degree - one of the following: ! Possible values are: @@ -2790,26 +2790,26 @@ ! H5F_CLOSE_WEAK_F ! H5F_CLOSE_SEMI_F ! H5F_CLOSE_STRONG_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! September 26, 2002 +! September 26, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fclose_degree_f(fapl_id, degree, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: fapl_id ! File Access Property list identifier + INTEGER(HID_T), INTENT(IN) :: fapl_id ! File Access Property list identifier INTEGER, INTENT(IN) :: degree ! Possible values - ! are: + ! are: ! H5F_CLOSE_DEFAULT_F ! H5F_CLOSE_WEAK_F ! H5F_CLOSE_SEMI_F @@ -2828,38 +2828,38 @@ END FUNCTION h5pset_fclose_degree_c END INTERFACE - hdferr = h5pset_fclose_degree_c(fapl_id, degree) + hdferr = h5pset_fclose_degree_c(fapl_id, degree) END SUBROUTINE h5pset_fclose_degree_f !---------------------------------------------------------------------- -! Name: h5pequal_f +! Name: h5pequal_f ! ! Purpose: Checks if two property lists are eqaul ! -! Inputs: +! Inputs: ! plist1_id - property list identifier ! plist2_id - property list identifier -! Outputs: +! Outputs: ! flag - flag, possible values ! .TRUE. or .FALSE. -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1, flag is set to .FALSE. +! Failure: -1, flag is set to .FALSE. ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! September 30, 2002 +! September 30, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pequal_f(plist1_id, plist2_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist1_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: plist2_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: plist1_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: plist2_id ! Property list identifier LOGICAL, INTENT(OUT) :: flag ! Flag INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: c_flag @@ -2877,38 +2877,38 @@ END INTERFACE flag = .FALSE. - hdferr = h5pequal_c(plist1_id, plist2_id, c_flag) + hdferr = h5pequal_c(plist1_id, plist2_id, c_flag) if (c_flag .GT. 0) flag = .TRUE. END SUBROUTINE h5pequal_f !---------------------------------------------------------------------- -! Name: h5pset_buffer_f +! Name: h5pset_buffer_f ! ! Purpose: Sets sixe for conversion buffer ! -! Inputs: +! Inputs: ! plist_id - data transfer property list identifier -! size - buffer size -! Outputs: -! hdferr: - error code +! size - buffer size +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 2, 2002 +! October 2, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_buffer_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier - INTEGER(HSIZE_T), INTENT(IN) :: size ! Buffer size in bytes; - ! buffer is allocated and freed by + INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier + INTEGER(HSIZE_T), INTENT(IN) :: size ! Buffer size in bytes; + ! buffer is allocated and freed by ! the library. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2923,37 +2923,37 @@ END FUNCTION h5pset_buffer_c END INTERFACE - hdferr = h5pset_buffer_c(plist_id, size) + hdferr = h5pset_buffer_c(plist_id, size) END SUBROUTINE h5pset_buffer_f !---------------------------------------------------------------------- -! Name: h5pget_buffer_f +! Name: h5pget_buffer_f ! ! Purpose: Gets size for conversion buffer ! -! Inputs: +! Inputs: ! plist_id - data transfer property list identifier -! Outputs: -! size - buffer size -! hdferr: - error code +! Outputs: +! size - buffer size +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 2, 2002 +! October 2, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_buffer_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier - INTEGER(HSIZE_T), INTENT(OUT) :: size ! Buffer size in bytes; - ! buffer is allocated and freed by + INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier + INTEGER(HSIZE_T), INTENT(OUT) :: size ! Buffer size in bytes; + ! buffer is allocated and freed by ! the library. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2968,7 +2968,7 @@ END FUNCTION h5pget_buffer_c END INTERFACE - hdferr = h5pget_buffer_c(plist_id, size) + hdferr = h5pget_buffer_c(plist_id, size) END SUBROUTINE h5pget_buffer_f !---------------------------------------------------------------------- @@ -2976,34 +2976,34 @@ ! ! Purpose: Check if fill value is defined. ! -! Inputs: +! Inputs: ! plist_id - dataset creation property list identifier -! Outputs: +! Outputs: ! flag - fill value status flag ! Possible values are: ! H5D_FILL_VALUE_ERROR_F ! H5D_FILL_VALUE_UNDEFINED_F ! H5D_FILL_VALUE_DEFAULT_F ! H5D_FILL_VALUE_USER_DEFINED_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 4, 2002 +! October 4, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pfill_value_defined_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(OUT) :: flag - INTEGER, INTENT(OUT) :: hdferr + INTEGER, INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pfill_value_defined_c(plist_id, flag) @@ -3016,7 +3016,7 @@ END FUNCTION h5pfill_value_defined_c END INTERFACE - hdferr = h5pfill_value_defined_c(plist_id, flag) + hdferr = h5pfill_value_defined_c(plist_id, flag) END SUBROUTINE h5pfill_value_defined_f !---------------------------------------------------------------------- @@ -3024,7 +3024,7 @@ ! ! Purpose: Set space allocation time for dataset during creation. ! -! Inputs: +! Inputs: ! plist_id - dataset creation property list identifier ! flag - allocation time flag ! Possible values are: @@ -3033,26 +3033,26 @@ ! H5D_ALLOC_TIME_EARLY_F ! H5D_ALLOC_TIME_LATE_F ! H5D_ALLOC_TIME_INCR_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 4, 2002 +! October 4, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_alloc_time_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(IN) :: flag - INTEGER, INTENT(OUT) :: hdferr + INTEGER, INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pset_alloc_time_c(plist_id, flag) @@ -3065,7 +3065,7 @@ END FUNCTION h5pset_alloc_time_c END INTERFACE - hdferr = h5pset_alloc_time_c(plist_id, flag) + hdferr = h5pset_alloc_time_c(plist_id, flag) END SUBROUTINE h5pset_alloc_time_f !---------------------------------------------------------------------- @@ -3073,9 +3073,9 @@ ! ! Purpose: Get space allocation time for dataset during creation. ! -! Inputs: +! Inputs: ! plist_id - dataset creation property list identifier -! Outputs: +! Outputs: ! flag - allocation time flag ! Possible values are: ! H5D_ALLOC_TIME_ERROR_F @@ -3083,25 +3083,25 @@ ! H5D_ALLOC_TIME_EARLY_F ! H5D_ALLOC_TIME_LATE_F ! H5D_ALLOC_TIME_INCR_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 4, 2002 +! October 4, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_alloc_time_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(OUT) :: flag - INTEGER, INTENT(OUT) :: hdferr + INTEGER, INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pget_alloc_time_c(plist_id, flag) @@ -3114,7 +3114,7 @@ END FUNCTION h5pget_alloc_time_c END INTERFACE - hdferr = h5pget_alloc_time_c(plist_id, flag) + hdferr = h5pget_alloc_time_c(plist_id, flag) END SUBROUTINE h5pget_alloc_time_f !---------------------------------------------------------------------- @@ -3122,33 +3122,33 @@ ! ! Purpose: Set fill value writing time for dataset ! -! Inputs: +! Inputs: ! plist_id - dataset creation property list identifier ! flag - fill time flag ! Possible values are: ! H5D_FILL_TIME_ERROR_F ! H5D_FILL_TIME_ALLOC_F ! H5D_FILL_TIME_NEVER_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 4, 2002 +! October 4, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fill_time_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(IN) :: flag - INTEGER, INTENT(OUT) :: hdferr + INTEGER, INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pset_fill_time_c(plist_id, flag) @@ -3161,7 +3161,7 @@ END FUNCTION h5pset_fill_time_c END INTERFACE - hdferr = h5pset_fill_time_c(plist_id, flag) + hdferr = h5pset_fill_time_c(plist_id, flag) END SUBROUTINE h5pset_fill_time_f !---------------------------------------------------------------------- @@ -3169,10 +3169,10 @@ ! ! Purpose: Get fill value writing time for dataset ! -! Inputs: +! Inputs: ! plist_id - dataset creation property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: @@ -3184,18 +3184,18 @@ ! NONE ! ! Programmer: Elena Pourmal -! October 4, 2002 +! October 4, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fill_time_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(OUT) :: flag - INTEGER, INTENT(OUT) :: hdferr + INTEGER, INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pget_fill_time_c(plist_id, flag) @@ -3208,36 +3208,36 @@ END FUNCTION h5pget_fill_time_c END INTERFACE - hdferr = h5pget_fill_time_c(plist_id, flag) + hdferr = h5pget_fill_time_c(plist_id, flag) END SUBROUTINE h5pget_fill_time_f !---------------------------------------------------------------------- -! Name: h5pset_meta_block_size_f +! Name: h5pset_meta_block_size_f ! -! Purpose: Sets the minimum size of metadata block allocations +! Purpose: Sets the minimum size of metadata block allocations ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier ! size - metatdata block size -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_meta_block_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier - INTEGER(HSIZE_T), INTENT(IN) :: size ! Block size in bytes; + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(HSIZE_T), INTENT(IN) :: size ! Block size in bytes; INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -3251,36 +3251,36 @@ END FUNCTION h5pset_meta_block_size_c END INTERFACE - hdferr = h5pset_meta_block_size_c(plist_id, size) + hdferr = h5pset_meta_block_size_c(plist_id, size) END SUBROUTINE h5pset_meta_block_size_f !---------------------------------------------------------------------- -! Name: h5pget_meta_block_size_f +! Name: h5pget_meta_block_size_f ! -! Purpose: Gets the minimum size of metadata block allocations +! Purpose: Gets the minimum size of metadata block allocations ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier -! Outputs: +! Outputs: ! size - metatdata block size -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_meta_block_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier - INTEGER(HSIZE_T), INTENT(OUT) :: size ! Block size in bytes; + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(HSIZE_T), INTENT(OUT) :: size ! Block size in bytes; INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -3294,36 +3294,36 @@ END FUNCTION h5pget_meta_block_size_c END INTERFACE - hdferr = h5pget_meta_block_size_c(plist_id, size) + hdferr = h5pget_meta_block_size_c(plist_id, size) END SUBROUTINE h5pget_meta_block_size_f !---------------------------------------------------------------------- -! Name: h5pset_sieve_buf_size_f +! Name: h5pset_sieve_buf_size_f ! ! Purpose: Sets the maximum size of the data sieve buffer ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier ! size - sieve buffer size -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_sieve_buf_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier - INTEGER(SIZE_T), INTENT(IN) :: size ! Buffer size in bytes; + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(SIZE_T), INTENT(IN) :: size ! Buffer size in bytes; INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -3337,36 +3337,36 @@ END FUNCTION h5pset_sieve_buf_size_c END INTERFACE - hdferr = h5pset_sieve_buf_size_c(plist_id, size) + hdferr = h5pset_sieve_buf_size_c(plist_id, size) END SUBROUTINE h5pset_sieve_buf_size_f !---------------------------------------------------------------------- -! Name: h5pget_sieve_buf_size_f +! Name: h5pget_sieve_buf_size_f ! ! Purpose: Gets the maximum size of the data sieve buffer ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier -! Outputs: +! Outputs: ! size - sieve buffer size -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_sieve_buf_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier - INTEGER(SIZE_T), INTENT(OUT) :: size ! Buffer size in bytes + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(SIZE_T), INTENT(OUT) :: size ! Buffer size in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -3380,35 +3380,35 @@ END FUNCTION h5pget_sieve_buf_size_c END INTERFACE - hdferr = h5pget_sieve_buf_size_c(plist_id, size) + hdferr = h5pget_sieve_buf_size_c(plist_id, size) END SUBROUTINE h5pget_sieve_buf_size_f !---------------------------------------------------------------------- -! Name: h5pset_small_data_block_size_f +! Name: h5pset_small_data_block_size_f ! ! Purpose: Sets the minimum size of "small" raw data block ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier ! size - small raw data block size -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_small_data_block_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier INTEGER(HSIZE_T), INTENT(IN) :: size ! Small raw data block size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3423,35 +3423,35 @@ END FUNCTION h5pset_small_data_block_size_c END INTERFACE - hdferr = h5pset_small_data_block_size_c(plist_id, size) + hdferr = h5pset_small_data_block_size_c(plist_id, size) END SUBROUTINE h5pset_small_data_block_size_f !---------------------------------------------------------------------- -! Name: h5pget_small_data_block_size_f +! Name: h5pget_small_data_block_size_f ! ! Purpose: Gets the minimum size of "small" raw data block ! -! Inputs: +! Inputs: ! plist_id - file access property list identifier -! Outputs: +! Outputs: ! size - small raw data block size -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_small_data_block_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! File access property list identifier INTEGER(HSIZE_T), INTENT(OUT) :: size ! Small raw data block size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3466,35 +3466,35 @@ END FUNCTION h5pget_small_data_block_size_c END INTERFACE - hdferr = h5pget_small_data_block_size_c(plist_id, size) + hdferr = h5pget_small_data_block_size_c(plist_id, size) END SUBROUTINE h5pget_small_data_block_size_f !---------------------------------------------------------------------- -! Name: h5pset_hyper_vector_size_f +! Name: h5pset_hyper_vector_size_f ! ! Purpose: Set the number of "I/O" vectors (vector size) ! -! Inputs: +! Inputs: ! plist_id - dataset transfer property list identifier ! size - vector size -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_hyper_vector_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset transfer property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset transfer property list identifier INTEGER(SIZE_T), INTENT(IN) :: size ! Vector size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3509,35 +3509,35 @@ END FUNCTION h5pset_hyper_vector_size_c END INTERFACE - hdferr = h5pset_hyper_vector_size_c(plist_id, size) + hdferr = h5pset_hyper_vector_size_c(plist_id, size) END SUBROUTINE h5pset_hyper_vector_size_f !---------------------------------------------------------------------- -! Name: h5pget_hyper_vector_size_f +! Name: h5pget_hyper_vector_size_f ! ! Purpose: Get the number of "I/O" vectors (vector size) ! -! Inputs: +! Inputs: ! plist_id - dataset transfer property list identifier -! Outputs: +! Outputs: ! size - vector size -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 7, 2002 +! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_hyper_vector_size_f(plist_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset transfer property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset transfer property list identifier INTEGER(SIZE_T), INTENT(OUT) :: size ! Vector size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3552,36 +3552,36 @@ END FUNCTION h5pget_hyper_vector_size_c END INTERFACE - hdferr = h5pget_hyper_vector_size_c(plist_id, size) + hdferr = h5pget_hyper_vector_size_c(plist_id, size) END SUBROUTINE h5pget_hyper_vector_size_f !---------------------------------------------------------------------- -! Name: h5pset_integer +! Name: h5pset_integer ! ! Purpose: Sets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify ! value - value to set property to -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_integer(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify INTEGER, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3610,28 +3610,28 @@ ! ! Purpose: Sets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify ! value - value to set property to -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_real(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify REAL, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3661,28 +3661,28 @@ ! ! Purpose: Sets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify ! value - value to set property to -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_char(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify CHARACTER(LEN=*), INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3711,32 +3711,32 @@ END SUBROUTINE h5pset_char !---------------------------------------------------------------------- -! Name: h5pget_integer +! Name: h5pget_integer ! ! Purpose: Gets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify -! Outputs: +! Outputs: ! value - value of property -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_integer(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify INTEGER, INTENT(OUT) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3765,28 +3765,28 @@ ! ! Purpose: Gets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify -! Outputs: +! Outputs: ! value - value of property -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_real(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify REAL, INTENT(OUT) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3816,28 +3816,28 @@ ! ! Purpose: Gets a property list value ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify -! Outputs: +! Outputs: ! value - value of property -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_char(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify CHARACTER(LEN=*), INTENT(OUT) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3866,32 +3866,32 @@ END SUBROUTINE h5pget_char !---------------------------------------------------------------------- -! Name: h5pexist_f +! Name: h5pexist_f ! -! Purpose: Queries whether a property name exists in a property list or class. +! Purpose: Queries whether a property name exists in a property list or class. ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to query ! name - name of property to check for -! Outputs: +! Outputs: ! flag - logical flag -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pexist_f(prp_id, name, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify LOGICAL, INTENT(OUT) :: flag ! .TRUE. if exists, .FALSE. ! otherwise @@ -3920,32 +3920,32 @@ END SUBROUTINE h5pexist_f !---------------------------------------------------------------------- -! Name: h5pget_size_f +! Name: h5pget_size_f ! ! Purpose: Queries the size of a property value in bytes. ! -! Inputs: +! Inputs: ! prp_id - property list identifier to query ! name - name of property to query -! Outputs: +! Outputs: ! size - size of property in bytes -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_size_f(prp_id, name, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to query INTEGER(SIZE_T), INTENT(OUT) :: size ! Size in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -3969,31 +3969,31 @@ END SUBROUTINE h5pget_size_f !---------------------------------------------------------------------- -! Name: h5pget_npros_f +! Name: h5pget_npros_f ! ! Purpose: Queries number of properties in property list or class ! -! Inputs: +! Inputs: ! prp_id - iproperty list identifier to query -! Outputs: +! Outputs: ! nprops - number of properties in property object -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_nprops_f(prp_id, nprops, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(SIZE_T), INTENT(OUT) :: nprops ! iNumber of properties INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -4011,13 +4011,13 @@ END SUBROUTINE h5pget_nprops_f !---------------------------------------------------------------------- -! Name: h5pget_class_name_f +! Name: h5pget_class_name_f ! ! Purpose: Queries the name of a class. ! -! Inputs: +! Inputs: ! prp_id - property list identifier to query -! Outputs: +! Outputs: ! name - name of a class ! size - Actual length of the class name ! If provided buffer "name" is smaller, @@ -4025,23 +4025,23 @@ ! provided user buffer ! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: Returned the size of name as an argument +! Modifications: Returned the size of name as an argument ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_class_name_f(prp_id, name, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(OUT) :: name ! Buffer to retireve class name - + INTEGER, INTENT(OUT) :: size ! Actual length of the class name INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4068,34 +4068,34 @@ END SUBROUTINE h5pget_class_name_f !---------------------------------------------------------------------- -! Name: h5pget_class_parent_f +! Name: h5pget_class_parent_f ! -! Purpose: Retrieves the parent class of a genric property class. +! Purpose: Retrieves the parent class of a genric property class. ! -! Inputs: +! Inputs: ! prp_id - property list identifier to query -! Outputs: +! Outputs: ! parent_id - identifier of the parent class -! hdferr: - error code -! +! hdferr: - error code +! ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_class_parent_f(prp_id, parent_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(OUT) :: parent_id ! Parent class property list - ! identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(OUT) :: parent_id ! Parent class property list + ! identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -4112,33 +4112,33 @@ END SUBROUTINE h5pget_class_parent_f !---------------------------------------------------------------------- -! Name: h5pisa_class_f +! Name: h5pisa_class_f ! -! Purpose: Determines whether a property list is a member of a class. +! Purpose: Determines whether a property list is a member of a class. ! -! Inputs: -! plist - property list identifier +! Inputs: +! plist - property list identifier ! pclass - identifier of the property class -! Outputs: +! Outputs: ! flag - .TRUE. if a member, .FALSE. otherwise -! hdferr: - error code -! +! hdferr: - error code +! ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pisa_class_f(plist, pclass, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier INTEGER(HID_T), INTENT(IN) :: pclass ! Class identifier LOGICAL, INTENT(OUT) :: flag ! logical flag INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -4162,35 +4162,35 @@ END SUBROUTINE h5pisa_class_f !---------------------------------------------------------------------- -! Name: h5pcopy_prop_f +! Name: h5pcopy_prop_f ! ! Purpose: Copies a property from one list or class to another. ! -! Inputs: +! Inputs: ! dst_id - Identifier of the destination property list -! src_id - Identifier of the source property list +! src_id - Identifier of the source property list ! name - name of the property to copy -! Outputs: -! hdferr: - error code -! -! Success: 0 -! Failure: -1 +! Outputs: +! hdferr: - error code +! +! Success: 0 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pcopy_prop_f(dst_id, src_id, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: dst_id ! Destination property list - ! identifier - INTEGER(HID_T), INTENT(IN) :: src_id ! Source property list identifier + INTEGER(HID_T), INTENT(IN) :: dst_id ! Destination property list + ! identifier + INTEGER(HID_T), INTENT(IN) :: src_id ! Source property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Property name INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4213,28 +4213,28 @@ END SUBROUTINE h5pcopy_prop_f !---------------------------------------------------------------------- -! Name: h5premove_f +! Name: h5premove_f ! -! Purpose: Removes a property from a property list. +! Purpose: Removes a property from a property list. ! -! Inputs: +! Inputs: ! plid - Property list identofoer ! name - name of the property to remove -! Outputs: -! hdferr: - error code -! -! Success: 0 -! Failure: -1 +! Outputs: +! hdferr: - error code +! +! Success: 0 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5premove_f(plid, name, hdferr) @@ -4251,7 +4251,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREMOVE_C'::h5premove_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: plid + INTEGER(HID_T), INTENT(IN) :: plid CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len END FUNCTION h5premove_c @@ -4261,28 +4261,28 @@ END SUBROUTINE h5premove_f !---------------------------------------------------------------------- -! Name: h5punregister_f +! Name: h5punregister_f ! -! Purpose: Removes a property from a property list class. +! Purpose: Removes a property from a property list class. ! -! Inputs: +! Inputs: ! class - Property list class identifier ! name - name of the property to remove -! Outputs: -! hdferr: - error code -! -! Success: 0 -! Failure: -1 +! Outputs: +! hdferr: - error code +! +! Success: 0 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5punregister_f(class, name, hdferr) @@ -4309,27 +4309,27 @@ END SUBROUTINE h5punregister_f !---------------------------------------------------------------------- -! Name: h5pclose_class_f +! Name: h5pclose_class_f ! -! Purpose: Closes an existing property list class. +! Purpose: Closes an existing property list class. ! -! Inputs: +! Inputs: ! class - Property list class identifier -! Outputs: -! hdferr: - error code -! -! Success: 0 -! Failure: -1 +! Outputs: +! hdferr: - error code +! +! Success: 0 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pclose_class_f(class, hdferr) @@ -4350,12 +4350,12 @@ END SUBROUTINE h5pclose_class_f !---------------------------------------------------------------------- -! Name: h5pcreate_class_f +! Name: h5pcreate_class_f ! ! Purpose: Create a new property list class ! -! Inputs: +! Inputs: ! parent - Property list identifier of the parent class ! Possible values include: ! H5P_ROOT_F @@ -4365,35 +4365,35 @@ ! H5P_DATASET_XFER_F ! H5P_FILE_MOUNT_F ! name - name of the class we are creating -! Outputs: +! Outputs: ! class - porperty list class identifier -! hdferr: - error code -! -! Success: 0 -! Failure: -1 +! hdferr: - error code +! +! Success: 0 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 9, 2002 +! October 9, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pcreate_class_f(parent, name, class, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: parent ! parent property list class + INTEGER(HID_T), INTENT(IN) :: parent ! parent property list class ! identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! name of property tocreate + CHARACTER(LEN=*), INTENT(IN) :: name ! name of property tocreate INTEGER(HID_T), INTENT(OUT) :: class ! property list class identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len INTERFACE INTEGER FUNCTION h5pcreate_class_c(parent, name, name_len,& - class) + class) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCREATE_CLASS_C'::h5pcreate_class_c @@ -4415,33 +4415,33 @@ ! ! Purpose: Registers a permanent property with a property list class. ! -! Inputs: -! class - property list class to register +! Inputs: +! class - property list class to register ! permanent property within ! name - name of property to register ! size - size of property in bytes -! value - default value for property in newly +! value - default value for property in newly ! created property lists -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pregister_integer(class, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier + INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register - INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value + INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value INTEGER, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4456,7 +4456,7 @@ INTEGER(HID_T), INTENT(IN) :: class CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size INTEGER, INTENT(IN) :: value END FUNCTION h5pregister_integer_c END INTERFACE @@ -4470,33 +4470,33 @@ ! ! Purpose: Registers a permanent property with a property list class. ! -! Inputs: -! class - property list class to register +! Inputs: +! class - property list class to register ! permanent property within ! name - name of property to register ! size - size of property in bytes -! value - default value for property in newly +! value - default value for property in newly ! created property lists -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pregister_real(class, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier + INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register - INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value + INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value REAL, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4511,7 +4511,7 @@ INTEGER(HID_T), INTENT(IN) :: class CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size REAL, INTENT(IN) :: value END FUNCTION h5pregister_real_c END INTERFACE @@ -4525,33 +4525,33 @@ ! ! Purpose: Registers a permanent property with a property list class. ! -! Inputs: -! class - property list class to register +! Inputs: +! class - property list class to register ! permanent property within ! name - name of property to register ! size - size of property in bytes -! value - default value for property in newly +! value - default value for property in newly ! created property lists -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pregister_char(class, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier + INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register - INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value + INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value CHARACTER(LEN=*), INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4569,7 +4569,7 @@ INTEGER(HID_T), INTENT(IN) :: class CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size CHARACTER(LEN=*), INTENT(IN) :: value INTEGER, INTENT(IN) :: value_len END FUNCTION h5pregisterc_c @@ -4585,31 +4585,31 @@ ! ! Purpose: Registers a temporary property with a property list class. ! -! Inputs: +! Inputs: ! plist - property list identifier ! name - name of property to insert ! size - size of property in bytes -! value - initial value for the property -! Outputs: -! hdferr: - error code +! value - initial value for the property +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pinsert_integer(plist, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert - INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value + INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert + INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value INTEGER, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4624,7 +4624,7 @@ INTEGER(HID_T), INTENT(IN) :: plist CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size INTEGER, INTENT(IN) :: value END FUNCTION h5pinsert_integer_c END INTERFACE @@ -4638,32 +4638,32 @@ ! ! Purpose: Registers a temporary property with a property list class. ! -! Inputs: +! Inputs: ! plist - property list identifier ! permanent property within ! name - name of property to insert ! size - size of property in bytes -! value - initial value for the property -! Outputs: -! hdferr: - error code +! value - initial value for the property +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pinsert_real(plist, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert - INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value + INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert + INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value REAL, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4678,7 +4678,7 @@ INTEGER(HID_T), INTENT(IN) :: plist CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size REAL, INTENT(IN) :: value END FUNCTION h5pinsert_real_c END INTERFACE @@ -4693,32 +4693,32 @@ ! ! Purpose: Registers a temporary property with a property list class. ! -! Inputs: +! Inputs: ! plist - property list identifier ! permanent property within ! name - name of property to insert ! size - size of property in bytes -! value - initial value for the property -! Outputs: -! hdferr: - error code +! value - initial value for the property +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! October 10, 2002 +! October 10, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pinsert_char(plist, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert - INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value + INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert + INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value CHARACTER(LEN=*), INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -4735,7 +4735,7 @@ INTEGER(HID_T), INTENT(IN) :: plist CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size CHARACTER(LEN=*), INTENT(IN) :: value INTEGER, INTENT(IN) :: value_len END FUNCTION h5pinsertc_c @@ -4747,31 +4747,31 @@ END SUBROUTINE h5pinsert_char !---------------------------------------------------------------------- -! Name: h5pset_shuffle_f +! Name: h5pset_shuffle_f ! ! Purpose: Sets shuffling filter ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 12, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_shuffle_f(prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_shuffle_c @@ -4791,34 +4791,34 @@ END SUBROUTINE h5pset_shuffle_f !---------------------------------------------------------------------- -! Name: h5pset_edc_check_f +! Name: h5pset_edc_check_f ! -! Purpose: Enables/disables error detecting +! Purpose: Enables/disables error detecting ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier ! flag - EDC flag; possible values: ! H5Z_DISABLE_EDC_F ! H5Z_ENABLE_EDC_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 13, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_edc_check_f(prp_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: flag ! Checksum filter flag INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -4832,7 +4832,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_EDC_CHECK_C'::h5pset_edc_check_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: flag + INTEGER, INTENT(IN) :: flag END FUNCTION h5pset_edc_check_c END INTERFACE hdferr = h5pset_edc_check_c(prp_id, flag) @@ -4840,31 +4840,31 @@ END SUBROUTINE h5pset_edc_check_f !---------------------------------------------------------------------- -! Name: h5pget_edc_check_f +! Name: h5pget_edc_check_f ! -! Purpose: Queries error detecting +! Purpose: Queries error detecting ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 13, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_edc_check_f(prp_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset transfer property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset transfer property list identifier INTEGER, INTENT(OUT) :: flag ! Checksum filter flag ! May have one of the following values: ! H5Z_ERROR_EDC_F @@ -4890,32 +4890,32 @@ END SUBROUTINE h5pget_edc_check_f !---------------------------------------------------------------------- -! Name: h5pset_fletcher32_f +! Name: h5pset_fletcher32_f ! -! Purpose: Sets Fletcher32 checksum of EDC for a dataset creation +! Purpose: Sets Fletcher32 checksum of EDC for a dataset creation ! property list. ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 13, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fletcher32_f(prp_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5pset_fletcher32_c @@ -4935,32 +4935,32 @@ END SUBROUTINE h5pset_fletcher32_f !---------------------------------------------------------------------- -! Name: h5pset_family_offset_f +! Name: h5pset_family_offset_f ! ! Purpose: Sets offset for family file driver. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier ! offset - file offset -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! 19 March 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_family_offset_f(prp_id, offset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER(HSIZE_T), INTENT(IN) :: offset ! Offset in bytes INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -4974,7 +4974,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAMILY_OFFSET_C'::h5pset_family_offset_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER(HSIZE_T), INTENT(IN) :: offset + INTEGER(HSIZE_T), INTENT(IN) :: offset END FUNCTION h5pset_family_offset_c END INTERFACE hdferr = h5pset_family_offset_c(prp_id, offset) @@ -4982,35 +4982,35 @@ END SUBROUTINE h5pset_family_offset_f !---------------------------------------------------------------------- -! Name: h5pset_fapl_multi_l +! Name: h5pset_fapl_multi_l ! -! Purpose: Sets up use of the multi-file driver. +! Purpose: Sets up use of the multi-file driver. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier ! mem_map - mapping array ! memb_fapl - property list for each memory usage type ! memb_name - names of member file -! relax - flag -! Outputs: -! hdferr: - error code +! relax - flag +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! 20 March 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_multi_l(prp_id, memb_map, memb_fapl, memb_name, memb_addr, relax, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_map INTEGER(HID_T), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_fapl CHARACTER(LEN=*), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_name @@ -5034,7 +5034,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_MULTI_C'::h5pset_fapl_multi_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: memb_name - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_map INTEGER(HID_T), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_fapl CHARACTER(LEN=*), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(IN) :: memb_name @@ -5051,36 +5051,36 @@ enddo flag = 0 if (relax) flag = 1 - hdferr = h5pset_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, maxlen, memb_addr, flag) + hdferr = h5pset_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, maxlen, memb_addr, flag) END SUBROUTINE h5pset_fapl_multi_l !---------------------------------------------------------------------- -! Name: h5pset_fapl_multi_s +! Name: h5pset_fapl_multi_s ! -! Purpose: Sets up use of the multi-file driver. +! Purpose: Sets up use of the multi-file driver. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! relax - flag -! Outputs: -! hdferr: - error code +! relax - flag +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! 31 March 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_multi_s(prp_id, relax, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier LOGICAL, INTENT(IN) :: relax INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: flag @@ -5089,61 +5089,61 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pset_fapl_multi_sc(prp_id,flag) + INTEGER FUNCTION h5pset_fapl_multi_sc(prp_id,flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_MULTI_SC'::h5pset_fapl_multi_sc !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, INTENT(IN) :: flag END FUNCTION h5pset_fapl_multi_sc END INTERFACE flag = 0 if (relax) flag = 1 - hdferr = h5pset_fapl_multi_sc(prp_id, flag) + hdferr = h5pset_fapl_multi_sc(prp_id, flag) END SUBROUTINE h5pset_fapl_multi_s !---------------------------------------------------------------------- -! Name: h5pget_fapl_multi_f +! Name: h5pget_fapl_multi_f ! -! Purpose: Sets up use of the multi-file driver. +! Purpose: Sets up use of the multi-file driver. ! -! Inputs: +! Inputs: ! prp_id - file creation property list identifier -! Outputs: +! Outputs: ! mem_map - mapping array ! memb_fapl - property list for each memory usage type ! memb_name - names of member file -! relax - flag -! hdferr: - error code +! relax - flag +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! maxlen_out - maximum length for memb_name array element +! maxlen_out - maximum length for memb_name array element ! ! Programmer: Elena Pourmal ! 24 March 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fapl_multi_f(prp_id, memb_map, memb_fapl, memb_name, memb_addr, relax, hdferr, maxlen_out) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(OUT) :: memb_map INTEGER(HID_T), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(OUT) :: memb_fapl CHARACTER(LEN=*), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(OUT) :: memb_name !INTEGER(HADDR_T), DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(OUT) :: memb_addr REAL, DIMENSION(0:H5FD_MEM_NTYPES_F-1), INTENT(OUT) :: memb_addr - INTEGER, OPTIONAL, INTENT(OUT) :: maxlen_out + INTEGER, OPTIONAL, INTENT(OUT) :: maxlen_out LOGICAL, INTENT(OUT) :: relax INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: lenm INTEGER :: maxlen - INTEGER :: c_maxlen_out + INTEGER :: c_maxlen_out INTEGER :: flag INTEGER :: i @@ -5158,14 +5158,14 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_MULTI_C'::h5pget_fapl_multi_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: memb_name - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, DIMENSION(H5FD_MEM_NTYPES_F), INTENT(OUT) :: memb_map INTEGER(HID_T), DIMENSION(H5FD_MEM_NTYPES_F), INTENT(OUT) :: memb_fapl CHARACTER(LEN=*), DIMENSION(H5FD_MEM_NTYPES_F), INTENT(OUT) :: memb_name REAL, DIMENSION(H5FD_MEM_NTYPES_F), INTENT(OUT) :: memb_addr INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: lenm INTEGER :: maxlen - INTEGER :: c_maxlen_out + INTEGER :: c_maxlen_out INTEGER, INTENT(OUT) :: flag END FUNCTION h5pget_fapl_multi_c END INTERFACE @@ -5173,40 +5173,40 @@ do i=0, H5FD_MEM_NTYPES_F-1 lenm(i) = LEN_TRIM(memb_name(i)) enddo - hdferr = h5pget_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, maxlen, memb_addr, flag, c_maxlen_out) + hdferr = h5pget_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, maxlen, memb_addr, flag, c_maxlen_out) relax = .TRUE. - if(flag .eq. 0) relax = .FALSE. + if(flag .eq. 0) relax = .FALSE. if(present(maxlen_out)) maxlen_out = c_maxlen_out END SUBROUTINE h5pget_fapl_multi_f !---------------------------------------------------------------------- -! Name: h5pset_szip_f +! Name: h5pset_szip_f ! ! Purpose: Sets up use of szip compression ! -! Inputs: +! Inputs: ! prp_id - dataset creation property list identifier ! options_mask ! pixels_per_block - szip parameters -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! April 10 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5pset_szip_f(prp_id, options_mask, pixels_per_block, hdferr) + SUBROUTINE h5pset_szip_f(prp_id, options_mask, pixels_per_block, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset creation property - ! list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset creation property + ! list identifier INTEGER, INTENT(IN) :: options_mask INTEGER, INTENT(IN) :: pixels_per_block INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -5215,50 +5215,50 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pset_szip_c(prp_id, options_mask, pixels_per_block) + INTEGER FUNCTION h5pset_szip_c(prp_id, options_mask, pixels_per_block) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SZIP_C'::h5pset_szip_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, INTENT(IN) :: options_mask INTEGER, INTENT(IN) :: pixels_per_block END FUNCTION h5pset_szip_c END INTERFACE - hdferr = h5pset_szip_c(prp_id, options_mask, pixels_per_block) + hdferr = h5pset_szip_c(prp_id, options_mask, pixels_per_block) END SUBROUTINE h5pset_szip_f !---------------------------------------------------------------------- -! Name: h5pall_filters_avail_f +! Name: h5pall_filters_avail_f ! ! Purpose: Checks if all filters set in the dataset creation ! property list are available ! -! Inputs: +! Inputs: ! prp_id - data creation property list identifier -! Outputs: +! Outputs: ! flag - .TRUE. if all filters are available ! .FALSE. otherwise -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! April 10 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pall_filters_avail_f(prp_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset creation property - ! list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Dataset creation property + ! list identifier LOGICAL, INTENT(OUT) :: flag INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: status @@ -5267,30 +5267,30 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pall_filters_avail_c(prp_id, status) + INTEGER FUNCTION h5pall_filters_avail_c(prp_id, status) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PALL_FILTERS_AVAIL_C'::h5pall_filters_avail_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier INTEGER, INTENT(OUT) :: status END FUNCTION h5pall_filters_avail_c END INTERFACE flag = .TRUE. - hdferr = h5pall_filters_avail_c(prp_id, status) + hdferr = h5pall_filters_avail_c(prp_id, status) if (status .eq. 0 ) flag = .FALSE. END SUBROUTINE h5pall_filters_avail_f !---------------------------------------------------------------------- -! Name: h5pget_filter_by_id_f +! Name: h5pget_filter_by_id_f ! ! Purpose: Returns information about a filter in a pipeline ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier -! Outputs: +! Outputs: ! filter_id - filter identifier ! flags - bit vector specifying certain general ! properties of the filter @@ -5298,23 +5298,23 @@ ! cd_values - auxiliary data for the filter ! namelen - number of characters in the name buffer ! name - buffer to retrieve filter name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! April 10 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_filter_by_id_f(prp_id, filter_id, flags, cd_nelmts, cd_values, namelen, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: filter_id ! Filter identifier INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts !Number of elements in cd_values. @@ -5339,50 +5339,50 @@ !DEC$ENDIF !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: filter_id + INTEGER, INTENT(IN) :: filter_id INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values - INTEGER, INTENT(OUT) :: flags + INTEGER, INTENT(OUT) :: flags INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts INTEGER(SIZE_T), INTENT(IN) :: namelen CHARACTER(LEN=*), INTENT(OUT) :: name END FUNCTION h5pget_filter_by_id_c END INTERFACE - hdferr = h5pget_filter_by_id_c(prp_id, filter_id, flags, cd_nelmts, & + hdferr = h5pget_filter_by_id_c(prp_id, filter_id, flags, cd_nelmts, & cd_values, namelen, name) END SUBROUTINE h5pget_filter_by_id_f !---------------------------------------------------------------------- -! Name: h5pmodify_filter_f +! Name: h5pmodify_filter_f ! -! Purpose: Adds a filter to the filter pipeline. +! Purpose: Adds a filter to the filter pipeline. ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier ! filter - filter to be modified ! flags - bit vector specifying certain general ! properties of the filter ! cd_nelmts - number of elements in cd_values ! cd_values - auxiliary data for the filter -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! April 10 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pmodify_filter_f(prp_id, filter, flags, cd_nelmts, cd_values, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(IN) :: filter !Filter to be modified INTEGER, INTENT(IN) :: flags !Bit vector specifying certain general !properties of the filter. @@ -5400,11 +5400,11 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PMODIFY_FILTER_C'::h5pmodify_filter_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: filter - INTEGER, INTENT(IN) :: flags - INTEGER(SIZE_T), INTENT(IN) :: cd_nelmts - INTEGER, DIMENSION(*), INTENT(IN) :: cd_values + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER, INTENT(IN) :: filter + INTEGER, INTENT(IN) :: flags + INTEGER(SIZE_T), INTENT(IN) :: cd_nelmts + INTEGER, DIMENSION(*), INTENT(IN) :: cd_values END FUNCTION h5pmodify_filter_c END INTERFACE @@ -5412,27 +5412,27 @@ END SUBROUTINE h5pmodify_filter_f !---------------------------------------------------------------------- -! Name: h5premove_filter_f +! Name: h5premove_filter_f ! -! Purpose: Delete one or more filters from the filter pipeline. +! Purpose: Delete one or more filters from the filter pipeline. ! -! Inputs: -! prp_id - data creation or transfer property list +! Inputs: +! prp_id - data creation or transfer property list ! identifier ! filter - filter to be removed -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Quincey Koziol ! January 27 2004 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5premove_filter_f(prp_id, filter, hdferr) @@ -5451,8 +5451,8 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREMOVE_FILTER_C'::h5premove_filter_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: prp_id - INTEGER, INTENT(IN) :: filter + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER, INTENT(IN) :: filter END FUNCTION h5premove_filter_c END INTERFACE @@ -5460,29 +5460,29 @@ END SUBROUTINE h5premove_filter_f !---------------------------------------------------------------------- -! Name: H5Pget_attr_phase_change_f +! Name: H5Pget_attr_phase_change_f ! -! Purpose: Retrieves attribute storage phase change thresholds +! Purpose: Retrieves attribute storage phase change thresholds ! -! Inputs: +! Inputs: ! ocpl_id - Object (dataset or group) creation property list identifier -! Outputs: +! Outputs: ! max_compact - Maximum number of attributes to be stored in compact storage ! (Default: 8) ! min_dense - Minimum number of attributes to be stored in dense storage ! (Default: 6) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) @@ -5505,34 +5505,34 @@ INTEGER(HID_T), INTENT(IN) :: ocpl_id INTEGER, INTENT(OUT) :: max_compact INTEGER, INTENT(OUT) :: min_dense - + END FUNCTION h5pget_attr_phase_change_c END INTERFACE - + hdferr = h5pget_attr_phase_change_c(ocpl_id, max_compact, min_dense) END SUBROUTINE h5pget_attr_phase_change_f !---------------------------------------------------------------------- -! Name: H5Pset_attr_creation_order_f +! Name: H5Pset_attr_creation_order_f ! ! Purpose: Sets tracking and indexing of attribute creation order ! -! Inputs: +! Inputs: ! ocpl_id - Object creation property list identifier ! crt_order_flags - Flags specifying whether to track and index attribute creation order ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_attr_creation_order_f(ocpl_id, crt_order_flags , hdferr) @@ -5552,41 +5552,41 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: ocpl_id INTEGER, INTENT(IN) :: crt_order_flags - + END FUNCTION H5Pset_attr_creation_order_c END INTERFACE - + hdferr = H5Pset_attr_creation_order_c(ocpl_id, crt_order_flags) END SUBROUTINE h5pset_attr_creation_order_f - + !---------------------------------------------------------------------- -! Name: H5Pset_shared_mesg_nindexes_f +! Name: H5Pset_shared_mesg_nindexes_f ! -! Purpose: Sets number of shared object header message indexes +! Purpose: Sets number of shared object header message indexes ! -! Inputs: +! Inputs: ! plist_id - file creation property list ! nindexes - Number of shared object header message indexes to be available in files created with this property list ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_shared_mesg_nindexes_f( plist_id, nindexes, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: plist_id ! file creation property list - INTEGER, INTENT(IN) :: nindexes ! Number of shared object header message indexes + INTEGER, INTENT(IN) :: nindexes ! Number of shared object header message indexes ! available in files created WITH this property list INTEGER, INTENT(OUT) :: hdferr ! Error code ! @@ -5598,41 +5598,41 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SHARED_MESG_NINDEXES_C'::h5pset_shared_mesg_nindexes_c !DEC$ENDIF - + INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(IN) :: nindexes - + END FUNCTION H5pset_shared_mesg_nindexes_c END INTERFACE - - hdferr = h5pset_shared_mesg_nindexes_c(plist_id, nindexes) + + hdferr = h5pset_shared_mesg_nindexes_c(plist_id, nindexes) END SUBROUTINE h5pset_shared_mesg_nindexes_f - + !---------------------------------------------------------------------- ! Name: H5Pset_shared_mesg_index_f ! ! Purpose: Configures the specified shared object header message index ! -! Inputs: +! Inputs: ! fcpl_id - File creation property list identifier. ! index_num - Index being configured. ! mesg_type_flags - Types of messages that should be stored in this index. ! min_mesg_size - Minimum message size. ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_shared_mesg_index_f(fcpl_id, index_num, mesg_type_flags, min_mesg_size, hdferr) @@ -5652,19 +5652,19 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SHARED_MESG_INDEX_C'::h5pset_shared_mesg_index_c !DEC$ENDIF - - INTEGER(HID_T), INTENT(IN) :: fcpl_id + + INTEGER(HID_T), INTENT(IN) :: fcpl_id INTEGER, INTENT(IN) :: index_num INTEGER, INTENT(IN) :: mesg_type_flags INTEGER, INTENT(IN) :: min_mesg_size - + END FUNCTION H5pset_shared_mesg_index_c END INTERFACE - - hdferr = h5pset_shared_mesg_index_c(fcpl_id, index_num, mesg_type_flags, min_mesg_size) + + hdferr = h5pset_shared_mesg_index_c(fcpl_id, index_num, mesg_type_flags, min_mesg_size) END SUBROUTINE h5pset_shared_mesg_index_f - + !---------------------------------------------------------------------- ! Name: H5Pget_attr_creation_order_f ! @@ -5675,24 +5675,24 @@ ! ! Outputs: ! crt_order_flags - Flags specifying whether to track and index attribute creation order -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_attr_creation_order_f(ocpl_id, crt_order_flags, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: ocpl_id ! Object (group or dataset) creation property list identifier - INTEGER, INTENT(OUT) :: crt_order_flags ! Flags specifying whether to track and index attribute creation order + INTEGER(HID_T), INTENT(IN) :: ocpl_id ! Object (group or dataset) creation property list identifier + INTEGER, INTENT(OUT) :: crt_order_flags ! Flags specifying whether to track and index attribute creation order INTEGER, INTENT(OUT) :: hdferr ! Error code ! ! MS FORTRAN needs explicit interface for C functions called here. @@ -5706,7 +5706,7 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: ocpl_id INTEGER, INTENT(OUT) :: crt_order_flags - + END FUNCTION H5pget_attr_creation_order_c END INTERFACE @@ -5725,18 +5725,18 @@ ! high - The latest version of the library that will be used for writing objects. ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 18, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_libver_bounds_f(fapl_id, low, high, hdferr) @@ -5763,7 +5763,7 @@ INTEGER(HID_T), INTENT(IN) :: fapl_id INTEGER, INTENT(IN) :: low INTEGER, INTENT(IN) :: high - + END FUNCTION H5pset_libver_bounds_c END INTERFACE @@ -5772,7 +5772,7 @@ END SUBROUTINE h5pset_libver_bounds_f !---------------------------------------------------------------------- -! Name: H5Pset_link_creation_order_f +! Name: H5Pset_link_creation_order_f ! ! Purpose: Sets creation order tracking and indexing for links in a group. ! @@ -5781,18 +5781,18 @@ ! crt_order_flags - Creation order flag(s) ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 18, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_link_creation_order_f(gcpl_id, crt_order_flags, hdferr) @@ -5812,7 +5812,7 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(IN) :: crt_order_flags - + END FUNCTION H5pset_link_creation_order_c END INTERFACE @@ -5825,23 +5825,23 @@ ! ! Purpose: Queries the settings for conversion between compact and dense groups. ! -! Inputs: +! Inputs: ! gcpl_id - Group creation property list identifier -! Outputs: +! Outputs: ! max_compact - Maximum number of attributes to be stored in compact storage ! min_dense - Minimum number of attributes to be stored in dense storage -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 20, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_link_phase_change_f(gcpl_id, max_compact, min_dense, hdferr) @@ -5862,7 +5862,7 @@ INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(OUT) :: max_compact INTEGER, INTENT(OUT) :: min_dense - + END FUNCTION h5pget_link_phase_change_c END INTERFACE @@ -5870,33 +5870,33 @@ END SUBROUTINE h5pget_link_phase_change_f !---------------------------------------------------------------------- -! Name: H5Pget_obj_track_times_f +! Name: H5Pget_obj_track_times_f ! ! Purpose: Returns whether times are tracked for an object. ! -! Inputs: +! Inputs: ! plist_id - property list id ! flag - object timestamp setting ! .TRUE.,.FALSE. ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 22, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_obj_track_times_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset creation property - ! list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset creation property + ! list identifier LOGICAL, INTENT(OUT) :: flag ! Object timestamp setting INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: status @@ -5904,27 +5904,27 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pget_obj_track_times_c(plist_id, status) + INTEGER FUNCTION h5pget_obj_track_times_c(plist_id, status) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_OBJ_TRACK_TIMES_C'::h5pget_obj_track_times_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier INTEGER, INTENT(OUT) :: status END FUNCTION h5pget_obj_track_times_c END INTERFACE flag = .TRUE. - hdferr = h5pget_obj_track_times_c(plist_id, status) + hdferr = h5pget_obj_track_times_c(plist_id, status) IF(status.EQ.0) flag = .FALSE. END SUBROUTINE h5pget_obj_track_times_f !---------------------------------------------------------------------- -! Name: H5Pset_obj_track_times_f +! Name: H5Pset_obj_track_times_f ! ! Purpose: Set whether the birth, access, modification & change times for ! an object are stored. -! +! ! Birth time is the time the object was created. Access time is ! the last time that metadata or raw data was read from this ! object. Modification time is the last time the data for @@ -5933,34 +5933,34 @@ ! time is the last time the metadata for this object was written ! (adding/modifying/deleting an attribute on an object, extending ! the size of a dataset, etc). -! +! ! If these times are not tracked, they will be reported as ! 12:00 AM UDT, Jan. 1, 1970 (i.e. 0 seconds past the UNIX ! epoch) when queried. ! -! Inputs: +! Inputs: ! plist_id - property list id ! flag - object timestamp setting ! .TRUE.,.FALSE. ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 22, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_obj_track_times_f(plist_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset creation property - ! list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! Dataset creation property + ! list identifier LOGICAL, INTENT(IN) :: flag ! Object timestamp setting INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: status @@ -5968,12 +5968,12 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pset_obj_track_times_c(plist_id, status) + INTEGER FUNCTION h5pset_obj_track_times_c(plist_id, status) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_OBJ_TRACK_TIMES_C'::h5pset_obj_track_times_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier + INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier INTEGER, INTENT(IN) :: status END FUNCTION h5pset_obj_track_times_c END INTERFACE @@ -5990,38 +5990,38 @@ ! ! Purpose: Specifies in property list whether to create missing intermediate groups. ! -! Inputs: +! Inputs: ! lcpl_id - Link creation property list identifier -! crt_intermed_group - crt_intermed_group specifying whether -! to create intermediate groups upon the creation +! crt_intermed_group - crt_intermed_group specifying whether +! to create intermediate groups upon the creation ! of an object ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! February 22, 2008 ! -! Modifications: +! Modifications: ! ! Comment: The long subroutine name (>31) on older f90 compilers causes problems -! so had to shorten the name +! so had to shorten the name !-------------------------------------------------------------------------------------- SUBROUTINE h5pset_create_inter_group_f(lcpl_id, crt_intermed_group, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: lcpl_id ! Link creation property list identifier - INTEGER, INTENT(IN) :: crt_intermed_group ! specifying whether to create intermediate groups + INTEGER, INTENT(IN) :: crt_intermed_group ! specifying whether to create intermediate groups ! upon the creation of an object INTEGER, INTENT(OUT) :: hdferr ! Error code ! ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5pset_create_inter_group_c(lcpl_id, crt_intermed_group) + INTEGER FUNCTION h5pset_create_inter_group_c(lcpl_id, crt_intermed_group) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CREATE_INTER_GROUP_C'::h5pset_create_inter_group_c @@ -6045,18 +6045,18 @@ ! ! Outputs: ! crt_order_flags - Creation order flag(s) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 3, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_link_creation_order_f(gcpl_id, crt_order_flags, hdferr) @@ -6076,7 +6076,7 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(OUT) :: crt_order_flags - + END FUNCTION H5pget_link_creation_order_c END INTERFACE @@ -6085,7 +6085,7 @@ END SUBROUTINE h5pget_link_creation_order_f !---------------------------------------------------------------------- -! Name: H5Pset_char_encoding +! Name: H5Pset_char_encoding ! ! Purpose: Sets the character encoding used to encode a string. ! @@ -6096,24 +6096,24 @@ ! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 3, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_char_encoding_f(plist_id, encoding, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: plist_id ! Property list identifier - + INTEGER, INTENT(IN) :: encoding ! String encoding character set: ! H5T_CSET_ASCII_F -> US ASCII ! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding @@ -6130,7 +6130,7 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(IN) :: encoding - + END FUNCTION H5pset_char_encoding_c END INTERFACE @@ -6139,7 +6139,7 @@ END SUBROUTINE h5pset_char_encoding_f !---------------------------------------------------------------------- -! Name: H5Pget_char_encoding +! Name: H5Pget_char_encoding ! ! Purpose: Retrieves the character encoding used to create a string ! @@ -6150,24 +6150,24 @@ ! encoding - Valid values for encoding are: ! H5T_CSET_ASCII_F -> US ASCII ! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 3, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_char_encoding_f(plist_id, encoding, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: plist_id ! Property list identifier - + INTEGER, INTENT(OUT) :: encoding ! Valid values for encoding are: ! H5T_CSET_ASCII_F -> US ASCII ! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding @@ -6184,7 +6184,7 @@ !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: plist_id INTEGER, INTENT(OUT) :: encoding - + END FUNCTION H5pget_char_encoding_c END INTERFACE @@ -6193,17 +6193,17 @@ END SUBROUTINE h5pget_char_encoding_f !---------------------------------------------------------------------- -! Name: h5pset_copy_object_f +! Name: h5pset_copy_object_f ! ! Purpose: Sets properties to be used when an object is copied. ! -! Inputs: +! Inputs: ! ocp_plist_id - Object copy property list identifier ! copy_options - Copy option(s) to be set -! Outputs: -! hdferr - error code +! Outputs: +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -6212,7 +6212,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_copy_object_f(ocp_plist_id, copy_options, hdferr) @@ -6220,7 +6220,7 @@ INTEGER(HID_T), INTENT(IN) :: ocp_plist_id ! Object copy property list identifier INTEGER, INTENT(IN) :: copy_options ! Copy option(s) to be set, valid options are: ! H5O_COPY_SHALLOW_HIERARCHY_F - ! H5O_COPY_EXPAND_SOFT_LINK_F + ! H5O_COPY_EXPAND_SOFT_LINK_F ! H5O_COPY_EXPAND_EXT_LINK_F ! H5O_COPY_EXPAND_REFERENCE_F ! H5O_COPY_WITHOUT_ATTR_FLAG_F @@ -6239,21 +6239,21 @@ INTEGER, INTENT(IN) :: copy_options END FUNCTION h5pset_copy_object_c END INTERFACE - hdferr = h5pset_copy_object_c(ocp_plist_id, copy_options) + hdferr = h5pset_copy_object_c(ocp_plist_id, copy_options) END SUBROUTINE h5pset_copy_object_f !---------------------------------------------------------------------- -! Name: h5pget_copy_object_f +! Name: h5pget_copy_object_f ! ! Purpose: Retrieves the properties to be used when an object is copied. ! -! Inputs: +! Inputs: ! ocp_plist_id - Object copy property list identifier -! Outputs: +! Outputs: ! copy_options - Copy option(s) to be get -! hdferr - error code +! hdferr - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -6262,7 +6262,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_copy_object_f(ocp_plist_id, copy_options, hdferr) @@ -6270,7 +6270,7 @@ INTEGER(HID_T), INTENT(IN) :: ocp_plist_id ! Object copy property list identifier INTEGER, INTENT(OUT) :: copy_options ! valid copy options returned are: ! H5O_COPY_SHALLOW_HIERARCHY_F - ! H5O_COPY_EXPAND_SOFT_LINK_F + ! H5O_COPY_EXPAND_SOFT_LINK_F ! H5O_COPY_EXPAND_EXT_LINK_F ! H5O_COPY_EXPAND_REFERENCE_F ! H5O_COPY_WITHOUT_ATTR_FLAG_F @@ -6288,22 +6288,22 @@ INTEGER, INTENT(OUT) :: copy_options END FUNCTION h5pget_copy_object_c END INTERFACE - hdferr = h5pget_copy_object_c(ocp_plist_id, copy_options) + hdferr = h5pget_copy_object_c(ocp_plist_id, copy_options) END SUBROUTINE h5pget_copy_object_f !---------------------------------------------------------------------- -! Name: h5pget_data_transform_f +! Name: h5pget_data_transform_f ! ! Purpose: Retrieves a data transform expression. ! -! Inputs: +! Inputs: ! plist_id - Identifier of the property list or class -! Outputs: +! Outputs: ! expression - buffer to hold transform expression ! hdferr - error code ! Success: Actual lenght of the expression -! If provided buffer "expression" is -! smaller, than expression will be +! If provided buffer "expression" is +! smaller, than expression will be ! truncated to fit into ! provided user buffer ! Failure: -1 @@ -6328,7 +6328,7 @@ INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: expression_len INTEGER(SIZE_T) :: size_default - + ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -6339,8 +6339,8 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_DATA_TRANSFORM_C'::h5pget_data_transform_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: expression - INTEGER(HID_T), INTENT(IN) :: plist_id - CHARACTER(LEN=*), INTENT(OUT) :: expression + INTEGER(HID_T), INTENT(IN) :: plist_id + CHARACTER(LEN=*), INTENT(OUT) :: expression INTEGER(SIZE_T) :: size_default INTEGER :: expression_len END FUNCTION h5pget_data_transform_c @@ -6356,14 +6356,14 @@ END SUBROUTINE h5pget_data_transform_f !---------------------------------------------------------------------- -! Name: h5pset_data_transform_f +! Name: h5pset_data_transform_f ! ! Purpose: Sets a data transform expression. ! -! Inputs: -! plist_id - Identifier of the property list or class +! Inputs: +! plist_id - Identifier of the property list or class ! expression - buffer to hold transform expression -! Outputs: +! Outputs: ! hdferr - error code ! Success: 0 ! Failure: -1 @@ -6375,7 +6375,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_data_transform_f(plist_id, expression, hdferr) @@ -6394,7 +6394,7 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_DATA_TRANSFORM_C'::h5pset_data_transform_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: expression - INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(IN) :: plist_id CHARACTER(LEN=*), INTENT(IN) :: expression INTEGER :: expression_len END FUNCTION h5pset_data_transform_c @@ -6406,11 +6406,11 @@ END SUBROUTINE h5pset_data_transform_f !---------------------------------------------------------------------- -! Name: H5Pget_local_heap_size_hint_f +! Name: H5Pget_local_heap_size_hint_f ! ! Purpose: Queries the local heap size hint for original-style groups. ! -! Inputs: +! Inputs: ! gcpl_id - Group creation property list identifier ! Outputs: ! size_hint - Hint for size of local heap @@ -6425,7 +6425,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_local_heap_size_hint_f(gcpl_id, size_hint, hdferr) @@ -6452,13 +6452,13 @@ END SUBROUTINE h5pget_local_heap_size_hint_f !---------------------------------------------------------------------- -! Name: H5Pget_est_link_info_f +! Name: H5Pget_est_link_info_f ! ! Purpose: Queries data required to estimate required local heap or object header size. ! -! Inputs: +! Inputs: ! gcpl_id - Group creation property list identifier -! Outputs: +! Outputs: ! est_num_entries - Estimated number of links to be inserted into group ! est_name_len - Estimated average length of link names ! hdferr - error code @@ -6472,12 +6472,12 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_est_link_info_f(gcpl_id, est_num_entries, est_name_len, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: gcpl_id ! Group creation property list identifier + INTEGER(HID_T), INTENT(IN) :: gcpl_id ! Group creation property list identifier INTEGER, INTENT(OUT) :: est_num_entries ! Estimated number of links to be inserted into group INTEGER, INTENT(OUT) :: est_name_len ! Estimated average length of link names INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -6490,7 +6490,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EST_LINK_INFO_C'::h5pget_est_link_info_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: gcpl_id + INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(OUT) :: est_num_entries INTEGER, INTENT(OUT) :: est_name_len END FUNCTION h5pget_est_link_info_c @@ -6501,11 +6501,11 @@ END SUBROUTINE h5pget_est_link_info_f !---------------------------------------------------------------------- -! Name: H5Pset_local_heap_size_hint_f +! Name: H5Pset_local_heap_size_hint_f ! ! Purpose: Sets the local heap size hint for original-style groups. ! -! Inputs: +! Inputs: ! gcpl_id - Group creation property list identifier ! size_hint - Hint for size of local heap ! Outputs: @@ -6520,7 +6520,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_local_heap_size_hint_f(gcpl_id, size_hint, hdferr) @@ -6547,12 +6547,12 @@ END SUBROUTINE h5pset_local_heap_size_hint_f !---------------------------------------------------------------------- -! Name: h5pset_est_link_info_f +! Name: h5pset_est_link_info_f ! ! Purpose: Sets estimated number of links and length of link names in a group. ! -! Inputs: -! gcpl_id - Group creation property list identifier +! Inputs: +! gcpl_id - Group creation property list identifier ! est_num_entries - Estimated number of links to be inserted into group ! est_name_len - Estimated average length of link names ! Outputs: @@ -6567,12 +6567,12 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_est_link_info_f(gcpl_id, est_num_entries, est_name_len, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: gcpl_id ! Group creation property list identifier + INTEGER(HID_T), INTENT(IN) :: gcpl_id ! Group creation property list identifier INTEGER, INTENT(IN) :: est_num_entries ! Estimated number of links to be inserted into group INTEGER, INTENT(IN) :: est_name_len ! Estimated average length of link names INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -6585,7 +6585,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_EST_LINK_INFO_C'::h5pset_est_link_info_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: gcpl_id + INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(IN) :: est_num_entries INTEGER, INTENT(IN) :: est_name_len END FUNCTION h5pset_est_link_info_c @@ -6600,23 +6600,23 @@ ! ! Purpose: Sets the parameters for conversion between compact and dense groups. ! -! Inputs: -! gcpl_id - Group creation property list identifier +! Inputs: +! gcpl_id - Group creation property list identifier ! max_compact - Maximum number of attributes to be stored in compact storage ! min_dense - Minimum number of attributes to be stored in dense storage ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 21, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_link_phase_change_f(gcpl_id, max_compact, min_dense, hdferr) @@ -6637,7 +6637,7 @@ INTEGER(HID_T), INTENT(IN) :: gcpl_id INTEGER, INTENT(IN) :: max_compact INTEGER, INTENT(IN) :: min_dense - + END FUNCTION h5pset_link_phase_change_c END INTERFACE @@ -6649,28 +6649,28 @@ ! ! Purpose: Sets up use of the direct I/O driver. ! -! Inputs: +! Inputs: ! fapl_id - File access property list identifier ! alignment - Required memory alignment boundary ! block_size - File system block size ! cbuf_size - Copy buffer size ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 21, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_fapl_direct_f(fapl_id, alignment, block_size, cbuf_size, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fapl_id ! File access property list identifier INTEGER(SIZE_T), INTENT(IN) :: alignment ! Required memory alignment boundary! INTEGER(SIZE_T), INTENT(IN) :: block_size ! File system block size @@ -6685,7 +6685,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_DIRECT_C'::h5pset_fapl_direct_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: fapl_id + INTEGER(HID_T), INTENT(IN) :: fapl_id INTEGER(SIZE_T), INTENT(IN) :: alignment INTEGER(SIZE_T), INTENT(IN) :: block_size INTEGER(SIZE_T), INTENT(IN) :: cbuf_size @@ -6700,28 +6700,28 @@ ! ! Purpose: Gets up use of the direct I/O driver. ! -! Inputs: +! Inputs: ! fapl_id - File access property list identifier ! Outputs: ! alignment - Required memory alignment boundary ! block_size - File system block size ! cbuf_size - Copy buffer size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! March 21, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_fapl_direct_f(fapl_id, alignment, block_size, cbuf_size, hdferr) - IMPLICIT NONE + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fapl_id ! File access property list identifier INTEGER(SIZE_T), INTENT(OUT) :: alignment ! Required memory alignment boundary! INTEGER(SIZE_T), INTENT(OUT) :: block_size ! File system block size @@ -6736,7 +6736,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_DIRECT_C'::h5pget_fapl_direct_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: fapl_id + INTEGER(HID_T), INTENT(IN) :: fapl_id INTEGER(SIZE_T), INTENT(OUT) :: alignment INTEGER(SIZE_T), INTENT(OUT) :: block_size INTEGER(SIZE_T), INTENT(OUT) :: cbuf_size @@ -6747,29 +6747,29 @@ END SUBROUTINE h5pget_fapl_direct_f !---------------------------------------------------------------------- -! Name: H5Pset_attr_phase_change_f +! Name: H5Pset_attr_phase_change_f ! ! Purpose: Sets attribute storage phase change thresholds. ! -! Inputs: +! Inputs: ! ocpl_id - Object (dataset or group) creation property list identifier -! Outputs: +! Outputs: ! max_compact - Maximum number of attributes to be stored in compact storage ! (Default: 8) ! min_dense - Minimum number of attributes to be stored in dense storage ! (Default: 6) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! January, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) @@ -6792,21 +6792,21 @@ INTEGER(HID_T), INTENT(IN) :: ocpl_id INTEGER, INTENT(IN) :: max_compact INTEGER, INTENT(IN) :: min_dense - + END FUNCTION h5pset_attr_phase_change_c END INTERFACE - + hdferr = h5pset_attr_phase_change_c(ocpl_id, max_compact, min_dense) END SUBROUTINE h5pset_attr_phase_change_f !---------------------------------------------------------------------- -! Name: H5Pset_nbit_f +! Name: H5Pset_nbit_f ! ! Purpose: Sets up the use of the N-Bit filter. ! -! Inputs: +! Inputs: ! plist_id - Dataset creation property list identifier. ! Outputs: ! hdferr - error code @@ -6820,7 +6820,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_nbit_f(plist_id, hdferr) @@ -6845,11 +6845,11 @@ END SUBROUTINE h5pset_nbit_f !---------------------------------------------------------------------- -! Name: h5pset_scaleoffset_f +! Name: h5pset_scaleoffset_f ! ! Purpose: Sets up the use of the Scale-Offset filter. ! -! Inputs: +! Inputs: ! plist_id - Dataset creation property list identifier. ! scale_type - Flag indicating compression method. ! scale_factor - Parameter related to scale. @@ -6865,7 +6865,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_scaleoffset_f(plist_id, scale_type, scale_factor, hdferr) @@ -6894,11 +6894,11 @@ END SUBROUTINE h5pset_scaleoffset_f !---------------------------------------------------------------------- -! Name: h5pset_nlinks_f +! Name: h5pset_nlinks_f ! ! Purpose: Sets maximum number of soft or user-defined link traversals. ! -! Inputs: +! Inputs: ! lapl_id - File access property list identifier ! nlinks - Maximum number of links to traverse ! @@ -6914,7 +6914,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_nlinks_f(lapl_id, nlinks, hdferr) @@ -6922,7 +6922,7 @@ INTEGER(HID_T), INTENT(IN) :: lapl_id ! File access property list identifier INTEGER(SIZE_T), INTENT(IN) :: nlinks ! Maximum number of links to traverse INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -6935,17 +6935,17 @@ INTEGER(SIZE_T), INTENT(IN) :: nlinks END FUNCTION h5pset_nlinks_c END INTERFACE - + hdferr = h5pset_nlinks_c(lapl_id, nlinks) - + END SUBROUTINE h5pset_nlinks_f !---------------------------------------------------------------------- -! Name: h5pget_nlinks_f +! Name: h5pget_nlinks_f ! ! Purpose: Gets maximum number of soft or user-defined link traversals. ! -! Inputs: +! Inputs: ! lapl_id - File access property list identifier ! nlinks - Maximum number of links to traverse ! @@ -6961,7 +6961,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_nlinks_f(lapl_id, nlinks, hdferr) @@ -6969,7 +6969,7 @@ INTEGER(HID_T), INTENT(IN) :: lapl_id ! File access property list identifier INTEGER(SIZE_T), INTENT(OUT) :: nlinks ! Maximum number of links to traverse INTEGER, INTENT(OUT) :: hdferr ! Error code - + ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE @@ -6982,9 +6982,9 @@ INTEGER(SIZE_T), INTENT(OUT) :: nlinks END FUNCTION h5pget_nlinks_c END INTERFACE - + hdferr = h5pget_nlinks_c(lapl_id, nlinks) - + END SUBROUTINE h5pget_nlinks_f !---------------------------------------------------------------------- @@ -6992,35 +6992,35 @@ ! ! Purpose: Determines whether property is set to enable creating missing intermediate groups. ! -! Inputs: +! Inputs: ! lcpl_id - Link creation property list identifier -! crt_intermed_group - Specifying whether to create intermediate groups upon +! crt_intermed_group - Specifying whether to create intermediate groups upon ! the creation of an object ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! April 4, 2008 ! -! Modifications: +! Modifications: ! ! Comment: The long subroutine name (>31) on older f90 compilers causes problems -! so had to shorten the name +! so had to shorten the name !-------------------------------------------------------------------------------------- SUBROUTINE h5pget_create_inter_group_f(lcpl_id, crt_intermed_group, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: lcpl_id ! Link creation property list identifier - INTEGER, INTENT(IN) :: crt_intermed_group ! Flag specifying whether to create intermediate groups + INTEGER, INTENT(IN) :: crt_intermed_group ! Flag specifying whether to create intermediate groups ! upon creation of an object INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE - INTEGER FUNCTION h5pget_create_inter_group_c(lcpl_id, crt_intermed_group) + INTEGER FUNCTION h5pget_create_inter_group_c(lcpl_id, crt_intermed_group) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CREATE_INTER_GROUP_C'::h5pget_create_inter_group_c @@ -7055,35 +7055,35 @@ ! of one means fully read chunks are always preempted before ! other chunks. ! -! Inputs: +! Inputs: ! dapl_id - Dataset access property list identifier. ! rdcc_nslots - The number of chunk slots in the raw data chunk cache for this dataset. ! rdcc_nbytes - The total size of the raw data chunk cache for this dataset. ! rdcc_w0 - The chunk preemption policy for this dataset. ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! April 13, 2009 ! -! Modifications: +! Modifications: !-------------------------------------------------------------------------------------- SUBROUTINE h5pset_chunk_cache_f(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dapl_id ! Dataset access property list identifier. - INTEGER(SIZE_T), INTENT(IN) :: rdcc_nslots ! The number of chunk slots in the raw data + INTEGER(SIZE_T), INTENT(IN) :: rdcc_nslots ! The number of chunk slots in the raw data ! chunk cache for this dataset. - INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes ! The total size of the raw data chunk cache + INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes ! The total size of the raw data chunk cache ! for this dataset. REAL, INTENT(IN) :: rdcc_w0 ! The chunk preemption policy for this dataset. INTEGER, INTENT(OUT) :: hdferr ! Error code ! 0 on success and -1 on failure - + INTERFACE INTEGER FUNCTION h5pset_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0) @@ -7113,32 +7113,32 @@ ! not been set on this property list, the default values for a ! file access property list are returned. ! -! Inputs: +! Inputs: ! dapl_id - Dataset access property list identifier. -! Outputs: -! rdcc_nslots - Number of chunk slots in the raw data chunk cache hash table. -! rdcc_nbytes - Total size of the raw data chunk cache, in bytes. -! rdcc_w0 - Preemption policy. -! hdferr: - error code +! Outputs: +! rdcc_nslots - Number of chunk slots in the raw data chunk cache hash table. +! rdcc_nbytes - Total size of the raw data chunk cache, in bytes. +! rdcc_w0 - Preemption policy. +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: M.S. Breitenfeld ! April 13, 2009 ! -! Modifications: +! Modifications: !-------------------------------------------------------------------------------------- SUBROUTINE h5pget_chunk_cache_f(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dapl_id ! Dataset access property list identifier. INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nslots ! Number of chunk slots in the raw data chunk cache hash table. - INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes ! Total size of the raw data chunk cache, in bytes. + INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes ! Total size of the raw data chunk cache, in bytes. REAL, INTENT(OUT) :: rdcc_w0 ! Preemption policy. INTEGER, INTENT(OUT) :: hdferr ! error code - + INTERFACE INTEGER FUNCTION h5pget_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0) USE H5GLOBAL diff --git a/fortran/src/H5Rff.f90 b/fortran/src/H5Rff.f90 index f8ffb2f..6c557e3 100644 --- a/fortran/src/H5Rff.f90 +++ b/fortran/src/H5Rff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,96 +11,96 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5R functions. -! +! MODULE H5R USE H5GLOBAL ! If you change the value of these parameters, do not forget to change corresponding -! values in the H5f90.h file. -! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2 -! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 +! values in the H5f90.h file. +! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2 +! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 ! ! TYPE hobj_ref_t_f -! INTEGER ref(REF_OBJ_BUF_LEN) -! END TYPE +! INTEGER ref(REF_OBJ_BUF_LEN) +! END TYPE ! ! TYPE hdset_reg_ref_t_f -! INTEGER ref(REF_REG_BUF_LEN) -! END TYPE +! INTEGER ref(REF_REG_BUF_LEN) +! END TYPE ! INTERFACE h5rcreate_f MODULE PROCEDURE h5rcreate_object_f - MODULE PROCEDURE h5rcreate_region_f + MODULE PROCEDURE h5rcreate_region_f + + END INTERFACE - END INTERFACE - INTERFACE h5rdereference_f MODULE PROCEDURE h5rdereference_object_f - MODULE PROCEDURE h5rdereference_region_f + MODULE PROCEDURE h5rdereference_region_f + + END INTERFACE - END INTERFACE - INTERFACE h5rget_region_f - MODULE PROCEDURE h5rget_region_region_f + MODULE PROCEDURE h5rget_region_region_f + + END INTERFACE - END INTERFACE - INTERFACE h5rget_object_type_f MODULE PROCEDURE h5rget_object_type_obj_f - END INTERFACE - + END INTERFACE + INTERFACE h5rget_name_f MODULE PROCEDURE h5rget_name_object_f - MODULE PROCEDURE h5rget_name_region_f + MODULE PROCEDURE h5rget_name_region_f - END INTERFACE + END INTERFACE CONTAINS - + !---------------------------------------------------------------------- -! Name: h5rcreate_object_f +! Name: h5rcreate_object_f ! ! Purpose: Creates reference to the object ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the object at the specified location -! Outputs: +! Outputs: ! ref - reference to the specified object -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rcreate_f -! subroutine. +! Comment: This is a module procedure for the h5rcreate_f +! subroutine. !---------------------------------------------------------------------- - + SUBROUTINE h5rcreate_object_f(loc_id, name, ref, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the object at location specified - ! by loc_id identifier - TYPE(hobj_ref_t_f), INTENT(OUT) :: ref ! Object reference - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! by loc_id identifier + TYPE(hobj_ref_t_f), INTENT(OUT) :: ref ! Object reference + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Name length INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference @@ -114,9 +114,9 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RCREATE_OBJECT_C':: h5rcreate_object_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name + !DEC$ATTRIBUTES reference :: name INTEGER(HADDR_T) :: ref_f - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen END FUNCTION h5rcreate_object_c @@ -126,45 +126,45 @@ ref_f = 0 hdferr = h5rcreate_object_c(ref_f, loc_id, name, namelen ) ref%ref = ref_f - + END SUBROUTINE h5rcreate_object_f - + !---------------------------------------------------------------------- -! Name: h5rcreate_region_f +! Name: h5rcreate_region_f ! ! Purpose: Creates r eference to the dataset region ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the dataset at the specified location ! space_id - dataspace identifier that describes selected region -! Outputs: +! Outputs: ! ref - reference to the dataset region -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rcreate_f -! subroutine. +! Comment: This is a module procedure for the h5rcreate_f +! subroutine. !---------------------------------------------------------------------- - + SUBROUTINE h5rcreate_region_f(loc_id, name, space_id, ref, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset at location specified - ! by loc_id identifier - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataset's dataspace identifier - TYPE(hdset_reg_ref_t_f), INTENT(OUT) :: ref ! Dataset region reference - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! by loc_id identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataset's dataspace identifier + TYPE(hdset_reg_ref_t_f), INTENT(OUT) :: ref ! Dataset region reference + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: namelen ! Name length INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference @@ -178,13 +178,13 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RCREATE_REGION_C':: h5rcreate_region_c !DEC$ENDIF - !DEC$ATTRIBUTES reference :: name -! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 + !DEC$ATTRIBUTES reference :: name +! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 INTEGER :: ref_f(REF_REG_BUF_LEN) - INTEGER(HID_T), INTENT(IN) :: loc_id + INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen - INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(HID_T), INTENT(IN) :: space_id END FUNCTION h5rcreate_region_c END INTERFACE @@ -194,42 +194,42 @@ ref%ref = ref_f END SUBROUTINE h5rcreate_region_f - + !---------------------------------------------------------------------- ! Name: h5rdereference_object_f ! ! Purpose: Opens the HDF5 object referenced ! -! Inputs: -! dset_id - identifier of the dataset containing -! reference +! Inputs: +! dset_id - identifier of the dataset containing +! reference ! ref - reference to open -! Outputs: +! Outputs: ! obj_id - object_identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rdereference_f -! subroutine. +! Comment: This is a module procedure for the h5rdereference_f +! subroutine. !---------------------------------------------------------------------- - - + + SUBROUTINE h5rdereference_object_f(dset_id, ref, obj_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier - TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference - INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier + TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference + INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference @@ -243,9 +243,9 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RDEREFERENCE_OBJECT_C':: h5rdereference_object_c !DEC$ENDIF ! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2 - INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HADDR_T) :: ref_f - INTEGER(HID_T), INTENT(OUT) :: obj_id + INTEGER(HID_T), INTENT(OUT) :: obj_id END FUNCTION h5rdereference_object_c END INTERFACE @@ -253,42 +253,42 @@ hdferr = h5rdereference_object_c(dset_id, ref_f, obj_id ) END SUBROUTINE h5rdereference_object_f - + !---------------------------------------------------------------------- ! Name: h5rdereference_region_f ! ! Purpose: Opens the dataset region ! -! Inputs: -! dset_id - identifier of the dataset containing -! reference to teh regions +! Inputs: +! dset_id - identifier of the dataset containing +! reference to teh regions ! ref - reference to open -! Outputs: +! Outputs: ! obj_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rdereference_f -! subroutine. +! Comment: This is a module procedure for the h5rdereference_f +! subroutine. !---------------------------------------------------------------------- - - + + SUBROUTINE h5rdereference_region_f(dset_id, ref, obj_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier - TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Object reference - INTEGER(HID_T), INTENT(OUT) :: obj_id ! Dataspace identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier + TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Object reference + INTEGER(HID_T), INTENT(OUT) :: obj_id ! Dataspace identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference @@ -301,10 +301,10 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RDEREFERENCE_REGION_C':: h5rdereference_region_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id -! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 + INTEGER(HID_T), INTENT(IN) :: dset_id +! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 INTEGER :: ref_f(REF_REG_BUF_LEN) - INTEGER(HID_T), INTENT(OUT) :: obj_id + INTEGER(HID_T), INTENT(OUT) :: obj_id END FUNCTION h5rdereference_region_c END INTERFACE @@ -312,43 +312,43 @@ hdferr = h5rdereference_region_c(dset_id, ref_f, obj_id ) END SUBROUTINE h5rdereference_region_f - + !---------------------------------------------------------------------- ! Name: h5rget_region_region_f ! ! Purpose: Retrieves a dataspace with the specified region selected ! -! Inputs: -! dset_id - identifier of the dataset containing -! reference to the regions +! Inputs: +! dset_id - identifier of the dataset containing +! reference to the regions ! ref - reference to open -! Outputs: +! Outputs: ! space_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rget_region_f -! subroutine. +! Comment: This is a module procedure for the h5rget_region_f +! subroutine. !---------------------------------------------------------------------- - - - + + + SUBROUTINE h5rget_region_region_f(dset_id, ref, space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier - TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Dataset region reference - INTEGER(HID_T), INTENT(OUT) :: space_id ! Space identifier - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier + TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Dataset region reference + INTEGER(HID_T), INTENT(OUT) :: space_id ! Space identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference ! INTEGER, EXTERNAL :: h5rget_region_region_c @@ -360,10 +360,10 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_REGION_REGION_C':: h5rget_region_region_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dset_id -! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 + INTEGER(HID_T), INTENT(IN) :: dset_id +! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 INTEGER :: ref_f(REF_REG_BUF_LEN) - INTEGER(HID_T), INTENT(OUT) :: space_id + INTEGER(HID_T), INTENT(OUT) :: space_id END FUNCTION h5rget_region_region_c END INTERFACE @@ -371,17 +371,17 @@ hdferr = h5rget_region_region_c(dset_id, ref_f, space_id ) END SUBROUTINE h5rget_region_region_f - + !---------------------------------------------------------------------- ! Name: h5rget_object_type_obj_f ! -! Purpose: Retrieves the type of object that an object reference points to. +! Purpose: Retrieves the type of object that an object reference points to. ! -! Inputs: -! dset_id - identifier of the dataset containing +! Inputs: +! dset_id - identifier of the dataset containing ! reference to the objects ! ref - reference to open -! Outputs: +! Outputs: ! obj_type - object_type, possible values: ! H5G_UNKNOWN_F (-1) ! H5G_GROUP_F 0 @@ -389,36 +389,36 @@ ! H5G_TYPE_F 2 ! H5G_LINK_F 3 ! -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: This is a module procedure for the h5rget_object_type_f -! subroutine. +! Comment: This is a module procedure for the h5rget_object_type_f +! subroutine. !---------------------------------------------------------------------- - + SUBROUTINE h5rget_object_type_obj_f(dset_id, ref, obj_type, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier - TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference - INTEGER, INTENT(OUT) :: obj_type ! Object type + INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier + TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference + INTEGER, INTENT(OUT) :: obj_type ! Object type ! H5G_UNKNOWN_F (-1) ! H5G_GROUP_F 0 ! H5G_DATASET_F 1 ! H5G_TYPE_F 2 ! H5G_LINK_F 3 - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference ! INTEGER, EXTERNAL :: h5rget_object_type_obj_c @@ -431,9 +431,9 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_OBJECT_TYPE_OBJ_C':: h5rget_object_type_obj_c !DEC$ENDIF ! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2 - INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HADDR_T) :: ref_f - INTEGER, INTENT(OUT) :: obj_type + INTEGER, INTENT(OUT) :: obj_type END FUNCTION h5rget_object_type_obj_c END INTERFACE @@ -451,38 +451,38 @@ ! loc_id - Identifier for the dataset containing the reference or for the group that dataset is in. ! ref - An object or dataset region reference. ! -! Outputs: +! Outputs: ! name - A name associated with the referenced object or dataset region. ! -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! size - The size of the name buffer. ! ! Programmer: M.S. Breitenfeld ! March 28, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5rget_name_object_f(loc_id, ref, name, hdferr, size) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for the dataset containing the reference + INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for the dataset containing the reference ! or for the group that dataset is in. TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference INTEGER(SIZE_T), OPTIONAL, INTENT(OUT) :: size ! The size of the name buffer, ! returning 0 (zero) if no name is associated with the identifier CHARACTER(LEN=*), INTENT(OUT) :: name ! A name associated with the referenced object or dataset region. - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference INTEGER(SIZE_T) :: size_default INTEGER(SIZE_T) :: name_len - + INTERFACE INTEGER FUNCTION h5rget_name_object_c(loc_id, ref_f, name, name_len, size_default) USE H5GLOBAL @@ -498,14 +498,14 @@ INTEGER(SIZE_T) :: name_len END FUNCTION h5rget_name_object_c END INTERFACE - + name_len=LEN(name) ref_f = ref%ref hdferr = h5rget_name_object_c(loc_id, ref_f, name, name_len, size_default) - + IF(PRESENT(size)) size = size_default - + END SUBROUTINE h5rget_name_object_f !---------------------------------------------------------------------- @@ -517,38 +517,38 @@ ! loc_id - Identifier for the dataset containing the reference or for the group that dataset is in. ! ref - An object or dataset region reference. ! -! Outputs: +! Outputs: ! name - A name associated with the referenced object or dataset region. ! -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! size - The size of the name buffer. ! ! Programmer: M.S. Breitenfeld ! March 28, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5rget_name_region_f(loc_id, ref, name, hdferr, size) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for the dataset containing the reference + INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for the dataset containing the reference ! or for the group that dataset is in. TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Object reference INTEGER(SIZE_T), OPTIONAL, INTENT(OUT) :: size ! The size of the name buffer, ! returning 0 (zero) if no name is associated with the identifier CHARACTER(LEN=*), INTENT(OUT) :: name ! A name associated with the referenced object or dataset region. INTEGER, INTENT(OUT) :: hdferr ! Error code - + INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference INTEGER(SIZE_T) :: size_default INTEGER(SIZE_T) :: name_len - + INTERFACE INTEGER FUNCTION h5rget_name_region_c(loc_id, ref_f, name, name_len, size_default) USE H5GLOBAL @@ -564,14 +564,14 @@ INTEGER(SIZE_T) :: name_len END FUNCTION h5rget_name_region_c END INTERFACE - + name_len=LEN(name) ref_f = ref%ref hdferr = h5rget_name_region_c(loc_id, ref_f, name, name_len, size_default) - + IF(PRESENT(size)) size = size_default - + END SUBROUTINE h5rget_name_region_f END MODULE H5R diff --git a/fortran/src/H5Sf.c b/fortran/src/H5Sf.c index 9b0356f..dea3ff0 100644 --- a/fortran/src/H5Sf.c +++ b/fortran/src/H5Sf.c @@ -37,7 +37,7 @@ nh5screate_simple_c ( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f hid_t c_space_id; int i; int_f ret_value = 0; - + /* * Transpose dimension arrays because of C-FORTRAN storage order */ @@ -45,11 +45,11 @@ nh5screate_simple_c ( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f c_dims[i] = dims[*rank - i - 1]; c_maxdims[i] = maxdims[*rank - i - 1]; } /* end for */ - + c_space_id = H5Screate_simple(*rank, c_dims, c_maxdims); - if(c_space_id < 0) + if(c_space_id < 0) HGOTO_DONE(FAIL) - + *space_id = (hid_t_f)c_space_id; done: @@ -204,7 +204,7 @@ nh5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points) * Returns: 0 on success, -1 on failure * Programmer: Xiangyang Su * Monday, November 15, 1999 - * Modifications: + * Modifications: * Transpose dimension arrays because of C-FORTRAN storage order * M.S. Breitenfeld *---------------------------------------------------------------------------*/ @@ -281,12 +281,12 @@ nh5sget_select_bounds_c( hid_t_f *space_id , hsize_t_f * start, hsize_t_f * end) hsize_t c_end[H5S_MAX_RANK]; int i, rank; int_f ret_value = 0; - + c_space_id = *space_id; rank = H5Sget_simple_extent_ndims(c_space_id); if(rank < 0 ) HGOTO_DONE(FAIL) - + if(H5Sget_select_bounds(c_space_id, c_start, c_end) < 0) HGOTO_DONE(FAIL) diff --git a/fortran/src/H5Sff.f90 b/fortran/src/H5Sff.f90 index 7cabb00..06bebef 100644 --- a/fortran/src/H5Sff.f90 +++ b/fortran/src/H5Sff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,54 +11,54 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains Fortran90 interfaces for H5S functions. -! +! MODULE H5S USE H5GLOBAL - + CONTAINS - + !---------------------------------------------------------------------- -! Name: h5screate_simple_f +! Name: h5screate_simple_f ! ! Purpose: Creates a new simple data space and opens it for access . ! -! Inputs: +! Inputs: ! rank - number of dimensions ! dims - an array of the size of each dimension -! Outputs: +! Outputs: ! space_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! maxdims - an array of the maximum size of each +! maxdims - an array of the maximum size of each ! dimension ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5screate_simple_f(rank, dims, space_id, hdferr, maxdims) IMPLICIT NONE - INTEGER, INTENT(IN) :: rank ! Number of dataspace dimensions - INTEGER(HSIZE_T), INTENT(IN) :: dims(rank) - ! Array with the dimension - ! sizes - INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier + INTEGER, INTENT(IN) :: rank ! Number of dataspace dimensions + INTEGER(HSIZE_T), INTENT(IN) :: dims(rank) + ! Array with the dimension + ! sizes + INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HSIZE_T), OPTIONAL, INTENT(IN) :: maxdims(rank) - ! Array with the maximum - ! dimension sizes + INTEGER(HSIZE_T), OPTIONAL, INTENT(IN) :: maxdims(rank) + ! Array with the maximum + ! dimension sizes INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: f_maxdims ! INTEGER, EXTERNAL :: h5screate_simple_c @@ -76,44 +76,44 @@ INTEGER(HID_T), INTENT(OUT) :: space_id END FUNCTION h5screate_simple_c END INTERFACE - + allocate (f_maxdims(rank), stat=hdferr) - if (hdferr .NE. 0) then + if (hdferr .NE. 0) then hdferr = -1 return - endif - if (present(maxdims)) then - f_maxdims = maxdims + endif + if (present(maxdims)) then + f_maxdims = maxdims else f_maxdims = dims - endif + endif hdferr = h5screate_simple_c(rank, dims, f_maxdims, space_id) deallocate(f_maxdims) END SUBROUTINE h5screate_simple_f - + !---------------------------------------------------------------------- -! Name: h5sclose_f +! Name: h5sclose_f ! -! Purpose: Releases and terminates access to a dataspace. +! Purpose: Releases and terminates access to a dataspace. ! -! Inputs: +! Inputs: ! space_id - identifier of dataspace to release -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sclose_f(space_id, hdferr) @@ -139,39 +139,39 @@ END SUBROUTINE h5sclose_f !---------------------------------------------------------------------- -! Name: h5screate_f +! Name: h5screate_f ! -! Purpose: Creates a new dataspace of a specified type. +! Purpose: Creates a new dataspace of a specified type. ! -! Inputs: +! Inputs: ! classtype - the type of the dataspace to be created -! Outputs: +! Outputs: ! space_id - dataspace identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5screate_f(classtype, space_id, hdferr) IMPLICIT NONE INTEGER, INTENT(IN) :: classtype ! The type of the dataspace - ! to be created. + ! to be created. ! Possible values are: ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F(1) ! H5S_NULL_F(2) - INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5screate_c @@ -193,42 +193,42 @@ END SUBROUTINE h5screate_f !---------------------------------------------------------------------- -! Name: h5scopy_f +! Name: h5scopy_f ! -! Purpose: Creates an exact copy of a dataspace. +! Purpose: Creates an exact copy of a dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! new_space_id - identifier of dataspace's copy -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5scopy_f(space_id, new_space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HID_T), INTENT(OUT) :: new_space_id - ! Identifier of dataspace's copy + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(OUT) :: new_space_id + ! Identifier of dataspace's copy INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5scopy_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5scopy_c(space_id, new_space_id) + INTEGER FUNCTION h5scopy_c(space_id, new_space_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOPY_C'::h5scopy_c @@ -239,41 +239,41 @@ END INTERFACE hdferr = h5scopy_c(space_id, new_space_id) - + END SUBROUTINE h5scopy_f !---------------------------------------------------------------------- -! Name: h5sget_select_hyper_nblocks_f +! Name: h5sget_select_hyper_nblocks_f ! -! Purpose: Get number of hyperslab blocks. +! Purpose: Get number of hyperslab blocks. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! num_blocks - number of hyperslab blocks in the current ! hyperslab selection -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_hyper_nblocks_f(space_id, num_blocks, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks - !number of hyperslab blocks - !in the current dataspace - !selection + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks + !number of hyperslab blocks + !in the current dataspace + !selection INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sget_select_hyper_nblocks_c @@ -286,52 +286,52 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_HYPER_NBLOCKS_C'::h5sget_select_hyper_nblocks_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks + INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks END FUNCTION h5sget_select_hyper_nblocks_c END INTERFACE hdferr = h5sget_select_hyper_nblocks_c (space_id, num_blocks) - + END SUBROUTINE h5sget_select_hyper_nblocks_f !---------------------------------------------------------------------- -! Name: h5sget_select_hyper_blocklist_f +! Name: h5sget_select_hyper_blocklist_f ! -! Purpose: Gets the list of hyperslab blocks currently selected. +! Purpose: Gets the list of hyperslab blocks currently selected. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier ! startblock - hyperslab block to start with ! num_blocks - number of blocks to get -! Outputs: +! Outputs: ! buf - buffer to hold block list -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_hyper_blocklist_f(space_id, startblock, & num_blocks, buf, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSIZE_T), INTENT(IN) :: startblock - !Hyperslab block to start with. - INTEGER(HSIZE_T), INTENT(IN) :: num_blocks - !number of hyperslab blocks - !to get in the current dataspace - !selection - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSIZE_T), INTENT(IN) :: startblock + !Hyperslab block to start with. + INTEGER(HSIZE_T), INTENT(IN) :: num_blocks + !number of hyperslab blocks + !to get in the current dataspace + !selection + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf !List of hyperslab blocks selected INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -346,55 +346,55 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_HYPER_BLOCKLIST_C'::h5sget_select_hyper_blocklist_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HSIZE_T), INTENT(IN) :: startblock - INTEGER(HSIZE_T), INTENT(IN) :: num_blocks - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf + INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(HSIZE_T), INTENT(IN) :: startblock + INTEGER(HSIZE_T), INTENT(IN) :: num_blocks + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf END FUNCTION h5sget_select_hyper_blocklist_c END INTERFACE - + hdferr = h5sget_select_hyper_blocklist_c(space_id, startblock, & num_blocks, buf ) - + END SUBROUTINE h5sget_select_hyper_blocklist_f !---------------------------------------------------------------------- -! Name: h5sget_select_bounds_f +! Name: h5sget_select_bounds_f ! -! Purpose: Gets the bounding box containing the current selection. +! Purpose: Gets the bounding box containing the current selection. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! -! Outputs: +! +! Outputs: ! start - starting coordinates of bounding box ! end - ending coordinates of bounding box -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_bounds_f(space_id, start, END, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start - ! Starting coordinates of the bounding box. + ! Starting coordinates of the bounding box. INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END !Ending coordinates of the bounding box, - !i.e., the coordinates of the diagonally - !opposite corner + !i.e., the coordinates of the diagonally + !opposite corner INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -408,43 +408,43 @@ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END END FUNCTION h5sget_select_bounds_c END INTERFACE - + hdferr = h5sget_select_bounds_c(space_id, start, END) - + END SUBROUTINE h5sget_select_bounds_f !---------------------------------------------------------------------- -! Name: h5sget_select_elem_npoints_f +! Name: h5sget_select_elem_npoints_f ! -! Purpose: Gets the number of element points in the current selection +! Purpose: Gets the number of element points in the current selection ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: -! num_points - number of element points in the current +! Outputs: +! num_points - number of element points in the current ! dataspace selection -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_elem_npoints_f(space_id, num_points, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSSIZE_T), INTENT(OUT) :: num_points - !number of element points - !in the current dataspace - !selection + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSSIZE_T), INTENT(OUT) :: num_points + !number of element points + !in the current dataspace + !selection INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sget_select_elem_npoints_c @@ -457,50 +457,50 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_ELEM_NPOINTS_C'::h5sget_select_elem_npoints_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HSSIZE_T), INTENT(OUT) :: num_points + INTEGER(HSSIZE_T), INTENT(OUT) :: num_points END FUNCTION h5sget_select_elem_npoints_c END INTERFACE hdferr = h5sget_select_elem_npoints_c (space_id, num_points) - + END SUBROUTINE h5sget_select_elem_npoints_f !---------------------------------------------------------------------- -! Name: h5sget_select_elem_pointlist_f +! Name: h5sget_select_elem_pointlist_f ! -! Purpose: Gets the list of element points currently selected. +! Purpose: Gets the list of element points currently selected. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! startpoint - element point to start with +! startpoint - element point to start with ! num_points - number of elemnt points to get -! Outputs: +! Outputs: ! buf - buffer with element points selected -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_elem_pointlist_f(space_id, startpoint, & num_points, buf, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSIZE_T), INTENT(IN) :: startpoint - !Element point to start with. - INTEGER(HSIZE_T), INTENT(IN) :: num_points - !Number of element points to get - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSIZE_T), INTENT(IN) :: startpoint + !Element point to start with. + INTEGER(HSIZE_T), INTENT(IN) :: num_points + !Number of element points to get + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf !List of element points selected INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -512,9 +512,9 @@ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_ELEM_POINTLIST_C'::h5sget_select_elem_pointlist_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HSIZE_T), INTENT(IN) :: startpoint - INTEGER(HSIZE_T), INTENT(IN) :: num_points - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf + INTEGER(HSIZE_T), INTENT(IN) :: startpoint + INTEGER(HSIZE_T), INTENT(IN) :: num_points + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf END FUNCTION h5sget_select_elem_pointlist_c END INTERFACE @@ -524,47 +524,47 @@ END SUBROUTINE h5sget_select_elem_pointlist_f !---------------------------------------------------------------------- -! Name: h5sselect_elements_f +! Name: h5sselect_elements_f ! -! Purpose: Selects elements to be included in the selection for -! a dataspace +! Purpose: Selects elements to be included in the selection for +! a dataspace ! -! Inputs: +! Inputs: ! space_id - dataspace identifier ! operator - flag, valid values are: ! H5S_SELECT_SET_F (0) ! H5S_SELECT_OR_F (1) ! rank - number of dataspace dimensions ! num_elements - number of elements to be selected -! coord - 2D (rank x num_elements) array with the +! coord - 2D (rank x num_elements) array with the ! elements coordinates -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - SUBROUTINE h5sselect_elements_f(space_id, OPERATOR, rank, & + SUBROUTINE h5sselect_elements_f(space_id, OPERATOR, rank, & num_elements, coord, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(IN) :: OPERATOR ! Flag, valid values are: ! H5S_SELECT_SET_F (0) ! H5S_SELECT_OR_F (1) - INTEGER, INTENT(IN) :: rank ! Number of dataspace dimensions + INTEGER, INTENT(IN) :: rank ! Number of dataspace dimensions INTEGER(SIZE_T), INTENT(IN) :: num_elements ! Number of elements to be ! selected - INTEGER(HSIZE_T), DIMENSION(rank,num_elements), INTENT(IN) :: coord + INTEGER(HSIZE_T), DIMENSION(rank,num_elements), INTENT(IN) :: coord ! Array with the coordinates ! of the selected elements ! coord(rank, num_elements) @@ -585,7 +585,7 @@ INTEGER(HSIZE_T),DIMENSION(*) :: c_c_coord END FUNCTION h5sselect_elements_c END INTERFACE - + ALLOCATE(c_coord(rank,num_elements), STAT = error) IF (error.NE. 0) THEN hdferr = -1 @@ -597,37 +597,37 @@ hdferr = h5sselect_elements_c(space_id, OPERATOR, num_elements, c_coord) DEALLOCATE(c_coord) - + END SUBROUTINE h5sselect_elements_f !---------------------------------------------------------------------- -! Name: h5sselect_all_f +! Name: h5sselect_all_f ! -! Purpose: Selects the entire dataspace. +! Purpose: Selects the entire dataspace. ! -! Inputs: +! Inputs: ! space_id - identifier for the dataspace in which ! selection being made -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sselect_all_f(space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sselect_all_c @@ -648,33 +648,33 @@ END SUBROUTINE h5sselect_all_f !---------------------------------------------------------------------- -! Name: h5sselect_none_f +! Name: h5sselect_none_f ! -! Purpose: Resets the selection region to include no elements. +! Purpose: Resets the selection region to include no elements. ! -! Inputs: -! space_id - the identifier for the dataspace in which -! the selection is being reset. -! Outputs: -! hdferr: - error code +! Inputs: +! space_id - the identifier for the dataspace in which +! the selection is being reset. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sselect_none_f(space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sselect_none_c @@ -686,7 +686,7 @@ !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_NONE_C'::h5sselect_none_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(HID_T), INTENT(IN) :: space_id END FUNCTION h5sselect_none_c END INTERFACE @@ -695,36 +695,36 @@ END SUBROUTINE h5sselect_none_f !---------------------------------------------------------------------- -! Name: h5sselect_valid_f +! Name: h5sselect_valid_f ! -! Purpose: Verifies that the selection is within the extent of -! the dataspace. +! Purpose: Verifies that the selection is within the extent of +! the dataspace. ! -! Inputs: -! space_id - identifier for the dataspace for which +! Inputs: +! space_id - identifier for the dataspace for which ! selection is verified -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sselect_valid_f(space_id, status, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier LOGICAL, INTENT(OUT) :: status ! TRUE if the selection is ! contained within the extent, - ! FALSE otherwise. + ! FALSE otherwise. INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: flag ! "TRUE/FALSE/ERROR" flag from C routine @@ -732,14 +732,14 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sselect_valid_c(space_id, flag) + INTEGER FUNCTION h5sselect_valid_c(space_id, flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_VALID_C'::h5sselect_valid_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: space_id INTEGER :: flag - END FUNCTION h5sselect_valid_c + END FUNCTION h5sselect_valid_c END INTERFACE hdferr = h5sselect_valid_c(space_id, flag) @@ -749,34 +749,34 @@ END SUBROUTINE h5sselect_valid_f !---------------------------------------------------------------------- -! Name: h5sget_simple_extent_npoints_f +! Name: h5sget_simple_extent_npoints_f ! -! Purpose: Determines the number of elements in a dataspace. +! Purpose: Determines the number of elements in a dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! npoints - number of elements in the dataspace -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_simple_extent_npoints_f(space_id, npoints, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSIZE_T), INTENT(OUT) :: npoints ! Number of elements in + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSIZE_T), INTENT(OUT) :: npoints ! Number of elements in ! dataspace INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -784,7 +784,7 @@ ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sget_simple_extent_npoints_c( space_id, npoints) + INTEGER FUNCTION h5sget_simple_extent_npoints_c( space_id, npoints) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_NPOINTS_C'::h5sget_simple_extent_npoints_c @@ -795,46 +795,46 @@ END INTERFACE hdferr = h5sget_simple_extent_npoints_c( space_id, npoints) - + END SUBROUTINE h5sget_simple_extent_npoints_f !---------------------------------------------------------------------- -! Name: h5sget_select_npoints_f +! Name: h5sget_select_npoints_f ! -! Purpose: Determines the number of elements in a dataspace selection. +! Purpose: Determines the number of elements in a dataspace selection. ! -! Inputs: -! space_id - dataspace identifier -! Outputs: +! Inputs: +! space_id - dataspace identifier +! Outputs: ! npoints - number of points in the dataspace selection -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_npoints_f(space_id, npoints, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER(HSSIZE_T), INTENT(OUT) :: npoints ! Number of elements in the - ! selection + ! selection INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sget_select_npoints_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sget_select_npoints_c(space_id, npoints) + INTEGER FUNCTION h5sget_select_npoints_c(space_id, npoints) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_NPOINTS_C'::h5sget_select_npoints_c @@ -845,45 +845,45 @@ END INTERFACE hdferr = h5sget_select_npoints_c(space_id, npoints) - + END SUBROUTINE h5sget_select_npoints_f !---------------------------------------------------------------------- -! Name: h5sget_simple_extent_ndims_f +! Name: h5sget_simple_extent_ndims_f ! -! Purpose: Determines the dimensionality of a dataspace +! Purpose: Determines the dimensionality of a dataspace ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! rank - number of dataspace dimensions -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_simple_extent_ndims_f(space_id, rank, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER, INTENT(OUT) :: rank ! Number of dimensions + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER, INTENT(OUT) :: rank ! Number of dimensions INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sget_simple_extent_ndims_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sget_simple_extent_ndims_c(space_id, rank) + INTEGER FUNCTION h5sget_simple_extent_ndims_c(space_id, rank) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_NDIMS_C'::h5sget_simple_extent_ndims_c @@ -894,44 +894,44 @@ END INTERFACE hdferr = h5sget_simple_extent_ndims_c(space_id, rank) - + END SUBROUTINE h5sget_simple_extent_ndims_f !---------------------------------------------------------------------- -! Name: h5sget_simple_extent_dims_f +! Name: h5sget_simple_extent_dims_f ! -! Purpose: Retrieves dataspace dimension size and maximum size. +! Purpose: Retrieves dataspace dimension size and maximum size. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! dims - array to store size of each dimension -! maxdims - array to store maximum size of each +! maxdims - array to store maximum size of each ! dimension -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_simple_extent_dims_f(space_id, dims, maxdims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims - ! Array to store dimension sizes - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims - ! Array to store max dimension - ! sizes + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims + ! Array to store dimension sizes + INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims + ! Array to store max dimension + ! sizes INTEGER, INTENT(OUT) :: hdferr ! Error code: -1 on failure, ! number of dimensions on ! on success @@ -952,43 +952,43 @@ END INTERFACE hdferr = h5sget_simple_extent_dims_c(space_id, dims, maxdims) - + END SUBROUTINE h5sget_simple_extent_dims_f !---------------------------------------------------------------------- -! Name: h5sget_simple_extent_type_f +! Name: h5sget_simple_extent_type_f ! -! Purpose: Determine the current class of a dataspace +! Purpose: Determine the current class of a dataspace ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! classtype - class type, possible values are: ! H5S_NO_CLASS_F (-1) ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F (1) ! H5S_NULL_F (2) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_simple_extent_type_f(space_id, classtype, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: classtype ! Class type , possible values - ! are: + ! are: ! H5S_NO_CLASS_F (-1) ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F (1) @@ -1010,49 +1010,49 @@ END INTERFACE hdferr = h5sget_simple_extent_type_c(space_id, classtype) - + END SUBROUTINE h5sget_simple_extent_type_f !---------------------------------------------------------------------- -! Name: h5sset_extent_simple_f +! Name: h5sset_extent_simple_f ! -! Purpose: Sets or resets the size of an existing dataspace. +! Purpose: Sets or resets the size of an existing dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier ! rank - dataspace number of dimensions ! current_size - array with the new sizes of dimensions -! maximum_size - array with the new maximum sizes of +! maximum_size - array with the new maximum sizes of ! dimensions -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sset_extent_simple_f(space_id, rank, current_size, & - maximum_size, hdferr) + maximum_size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier - INTEGER, INTENT(IN) :: rank ! Dataspace rank - INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER, INTENT(IN) :: rank ! Dataspace rank + INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size ! Array with the new sizes - ! of dimensions - INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size + ! of dimensions + INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size ! Array with the new maximum - ! sizes of dimensions - ! sizes + ! sizes of dimensions + ! sizes INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sset_extent_simple_c @@ -1060,7 +1060,7 @@ ! INTERFACE INTEGER FUNCTION h5sset_extent_simple_c(space_id, rank, & - current_size, maximum_size) + current_size, maximum_size) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSET_EXTENT_SIMPLE_C'::h5sset_extent_simple_c @@ -1074,49 +1074,49 @@ hdferr = h5sset_extent_simple_c(space_id, rank, current_size, & maximum_size) - + END SUBROUTINE h5sset_extent_simple_f !---------------------------------------------------------------------- -! Name: h5sis_simple_f +! Name: h5sis_simple_f ! -! Purpose: Determines whether a dataspace is a simple dataspace. +! Purpose: Determines whether a dataspace is a simple dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: +! Outputs: ! status - flag to indicate if dataspace -! is simple or not -! hdferr: - error code +! is simple or not +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sis_simple_f(space_id, status, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier LOGICAL, INTENT(OUT) :: status ! Flag, idicates if dataspace ! is simple or not ( TRUE or - ! FALSE) + ! FALSE) INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: flag ! "TRUE/FALSE/ERROR from C" + INTEGER :: flag ! "TRUE/FALSE/ERROR from C" ! INTEGER, EXTERNAL :: h5sis_simple_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sis_simple_c(space_id, flag) + INTEGER FUNCTION h5sis_simple_c(space_id, flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SIS_SIMPLE_C'::h5sis_simple_c @@ -1129,47 +1129,47 @@ hdferr = h5sis_simple_c(space_id, flag) status = .TRUE. if (flag .EQ. 0) status = .FALSE. - + END SUBROUTINE h5sis_simple_f !---------------------------------------------------------------------- -! Name: h5soffset_simple_f +! Name: h5soffset_simple_f ! -! Purpose: Sets the offset of a simple dataspace. +! Purpose: Sets the offset of a simple dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! offset - the offset at which to position the -! selection -! Outputs: -! hdferr: - error code +! offset - the offset at which to position the +! selection +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5soffset_simple_f(space_id, offset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) :: offset ! The offset at which to position - ! the selection + ! the selection INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5soffset_simple_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5soffset_simple_c(space_id, offset) + INTEGER FUNCTION h5soffset_simple_c(space_id, offset) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SOFFSET_SIMPLE_C'::h5soffset_simple_c @@ -1180,41 +1180,41 @@ END INTERFACE hdferr = h5soffset_simple_c(space_id, offset) - + END SUBROUTINE h5soffset_simple_f !---------------------------------------------------------------------- -! Name: h5sextent_copy_f +! Name: h5sextent_copy_f ! -! Purpose: Copies the extent of a dataspace. +! Purpose: Copies the extent of a dataspace. ! -! Inputs: -! dest_space_id - the identifier for the dataspace to which -! the extent is copied -! source_space_id - the identifier for the dataspace from +! Inputs: +! dest_space_id - the identifier for the dataspace to which +! the extent is copied +! source_space_id - the identifier for the dataspace from ! which the extent is copied -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sextent_copy_f(dest_space_id, source_space_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dest_space_id ! Identifier of destination ! dataspace - INTEGER(HID_T), INTENT(IN) :: source_space_id ! Identifier of source + INTEGER(HID_T), INTENT(IN) :: source_space_id ! Identifier of source ! dataspace INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1233,42 +1233,42 @@ END INTERFACE hdferr = h5sextent_copy_c(dest_space_id, source_space_id) - + END SUBROUTINE h5sextent_copy_f !---------------------------------------------------------------------- -! Name: h5sset_extent_none_f +! Name: h5sset_extent_none_f ! -! Purpose: Removes the extent from a dataspace. +! Purpose: Removes the extent from a dataspace. ! -! Inputs: +! Inputs: ! space_id - dataspace identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sset_extent_none_f(space_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sset_extent_none_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5sset_extent_none_c(space_id) + INTEGER FUNCTION h5sset_extent_none_c(space_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSET_EXTENT_NONE_C'::h5sset_extent_none_c @@ -1278,64 +1278,64 @@ END INTERFACE hdferr = h5sset_extent_none_c(space_id) - + END SUBROUTINE h5sset_extent_none_f !---------------------------------------------------------------------- -! Name: h5sselect_hyperslab_f +! Name: h5sselect_hyperslab_f ! -! Purpose: Selects a hyperslab region to add to the current selected -! region +! Purpose: Selects a hyperslab region to add to the current selected +! region ! -! Inputs: +! Inputs: ! space_id - dataspace identifier ! operator - flag, valid values are: ! H5S_SELECT_SET_F (0) ! H5S_SELECT_OR_F (1) ! start - array with hyperslab offsets -! count - number of blocks included in the +! count - number of blocks included in the ! hyperslab -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! stride - array with hyperslab strides -! block - array with hyperslab block sizes +! block - array with hyperslab block sizes ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 6, 2001 +! port). March 6, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sselect_hyperslab_f(space_id, operator, start, count, & hdferr, stride, block) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier + INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier INTEGER, INTENT(IN) :: operator ! Flag, valid values are: ! H5S_SELECT_SET_F (0) ! H5S_SELECT_OR_F (1) - ! + ! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start - ! Starting coordinates of the hyperslab - INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count - ! Number of blocks to select - ! from dataspace + ! Starting coordinates of the hyperslab + INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count + ! Number of blocks to select + ! from dataspace INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride ! Array of how many elements to move ! in each direction - INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block + INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block ! Sizes of element block - INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block + INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride INTEGER :: rank - INTEGER :: error1, error2 + INTEGER :: error1, error2 ! INTEGER, EXTERNAL :: h5sselect_hyperslab_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1352,7 +1352,7 @@ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: stride - INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block + INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block END FUNCTION h5sselect_hyperslab_c END INTERFACE @@ -1406,77 +1406,77 @@ def_stride, def_block) deallocate(def_block) deallocate(def_stride) - + END SUBROUTINE h5sselect_hyperslab_f !---------------------------------------------------------------------- -! Name: h5scombine_hyperslab_f +! Name: h5scombine_hyperslab_f ! -! Purpose: Combine a hyperslab selection with the current -! selection for a dataspace +! Purpose: Combine a hyperslab selection with the current +! selection for a dataspace ! -! Inputs: -! space_id - dataspace of selection to use +! Inputs: +! space_id - dataspace of selection to use ! operator - flag, valid values are: -! H5S_SELECT_NOOP_F -! H5S_SELECT_SET_F -! H5S_SELECT_OR_F -! H5S_SELECT_AND_F -! H5S_SELECT_XOR_F -! H5S_SELECT_NOTB_F -! H5S_SELECT_NOTA_F -! H5S_SELECT_APPEND_F -! H5S_SELECT_PREPEND_F +! H5S_SELECT_NOOP_F +! H5S_SELECT_SET_F +! H5S_SELECT_OR_F +! H5S_SELECT_AND_F +! H5S_SELECT_XOR_F +! H5S_SELECT_NOTB_F +! H5S_SELECT_NOTA_F +! H5S_SELECT_APPEND_F +! H5S_SELECT_PREPEND_F ! start - array with hyperslab offsets -! count - number of blocks included in the +! count - number of blocks included in the ! hyperslab -! Outputs: +! Outputs: ! hyper_id - identifier for the new hyperslab -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! stride - array with hyperslab strides -! block - array with hyperslab block sizes +! block - array with hyperslab block sizes ! ! Programmer: Elena Pourmal ! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: Commented out until 1.6 ? 10/08/2002 +! Comment: Commented out until 1.6 ? 10/08/2002 !---------------------------------------------------------------------- ! SUBROUTINE h5scombine_hyperslab_f(space_id, operator, start, count, & ! hyper_id, hdferr, stride, block) ! IMPLICIT NONE -! INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier +! INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier ! INTEGER, INTENT(IN) :: operator ! Flag, valid values are: - ! H5S_SELECT_NOOP_F - ! H5S_SELECT_SET_F - ! H5S_SELECT_OR_F - ! H5S_SELECT_AND_F - ! H5S_SELECT_XOR_F - ! H5S_SELECT_NOTB_F - ! H5S_SELECT_NOTA_F - ! H5S_SELECT_APPEND_F - ! H5S_SELECT_PREPEND_F - ! + ! H5S_SELECT_NOOP_F + ! H5S_SELECT_SET_F + ! H5S_SELECT_OR_F + ! H5S_SELECT_AND_F + ! H5S_SELECT_XOR_F + ! H5S_SELECT_NOTB_F + ! H5S_SELECT_NOTA_F + ! H5S_SELECT_APPEND_F + ! H5S_SELECT_PREPEND_F + ! ! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start - ! Starting coordinates of the hyperslab -! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count - ! Number of blocks to select - ! from dataspace -! INTEGER(HID_T), INTENT(OUT) :: hyper_id ! New hyperslab identifier + ! Starting coordinates of the hyperslab +! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count + ! Number of blocks to select + ! from dataspace +! INTEGER(HID_T), INTENT(OUT) :: hyper_id ! New hyperslab identifier ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride ! Array of how many elements to move ! in each direction -! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block +! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block ! Sizes of element block -! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block +! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block ! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride ! INTEGER :: rank -! INTEGER :: error1, error2 +! INTEGER :: error1, error2 ! INTERFACE ! INTEGER FUNCTION h5scombine_hyperslab_c(space_id, operator, & @@ -1490,7 +1490,7 @@ ! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start ! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count ! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: stride -! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block +! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block ! INTEGER(HID_T), INTENT(OUT) :: hyper_id ! END FUNCTION h5scombine_hyperslab_c ! END INTERFACE @@ -1545,60 +1545,60 @@ ! def_stride, def_block, hyper_id) ! deallocate(def_block) ! deallocate(def_stride) - + ! END SUBROUTINE h5scombine_hyperslab_f !---------------------------------------------------------------------- -! Name: h5scombine_select_f +! Name: h5scombine_select_f ! -! Purpose: Combine two hyperslab selections with an operation +! Purpose: Combine two hyperslab selections with an operation ! and return a dataspace with resulting selection. ! -! Inputs: -! space1_id - dataspace of selection to use +! Inputs: +! space1_id - dataspace of selection to use ! operator - flag, valid values are: -! H5S_SELECT_NOOP_F -! H5S_SELECT_SET_F -! H5S_SELECT_OR_F -! H5S_SELECT_AND_F -! H5S_SELECT_XOR_F -! H5S_SELECT_NOTB_F -! H5S_SELECT_NOTA_F -! H5S_SELECT_APPEND_F -! H5S_SELECT_PREPEND_F -! space2_id - dataspace of selection to use -! Outputs: +! H5S_SELECT_NOOP_F +! H5S_SELECT_SET_F +! H5S_SELECT_OR_F +! H5S_SELECT_AND_F +! H5S_SELECT_XOR_F +! H5S_SELECT_NOTB_F +! H5S_SELECT_NOTA_F +! H5S_SELECT_APPEND_F +! H5S_SELECT_PREPEND_F +! space2_id - dataspace of selection to use +! Outputs: ! ds_id - idataspace identifier with the new selection -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: - NONE ! ! Programmer: Elena Pourmal ! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: commented out until 1.6 release(?) 10/08/2002 +! Comment: commented out until 1.6 release(?) 10/08/2002 !---------------------------------------------------------------------- ! SUBROUTINE h5scombine_select_f(space1_id, operator, space2_id, & ! ds_id, hdferr) ! IMPLICIT NONE -! INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier -! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier +! INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier +! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier ! INTEGER, INTENT(IN) :: operator ! Flag, valid values are: - ! H5S_SELECT_NOOP_F - ! H5S_SELECT_SET_F - ! H5S_SELECT_OR_F - ! H5S_SELECT_AND_F - ! H5S_SELECT_XOR_F - ! H5S_SELECT_NOTB_F - ! H5S_SELECT_NOTA_F - ! H5S_SELECT_APPEND_F - ! H5S_SELECT_PREPEND_F - ! -! INTEGER(HID_T), INTENT(OUT) :: ds_id ! New dataspace identifier + ! H5S_SELECT_NOOP_F + ! H5S_SELECT_SET_F + ! H5S_SELECT_OR_F + ! H5S_SELECT_AND_F + ! H5S_SELECT_XOR_F + ! H5S_SELECT_NOTB_F + ! H5S_SELECT_NOTA_F + ! H5S_SELECT_APPEND_F + ! H5S_SELECT_PREPEND_F + ! +! INTEGER(HID_T), INTENT(OUT) :: ds_id ! New dataspace identifier ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! ! INTERFACE @@ -1618,60 +1618,60 @@ ! hdferr = h5scombine_select_c(space1_id, operator, space2_id, & ! ds_id) ! return - + ! END SUBROUTINE h5scombine_select_f !---------------------------------------------------------------------- -! Name: h5sselect_select_f +! Name: h5sselect_select_f ! -! Purpose: Refine a hyperslab selection with an operation +! Purpose: Refine a hyperslab selection with an operation ! using second hyperslab ! -! Inputs: +! Inputs: ! space1_id - dataspace of selection to modify ! operator - flag, valid values are: -! H5S_SELECT_NOOP_F -! H5S_SELECT_SET_F -! H5S_SELECT_OR_F -! H5S_SELECT_AND_F -! H5S_SELECT_XOR_F -! H5S_SELECT_NOTB_F -! H5S_SELECT_NOTA_F -! H5S_SELECT_APPEND_F -! H5S_SELECT_PREPEND_F -! space2_id - dataspace of selection to use -! -! Outputs: -! hdferr: - error code +! H5S_SELECT_NOOP_F +! H5S_SELECT_SET_F +! H5S_SELECT_OR_F +! H5S_SELECT_AND_F +! H5S_SELECT_XOR_F +! H5S_SELECT_NOTB_F +! H5S_SELECT_NOTA_F +! H5S_SELECT_APPEND_F +! H5S_SELECT_PREPEND_F +! space2_id - dataspace of selection to use +! +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: - NONE ! ! Programmer: Elena Pourmal ! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment:Commented out until 1.6 release(?) 10/08/2002 EIP +! Comment:Commented out until 1.6 release(?) 10/08/2002 EIP !---------------------------------------------------------------------- ! SUBROUTINE h5sselect_select_f(space1_id, operator, space2_id, & ! hdferr) ! IMPLICIT NONE ! INTEGER(HID_T), INTENT(INOUT) :: space1_id ! Dataspace identifier to - ! modify -! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier + ! modify +! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier ! INTEGER, INTENT(IN) :: operator ! Flag, valid values are: - ! H5S_SELECT_NOOP_F - ! H5S_SELECT_SET_F - ! H5S_SELECT_OR_F - ! H5S_SELECT_AND_F - ! H5S_SELECT_XOR_F - ! H5S_SELECT_NOTB_F - ! H5S_SELECT_NOTA_F - ! H5S_SELECT_APPEND_F - ! H5S_SELECT_PREPEND_F - ! + ! H5S_SELECT_NOOP_F + ! H5S_SELECT_SET_F + ! H5S_SELECT_OR_F + ! H5S_SELECT_AND_F + ! H5S_SELECT_XOR_F + ! H5S_SELECT_NOTB_F + ! H5S_SELECT_NOTA_F + ! H5S_SELECT_APPEND_F + ! H5S_SELECT_PREPEND_F + ! ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTERFACE @@ -1689,45 +1689,45 @@ ! hdferr = h5sselect_select_c(space1_id, operator, space2_id) ! return - + ! END SUBROUTINE h5sselect_select_f !---------------------------------------------------------------------- -! Name: h5sget_select_type_f +! Name: h5sget_select_type_f ! ! Purpose: Retrieve the type of selection ! -! Inputs: +! Inputs: ! space_id - dataspace iidentifier with selection -! Outputs: +! Outputs: ! type - flag, valid values are: -! H5S_SEL_ERROR_F -! H5S_SEL_NONE_F -! H5S_SEL_POINTS_F -! H5S_SEL_HYPERSLABS_F -! H5S_SEL_ALL_F -! hdferr: - error code +! H5S_SEL_ERROR_F +! H5S_SEL_NONE_F +! H5S_SEL_POINTS_F +! H5S_SEL_HYPERSLABS_F +! H5S_SEL_ALL_F +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: - NONE ! ! Programmer: Elena Pourmal ! October 7, 2002 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sget_select_type_f(space_id, type, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(INOUT) :: space_id ! Dataspace identifier to INTEGER, INTENT(OUT) :: type ! Selection type - ! H5S_SEL_ERROR_F - ! H5S_SEL_NONE_F - ! H5S_SEL_POINTS_F - ! H5S_SEL_HYPERSLABS_F - ! H5S_SEL_ALL_F + ! H5S_SEL_ERROR_F + ! H5S_SEL_NONE_F + ! H5S_SEL_POINTS_F + ! H5S_SEL_HYPERSLABS_F + ! H5S_SEL_ALL_F INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -1743,7 +1743,7 @@ hdferr = h5sget_select_type_c(space_id, type) return - + END SUBROUTINE h5sget_select_type_f !---------------------------------------------------------------------- @@ -1751,11 +1751,11 @@ ! ! Purpose: Decode a binary object description of data space and return a new object handle. ! -! Inputs: +! Inputs: ! buf - Buffer for the data space object to be decoded. ! obj_id - Object ID ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! @@ -1764,9 +1764,9 @@ ! Programmer: M.S. Breitenfeld ! March 26, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sdecode_f(buf, obj_id, hdferr) @@ -1788,7 +1788,7 @@ END INTERFACE hdferr = h5sdecode_c(buf, obj_id) - + END SUBROUTINE h5sdecode_f !---------------------------------------------------------------------- @@ -1802,7 +1802,7 @@ ! nalloc - The size of the allocated buffer. ! Outputs: ! nalloc - The size of the buffer needed. -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! @@ -1811,9 +1811,9 @@ ! Programmer: M.S. Breitenfeld ! March 26, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sencode_f(obj_id, buf, nalloc, hdferr) @@ -1836,25 +1836,25 @@ INTEGER(SIZE_T), INTENT(INOUT) :: nalloc END FUNCTION h5sencode_c END INTERFACE - + hdferr = h5sencode_c(buf, obj_id, nalloc) END SUBROUTINE h5sencode_f - + !---------------------------------------------------------------------- -! Name: h5sextent_equal_f +! Name: h5sextent_equal_f ! ! Purpose: Determines whether two dataspace extents are equal. ! -! Inputs: +! Inputs: ! space1_id - First dataspace identifier. ! space2_id - Second dataspace identifier. -! Outputs: +! Outputs: ! Equal - .TRUE. if equal, .FALSE. if unequal. -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -1863,7 +1863,7 @@ ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5sextent_equal_f(space1_id, space2_id, equal, hdferr) @@ -1886,14 +1886,14 @@ INTEGER(HID_T) :: c_equal END FUNCTION h5sextent_equal_c END INTERFACE - + hdferr = h5sextent_equal_c(space1_id, space2_id, c_equal) - + equal = .FALSE. - IF(c_equal.GT.0) equal = .TRUE. + IF(c_equal.GT.0) equal = .TRUE. + - END SUBROUTINE h5sextent_equal_f END MODULE H5S diff --git a/fortran/src/H5Tff.f90 b/fortran/src/H5Tff.f90 index 2e981ad..82220c7 100644 --- a/fortran/src/H5Tff.f90 +++ b/fortran/src/H5Tff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains FORTRAN90 interfaces for H5T functions @@ -19,41 +19,41 @@ MODULE H5T USE H5GLOBAL - + CONTAINS !---------------------------------------------------------------------- -! Name: h5topen_f +! Name: h5topen_f ! -! Purpose: Opens named datatype. +! Purpose: Opens named datatype. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - a datatype name -! Outputs: +! Outputs: ! type_id - datatype identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! tapl_id - datatype access property list identifier. ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! ! Added optional parameter 'tapl_id' for compatability -! with H5Topen2. April 9, 2009. +! with H5Topen2. April 9, 2009. ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5topen_f(loc_id, name, type_id, hdferr, tapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Datatype name within file or group INTEGER(HID_T), INTENT(OUT) :: type_id ! Datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -70,7 +70,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TOPEN_C'::h5topen_c !DEC$ENDIF - !DEC$ATTRIBUTES reference ::name + !DEC$ATTRIBUTES reference ::name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen @@ -78,7 +78,7 @@ CONTAINS INTEGER(HID_T) :: tapl_id_default END FUNCTION h5topen_c END INTERFACE - + namelen = LEN(name) tapl_id_default = H5P_DEFAULT_F @@ -88,47 +88,47 @@ CONTAINS END SUBROUTINE h5topen_f !---------------------------------------------------------------------- -! Name: h5tcommit_f +! Name: h5tcommit_f ! -! Purpose: Commits a transient datatype to a file, creating a -! new named datatype. +! Purpose: Commits a transient datatype to a file, creating a +! new named datatype. ! -! Inputs: +! Inputs: ! loc_id - location identifier ! name - name of the datatype to be stored ! at the specified location ! type_id - identifier of a datatype to be stored -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! lcpl_id - Link creation property list ! tcpl_id - Datatype creation property list ! tapl_id - Datatype access property list ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: - Explicit Fortran interfaces were added for +! Modifications: - Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows ! port). March 7, 2001 ! -! - Added optional parameters introduced in version 1.8 +! - Added optional parameters introduced in version 1.8 ! M.S. Breitenfeld ! ! ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tcommit_f(loc_id, name, type_id, hdferr, & lcpl_id, tcpl_id, tapl_id ) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier - CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Datatype name within file or group - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! Datatype creation property list @@ -150,7 +150,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOMMIT_C'::h5tcommit_c !DEC$ENDIF - !DEC$ATTRIBUTES reference ::name + !DEC$ATTRIBUTES reference ::name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen @@ -168,7 +168,7 @@ CONTAINS IF (PRESENT(lcpl_id)) lcpl_id_default = lcpl_id IF (PRESENT(tcpl_id)) tcpl_id_default = tcpl_id IF (PRESENT(tapl_id)) tapl_id_default = tapl_id - + namelen = LEN(name) hdferr = h5tcommit_c(loc_id, name, namelen, type_id, & @@ -177,36 +177,36 @@ CONTAINS END SUBROUTINE h5tcommit_f !---------------------------------------------------------------------- -! Name: h5tcopy_f +! Name: h5tcopy_f ! -! Purpose: iCreates a copy of exisiting datatype. +! Purpose: iCreates a copy of exisiting datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! new_type_id - identifier of datatype's copy -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tcopy_f(type_id, new_type_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER(HID_T), INTENT(OUT) :: new_type_id - ! Identifier of datatype's copy + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(OUT) :: new_type_id + ! Identifier of datatype's copy INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tcopy_c @@ -227,37 +227,37 @@ CONTAINS END SUBROUTINE h5tcopy_f !---------------------------------------------------------------------- -! Name: h5tequal_f +! Name: h5tequal_f ! -! Purpose: Determines whether two datatype identifiers refer -! to the same datatype. +! Purpose: Determines whether two datatype identifiers refer +! to the same datatype. ! -! Inputs: +! Inputs: ! type1_id - datatype identifier ! type2_id - datatype identifier -! Outputs: +! Outputs: ! flag - TRUE/FALSE flag to indicate ! if two datatypes are equal -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tequal_f(type1_id, type2_id, flag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type1_id ! Datatype identifier - INTEGER(HID_T), INTENT(IN) :: type2_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type1_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type2_id ! Datatype identifier LOGICAL, INTENT(OUT) :: flag ! TRUE/FALSE flag to indicate if two ! datatypes are equal INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -271,8 +271,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TEQUAL_C'::h5tequal_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type1_id - INTEGER(HID_T), INTENT(IN) :: type2_id + INTEGER(HID_T), INTENT(IN) :: type1_id + INTEGER(HID_T), INTENT(IN) :: type2_id INTEGER :: c_flag END FUNCTION h5tequal_c END INTERFACE @@ -283,33 +283,33 @@ CONTAINS END SUBROUTINE h5tequal_f !---------------------------------------------------------------------- -! Name: h5tclose_f +! Name: h5tclose_f ! -! Purpose: Releases a datatype. +! Purpose: Releases a datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tclose_f(type_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tclose_c @@ -329,13 +329,13 @@ CONTAINS END SUBROUTINE h5tclose_f !---------------------------------------------------------------------- -! Name: h5tget_class_f +! Name: h5tget_class_f ! -! Purpose: Returns the datatype class identifier. +! Purpose: Returns the datatype class identifier. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! class - class, possible values are: ! H5T_NO_CLASS_F (-1) ! H5T_INTEGER_F (0) @@ -347,27 +347,27 @@ CONTAINS ! H5T_COMPOUND_F (6) ! H5T_REFERENCE_F (7) ! H5T_ENUM_F (8) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_class_f(type_id, class, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: class + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: class ! Datatype class, possible values are: ! H5T_NO_CLASS_F (-1) ! H5T_INTEGER_F (0) @@ -390,7 +390,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_CLASS_C'::h5tget_class_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER, INTENT(OUT) :: class END FUNCTION h5tget_class_c END INTERFACE @@ -399,34 +399,34 @@ CONTAINS END SUBROUTINE h5tget_class_f !---------------------------------------------------------------------- -! Name: h5tget_size_f +! Name: h5tget_size_f ! -! Purpose: Returns the size of a datatype. +! Purpose: Returns the size of a datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! size - datatype size -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_size_f(type_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(OUT) :: size ! Datatype size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -448,34 +448,34 @@ CONTAINS END SUBROUTINE h5tget_size_f !---------------------------------------------------------------------- -! Name: h5tset_size_f +! Name: h5tset_size_f ! -! Purpose: Sets the total size for an atomic datatype. +! Purpose: Sets the total size for an atomic datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! size - size of the datatype -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_size_f(type_id, size, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(IN) :: size ! Datatype size INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -497,39 +497,39 @@ CONTAINS END SUBROUTINE h5tset_size_f !---------------------------------------------------------------------- -! Name: h5tget_order_f +! Name: h5tget_order_f ! -! Purpose: Returns the byte order of an atomic datatype. +! Purpose: Returns the byte order of an atomic datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! order - byte order for the datatype, possible ! values are: ! H5T_ORDER_LE_F ! H5T_ORDER_BE_F ! H5T_ORDER_VAX_F (not implemented yet) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_order_f(type_id, order, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: order + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: order ! Datatype byte order, bossible values are: ! H5T_ORDER_LE_F ! H5T_ORDER_BE_F @@ -554,43 +554,43 @@ CONTAINS END SUBROUTINE h5tget_order_f !---------------------------------------------------------------------- -! Name: h5tset_order_f +! Name: h5tset_order_f ! -! Purpose: Sets the byte ordering of an atomic datatype. +! Purpose: Sets the byte ordering of an atomic datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! order - datatype byte order ! Possible values are: ! H5T_ORDER_LE_F ! H5T_ORDER_BE_F ! H5T_ORDER_VAX_F (not implemented yet) -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_order_f(type_id, order, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(IN) :: order ! Datatype byte order, bossible values ! are: - ! H5T_ORDER_LE_F + ! H5T_ORDER_LE_F ! H5T_ORDER_BE_F - ! H5T_ORDER_VAX_F + ! H5T_ORDER_VAX_F INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tset_order_c @@ -611,34 +611,34 @@ CONTAINS END SUBROUTINE h5tset_order_f !---------------------------------------------------------------------- -! Name: h5tget_precision_f +! Name: h5tget_precision_f ! -! Purpose: Returns the precision of an atomic datatype. +! Purpose: Returns the precision of an atomic datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! precision - precision of the datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_precision_f(type_id, precision, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(OUT) :: precision ! Datatype precision INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -651,8 +651,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_PRECISION_C'::h5tget_precision_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(OUT) :: precision + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(SIZE_T), INTENT(OUT) :: precision END FUNCTION h5tget_precision_c END INTERFACE @@ -660,33 +660,33 @@ CONTAINS END SUBROUTINE h5tget_precision_f !---------------------------------------------------------------------- -! Name: h5tset_precision_f +! Name: h5tset_precision_f ! -! Purpose: Sets the precision of an atomic datatype. +! Purpose: Sets the precision of an atomic datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! precision - datatype precision -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_precision_f(type_id, precision, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(IN) :: precision ! Datatype precision INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -699,8 +699,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_PRECISION_C'::h5tset_precision_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(IN) :: precision + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(SIZE_T), INTENT(IN) :: precision END FUNCTION h5tset_precision_c END INTERFACE @@ -708,33 +708,33 @@ CONTAINS END SUBROUTINE h5tset_precision_f !---------------------------------------------------------------------- -! Name: h5tget_offset_f +! Name: h5tget_offset_f ! -! Purpose: Retrieves the bit offset of the first significant bit. +! Purpose: Retrieves the bit offset of the first significant bit. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! offset - offset value -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_offset_f(type_id, offset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(OUT) :: offset ! Datatype bit offset of the ! first significant bit INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -748,8 +748,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_OFFSET_C'::h5tget_offset_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(OUT) :: offset + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(SIZE_T), INTENT(OUT) :: offset END FUNCTION h5tget_offset_c END INTERFACE @@ -757,33 +757,33 @@ CONTAINS END SUBROUTINE h5tget_offset_f !---------------------------------------------------------------------- -! Name: h5tset_offset_f +! Name: h5tset_offset_f ! -! Purpose: Sets the bit offset of the first significant bit. +! Purpose: Sets the bit offset of the first significant bit. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! offset - offset value -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_offset_f(type_id, offset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(IN) :: offset ! Datatype bit offset of the ! first significant bit INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -797,8 +797,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_OFFSET_C'::h5tset_offset_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(IN) :: offset + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(SIZE_T), INTENT(IN) :: offset END FUNCTION h5tset_offset_c END INTERFACE @@ -806,44 +806,44 @@ CONTAINS END SUBROUTINE h5tset_offset_f !---------------------------------------------------------------------- -! Name: h5tget_pad_f +! Name: h5tget_pad_f ! -! Purpose: Retrieves the padding type of the least and -! most-significant bit padding. +! Purpose: Retrieves the padding type of the least and +! most-significant bit padding. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! lsbpad - least-significant bit padding type -! msbpad - most-significant bit padding type +! Outputs: +! lsbpad - least-significant bit padding type +! msbpad - most-significant bit padding type ! Possible values of padding type are: ! H5T_PAD_ERROR_F = -1 ! H5T_PAD_ZERO_F = 0 ! H5T_PAD_ONE_F = 1 ! H5T_PAD_BACKGROUND_F = 2 ! H5T_PAD_NPAD_F = 3 -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_pad_f(type_id, lsbpad, msbpad, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: lsbpad ! padding type of the + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: lsbpad ! padding type of the ! least significant bit - INTEGER, INTENT(OUT) :: msbpad ! padding type of the + INTEGER, INTENT(OUT) :: msbpad ! padding type of the ! most significant bit ! Possible values of padding type are: ! H5T__PAD_ZERO_F = 0 @@ -864,7 +864,7 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_PAD_C'::h5tget_pad_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER, INTENT(OUT) :: lsbpad + INTEGER, INTENT(OUT) :: lsbpad INTEGER, INTENT(OUT) :: msbpad END FUNCTION h5tget_pad_c END INTERFACE @@ -873,43 +873,43 @@ CONTAINS END SUBROUTINE h5tget_pad_f !---------------------------------------------------------------------- -! Name: h5tset_pad_f +! Name: h5tset_pad_f ! -! Purpose: Sets the least and most-significant bits padding types. +! Purpose: Sets the least and most-significant bits padding types. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! lsbpad - least-significant bit padding type -! msbpad - most-significant bit padding type +! lsbpad - least-significant bit padding type +! msbpad - most-significant bit padding type ! Possible values of padding type are: ! H5T_PAD_ERROR_F = -1 ! H5T_PAD_ZERO_F = 0 ! H5T_PAD_ONE_F = 1 ! H5T_PAD_BACKGROUND_F = 2 ! H5T_PAD_NPAD_F = 3 -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_pad_f(type_id, lsbpad, msbpad, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: lsbpad ! padding type of the + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: lsbpad ! padding type of the ! least significant bit - INTEGER, INTENT(IN) :: msbpad ! padding type of the + INTEGER, INTENT(IN) :: msbpad ! padding type of the ! most significant bit ! Possible values of padding type are: ! H5T_PAD_ZERO_F = 0 @@ -929,7 +929,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_PAD_C'::h5tset_pad_c !DEC$ENDIF - INTEGER, INTENT(IN) :: lsbpad + INTEGER, INTENT(IN) :: lsbpad INTEGER, INTENT(IN) :: msbpad END FUNCTION h5tset_pad_c END INTERFACE @@ -938,44 +938,44 @@ CONTAINS END SUBROUTINE h5tset_pad_f !---------------------------------------------------------------------- -! Name: h5tget_sign_f +! Name: h5tget_sign_f ! -! Purpose: Retrieves the sign type for an integer type. +! Purpose: Retrieves the sign type for an integer type. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! sign - sign type +! Outputs: +! sign - sign type ! Possible values are: ! Unsigned integer type H5T_SGN_NONE_F = 0 ! Two's complement signed integer type ! H5T_SGN_2_F = 1 -! or error value: H5T_SGN_ERROR_F=-1 -! hdferr: - error code +! or error value: H5T_SGN_ERROR_F=-1 +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_sign_f(type_id, sign, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(OUT) :: sign ! sign type for an integer type !possible values are: !Unsigned integer type H5T_SGN_NONE_F = 0 !Two's complement signed integer type !H5T_SGN_2_F = 1 - !or error value: H5T_SGN_ERROR_F=-1 + !or error value: H5T_SGN_ERROR_F=-1 INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_sign_c @@ -996,44 +996,44 @@ CONTAINS END SUBROUTINE h5tget_sign_f !---------------------------------------------------------------------- -! Name: h5tset_sign_f +! Name: h5tset_sign_f ! -! Purpose: Sets the sign proprety for an integer type. +! Purpose: Sets the sign proprety for an integer type. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! sign - sign type +! sign - sign type ! Possible values are: ! Unsigned integer type H5T_SGN_NONE_F = 0 ! Two's complement signed integer type ! H5T_SGN_2_F = 1 -! or error value: H5T_SGN_ERROR_F=-1 -! Outputs: -! hdferr: - error code +! or error value: H5T_SGN_ERROR_F=-1 +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_sign_f(type_id, sign, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: sign !sign type for an integer type + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: sign !sign type for an integer type !possible values are: !Unsigned integer type H5T_SGN_NONE_F = 0 !Two's complement signed integer type !H5T_SGN_2_F = 1 - !or error value: H5T_SGN_ERROR_F=-1 + !or error value: H5T_SGN_ERROR_F=-1 INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tset_sign_c @@ -1054,41 +1054,41 @@ CONTAINS END SUBROUTINE h5tset_sign_f !---------------------------------------------------------------------- -! Name: h5tget_fields_f +! Name: h5tget_fields_f ! -! Purpose: Retrieves floating point datatype bit field information. +! Purpose: Retrieves floating point datatype bit field information. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! spos - sign bit-position ! epos - exponent bit-position ! esize - size of exponent in bits ! mpos - mantissa position ! msize - size of mantissa in bits -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER(SIZE_T), INTENT(OUT) :: spos ! sign bit-position - INTEGER(SIZE_T), INTENT(OUT) :: epos ! exponent bit-position + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(SIZE_T), INTENT(OUT) :: spos ! sign bit-position + INTEGER(SIZE_T), INTENT(OUT) :: epos ! exponent bit-position INTEGER(SIZE_T), INTENT(OUT) :: esize ! size of exponent in bits - INTEGER(SIZE_T), INTENT(OUT) :: mpos ! mantissa bit-position + INTEGER(SIZE_T), INTENT(OUT) :: mpos ! mantissa bit-position INTEGER(SIZE_T), INTENT(OUT) :: msize ! size of mantissa in bits INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1102,10 +1102,10 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_FIELDS_C'::h5tget_fields_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(OUT) :: spos - INTEGER(SIZE_T), INTENT(OUT) :: epos + INTEGER(SIZE_T), INTENT(OUT) :: spos + INTEGER(SIZE_T), INTENT(OUT) :: epos INTEGER(SIZE_T), INTENT(OUT) :: esize - INTEGER(SIZE_T), INTENT(OUT) :: mpos + INTEGER(SIZE_T), INTENT(OUT) :: mpos INTEGER(SIZE_T), INTENT(OUT) :: msize END FUNCTION h5tget_fields_c END INTERFACE @@ -1114,42 +1114,42 @@ CONTAINS END SUBROUTINE h5tget_fields_f !---------------------------------------------------------------------- -! Name: h5tset_fields_f +! Name: h5tset_fields_f ! -! Purpose: Sets locations and sizes of floating point bit fields. +! Purpose: Sets locations and sizes of floating point bit fields. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! spos - sign bit-position ! epos - exponent bit-position ! esize - size of exponent in bits ! mpos - mantissa position ! msize - size of mantissa in bits -! hdferr: - error code -! Outputs: -! hdferr: - error code +! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER(SIZE_T), INTENT(IN) :: spos ! sign bit-position - INTEGER(SIZE_T), INTENT(IN) :: epos ! exponent bit-position + INTEGER(SIZE_T), INTENT(IN) :: spos ! sign bit-position + INTEGER(SIZE_T), INTENT(IN) :: epos ! exponent bit-position INTEGER(SIZE_T), INTENT(IN) :: esize ! size of exponent in bits - INTEGER(SIZE_T), INTENT(IN) :: mpos ! mantissa bit-position + INTEGER(SIZE_T), INTENT(IN) :: mpos ! mantissa bit-position INTEGER(SIZE_T), INTENT(IN) :: msize ! size of mantissa in bits INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1163,10 +1163,10 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_FIELDS_C'::h5tset_fields_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(SIZE_T), INTENT(IN) :: spos - INTEGER(SIZE_T), INTENT(IN) :: epos + INTEGER(SIZE_T), INTENT(IN) :: spos + INTEGER(SIZE_T), INTENT(IN) :: epos INTEGER(SIZE_T), INTENT(IN) :: esize - INTEGER(SIZE_T), INTENT(IN) :: mpos + INTEGER(SIZE_T), INTENT(IN) :: mpos INTEGER(SIZE_T), INTENT(IN) :: msize END FUNCTION h5tset_fields_c END INTERFACE @@ -1175,33 +1175,33 @@ CONTAINS END SUBROUTINE h5tset_fields_f !---------------------------------------------------------------------- -! Name: h5tget_ebias_f +! Name: h5tget_ebias_f ! -! Purpose: Retrieves the exponent bias of a floating-point type. +! Purpose: Retrieves the exponent bias of a floating-point type. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! ebias - datatype exponent bias -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_ebias_f(type_id, ebias, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(OUT) :: ebias ! Datatype exponent bias of a floating-point type INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1214,7 +1214,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_EBIAS_C'::h5tget_ebias_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(SIZE_T), INTENT(OUT) :: ebias END FUNCTION h5tget_ebias_c END INTERFACE @@ -1223,34 +1223,34 @@ CONTAINS END SUBROUTINE h5tget_ebias_f !---------------------------------------------------------------------- -! Name: h5tset_ebias_f +! Name: h5tset_ebias_f ! -! Purpose: Sets the exponent bias of a floating-point type. +! Purpose: Sets the exponent bias of a floating-point type. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! ebias - datatype exponent bias -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_ebias_f(type_id, ebias, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER(SIZE_T), INTENT(IN) :: ebias !Datatype exponent bias of a floating-point type INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1263,7 +1263,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_EBIAS_C'::h5tset_ebias_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(SIZE_T), INTENT(IN) :: ebias END FUNCTION h5tset_ebias_c END INTERFACE @@ -1272,41 +1272,41 @@ CONTAINS END SUBROUTINE h5tset_ebias_f !---------------------------------------------------------------------- -! Name: h5tget_norm_f +! Name: h5tget_norm_f ! -! Purpose: Retrieves mantissa normalization of a floating-point -! datatype. +! Purpose: Retrieves mantissa normalization of a floating-point +! datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! norm - normalization types, valid values are: ! H5T_NORM_IMPLIED_F(0) ! H5T_NORM_MSBSET_F(1) ! H5T_NORM_NONE_F(2) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_norm_f(type_id, norm, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(OUT) :: norm !mantissa normalization of a floating-point datatype !Valid normalization types are: - !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not - !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of + !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not + !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of !mantissa is always 1, H5T_NORM_NONE_F(2) !Mantissa is not normalize INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1329,41 +1329,41 @@ CONTAINS END SUBROUTINE h5tget_norm_f !---------------------------------------------------------------------- -! Name: h5tset_norm_f +! Name: h5tset_norm_f ! -! Purpose: Sets the mantissa normalization of a floating-point datatype. +! Purpose: Sets the mantissa normalization of a floating-point datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! norm - normalization types, valid values are: ! H5T_NORM_IMPLIED_F(0) ! H5T_NORM_MSBSET_F(1) ! H5T_NORM_NONE_F(2) -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_norm_f(type_id, norm, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(IN) :: norm !mantissa normalization of a floating-point datatype !Valid normalization types are: - !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not - !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of + !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not + !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of !mantissa is always 1, H5T_NORM_NONE_F(2) !Mantissa is not normalize INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1386,39 +1386,39 @@ CONTAINS END SUBROUTINE h5tset_norm_f !---------------------------------------------------------------------- -! Name: h5tget_inpad_f +! Name: h5tget_inpad_f ! -! Purpose: Retrieves the internal padding type for unused bits -! in floating-point datatypes. +! Purpose: Retrieves the internal padding type for unused bits +! in floating-point datatypes. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! padtype - padding type for unused bits ! Possible values of padding type are: ! H5T_PAD_ZERO_F = 0 ! H5T_PAD_ONE_F = 1 ! H5T_PAD_BACKGROUND_F = 2 -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_inpad_f(type_id, padtype, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: padtype ! padding type for unused bits + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: padtype ! padding type for unused bits ! in floating-point datatypes. ! Possible values of padding type are: ! H5T__PAD_ZERO_F = 0 @@ -1445,38 +1445,38 @@ CONTAINS END SUBROUTINE h5tget_inpad_f !---------------------------------------------------------------------- -! Name: h5tset_inpad_f +! Name: h5tset_inpad_f ! -! Purpose: Fills unused internal floating point bits. +! Purpose: Fills unused internal floating point bits. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! padtype - padding type for unused bits ! Possible values of padding type are: ! H5T_PAD_ZERO_F = 0 ! H5T_PAD_ONE_F = 1 ! H5T_PAD_BACKGROUND_F = 2 -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_inpad_f(type_id, padtype, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: padtype ! padding type for unused bits + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: padtype ! padding type for unused bits ! in floating-point datatypes. ! Possible values of padding type are: ! H5T__PAD_ZERO_F = 0 @@ -1502,36 +1502,36 @@ CONTAINS END SUBROUTINE h5tset_inpad_f !---------------------------------------------------------------------- -! Name: h5tget_cset_f +! Name: h5tget_cset_f ! -! Purpose: Retrieves the character set type of a string datatype. +! Purpose: Retrieves the character set type of a string datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! cset - character set type of a string datatype ! Possible values of padding type are: ! H5T_CSET_ASCII_F = 0 -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_cset_f(type_id, cset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: cset ! character set type of a string datatype + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: cset ! character set type of a string datatype ! Possible values of padding type are: !H5T_CSET_ASCII_F = 0 INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1554,36 +1554,36 @@ CONTAINS END SUBROUTINE h5tget_cset_f !---------------------------------------------------------------------- -! Name: h5tset_cset_f +! Name: h5tset_cset_f ! -! Purpose: Sets character set to be used. +! Purpose: Sets character set to be used. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! cset - character set type of a string datatype ! Possible values of padding type are: ! H5T_CSET_ASCII_F = 0 -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_cset_f(type_id, cset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: cset !character set type of a string datatype + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: cset !character set type of a string datatype !Possible values of padding type are: !H5T_CSET_ASCII_F = 0 INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1606,39 +1606,39 @@ CONTAINS END SUBROUTINE h5tset_cset_f !---------------------------------------------------------------------- -! Name: h5tget_strpad_f +! Name: h5tget_strpad_f ! -! Purpose: Retrieves the storage mechanism for a string datatype. +! Purpose: Retrieves the storage mechanism for a string datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: +! Outputs: ! strpad - storage method for a string datatype ! Possible values are: -! H5T_STR_NULLTERM_F, -! H5T_STR_NULLPAD_F, +! H5T_STR_NULLTERM_F, +! H5T_STR_NULLPAD_F, ! H5T_STR_SPACEPAD_F ! H5T_STR_ERROR_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_strpad_f(type_id, strpad, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: strpad + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: strpad INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_strpad_c @@ -1659,39 +1659,39 @@ CONTAINS END SUBROUTINE h5tget_strpad_f !---------------------------------------------------------------------- -! Name: h5tset_strpad_f +! Name: h5tset_strpad_f ! -! Purpose: Defines the storage mechanism for character strings. +! Purpose: Defines the storage mechanism for character strings. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! strpad - storage method for a string datatype ! Possible values are: -! H5T_STR_NULLTERM_F, -! H5T_STR_NULLPAD_F, +! H5T_STR_NULLTERM_F, +! H5T_STR_NULLPAD_F, ! H5T_STR_SPACEPAD_F ! H5T_STR_ERROR_F -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_strpad_f(type_id, strpad, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: strpad ! string padding method for a string datatype + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: strpad ! string padding method for a string datatype INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tset_strpad_c @@ -1712,35 +1712,35 @@ CONTAINS END SUBROUTINE h5tset_strpad_f !---------------------------------------------------------------------- -! Name: h5tget_nmembers_f +! Name: h5tget_nmembers_f ! -! Purpose: Retrieves the number of fields in a compound datatype. +! Purpose: Retrieves the number of fields in a compound datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! num_members - number of members -! hdferr: - error code +! Outputs: +! num_members - number of members +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_nmembers_f(type_id, num_members, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(OUT) :: num_members !number of fields in a compound datatype + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(OUT) :: num_members !number of fields in a compound datatype INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_nmembers_c @@ -1761,39 +1761,39 @@ CONTAINS END SUBROUTINE h5tget_nmembers_f !---------------------------------------------------------------------- -! Name: h5tget_member_name_f +! Name: h5tget_member_name_f ! -! Purpose: Retrieves the name of a field of a compound datatype. +! Purpose: Retrieves the name of a field of a compound datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! index - filed index (0-based) -! Outputs: +! Outputs: ! member_name - buffer to hold member's name ! namelen - name length -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_name_f(type_id, index, member_name, namelen, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: index !Field index (0-based) of the field name to retrieve + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: index !Field index (0-based) of the field name to retrieve CHARACTER(LEN=*), INTENT(OUT) :: member_name !name of a field of - !a compound datatype - INTEGER, INTENT(OUT) :: namelen ! Length of the name + !a compound datatype + INTEGER, INTENT(OUT) :: namelen ! Length of the name INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_member_name_c @@ -1806,46 +1806,46 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_NAME_C'::h5tget_member_name_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: member_name - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER, INTENT(IN) :: index CHARACTER(LEN=*), INTENT(OUT) :: member_name INTEGER, INTENT(OUT) :: namelen - END FUNCTION + END FUNCTION END INTERFACE hdferr = h5tget_member_name_c(type_id, index, member_name, namelen) END SUBROUTINE h5tget_member_name_f !---------------------------------------------------------------------- -! Name: h5tget_member_offset_f +! Name: h5tget_member_offset_f ! -! Purpose: Retrieves the offset of a field of a compound datatype. +! Purpose: Retrieves the offset of a field of a compound datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! member_no - number of the field -! Outputs: +! Outputs: ! offset - byte offset of the requested field -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_offset_f(type_id, member_no, offset, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER, INTENT(IN) :: member_no !Number of the field + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER, INTENT(IN) :: member_no !Number of the field !whose offset is requested INTEGER(SIZE_T), INTENT(OUT) :: offset !byte offset of the beginning of the field INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1868,19 +1868,19 @@ CONTAINS hdferr = h5tget_member_offset_c(type_id, member_no, offset ) END SUBROUTINE h5tget_member_offset_f !---------------------------------------------------------------------- -! Name: h5tget_member_index_f +! Name: h5tget_member_index_f ! -! Purpose: Retrieves the index of a compound or enumeration datatype member. +! Purpose: Retrieves the index of a compound or enumeration datatype member. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! name - name of the field or member whose index to ! to be retrieved from the datatype. -! Outputs: +! Outputs: ! index - 0-based index of the filed or member (0 to N-1) -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! @@ -1889,16 +1889,16 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_index_f(type_id, name, index, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Field or member name INTEGER, INTENT(OUT) :: index ! Field or member index INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: namelen ! Name length + INTEGER :: namelen ! Name length INTERFACE INTEGER FUNCTION h5tget_member_index_c(type_id, name, namelen, index) @@ -1906,11 +1906,11 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_INDEX_C'::h5tget_member_index_c !DEC$ENDIF - !DEC$ATTRIBUTES reference ::name + !DEC$ATTRIBUTES reference ::name INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: namelen - INTEGER, INTENT(OUT) :: index + INTEGER, INTENT(OUT) :: index END FUNCTION h5tget_member_index_c END INTERFACE @@ -1920,39 +1920,39 @@ CONTAINS !---------------------------------------------------------------------- -! Name: h5tget_member_dim_f +! Name: h5tget_member_dim_f ! -! Purpose: This function is not supported in hdf5-1.4.* +! Purpose: This function is not supported in hdf5-1.4.* ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- ! SUBROUTINE h5tget_member_dims_f(type_id, field_idx,dims, field_dims, perm, hdferr) ! ! IMPLICIT NONE -! INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier -! INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of +! INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier +! INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of ! !field_dims, perm) ! INTEGER, INTENT(OUT) :: dims !number of dimensions of the field ! -! INTEGER(SIZE_T),DIMENSION(*), INTENT(OUT) :: field_dims !buffer to store the +! INTEGER(SIZE_T),DIMENSION(*), INTENT(OUT) :: field_dims !buffer to store the ! !dimensions of the field -! INTEGER, DIMENSION(*), INTENT(OUT) :: perm !buffer to store the +! INTEGER, DIMENSION(*), INTENT(OUT) :: perm !buffer to store the ! !permutation vector of the field ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_member_dims_c @@ -1961,36 +1961,36 @@ CONTAINS ! END SUBROUTINE h5tget_member_dims_f !---------------------------------------------------------------------- -! Name: h5tget_array_dims_f +! Name: h5tget_array_dims_f ! ! Purpose: Returns sizes of array dimensions. ! -! Inputs: +! Inputs: ! type_id - array datatype identifier -! Outputs: +! Outputs: ! dims - buffer to store array datatype ! dimensions -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_array_dims_f(type_id, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) :: dims !buffer to store array datatype - ! dimensions + ! dimensions INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_array_dims_c @@ -2012,33 +2012,33 @@ CONTAINS END SUBROUTINE h5tget_array_dims_f !---------------------------------------------------------------------- -! Name: h5tget_array_ndims_f +! Name: h5tget_array_ndims_f ! -! Purpose: Returns the rank of an array datatype. +! Purpose: Returns the rank of an array datatype. ! -! Inputs: +! Inputs: ! type_id - array datatype identifier -! Outputs: +! Outputs: ! ndims - number of array dimensions -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_array_ndims_f(type_id, ndims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier INTEGER, INTENT(OUT) :: ndims ! number of array dimensions INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2061,33 +2061,33 @@ CONTAINS END SUBROUTINE h5tget_array_ndims_f !---------------------------------------------------------------------- -! Name: h5tget_super_f +! Name: h5tget_super_f ! -! Purpose: Returns the base datatype from which a datatype is derived. +! Purpose: Returns the base datatype from which a datatype is derived. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! base_type_id - identifier of the base type -! hdferr: - error code +! Outputs: +! base_type_id - identifier of the base type +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_super_f(type_id, base_type_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier INTEGER(HID_T), INTENT(OUT) :: base_type_id ! identifier of the datatype ! from which datatype (type_id) was derived INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2101,7 +2101,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_SUPER_C'::h5tget_super_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER(HID_T), INTENT(OUT) :: base_type_id END FUNCTION h5tget_super_c END INTERFACE @@ -2111,38 +2111,38 @@ CONTAINS END SUBROUTINE h5tget_super_f !---------------------------------------------------------------------- -! Name: h5tget_member_type_f +! Name: h5tget_member_type_f ! -! Purpose: Returns the datatype of the specified member. +! Purpose: Returns the datatype of the specified member. ! -! Inputs: +! Inputs: ! type_id - compound datatype identifier ! field_idx - field index (0-based) ! -! Outputs: +! Outputs: ! datatype - idnetifier of the member's datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_type_f(type_id, field_idx, datatype, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of the field type to retrieve - INTEGER(HID_T), INTENT(OUT) :: datatype !identifier of a copy of - !the datatype of the field + INTEGER(HID_T), INTENT(OUT) :: datatype !identifier of a copy of + !the datatype of the field INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_member_type_c @@ -2164,32 +2164,32 @@ CONTAINS END SUBROUTINE h5tget_member_type_f !---------------------------------------------------------------------- -! Name: h5tcreate_f +! Name: h5tcreate_f ! ! Purpose: Creates a new dataype ! -! Inputs: +! Inputs: ! class - datatype class, possible values are: ! H5T_COMPOUND_F -! H5T_ENUM_F +! H5T_ENUM_F ! H5T_OPAQUE_F ! size - datattype size -! Outputs: +! Outputs: ! type_id - datatype identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- @@ -2197,7 +2197,7 @@ CONTAINS IMPLICIT NONE INTEGER, INTENT(IN) :: class ! Datatype class can be one of ! H5T_COMPOUND_F - ! H5T_ENUM_F + ! H5T_ENUM_F ! H5T_OPAQUE_F INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the datatype INTEGER(HID_T), INTENT(OUT) :: type_id ! Datatype identifier @@ -2212,9 +2212,9 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCREATE_C'::h5tcreate_c !DEC$ENDIF - INTEGER, INTENT(IN) :: class - INTEGER(SIZE_T), INTENT(IN) :: size - INTEGER(HID_T), INTENT(OUT) :: type_id + INTEGER, INTENT(IN) :: class + INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(HID_T), INTENT(OUT) :: type_id END FUNCTION h5tcreate_c END INTERFACE @@ -2222,36 +2222,36 @@ CONTAINS END SUBROUTINE h5tcreate_f !---------------------------------------------------------------------- -! Name: h5tinsert_f +! Name: h5tinsert_f ! -! Purpose: Adds a new member to a compound datatype. +! Purpose: Adds a new member to a compound datatype. ! -! Inputs: +! Inputs: ! type_id - compound dattype identifier ! name - name of the field to insert -! offset - start of the member in an instance of +! offset - start of the member in an instance of ! the compound datatype ! field_id - datatype identifier of the field to insert -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tinsert_f(type_id, name, offset, field_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier CHARACTER(LEN=*), INTENT(IN) :: name !Name of the field to insert INTEGER(SIZE_T), INTENT(IN) :: offset !start of the member in an instance of !the compound datatype @@ -2273,7 +2273,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(SIZE_T), INTENT(IN) :: offset - INTEGER(HID_T), INTENT(IN) :: field_id + INTEGER(HID_T), INTENT(IN) :: field_id INTEGER :: namelen END FUNCTION h5tinsert_c END INTERFACE @@ -2283,27 +2283,27 @@ CONTAINS END SUBROUTINE h5tinsert_f !---------------------------------------------------------------------- -! Name: h5tpack_f +! Name: h5tpack_f ! -! Purpose: Recursively removes padding from within a compound datatype. +! Purpose: Recursively removes padding from within a compound datatype. ! -! Inputs: +! Inputs: ! type_id - compound datatype identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tpack_f(type_id, hdferr) @@ -2324,46 +2324,46 @@ CONTAINS END FUNCTION h5tpack_c END INTERFACE - hdferr = h5tpack_c(type_id) + hdferr = h5tpack_c(type_id) END SUBROUTINE h5tpack_f !---------------------------------------------------------------------- -! Name: h5tinsert_array_f +! Name: h5tinsert_array_f ! ! Purpose: This function is not available on hdf5-1.4.* ! -! Inputs: -! Outputs: -! hdferr: - error code +! Inputs: +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- ! SUBROUTINE h5tinsert_array_f(parent_id,name,offset, ndims, dims, member_id, hdferr, perm) ! IMPLICIT NONE ! INTEGER(HID_T), INTENT(IN) :: parent_id ! identifier of the parent compound datatype ! CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member -! INTEGER(SIZE_T), INTENT(IN) :: offset !Offset to start of new member +! INTEGER(SIZE_T), INTENT(IN) :: offset !Offset to start of new member ! !within compound datatype -! INTEGER, INTENT(IN) :: ndims !Dimensionality of new member. +! INTEGER, INTENT(IN) :: ndims !Dimensionality of new member. ! !Valid values are 0 (zero) through 4 (four) ! INTEGER(SIZE_T), DIMENSION(*), INTENT(IN) :: dims !Size of new member array ! INTEGER(HID_T), INTENT(IN) :: member_id ! identifier of the datatype of the new member ! INTEGER, INTENT(OUT) :: hdferr ! Error code ! -! INTEGER, DIMENSION(*), OPTIONAL, INTENT(IN) :: perm -! !Pointer to buffer to store +! INTEGER, DIMENSION(*), OPTIONAL, INTENT(IN) :: perm +! !Pointer to buffer to store ! !the permutation vector of the field ! INTEGER :: namelen, sizeofperm ! INTEGER, EXTERNAL :: h5tinsert_array_c, h5tinsert_array_c2 @@ -2371,45 +2371,45 @@ CONTAINS ! if (present(perm)) then ! hdferr = h5tinsert_array_c(parent_id, name, namelen, offset, ndims,dims, member_id, perm) ! else -! hdferr = h5tinsert_array_c2(parent_id, name, namelen, offset, ndims,dims, member_id) -! end if -! +! hdferr = h5tinsert_array_c2(parent_id, name, namelen, offset, ndims,dims, member_id) +! end if +! ! END SUBROUTINE h5tinsert_array_f !---------------------------------------------------------------------- -! Name: h5tarray_create_f +! Name: h5tarray_create_f ! -! Purpose: Creates an array datatype object. +! Purpose: Creates an array datatype object. ! -! Inputs: -! base_id - datatype identifier for the array +! Inputs: +! base_id - datatype identifier for the array ! base datatype ! rank - rank of the array ! dims - array dimension sizes -! Outputs: +! Outputs: ! type_id - array datatype identifier -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5tarray_create_f(base_id, rank, dims, type_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: base_id ! identifier of array base datatype INTEGER, INTENT(IN) :: rank ! Rank of the array INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims !Sizes of each array dimension - INTEGER(HID_T), INTENT(OUT) :: type_id ! identifier of the array datatype + INTEGER(HID_T), INTENT(OUT) :: type_id ! identifier of the array datatype INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2430,42 +2430,42 @@ CONTAINS END INTERFACE hdferr = h5tarray_create_c(base_id, rank, dims, type_id) - + END SUBROUTINE h5tarray_create_f !---------------------------------------------------------------------- -! Name: h5tenum_create_f +! Name: h5tenum_create_f ! -! Purpose: Creates a new enumeration datatype. +! Purpose: Creates a new enumeration datatype. ! -! Inputs: -! parent_id - datatype identifier for base datatype -! Outputs: +! Inputs: +! parent_id - datatype identifier for base datatype +! Outputs: ! new_type_id - datatype identifier for the enumeration ! datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tenum_create_f(parent_id, new_type_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: parent_id ! Datatype identifier for ! the base datatype - INTEGER(HID_T), INTENT(OUT) :: new_type_id + INTEGER(HID_T), INTENT(OUT) :: new_type_id !datatype identifier for the - ! new enumeration datatype + ! new enumeration datatype INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tenum_create_c @@ -2477,8 +2477,8 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_CREATE_C'::h5tenum_create_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: parent_id - INTEGER(HID_T), INTENT(OUT) :: new_type_id + INTEGER(HID_T), INTENT(IN) :: parent_id + INTEGER(HID_T), INTENT(OUT) :: new_type_id END FUNCTION h5tenum_create_c END INTERFACE @@ -2486,32 +2486,32 @@ CONTAINS END SUBROUTINE h5tenum_create_f !---------------------------------------------------------------------- -! Name: h5tenaum_insert_f +! Name: h5tenaum_insert_f ! -! Purpose: Inserts a new enumeration datatype member. +! Purpose: Inserts a new enumeration datatype member. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! Outputs: -! hdferr: - error code +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member INTEGER, INTENT(IN) :: value !value of the new member INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2527,8 +2527,8 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: type_id - CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(HID_T), INTENT(IN) :: type_id + CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: value INTEGER :: namelen END FUNCTION h5tenum_insert_c @@ -2539,36 +2539,36 @@ CONTAINS END SUBROUTINE h5tenum_insert_f !---------------------------------------------------------------------- -! Name: h5tenum_nameof_f +! Name: h5tenum_nameof_f ! -! Purpose: Returns the symbol name corresponding to a specified -! member of an enumeration datatype. +! Purpose: Returns the symbol name corresponding to a specified +! member of an enumeration datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier -! value - value of the enumeration datatype +! value - value of the enumeration datatype ! namelen - name buffer size -! Outputs: +! Outputs: ! name - buffer to hold symbol name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tenum_nameof_f(type_id, value, namelen, name, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier CHARACTER(LEN=*), INTENT(OUT) :: name !Name of the enumeration datatype. INTEGER(SIZE_T), INTENT(IN) :: namelen !length of the name INTEGER, INTENT(IN) :: value !value of the enumeration datatype. @@ -2584,9 +2584,9 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_NAMEOF_C'::h5tenum_nameof_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER(LEN=*), INTENT(OUT) :: name - INTEGER(SIZE_T), INTENT(IN) :: namelen + INTEGER(SIZE_T), INTENT(IN) :: namelen INTEGER, INTENT(IN) :: value END FUNCTION h5tenum_nameof_c END INTERFACE @@ -2595,35 +2595,35 @@ CONTAINS END SUBROUTINE h5tenum_nameof_f !---------------------------------------------------------------------- -! Name: h5tenum_valuof_f +! Name: h5tenum_valuof_f ! -! Purpose: Returns the value corresponding to a specified -! member of an enumeration datatype. +! Purpose: Returns the value corresponding to a specified +! member of an enumeration datatype. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! name - symbol name -! Outputs: +! Outputs: ! value - value of the enumeration datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- - + SUBROUTINE h5tenum_valueof_f(type_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier CHARACTER(LEN=*), INTENT(IN) :: name !Name of the enumeration datatype. INTEGER, INTENT(OUT) :: value !value of the enumeration datatype. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2639,9 +2639,9 @@ CONTAINS !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_VALUEOF_C'::h5tenum_valueof_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: name - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER(LEN=*), INTENT(IN) :: name - INTEGER, INTENT(IN) :: namelen + INTEGER, INTENT(IN) :: namelen INTEGER, INTENT(OUT) :: value END FUNCTION h5tenum_valueof_c END INTERFACE @@ -2651,34 +2651,34 @@ CONTAINS END SUBROUTINE h5tenum_valueof_f !---------------------------------------------------------------------- -! Name: h5tget_member_value_f +! Name: h5tget_member_value_f ! -! Purpose: Returns the value of an enumeration datatype member. +! Purpose: Returns the value of an enumeration datatype member. ! -! Inputs: +! Inputs: ! type_id - datatype identifier ! member_no - number of the enumeration datatype member -! Outputs: +! Outputs: ! value - value of the enumeration datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_value_f(type_id, member_no, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(IN) :: member_no !Number of the enumeration datatype member INTEGER, INTENT(OUT) :: value !value of the enumeration datatype. INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2692,46 +2692,46 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_VALUE_C'::h5tget_member_value_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: type_id INTEGER, INTENT(IN) :: member_no INTEGER, INTENT(OUT) :: value - END FUNCTION + END FUNCTION END INTERFACE hdferr = h5tget_member_value_c(type_id, member_no, value) END SUBROUTINE h5tget_member_value_f !---------------------------------------------------------------------- -! Name: h5tset_tag_f +! Name: h5tset_tag_f ! -! Purpose: Tags an opaque datatype. +! Purpose: Tags an opaque datatype. ! -! Inputs: +! Inputs: ! type_id - identifier for opaque datatype -! tag - unique ASCII string with which the opaque -! datatype is to be tagged. -! Outputs: -! hdferr: - error code +! tag - unique ASCII string with which the opaque +! datatype is to be tagged. +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tset_tag_f(type_id, tag, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - CHARACTER(LEN=*), INTENT(IN) :: tag !Unique ASCII string with which - !the opaque datatype is to be tagged + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + CHARACTER(LEN=*), INTENT(IN) :: tag !Unique ASCII string with which + !the opaque datatype is to be tagged INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: taglen @@ -2756,37 +2756,37 @@ CONTAINS END SUBROUTINE h5tset_tag_f !---------------------------------------------------------------------- -! Name: h5tget_tag_f +! Name: h5tget_tag_f ! -! Purpose: Gets the tag associated with an opaque datatype. +! Purpose: Gets the tag associated with an opaque datatype. ! -! Inputs: +! Inputs: ! type_id - identifier for opaque datatype -! Outputs: +! Outputs: ! tag - unique ASCII string associated with opaque ! datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). March 7, 2001 +! port). March 7, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_tag_f(type_id, tag,taglen, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - CHARACTER(LEN=*), INTENT(OUT) :: tag !Unique ASCII string with which + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + CHARACTER(LEN=*), INTENT(OUT) :: tag !Unique ASCII string with which !the opaque datatype is to be tagged - INTEGER, INTENT(OUT) :: taglen !length of tag + INTEGER, INTENT(OUT) :: taglen !length of tag INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5tget_tag_c @@ -2801,7 +2801,7 @@ CONTAINS !DEC$ATTRIBUTES reference :: tag INTEGER(HID_T), INTENT(IN) :: type_id CHARACTER(LEN=*), INTENT(OUT) :: tag - INTEGER, INTENT(OUT) :: taglen + INTEGER, INTENT(OUT) :: taglen END FUNCTION h5tget_tag_c END INTERFACE @@ -2809,32 +2809,32 @@ CONTAINS END SUBROUTINE h5tget_tag_f !---------------------------------------------------------------------- -! Name: h5tvlen_create_f +! Name: h5tvlen_create_f ! -! Purpose: Creates a new variable-length datatype. +! Purpose: Creates a new variable-length datatype. ! -! Inputs: +! Inputs: ! type_id - identifier iof base datatype -! Outputs: +! Outputs: ! vltype_id - identifier for VL datatype -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! Wednesday, October 23, 2002 ! -! Modifications: +! Modifications: ! -! Comment: Only basic Fortran base datatypes are supported +! Comment: Only basic Fortran base datatypes are supported !---------------------------------------------------------------------- SUBROUTINE h5tvlen_create_f(type_id, vltype_id, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier - INTEGER(HID_T), INTENT(OUT) :: vltype_id ! VL datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(OUT) :: vltype_id ! VL datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code INTERFACE @@ -2852,43 +2852,43 @@ CONTAINS END SUBROUTINE h5tvlen_create_f !---------------------------------------------------------------------- -! Name: h5tis_variable_str_f +! Name: h5tis_variable_str_f ! ! Purpose: Determines whether a dattype is a variable string. ! -! Inputs: +! Inputs: ! type_id - - datartpe identifier -! Outputs: +! Outputs: ! status - flag to indicate if datatype ! is a variable string -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 12, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tis_variable_str_f(type_id, status, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier LOGICAL, INTENT(OUT) :: status ! Flag, idicates if datatype ! is a variable string or not ( TRUE or - ! FALSE) + ! FALSE) INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: flag ! "TRUE/FALSE/ERROR from C" + INTEGER :: flag ! "TRUE/FALSE/ERROR from C" ! INTEGER, EXTERNAL :: h5tis_variable_str_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5tis_variable_str_c(type_id, flag) + INTEGER FUNCTION h5tis_variable_str_c(type_id, flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TIS_VARIABLE_STR_C'::h5tis_variable_str_c @@ -2901,18 +2901,18 @@ CONTAINS hdferr = h5tis_variable_str_c(type_id, flag) status = .TRUE. if (flag .EQ. 0) status = .FALSE. - + END SUBROUTINE h5tis_variable_str_f !---------------------------------------------------------------------- -! Name: h5tget_member_class_f +! Name: h5tget_member_class_f ! ! Purpose: Returns datatype class of compound datatype member. ! -! Inputs: +! Inputs: ! type_id - - datartpe identifier ! member_no - index of compound datatype member -! Outputs: +! Outputs: ! class - class type for compound dadtype member ! Can be one of the follwoing classes: ! H5T_NO_CLASS_F (error) @@ -2927,23 +2927,23 @@ CONTAINS ! H5T_ENUM_F ! H5T_VLEN_F ! H5T_ARRAY_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! April 6, 2005 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tget_member_class_f(type_id, member_no, class, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier INTEGER, INTENT(IN) :: member_no ! Member number INTEGER, INTENT(OUT) :: class ! Member class INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -2951,37 +2951,37 @@ CONTAINS ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5tget_member_class_c(type_id, member_no, class) + INTEGER FUNCTION h5tget_member_class_c(type_id, member_no, class) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_CLASS_C'::h5tget_member_class_c !DEC$ENDIF INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER, INTENT(IN) :: member_no - INTEGER, INTENT(OUT) :: class + INTEGER, INTENT(IN) :: member_no + INTEGER, INTENT(OUT) :: class END FUNCTION h5tget_member_class_c END INTERFACE hdferr = h5tget_member_class_c(type_id, member_no, class) - + END SUBROUTINE h5tget_member_class_f !---------------------------------------------------------------------- -! Name: h5tcommit_anon_f +! Name: h5tcommit_anon_f ! -! Purpose: Commits a transient datatype to a file, -! creating a new named datatype, -! but does not link it into the file structure. +! Purpose: Commits a transient datatype to a file, +! creating a new named datatype, +! but does not link it into the file structure. ! ! Inputs: -! loc_id - A file or group identifier specifying the file +! loc_id - A file or group identifier specifying the file ! in which the new named datatype is to be created. ! dtype_id - A datatype identifier. ! ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! tcpl_id - A datatype creation property list identifier. ! (H5P_DEFAULT_F for the default property list.) @@ -2993,17 +2993,17 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tcommit_anon_f(loc_id, dtype_id, hdferr, tcpl_id, tapl_id) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: loc_id ! A file or group identifier specifying - ! the file in which the new named datatype + INTEGER(HID_T), INTENT(IN) :: loc_id ! A file or group identifier specifying + ! the file in which the new named datatype ! is to be created. - INTEGER(HID_T), INTENT(IN) :: dtype_id ! Datatype identifier + INTEGER(HID_T), INTENT(IN) :: dtype_id ! Datatype identifier INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! A datatype creation property + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! A datatype creation property ! list identifier. ! (H5P_DEFAULT_F for the default property list.) INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! A datatype access property list identifier. @@ -3032,14 +3032,14 @@ CONTAINS IF(PRESENT(tcpl_id)) tcpl_id_default = tcpl_id IF(PRESENT(tapl_id)) tapl_id_default = tapl_id - - hdferr = h5tcommit_anon_c(loc_id, dtype_id, & + + hdferr = h5tcommit_anon_c(loc_id, dtype_id, & tcpl_id_default, tapl_id_default ) END SUBROUTINE h5tcommit_anon_f !---------------------------------------------------------------------- -! Name: h5tcommitted_f +! Name: h5tcommitted_f ! ! Purpose: Determines whether a datatype is a named type or a transient type. ! @@ -3049,9 +3049,9 @@ CONTAINS ! Outputs: ! committed - .TRUE., if the datatype has been committed ! .FALSE., if the datatype has not been committed. -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: None ! ! Programmer: M.S. Breitenfeld @@ -3059,7 +3059,7 @@ CONTAINS ! ! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tcommitted_f(dtype_id, committed, hdferr) @@ -3067,9 +3067,9 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dtype_id ! A datatype identifier LOGICAL, INTENT(OUT) :: committed ! .TRUE., if the datatype has been committed !.FALSE., if the datatype has not been committed. - INTEGER, INTENT(OUT) :: hdferr ! Error code: + INTEGER, INTENT(OUT) :: hdferr ! Error code: ! Success: 0 -! Failure: -1 +! Failure: -1 ! MS FORTRAN needs explicit interface for C functions called here. ! @@ -3094,7 +3094,7 @@ CONTAINS ELSE hdferr = -1 ENDIF - + END SUBROUTINE h5tcommitted_f @@ -3102,11 +3102,11 @@ CONTAINS ! Name: H5Tdecode_f ! ! Purpose: Decode a binary object description of data type and return a new object handle. -! Inputs: +! Inputs: ! buf - Buffer for the data space object to be decoded. ! obj_id - Object ID ! Outputs: -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! @@ -3115,9 +3115,9 @@ CONTAINS ! Programmer: M.S. Breitenfeld ! April 9, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tdecode_f(buf, obj_id, hdferr) @@ -3139,7 +3139,7 @@ CONTAINS END INTERFACE hdferr = h5tdecode_c(buf, obj_id) - + END SUBROUTINE h5tdecode_f !---------------------------------------------------------------------- @@ -3153,7 +3153,7 @@ CONTAINS ! nalloc - The size of the allocated buffer. ! Outputs: ! nalloc - The size of the buffer needed. -! hdferr: - error code +! hdferr: - error code ! Success: 0 ! Failure: -1 ! @@ -3162,9 +3162,9 @@ CONTAINS ! Programmer: M.S. Breitenfeld ! April 9, 2008 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5tencode_f(obj_id, buf, nalloc, hdferr) @@ -3187,28 +3187,28 @@ CONTAINS INTEGER(SIZE_T), INTENT(INOUT) :: nalloc END FUNCTION h5tencode_c END INTERFACE - + hdferr = h5tencode_c(buf, obj_id, nalloc) END SUBROUTINE h5tencode_f !---------------------------------------------------------------------- -! Name: h5tget_create_plist_f +! Name: h5tget_create_plist_f ! ! Purpose: Returns a copy of a datatype creation property list. -! -! Inputs: +! +! Inputs: ! dtype_id - Datatype identifier -! Outputs: +! Outputs: ! dtpl_id - Datatype property list identifier -! hdferr: - Error code +! hdferr: - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M.S. Breitenfeld -! April 9, 2008 +! April 9, 2008 ! ! Modifications: N/A ! @@ -3233,28 +3233,28 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: dtpl_id END FUNCTION h5tget_create_plist_c END INTERFACE - + hdferr = h5tget_create_plist_c(dtype_id, dtpl_id) END SUBROUTINE h5tget_create_plist_f !---------------------------------------------------------------------- -! Name: h5tcompiler_conv_f +! Name: h5tcompiler_conv_f ! ! Purpose: Check whether the library’s default conversion is hard conversion.R -! -! Inputs: +! +! Inputs: ! src_id - Identifier for the source datatype. ! dst_id - Identifier for the destination datatype. -! Outputs: +! Outputs: ! flag - TRUE for compiler conversion, FALSE for library conversion -! hdferr: - Error code +! hdferr: - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M.S. Breitenfeld -! April 9, 2008 +! April 9, 2008 ! ! Modifications: N/A ! @@ -3280,7 +3280,7 @@ CONTAINS INTEGER :: c_flag END FUNCTION h5tcompiler_conv_c END INTERFACE - + hdferr = h5tcompiler_conv_c(src_id, dst_id, c_flag) flag = .FALSE. @@ -3289,29 +3289,29 @@ CONTAINS END SUBROUTINE h5tcompiler_conv_f !---------------------------------------------------------------------- -! Name: h5tget_native_type_f +! Name: h5tget_native_type_f ! ! Purpose: Returns the native datatype of a specified datatype. -! -! Inputs: +! +! Inputs: ! dtype_id - Datatype identifier for the dataset datatype. ! * -! direction - Direction of search: +! direction - Direction of search: ! H5T_DIR_DEFAULT = 0, /*default direction is inscendent */ ! H5T_DIR_ASCEND = 1, /*in inscendent order */ ! H5T_DIR_DESCEND = 2 /*in descendent order */ ! * NOTE: In C it is defined as a structure: H5T_direction_t ! -! Outputs: +! Outputs: ! native_dtype_id - The native datatype identifier for the specified dataset datatype -! hdferr: - Error code +! hdferr: - Error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: M.S. Breitenfeld -! June 18, 2008 +! June 18, 2008 ! ! Modifications: N/A ! @@ -3332,12 +3332,12 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_NATIVE_TYPE_C'::h5tget_native_type_c !DEC$ENDIF - INTEGER(HID_T), INTENT(IN) :: dtype_id + INTEGER(HID_T), INTENT(IN) :: dtype_id INTEGER, INTENT(IN) :: direction INTEGER(HID_T), INTENT(OUT) :: native_dtype_id END FUNCTION h5tget_native_type_c END INTERFACE - + hdferr = h5tget_native_type_c(dtype_id, direction, native_dtype_id) END SUBROUTINE h5tget_native_type_f diff --git a/fortran/src/H5Zff.f90 b/fortran/src/H5Zff.f90 index 7465db5..750a7a5 100644 --- a/fortran/src/H5Zff.f90 +++ b/fortran/src/H5Zff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! This file contains FORTRAN90 interfaces for H5I functions @@ -19,7 +19,7 @@ MODULE H5Z USE H5GLOBAL - + CONTAINS !---------------------------------------------------------------------- @@ -28,22 +28,22 @@ ! Purpose: Unregisters specified filetr ! ! Inputs: filter - filter; may have one of the following values: -! H5Z_FILTER_DEFLATE_F -! H5Z_FILTER_SHUFFLE_F -! H5Z_FILTER_FLETCHER32_F -! Outputs: -! hdferr: - error code +! H5Z_FILTER_DEFLATE_F +! H5Z_FILTER_SHUFFLE_F +! H5Z_FILTER_FLETCHER32_F +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal ! March 12, 2003 ! -! Modifications: +! Modifications: ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5zunregister_f(filter, hdferr) IMPLICIT NONE @@ -67,42 +67,42 @@ !---------------------------------------------------------------------- ! Name: h5zfilter_avail_f ! -! Purpose: Queries if filter is available +! Purpose: Queries if filter is available ! -! Inputs: +! Inputs: ! filter - filter -! Outputs: -! status - status; .TRUE. if filter is available, +! Outputs: +! status - status; .TRUE. if filter is available, ! .FALSE. otherwise -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! March 12, 2003 ! -! Modifications: +! Modifications: ! !---------------------------------------------------------------------- SUBROUTINE h5zfilter_avail_f(filter, status, hdferr) IMPLICIT NONE INTEGER, INTENT(IN) :: filter ! Filter; may be one of the following: - ! H5Z_FILTER_DEFLATE_F - ! H5Z_FILTER_SHUFFLE_F - ! H5Z_FILTER_FLETCHER32_F + ! H5Z_FILTER_DEFLATE_F + ! H5Z_FILTER_SHUFFLE_F + ! H5Z_FILTER_FLETCHER32_F LOGICAL, INTENT(OUT) :: status ! Flag, idicates if filter ! is availble not ( TRUE or - ! FALSE) + ! FALSE) INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER :: flag ! "TRUE/FALSE/ERROR from C" + INTEGER :: flag ! "TRUE/FALSE/ERROR from C" ! INTEGER, EXTERNAL :: h5zfilter_avail_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5zfilter_avail_c(filter, flag) + INTEGER FUNCTION h5zfilter_avail_c(filter, flag) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ZFILTER_AVAIL_C'::h5zfilter_avail_c @@ -115,51 +115,51 @@ hdferr = h5zfilter_avail_c(filter, flag) status = .TRUE. if (flag .EQ. 0) status = .FALSE. - + END SUBROUTINE h5zfilter_avail_f !---------------------------------------------------------------------- ! Name: h5zget_filter_info_f ! -! Purpose: Queries if filter has its encoder and/or decoder -! available +! Purpose: Queries if filter has its encoder and/or decoder +! available ! -! Inputs: +! Inputs: ! filter - filter -! Outputs: +! Outputs: ! config_flags - Bit vector possibly containing the ! following values: ! H5Z_FILTER_ENCODE_ENABLED_F ! H5Z_FILTER_DECODE_ENABLED_F -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Nat Furrer and James Laird ! June 16, 2004 ! -! Modifications: +! Modifications: ! !---------------------------------------------------------------------- SUBROUTINE h5zget_filter_info_f(filter, config_flags, hdferr) IMPLICIT NONE INTEGER, INTENT(IN) :: filter ! Filter; may be one of the following: - ! H5Z_FILTER_DEFLATE_F - ! H5Z_FILTER_SHUFFLE_F + ! H5Z_FILTER_DEFLATE_F + ! H5Z_FILTER_SHUFFLE_F ! H5Z_FILTER_FLETCHER32_F - ! H5Z_FILTER_SZIP_F + ! H5Z_FILTER_SZIP_F INTEGER, INTENT(OUT) :: config_flags! Flag, indicates if filter ! has its encoder and/or decoder - ! available - INTEGER, INTENT(OUT) :: hdferr ! Error code + ! available + INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5zget_filter_info_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE - INTEGER FUNCTION h5zget_filter_info_c(filter, config_flags) + INTEGER FUNCTION h5zget_filter_info_c(filter, config_flags) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ZGET_FILTER_INFO_C'::h5zget_filter_info_c @@ -170,12 +170,12 @@ END INTERFACE hdferr = h5zget_filter_info_c(filter, config_flags) - + END SUBROUTINE h5zget_filter_info_f END MODULE H5Z - - + + diff --git a/fortran/src/H5_DBLE_InterfaceExclude.f90 b/fortran/src/H5_DBLE_InterfaceExclude.f90 index 976a6f4..b3bafa1 100644 --- a/fortran/src/H5_DBLE_InterfaceExclude.f90 +++ b/fortran/src/H5_DBLE_InterfaceExclude.f90 @@ -2,7 +2,7 @@ ! ! NAME ! H5_DBLE_INTERFACE -! +! ! FUNCTION ! This module is used for when the default REAL is of type DOUBLE PRECISION. ! We do not include the double precision interfaces if the defaut REAL is @@ -13,7 +13,7 @@ ! Empty module. ! ! COPYRIGHT -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -26,7 +26,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! AUTHOR ! M.S. Breitenfeld diff --git a/fortran/src/H5_DBLE_InterfaceInclude.f90 b/fortran/src/H5_DBLE_InterfaceInclude.f90 index 45bb237..4e7dbfb 100644 --- a/fortran/src/H5_DBLE_InterfaceInclude.f90 +++ b/fortran/src/H5_DBLE_InterfaceInclude.f90 @@ -2,7 +2,7 @@ ! ! NAME ! H5_DBLE_INTERFACE -! +! ! FUNCTION ! This module is used for when the default REAL is not of the type DOUBLE PRECISION. ! We only do not include the double precision interfaces if the defaut REAL is @@ -10,11 +10,11 @@ ! generic interfaces declared as REAL. Otherwise it is okay to include the interfaces. ! ! NOTES -! This module contains all the DOUBLE PRECISION interfaces and corresponding subroutines +! This module contains all the DOUBLE PRECISION interfaces and corresponding subroutines ! from the HDF function catagory H5A, H5D and H5P. ! ! COPYRIGHT -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -27,7 +27,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! AUTHOR ! M.S. Breitenfeld @@ -125,11 +125,11 @@ CONTAINS ! SUBROUTINE h5awrite_double_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - DOUBLE PRECISION, INTENT(IN) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + DOUBLE PRECISION, INTENT(IN) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_s_c @@ -141,7 +141,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_S_C'::h5awrite_double_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN)::buf @@ -153,12 +153,12 @@ CONTAINS SUBROUTINE h5awrite_double_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & - DIMENSION(dims(1)) :: buf ! Attribute data + DIMENSION(dims(1)) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_1_c @@ -170,7 +170,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_1_C'::h5awrite_double_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -184,13 +184,13 @@ CONTAINS SUBROUTINE h5awrite_double_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - DOUBLE PRECISION, INTENT(IN), & + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_2_c @@ -202,7 +202,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_2_C'::h5awrite_double_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -216,13 +216,13 @@ CONTAINS SUBROUTINE h5awrite_double_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_3_c @@ -234,7 +234,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_3_C'::h5awrite_double_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -248,13 +248,13 @@ CONTAINS SUBROUTINE h5awrite_double_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_4_c @@ -266,7 +266,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_4_C'::h5awrite_double_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -280,13 +280,13 @@ CONTAINS SUBROUTINE h5awrite_double_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_5_c @@ -298,7 +298,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_5_C'::h5awrite_double_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -312,13 +312,13 @@ CONTAINS SUBROUTINE h5awrite_double_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_6_c @@ -330,7 +330,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_6_C'::h5awrite_double_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -344,13 +344,13 @@ CONTAINS SUBROUTINE h5awrite_double_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5awrite_double_7_c @@ -362,7 +362,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_7_C'::h5awrite_double_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(IN), & @@ -376,11 +376,11 @@ CONTAINS SUBROUTINE h5aread_double_scalar(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes - DOUBLE PRECISION, INTENT(INOUT) :: buf ! Attribute data + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + DOUBLE PRECISION, INTENT(INOUT) :: buf ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_s_c @@ -392,7 +392,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_S_C'::h5aread_double_s_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT)::buf @@ -404,13 +404,13 @@ CONTAINS SUBROUTINE h5aread_double_1(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_1_c @@ -422,7 +422,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_1_C'::h5aread_double_1_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -436,13 +436,13 @@ CONTAINS SUBROUTINE h5aread_double_2(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_2_c @@ -454,7 +454,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_2_C'::h5aread_double_2_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -468,13 +468,13 @@ CONTAINS SUBROUTINE h5aread_double_3(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_3_c @@ -486,7 +486,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_3_C'::h5aread_double_3_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -500,13 +500,13 @@ CONTAINS SUBROUTINE h5aread_double_4(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_4_c @@ -518,7 +518,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_4_C'::h5aread_double_4_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -532,13 +532,13 @@ CONTAINS SUBROUTINE h5aread_double_5(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_5_c @@ -550,7 +550,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_5_C'::h5aread_double_5_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -564,13 +564,13 @@ CONTAINS SUBROUTINE h5aread_double_6(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_6_c @@ -582,7 +582,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_6_C'::h5aread_double_6_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -596,13 +596,13 @@ CONTAINS SUBROUTINE h5aread_double_7(attr_id, memtype_id, buf, dims, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier - INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype + INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier + INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype ! identifier (in memory) - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf - ! Attribute data + ! Attribute data INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5aread_double_7_c @@ -614,7 +614,7 @@ CONTAINS !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_7_C'::h5aread_double_7_c !DEC$ENDIF - INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: memtype_id DOUBLE PRECISION, INTENT(INOUT), & @@ -636,16 +636,16 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_s_c @@ -653,7 +653,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_double_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -675,9 +675,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -692,16 +692,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_1_c @@ -709,7 +709,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_double_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -732,9 +732,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -749,24 +749,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_double_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -789,9 +789,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -806,24 +806,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_3_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_double_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -846,9 +846,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -863,15 +863,15 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default @@ -880,7 +880,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dwrite_double_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -903,9 +903,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -920,24 +920,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_5_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_double_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -960,9 +960,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -978,24 +978,24 @@ CONTAINS DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_double_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1018,9 +1018,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1036,24 +1036,24 @@ CONTAINS DOUBLE PRECISION, INTENT(IN), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dwrite_double_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dwrite_double_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1075,9 +1075,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dwrite_double_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1091,16 +1091,16 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(INOUT) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_s_c @@ -1108,7 +1108,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_double_s_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1130,9 +1130,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_s_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1147,24 +1147,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_1_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_1_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1187,9 +1187,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_1_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1204,24 +1204,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_2_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_2_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1234,7 +1234,7 @@ CONTAINS INTEGER(HID_T) :: file_space_id_default INTEGER(HID_T) :: xfer_prp_default INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims - DOUBLE PRECISION, INTENT(INOUT), & + DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2)) :: buf END FUNCTION h5dread_double_2_c END INTERFACE @@ -1244,9 +1244,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_2_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1261,16 +1261,16 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: mem_space_id_default INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_3_c @@ -1278,7 +1278,7 @@ CONTAINS ! INTERFACE INTEGER FUNCTION h5dread_double_3_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1301,9 +1301,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_3_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1319,24 +1319,24 @@ CONTAINS DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_4_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_4_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1359,9 +1359,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_4_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1376,24 +1376,24 @@ CONTAINS INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_5_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_5_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1416,9 +1416,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_5_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1434,24 +1434,24 @@ CONTAINS DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier - - INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier + + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_6_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_6_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1474,9 +1474,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_6_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1492,24 +1492,24 @@ CONTAINS DOUBLE PRECISION, INTENT(INOUT), & DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Data buffer - INTEGER, INTENT(OUT) :: hdferr ! Error code - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id - ! Memory dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id - ! File dataspace identfier - INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp - ! Transfer property list identifier + INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id + ! Memory dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id + ! File dataspace identfier + INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp + ! Transfer property list identifier INTEGER(HID_T) :: xfer_prp_default - INTEGER(HID_T) :: mem_space_id_default - INTEGER(HID_T) :: file_space_id_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default ! INTEGER, EXTERNAL :: h5dread_double_7_c ! MS FORTRAN needs explicit interface for C functions called here. ! INTERFACE INTEGER FUNCTION h5dread_double_7_c(dset_id, mem_type_id, & - mem_space_id_default, & + mem_space_id_default, & file_space_id_default, & xfer_prp_default, buf, dims) USE H5GLOBAL @@ -1531,9 +1531,9 @@ CONTAINS mem_space_id_default = H5S_ALL_F file_space_id_default = H5S_ALL_F - if (present(xfer_prp)) xfer_prp_default = xfer_prp - if (present(mem_space_id)) mem_space_id_default = mem_space_id - if (present(file_space_id)) file_space_id_default = file_space_id + if (present(xfer_prp)) xfer_prp_default = xfer_prp + if (present(mem_space_id)) mem_space_id_default = mem_space_id + if (present(file_space_id)) file_space_id_default = file_space_id hdferr = h5dread_double_7_c(dset_id, mem_type_id, mem_space_id_default, & file_space_id_default, xfer_prp_default, buf, dims) @@ -1543,21 +1543,21 @@ CONTAINS !---------------------------------------------------------------------- ! Name: h5dfill_double ! - ! Purpose: Fills dataspace elements with a fill value in a memory buffer. - ! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes + ! Purpose: Fills dataspace elements with a fill value in a memory buffer. + ! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes ! of the fillvalues and buffers are supported. Buffer and fillvalue ! are assumed to have the same datatype. ! Only one-dimesional buffers are supported. ! - ! Inputs: + ! Inputs: ! fill_value - fill value ! space_id - memory space selection identifier ! buf - data buffer iin memory ro apply selection to ! - of k-th dimension of the buf array - ! Outputs: - ! hdferr: - error code + ! Outputs: + ! hdferr: - error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 ! ! Programmer: Elena Pourmal ! March 12, 2003 @@ -1569,10 +1569,10 @@ CONTAINS DOUBLE PRECISION, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier DOUBLE PRECISION, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER, INTENT(OUT) :: hdferr ! Error code + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier ! INTEGER, EXTERNAL :: h5dfill_double_c ! MS FORTRAN needs explicit interface for C functions called here. @@ -1582,19 +1582,19 @@ CONTAINS buf, mem_type_id) USE H5GLOBAL !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_DOUBLE_C'::h5dfill_double_c + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_DOUBLE_C'::h5dfill_double_c !DEC$ENDIF DOUBLE PRECISION, INTENT(IN) :: fill_value ! Fill value INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier DOUBLE PRECISION, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in - INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier + INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier END FUNCTION h5dfill_double_c END INTERFACE fill_type_id = H5T_NATIVE_DOUBLE mem_type_id = H5T_NATIVE_DOUBLE - hdferr = h5dfill_double_c(fill_value, fill_type_id, space_id, & + hdferr = h5dfill_double_c(fill_value, fill_type_id, space_id, & buf, mem_type_id) @@ -1607,9 +1607,9 @@ CONTAINS SUBROUTINE h5pset_fill_value_double(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of - ! of fillvalue datatype + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + ! of fillvalue datatype ! (in memory) DOUBLE PRECISION, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1636,10 +1636,10 @@ CONTAINS SUBROUTINE h5pget_fill_value_double(prp_id, type_id, fillvalue, & hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier - INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of ! of fillvalue datatype - ! (in memory) + ! (in memory) DOUBLE PRECISION, INTENT(IN) :: fillvalue ! Fillvalue INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1667,28 +1667,28 @@ CONTAINS ! ! Purpose: Sets a property list value ! - ! Inputs: + ! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify ! value - value to set property to - ! Outputs: - ! hdferr: - error code + ! Outputs: + ! hdferr: - error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal - ! October 9, 2002 + ! October 9, 2002 ! - ! Modifications: + ! Modifications: ! - ! Comment: + ! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pset_double(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify DOUBLE PRECISION, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1718,28 +1718,28 @@ CONTAINS ! ! Purpose: Gets a property list value ! - ! Inputs: + ! Inputs: ! prp_id - iproperty list identifier to modify ! name - name of property to modify - ! Outputs: + ! Outputs: ! value - value of property - ! hdferr: - error code + ! hdferr: - error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal - ! October 9, 2002 + ! October 9, 2002 ! - ! Modifications: + ! Modifications: ! - ! Comment: + ! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pget_double(prp_id, name, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier + INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify DOUBLE PRECISION, INTENT(OUT) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1769,33 +1769,33 @@ CONTAINS ! ! Purpose: Registers a permanent property with a property list class. ! - ! Inputs: - ! class - property list class to register + ! Inputs: + ! class - property list class to register ! permanent property within ! name - name of property to register ! size - size of property in bytes - ! value - default value for property in newly + ! value - default value for property in newly ! created property lists - ! Outputs: - ! hdferr: - error code + ! Outputs: + ! hdferr: - error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal - ! October 10, 2002 + ! October 10, 2002 ! - ! Modifications: + ! Modifications: ! - ! Comment: + ! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pregister_double(class, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier + INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register - INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value + INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value DOUBLE PRECISION, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -1810,7 +1810,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: class CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size DOUBLE PRECISION, INTENT(IN) :: value END FUNCTION h5pregister_double_c END INTERFACE @@ -1824,32 +1824,32 @@ CONTAINS ! ! Purpose: Registers a temporary property with a property list class. ! - ! Inputs: + ! Inputs: ! plist - property list identifier ! permanent property within ! name - name of property to insert ! size - size of property in bytes - ! value - initial value for the property - ! Outputs: - ! hdferr: - error code + ! value - initial value for the property + ! Outputs: + ! hdferr: - error code ! Success: 0 - ! Failure: -1 + ! Failure: -1 ! Optional parameters: ! NONE ! ! Programmer: Elena Pourmal - ! October 10, 2002 + ! October 10, 2002 ! - ! Modifications: + ! Modifications: ! - ! Comment: + ! Comment: !---------------------------------------------------------------------- SUBROUTINE h5pinsert_double(plist, name, size, value, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier - CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert - INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value + INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier + CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert + INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value DOUBLE PRECISION, INTENT(IN) :: value ! Property value INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER :: name_len @@ -1864,7 +1864,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: plist CHARACTER(LEN=*), INTENT(IN) :: name INTEGER, INTENT(IN) :: name_len - INTEGER(SIZE_T), INTENT(IN) :: size + INTEGER(SIZE_T), INTENT(IN) :: size DOUBLE PRECISION, INTENT(IN) :: value END FUNCTION h5pinsert_double_c END INTERFACE diff --git a/fortran/src/H5_ff.f90 b/fortran/src/H5_ff.f90 index 89360a3..7dffd0a 100644 --- a/fortran/src/H5_ff.f90 +++ b/fortran/src/H5_ff.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,32 +11,32 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! MODULE H5LIB CONTAINS !---------------------------------------------------------------------- -! Name: h5open_f +! Name: h5open_f ! -! Purpose: Initializes the HDF5 library and Fortran90 interface. +! Purpose: Initializes the HDF5 library and Fortran90 interface. ! -! Inputs: -! Outputs: -! error: - error code +! Inputs: +! Outputs: +! error: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5open_f(error) USE H5GLOBAL @@ -48,7 +48,7 @@ CONTAINS ! INTEGER, EXTERNAL :: h5init_flags_c ! INTEGER, EXTERNAL :: h5init1_flags_c ! INTEGER, EXTERNAL :: h5open_c - + ! ! MS FORTRAN needs explicit interfaces for C functions called here. ! @@ -64,7 +64,7 @@ CONTAINS USE H5GLOBAL INTEGER(HID_T), DIMENSION(PREDEF_TYPES_LEN) :: p_types INTEGER(HID_T), DIMENSION(FLOATING_TYPES_LEN) :: f_types - INTEGER(HID_T), DIMENSION(INTEGER_TYPES_LEN) :: i_types + INTEGER(HID_T), DIMENSION(INTEGER_TYPES_LEN) :: i_types !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5INIT_TYPES_C'::h5init_types_c !DEC$ENDIF @@ -83,7 +83,7 @@ CONTAINS i_H5P_flags_int, & i_H5R_flags, & i_H5S_flags, & - i_H5T_flags, & + i_H5T_flags, & i_H5Z_flags, & i_H5generic_flags) USE H5GLOBAL @@ -138,26 +138,26 @@ CONTAINS END SUBROUTINE h5open_f !---------------------------------------------------------------------- -! Name: h5close_f +! Name: h5close_f ! -! Purpose: Closes the HDF5 library and Fortran90 interface. +! Purpose: Closes the HDF5 library and Fortran90 interface. ! -! Inputs: -! Outputs: -! error: - error code +! Inputs: +! Outputs: +! error: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal -! August 12, 1999 +! August 12, 1999 ! -! Modifications: Explicit Fortran interfaces were added for +! Modifications: Explicit Fortran interfaces were added for ! called C functions (it is needed for Windows -! port). February 28, 2001 +! port). February 28, 2001 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5close_f(error) @@ -184,7 +184,7 @@ CONTAINS INTEGER I_TYPES_LEN INTEGER(HID_T), DIMENSION(P_TYPES_LEN) :: p_types INTEGER(HID_T), DIMENSION(F_TYPES_LEN) :: f_types - INTEGER(HID_T), DIMENSION(I_TYPES_LEN) :: i_types + INTEGER(HID_T), DIMENSION(I_TYPES_LEN) :: i_types !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5CLOSE_TYPES_C'::h5close_types_c !DEC$ENDIF @@ -197,32 +197,32 @@ CONTAINS error = error_1 + error_2 END SUBROUTINE h5close_f - + !---------------------------------------------------------------------- -! Name: h5get_libversion_f +! Name: h5get_libversion_f ! ! Purpose: Returns the HDF5 LIbrary release number ! -! Inputs: -! Outputs: +! Inputs: +! Outputs: ! majnum: - major version of the library ! minum: - minor version of the library ! relnum: - release version of the library -! error: - error code +! error: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! September 24, 2002 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5get_libversion_f(majnum, minnum, relnum, error) USE H5GLOBAL - + IMPLICIT NONE INTEGER, INTENT(OUT) :: majnum, minnum, relnum, error INTERFACE @@ -233,36 +233,36 @@ CONTAINS INTEGER, INTENT(OUT) :: majnum, minnum, relnum END FUNCTION h5get_libversion_c END INTERFACE - + error = h5get_libversion_c(majnum, minnum, relnum) - + END SUBROUTINE h5get_libversion_f !---------------------------------------------------------------------- -! Name: h5check_version_f +! Name: h5check_version_f ! ! Purpose: Verifies that library versions are consistent. ! -! Inputs: +! Inputs: ! majnum: - major version of the library ! minum: - minor version of the library ! relnum: - release version of the library -! Outputs: -! error: - error code +! Outputs: +! error: - error code ! Success: 0 ! Failure: application aborts ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! September 24, 2002 ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5check_version_f(majnum, minnum, relnum, error) USE H5GLOBAL - + IMPLICIT NONE INTEGER, INTENT(IN) :: majnum, minnum, relnum INTEGER, INTENT(OUT) :: error @@ -274,34 +274,34 @@ CONTAINS INTEGER, INTENT(IN) :: majnum, minnum, relnum END FUNCTION h5check_version_c END INTERFACE - + error = h5check_version_c(majnum, minnum, relnum) - + END SUBROUTINE h5check_version_f !---------------------------------------------------------------------- -! Name: h5garbage_collect_f +! Name: h5garbage_collect_f ! ! Purpose: Garbage collects on all free-lists of all types. ! -! Inputs: -! Outputs: -! error: - error code +! Inputs: +! Outputs: +! error: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! September 24, 2002 ! ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5garbage_collect_f(error) USE H5GLOBAL - + IMPLICIT NONE INTEGER, INTENT(OUT) :: error INTERFACE @@ -311,34 +311,34 @@ CONTAINS !DEC$ENDIF END FUNCTION h5garbage_collect_c END INTERFACE - + error = h5garbage_collect_c() END SUBROUTINE h5garbage_collect_f !---------------------------------------------------------------------- -! Name: h5dont_atexit_f +! Name: h5dont_atexit_f ! -! Purpose: Instructs library not to install atexit cleanup routine. +! Purpose: Instructs library not to install atexit cleanup routine. ! -! Inputs: -! Outputs: -! error: - error code +! Inputs: +! Outputs: +! error: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! Optional parameters: -! NONE +! NONE ! ! Programmer: Elena Pourmal ! September 24, 2002 ! ! -! Comment: +! Comment: !---------------------------------------------------------------------- SUBROUTINE h5dont_atexit_f(error) USE H5GLOBAL - + IMPLICIT NONE INTEGER, INTENT(OUT) :: error INTERFACE @@ -348,8 +348,8 @@ CONTAINS !DEC$ENDIF END FUNCTION h5dont_atexit_c END INTERFACE - + error = h5dont_atexit_c() - + END SUBROUTINE h5dont_atexit_f END MODULE H5LIB diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.f90 index da21f6e..05ec366 100644 --- a/fortran/src/H5f90global.f90 +++ b/fortran/src/H5f90global.f90 @@ -2,23 +2,23 @@ ! ! NAME ! H5GLOBAL -! +! ! FUNCTION -! This module is used to pass C stubs for H5 Fortran APIs. The C stubs are +! This module is used to pass C stubs for H5 Fortran APIs. The C stubs are ! packed into arrays in H5_f.c and these arrays are then passed to Fortran. ! This module then uses EQUIVALENCE to assign elements of the arrays to ! Fortran equivalent C stubs. ! ! NOTES -! The size of the C arrays in H5_f.c have to match the values of the variables +! The size of the C arrays in H5_f.c have to match the values of the variables ! declared as PARAMETER, hence if the size of an array in H5_f.c is changed ! then the PARAMETER of that corresponding array in Fortran must also be changed. ! ! USES -! H5FORTRAN_TYPES - This module is generated at run time. See +! H5FORTRAN_TYPES - This module is generated at run time. See ! H5fortran_types.f90 for further informaton. ! COPYRIGHT -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -31,7 +31,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! AUTHOR ! Elena Pourmal @@ -43,8 +43,8 @@ MODULE H5GLOBAL ! Definitions for reference datatypes. ! If you change the value of these parameters, do not forget to change corresponding - ! values in the H5f90.h file. - INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 + ! values in the H5f90.h file. + INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3 ! Parameters used in the function 'h5kind_to_type' located in H5_ff.f90. ! The flag is used to tell the function whether the kind input variable @@ -65,11 +65,11 @@ MODULE H5GLOBAL ! value when new predefined ! datatypes are added - ! Do not forget to change the following line when new predefined + ! Do not forget to change the following line when new predefined ! floating data types are added INTEGER, PARAMETER :: FLOATING_TYPES_LEN = 4 - ! Do not forget to change the following line when new predefined + ! Do not forget to change the following line when new predefined ! integer data types are added INTEGER, PARAMETER :: INTEGER_TYPES_LEN = 17 @@ -169,7 +169,7 @@ MODULE H5GLOBAL !DEC$if defined(BUILD_HDF5_DLL) !DEC$ATTRIBUTES DLLEXPORT :: /FLOATING_TYPES/ !DEC$endif - COMMON /FLOATING_TYPES/ floating_types + COMMON /FLOATING_TYPES/ floating_types ! ! COMMON /INTEGER_TYPES/ H5T_STD_I8BE, & ! H5T_STD_I8LE, & @@ -206,7 +206,7 @@ MODULE H5GLOBAL !DEC$endif COMMON /H5F_FLAGS/ H5F_flags - INTEGER :: H5F_ACC_RDWR_F + INTEGER :: H5F_ACC_RDWR_F INTEGER :: H5F_ACC_RDONLY_F INTEGER :: H5F_ACC_TRUNC_F INTEGER :: H5F_ACC_EXCL_F @@ -260,7 +260,7 @@ MODULE H5GLOBAL INTEGER :: H5_ITER_UNKNOWN_F INTEGER :: H5_ITER_INC_F INTEGER :: H5_ITER_DEC_F - INTEGER :: H5_ITER_NATIVE_F + INTEGER :: H5_ITER_NATIVE_F INTEGER :: H5_ITER_N_F EQUIVALENCE(H5generic_flags(1), H5_INDEX_UNKNOWN_F) @@ -268,7 +268,7 @@ MODULE H5GLOBAL EQUIVALENCE(H5generic_flags(3), H5_INDEX_CRT_ORDER_F) EQUIVALENCE(H5generic_flags(4), H5_INDEX_N_F) EQUIVALENCE(H5generic_flags(5), H5_ITER_UNKNOWN_F) - EQUIVALENCE(H5generic_flags(6), H5_ITER_INC_F) + EQUIVALENCE(H5generic_flags(6), H5_ITER_INC_F) EQUIVALENCE(H5generic_flags(7), H5_ITER_DEC_F) EQUIVALENCE(H5generic_flags(8), H5_ITER_NATIVE_F) EQUIVALENCE(H5generic_flags(9), H5_ITER_N_F) @@ -301,7 +301,7 @@ MODULE H5GLOBAL EQUIVALENCE(H5G_flags(1), H5G_UNKNOWN_F) EQUIVALENCE(H5G_flags(2), H5G_GROUP_F) EQUIVALENCE(H5G_flags(3), H5G_DATASET_F) - EQUIVALENCE(H5G_flags(4), H5G_TYPE_F) + EQUIVALENCE(H5G_flags(4), H5G_TYPE_F) ! XXX: Fix problems with H5G_LINK_F! - QAK ! these are really H5L values -MSB- EQUIVALENCE(H5G_flags(5), H5G_LINK_F) EQUIVALENCE(H5G_flags(6), H5G_LINK_ERROR_F) @@ -309,10 +309,10 @@ MODULE H5GLOBAL EQUIVALENCE(H5G_flags(8), H5G_LINK_SOFT_F) ! XXX - EQUIVALENCE(H5G_flags(9), H5G_STORAGE_TYPE_UNKNOWN_F ) - EQUIVALENCE(H5G_flags(10), H5G_STORAGE_TYPE_SYMBOL_TABLE_F) - EQUIVALENCE(H5G_flags(11), H5G_STORAGE_TYPE_COMPACT_F) - EQUIVALENCE(H5G_flags(12), H5G_STORAGE_TYPE_DENSE_F) + EQUIVALENCE(H5G_flags(9), H5G_STORAGE_TYPE_UNKNOWN_F ) + EQUIVALENCE(H5G_flags(10), H5G_STORAGE_TYPE_SYMBOL_TABLE_F) + EQUIVALENCE(H5G_flags(11), H5G_STORAGE_TYPE_COMPACT_F) + EQUIVALENCE(H5G_flags(12), H5G_STORAGE_TYPE_DENSE_F) ! ! H5D flags declaration ! @@ -324,7 +324,7 @@ MODULE H5GLOBAL !DEC$endif COMMON /H5D_FLAGS/ H5D_flags - INTEGER :: H5D_COMPACT_F + INTEGER :: H5D_COMPACT_F INTEGER :: H5D_CONTIGUOUS_F INTEGER :: H5D_CHUNKED_F @@ -348,7 +348,7 @@ MODULE H5GLOBAL INTEGER :: H5D_FILL_VALUE_DEFAULT_F INTEGER :: H5D_FILL_VALUE_USER_DEFINED_F -! shortened "_DEFAULT" to "_DFLT" to satisfy the limit of 31 +! shortened "_DEFAULT" to "_DFLT" to satisfy the limit of 31 ! characters for variable names in Fortran. INTEGER :: H5D_CHUNK_CACHE_NSLOTS_DFLT_F @@ -377,7 +377,7 @@ MODULE H5GLOBAL EQUIVALENCE(H5D_flags(16), H5D_FILL_VALUE_ERROR_F) EQUIVALENCE(H5D_flags(17), H5D_FILL_VALUE_UNDEFINED_F) EQUIVALENCE(H5D_flags(18), H5D_FILL_VALUE_DEFAULT_F) - EQUIVALENCE(H5D_flags(19), H5D_FILL_VALUE_USER_DEFINED_F) + EQUIVALENCE(H5D_flags(19), H5D_FILL_VALUE_USER_DEFINED_F) EQUIVALENCE(H5D_flags(20), H5D_CHUNK_CACHE_NSLOTS_DFLT_F) EQUIVALENCE(H5D_flags(21), H5D_CHUNK_CACHE_NBYTES_DFLT_F) @@ -393,7 +393,7 @@ MODULE H5GLOBAL !DEC$endif COMMON /H5FD_FLAGS/ H5FD_flags - INTEGER :: H5FD_MPIO_INDEPENDENT_F + INTEGER :: H5FD_MPIO_INDEPENDENT_F INTEGER :: H5FD_MPIO_COLLECTIVE_F INTEGER :: H5FD_MEM_NOLIST_F INTEGER :: H5FD_MEM_DEFAULT_F @@ -505,7 +505,7 @@ MODULE H5GLOBAL INTEGER :: H5O_COPY_EXPAND_SOFT_LINK_F ! NOT MATCH THE C VARIABLE INTEGER :: H5O_COPY_EXPAND_EXT_LINK_F ! IN ORDER INTEGER :: H5O_COPY_EXPAND_REFERENCE_F ! TO STAY UNDER THE - INTEGER :: H5O_COPY_WITHOUT_ATTR_FLAG_F + INTEGER :: H5O_COPY_WITHOUT_ATTR_FLAG_F INTEGER :: H5O_COPY_PRESERVE_NULL_FLAG_F INTEGER :: H5O_COPY_ALL_F INTEGER :: H5O_SHMESG_NONE_FLAG_F @@ -543,27 +543,27 @@ MODULE H5GLOBAL EQUIVALENCE(h5o_flags(17) , H5O_HDR_ATTR_CRT_ORDER_INDEX_F) EQUIVALENCE(h5o_flags(18) , H5O_HDR_ATTR_STORE_PHASE_CHA_F) EQUIVALENCE(h5o_flags(19) , H5O_HDR_STORE_TIMES_F) - EQUIVALENCE(h5o_flags(20) , H5O_HDR_ALL_FLAGS_F) + EQUIVALENCE(h5o_flags(20) , H5O_HDR_ALL_FLAGS_F) EQUIVALENCE(h5o_flags(21) , H5O_SHMESG_MAX_NINDEXES_F) EQUIVALENCE(h5o_flags(22) , H5O_SHMESG_MAX_LIST_SIZE_F) ! ! H5P flags declaration ! - INTEGER, PARAMETER :: H5P_FLAGS_LEN = 18 + INTEGER, PARAMETER :: H5P_FLAGS_LEN = 18 INTEGER(HID_T) H5P_flags(H5P_FLAGS_LEN) !DEC$if defined(BUILD_HDF5_DLL) !DEC$ATTRIBUTES DLLEXPORT :: /H5P_FLAGS/ !DEC$endif COMMON /H5P_FLAGS/ H5P_flags - INTEGER(HID_T) :: H5P_FILE_CREATE_F - INTEGER(HID_T) :: H5P_FILE_ACCESS_F + INTEGER(HID_T) :: H5P_FILE_CREATE_F + INTEGER(HID_T) :: H5P_FILE_ACCESS_F INTEGER(HID_T) :: H5P_DATASET_CREATE_F - INTEGER(HID_T) :: H5P_DATASET_XFER_F - INTEGER(HID_T) :: H5P_FILE_MOUNT_F - INTEGER(HID_T) :: H5P_DEFAULT_F - INTEGER(HID_T) :: H5P_ROOT_F + INTEGER(HID_T) :: H5P_DATASET_XFER_F + INTEGER(HID_T) :: H5P_FILE_MOUNT_F + INTEGER(HID_T) :: H5P_DEFAULT_F + INTEGER(HID_T) :: H5P_ROOT_F INTEGER(HID_T) :: H5P_OBJECT_CREATE_F INTEGER(HID_T) :: H5P_DATASET_ACCESS_F INTEGER(HID_T) :: H5P_GROUP_CREATE_F @@ -598,14 +598,14 @@ MODULE H5GLOBAL ! ! H5P intgere flags declaration ! - INTEGER, PARAMETER :: H5P_FLAGS_INT_LEN = 2 + INTEGER, PARAMETER :: H5P_FLAGS_INT_LEN = 2 INTEGER H5P_flags_int(H5P_FLAGS_INT_LEN) !DEC$if defined(BUILD_HDF5_DLL) !DEC$ATTRIBUTES DLLEXPORT :: /H5P_FLAGS_INT/ !DEC$endif COMMON /H5P_FLAGS_INT/ H5P_flags_int - INTEGER :: H5P_CRT_ORDER_INDEXED_F - INTEGER :: H5P_CRT_ORDER_TRACKED_F + INTEGER :: H5P_CRT_ORDER_INDEXED_F + INTEGER :: H5P_CRT_ORDER_TRACKED_F EQUIVALENCE(H5P_flags_int(1), H5P_CRT_ORDER_INDEXED_F) EQUIVALENCE(H5P_flags_int(2), H5P_CRT_ORDER_TRACKED_F) ! @@ -627,16 +627,16 @@ MODULE H5GLOBAL ! ! H5S flags declaration ! - INTEGER, PARAMETER :: H5S_FLAGS_LEN = 20 + INTEGER, PARAMETER :: H5S_FLAGS_LEN = 20 INTEGER H5S_flags(H5S_FLAGS_LEN) !DEC$if defined(BUILD_HDF5_DLL) !DEC$ATTRIBUTES DLLEXPORT :: /H5S_FLAGS/ !DEC$endif COMMON /H5S_FLAGS/ H5S_flags - INTEGER :: H5S_SCALAR_F - INTEGER :: H5S_SIMPLE_F - INTEGER :: H5S_NULL_F + INTEGER :: H5S_SCALAR_F + INTEGER :: H5S_SIMPLE_F + INTEGER :: H5S_NULL_F INTEGER :: H5S_UNLIMITED_F INTEGER :: H5S_ALL_F @@ -644,13 +644,13 @@ MODULE H5GLOBAL INTEGER :: H5S_SELECT_NOOP_F INTEGER :: H5S_SELECT_SET_F INTEGER :: H5S_SELECT_OR_F - INTEGER :: H5S_SELECT_AND_F - INTEGER :: H5S_SELECT_XOR_F - INTEGER :: H5S_SELECT_NOTB_F - INTEGER :: H5S_SELECT_NOTA_F - INTEGER :: H5S_SELECT_APPEND_F - INTEGER :: H5S_SELECT_PREPEND_F - INTEGER :: H5S_SELECT_INVALID_F + INTEGER :: H5S_SELECT_AND_F + INTEGER :: H5S_SELECT_XOR_F + INTEGER :: H5S_SELECT_NOTB_F + INTEGER :: H5S_SELECT_NOTA_F + INTEGER :: H5S_SELECT_APPEND_F + INTEGER :: H5S_SELECT_PREPEND_F + INTEGER :: H5S_SELECT_INVALID_F INTEGER :: H5S_SEL_ERROR_F @@ -668,12 +668,12 @@ MODULE H5GLOBAL EQUIVALENCE(H5S_flags(7), H5S_ALL_F) EQUIVALENCE(H5S_flags(8), H5S_SELECT_NOOP_F) - EQUIVALENCE(H5S_flags(9), H5S_SELECT_AND_F) + EQUIVALENCE(H5S_flags(9), H5S_SELECT_AND_F) EQUIVALENCE(H5S_flags(10), H5S_SELECT_XOR_F) EQUIVALENCE(H5S_flags(11), H5S_SELECT_NOTB_F) EQUIVALENCE(H5S_flags(12), H5S_SELECT_NOTA_F) - EQUIVALENCE(H5S_flags(13), H5S_SELECT_APPEND_F) - EQUIVALENCE(H5S_flags(14), H5S_SELECT_PREPEND_F) + EQUIVALENCE(H5S_flags(13), H5S_SELECT_APPEND_F) + EQUIVALENCE(H5S_flags(14), H5S_SELECT_PREPEND_F) EQUIVALENCE(H5S_flags(15), H5S_SELECT_INVALID_F) @@ -694,36 +694,36 @@ MODULE H5GLOBAL !DEC$endif COMMON /H5T_FLAGS/ H5T_flags - INTEGER :: H5T_NO_CLASS_F - INTEGER :: H5T_INTEGER_F - INTEGER :: H5T_FLOAT_F - INTEGER :: H5T_TIME_F - INTEGER :: H5T_STRING_F + INTEGER :: H5T_NO_CLASS_F + INTEGER :: H5T_INTEGER_F + INTEGER :: H5T_FLOAT_F + INTEGER :: H5T_TIME_F + INTEGER :: H5T_STRING_F INTEGER :: H5T_BITFIELD_F - INTEGER :: H5T_OPAQUE_F - INTEGER :: H5T_COMPOUND_F + INTEGER :: H5T_OPAQUE_F + INTEGER :: H5T_COMPOUND_F INTEGER :: H5T_REFERENCE_F - INTEGER :: H5T_ENUM_F + INTEGER :: H5T_ENUM_F INTEGER :: H5T_VLEN_F INTEGER :: H5T_ARRAY_F - INTEGER :: H5T_ORDER_LE_F + INTEGER :: H5T_ORDER_LE_F INTEGER :: H5T_ORDER_BE_F INTEGER :: H5T_ORDER_VAX_F INTEGER :: H5T_ORDER_NONE_F INTEGER :: H5T_PAD_ZERO_F INTEGER :: H5T_PAD_ONE_F INTEGER :: H5T_PAD_BACKGROUND_F - INTEGER :: H5T_PAD_ERROR_F - INTEGER :: H5T_SGN_NONE_F - INTEGER :: H5T_SGN_2_F + INTEGER :: H5T_PAD_ERROR_F + INTEGER :: H5T_SGN_NONE_F + INTEGER :: H5T_SGN_2_F INTEGER :: H5T_SGN_ERROR_F INTEGER :: H5T_NORM_IMPLIED_F INTEGER :: H5T_NORM_MSBSET_F - INTEGER :: H5T_NORM_NONE_F + INTEGER :: H5T_NORM_NONE_F INTEGER :: H5T_CSET_ASCII_F INTEGER :: H5T_CSET_UTF8_F - INTEGER :: H5T_STR_NULLTERM_F - INTEGER :: H5T_STR_NULLPAD_F + INTEGER :: H5T_STR_NULLTERM_F + INTEGER :: H5T_STR_NULLPAD_F INTEGER :: H5T_STR_SPACEPAD_F INTEGER :: H5T_STR_ERROR_F INTEGER :: H5T_DIR_ASCEND_F @@ -774,13 +774,13 @@ MODULE H5GLOBAL !DEC$endif COMMON /H5Z_FLAGS/ H5Z_flags - INTEGER :: H5Z_FILTER_ERROR_F - INTEGER :: H5Z_FILTER_NONE_F + INTEGER :: H5Z_FILTER_ERROR_F + INTEGER :: H5Z_FILTER_NONE_F INTEGER :: H5Z_FILTER_ALL_F - INTEGER :: H5Z_FILTER_DEFLATE_F - INTEGER :: H5Z_FILTER_SHUFFLE_F - INTEGER :: H5Z_FILTER_FLETCHER32_F - INTEGER :: H5Z_FILTER_SZIP_F + INTEGER :: H5Z_FILTER_DEFLATE_F + INTEGER :: H5Z_FILTER_SHUFFLE_F + INTEGER :: H5Z_FILTER_FLETCHER32_F + INTEGER :: H5Z_FILTER_SZIP_F INTEGER :: H5Z_ERROR_EDC_F INTEGER :: H5Z_DISABLE_EDC_F INTEGER :: H5Z_ENABLE_EDC_F @@ -809,7 +809,7 @@ MODULE H5GLOBAL ! H5 Library flags declaration ! INTEGER, PARAMETER :: H5LIB_FLAGS_LEN = 2 - INTEGER :: H5LIB_flags(H5LIB_FLAGS_LEN) + INTEGER :: H5LIB_flags(H5LIB_FLAGS_LEN) !DEC$if defined(BUILD_HDF5_DLL) !DEC$ATTRIBUTES DLLEXPORT :: /H5LIB_FLAGS/ !DEC$endif diff --git a/fortran/src/H5match_types.c b/fortran/src/H5match_types.c index d6b7a85..78fb9e9 100644 --- a/fortran/src/H5match_types.c +++ b/fortran/src/H5match_types.c @@ -149,9 +149,9 @@ int main() /* Default is C has 16 byte float */ - H5_C_HAS_REAL_NATIVE_16 = 1; + H5_C_HAS_REAL_NATIVE_16 = 1; /* Default is C has 12 byte float */ - H5_C_HAS_REAL_NATIVE_12 = 1; + H5_C_HAS_REAL_NATIVE_12 = 1; /* Write copyright, boilerplate to both files */ initCfile(); @@ -251,7 +251,7 @@ int main() writeFloatTypedef("double", 12); else if(sizeof(float) == 12) writeFloatTypedef("float", 12); - else /*C has no 12 byte float so disable it in Fortran*/ + else /*C has no 12 byte float so disable it in Fortran*/ { printf("warning: Fortran REAL is 12 bytes, no corresponding C floating type\n"); printf(" Disabling Fortran 12 byte REALs\n"); H5_C_HAS_REAL_NATIVE_12 = 0; @@ -265,7 +265,7 @@ int main() writeFloatTypedef("double", 16); else if(sizeof(float) == 16) writeFloatTypedef("float", 16); - else /*C has no 16 byte float so disable it in Fortran*/ + else /*C has no 16 byte float so disable it in Fortran*/ { printf("warning: Fortran REAL is 16 bytes, no corresponding C floating type\n"); printf(" Disabling Fortran 16 byte REALs\n"); H5_C_HAS_REAL_NATIVE_16 = 0; @@ -408,7 +408,7 @@ int main() } if(flag == 0) /* No higher or lower one found, indicating an error */ { - return -1; + return -1; } } } @@ -490,7 +490,7 @@ int main() } if(flag == 0) /* No higher or lower one found, indicating an error */ { - return -1; + return -1; } } } diff --git a/fortran/src/H5test_kind.f90 b/fortran/src/H5test_kind.f90 index b945cd3..bdf5f5b 100644 --- a/fortran/src/H5test_kind.f90 +++ b/fortran/src/H5test_kind.f90 @@ -2,24 +2,24 @@ ! ! NAME ! H5test_kind -! +! ! FUNCTION -! This stand alone program is used at build time to generate the program +! This stand alone program is used at build time to generate the program ! H5fortran_detect.f90. It cycles through all the available KIND parameters for -! integers and reals. The appropriate program and subroutines are then generated +! integers and reals. The appropriate program and subroutines are then generated ! depending on which of the KIND values are found. ! ! NOTES -! This program is depreciated in favor of H5test_kind_SIZEOF.f90 and is only +! This program is depreciated in favor of H5test_kind_SIZEOF.f90 and is only ! used when the Fortran intrinsic function SIZEOF is not available. It generates -! code that does not make use of SIZEOF in H5fortran_detect.f90 which is less +! code that does not make use of SIZEOF in H5fortran_detect.f90 which is less ! portable in comparison to using SIZEOF. ! -! The availability of SIZEOF is checked at configure time and the TRUE/FALSE +! The availability of SIZEOF is checked at configure time and the TRUE/FALSE ! condition is set in the configure variable "FORTRAN_HAVE_SIZEOF". ! ! COPYRIGHT -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -32,7 +32,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! AUTHOR ! Elena Pourma @@ -88,7 +88,7 @@ WRITE(*,'(40(A,/))') & '! NOTES',& '! This source code does not make use of the Fortran intrinsic function SIZEOF because',& '! the availability of the intrinsic function was determined to be not available at',& -'! configure time',& +'! configure time',& '!',& '! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',& '! Copyright by The HDF Group. *',& @@ -151,7 +151,7 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" WRITE(*,*) ""#define H5_FORTRAN_HAS_NATIVE_16"" " WRITE(*,*)" ENDIF" WRITE(*,*)" RETURN" - WRITE(*,*)"END SUBROUTINE" + WRITE(*,*)"END SUBROUTINE" jr = 0 WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j WRITE(*,*)" IMPLICIT NONE" @@ -171,7 +171,7 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" write(*,*) ""#define H5_FORTRAN_HAS_REAL_NATIVE_16"" " WRITE(*,*)" ENDIF" WRITE(*,*)" RETURN" - WRITE(*,*)"END SUBROUTINE" + WRITE(*,*)"END SUBROUTINE" jd = 0 WRITE(*, "("" SUBROUTINE d"", i2.2,""()"")") jd WRITE(*,*)" IMPLICIT NONE" @@ -188,7 +188,7 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" WRITE(*,*) ""#define H5_FORTRAN_HAS_DOUBLE_NATIVE_16"" " WRITE(*,*)" ENDIF" WRITE(*,*)" RETURN" - WRITE(*,*)"END SUBROUTINE" + WRITE(*,*)"END SUBROUTINE" DO i = 1, ii j = ikind_numbers(i) WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j @@ -212,7 +212,7 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" WRITE(*,*) ""#define H5_FORTRAN_HAS_INTEGER_16"" " WRITE(*,*)" ENDIF" WRITE(*,*)" RETURN" - WRITE(*,*)" END SUBROUTINE" + WRITE(*,*)" END SUBROUTINE" ENDDO DO i = 1, ir j = rkind_numbers(i) @@ -234,9 +234,9 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" write(*,*) ""#define H5_FORTRAN_HAS_REAL_16"" " WRITE(*,*)" ENDIF" WRITE(*,*)" RETURN" - WRITE(*,*)" END SUBROUTINE" + WRITE(*,*)" END SUBROUTINE" ENDDO END PROGRAM test_kind - + diff --git a/fortran/src/H5test_kind_SIZEOF.f90 b/fortran/src/H5test_kind_SIZEOF.f90 index 2b992a3..fbbe8e9 100644 --- a/fortran/src/H5test_kind_SIZEOF.f90 +++ b/fortran/src/H5test_kind_SIZEOF.f90 @@ -4,17 +4,17 @@ ! H5test_kind ! ! FUNCTION -! This stand alone program is used at build time to generate the program +! This stand alone program is used at build time to generate the program ! H5fortran_detect.f90. It cycles through all the available KIND parameters for -! integers and reals. The appropriate program and subroutines are then generated +! integers and reals. The appropriate program and subroutines are then generated ! depending on which of the KIND values are found. ! ! NOTES -! This program is used in place of H5test_kind.f90 when the Fortran intrinsic -! function SIZEOF is available. It generates code that makes use of SIZEOF in +! This program is used in place of H5test_kind.f90 when the Fortran intrinsic +! function SIZEOF is available. It generates code that makes use of SIZEOF in ! H5fortran_detect.f90 which is a portable solution. ! -! The availability of SIZEOF is checked at configure time and the TRUE/FALSE +! The availability of SIZEOF is checked at configure time and the TRUE/FALSE ! condition is set in the configure variable "FORTRAN_HAVE_SIZEOF". ! ! COPYRIGHT @@ -86,7 +86,7 @@ WRITE(*,'(40(A,/))') & '! NOTES',& '! This source code makes use of the Fortran intrinsic function SIZEOF because',& '! the availability of the intrinsic function was determined to be available at',& -'! configure time',& +'! configure time',& '!',& '! COPYRIGHT',& '! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',& @@ -137,7 +137,7 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)" WRITE(ichr2,'(I2)') a_size" WRITE(*,*)' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_"'//"//ADJUSTL(ichr2)" WRITE(*,*)" RETURN" - WRITE(*,*)"END SUBROUTINE" + WRITE(*,*)"END SUBROUTINE" jr = 0 WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j WRITE(*,*)" IMPLICIT NONE" @@ -187,6 +187,6 @@ WRITE(*,'(40(A,/))') & WRITE(*,*)"END SUBROUTINE" ENDDO END PROGRAM test_kind - - + + diff --git a/fortran/src/HDF5.f90 b/fortran/src/HDF5.f90 index 1d758fb..b18591d 100644 --- a/fortran/src/HDF5.f90 +++ b/fortran/src/HDF5.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! MODULE HDF5 USE H5GLOBAL diff --git a/fortran/src/HDF5mpio.f90 b/fortran/src/HDF5mpio.f90 index 6febef8..15d3a93 100644 --- a/fortran/src/HDF5mpio.f90 +++ b/fortran/src/HDF5mpio.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! MODULE HDF5 USE H5GLOBAL diff --git a/fortran/test/fflush1.f90 b/fortran/test/fflush1.f90 index f42ae6e..8767e55 100644 --- a/fortran/test/fflush1.f90 +++ b/fortran/test/fflush1.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,23 +11,23 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! Purpose: This is the first half of a two-part test that makes sure ! that a file can be read after an application crashes as long -! as the file was flushed first. We simulate by exit the +! as the file was flushed first. We simulate by exit the ! the program using stop statement ! PROGRAM FFLUSH1EXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE ! - !the respective filename is "fflush1.h5" + !the respective filename is "fflush1.h5" ! CHARACTER(LEN=7), PARAMETER :: filename = "fflush1" CHARACTER(LEN=80) :: fix_filename @@ -42,40 +42,40 @@ ! ! File identifiers ! - INTEGER(HID_T) :: file_id - + INTEGER(HID_T) :: file_id + ! ! Group identifier ! - INTEGER(HID_T) :: gid + INTEGER(HID_T) :: gid ! ! dataset identifier ! INTEGER(HID_T) :: dset_id - + ! ! data space identifier ! INTEGER(HID_T) :: dataspace - ! + ! !The dimensions for the dataset. ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/NX,NY/) ! - !flag to check operation success - ! + !flag to check operation success + ! INTEGER :: error ! - !general purpose integer - ! + !general purpose integer + ! INTEGER :: i, j, total_error = 0 ! - !data buffers - ! + !data buffers + ! INTEGER, DIMENSION(NX,NY) :: data_in INTEGER(HSIZE_T), DIMENSION(2) :: data_dims data_dims(1) = NX @@ -84,7 +84,7 @@ ! !Initialize FORTRAN predifined datatypes ! - CALL h5open_f(error) + CALL h5open_f(error) CALL check("h5open_f",error,total_error) ! @@ -98,7 +98,7 @@ ! !Create file "fflush1.h5" using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -109,29 +109,29 @@ ! !Create group "/G" inside file "fflush1.h5". - ! + ! CALL h5gcreate_f(file_id, "/G", gid, error) CALL check("h5gcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(RANK, dims, dataspace, error) CALL check("h5screate_simple_f",error,total_error) ! !Create dataset "/D" inside file "fflush1.h5". - ! + ! CALL h5dcreate_f(file_id, "/D", H5T_NATIVE_INTEGER, dataspace, & dset_id, error) CALL check("h5dcreate_f",error,total_error) - + ! ! Write data_in to the dataset ! CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data_in, data_dims, error) CALL check("h5dwrite_f",error,total_error) - + ! !flush and exit without closing the library ! diff --git a/fortran/test/fflush2.f90 b/fortran/test/fflush2.f90 index 38a2bd7..a4710e2 100644 --- a/fortran/test/fflush2.f90 +++ b/fortran/test/fflush2.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! ! ! Purpose: This is the second half of a two-part test that makes sure @@ -22,8 +22,8 @@ PROGRAM FFLUSH2EXAMPLE - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE CHARACTER(LEN=7), PARAMETER :: filename = "fflush1" @@ -39,37 +39,37 @@ ! ! File identifiers ! - INTEGER(HID_T) :: file_id - + INTEGER(HID_T) :: file_id + ! ! Group identifier ! - INTEGER(HID_T) :: gid + INTEGER(HID_T) :: gid ! ! dataset identifier ! INTEGER(HID_T) :: dset_id - + ! ! data type identifier ! INTEGER(HID_T) :: dtype_id ! - !flag to check operation success - ! + !flag to check operation success + ! INTEGER :: error ! - !general purpose integer - ! + !general purpose integer + ! INTEGER :: i, j, total_error = 0 ! - !data buffers - ! + !data buffers + ! INTEGER, DIMENSION(NX,NY) :: data_out INTEGER(HSIZE_T), DIMENSION(2) :: data_dims data_dims(1) = NX @@ -78,7 +78,7 @@ ! !Initialize FORTRAN predifined datatypes ! - CALL h5open_f(error) + CALL h5open_f(error) CALL check("h5open_f",error,total_error) ! @@ -95,13 +95,13 @@ ! !Open the dataset - ! + ! CALL h5dopen_f(file_id, "/D", dset_id, error) CALL check("h5dopen_f",error,total_error) ! !Get dataset's data type. - ! + ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f",error,total_error) @@ -128,14 +128,14 @@ ! !Open the group. ! - CALL h5gopen_f(file_id, "G", gid, error) + CALL h5gopen_f(file_id, "G", gid, error) CALL check("h5gopen_f",error,total_error) - + ! !In case error happens, exit. ! IF (error == -1) CALL h5_exit_f (1) - + ! !Close the datatype ! @@ -166,7 +166,7 @@ CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL h5close_f(error) CALL check("h5close_types_f",error,total_error) - + ! if errors detected, exit with non-zero code. IF (total_error .ne. 0) CALL h5_exit_f (1) diff --git a/fortran/test/fortranlib_test.f90 b/fortran/test/fortranlib_test.f90 index f44e373..d8acc29 100644 --- a/fortran/test/fortranlib_test.f90 +++ b/fortran/test/fortranlib_test.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,16 +11,16 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Fortran functionality. ! PROGRAM fortranlibtest - + USE HDF5 - + IMPLICIT NONE INTEGER :: total_error = 0 INTEGER :: error @@ -43,7 +43,7 @@ PROGRAM fortranlibtest WRITE(*, '(" FORTRANLIB_TEST is linked with HDF5 Library version ")', advance="NO") WRITE(*, '(I1)', advance="NO") majnum - WRITE(*, '(".")', advance="NO") + WRITE(*, '(".")', advance="NO") WRITE(*, '(I1)', advance="NO") minnum WRITE(*, '(" release ")', advance="NO") WRITE(*, '(I3)') relnum @@ -60,7 +60,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL mountingtest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Mounting test', total_error) - + ret_total_error = 0 CALL reopentest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Reopen test', total_error) @@ -86,7 +86,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL datasettest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Dataset test', total_error) - + ret_total_error = 0 CALL extenddsettest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Extendible dataset test', total_error) @@ -108,7 +108,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL refobjtest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Reference to object test', total_error) - + ret_total_error = 0 CALL refregtest(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Reference to dataset region test', total_error) @@ -126,7 +126,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL test_select_hyperslab( cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Hyperslab selection test', total_error) - + ret_total_error = 0 CALL test_select_element(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Element selection test', total_error) @@ -142,7 +142,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL test_select_bounds(cleanup, ret_total_error) CALL write_test_status(ret_total_error, ' Selection bounds test ', total_error) - + ! write(*,*) ! write(*,*) '=========================================' ! write(*,*) 'Testing DATATYPE interface ' @@ -165,7 +165,7 @@ PROGRAM fortranlibtest ! write(*,*) ! write(*,*) '=========================================' -! write(*,*) 'Testing PROPERTY interface ' +! write(*,*) 'Testing PROPERTY interface ' ! write(*,*) '=========================================' ret_total_error = 0 @@ -181,7 +181,7 @@ PROGRAM fortranlibtest ! write(*,*) ! write(*,*) '=========================================' -! write(*,*) 'Testing ATTRIBUTE interface ' +! write(*,*) 'Testing ATTRIBUTE interface ' ! write(*,*) '=========================================' ret_total_error = 0 @@ -203,7 +203,7 @@ PROGRAM fortranlibtest ret_total_error = 0 CALL szip_test(szip_flag, cleanup, ret_total_error) - + IF (.NOT. szip_flag) THEN ! test not available CALL write_test_status(-1, ' SZIP filter test', total_error) ELSE @@ -236,7 +236,7 @@ PROGRAM fortranlibtest WRITE(*, fmt = '(i4)', advance='NO') total_error WRITE(*, fmt = '(12a)' ) ' error(s) ! ' WRITE(*,*) ' ============================================ ' - + CALL h5close_f(error) ! if errors detected, exit with non-zero code. diff --git a/fortran/test/fortranlib_test_1_8.f90 b/fortran/test/fortranlib_test_1_8.f90 index 9ab6743..fac83eb 100644 --- a/fortran/test/fortranlib_test_1_8.f90 +++ b/fortran/test/fortranlib_test_1_8.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,10 +11,10 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Fortran wrappers introduced in 1.8 release. ! PROGRAM fortranlibtest @@ -28,7 +28,7 @@ PROGRAM fortranlibtest INTEGER :: majnum, minnum, relnum LOGICAL :: cleanup, status - CALL h5open_f(error) + CALL h5open_f(error) cleanup = .TRUE. CALL h5_env_nocleanup_f(status) @@ -41,7 +41,7 @@ PROGRAM fortranlibtest IF(total_error .EQ. 0) THEN WRITE(*, '(" FORTRANLIB_TEST is linked with HDF5 Library version ")', advance="NO") WRITE(*, '(I1)', advance="NO") majnum - WRITE(*, '(".")', advance="NO") + WRITE(*, '(".")', advance="NO") WRITE(*, '(I1)', advance="NO") minnum WRITE(*, '(" release ")', advance="NO") WRITE(*, '(I3)') relnum @@ -92,7 +92,7 @@ PROGRAM fortranlibtest ' Testing dataspace encoding and decoding', & total_error) - + ! CALL test_hard_query(group_total_error) @@ -112,15 +112,15 @@ PROGRAM fortranlibtest END PROGRAM fortranlibtest SUBROUTINE dtransform(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(INOUT) :: total_error INTEGER(HID_T) :: dxpl_id_c_to_f INTEGER(HID_T) :: file_id - + CHARACTER(LEN=15), PARAMETER :: c_to_f = "(9/5.0)*x + 123" INTEGER :: error CHARACTER(LEN=15) :: ptrgetTest @@ -135,7 +135,7 @@ SUBROUTINE dtransform(cleanup, total_error) CALL H5Pcreate_f(H5P_DATASET_XFER_F, dxpl_id_c_to_f, error) CALL check("dtransform.H5Pcreate_f", error, total_error) - + CALL H5Pset_data_transform_f(dxpl_id_c_to_f, c_to_f, error) CALL check("dtransform.H5Pset_data_transform_f", error, total_error) @@ -177,8 +177,8 @@ END SUBROUTINE dtransform SUBROUTINE test_genprop_basic_class(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(INOUT) :: total_error @@ -210,8 +210,8 @@ SUBROUTINE test_genprop_basic_class(cleanup, total_error) IF(error.NE.0)THEN WRITE(*,*) 'Class names do not match! name=',name, 'CLASS1_NAME=',CLASS1_NAME total_error = total_error + 1 - ENDIF - + ENDIF + ! /* Check class name smaller buffer*/ CALL H5Pget_class_name_f(cid1, name_small, size, error) CALL check("H5Pget_class_name", error, total_error) @@ -266,8 +266,8 @@ SUBROUTINE test_h5s_encode(cleanup, total_error) !** !****************************************************************/ - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(INOUT) :: total_error @@ -296,7 +296,7 @@ SUBROUTINE test_h5s_encode(cleanup, total_error) ! H5S_sel_type sel_type; ! hssize_t nblocks; ! - !Dataset dimensions + !Dataset dimensions ! INTEGER, PARAMETER :: SPACE1_DIM1= 3, SPACE1_DIM2=15, SPACE1_DIM3=13 @@ -311,15 +311,15 @@ SUBROUTINE test_h5s_encode(cleanup, total_error) ! * Test encoding and decoding of simple dataspace and hyperslab selection. ! *------------------------------------------------------------------------- ! */ - + CALL H5Screate_simple_f(SPACE1_RANK, dims1, sid1, error) CALL check("H5Screate_simple", error, total_error) - + CALL h5sselect_hyperslab_f(sid1, H5S_SELECT_SET_F, & - start, count, error, stride=stride, BLOCK=BLOCK) + start, count, error, stride=stride, BLOCK=BLOCK) CALL check("h5sselect_hyperslab_f", error, total_error) - - + + !/* Encode simple data space in a buffer */ ! First find the buffer size @@ -369,9 +369,9 @@ SUBROUTINE test_h5s_encode(cleanup, total_error) ! CALL h5sclose_f(sid1, error) CALL check("h5sclose_f", error, total_error) - + CALL h5sclose_f(decoded_sid1, error) - CALL check("h5sclose_f", error, total_error) + CALL check("h5sclose_f", error, total_error) ! /*------------------------------------------------------------------------- ! * Test encoding and decoding of scalar dataspace. @@ -417,7 +417,7 @@ SUBROUTINE test_h5s_encode(cleanup, total_error) CALL h5sclose_f(sid3, error) CALL check("h5sclose_f", error, total_error) - + CALL h5sclose_f(decoded_sid3, error) CALL check("h5sclose_f", error, total_error) diff --git a/fortran/test/t.c b/fortran/test/t.c index f2203d0..bf30331 100644 --- a/fortran/test/t.c +++ b/fortran/test/t.c @@ -52,9 +52,9 @@ nh5_fixname_c(_fcd base_name, size_t_f *base_namelen, hid_t_f* fapl, _fcd full_n HD5packFstring(c_full_name, _fcdtocp(full_name), (size_t)*full_namelen); done: - if(c_base_name) + if(c_base_name) HDfree(c_base_name); - if(c_full_name) + if(c_full_name) HDfree(c_full_name); return ret_value; diff --git a/fortran/test/tH5A.f90 b/fortran/test/tH5A.f90 index b73dd8a..dd6cbb1 100644 --- a/fortran/test/tH5A.f90 +++ b/fortran/test/tH5A.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,23 +11,23 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE attribute_test(cleanup, total_error) -! This subroutine tests following functionalities: +! This subroutine tests following functionalities: ! h5acreate_f, h5awrite_f, h5aclose_f,h5aread_f, h5aopen_name_f, ! h5aget_name_f,h5aget_space_f, h5aget_type_f, -! +! + + USE HDF5 ! This module contains all necessary modules - USE HDF5 ! This module contains all necessary modules - IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=5), PARAMETER :: filename = "atest" !File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=9), PARAMETER :: dsetname = "atestdset" !Dataset name CHARACTER(LEN=11), PARAMETER :: aname = "attr_string" !String Attribute name CHARACTER(LEN=14), PARAMETER :: aname2 = "attr_character"!Character Attribute name @@ -35,7 +35,7 @@ CHARACTER(LEN=9), PARAMETER :: aname4 = "attr_real" !Real Attribute name CHARACTER(LEN=12), PARAMETER :: aname5 = "attr_integer" !Integer Attribute name CHARACTER(LEN=9), PARAMETER :: aname6 = "attr_null" !Null Attribute name - + ! !data space rank and dimensions ! @@ -45,44 +45,44 @@ - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: dataspace ! Dataspace identifier for dataset + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: dataspace ! Dataspace identifier for dataset - INTEGER(HID_T) :: attr_id !String Attribute identifier - INTEGER(HID_T) :: attr2_id !Character Attribute identifier - INTEGER(HID_T) :: attr3_id !Double Attribute identifier - INTEGER(HID_T) :: attr4_id !Real Attribute identifier - INTEGER(HID_T) :: attr5_id !Integer Attribute identifier - INTEGER(HID_T) :: attr6_id !Null Attribute identifier - INTEGER(HID_T) :: aspace_id !String Attribute Dataspace identifier + INTEGER(HID_T) :: attr_id !String Attribute identifier + INTEGER(HID_T) :: attr2_id !Character Attribute identifier + INTEGER(HID_T) :: attr3_id !Double Attribute identifier + INTEGER(HID_T) :: attr4_id !Real Attribute identifier + INTEGER(HID_T) :: attr5_id !Integer Attribute identifier + INTEGER(HID_T) :: attr6_id !Null Attribute identifier + INTEGER(HID_T) :: aspace_id !String Attribute Dataspace identifier INTEGER(HID_T) :: aspace2_id !Character Attribute Dataspace identifier - INTEGER(HID_T) :: aspace6_id !Null Attribute Dataspace identifier - INTEGER(HID_T) :: atype_id !String Attribute Datatype identifier - INTEGER(HID_T) :: atype2_id !Character Attribute Datatype identifier - INTEGER(HID_T) :: atype3_id !Double Attribute Datatype identifier - INTEGER(HID_T) :: atype4_id !Real Attribute Datatype identifier - INTEGER(HID_T) :: atype5_id !Integer Attribute Datatype identifier + INTEGER(HID_T) :: aspace6_id !Null Attribute Dataspace identifier + INTEGER(HID_T) :: atype_id !String Attribute Datatype identifier + INTEGER(HID_T) :: atype2_id !Character Attribute Datatype identifier + INTEGER(HID_T) :: atype3_id !Double Attribute Datatype identifier + INTEGER(HID_T) :: atype4_id !Real Attribute Datatype identifier + INTEGER(HID_T) :: atype5_id !Integer Attribute Datatype identifier INTEGER(HSIZE_T), DIMENSION(1) :: adims = (/2/) ! Attribute dimension INTEGER(HSIZE_T), DIMENSION(1) :: adims2 = (/1/) ! Attribute dimension INTEGER :: arank = 1 ! Attribure rank INTEGER(SIZE_T) :: attrlen ! Length of the attribute string - INTEGER(HID_T) :: attr_space !Returned String Attribute Space identifier - INTEGER(HID_T) :: attr2_space !Returned other Attribute Space identifier + INTEGER(HID_T) :: attr_space !Returned String Attribute Space identifier + INTEGER(HID_T) :: attr2_space !Returned other Attribute Space identifier INTEGER(HID_T) :: attr_type !Returned Attribute Datatype identifier INTEGER(HID_T) :: attr2_type !Returned CHARACTER Attribute Datatype identifier INTEGER(HID_T) :: attr3_type !Returned DOUBLE Attribute Datatype identifier INTEGER(HID_T) :: attr4_type !Returned REAL Attribute Datatype identifier INTEGER(HID_T) :: attr5_type !Returned INTEGER Attribute Datatype identifier INTEGER(HID_T) :: attr6_type !Returned NULL Attribute Datatype identifier - INTEGER :: num_attrs !number of attributes + INTEGER :: num_attrs !number of attributes INTEGER(HSIZE_T) :: attr_storage ! attributes storage requirements .MSB. CHARACTER(LEN=256) :: attr_name !buffer to put attr_name INTEGER(SIZE_T) :: name_size = 80 !attribute name length CHARACTER(LEN=35), DIMENSION(2) :: attr_data ! String attribute data - CHARACTER(LEN=35), DIMENSION(2) :: aread_data ! Buffer to put read back + CHARACTER(LEN=35), DIMENSION(2) :: aread_data ! Buffer to put read back ! string attr data CHARACTER :: attr_character_data = 'A' DOUBLE PRECISION, DIMENSION(1) :: attr_double_data = 3.459 @@ -90,7 +90,7 @@ INTEGER, DIMENSION(1) :: attr_integer_data = 5 INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - + CHARACTER :: aread_character_data ! variable to put read back Character attr data INTEGER, DIMENSION(1) :: aread_integer_data ! variable to put read back integer attr data INTEGER, DIMENSION(1) :: aread_null_data = 7 ! variable to put read back null attr data @@ -98,19 +98,19 @@ REAL, DIMENSION(1) :: aread_real_data ! variable to put read back real attr data ! - !general purpose integer - ! + !general purpose integer + ! INTEGER :: i, j INTEGER :: error ! Error flag - - ! + + ! !The dimensions for the dataset. ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/NX,NY/) ! - !data buffers - ! + !data buffers + ! INTEGER, DIMENSION(NX,NY) :: data_in @@ -126,9 +126,9 @@ ! Initialize attribute's data ! attr_data(1) = 'Dataset character attribute' - attr_data(2) = 'Some other string here ' - attrlen = LEN(attr_data(1)) - + attr_data(2) = 'Some other string here ' + attrlen = LEN(attr_data(1)) + ! ! Create the file. ! @@ -141,13 +141,13 @@ CALL check("h5fcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(RANK, dims, dataspace, error) CALL check("h5screate_simple_f",error,total_error) ! - ! create dataset in the file. + ! create dataset in the file. ! CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dataspace, & dset_id, error) @@ -162,17 +162,17 @@ CALL check("h5dwrite_f",error,total_error) ! - ! Create scalar data space for the String attribute. + ! Create scalar data space for the String attribute. ! CALL h5screate_simple_f(arank, adims, aspace_id, error) CALL check("h5screate_simple_f",error,total_error) ! - ! Create scalar data space for all other attributes. + ! Create scalar data space for all other attributes. ! CALL h5screate_simple_f(arank, adims2, aspace2_id, error) CALL check("h5screate_simple_f",error,total_error) ! - ! Create null data space for null attributes. + ! Create null data space for null attributes. ! CALL h5screate_f(H5S_NULL_F, aspace6_id, error) CALL check("h5screate_f",error,total_error) @@ -222,7 +222,7 @@ CALL h5acreate_f(dset_id, aname2, atype2_id, aspace2_id, & attr2_id, error) CALL check("h5acreate_f",error,total_error) - + ! ! Create dataset DOUBLE attribute. @@ -250,7 +250,7 @@ attr6_id, error) CALL check("h5acreate_f",error,total_error) - + ! ! Write the String attribute data. ! @@ -265,20 +265,20 @@ ! ! Write the DOUBLE attribute data. ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr3_id, atype3_id, attr_double_data, data_dims, error) CALL check("h5awrite_f",error,total_error) ! ! Write the Real attribute data. ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr4_id, atype4_id, attr_real_data, data_dims, error) CALL check("h5awrite_f",error,total_error) ! ! Write the Integer attribute data. ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr5_id, atype5_id, attr_integer_data, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -310,9 +310,9 @@ CALL check("h5aget_storage_size_f",error,total_error) ! CALL verify("h5aget_storage_size_f",attr_storage,0,total_error) - + ! - ! Close the attribute. + ! Close the attribute. ! CALL h5aclose_f(attr_id, error) CALL check("h5aclose_f",error,total_error) @@ -394,7 +394,7 @@ ! CALL h5aopen_name_f(dset_id, aname5, attr5_id, error) CALL check("h5aopen_idx_f",error,total_error) - + ! !open the NULL attrbute by name ! @@ -412,7 +412,7 @@ IF (error .NE. 12) THEN total_error = total_error + 1 END IF - + ! !get the STRING attrbute space ! @@ -449,7 +449,7 @@ ! CALL h5aget_type_f(attr5_id, attr5_type, error) CALL check("h5aget_type_f",error,total_error) - + ! !get the null attrbute datatype ! @@ -483,9 +483,9 @@ IF ( (aread_data(1) .NE. attr_data(1)) .OR. (aread_data(2) .NE. attr_data(2)) ) THEN WRITE(*,*) "Read back string attrbute is wrong", aread_data(1), aread_data(2) - total_error = total_error + 1 + total_error = total_error + 1 END IF - + ! !read the CHARACTER attribute data back to memory ! @@ -493,51 +493,51 @@ CALL check("h5aread_f",error,total_error) IF (aread_character_data .NE. 'A' ) THEN WRITE(*,*) "Read back character attrbute is wrong ",aread_character_data - total_error = total_error + 1 + total_error = total_error + 1 END IF ! !read the double attribute data back to memory ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5aread_f(attr3_id, H5T_NATIVE_DOUBLE, aread_double_data, data_dims, error) CALL check("h5aread_f",error,total_error) IF (aread_double_data(1) .NE. 3.459 ) THEN WRITE(*,*) "Read back double attrbute is wrong", aread_double_data(1) total_error = total_error + 1 - END IF + END IF ! !read the real attribute data back to memory ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5aread_f(attr4_id, H5T_NATIVE_REAL, aread_real_data, data_dims, error) CALL check("h5aread_f",error,total_error) IF (aread_real_data(1) .NE. 4.0 ) THEN WRITE(*,*) "Read back real attrbute is wrong ", aread_real_data - total_error = total_error + 1 - END IF + total_error = total_error + 1 + END IF ! !read the Integer attribute data back to memory ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5aread_f(attr5_id, H5T_NATIVE_INTEGER, aread_integer_data, data_dims, error) CALL check("h5aread_f",error,total_error) IF (aread_integer_data(1) .NE. 5 ) THEN WRITE(*,*) "Read back integer attrbute is wrong ", aread_integer_data - total_error = total_error + 1 - END IF + total_error = total_error + 1 + END IF ! !read the null attribute data. nothing can be read. ! - data_dims(1) = 1 + data_dims(1) = 1 CALL h5aread_f(attr6_id, H5T_NATIVE_INTEGER, aread_null_data, data_dims, error) CALL check("h5aread_f",error,total_error) IF (aread_null_data(1) .NE. 7 ) THEN WRITE(*,*) "Read back null attrbute is wrong ", aread_null_data - total_error = total_error + 1 - END IF - + total_error = total_error + 1 + END IF + ! - ! Close the attribute. + ! Close the attribute. ! CALL h5aclose_f(attr_id, error) CALL check("h5aclose_f",error,total_error) @@ -553,9 +553,9 @@ CALL check("h5aclose_f",error,total_error) ! - ! Delete the attribute from the Dataset. + ! Delete the attribute from the Dataset. ! - CALL h5adelete_f(dset_id, aname, error) + CALL h5adelete_f(dset_id, aname, error) CALL check("h5adelete_f",error,total_error) ! @@ -591,13 +591,13 @@ CALL h5tclose_f(attr6_type, error) CALL check("h5tclose_f",error,total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f",error,total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) diff --git a/fortran/test/tH5A_1_8.f90 b/fortran/test/tH5A_1_8.f90 index 58408ee..223877c 100644 --- a/fortran/test/tH5A_1_8.f90 +++ b/fortran/test/tH5A_1_8.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,22 +11,22 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! -SUBROUTINE attribute_test_1_8(cleanup, total_error) +SUBROUTINE attribute_test_1_8(cleanup, total_error) ! This subroutine tests following 1.8 functionalities: ! h5acreate_f, h5awrite_f, h5aclose_f,h5aread_f, h5aopen_name_f, ! h5aget_name_f,h5aget_space_f, h5aget_type_f, H5Pset_shared_mesg_nindexes_f, ! H5Pset_shared_mesg_index_f -! +! - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(INOUT) :: total_error - + INTEGER, INTENT(INOUT) :: total_error + CHARACTER(LEN=5), PARAMETER :: filename = "atest" !File name CHARACTER(LEN=9), PARAMETER :: dsetname = "atestdset" !Dataset name CHARACTER(LEN=11), PARAMETER :: aname = "attr_string" !String Attribute name @@ -35,7 +35,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) CHARACTER(LEN=9), PARAMETER :: aname4 = "attr_real" !Real Attribute name CHARACTER(LEN=12), PARAMETER :: aname5 = "attr_integer" !Integer Attribute name CHARACTER(LEN=9), PARAMETER :: aname6 = "attr_null" !Null Attribute name - + ! !data space rank and dimensions ! @@ -44,11 +44,11 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) INTEGER, PARAMETER :: NY = 5 ! - !general purpose integer - ! + !general purpose integer + ! INTEGER :: i, j INTEGER :: error ! Error flag - + ! NEW STARTS HERE INTEGER(HID_T) :: fapl = -1, fapl2 = -1 INTEGER(HID_T) :: fcpl = -1, fcpl2 = -1 @@ -63,7 +63,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) ! ******************** ! WRITE(*,*) "TESTING ATTRIBUTES" - + CALL H5Pcreate_f(H5P_FILE_ACCESS_F,fapl,error) CALL check("h5Pcreate_f",error,total_error) CALL h5pcopy_f(fapl, fapl2, error) @@ -71,7 +71,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) CALL H5Pcreate_f(H5P_FILE_CREATE_F,fcpl,error) CALL check("h5Pcreate_f",error,total_error) - + CALL h5pcopy_f(fcpl, fcpl2, error) CALL check("h5pcopy_f",error,total_error) @@ -118,13 +118,13 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) my_fcpl = fcpl END IF !!$ CALL test_attr_dense_create(my_fcpl, my_fapl) - + ret_total_error = 0 CALL test_attr_dense_open(my_fcpl, my_fapl, ret_total_error) CALL write_test_status(ret_total_error, & ' - Testing INT attributes on both datasets and groups', & total_error) - + !!$ CALL test_attr_dense_delete(my_fcpl, my_fapl) !!$ CALL test_attr_dense_rename(my_fcpl, my_fapl) !!$ CALL test_attr_dense_unlink(my_fcpl, my_fapl) @@ -147,7 +147,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) CALL write_test_status(ret_total_error, & ' - Testing creating objects with attribute creation order', & total_error) - + ret_total_error = 0 CALL test_attr_corder_create_compact(my_fcpl, my_fapl, ret_total_error) CALL write_test_status(ret_total_error, & @@ -162,13 +162,13 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) CALL write_test_status(ret_total_error, & ' - Testing querying attribute info by index', & total_error) - + ret_total_error = 0 CALL test_attr_delete_by_idx(new_format, my_fcpl, my_fapl, ret_total_error) CALL write_test_status(ret_total_error, & ' - Testing deleting attribute by index', & total_error) - + !!$ CALL test_attr_iterate2(new_format, my_fcpl, my_fapl) !!$ CALL test_attr_open_by_idx(new_format, my_fcpl, my_fapl) !!$ CALL test_attr_open_by_name(new_format, my_fcpl, my_fapl) @@ -192,7 +192,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error) CALL write_test_status(ret_total_error,& ' - Testing deleting shared attributes in "compact" & "dense" storage', & total_error) - + !!$ CALL test_attr_shared_unlink(my_fcpl, my_fapl) END IF @@ -264,16 +264,16 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) INTEGER(HID_T) :: my_dataset INTEGER :: u - + INTEGER :: max_compact ! Maximum # of links to store in group compactly INTEGER :: min_dense ! Minimum # of links to store in group "densely" CHARACTER(LEN=7) :: attrname CHARACTER(LEN=2) :: chr2 - INTEGER(HID_T) :: attr !String Attribute identifier + INTEGER(HID_T) :: attr !String Attribute identifier INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters @@ -330,7 +330,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error) CALL check("h5acreate_f",error,total_error) - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -354,7 +354,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) CALL check("h5dclose_f",error,total_error) CALL h5dclose_f(dset3, error) CALL check("h5dclose_f",error,total_error) - + ! /* Close file */ CALL h5fclose_f(fid, error) CALL check("h5fclose_f",error,total_error) @@ -404,7 +404,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) f_corder_valid, corder, cset, data_size, error, lapl_id = H5P_DEFAULT_F ) !with optional CALL check("H5Aget_info_by_name_f", error, total_error) - + ! /* Verify creation order of attribute */ CALL verifyLogical("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error) @@ -417,7 +417,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) f_corder_valid, corder, cset, data_size, error) ! without optional CALL check("H5Aget_info_by_name_f", error, total_error) - + ! /* Verify creation order of attribute */ CALL verifyLogical("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error) @@ -432,7 +432,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error) CALL check("h5dclose_f",error,total_error) CALL h5dclose_f(dset3, error) CALL check("h5dclose_f",error,total_error) - + ! /* Close file */ CALL h5fclose_f(fid, error) CALL check("h5fclose_f",error,total_error) @@ -463,24 +463,24 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error) INTEGER :: error - + INTEGER :: value_scalar INTEGER, DIMENSION(1) :: value - INTEGER(HID_T) :: attr !String Attribute identifier + INTEGER(HID_T) :: attr !String Attribute identifier INTEGER(HID_T) :: attr_sid INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - INTEGER(HSIZE_T) :: storage_size ! attributes storage requirements + INTEGER(HSIZE_T) :: storage_size ! attributes storage requirements - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters - + LOGICAL :: equal ! test: H5Sextent_equal_f - + data_dims = 0 ! /* Output message about test being performed */ @@ -532,7 +532,7 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error) CALL H5Sextent_equal_f(attr_sid, null_sid, equal, error) CALL check("H5Sextent_equal_f",error,total_error) CALL Verifylogical("H5Sextent_equal_f",equal,.TRUE.,total_error) - + !!$ ret = H5Sclose(attr_sid) !!$ CALL CHECK(ret, FAIL, "H5Sclose") @@ -586,7 +586,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) IMPLICIT NONE INTEGER(SIZE_T), PARAMETER :: NAME_BUF_SIZE = 7 - LOGICAL :: new_format + LOGICAL :: new_format INTEGER(HID_T), INTENT(IN) :: fcpl INTEGER(HID_T), INTENT(IN) :: fapl INTEGER, INTENT(INOUT) :: total_error @@ -616,7 +616,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) CHARACTER(LEN=2) :: chr2 - LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) + LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) INTEGER :: Input1 INTEGER :: i @@ -666,10 +666,10 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error, dcpl_id=dcpl ) CALL check("h5dcreate_f2",error,total_error) - + CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dset2, error, dcpl_id=dcpl ) CALL check("h5dcreate_f3",error,total_error) - + CALL h5dcreate_f(fid, DSET3_NAME, H5T_NATIVE_CHARACTER, sid, dset3, error, dcpl_id=dcpl ) CALL check("h5dcreate_f4",error,total_error) @@ -704,12 +704,12 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 CALL H5Acreate_by_name_f(fid, dsetname, attrname, H5T_NATIVE_INTEGER, sid, & - attr, error, lapl_id=H5P_DEFAULT_F, acpl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F) + attr, error, lapl_id=H5P_DEFAULT_F, acpl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F) CALL check("H5Acreate_by_name_f",error,total_error) - + ! /* Write data into the attribute */ - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -751,7 +751,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) my_dataset = dset3 dsetname = DSET3_NAME END SELECT - + ! /* Create more attributes, to push into dense form */ DO u = max_compact, max_compact* 2 - 1 @@ -763,7 +763,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error) CALL check("H5Acreate_by_name",error,total_error) ! /* Write data into the attribute */ - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -867,7 +867,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) INTEGER(HID_T) :: attr !String Attribute identifier INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters @@ -895,7 +895,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) data_dims = 0 ! /* Create dataspace for dataset & attributes */ - + CALL h5screate_f(H5S_SCALAR_F, sid, error) CALL check("h5screate_f",error,total_error) @@ -911,7 +911,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) CALL check("H5Pget_attr_phase_change_f",error,total_error) ! /* Loop over using index for creation order value */ - + DO i = 1, 2 ! /* Output message about test being performed */ @@ -937,18 +937,18 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) ENDIF ! /* Create datasets */ - + CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error ) CALL check("h5dcreate_f",error,total_error) - + CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dset2, error ) CALL check("h5dcreate_f",error,total_error) - + CALL h5dcreate_f(fid, DSET3_NAME, H5T_NATIVE_CHARACTER, sid, dset3, error ) CALL check("h5dcreate_f",error,total_error) ! /* Work on all the datasets */ - + DO curr_dset = 0,NUM_DSETS-1 SELECT CASE (curr_dset) @@ -974,7 +974,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) ! -- CHECK PASSING AN INTEGER CONSTANT IN DIFFERENT FORMS -- - ! 1) call by passing an integer with the _hsize_t declaration + ! 1) call by passing an integer with the _hsize_t declaration CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, 0_hsize_t, & f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F) @@ -986,13 +986,13 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F) CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error) - + ! 3) call by passing a variable with the attribute hsize_t CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, hzero, & f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F) CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error) - + CALL h5aget_name_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, & hzero, tmpname, error, size, lapl_id=H5P_DEFAULT_F) CALL VERIFY("h5aget_name_by_idx_f",error,minusone,total_error) @@ -1009,7 +1009,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) ! check with the optional information create2 specs. CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F) CALL check("h5acreate_f",error,total_error) - + ! /* Write data into the attribute */ attr_integer_data(1) = j @@ -1023,7 +1023,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) CALL check("h5aclose_f",error,total_error) ! /* Verify information for new attribute */ - + !EP CALL attr_info_by_idx_check(my_dataset, attrname, INT(j,HSIZE_T), use_index(i), total_error ) htmp = j CALL attr_info_by_idx_check(my_dataset, attrname, htmp, use_index(i), total_error ) @@ -1045,7 +1045,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error) ! /* Close file */ CALL h5fclose_f(fid, error) CALL check("h5fclose_f",error,total_error) - + END DO ! /* Close property list */ @@ -1071,7 +1071,7 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error ) CHARACTER(LEN=*) :: attrname INTEGER(HSIZE_T) :: n LOGICAL :: use_index - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters @@ -1084,7 +1084,7 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error ) ! /* Verify the information for first attribute, in increasing creation order */ CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, hzero, & f_corder_valid, corder, cset, data_size, error) - + CALL check("h5aget_info_by_idx_f",error,total_error) CALL verify("h5aget_info_by_idx_f",corder,0,total_error) ! /* Verify the information for new attribute, in increasing creation order */ @@ -1143,25 +1143,25 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error ) f_corder_valid, corder, cset, data_size, error) CALL check("h5aget_info_by_idx_f",error,total_error) CALL VERIFY("h5aget_info_by_idx_f",corder,0,total_error) - + !EP CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, & ! -- CHECK PASSING AN INTEGER CONSTANT IN DIFFERENT FORMS -- - ! 1) call by passing an integer with the _hsize_t declaration + ! 1) call by passing an integer with the _hsize_t declaration CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, & f_corder_valid, corder, cset, data_size, error) CALL check("h5aget_info_by_idx_f",error,total_error) CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error) - + ! 2) call by passing an integer with the INT(,hsize_t) declaration CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, INT(0,HSIZE_T), & f_corder_valid, corder, cset, data_size, error) CALL check("h5aget_info_by_idx_f",error,total_error) - CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error) - + CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error) + ! 3) call by passing a variable with the attribute hsize_t CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, hzero, & @@ -1244,7 +1244,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) CHARACTER(LEN=11) :: attrname2 CHARACTER(LEN=1), PARAMETER :: chr1 = '.' - + INTEGER :: u INTEGER, PARAMETER :: SPACE1_RANK = 3 INTEGER, PARAMETER :: NX = 20 @@ -1301,7 +1301,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) CALL H5Pset_shared_mesg_nindexes_f(my_fcpl,3,error) ! /* Make attributes > 500 bytes shared */ - CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error) + CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error) ! /* Make datatypes & dataspaces > 1 byte shared (i.e. all of them :-) */ CALL H5Pset_shared_mesg_index_f(my_fcpl, 1, H5O_SHMESG_DTYPE_FLAG_F, 1,error) CALL H5Pset_shared_mesg_index_f(my_fcpl, 2, H5O_SHMESG_SDSPACE_FLAG_F, 1,error) @@ -1321,7 +1321,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) ! /* Re-open file */ CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error,fapl) CALL check("h5open_f",error,total_error) - + ! /* Commit datatype to file */ IF(test_shared.EQ.2) THEN CALL H5Tcommit_f(fid, TYPE1_NAME, attr_tid, error, H5P_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F) @@ -1366,16 +1366,16 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) !!$ is_dense = H5O_is_attr_dense_test(dataset2); !!$ VERIFY(is_dense, FALSE, "H5O_is_attr_dense_test"); ! /* Add attributes to each dataset, until after converting to dense storage */ - + DO u = 0, (max_compact * 2) - 1 ! /* Create attribute name */ WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 - + ! /* Alternate between creating "small" & "big" attributes */ - + IF(MOD(u+1,2).EQ.0)THEN ! /* Create "small" attribute on first dataset */ @@ -1412,13 +1412,13 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) attr_integer_data(1) = u + 1 CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error) CALL check("h5awrite_f",error,total_error) - + ! Check refcount for attribute */ !!$ ret = H5A_get_shared_rc_test(attr, &shared_refcount); !!$ CHECK(ret, FAIL, "H5A_get_shared_rc_test"); !!$ VERIFY(shared_refcount, 1, "H5A_get_shared_rc_test"); ENDIF - + ! /* Close attribute */ CALL h5aclose_f(attr, error) CALL check("h5aclose_f",error,total_error) @@ -1444,7 +1444,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) !!$ VERIFY(is_shared, FALSE, "H5A_is_shared_test"); !!$ ! /* Write data into the attribute */ - + attr_integer_data(1) = u + 1 data_dims(1) = 1 CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error) @@ -1452,7 +1452,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) ELSE ! /* Create "big" attribute on second dataset */ - + CALL h5acreate_f(dataset2, attrname, attr_tid, big_sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F) CALL check("h5acreate_f",error,total_error) @@ -1467,7 +1467,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) !!$ ! /* Write data into the attribute */ - + attr_integer_data(1) = u + 1 data_dims(1) = 1 ! CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error) @@ -1493,7 +1493,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) ! /* Create new attribute name */ - + WRITE(chr2,'(I2.2)') u attrname2 = 'new attr '//chr2 @@ -1556,7 +1556,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) ! /* Change second dataset's attribute's name back to original */ - + CALL H5Arename_by_name_f(fid, DSET2_NAME, attrname2, attrname, error) CALL check("H5Arename_by_name_f",error,total_error) @@ -1611,7 +1611,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error) ! /* Close attribute */ CALL h5aclose_f(attr, error) CALL check("h5aclose_f",error,total_error) - + ENDDO ! /* Close attribute's datatype */ @@ -1696,7 +1696,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) !****************************************************************/ USE HDF5 - + IMPLICIT NONE LOGICAL, INTENT(IN) :: new_format @@ -1723,7 +1723,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) INTEGER(HID_T) :: attr !String Attribute identifier INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters @@ -1742,14 +1742,14 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) INTEGER(SIZE_T) :: size CHARACTER(LEN=8) :: tmpname CHARACTER(LEN=1), PARAMETER :: chr1 = '.' - + INTEGER :: idx_type INTEGER :: order INTEGER :: u ! /* Local index variable */ INTEGER :: Input1 INTEGER(HSIZE_T) :: hzero = 0_HSIZE_T INTEGER :: minusone = -1 - + data_dims = 0 ! /* Create dataspace for dataset & attributes */ @@ -1770,10 +1770,10 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ! /* Loop over operating in different orders */ DO order = H5_ITER_INC_F, H5_ITER_DEC_F - + ! /* Loop over using index for creation order value */ DO i = 1, 2 - + ! /* Print appropriate test message */ !!$ IF(idx_type .EQ. H5_INDEX_CRT_ORDER_F)THEN !!$ IF(order .EQ. H5_ITER_INC_F) THEN @@ -1828,18 +1828,18 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ENDIF ! /* Create datasets */ - + CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error, dcpl ) CALL check("h5dcreate_f2",error,total_error) - + CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dset2, error, dcpl ) CALL check("h5dcreate_f3",error,total_error) - + CALL h5dcreate_f(fid, DSET3_NAME, H5T_NATIVE_CHARACTER, sid, dset3, error, dcpl ) CALL check("h5dcreate_f4",error,total_error) - + ! /* Work on all the datasets */ - + DO curr_dset = 0,NUM_DSETS-1 SELECT CASE (curr_dset) CASE (0) @@ -1851,44 +1851,44 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ! CASE DEFAULT ! CALL HDassert(0.AND."Toomanydatasets!") END SELECT - + ! /* Check on dataset's attribute storage status */ !!$ is_empty = H5O_is_attr_empty_test(my_dataset); !!$ VERIFY(is_empty, TRUE, "H5O_is_attr_empty_test"); !!$ is_dense = H5O_is_attr_dense_test(my_dataset); !!$ VERIFY(is_dense, FALSE, "H5O_is_attr_dense_test"); - + ! /* Check for deleting non-existant attribute */ !EP CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, 0_HSIZE_T,error, lapl_id=H5P_DEFAULT_F) CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, hzero,error, lapl_id=H5P_DEFAULT_F) CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error) - + ! /* Create attributes, up to limit of compact form */ DO u = 0, max_compact - 1 ! /* Create attribute */ WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 - + CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F) CALL check("h5acreate_f",error,total_error) - + ! /* Write data into the attribute */ attr_integer_data(1) = u data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_integer_data, data_dims, error) CALL check("h5awrite_f",error,total_error) - + ! /* Close attribute */ CALL h5aclose_f(attr, error) CALL check("h5aclose_f",error,total_error) ! /* Verify information for new attribute */ CALL attr_info_by_idx_check(my_dataset, attrname, INT(u,HSIZE_T), use_index(i), total_error ) - + ENDDO - + ! /* Verify state of object */ !!$ ret = H5O_num_attrs_test(my_dataset, &nattrs); @@ -1902,7 +1902,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) !/* Check for out of bound deletions */ CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(u,HSIZE_T), error, lapl_id=H5P_DEFAULT_F) CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error) - + ENDDO @@ -1917,18 +1917,18 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ! CASE DEFAULT ! CALL HDassert(0.AND."Toomanydatasets!") END SELECT - + ! /* Delete attributes from compact storage */ - + DO u = 0, max_compact - 2 - + ! /* Delete first attribute in appropriate order */ - - + + !EP CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, 0_HSIZE_T, error) CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, hzero, error) CALL check("H5Adelete_by_idx_f",error,total_error) - + ! /* Verify the attribute information for first attribute in appropriate order */ ! HDmemset(&ainfo, 0, sizeof(ainfo)); @@ -1936,7 +1936,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) !EP CALL h5aget_info_by_idx_f(my_dataset, ".", idx_type, order, 0_HSIZE_T, & CALL h5aget_info_by_idx_f(my_dataset, ".", idx_type, order, hzero, & f_corder_valid, corder, cset, data_size, error) - + IF(new_format)THEN IF(order.EQ.H5_ITER_INC_F)THEN CALL VERIFY("H5Aget_info_by_idx_f",corder,u + 1,total_error) @@ -1944,7 +1944,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ELSE CALL VERIFY("H5Aget_info_by_idx_f",corder, max_compact-(u + 2),total_error) ENDIF - + ! /* Verify the name for first attribute in appropriate order */ ! HDmemset(tmpname, 0, (size_t)NAME_BUF_SIZE); @@ -1969,14 +1969,14 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, hzero, error) CALL check("H5Adelete_by_idx_f",error,total_error) - + ! /* Verify state of attribute storage (empty) */ !!$ is_empty = H5O_is_attr_empty_test(my_dataset); !!$ VERIFY(is_empty, TRUE, "H5O_is_attr_empty_test"); ENDDO ! /* Work on all the datasets */ - + DO curr_dset = 0,NUM_DSETS-1 SELECT CASE (curr_dset) CASE (0) @@ -1996,7 +1996,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ! /* Create attribute */ WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 - + CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F) CALL check("h5acreate_f",error,total_error) @@ -2067,7 +2067,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), error) CALL check("H5Adelete_by_idx_f",error,total_error) ! /* Verify the attribute information for first attribute in appropriate order */ - + CALL h5aget_info_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), & f_corder_valid, corder, cset, data_size, error) IF(new_format)THEN @@ -2081,7 +2081,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) ! /* Verify the name for first attribute in appropriate order */ ! HDmemset(tmpname, 0, (size_t)NAME_BUF_SIZE); - size = 7 ! *CHECK* if not the correct size + size = 7 ! *CHECK* if not the correct size CALL h5aget_name_by_idx_f(my_dataset, ".", idx_type, order,INT(0,hsize_t), & tmpname, error, size) @@ -2089,12 +2089,12 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) WRITE(chr2,'(I2.2)') u + 1 attrname = 'attr '//chr2 ELSE - WRITE(chr2,'(I2.2)') max_compact * 2 - (u + 2) + WRITE(chr2,'(I2.2)') max_compact * 2 - (u + 2) attrname = 'attr '//chr2 ENDIF IF(TRIM(attrname).NE.TRIM(tmpname)) error = -1 CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error) - + ENDDO ! /* Delete last attribute */ @@ -2117,7 +2117,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error) CALL check("h5dclose_f",error,total_error) CALL h5dclose_f(dset3, error) CALL check("h5dclose_f",error,total_error) - + ! /* Close file */ CALL h5fclose_f(fid, error) CALL check("h5fclose_f",error,total_error) @@ -2145,7 +2145,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) !****************************************************************/ USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fcpl @@ -2179,7 +2179,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) CHARACTER(LEN=7) :: attrname CHARACTER(LEN=1), PARAMETER :: chr1 = '.' - + INTEGER :: u INTEGER, PARAMETER :: SPACE1_RANK = 3 INTEGER, PARAMETER :: NX = 20 @@ -2209,7 +2209,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) ! /* Loop over type of shared components */ DO test_shared = 0, 2 - + ! /* Make copy of file creation property list */ CALL H5Pcopy_f(fcpl, my_fcpl, error) @@ -2271,7 +2271,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, dcpl_id=dcpl ) CALL check("h5dcreate_f",error,total_error) - + CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dataset2, error, dcpl_id=dcpl ) CALL check("h5dcreate_f",error,total_error) @@ -2303,13 +2303,13 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) !!$ VERIFY(is_dense, FALSE, "H5O_is_attr_dense_test"); !!$ ! /* Add attributes to each dataset, until after converting to dense storage */ - + DO u = 0, (max_compact * 2) - 1 ! /* Create attribute name */ WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 - + ! /* Alternate between creating "small" & "big" attributes */ IF(MOD(u+1,2).EQ.0)THEN @@ -2387,7 +2387,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) ELSE ! /* Create "big" attribute on second dataset */ - + CALL h5acreate_f(dataset2, attrname, attr_tid, big_sid, attr, error, acpl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F) CALL check("h5acreate_f",error,total_error) @@ -2402,7 +2402,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) !!$ ! /* Write data into the attribute */ - + attr_integer_data(1) = u + 1 data_dims(1) = 1 CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error) @@ -2469,7 +2469,7 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error) ENDDO ! /* Close attribute's datatype */ - + CALL h5tclose_f(attr_tid, error) CALL check("h5tclose_f",error,total_error) @@ -2556,7 +2556,7 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error) !****************************************************************/ USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fcpl @@ -2618,7 +2618,7 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error) CALL check("H5Pset_attr_creation_order",error,total_error) ! /* Create a dataset */ - + CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, & lcpl_id=H5P_DEFAULT_F, dcpl_id=dcpl, dapl_id=H5P_DEFAULT_F) CALL check("h5dcreate_f",error,total_error) @@ -2647,7 +2647,7 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error) ! /* Write data into the attribute */ - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -2666,7 +2666,7 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error) ! /* Add one more attribute, to push into "dense" storage */ ! /* Create attribute */ - + WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 @@ -2677,9 +2677,9 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error) !!$ is_dense = H5O_is_attr_dense_test(dataset); !!$ VERIFY(is_dense, TRUE, "H5O_is_attr_dense_test"); - + ! /* Write data into the attribute */ - data_dims(1) = 1 + data_dims(1) = 1 CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error) CALL check("h5awrite_f",error,total_error) @@ -2724,7 +2724,7 @@ END SUBROUTINE test_attr_dense_open SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error) USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id @@ -2739,7 +2739,7 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error) CHARACTER(LEN=ATTR_NAME_LEN) :: check_name INTEGER(HSIZE_T), DIMENSION(7) :: data_dims - INTEGER(HID_T) :: attr !String Attribute identifier + INTEGER(HID_T) :: attr !String Attribute identifier INTEGER :: error INTEGER :: value @@ -2785,7 +2785,7 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error) attr, error, aapl_id=H5P_DEFAULT_F) ! /* Verify Name */ - + WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 @@ -2819,7 +2819,7 @@ END SUBROUTINE test_attr_dense_verify SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error ) USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fcpl @@ -2849,7 +2849,7 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error ) ! /* Create dataset creation property list */ CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error) CALL check("h5Pcreate_f",error,total_error) - + ! /* Get creation order indexing on object */ CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error) CALL check("H5Pget_attr_creation_order_f",error,total_error) @@ -2919,11 +2919,11 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error ) ! /* Close property list */ CALL h5pclose_f(dcpl, error) CALL check("h5pclose_f",error,total_error) - + ! /* Close Dataset */ CALL h5dclose_f(dataset, error) CALL check("h5dclose_f",error,total_error) - + ! /* Close file */ CALL h5fclose_f(fid, error) CALL check("h5fclose_f",error,total_error) @@ -2941,7 +2941,7 @@ END SUBROUTINE test_attr_corder_create_basic SUBROUTINE test_attr_basic_write(fapl, total_error) USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fapl @@ -2962,11 +2962,11 @@ SUBROUTINE test_attr_basic_write(fapl, total_error) CHARACTER(LEN=25) :: check_name CHARACTER(LEN=18) :: chr_exact_size - INTEGER, PARAMETER :: SPACE1_RANK = 2 + INTEGER, PARAMETER :: SPACE1_RANK = 2 CHARACTER(LEN=5), PARAMETER :: ATTR1_NAME="Attr1" - INTEGER, PARAMETER :: ATTR1_RANK = 1 - INTEGER, PARAMETER :: ATTR1_DIM1 = 3 + INTEGER, PARAMETER :: ATTR1_RANK = 1 + INTEGER, PARAMETER :: ATTR1_DIM1 = 3 CHARACTER(LEN=7), PARAMETER :: ATTR1A_NAME ="Attr1_a" CHARACTER(LEN=18), PARAMETER :: ATTR_TMP_NAME = "Attr1_a-1234567890" INTEGER, DIMENSION(ATTR1_DIM1) :: attr_data1 @@ -3021,7 +3021,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error) CALL H5Gopen_f(fid1, "/", group, error, H5P_DEFAULT_F) CALL check("H5Gopen_f",error,total_error) - ! /* Open attribute again */ + ! /* Open attribute again */ CALL h5aopen_f(group, ATTR1_NAME, attr, error) CALL check("h5aopen_f",error,total_error) @@ -3038,7 +3038,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error) CALL check("h5acreate_f",error,total_error) ! /* Write attribute information */ - + CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_data1, dimsa, error) CALL check("h5awrite_f",error,total_error) @@ -3144,7 +3144,7 @@ END SUBROUTINE test_attr_basic_write SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error) USE HDF5 - + IMPLICIT NONE LOGICAL, INTENT(IN) :: new_format @@ -3188,7 +3188,7 @@ SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error) ! /* Create group for attributes */ - CALL H5Gcreate_f(fid, GROUP1_NAME, gid, error) + CALL H5Gcreate_f(fid, GROUP1_NAME, gid, error) CALL check("H5Gcreate_f", error, total_error) ! /* Create many attributes */ @@ -3266,7 +3266,7 @@ END SUBROUTINE test_attr_many SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error ) USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fid CHARACTER(LEN=*), INTENT(IN) :: dsetname @@ -3278,7 +3278,7 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error ) CHARACTER (LEN=8) :: attrname INTEGER, PARAMETER :: NUM_DSETS = 3 INTEGER :: error - LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER(HSIZE_T) :: data_size ! indicates the size, in the number of characters @@ -3293,14 +3293,14 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error ) WRITE(chr2,'(I2.2)') u attrname = 'attr '//chr2 - - + + CALL h5aopen_f(obj_id, attrname, attr_id, error) CALL check("h5aopen_f",error,total_error) ! /* Get the attribute's information */ - + CALL h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, error) CALL check("h5aget_info_f",error,total_error) @@ -3310,7 +3310,7 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error ) CALL VERIFY("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error) CALL h5aget_storage_size_f(attr_id, storage_size, error) CALL check("h5aget_storage_size_f",error,total_error) - + CALL VERIFY("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error) diff --git a/fortran/test/tH5D.f90 b/fortran/test/tH5D.f90 index e704db2..56e82f4 100644 --- a/fortran/test/tH5D.f90 +++ b/fortran/test/tH5D.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,10 +11,10 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Dataset Interface functionality. ! ! @@ -23,20 +23,20 @@ ! h5dread_f, and h5dwrite_f ! SUBROUTINE datasettest(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=5), PARAMETER :: filename = "dsetf" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name CHARACTER(LEN=9), PARAMETER :: null_dsetname = "null_dset" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: null_dset ! Null dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: null_dset ! Null dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: null_dspace ! Null dataspace identifier INTEGER(HID_T) :: dtype_id ! Datatype identifier @@ -65,7 +65,7 @@ ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -75,12 +75,12 @@ CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) CALL check("h5screate_simple_f", error, total_error) - ! + ! ! Create null dataspace. ! CALL h5screate_f(H5S_NULL_F, null_dspace, error) @@ -94,7 +94,7 @@ dset_id, error) CALL check("h5dcreate_f", error, total_error) ! - ! Create the null dataset. + ! Create the null dataset. ! CALL h5dcreate_f(file_id, null_dsetname, H5T_NATIVE_INTEGER, null_dspace, & null_dset, error) @@ -104,20 +104,20 @@ ! Write the dataset. ! data_dims(1) = 4 - data_dims(2) = 6 + data_dims(2) = 6 CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error) CALL check("h5dwrite_f", error, total_error) ! ! Write null dataset. Nothing can be written. - ! - null_data_dim(1) = 1 + ! + null_data_dim(1) = 1 CALL h5dwrite_f(null_dset, H5T_NATIVE_INTEGER, null_dset_data, null_data_dim, error) CALL check("h5dwrite_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) CALL h5dclose_f(null_dset, error) @@ -131,7 +131,7 @@ CALL h5sclose_f(null_dspace, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -144,7 +144,7 @@ CALL check("h5fopen_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) @@ -152,13 +152,13 @@ CALL check("h5dopen_f", error, total_error) ! - ! Get the dataset type. + ! Get the dataset type. ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f", error, total_error) ! - ! Get the data space. + ! Get the data space. ! CALL h5dget_space_f(dset_id, dspace_id, error) CALL check("h5dget_space_f", error, total_error) @@ -176,26 +176,26 @@ ! !Compare the data. - ! + ! do i = 1, 4 do j = 1, 6 - IF (data_out(i,j) .NE. dset_data(i, j)) THEN + IF (data_out(i,j) .NE. dset_data(i, j)) THEN write(*, *) "dataset test error occured" write(*,*) "data read is not the same as the data writen" END IF - end do + end do end do ! ! Check if no change to null_dset_data ! - IF (null_dset_data .NE. 1) THEN + IF (null_dset_data .NE. 1) THEN write(*, *) "null dataset test error occured" END IF - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) CALL h5dclose_f(null_dset, error) @@ -212,14 +212,14 @@ ! CALL h5tclose_f(dtype_id, error) CALL check("h5tclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + RETURN END SUBROUTINE datasettest @@ -228,11 +228,11 @@ ! SUBROUTINE extenddsettest(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error ! !the dataset is stored in file "extf.h5" @@ -250,11 +250,11 @@ ! INTEGER :: RANK = 2 - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: dataspace ! Dataspace identifier - INTEGER(HID_T) :: memspace ! memory Dataspace identifier - INTEGER(HID_T) :: crp_list ! dataset creatation property identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: dataspace ! Dataspace identifier + INTEGER(HID_T) :: memspace ! memory Dataspace identifier + INTEGER(HID_T) :: crp_list ! dataset creatation property identifier ! !dataset dimensions at creation time @@ -262,44 +262,44 @@ INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/3,3/) ! - !data dimensions + !data dimensions ! INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/10,3/) ! !Maximum dimensions ! - INTEGER(HSIZE_T), DIMENSION(2) :: maxdims + INTEGER(HSIZE_T), DIMENSION(2) :: maxdims ! - !data arrays for reading and writing + !data arrays for reading and writing ! INTEGER, DIMENSION(10,3) :: data_in, data_out ! - !Size of data in the file + !Size of data in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: size ! - !general purpose integer + !general purpose integer ! INTEGER :: i, j ! - !flag to check operation success + !flag to check operation success ! - INTEGER :: error + INTEGER :: error ! !Variables used in reading data back - ! + ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsr, maxdimsr INTEGER :: rankr INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! - !data initialization + !data initialization ! do i = 1, 10 do j = 1, 3 @@ -310,12 +310,12 @@ ! !Initialize FORTRAN predifined datatypes ! -! CALL h5init_types_f(error) +! CALL h5init_types_f(error) ! CALL check("h5init_types_f",error,total_error) ! !Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -361,8 +361,8 @@ ! !Extend the dataset. Dataset becomes 10 x 3. ! - size(1) = 10; - size(2) = 3; + size(1) = 10; + size(2) = 3; CALL h5dextend_f(dset_id, size, error) CALL check("h5dextend_f",error,total_error) @@ -451,7 +451,7 @@ CALL check("h5screate_simple_f",error,total_error) ! - !Read data + !Read data ! CALL H5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, & memspace, dataspace) @@ -460,14 +460,14 @@ ! !Compare the data. - ! + ! do i = 1, dims1(1) do j = 1, dims1(2) - IF (data_out(i,j) .NE. data_in(i, j)) THEN + IF (data_out(i,j) .NE. data_in(i, j)) THEN write(*, *) "extend dataset test error occured" write(*, *) "read value is not the same as the written values" END IF - end do + end do end do ! @@ -503,6 +503,6 @@ CALL check("h5_cleanup_f", error, total_error) RETURN - END SUBROUTINE extenddsettest + END SUBROUTINE extenddsettest diff --git a/fortran/test/tH5E.f90 b/fortran/test/tH5E.f90 index 7bd2402..a4912bd 100644 --- a/fortran/test/tH5E.f90 +++ b/fortran/test/tH5E.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,35 +11,35 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE error_report_test(cleanup, total_error) ! This subroutine tests following functionalities: h5eprint_f - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=6), PARAMETER :: filename = "etestf" ! File name CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=8), PARAMETER :: err_filename = "err_file"! Error output file CHARACTER(LEN=80) :: fix_err_filename - - + + INTEGER(HID_T) :: file_id ! File identifier INTEGER(HID_T) :: grp_id ! Group identifier INTEGER :: error, tmp_error, err_flag - - err_flag = 0 + + err_flag = 0 CALL h5eset_auto_f(err_flag, error) CALL check("h5eprint_f",error, total_error) ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -47,7 +47,7 @@ endif CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) CALL check("h5fcreate_f",error,total_error) - + ! ! Try to open non-existing group in the file. ! Error message should go to the err_file_name file. @@ -61,8 +61,8 @@ CALL h5eprint_f(error, fix_err_filename) CALL h5gopen_f(file_id, "Doesnotexist2", grp_id, tmp_error) CALL h5eprint_f(error, fix_err_filename) - - ! + + ! ! Close the file. ! CALL h5fclose_f(file_id, error) diff --git a/fortran/test/tH5F.f90 b/fortran/test/tH5F.f90 index af2d7d6..4b88cb3 100644 --- a/fortran/test/tH5F.f90 +++ b/fortran/test/tH5F.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,27 +11,27 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing File Interface functionality. ! -! In the mountingtest subroutine we create one file with a group in it, +! In the mountingtest subroutine we create one file with a group in it, ! and another file with a dataset. Mounting is used to -! access the dataset from the second file as a member of a group -! in the first file. +! access the dataset from the second file as a member of a group +! in the first file. ! SUBROUTINE mountingtest(cleanup, total_error) USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error ! !the respective filename is "mount1.h5" and "mount2.h5" ! - CHARACTER(LEN=6) :: filename1 + CHARACTER(LEN=6) :: filename1 CHARACTER(LEN=6) :: filename2 CHARACTER(LEN=80) :: fix_filename1 CHARACTER(LEN=80) :: fix_filename2 @@ -46,12 +46,12 @@ ! ! File identifiers ! - INTEGER(HID_T) :: file1_id, file2_id + INTEGER(HID_T) :: file1_id, file2_id ! ! Group identifier ! - INTEGER(HID_T) :: gid + INTEGER(HID_T) :: gid ! ! dataset identifier @@ -68,29 +68,29 @@ ! INTEGER(HID_T) :: dtype_id - ! + ! !The dimensions for the dataset. ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/NX,NY/) - + ! !return value for testing whether a file is in hdf5 format ! LOGICAL :: status ! - !flag to check operation success - ! + !flag to check operation success + ! INTEGER :: error ! - !general purpose integer - ! + !general purpose integer + ! INTEGER :: i, j ! - !data buffers - ! + !data buffers + ! INTEGER, DIMENSION(NX,NY) :: data_in, data_out INTEGER(HSIZE_T), DIMENSION(2) :: data_dims @@ -114,26 +114,26 @@ ! Fix names of the files ! CALL h5_fixname_f(filename1, fix_filename1, H5P_DEFAULT_F, error) - if(error .ne. 0) stop + if(error .ne. 0) stop CALL h5_fixname_f(filename2, fix_filename2, H5P_DEFAULT_F, error) - if(error .ne. 0) stop + if(error .ne. 0) stop ! !Create first file "mount1.h5" using default properties. - ! + ! CALL h5fcreate_f(fix_filename1, H5F_ACC_TRUNC_F, file1_id, error) CALL check("h5fcreate_f",error,total_error) - + ! !Create group "/G" inside file "mount1.h5". - ! + ! CALL h5gcreate_f(file1_id, "/G", gid, error) CALL check("h5gcreate_f",error,total_error) ! !close file and group identifiers. - ! + ! CALL h5gclose_f(gid, error) CALL check("h5gclose_f",error,total_error) CALL h5fclose_f(file1_id, error) @@ -141,19 +141,19 @@ ! !Create second file "mount2.h5" using default properties. - ! + ! CALL h5fcreate_f(fix_filename2, H5F_ACC_TRUNC_F, file2_id, error) CALL check("h5fcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(RANK, dims, dataspace, error) CALL check("h5screate_simple_f",error,total_error) ! !Create dataset "/D" inside file "mount2.h5". - ! + ! CALL h5dcreate_f(file2_id, "/D", H5T_NATIVE_INTEGER, dataspace, & dset_id, error) CALL check("h5dcreate_f",error,total_error) @@ -168,7 +168,7 @@ ! !close file, dataset and dataspace identifiers. - ! + ! CALL h5sclose_f(dataspace, error) CALL check("h5sclose_f",error,total_error) CALL h5dclose_f(dset_id, error) @@ -195,7 +195,7 @@ ! !reopen both files. - ! + ! CALL h5fopen_f (fix_filename1, H5F_ACC_RDWR_F, file1_id, error) CALL check("hfopen_f",error,total_error) CALL h5fopen_f (fix_filename2, H5F_ACC_RDWR_F, file2_id, error) @@ -203,44 +203,44 @@ ! !mount the second file under the first file's "/G" group. - ! + ! CALL h5fmount_f (file1_id, "/G", file2_id, error) CALL check("h5fmount_f",error,total_error) ! !Access dataset D in the first file under /G/D name. - ! + ! CALL h5dopen_f(file1_id, "/G/D", dset_id, error) CALL check("h5dopen_f",error,total_error) ! !Get dataset's data type. - ! + ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f",error,total_error) ! !Read the dataset. - ! + ! CALL h5dread_f(dset_id, dtype_id, data_out, data_dims, error) CALL check("h5dread_f",error,total_error) ! !Compare the data. - ! + ! do i = 1, NX do j = 1, NY - IF (data_out(i,j) .NE. data_in(i, j)) THEN + IF (data_out(i,j) .NE. data_in(i, j)) THEN write(*, *) "mounting test error occured" END IF - end do + end do end do ! !Close dset_id and dtype_id. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f",error,total_error) CALL h5tclose_f(dtype_id, error) @@ -248,13 +248,13 @@ ! !unmount the second file. - ! + ! CALL h5funmount_f(file1_id, "/G", error); CALL check("h5funmount_f",error,total_error) ! !Close both files. - ! + ! CALL h5fclose_f(file1_id, error) CALL check("h5fclose_f",error,total_error) CALL h5fclose_f(file2_id, error) @@ -269,27 +269,27 @@ ! ! The following subroutine tests h5freopen_f. -! It creates the file which has name "reopen.h5" and +! It creates the file which has name "reopen.h5" and ! the "/dset" dataset inside the file. ! writes the data to the file, close the dataset. -! Reopen the file based upon the file_id, open the -! dataset use the reopen_id then reads the +! Reopen the file based upon the file_id, open the +! dataset use the reopen_id then reads the ! dataset back to memory to test whether the data -! read is identical to the data written +! read is identical to the data written ! SUBROUTINE reopentest(cleanup, total_error) USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error - + INTEGER, INTENT(OUT) :: total_error + ! CHARACTER(LEN=6), PARAMETER :: filename = "reopen" - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename - INTEGER(HID_T) :: file_id, reopen_id ! File identifiers - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id, reopen_id ! File identifiers + INTEGER(HID_T) :: dset_id ! Dataset identifier ! !dataset name is "dset" @@ -308,30 +308,30 @@ ! INTEGER(HID_T) :: dataspace - ! + ! !The dimensions for the dataset. ! INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/NX,NY/) ! !flag to check operation success - ! + ! INTEGER :: error ! !general purpose integer - ! + ! INTEGER :: i, j ! - !array to store data + !array to store data ! INTEGER, DIMENSION(4,6) :: dset_data, data_out INTEGER(HSIZE_T), DIMENSION(2) :: data_dims INTEGER(HSIZE_T) :: file_size CHARACTER(LEN=80) :: file_name INTEGER(SIZE_T) :: name_size - + ! !initialize the dset_data array which will be written to the "/dset" ! @@ -344,13 +344,13 @@ ! !Initialize FORTRAN predifined datatypes ! -! CALL h5init_types_f(error) +! CALL h5init_types_f(error) ! CALL check("h5init_types_f",error,total_error) ! !Create file "reopen.h5" using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -360,14 +360,14 @@ CALL check("h5fcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(RANK, dims, dataspace, error) CALL check("h5screate_simple_f",error,total_error) ! !Create dataset "/dset" inside the file . - ! + ! CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dataspace, & dset_id, error) CALL check("h5dcreate_f",error,total_error) @@ -393,7 +393,7 @@ CALL check("h5sclose_f",error,total_error) ! - !Reopen file dsetf.h5. + !Reopen file dsetf.h5. ! CALL h5freopen_f(file_id, reopen_id, error) CALL check("h5freopen_f",error,total_error) @@ -404,7 +404,7 @@ CALL check("h5fget_filesize_f",error,total_error) ! - !Open the dataset based on the reopen_id. + !Open the dataset based on the reopen_id. ! CALL h5dopen_f(reopen_id, dsetname, dset_id, error) CALL check("h5dopen_f",error,total_error) @@ -415,7 +415,7 @@ CALL check("h5fget_name_f",error,total_error) IF(file_name(1:name_size) .NE. fix_filename(1:name_size)) THEN write(*,*) "file name obtained from the dataset id is incorrect" - END IF + END IF ! !Read the dataset. @@ -425,13 +425,13 @@ ! !Compare the data. - ! + ! do i = 1, NX do j = 1, NY - IF (data_out(i,j) .NE. dset_data(i, j)) THEN + IF (data_out(i,j) .NE. dset_data(i, j)) THEN write(*, *) "reopen test error occured" END IF - end do + end do end do @@ -448,7 +448,7 @@ CALL check("h5fclose_f",error,total_error) CALL h5fclose_f(reopen_id, error) CALL check("h5fclose_f",error,total_error) - + if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) @@ -462,13 +462,13 @@ ! We first create a file using the default creation and access property ! list. Then, the file was closed and reopened. We then get the ! creation and access property lists of the first file. The second file is -! created using the got property lists +! created using the got property lists SUBROUTINE plisttest(cleanup, total_error) USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error ! !file names are "plist1.h5" and "plist2.h5" @@ -482,12 +482,12 @@ INTEGER(HID_T) :: prop_id ! File creation property list identifier INTEGER(HID_T) :: access_id ! File Access property list identifier - !flag to check operation success + !flag to check operation success INTEGER :: error ! !Create a file1 using default properties. - ! + ! CALL h5_fixname_f(filename1, fix_filename1, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify file name" @@ -540,7 +540,7 @@ CALL check("h5pclose_f",error,total_error) CALL h5pclose_f(access_id, error) CALL check("h5pclose_f",error,total_error) - + ! !Terminate access to the files. ! @@ -557,8 +557,8 @@ RETURN END SUBROUTINE plisttest - - + + ! ! The following subroutine tests h5pget(set)_fclose_degree_f ! @@ -567,21 +567,21 @@ USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error INTEGER :: error - + ! CHARACTER(LEN=10), PARAMETER :: filename = "file_close" - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename - INTEGER(HID_T) :: fid, fid_d, fid1, fid2, fid3 ! File identifiers + INTEGER(HID_T) :: fid, fid_d, fid1, fid2, fid3 ! File identifiers INTEGER(HID_T) :: fapl, fapl1, fapl2, fapl3 ! File access identifiers INTEGER(HID_T) :: fid_d_fapl, fid1_fapl ! File access identifiers LOGICAL :: flag INTEGER(SIZE_T) :: obj_count, obj_countf INTEGER(HID_T), ALLOCATABLE, DIMENSION(:) :: obj_ids INTEGER :: i - + CALL h5eset_auto_f(0, error) CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) @@ -652,7 +652,7 @@ total_error = total_error + 1 write(*,*) "Wrong number of open objects reported, error" endif - allocate(obj_ids(obj_countf), stat = error) + allocate(obj_ids(obj_countf), stat = error) CALL h5fget_obj_ids_f(fid, H5F_OBJ_FILE_F, obj_countf, obj_ids, error) CALL check("h5fget_obj_ids_f",error,total_error) if(error .eq. 0) then @@ -661,22 +661,22 @@ CALL check("h5fclose_f",error,total_error) enddo endif - + CALL h5fclose_f(fid, error) if(error .eq. 0) then total_error = total_error + 1 write(*,*) "File should be closed at this point, error" - endif + endif CALL h5fclose_f(fid1, error) if(error .eq. 0) then total_error = total_error + 1 write(*,*) "File should be closed at this point, error" - endif + endif CALL h5fclose_f(fid_d, error) if(error .eq. 0) then total_error = total_error + 1 write(*,*) "File should be closed at this point, error" - endif + endif if(cleanup) then CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) @@ -685,7 +685,7 @@ deallocate(obj_ids) RETURN - END SUBROUTINE file_close + END SUBROUTINE file_close ! ! The following subroutine tests h5fget_freespace_f @@ -696,16 +696,16 @@ IMPLICIT NONE CHARACTER(*), INTENT(IN) :: filename LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error INTEGER :: error ! CHARACTER(LEN=3), PARAMETER :: grpname = "grp" - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename - INTEGER(HID_T) :: fid ! File identifiers + INTEGER(HID_T) :: fid ! File identifiers INTEGER(HSSIZE_T) :: free_space - INTEGER(HID_T) :: group_id ! Group identifier - + INTEGER(HID_T) :: group_id ! Group identifier + CALL h5eset_auto_f(0, error) CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) @@ -730,7 +730,7 @@ ! Close group CALL h5gclose_f(group_id, error) CALL check("h5gclose_f", error, total_error) - + ! Check the free space now CALL h5fget_freespace_f(fid, free_space, error) CALL check("h5fget_freespace_f",error,total_error) @@ -758,7 +758,7 @@ CALL check("h5_cleanup_f", error, total_error) RETURN - END SUBROUTINE file_space + END SUBROUTINE file_space diff --git a/fortran/test/tH5G.f90 b/fortran/test/tH5G.f90 index e0270a9..300e538 100644 --- a/fortran/test/tH5G.f90 +++ b/fortran/test/tH5G.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,46 +11,46 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE group_test(cleanup, total_error) -! This subroutine tests following functionalities: +! This subroutine tests following functionalities: ! h5gcreate_f, h5gopen_f, h5gclose_f, (?)h5gget_obj_info_idx_f, h5gn_members_f ! h5glink(2)_f, h5gunlink_f, h5gmove(2)_f, h5gget_linkval_f, h5gset_comment_f, -! h5gget_comment_f +! h5gget_comment_f + + USE HDF5 ! This module contains all necessary modules - USE HDF5 ! This module contains all necessary modules - IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=5), PARAMETER :: filename = "gtest" !File name CHARACTER(LEN=80) :: fix_filename - CHARACTER(LEN=33), PARAMETER :: comment = "Testing the group functionalities" + CHARACTER(LEN=33), PARAMETER :: comment = "Testing the group functionalities" ! comment for this file CHARACTER(LEN=7), PARAMETER :: groupname1 = "MyGroup" ! Group name - CHARACTER(LEN=16), PARAMETER :: groupname2 = "/MyGroup/Group_A" - CHARACTER(LEN=9), PARAMETER :: linkname1 = "hardlink1" - CHARACTER(LEN=9), PARAMETER :: linkname2 = "hardlink2" - CHARACTER(LEN=9), PARAMETER :: linkname3 = "softlink1" - CHARACTER(LEN=9), PARAMETER :: linkname4 = "softlink2" - CHARACTER(LEN=12), PARAMETER :: linkname5 = "newsoftlink2" + CHARACTER(LEN=16), PARAMETER :: groupname2 = "/MyGroup/Group_A" + CHARACTER(LEN=9), PARAMETER :: linkname1 = "hardlink1" + CHARACTER(LEN=9), PARAMETER :: linkname2 = "hardlink2" + CHARACTER(LEN=9), PARAMETER :: linkname3 = "softlink1" + CHARACTER(LEN=9), PARAMETER :: linkname4 = "softlink2" + CHARACTER(LEN=12), PARAMETER :: linkname5 = "newsoftlink2" CHARACTER(LEN=13), PARAMETER :: dsetname1 = "MyGroup/dset1" ! Dataset name CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: group1_id ! Group identifier - INTEGER(HID_T) :: group2_id ! Group identifier - INTEGER(HID_T) :: dset1_id ! Dataset identifier - INTEGER(HID_T) :: dset2_id ! Dataset identifier - INTEGER(HID_T) :: dsetnew_id ! Dataset identifier - INTEGER(HID_T) :: dspace_id ! Data space identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: group1_id ! Group identifier + INTEGER(HID_T) :: group2_id ! Group identifier + INTEGER(HID_T) :: dset1_id ! Dataset identifier + INTEGER(HID_T) :: dset2_id ! Dataset identifier + INTEGER(HID_T) :: dsetnew_id ! Dataset identifier + INTEGER(HID_T) :: dspace_id ! Data space identifier - INTEGER, DIMENSION(1) :: dset1_data = 34 ! Data value - INTEGER, DIMENSION(1) :: dset2_data = 98 ! Data value + INTEGER, DIMENSION(1) :: dset1_data = 34 ! Data value + INTEGER, DIMENSION(1) :: dset2_data = 98 ! Data value INTEGER(HSIZE_T), DIMENSION(1) :: dims = 1 ! Datasets dimensions INTEGER :: rank = 1 ! Datasets rank INTEGER :: error ! Error flag @@ -58,7 +58,7 @@ CHARACTER(LEN=100) :: name !name to put symbolic object CHARACTER(LEN=100) :: commentout !comment to the file INTEGER :: nmembers - INTEGER(HSIZE_T), DIMENSION(2) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! ! Create the file. ! @@ -75,19 +75,19 @@ ! CALL h5gcreate_f(file_id, groupname1, group1_id, error) CALL check("h5gcreate_f",error,total_error) - + ! ! Create a group named "/MyGroup/Group_A" in the file. ! CALL h5gcreate_f(file_id, groupname2, group2_id, error) CALL check("h5gcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) CALL check("h5screate_simple_f",error,total_error) ! - ! create dataset in the file. + ! create dataset in the file. ! CALL h5dcreate_f(file_id, dsetname1, H5T_NATIVE_INTEGER, dspace_id, & dset1_id, error) @@ -101,7 +101,7 @@ CALL check("h5dwrite_f",error,total_error) ! - ! create dataset2 in the Group_A. + ! create dataset2 in the Group_A. ! CALL h5dcreate_f(group2_id, dsetname2, H5T_NATIVE_INTEGER, dspace_id, & dset2_id, error) @@ -116,22 +116,22 @@ ! !Create a hard link to the group1 ! - CALL h5glink_f(file_id, H5G_LINK_HARD_F, groupname1, linkname1, error) + CALL h5glink_f(file_id, H5G_LINK_HARD_F, groupname1, linkname1, error) CALL check("h5glink_f",error,total_error) ! !Create a hard link to the group2 ! - CALL h5glink2_f(file_id, groupname2, H5G_LINK_HARD_F, file_id, linkname2, error) + CALL h5glink2_f(file_id, groupname2, H5G_LINK_HARD_F, file_id, linkname2, error) CALL check("h5glink2_f",error,total_error) ! !Create a soft link to dataset11 ! - CALL h5glink_f(file_id, H5G_LINK_SOFT_F, dsetname1, linkname3, error) + CALL h5glink_f(file_id, H5G_LINK_SOFT_F, dsetname1, linkname3, error) CALL check("h5glink_f",error,total_error) ! !Create a soft link to dataset2 ! - CALL h5glink_f(file_id, H5G_LINK_SOFT_F, dsetname2, linkname4, error) + CALL h5glink_f(file_id, H5G_LINK_SOFT_F, dsetname2, linkname4, error) CALL check("h5glink_f",error,total_error) ! !close group1 @@ -147,7 +147,7 @@ !get obj info of group1 ! ! CALL h5gget_obj_info_idx_f(file_id, linkname1, 2, name, obj_type, error) -! CALL check("h5gget_obj_info_idx_f", error, total_error) +! CALL check("h5gget_obj_info_idx_f", error, total_error) ! XXX: Fix problems with H5G_LINK_F! - QAK ! if (obj_type .ne. H5G_LINK_F) then ! write(*,*) "got object ", name, " type error ", obj_type @@ -202,7 +202,7 @@ !get the comment of dataset1 ! CALL h5gget_comment_f(file_id, dsetname1,namesize, commentout, error) - CALL check("h5gget_comment_f", error, total_error) + CALL check("h5gget_comment_f", error, total_error) if ( commentout(1:33) .ne. comment) then write(*,*) "got comment ", commentout, " is wrong" total_error = total_error +1 @@ -211,10 +211,10 @@ ! Move dataset1 to gourp2_id location ! CALL h5dclose_f(dset1_id, error) - CALL check("h5dclose_f", error, total_error) + CALL check("h5dclose_f", error, total_error) - CALL h5gmove2_f(file_id, dsetname1, group2_id, "dset1", error) - CALL check("h5gmove2_f", error, total_error) + CALL h5gmove2_f(file_id, dsetname1, group2_id, "dset1", error) + CALL check("h5gmove2_f", error, total_error) ! ! Open dataset from the new location ! @@ -224,17 +224,17 @@ !release all the resources ! CALL h5fclose_f(file_id, error) - CALL check("h5fclose_f", error, total_error) + CALL check("h5fclose_f", error, total_error) CALL h5gclose_f(group1_id, error) - CALL check("h5gclose_f", error, total_error) + CALL check("h5gclose_f", error, total_error) CALL h5gclose_f(group2_id, error) - CALL check("h5gclose_f", error, total_error) + CALL check("h5gclose_f", error, total_error) CALL h5dclose_f(dset2_id, error) - CALL check("h5dclose_f", error, total_error) + CALL check("h5dclose_f", error, total_error) CALL h5dclose_f(dsetnew_id, error) - CALL check("h5dclose_f", error, total_error) + CALL check("h5dclose_f", error, total_error) CALL h5sclose_f(dspace_id, error) - CALL check("h5sclose_f", error, total_error) + CALL check("h5sclose_f", error, total_error) if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) diff --git a/fortran/test/tH5G_1_8.f90 b/fortran/test/tH5G_1_8.f90 index 725e21b..6a2c623 100644 --- a/fortran/test/tH5G_1_8.f90 +++ b/fortran/test/tH5G_1_8.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,17 +11,17 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE group_test(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T) :: fapl, fapl2, my_fapl ! /* File access property lists */ - + INTEGER :: error, ret_total_error ! WRITE(*,*) "TESTING GROUPS" @@ -75,7 +75,7 @@ SUBROUTINE group_test(cleanup, total_error) CALL write_test_status(ret_total_error, & ' Testing deleting links by index', & total_error) - + ret_total_error = 0 CALL test_lcpl(cleanup, fapl, ret_total_error) CALL write_test_status(ret_total_error, & @@ -118,15 +118,15 @@ END SUBROUTINE group_test SUBROUTINE group_info(cleanup, fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl INTEGER(HID_T) :: gcpl_id ! /* Group creation property list ID */ - INTEGER :: max_compact ! /* Maximum # of links to store in group compactly */ + INTEGER :: max_compact ! /* Maximum # of links to store in group compactly */ INTEGER :: min_dense ! /* Minimum # of links to store in group "densely" */ INTEGER :: idx_type ! /* Type of index to operate on */ @@ -144,7 +144,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) ! H5G_STORAGE_TYPE_DENSE: Indexed storage ! H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure INTEGER :: nlinks ! Number of links in group - INTEGER :: max_corder ! Current maximum creation order value for group + INTEGER :: max_corder ! Current maximum creation order value for group INTEGER :: u,v ! /* Local index variables */ CHARACTER(LEN=2) :: chr2 @@ -352,7 +352,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) ! /* Close group created */ CALL H5Gclose_f(group_id2, error) CALL check("H5Gclose_f", error, total_error) - + ! /* Retrieve main group's information */ CALL H5Gget_info_f(group_id, storage_type, nlinks, max_corder, error) CALL check("H5Gget_info_f", error, total_error) @@ -361,11 +361,11 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL VERIFY("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error) CALL VERIFY("H5Gget_info_f", max_corder, u+1, total_error) CALL VERIFY("H5Gget_info_f", nlinks, u+1, total_error) - + ! /* Retrieve main group's information, by name */ CALL H5Gget_info_by_name_f(file_id, CORDER_GROUP_NAME, storage_type, nlinks, max_corder, error) CALL check("H5Gget_info_by_name_f", error, total_error) - + ! /* Check main group's information */ CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error) CALL VERIFY("H5Gget_info_by_name_f", max_corder, u+1, total_error) @@ -384,7 +384,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) valname = CORDER_GROUP_NAME//objname CALL H5Lcreate_soft_f(valname, soft_group_id, objname, error, H5P_DEFAULT_F, H5P_DEFAULT_F) - + ! /* Retrieve soft link group's information, by name */ CALL H5Gget_info_f(soft_group_id, storage_type, nlinks, max_corder, error) CALL check("H5Gget_info_f", error, total_error) @@ -401,7 +401,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL check("H5Gclose_f", error, total_error) CALL H5Gclose_f(soft_group_id, error) CALL check("H5Gclose_f", error, total_error) - + ! /* Close the file */ CALL H5Fclose_f(file_id, error) CALL check("H5Fclose_f", error, total_error) @@ -434,8 +434,8 @@ SUBROUTINE group_info(cleanup, fapl, total_error) SUBROUTINE timestamps(cleanup, fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl @@ -445,7 +445,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) INTEGER(HID_T) :: group_id2 !/* Group ID */ INTEGER(HID_T) :: gcpl_id !/* Group creation property list ID */ INTEGER(HID_T) :: gcpl_id2 !/* Group creation property list ID */ - + CHARACTER(LEN=6), PARAMETER :: prefix = 'links9' CHARACTER(LEN=9), PARAMETER :: filename = prefix//'.h5' ! /* File name */ ! /* Timestamp macros */ @@ -483,7 +483,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) ! /* Create file */ !h5_fixname(FILENAME[0], fapl, filename, sizeof filename); - + CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl) CALL check("h5fcreate_f",error,total_error) @@ -514,7 +514,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL H5Pget_obj_track_times_f(gcpl_id2, track_times, error) CALL check("H5Pget_obj_track_times_f", error, total_error) CALL VerifyLogical("H5Pget_obj_track_times2",track_times,.TRUE.,total_error) - + ! /* Query the object information for each group */ ! if(H5Oget_info(group_id, &oinfo) < 0) TEST_ERROR ! if(H5Oget_info(group_id2, &oinfo2) < 0) TEST_ERROR @@ -630,8 +630,8 @@ SUBROUTINE group_info(cleanup, fapl, total_error) SUBROUTINE mklinks(fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl @@ -642,7 +642,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) INTEGER :: arank = 1 ! Attribure rank INTEGER :: error - INTEGER :: cset ! Indicates the character set used for the link’s name. + INTEGER :: cset ! Indicates the character set used for the link’s name. INTEGER :: corder ! Specifies the link’s creation order position. LOGICAL :: f_corder_valid ! Indicates whether the value in corder is valid. INTEGER :: link_type ! Specifies the link class: @@ -663,7 +663,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL check("mklinks.h5screate_simple_f",error,total_error) !/* Create a group */ - CALL H5Gcreate_f(file, "grp1", grp, error) + CALL H5Gcreate_f(file, "grp1", grp, error) CALL check("H5Gcreate_f", error, total_error) CALL H5Gclose_f(grp, error) CALL check("h5gclose_f",error,total_error) @@ -677,7 +677,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) !/* Create a hard link */ CALL H5Lcreate_hard_f(file, "d1", INT(H5L_SAME_LOC_F,HID_T), "grp1/hard", error) CALL check("H5Lcreate_hard_f", error, total_error) - + !/* Create a symbolic link */ CALL H5Lcreate_soft_f("/d1", file, "grp1/soft",error) CALL check("H5Lcreate_soft_f", error, total_error) @@ -725,8 +725,8 @@ SUBROUTINE group_info(cleanup, fapl, total_error) SUBROUTINE test_move_preserves(fapl_id, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl_id @@ -749,7 +749,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) INTEGER :: crt_order_flags ! /* Status of creation order info for GCPL */ CHARACTER(LEN=12), PARAMETER :: filename = 'TestLinks.h5' - INTEGER :: cset ! Indicates the character set used for the link’s name. + INTEGER :: cset ! Indicates the character set used for the link’s name. INTEGER :: corder ! Specifies the link’s creation order position. LOGICAL :: f_corder_valid ! Indicates whether the value in corder is valid. INTEGER :: link_type ! Specifies the link class: @@ -774,17 +774,17 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL H5Pget_link_creation_order_f(fcpl_id, crt_order_flags, error) CALL check("H5Pget_link_creation_order_f",error, total_error) CALL VERIFY("H5Pget_link_creation_order_f",crt_order_flags,0, total_error) - + CALL H5Pset_link_creation_order_f(fcpl_id, H5P_CRT_ORDER_TRACKED_F, error) CALL check("H5Pset_link_creation_order_f", error, total_error) - + CALL H5Pget_link_creation_order_f(fcpl_id, crt_order_flags, error) CALL check("H5Pget_link_creation_order_f",error, total_error) CALL VERIFY("H5Pget_link_creation_order_f",crt_order_flags, H5P_CRT_ORDER_TRACKED_F, total_error) !/* Create file */ !/* (with creation order tracking for the root group) */ - + CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, file_id, error, fcpl_id, fapl_id) CALL check("h5fcreate_f",error,total_error) @@ -796,7 +796,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL check("H5Pset_char_encoding_f",error, total_error) !/* Create a group with that lcpl */ - CALL H5Gcreate_f(file_id, "group", group_id, error,lcpl_id=lcpl_id, gcpl_id=H5P_DEFAULT_F, gapl_id=H5P_DEFAULT_F) + CALL H5Gcreate_f(file_id, "group", group_id, error,lcpl_id=lcpl_id, gcpl_id=H5P_DEFAULT_F, gapl_id=H5P_DEFAULT_F) CALL check("H5Gcreate_f", error, total_error) CALL H5Gclose_f(group_id, error) CALL check("H5Gclose_f", error, total_error) @@ -825,7 +825,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) ! /* Close the file and reopen it */ CALL H5Fclose_f(file_id, error) CALL check("H5Fclose_f", error, total_error) - + !!$ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR !!$ !!$ /* Get the link's character set & modification time . They should be unchanged */ @@ -908,7 +908,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error) CALL check("H5Pclose_f", error, total_error) CALL H5Pclose_f(lcpl_id, error) CALL check("H5Pclose_f", error, total_error) - + ! if(H5Fclose(file_id) < 0) TEST_ERROR END SUBROUTINE test_move_preserves @@ -932,8 +932,8 @@ SUBROUTINE group_info(cleanup, fapl, total_error) SUBROUTINE lifecycle(cleanup, fapl2, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl2 @@ -985,7 +985,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error) ! /* Set up group creation property list */ CALL H5Pcreate_f(H5P_GROUP_CREATE_F,gcpl,error) CALL check("H5Pcreate_f",error,total_error) - + ! /* Query default group creation property settings */ CALL H5Pget_local_heap_size_hint_f(gcpl, lheap_size_hint, error) @@ -1002,7 +1002,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error) CALL check("H5Pget_est_link_info_f", error, total_error) CALL verify("H5Pget_est_link_info_f", est_num_entries, H5G_CRT_GINFO_EST_NUM_ENTRIES,total_error) CALL verify("H5Pget_est_link_info_f", est_name_len, H5G_CRT_GINFO_EST_NAME_LEN,total_error) - + !/* Set GCPL parameters */ @@ -1044,7 +1044,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error) CALL H5Ldelete_f(fid, LIFECYCLE_TOP_GROUP, error) CALL check("H5Ldelete_f", error, total_error) - + ! /* Close GCPL */ CALL H5Pclose_f(gcpl, error) CALL check("H5Pclose_f", error, total_error) @@ -1079,8 +1079,8 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error) SUBROUTINE cklinks(fapl, total_error) ! USE ISO_C_BINDING - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl @@ -1116,7 +1116,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error) !!$ TEST_ERROR !!$ } /* end if */ - + CALL H5Lexists_f(file,"d1",Lexists, error) CALL verifylogical("test_lcpl.H5Lexists", Lexists,.TRUE.,total_error) @@ -1148,8 +1148,8 @@ END SUBROUTINE cklinks ! */ SUBROUTINE delete_by_idx(cleanup, fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl @@ -1159,19 +1159,19 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error) INTEGER(HID_T) :: gcpl_id ! /* Group creation property list ID */ INTEGER :: idx_type ! /* Type of index to operate on */ - LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) + LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) ! /* Use index on creation order values */ - INTEGER :: max_compact ! /* Maximum # of links to store in group compactly */ + INTEGER :: max_compact ! /* Maximum # of links to store in group compactly */ INTEGER :: min_dense ! /* Minimum # of links to store in group "densely" */ CHARACTER(LEN=7) :: objname ! /* Object name */ CHARACTER(LEN=8) :: filename = 'file0.h5' ! /* File name */ CHARACTER(LEN=12), PARAMETER :: CORDER_GROUP_NAME = "corder_group" - LOGICAL :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name - INTEGER(SIZE_T) :: val_size + INTEGER(SIZE_T) :: val_size INTEGER :: link_type INTEGER(HADDR_T) :: address @@ -1237,7 +1237,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error) ! /* Create file */ CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, access_prp=fapl) CALL check("delete_by_idx.H5Fcreate_f", error, total_error) - + ! /* Create group creation property list */ CALL H5Pcreate_f(H5P_GROUP_CREATE_F, gcpl_id, error ) CALL check("delete_by_idx.H5Pcreate_f", error, total_error) @@ -1287,7 +1287,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error) ! IF(H5G_has_links_test(group_id, NULL) != TRUE) TEST_ERROR ! /* Check for out of bound deletion */ - htmp =9 + htmp =9 !EP CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(u,HSIZE_T), error) CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, htmp, error) CALL VERIFY("H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1) @@ -1312,7 +1312,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error) CALL check("H5Iget_type_f", error, total_error) CALL VERIFY("H5Iget_type_f", id_type, H5I_GROUP_F, total_error) - + CALL H5Gclose_f(grp, error) CALL check("H5Gclose_f", error, total_error) @@ -1389,8 +1389,8 @@ END SUBROUTINE delete_by_idx SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & hard_link, use_index, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(INOUT) :: total_error INTEGER(HID_T), INTENT(IN) :: group_id @@ -1399,7 +1399,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & LOGICAL, INTENT(IN) :: hard_link LOGICAL, INTENT(IN) :: use_index - LOGICAL :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute + LOGICAL :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute INTEGER :: corder ! Is a positive integer containing the creation order of the attribute INTEGER :: cset ! Indicates the character set used for the attribute’s name INTEGER :: link_type @@ -1437,7 +1437,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & ! /* Verify value for new soft link, in increasing creation order */ !!$ IF(hard_link)THEN !!$ ! HDmemset(tmpval, 0, (size_t)NAME_BUF_SIZE); -!!$ +!!$ !!$ CALL H5Lget_val_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, n, tmpval, INT(7,SIZE_T),error) !!$ CALL check("H5Lget_val_by_idx",error,total_error) !!$ @@ -1493,21 +1493,21 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & SUBROUTINE test_lcpl(cleanup, fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(INOUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl LOGICAL :: cleanup - + INTEGER(HID_T) :: file_id INTEGER(HID_T) :: group_id INTEGER(HID_T) :: space_id, data_space INTEGER(HID_T) :: dset_id INTEGER(HID_T) :: type_id INTEGER(HID_T) :: lcpl_id - - INTEGER :: cset ! Indicates the character set used for the link’s name. + + INTEGER :: cset ! Indicates the character set used for the link’s name. INTEGER :: corder ! Specifies the link’s creation order position. LOGICAL :: f_corder_valid ! Indicates whether the value in corder is valid. INTEGER :: link_type ! Specifies the link class: @@ -1534,25 +1534,25 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & ! WRITE(*,*) "link creation property lists (w/new group format)" - + !/* Actually, intermediate group creation is tested elsewhere (tmisc). ! * Here we only need to test the character encoding property */ !/* Create file */ ! h5_fixname(FILENAME[0], fapl, filename, sizeof filename); - + CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl) CALL check("test_lcpl.H5Fcreate_f", error, total_error) ! /* Create and link a group with the default LCPL */ - + CALL H5Gcreate_f(file_id, "/group", group_id, error) CALL check("test_lcpl.H5Gcreate_f", error, total_error) - + ! /* Check that its character encoding is the default */ - + CALL H5Lget_info_f(file_id, "group", & cset, corder, f_corder_valid, link_type, address, val_size, & error, H5P_DEFAULT_F) @@ -1570,7 +1570,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & CALL check("test_lcpl.h5tcommit_f", error, total_error) CALL h5tclose_f(type_id, error) CALL check("test_lcpl.h5tclose_f", error, total_error) - + ! /* Check that its character encoding is the default */ CALL H5Lget_info_f(file_id, "type", & @@ -1613,7 +1613,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & CALL h5sget_simple_extent_dims_f(data_space, dimsout, maxdimsout, error) CALL check("test_lcpl.h5sget_simple_extent_dims_f",error, total_error) - + DO i = 1, 2 tmp1 = dimsout(i) tmp2 = extend_dim(i) @@ -1628,7 +1628,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & ! /* close data set */ CALL h5dclose_f(dset_id, error) - CALL check("test_lcpl.h5dclose_f", error, total_error) + CALL check("test_lcpl.h5dclose_f", error, total_error) ! /* Check that its character encoding is the default */ CALL H5Lget_info_f(file_id, "dataset", & @@ -1689,7 +1689,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & CALL H5Pget_char_encoding_f(lcpl_id, encoding, error) CALL check("test_lcpl.H5Pget_char_encoding_f", error, total_error) - CALL VERIFY("test_lcpl.H5Pget_char_encoding_f", encoding, H5T_CSET_UTF8_F, total_error) + CALL VERIFY("test_lcpl.H5Pget_char_encoding_f", encoding, H5T_CSET_UTF8_F, total_error) ! /* Check that its character encoding is UTF-8 */ CALL H5Lget_info_f(file_id, "dataset2", & @@ -1718,7 +1718,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & cset, corder, f_corder_valid, link_type, address, val_size, & error) CALL check("test_lcpl.H5Lget_info_f", error, total_error) - CALL verify("test_lcpl.H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error) + CALL verify("test_lcpl.H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error) ! /* Check that the first link's encoding hasn't changed */ @@ -1731,7 +1731,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & !/* Make sure that LCPLs work properly for other API calls: */ !/* H5Lcreate_soft */ - + CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error) CALL check("test_lcpl.H5Pset_char_encoding_f",error, total_error) CALL H5Lcreate_soft_f("dataset2", file_id, "slink_to_dset2",error,lcpl_id) @@ -1759,12 +1759,12 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, & ! /* H5Lcopy */ - + CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error) CALL check("test_lcpl.H5Pset_char_encoding_f",error, total_error) CALL H5Lcopy_f(file_id, "moved_slink", file_id, "copied_slink", error, lcpl_id) - + CALL H5Lget_info_f(file_id, "copied_slink", & cset, corder, f_corder_valid, link_type, address, val_size, & error) @@ -1801,8 +1801,8 @@ END SUBROUTINE test_lcpl SUBROUTINE objcopy(fapl, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(INOUT) :: total_error INTEGER(HID_T), INTENT(IN) :: fapl @@ -1821,13 +1821,13 @@ SUBROUTINE objcopy(fapl, total_error) !/* Set the "use the latest version of the format" bounds for creating objects in the file */ CALL H5Pset_libver_bounds_f(fapl2, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error) - + ! /* create property to pass copy options */ CALL h5pcreate_f(H5P_OBJECT_COPY_F, pid, error) CALL check("h5pcreate_f",error, total_error) ! /* set options for object copy */ - CALL H5Pset_copy_object_f(pid, flag, error) + CALL H5Pset_copy_object_f(pid, flag, error) CALL check("H5Pset_copy_object_f",error, total_error) ! /* Verify object copy flags */ @@ -1836,7 +1836,7 @@ SUBROUTINE objcopy(fapl, total_error) CALL VERIFY("H5Pget_copy_object_f", cpy_flags, flag, total_error) !!$ -!!$ CALL test_copy_option(fcpl_src, fcpl_dst, my_fapl, H5O_COPY_WITHOUT_ATTR_FLAG, +!!$ CALL test_copy_option(fcpl_src, fcpl_dst, my_fapl, H5O_COPY_WITHOUT_ATTR_FLAG, !!$ FALSE, "H5Ocopy(): without attributes"); CALL lapl_nlinks(fapl2, total_error) @@ -1865,7 +1865,7 @@ END SUBROUTINE objcopy SUBROUTINE lapl_nlinks( fapl, total_error) USE HDF5 - + IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: fapl INTEGER, INTENT(INOUT) :: total_error @@ -1877,13 +1877,13 @@ SUBROUTINE lapl_nlinks( fapl, total_error) INTEGER(HID_T) :: plist = (-1) ! /* lapl ID */ INTEGER(HID_T) :: tid = (-1) ! /* Other IDs */ INTEGER(HID_T) :: gapl = (-1), dapl = (-1), tapl = (-1) ! /* Other property lists */ - + CHARACTER(LEN=7) :: objname ! /* Object name */ INTEGER(size_t) :: name_len ! /* Length of object name */ CHARACTER(LEN=12) :: filename = 'TestLinks.h5' INTEGER(size_t) :: nlinks ! /* nlinks for H5Pset_nlinks */ INTEGER(size_t) :: buf_size = 7 - + ! WRITE(*,*) "adjusting nlinks with LAPL (w/new group format)" @@ -1892,9 +1892,9 @@ SUBROUTINE lapl_nlinks( fapl, total_error) CALL check(" lapl_nlinks.h5fcreate_f",error,total_error) ! /* Create group with short name in file (used as target for links) */ - CALL H5Gcreate_f(fid, "final", gid, error) + CALL H5Gcreate_f(fid, "final", gid, error) CALL check(" lapl_nlinks.H5Gcreate_f", error, total_error) - + !/* Create chain of soft links to existing object (limited) */ CALL H5Lcreate_soft_f("final", fid, "soft1", error) CALL H5Lcreate_soft_f("soft1", fid, "soft2", error) @@ -1921,13 +1921,13 @@ SUBROUTINE lapl_nlinks( fapl, total_error) CALL check("h5fclose_f",error,total_error) !/* Open file */ - + CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error, fapl) CALL check("h5open_f",error,total_error) - + !/* Create LAPL with higher-than-usual nlinks value */ !/* Create a non-default lapl with udata set to point to the first group */ - + CALL H5Pcreate_f(H5P_LINK_ACCESS_F,plist,error) CALL check("h5Pcreate_f",error,total_error) nlinks = 20 @@ -1942,7 +1942,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error) !/* Open object through what is normally too many soft links using ! * new property list */ - + CALL H5Oopen_f(fid,"soft17",gid,error,plist) CALL check("H5Oopen_f",error,total_error) @@ -1954,9 +1954,9 @@ SUBROUTINE lapl_nlinks( fapl, total_error) CALL H5Gcreate_f(gid, "new_soft", gid2, error) CALL check("H5Gcreate_f", error, total_error) - ! /* Close groups */ + ! /* Close groups */ CALL H5Gclose_f(gid2, error) - CALL check("H5Gclose_f", error, total_error) + CALL check("H5Gclose_f", error, total_error) CALL H5Gclose_f(gid, error) CALL check("H5Gclose_f", error, total_error) @@ -1974,7 +1974,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error) CALL VERIFY("H5Pget_nlinks_f", INT(nlinks), 4, total_error) ! /* Try opening through what is now too many soft links */ - + CALL H5Oopen_f(fid,"soft5",gid,error,plist) CALL VERIFY("H5Oopen_f", error, -1, total_error) ! should fail @@ -2064,11 +2064,11 @@ SUBROUTINE lapl_nlinks( fapl, total_error) !!$ } H5E_END_TRY !!$ ! /* Create property lists with nlinks set */ - + CALL H5Pcreate_f(H5P_GROUP_ACCESS_F,gapl,error) - CALL check("h5Pcreate_f",error,total_error) + CALL check("h5Pcreate_f",error,total_error) CALL H5Pcreate_f(H5P_DATATYPE_ACCESS_F,tapl,error) - CALL check("h5Pcreate_f",error,total_error) + CALL check("h5Pcreate_f",error,total_error) CALL H5Pcreate_f(H5P_DATASET_ACCESS_F,dapl,error) CALL check("h5Pcreate_f",error,total_error) @@ -2090,11 +2090,11 @@ SUBROUTINE lapl_nlinks( fapl, total_error) CALL H5Topen_f(fid, "soft17/datatype", tid, error, tapl) CALL check("H5Gopen_f",error,total_error) - + !!$ if((did = H5Dopen2(fid, "soft17/dataset", dapl)) < 0) TEST_ERROR ! /* Close objects */ - + CALL h5gclose_f(gid, error) CALL check("h5gclose_f",error,total_error) CALL h5tclose_f(tid, error) @@ -2103,7 +2103,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error) !!$ if(H5Dclose(did) < 0) TEST_ERROR !!$ ! /* Close plists */ - + CALL h5pclose_f(gapl, error) CALL check("h5pclose_f", error, total_error) CALL h5pclose_f(tapl, error) diff --git a/fortran/test/tH5I.f90 b/fortran/test/tH5I.f90 index c34bd09..0d1a8c5 100644 --- a/fortran/test/tH5I.f90 +++ b/fortran/test/tH5I.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,38 +11,38 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE identifier_test(cleanup, total_error) ! This subroutine tests following functionalities: h5iget_type_f - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=6), PARAMETER :: filename = "itestf" ! File name CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=10), PARAMETER :: dsetname = "/itestdset" ! Dataset name CHARACTER(LEN=10), PARAMETER :: groupname = "itestgroup"! group name CHARACTER(LEN=10), PARAMETER :: aname = "itestattr"! group name - - + + INTEGER(HID_T) :: file_id ! File identifier INTEGER(HID_T) :: new_file_id ! File identifier - INTEGER(HID_T) :: group_id ! group identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: group_id ! group identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: attr_id ! Datatype attribute identifier INTEGER(HID_T) :: aspace_id ! attribute data space identifier INTEGER(HID_T) :: atype_id ! attribute data type identifier - INTEGER, DIMENSION(1) :: dset_data = 0 ! Data value - + INTEGER, DIMENSION(1) :: dset_data = 0 ! Data value + INTEGER(HSIZE_T), DIMENSION(1) :: dims = 1 ! Datasets dimensions INTEGER(HSIZE_T), DIMENSION(1) :: adims = 1 ! Attribute dimensions @@ -69,24 +69,24 @@ ! check that the ID is not valid dtype = -1 CALL H5Iis_valid_f(dtype, tri_ret, error) - CALL check("H5Iis_valid_f", error, total_error) + CALL check("H5Iis_valid_f", error, total_error) CALL VerifyLogical("H5Iis_valid_f", tri_ret, .FALSE., total_error) - + ! Create a datatype id CALL H5Tcopy_f(H5T_NATIVE_INTEGER,dtype,error) - CALL check("H5Tcopy_f", error, total_error) - + CALL check("H5Tcopy_f", error, total_error) + ! Check that the ID is valid CALL H5Iis_valid_f(dtype, tri_ret, error) - CALL check("H5Iis_valid_f", error, total_error) + CALL check("H5Iis_valid_f", error, total_error) CALL VerifyLogical("H5Tequal_f", tri_ret, .TRUE., total_error) - + CALL H5Tclose_f(dtype, error) - CALL check("H5Tclose_f", error, total_error) - + CALL check("H5Tclose_f", error, total_error) + ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -94,7 +94,7 @@ endif CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) CALL check("h5fcreate_f",error,total_error) - + ! ! Create a group named "/MyGroup" in the file. ! @@ -102,20 +102,20 @@ CALL check("h5gcreate_f",error,total_error) ! - !Create data space for the dataset. + !Create data space for the dataset. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) CALL check("h5screate_simple_f",error,total_error) ! - ! create dataset in the file. + ! create dataset in the file. ! CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dspace_id, & dset_id, error) CALL check("h5dcreate_f",error,total_error) ! ! Get dataset name from dataset identifier - ! + ! buf_size = 80 CALL h5iget_name_f(dset_id, name_buf, buf_size, name_size, error) CALL check("h5iget_name_f",error,total_error) @@ -128,8 +128,8 @@ total_error = total_error + 1 endif endif - - ! + + ! ! Get file identifier from dataset identifier and then get file name ! CALL h5iget_file_id_f(dset_id, new_file_id, error) @@ -150,7 +150,7 @@ CALL check("h5dwrite_f",error,total_error) ! - ! Create scalar data space for dataset attribute. + ! Create scalar data space for dataset attribute. ! CALL h5screate_simple_f(arank, adims, aspace_id, error) CALL check("h5screate_simple_f",error,total_error) @@ -215,37 +215,37 @@ CALL check("h5iget_type_f",error,total_error) CALL verify("get attribute identifier wrong",type,H5I_ATTR_F,total_error) - ! + ! ! Close the attribute. - ! + ! CALL h5aclose_f(attr_id, error) CALL check("h5aclose_f",error,total_error) - ! + ! ! Close the dataspace. - ! + ! CALL h5sclose_f(aspace_id, error) CALL check("h5sclose_f",error,total_error) CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f",error,total_error) - ! + ! ! Close the dataype. - ! + ! CALL h5tclose_f(atype_id, error) CALL check("h5tclose_f",error,total_error) - ! + ! ! Close the dataset. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f",error,total_error) - ! + ! ! Close the group. - ! + ! CALL h5gclose_f(group_id, error) CALL check("h5gclose_f",error,total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -260,7 +260,7 @@ ! Create a file CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) CALL check("h5fcreate_f",error,total_error) - + ! Get the reference count for the file ID CALL h5iget_ref_f(file_id, ref_count, error) CALL check("h5iget_ref_f",error,total_error) diff --git a/fortran/test/tH5O.f90 b/fortran/test/tH5O.f90 index 0aa4abd..253a42a 100644 --- a/fortran/test/tH5O.f90 +++ b/fortran/test/tH5O.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,11 +11,11 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE test_h5o(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error @@ -35,7 +35,7 @@ SUBROUTINE test_h5o(cleanup, total_error) CALL check("h5_cleanup_f", error, total_error) IF(cleanup) CALL h5_cleanup_f("test", H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + END SUBROUTINE test_h5o !/**************************************************************** @@ -46,8 +46,8 @@ END SUBROUTINE test_h5o SUBROUTINE test_h5o_link(total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error @@ -79,7 +79,7 @@ SUBROUTINE test_h5o_link(total_error) wdata(i,j) = i*j ENDDO ENDDO - + ! /* Create the dataspace */ CALL h5screate_simple_f(2, dims, space_id, error) CALL check("h5screate_simple_f",error,total_error) @@ -97,14 +97,14 @@ SUBROUTINE test_h5o_link(total_error) !/* Make a FAPL that uses the "use the latest version of the format" bounds */ CALL H5Pcreate_f(H5P_FILE_ACCESS_F,fapl_id,error) CALL check("h5Pcreate_f",error,total_error) - + ! /* Set the "use the latest version of the format" bounds for creating objects in the file */ - + CALL H5Pset_libver_bounds_f(fapl_id, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error) CALL check("H5Pset_libver_bounds_f",error, total_error) - + !!$ ret = H5Pset_libver_bounds(fapl_id, (new_format ? H5F_LIBVER_LATEST : H5F_LIBVER_EARLIEST), H5F_LIBVER_LATEST); - + ! /* Create a new HDF5 file */ CALL H5Fcreate_f(TEST_FILENAME, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl_id) CALL check("H5Fcreate_f", error, total_error) @@ -112,11 +112,11 @@ SUBROUTINE test_h5o_link(total_error) ! /* Close the FAPL */ CALL h5pclose_f(fapl_id, error) CALL check("h5pclose_f",error,total_error) - + ! /* Create and commit a datatype with no name */ CALL H5Tcopy_f( H5T_NATIVE_INTEGER, type_id, error) CALL check("H5Tcopy_F",error,total_error) - + CALL H5Tcommit_anon_f(file_id, type_id, error) ! using no optional parameters CALL check("H5Tcommit_anon_F",error,total_error) @@ -130,7 +130,7 @@ SUBROUTINE test_h5o_link(total_error) ! /* Verify that we can write to and read from the dataset */ - + ! /* Write the data to the dataset */ !EP CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, wdata, dims, error, & @@ -143,7 +143,7 @@ SUBROUTINE test_h5o_link(total_error) !EP mem_space_id=H5S_ALL_F, file_space_id=H5S_ALL_F, xfer_prp = H5P_DEFAULT_F) CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, rdata, dims, error) CALL check("h5dread_f", error, total_error) - + ! /* Verify the data */ DO i = 1, TEST6_DIM1 DO j = 1, TEST6_DIM2 @@ -175,17 +175,17 @@ SUBROUTINE test_h5o_link(total_error) ! /* Re-open datatype using new link */ CALL H5Topen_f(group_id, "datatype", type_id, error) CALL check("h5topen_f", error, total_error) - + ! /* Link nameless group to root group and close the group ID*/ CALL H5Olink_f(group_id, file_id, "/group", error) CALL check("H5Olink_f", error, total_error) - + CALL h5gclose_f(group_id, error) CALL check("h5gclose_f",error,total_error) ! /* Open dataset through root group and verify its data */ - + CALL H5Dopen_f(file_id, "/group/inter_group/dataset", dset_id, error) CALL check("test_lcpl.h5dopen_f", error, total_error) @@ -227,8 +227,8 @@ END SUBROUTINE test_h5o_link SUBROUTINE test_h5o_plist(total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE INTEGER, INTENT(OUT) :: total_error @@ -240,7 +240,7 @@ SUBROUTINE test_h5o_plist(total_error) INTEGER :: max_compact, min_dense !/* Actual phase change parameters */ INTEGER :: error !/* Value returned from API calls */ CHARACTER(LEN=7), PARAMETER :: TEST_FILENAME = 'test.h5' - + ! PRINT*,'Testing object creation properties' @@ -275,7 +275,7 @@ SUBROUTINE test_h5o_plist(total_error) CALL check("H5Pget_attr_phase_change_f", error, total_error) CALL H5Pset_attr_phase_change_f(tcpl, def_max_compact+1, def_min_dense-1, error) CALL check("H5Pget_attr_phase_change_f", error, total_error) - + ! /* Retrieve attribute phase change values on each creation property list and verify */ CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error) CALL check("H5Pget_attr_phase_change_f", error, total_error) @@ -307,7 +307,7 @@ SUBROUTINE test_h5o_plist(total_error) ! /* Commit the type inside the group anonymously and link it in */ CALL h5tcopy_f(H5T_NATIVE_INTEGER, dtype, error) CALL check("h5tcopy_f", error, total_error) - + CALL H5Tcommit_anon_f(fid, dtype, error, tcpl_id=tcpl) CALL check("H5Tcommit_anon_f",error,total_error) @@ -321,7 +321,7 @@ SUBROUTINE test_h5o_plist(total_error) ! /* Create the dataset anonymously and link it in */ CALL H5Dcreate_anon_f(fid, H5T_NATIVE_INTEGER, dspace, dset, error, dcpl ) CALL check("H5Dcreate_anon_f",error,total_error) - + CALL H5Olink_f(dset, fid, "dataset", error) CALL check("H5Olink_f", error, total_error) @@ -338,7 +338,7 @@ SUBROUTINE test_h5o_plist(total_error) CALL check("h5pclose_f", error, total_error) ! /* Retrieve each object's creation property list */ - + CALL H5Gget_create_plist_f(grp, gcpl, error) CALL check("H5Gget_create_plist", error, total_error) @@ -367,7 +367,7 @@ SUBROUTINE test_h5o_plist(total_error) !/* Close current objects */ - + CALL h5pclose_f(gcpl,error) CALL check("h5pclose_f", error, total_error) CALL h5pclose_f(dcpl,error) @@ -427,7 +427,7 @@ SUBROUTINE test_h5o_plist(total_error) ! /* Close current objects */ - + CALL h5pclose_f(gcpl,error) CALL check("h5pclose_f", error, total_error) CALL h5pclose_f(dcpl,error) diff --git a/fortran/test/tH5P.f90 b/fortran/test/tH5P.f90 index 3063842..6a49f72 100644 --- a/fortran/test/tH5P.f90 +++ b/fortran/test/tH5P.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,25 +11,25 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE external_test(cleanup, total_error) -! This subroutine tests following functionalities: +! This subroutine tests following functionalities: ! h5pset_external_f, h5pget_external_count_f, ! h5pget_external_f - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=8), PARAMETER :: filename = "external" CHARACTER(LEN=80) :: fix_filename - INTEGER(HID_T) :: file_id - INTEGER(HID_T) :: plist_id - INTEGER(HID_T) :: space_id + INTEGER(HID_T) :: file_id + INTEGER(HID_T) :: plist_id + INTEGER(HID_T) :: space_id INTEGER(HID_T) :: dataset_id INTEGER(HSIZE_T), DIMENSION(1) :: cur_size !data space current size INTEGER(HSIZE_T), DIMENSION(1) :: max_size !data space maximum size @@ -38,7 +38,7 @@ INTEGER(HSIZE_T) :: file_size !sizeof external file segment INTEGER :: error !error code INTEGER(SIZE_T) :: int_size !size of integer - INTEGER(HSIZE_T) :: file_bytes !Number of bytes reserved + INTEGER(HSIZE_T) :: file_bytes !Number of bytes reserved !in the file for the data INTEGER :: RANK = 1 !dataset rank INTEGER :: count !number of external files for the @@ -51,7 +51,7 @@ ! !Create file "external.h5" using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -80,7 +80,7 @@ max_size(1) = 100; call h5tget_size_f(H5T_NATIVE_INTEGER, int_size, error) CALL check("h5tget_size_f",error,total_error) - file_size = int_size * max_size(1); + file_size = int_size * max_size(1); CALL h5pset_external_f(plist_id, "ext1.data", 0, file_size, error) CALL check("h5pset_external_f",error,total_error) CALL h5screate_simple_f(RANK, cur_size, space_id, error, max_size) @@ -88,7 +88,7 @@ CALL h5dcreate_f(file_id, "dset1", H5T_NATIVE_INTEGER, space_id, & dataset_id, error, plist_id) CALL check("h5dcreate_f", error, total_error) - + CALL h5dclose_f(dataset_id, error) CALL check("h5dclose_f", error, total_error) CALL h5pclose_f(plist_id, error) @@ -100,8 +100,8 @@ CALL h5fopen_f(fix_filename, H5F_ACC_RDWR_F, file_id, error) CALL h5dopen_f(file_id, "dset1", dataset_id, error) CALL check("h5dopen_f",error,total_error) - - ! Read dataset creation information + + ! Read dataset creation information CALL h5dget_create_plist_f(dataset_id, plist_id, error) CALL check("h5dget_create_plist_f",error,total_error) CALL h5pget_external_count_f(plist_id, count, error) @@ -123,7 +123,7 @@ write (*,*) "got external file size is not correct" total_error = total_error + 1 end if - + CALL h5dclose_f(dataset_id, error) CALL check("h5dclose_f", error, total_error) CALL h5pclose_f(plist_id, error) @@ -136,27 +136,27 @@ CALL check("h5_cleanup_f", error, total_error) RETURN END SUBROUTINE external_test - + SUBROUTINE multi_file_test(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=9), PARAMETER :: filename = "multidset" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: dtype_id ! Datatype identifier INTEGER(HID_T) :: fapl, fapl_1 ! File access property list identifier INTEGER, DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: memb_map, memb_map_out INTEGER(HID_T), DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: memb_fapl, memb_fapl_out CHARACTER(LEN=20), DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: memb_name, memb_name_out - REAL, DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: memb_addr, memb_addr_out + REAL, DIMENSION(0:H5FD_MEM_NTYPES_F-1) :: memb_addr, memb_addr_out !INTEGER(HADDR_T), DIMENSION(0:H5FD_MEM_NTYPES_F) :: memb_addr LOGICAL :: relax = .TRUE. LOGICAL :: relax_out = .TRUE. @@ -208,7 +208,7 @@ ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -227,19 +227,19 @@ write(*,*) "Wrong value for driver" endif ! - ! Let's check h5pget(set)cache_f APIs here for now + ! Let's check h5pget(set)cache_f APIs here for now ! CALL h5pget_cache_f(fapl, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, & rdcc_w0, error) CALL check("h5pget_cache_f", error, total_error) - + ! Set cache to some number ! rdcc_nbytes = 1024*1024 CALL h5pset_cache_f(fapl, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, & rdcc_w0, error) CALL check("h5pset_cache_f", error, total_error) - + CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error, access_prp = fapl) CALL check("h5fcreate_f", error, total_error) if(error .ne. 0) then @@ -247,10 +247,10 @@ total_error = 1 call h5pclose_f(fapl, error) return - endif + endif - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -268,14 +268,14 @@ ! Write the dataset. ! data_dims(1) = 4 - data_dims(2) = 6 + data_dims(2) = 6 CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error) CALL check("h5dwrite_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -285,14 +285,14 @@ CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) CALL h5pclose_f(fapl, error) CALL check("h5pclose_f", error, total_error) - ! + ! ! Open the existing file. ! CALL h5pcreate_f(H5P_FILE_ACCESS_F, fapl, error) @@ -314,19 +314,19 @@ ! CALL check("h5pget_fapl_multi_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) ! - ! Get the dataset type. + ! Get the dataset type. ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f", error, total_error) ! - ! Get the data space. + ! Get the data space. ! CALL h5dget_space_f(dset_id, dspace_id, error) CALL check("h5dget_space_f", error, total_error) @@ -339,19 +339,19 @@ ! !Compare the data. - ! + ! do i = 1, 4 do j = 1, 6 - IF (data_out(i,j) .NE. dset_data(i, j)) THEN + IF (data_out(i,j) .NE. dset_data(i, j)) THEN write(*, *) "dataset test error occured" write(*,*) "data read is not the same as the data writen" END IF - end do + end do end do - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -366,7 +366,7 @@ ! CALL h5tclose_f(dtype_id, error) CALL check("h5tclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -377,7 +377,7 @@ CALL check("h5pclose_f", error, total_error) IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + IF(cleanup) CALL h5_cleanup_f(filename//'.h5-b', H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) IF(cleanup) CALL h5_cleanup_f(filename//'.h5-g', H5P_DEFAULT_F, error) @@ -390,7 +390,7 @@ CALL check("h5_cleanup_f", error, total_error) IF(cleanup) CALL h5_cleanup_f(filename//'.h5-s', H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + RETURN END SUBROUTINE multi_file_test @@ -412,14 +412,14 @@ ! April 16, 2009 !------------------------------------------------------------------------- ! -SUBROUTINE test_chunk_cache(cleanup, total_error) +SUBROUTINE test_chunk_cache(cleanup, total_error) + + USE HDF5 ! This module contains all necessary modules - USE HDF5 ! This module contains all necessary modules - IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error - + CHARACTER(LEN=14), PARAMETER :: filename="chunk_cache" CHARACTER(LEN=80) :: fix_filename INTEGER(hid_t) :: fid = -1 ! /* File ID */ @@ -457,7 +457,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) ! Verify that H5Pget_chunk_cache(dapl) returns the same values as are in ! the default fapl. - ! + ! CALL H5Pget_cache_f(fapl_def, mdc_nelmts, nslots_1, nbytes_1, w0_1, error) CALL check("H5Pget_cache_f", error, total_error) CALL H5Pget_chunk_cache_f(dapl1, nslots_4, nbytes_4, w0_4, error) @@ -514,7 +514,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) ! /* Create dataset with default dapl */ CALL H5Dcreate_f(fid, "dset", H5T_NATIVE_INTEGER, sid, dsid, error, dcpl, H5P_DEFAULT_F, dapl1) CALL check("H5Pcreate_f", error, total_error) - + ! /* Retrieve dapl from dataset, verify cache values are the same as on fapl_local */ CALL H5Dget_access_plist_f(dsid, dapl2, error) CALL check("H5Dget_access_plist_f", error, total_error) @@ -526,7 +526,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error) ENDIF CALL H5Pclose_f(dapl2,error); CALL check("H5Pclose_f", error, total_error) - + ! Set new values on dapl1. nbytes will be set to default, so the file ! property will override this setting @@ -601,7 +601,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) CALL check("H5Pset_cache_f", error, total_error) ! Close and reopen file with new fapl_local - + CALL H5Dclose_f(dsid, error); CALL check("H5Dclose_f", error, total_error) CALL H5Fclose_f(fid,error); CALL check("h5fclose_f", error, total_error) @@ -611,12 +611,12 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) ! Verify that dapl2 retrieved earlier (using values from the old fapl) ! sets its values in the new file (test use of H5Dopen2 with a dapl) ! - + CALL h5dopen_f (fid, "dset", dsid, error, dapl2) CALL check("h5dopen_f", error, total_error) - + CALL H5Pclose_f(dapl2,error); CALL check("H5Pclose_f", error, total_error) ! Close dapl2, to avoid id leak - + CALL H5Dget_access_plist_f(dsid, dapl2, error) CALL check("H5Dget_access_plist_f", error, total_error) CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error) @@ -654,11 +654,11 @@ SUBROUTINE test_chunk_cache(cleanup, total_error) CALL H5Dclose_f(dsid, error); CALL check("H5Dclose_f", error, total_error) CALL H5Sclose_f(sid,error); CALL check("H5Sclose_f", error, total_error) - CALL H5Pclose_f(fapl_local,error); CALL check("H5Pclose_f", error, total_error) - CALL H5Pclose_f(fapl_def,error); CALL check("H5Pclose_f", error, total_error) - CALL H5Pclose_f(dapl1,error); CALL check("H5Pclose_f", error, total_error) - CALL H5Pclose_f(dapl2,error); CALL check("H5Pclose_f", error, total_error) - CALL H5Pclose_f(dcpl,error); CALL check("H5Pclose_f", error, total_error) + CALL H5Pclose_f(fapl_local,error); CALL check("H5Pclose_f", error, total_error) + CALL H5Pclose_f(fapl_def,error); CALL check("H5Pclose_f", error, total_error) + CALL H5Pclose_f(dapl1,error); CALL check("H5Pclose_f", error, total_error) + CALL H5Pclose_f(dapl2,error); CALL check("H5Pclose_f", error, total_error) + CALL H5Pclose_f(dcpl,error); CALL check("H5Pclose_f", error, total_error) CALL H5Fclose_f(fid,error); CALL check("H5Fclose_f", error, total_error) IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) diff --git a/fortran/test/tH5R.f90 b/fortran/test/tH5R.f90 index adcdfc7..0289465 100644 --- a/fortran/test/tH5R.f90 +++ b/fortran/test/tH5R.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,56 +11,56 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Reference Interface functionality. ! ! The following subroutine tests h5rcreate_f, h5rdereference_f, h5rget_name_f ! and H5Rget_object_type functions ! SUBROUTINE refobjtest(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error - + INTEGER, INTENT(OUT) :: total_error + CHARACTER(LEN=9), PARAMETER :: filename = "reference" CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=8), PARAMETER :: dsetnamei = "INTEGERS" CHARACTER(LEN=17), PARAMETER :: dsetnamer = "OBJECT_REFERENCES" CHARACTER(LEN=6), PARAMETER :: groupname1 = "GROUP1" CHARACTER(LEN=6), PARAMETER :: groupname2 = "GROUP2" - - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: grp1_id ! Group identifier - INTEGER(HID_T) :: grp2_id ! Group identifier - INTEGER(HID_T) :: dset1_id ! Dataset identifier - INTEGER(HID_T) :: dsetr_id ! Dataset identifier - INTEGER(HID_T) :: type_id ! Type identifier - INTEGER(HID_T) :: space_id ! Dataspace identifier - INTEGER(HID_T) :: spacer_id ! Dataspace identifier + + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: grp1_id ! Group identifier + INTEGER(HID_T) :: grp2_id ! Group identifier + INTEGER(HID_T) :: dset1_id ! Dataset identifier + INTEGER(HID_T) :: dsetr_id ! Dataset identifier + INTEGER(HID_T) :: type_id ! Type identifier + INTEGER(HID_T) :: space_id ! Dataspace identifier + INTEGER(HID_T) :: spacer_id ! Dataspace identifier INTEGER :: error, obj_type INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/5/) INTEGER(HSIZE_T), DIMENSION(1) :: dimsr= (/4/) INTEGER(HSIZE_T), DIMENSION(1) :: my_maxdims = (/5/) - INTEGER :: rank = 1 - INTEGER :: rankr = 1 + INTEGER :: rank = 1 + INTEGER :: rankr = 1 TYPE(hobj_ref_t_f), DIMENSION(4) :: ref TYPE(hobj_ref_t_f), DIMENSION(4) :: ref_out INTEGER(HSIZE_T), DIMENSION(1) :: ref_dim INTEGER, DIMENSION(5) :: DATA = (/1, 2, 3, 4, 5/) INTEGER(HSIZE_T), DIMENSION(2) :: data_dims - + CHARACTER(LEN=7) :: buf ! buffer to hold the region name CHARACTER(LEN=16) :: buf_big ! buffer bigger then needed CHARACTER(LEN=4) :: buf_small ! buffer smaller then needed INTEGER(SIZE_T) :: buf_size ! returned size of the region buffer name - + ! !Create a new file with Default file access and - !file creation properties . + !file creation properties . ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) IF (error .NE. 0) THEN @@ -69,28 +69,28 @@ SUBROUTINE refobjtest(cleanup, total_error) ENDIF CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) CALL check("h5fcreate_f",error,total_error) - - + + ! ! Create a group inside the file ! CALL h5gcreate_f(file_id, groupname1, grp1_id, error) CALL check("h5gcreate_f",error,total_error) - + ! ! Create a group inside the group GROUP1 ! CALL h5gcreate_f(grp1_id, groupname2, grp2_id, error) CALL check("h5gcreate_f",error,total_error) - - ! - ! Create dataspaces for datasets + + ! + ! Create dataspaces for datasets ! CALL h5screate_simple_f(rank, dims, space_id, error, maxdims=my_maxdims) CALL check("h5screate_simple_f",error,total_error) CALL h5screate_simple_f(rankr, dimsr, spacer_id, error) CALL check("h5screate_simple_f",error,total_error) - + ! ! Create integer dataset ! @@ -110,13 +110,13 @@ SUBROUTINE refobjtest(cleanup, total_error) CALL check("h5tcopy_f",error,total_error) CALL h5tcommit_f(file_id, "MyType", type_id, error) CALL check("h5tcommit_f",error,total_error) - + ! ! Close dataspaces, groups and integer dataset - ! + ! CALL h5sclose_f(space_id, error) CALL check("h5sclose_f",error,total_error) - CALL h5sclose_f(spacer_id, error) + CALL h5sclose_f(spacer_id, error) CALL check("h5sclose_f",error,total_error) CALL h5dclose_f(dset1_id, error) CALL check("h5dclose_f",error,total_error) @@ -126,7 +126,7 @@ SUBROUTINE refobjtest(cleanup, total_error) CALL check("h5gclose_f",error,total_error) CALL h5gclose_f(grp2_id, error) CALL check("h5gclose_f",error,total_error) - + ! ! Craete references to two groups, integer dataset and shared datatype ! and write it to the dataset in the file @@ -142,37 +142,37 @@ SUBROUTINE refobjtest(cleanup, total_error) ref_dim(1) = SIZE(ref) CALL h5dwrite_f(dsetr_id, H5T_STD_REF_OBJ, ref, ref_dim, error) CALL check("h5dwrite_f",error,total_error) - + ! getting path to normal dataset in root group - + CALL H5Rget_name_f(dsetr_id, ref(1), buf, error, buf_size ) CALL check("H5Rget_name_f", error, total_error) - + CALL VERIFY("H5Rget_name_f", INT(buf_size),7, total_error) CALL VerifyString("H5Rget_name_f", buf, "/GROUP1", total_error) - + ! with buffer bigger then needed - + CALL H5Rget_name_f(dsetr_id, ref(1), buf_big, error, buf_size ) CALL check("H5Rget_name_f", error, total_error) CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error) CALL VerifyString("H5Rget_name_f", TRIM(buf_big), "/GROUP1", total_error) - + ! getting path to dataset in /Group1 - + CALL H5Rget_name_f(dsetr_id, ref(2), buf_big, error, buf_size ) CALL check("H5Rget_name_f", error, total_error) CALL VERIFY("H5Rget_name_f", INT(buf_size),14,total_error) CALL VerifyString("H5Rget_name_f", TRIM(buf_big), "/GROUP1/GROUP2", total_error) - + ! !Close the dataset - ! + ! CALL h5dclose_f(dsetr_id, error) CALL check("h5dclose_f",error,total_error) - - ! + + ! ! Reopen the dataset with object references ! CALL h5dopen_f(file_id, dsetnamer,dsetr_id,error) @@ -180,60 +180,60 @@ SUBROUTINE refobjtest(cleanup, total_error) ref_dim(1) = SIZE(ref_out) CALL h5dread_f(dsetr_id, H5T_STD_REF_OBJ, ref_out, ref_dim, error) CALL check("h5dread_f",error,total_error) - + ! !get the third reference's type and Dereference it ! - CALL h5rget_object_type_f(dsetr_id, ref(3), obj_type, error) + CALL h5rget_object_type_f(dsetr_id, ref(3), obj_type, error) CALL check("h5rget_object_type_f",error,total_error) - IF (obj_type == H5G_DATASET_F) THEN + IF (obj_type == H5G_DATASET_F) THEN CALL h5rdereference_f(dsetr_id, ref(3), dset1_id, error) CALL check("h5rdereference_f",error,total_error) - + data_dims(1) = 5 CALL h5dwrite_f(dset1_id, H5T_NATIVE_INTEGER, DATA, data_dims, error) CALL check("h5dwrite_f",error,total_error) END IF - + ! !get the fourth reference's type and Dereference it ! - CALL h5rget_object_type_f(dsetr_id, ref(4), obj_type, error) + CALL h5rget_object_type_f(dsetr_id, ref(4), obj_type, error) CALL check("h5rget_object_type_f",error,total_error) - IF (obj_type == H5G_TYPE_F) THEN + IF (obj_type == H5G_TYPE_F) THEN CALL h5rdereference_f(dsetr_id, ref(4), type_id, error) CALL check("h5rdereference_f",error,total_error) END IF - + ! ! Close all objects. - ! + ! CALL h5dclose_f(dset1_id, error) CALL check("h5dclose_f",error,total_error) CALL h5tclose_f(type_id, error) CALL check("h5tclose_f",error,total_error) - + CALL h5dclose_f(dsetr_id, error) CALL check("h5dclose_f",error,total_error) CALL h5fclose_f(file_id, error) CALL check("h5fclose_f",error,total_error) - - + + IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) RETURN - + END SUBROUTINE refobjtest ! ! The following subroutine tests h5rget_region_f, h5rcreate_f, h5rget_name_f, ! and h5rdereference_f functionalities -! +! SUBROUTINE refregtest(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error - + INTEGER, INTENT(OUT) :: total_error + CHARACTER(LEN=6), PARAMETER :: filename = "Refreg" CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=6), PARAMETER :: dsetnamev = "MATRIX" @@ -243,24 +243,24 @@ SUBROUTINE refregtest(cleanup, total_error) CHARACTER(LEN=11) :: buf_big ! buffer bigger then needed CHARACTER(LEN=4) :: buf_small ! buffer smaller then needed INTEGER(SIZE_T) :: buf_size ! returned size of the region buffer name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: space_id ! Dataspace identifier - INTEGER(HID_T) :: spacer_id ! Dataspace identifier - INTEGER(HID_T) :: dsetv_id ! Dataset identifier - INTEGER(HID_T) :: dsetr_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: space_id ! Dataspace identifier + INTEGER(HID_T) :: spacer_id ! Dataspace identifier + INTEGER(HID_T) :: dsetv_id ! Dataset identifier + INTEGER(HID_T) :: dsetr_id ! Dataset identifier INTEGER :: error TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref ! Buffers to store references TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref_out ! INTEGER(HSIZE_T), DIMENSION(2) :: ref_dim INTEGER(HSIZE_T), DIMENSION(2) :: data_dims INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/2,9/) ! Datasets dimensions - INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) ! + INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) ! INTEGER(HSIZE_T), DIMENSION(2) :: start INTEGER(HSIZE_T), DIMENSION(2) :: count - INTEGER :: rankr = 1 + INTEGER :: rankr = 1 INTEGER :: rank = 2 - INTEGER , DIMENSION(2,9) :: DATA - INTEGER , DIMENSION(2,9) :: data_out = 0 + INTEGER , DIMENSION(2,9) :: DATA + INTEGER , DIMENSION(2,9) :: data_out = 0 INTEGER(HSIZE_T) , DIMENSION(2,3) :: coord INTEGER(SIZE_T) ::num_points = 3 ! Number of selected points coord = RESHAPE((/1,1,2,7,1,9/), (/2,3/)) ! Coordinates of selected points @@ -281,30 +281,30 @@ SUBROUTINE refregtest(cleanup, total_error) ENDIF CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) ! Default file access and file creation - ! properties are used. + ! properties are used. CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create dataspaces: - ! - ! for dataset with references to dataset regions + ! + ! for dataset with references to dataset regions ! CALL h5screate_simple_f(rankr, dimsr, spacer_id, error) CALL check("h5screate_simple_f", error, total_error) ! - ! for integer dataset + ! for integer dataset ! CALL h5screate_simple_f(rank, dims, space_id, error) CALL check("h5screate_simple_f", error, total_error) ! ! Create and write datasets: ! - ! Integer dataset + ! Integer dataset ! CALL h5dcreate_f(file_id, dsetnamev, H5T_NATIVE_INTEGER, space_id, & dsetv_id, error) CALL check("h5dcreate_f", error, total_error) data_dims(1) = 2 - data_dims(2) = 9 + data_dims(2) = 9 CALL h5dwrite_f(dsetv_id, H5T_NATIVE_INTEGER, DATA, data_dims, error) CALL check("h5dwrite_f", error, total_error) @@ -319,14 +319,14 @@ SUBROUTINE refregtest(cleanup, total_error) ! ! Create a reference to the hyperslab selection. ! - start(1) = 0 - start(2) = 3 + start(1) = 0 + start(2) = 3 COUNT(1) = 2 COUNT(2) = 3 CALL h5sselect_hyperslab_f(space_id, H5S_SELECT_SET_F, & - start, count, error) + start, count, error) CALL check("h5sselect_hyperslab_f", error, total_error) - CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(1), error) + CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(1), error) CALL check("h5rcreate_f", error, total_error) ! ! Create a reference to elements selection. @@ -334,15 +334,15 @@ SUBROUTINE refregtest(cleanup, total_error) CALL h5sselect_none_f(space_id, error) CALL check("h5sselect_none_f", error, total_error) CALL h5sselect_elements_f(space_id, H5S_SELECT_SET_F, rank, num_points,& - coord, error) + coord, error) CALL check("h5sselect_elements_f", error, total_error) - CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(2), error) + CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(2), error) CALL check("h5rcreate_f", error, total_error) ! - ! Write dataset with the references. + ! Write dataset with the references. ! ref_dim(1) = SIZE(ref) - CALL h5dwrite_f(dsetr_id, H5T_STD_REF_DSETREG, ref, ref_dim, error) + CALL h5dwrite_f(dsetr_id, H5T_STD_REF_DSETREG, ref, ref_dim, error) CALL check("h5dwrite_f", error, total_error) ! ! Close all objects. @@ -366,7 +366,7 @@ SUBROUTINE refregtest(cleanup, total_error) ! Read references to the dataset regions. ! ref_dim(1) = SIZE(ref_out) - CALL h5dread_f(dsetr_id, H5T_STD_REF_DSETREG, ref_out, ref_dim, error) + CALL h5dread_f(dsetr_id, H5T_STD_REF_DSETREG, ref_out, ref_dim, error) CALL check("h5dread_f", error, total_error) @@ -391,12 +391,12 @@ SUBROUTINE refregtest(cleanup, total_error) CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error) CALL VerifyString("H5Rget_name_f", TRIM(buf_small), "/MAT", total_error) - ! + ! ! Dereference the first reference. - ! + ! CALL H5rdereference_f(dsetr_id, ref_out(1), dsetv_id, error) CALL check("h5rdereference_f", error, total_error) - CALL H5rget_region_f(dsetr_id, ref_out(1), space_id, error) + CALL H5rget_region_f(dsetr_id, ref_out(1), space_id, error) CALL check("h5rget_region_f", error, total_error) ! Get name of the dataset the second region reference points to using H5Rget_name_f @@ -418,13 +418,13 @@ SUBROUTINE refregtest(cleanup, total_error) CALL h5dclose_f(dsetv_id, error) CALL check("h5dclose_f", error, total_error) data_out = 0 - ! + ! ! Dereference the second reference. - ! + ! CALL H5rdereference_f(dsetr_id, ref_out(2), dsetv_id, error) CALL check("h5rdereference_f", error, total_error) - CALL H5rget_region_f(dsetr_id, ref_out(2), space_id, error) + CALL H5rget_region_f(dsetr_id, ref_out(2), space_id, error) CALL check("h5rget_region_f", error, total_error) ! ! Read selected data from the dataset. diff --git a/fortran/test/tH5S.f90 b/fortran/test/tH5S.f90 index 63efe5f..29943bb 100644 --- a/fortran/test/tH5S.f90 +++ b/fortran/test/tH5S.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,35 +11,35 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Dataspace Interface functionality. ! ! ! The following subroutine tests the following functionalities: -! h5screate_f, h5scopy_f, h5screate_simple_f, h5sis_simple_f, -! h5sget_simple_extent_dims_f,h5sget_simple_extent_ndims_f +! h5screate_f, h5scopy_f, h5screate_simple_f, h5sis_simple_f, +! h5sget_simple_extent_dims_f,h5sget_simple_extent_ndims_f ! h5sget_simple_extent_npoints_f, h5sget_simple_extent_type_f, -! h5sextent_copy_f, h5sset_extent_simple_f, h5sset_extent_none_f +! h5sextent_copy_f, h5sset_extent_simple_f, h5sset_extent_none_f ! SUBROUTINE dataspace_basic_test(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=10), PARAMETER :: filename1 = "basicspace" ! File1 name CHARACTER(LEN=9), PARAMETER :: filename2 = "copyspace" ! File2 name - CHARACTER(LEN=80) :: fix_filename1 - CHARACTER(LEN=80) :: fix_filename2 + CHARACTER(LEN=80) :: fix_filename1 + CHARACTER(LEN=80) :: fix_filename2 CHARACTER(LEN=9), PARAMETER :: dsetname = "basicdset" ! Dataset name - INTEGER(HID_T) :: file1_id, file2_id ! File identifiers - INTEGER(HID_T) :: dset1_id, dset2_id ! Dataset identifiers + INTEGER(HID_T) :: file1_id, file2_id ! File identifiers + INTEGER(HID_T) :: dset1_id, dset2_id ! Dataset identifiers INTEGER(HID_T) :: space1_id, space2_id ! Dataspace identifiers INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/4,6/) ! Dataset dimensions @@ -81,10 +81,10 @@ ! ! CALL h5init_types_f(error) ! CALL check("h5init_types_f", error, total_error) - + ! ! Create new files using default properties. - ! + ! CALL h5_fixname_f(filename1, fix_filename1, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -101,53 +101,53 @@ CALL h5fcreate_f(fix_filename2, H5F_ACC_TRUNC_F, file2_id, error) CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create dataspace for file1. ! CALL h5screate_simple_f(rank1, dims1, space1_id, error, maxdims1) CALL check("h5screate_simple_f", error, total_error) - ! + ! ! Copy space1_id to space2_id. ! CALL h5scopy_f(space1_id, space2_id, error) CALL check("h5scopy_f", error, total_error) - ! + ! !Check whether copied space is simple. ! CALL h5sis_simple_f(space2_id, flag, error) CALL check("h5sissimple_f", error, total_error) IF (.NOT. flag) write(*,*) "dataspace is not simple type" - - ! + + ! !set the copied space to none. ! CALL h5sset_extent_none_f(space2_id, error) CALL check("h5sset_extent_none_f", error, total_error) - - ! + + ! !copy the extent of space1_id to space2_id. ! - CALL h5sextent_copy_f(space2_id, space1_id, error) + CALL h5sextent_copy_f(space2_id, space1_id, error) CALL check("h5sextent_copy_f", error, total_error) - ! + ! !get the copied space's dimensions. ! CALL h5sget_simple_extent_dims_f(space2_id, dimsout, maxdimsout, error) CALL check("h5sget_simple_extent_dims_f", error, total_error) IF ((dimsout(1) .NE. dims1(1)) .OR. (dimsout(2) .NE. dims1(2)) ) THEN - write(*,*)"error occured, copied dims not same" + write(*,*)"error occured, copied dims not same" END IF - - ! + + ! !get the copied space's rank. ! CALL h5sget_simple_extent_ndims_f(space2_id, rank2, error) CALL check("h5sget_simple_extent_ndims_f", error, total_error) - IF (rank2 .NE. rank1) write(*,*)"error occured, copied ranks not same" - - ! + IF (rank2 .NE. rank1) write(*,*)"error occured, copied ranks not same" + + ! !get the copied space's number of elements. ! CALL h5sget_simple_extent_npoints_f(space2_id, npoints, error) @@ -155,27 +155,27 @@ IF (npoints .NE. 24) write(*,*)"error occured, number of elements not correct" - ! + ! !get the copied space's class type. ! - CALL h5sget_simple_extent_type_f(space2_id, classtype, error) + CALL h5sget_simple_extent_type_f(space2_id, classtype, error) CALL check("h5sget_simple_extent_type_f", error, total_error) IF (classtype .NE. 1) write(*,*)"class type not H5S_SIMPLE_f" - ! + ! !set the copied space to dim2 size. ! CALL h5sset_extent_simple_f(space2_id, rank2, dims2, maxdims2, error) CALL check("h5sset_extent_simple_f", error, total_error) - ! + ! !get the copied space's dimensions. ! CALL h5sget_simple_extent_dims_f(space2_id, dimsout, maxdimsout, error) CALL check("h5sget_simple_extent_dims_f", error, total_error) IF ((dimsout(1) .NE. dims2(1)) .OR. (dimsout(2) .NE. dims2(2)) ) THEN write(*,*)"error occured, copied dims not same" - END IF + END IF ! ! Create the datasets with default properties in two files. @@ -196,7 +196,7 @@ CALL h5dwrite_f(dset1_id, H5T_NATIVE_INTEGER, data1_in, data_dims, error) CALL check("h5dwrite_f", error, total_error) - data_dims(1) = 6 + data_dims(1) = 6 data_dims(2) = 6 CALL h5dwrite_f(dset2_id, H5T_NATIVE_INTEGER, data2_in, data_dims, error) CALL check("h5dwrite_f", error, total_error) @@ -211,40 +211,40 @@ ! !Compare the data. - ! + ! do i = 1, 4 do j = 1, 6 - IF (data1_out(i,j) .NE. data1_in(i, j)) THEN + IF (data1_out(i,j) .NE. data1_in(i, j)) THEN write(*, *) "dataset test error occured" write(*,*) "data read is not the same as the data writen" END IF - end do + end do end do ! ! Read the second dataset. ! - data_dims(1) = 6 + data_dims(1) = 6 data_dims(2) = 6 CALL h5dread_f(dset2_id, H5T_NATIVE_INTEGER, data2_out, data_dims, error) CALL check("h5dread_f", error, total_error) ! !Compare the data. - ! + ! do i = 1, 6 do j = 1, 6 - IF (data2_out(i,j) .NE. data2_in(i, j)) THEN + IF (data2_out(i,j) .NE. data2_in(i, j)) THEN write(*, *) "dataset test error occured" write(*,*) "data read is not the same as the data writen" END IF - end do + end do end do - ! + ! !Close the datasets. - ! + ! CALL h5dclose_f(dset1_id, error) CALL check("h5dclose_f", error, total_error) CALL h5dclose_f(dset2_id, error) @@ -257,14 +257,14 @@ CALL check("h5sclose_f", error, total_error) CALL h5sclose_f(space2_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the files. ! CALL h5fclose_f(file1_id, error) CALL check("h5fclose_f", error, total_error) CALL h5fclose_f(file2_id, error) CALL check("h5fclose_f", error, total_error) - + if(cleanup) CALL h5_cleanup_f(filename1, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) diff --git a/fortran/test/tH5Sselect.f90 b/fortran/test/tH5Sselect.f90 index 7e11b61..f7fd8af 100644 --- a/fortran/test/tH5Sselect.f90 +++ b/fortran/test/tH5Sselect.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,9 +11,9 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! -! ! Testing Selection-related Dataspace Interface functionality. ! @@ -22,17 +22,17 @@ ! h5sget_select_npoints_f, h5sselect_elements_f, h5sselect_all_f, ! h5sselect_none_f, h5sselect_valid_f, h5sselect_hyperslab_f, ! h5sget_select_bounds_f, h5sget_select_elem_pointlist_f, -! h5sget_select_elem_npoints_f, h5sget_select_hyper_blocklist_f, +! h5sget_select_elem_npoints_f, h5sget_select_hyper_blocklist_f, ! h5sget_select_hyper_nblocks_f, h5sget_select_npoints_f ! SUBROUTINE test_select_hyperslab(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=7), PARAMETER :: filename = "tselect" CHARACTER(LEN=80) :: fix_filename @@ -42,60 +42,60 @@ ! CHARACTER(LEN=8), PARAMETER :: dsetname = "IntArray" - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier - INTEGER(HID_T) :: dataspace ! Dataspace identifier - INTEGER(HID_T) :: memspace ! memspace identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: dataspace ! Dataspace identifier + INTEGER(HID_T) :: memspace ! memspace identifier ! - !Memory space dimensions + !Memory space dimensions ! INTEGER(HSIZE_T), DIMENSION(3) :: dimsm = (/7,7,3/) ! - !Dataset dimensions + !Dataset dimensions ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/5,6/) ! - !Size of the hyperslab in the file + !Size of the hyperslab in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: count = (/3,4/) ! - !hyperslab offset in the file + !hyperslab offset in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: offset = (/1,2/) ! - !Size of the hyperslab in memory + !Size of the hyperslab in memory ! INTEGER(HSIZE_T), DIMENSION(3) :: count_out = (/3,4,1/) ! - !hyperslab offset in memory + !hyperslab offset in memory ! INTEGER(HSIZE_T), DIMENSION(3) :: offset_out = (/3,0,0/) ! - !data to write + !data to write ! INTEGER, DIMENSION(5,6) :: data ! - !output buffer + !output buffer ! INTEGER, DIMENSION(7,7,3) :: data_out ! - !dataset space rank + !dataset space rank ! - INTEGER :: dsetrank = 2 + INTEGER :: dsetrank = 2 ! - !memspace rank + !memspace rank ! INTEGER :: memrank = 3 @@ -103,23 +103,23 @@ ! - !general purpose integer + !general purpose integer ! - INTEGER :: i, j + INTEGER :: i, j ! - !flag to check operation success + !flag to check operation success ! - INTEGER :: error + INTEGER :: error INTEGER(HSIZE_T), DIMENSION(3) :: data_dims ! - !This writes data to the HDF5 file. + !This writes data to the HDF5 file. ! ! - !data initialization + !data initialization ! do i = 1, 5 do j = 1, 6 @@ -137,12 +137,12 @@ ! !Initialize FORTRAN predifined datatypes ! -! CALL h5init_types_f(error) +! CALL h5init_types_f(error) ! CALL check("h5init_types_f", error, total_error) ! !Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -152,7 +152,7 @@ CALL check("h5fcreate_f", error, total_error) ! - !Create the data space for the dataset. + !Create the data space for the dataset. ! CALL h5screate_simple_f(dsetrank, dimsf, dataspace, error) CALL check("h5screate_simple_f", error, total_error) @@ -168,7 +168,7 @@ ! Write the dataset ! data_dims(1) = 5 - data_dims(2) = 6 + data_dims(2) = 6 CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data, data_dims, error) CALL check("h5dwrite_f", error, total_error) @@ -191,7 +191,7 @@ CALL check("h5fclose_f", error, total_error) ! - !This reads the hyperslab from the sds.h5 file just + !This reads the hyperslab from the sds.h5 file just !created, into a 2-dimensional plane of the 3-dimensional array. ! @@ -228,7 +228,7 @@ !Select hyperslab in the dataset. ! CALL h5sselect_hyperslab_f(dataspace, H5S_SELECT_SET_F, & - offset, count, error) + offset, count, error) CALL check("h5sselect_hyperslab_f", error, total_error) ! !create memory dataspace. @@ -240,16 +240,16 @@ !Select hyperslab in memory. ! CALL h5sselect_hyperslab_f(memspace, H5S_SELECT_SET_F, & - offset_out, count_out, error) + offset_out, count_out, error) CALL check("h5sselect_hyperslab_f", error, total_error) ! - !Read data from hyperslab in the file into the hyperslab in + !Read data from hyperslab in the file into the hyperslab in !memory and display. ! data_dims(1) = 7 - data_dims(2) = 7 - data_dims(3) = 3 + data_dims(2) = 7 + data_dims(3) = 3 CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, & memspace, dataspace) CALL check("h5dread_f", error, total_error) @@ -264,7 +264,7 @@ ! 0 0 0 0 0 0 0 ! 0 0 0 0 0 0 0 ! 0 0 0 0 0 0 0 - ! 3 4 5 6 0 0 0 + ! 3 4 5 6 0 0 0 ! 4 5 6 7 0 0 0 ! 5 6 7 8 0 0 0 ! 0 0 0 0 0 0 0 @@ -307,11 +307,11 @@ SUBROUTINE test_select_element(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error ! !the dataset1 is stored in file "copy1.h5" @@ -335,60 +335,60 @@ CHARACTER(LEN=8), PARAMETER :: dsetname2 = "Copy2" ! - !dataset rank + !dataset rank ! INTEGER, PARAMETER :: RANK = 2 ! - !number of points selected + !number of points selected ! INTEGER(SIZE_T), PARAMETER :: NUMP = 2 - INTEGER(HID_T) :: file1_id ! File1 identifier - INTEGER(HID_T) :: file2_id ! File2 identifier - INTEGER(HID_T) :: dset1_id ! Dataset1 identifier - INTEGER(HID_T) :: dset2_id ! Dataset2 identifier - INTEGER(HID_T) :: dataspace1 ! Dataspace identifier - INTEGER(HID_T) :: dataspace2 ! Dataspace identifier - INTEGER(HID_T) :: memspace ! memspace identifier + INTEGER(HID_T) :: file1_id ! File1 identifier + INTEGER(HID_T) :: file2_id ! File2 identifier + INTEGER(HID_T) :: dset1_id ! Dataset1 identifier + INTEGER(HID_T) :: dset2_id ! Dataset2 identifier + INTEGER(HID_T) :: dataspace1 ! Dataspace identifier + INTEGER(HID_T) :: dataspace2 ! Dataspace identifier + INTEGER(HID_T) :: memspace ! memspace identifier ! - !Memory space dimensions + !Memory space dimensions ! INTEGER(HSIZE_T), DIMENSION(1) :: dimsm = (/2/) ! - !Dataset dimensions + !Dataset dimensions ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/3,4/) ! - !Points positions in the file + !Points positions in the file ! INTEGER(HSIZE_T), DIMENSION(RANK,NUMP) :: coord ! - !data buffers + !data buffers ! INTEGER, DIMENSION(3,4) :: buf1, buf2, bufnew ! - !value to write + !value to write ! INTEGER, DIMENSION(2) :: val = (/53, 59/) ! - !memory rank + !memory rank ! - INTEGER :: memrank = 1 + INTEGER :: memrank = 1 ! - !general purpose integer + !general purpose integer ! - INTEGER :: i, j + INTEGER :: i, j ! - !flag to check operation success + !flag to check operation success ! INTEGER :: error INTEGER(HSIZE_T), DIMENSION(3) :: data_dims @@ -396,11 +396,11 @@ ! !Create two files containing identical datasets. Write 0's to one - !and 1's to the other. + !and 1's to the other. ! ! - !data initialization + !data initialization ! do i = 1, 3 do j = 1, 4 @@ -417,12 +417,12 @@ ! !Initialize FORTRAN predifined datatypes ! -! CALL h5init_types_f(error) +! CALL h5init_types_f(error) ! CALL check("h5init_types_f", error, total_error) ! !Create file1, file2 using default properties. - ! + ! CALL h5_fixname_f(filename1, fix_filename1, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -440,7 +440,7 @@ CALL check("h5fcreate_f", error, total_error) ! - !Create the data space for the datasets. + !Create the data space for the datasets. ! CALL h5screate_simple_f(RANK, dimsf, dataspace1, error) CALL check("h5screate_simple_f", error, total_error) @@ -498,8 +498,8 @@ CALL check("h5fclose_f", error, total_error) ! - !Open the two files. Select two points in one file, write values to - !those point locations, then do H5Scopy and write the values to the + !Open the two files. Select two points in one file, write values to + !those point locations, then do H5Scopy and write the values to the !other file. Close files. ! @@ -534,12 +534,12 @@ CALL check("h5screate_simple_f", error, total_error) ! - !Set the selected point positions.Because Fortran array index starts + !Set the selected point positions.Because Fortran array index starts ! from 1, so add one to the actual select points in C ! - coord(1,1) = 1 - coord(2,1) = 2 - coord(1,2) = 1 + coord(1,1) = 1 + coord(2,1) = 2 + coord(1,2) = 1 coord(2,2) = 4 ! @@ -560,7 +560,7 @@ ! !Copy the daspace1 into dataspace2 ! - CALL h5scopy_f(dataspace1, dataspace2, error) + CALL h5scopy_f(dataspace1, dataspace2, error) CALL check("h5scopy_f", error, total_error) ! @@ -683,25 +683,25 @@ SUBROUTINE test_basic_select(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error ! !the dataset is stored in file "testselect.h5" ! CHARACTER(LEN=10), PARAMETER :: filename = "testselect" - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename ! - !dataspace rank + !dataspace rank ! INTEGER, PARAMETER :: RANK = 2 ! - !select NUMP_POINTS points from the file + !select NUMP_POINTS points from the file ! INTEGER(SIZE_T), PARAMETER :: NUMPS = 10 @@ -710,86 +710,86 @@ ! CHARACTER(LEN=10), PARAMETER :: dsetname = "testselect" - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dataspace ! Dataspace identifier ! - !Dataset dimensions + !Dataset dimensions ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsf = (/5,6/) ! - !Size of the hyperslab in the file + !Size of the hyperslab in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: count = (/2,2/) ! - !hyperslab offset in the file + !hyperslab offset in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: offset = (/0,0/) ! - !start block for getting the selected hyperslab + !start block for getting the selected hyperslab ! INTEGER(HSIZE_T) :: startblock = 0 ! - !start point for getting the selected elements + !start point for getting the selected elements ! INTEGER(HSIZE_T) :: startpoint = 0 ! - !Stride of the hyperslab in the file + !Stride of the hyperslab in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: stride = (/3,3/) ! - !BLock size of the hyperslab in the file + !BLock size of the hyperslab in the file ! INTEGER(HSIZE_T), DIMENSION(2) :: block = (/2,2/) ! - !array to give selected points' coordinations + !array to give selected points' coordinations ! INTEGER(HSIZE_T), DIMENSION(RANK, NUMPS) :: coord ! - !Number of hyperslabs selected in the current dataspace + !Number of hyperslabs selected in the current dataspace ! INTEGER(HSSIZE_T) :: num_blocks ! !allocatable array for putting a list of hyperslabs - !selected in the current file dataspace + !selected in the current file dataspace ! INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: blocklist ! - !Number of points selected in the current dataspace + !Number of points selected in the current dataspace ! INTEGER(HSSIZE_T) :: num_points INTEGER(HSIZE_T) :: num1_points ! !allocatable array for putting a list of points - !selected in the current file dataspace + !selected in the current file dataspace ! INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: pointlist ! - !start and end bounds in the current dataspace selection + !start and end bounds in the current dataspace selection ! INTEGER(HSIZE_T), DIMENSION(RANK) :: startout, endout ! - !data to write + !data to write ! INTEGER, DIMENSION(5,6) :: data ! - !flag to check operation success + !flag to check operation success ! INTEGER :: error INTEGER(HSIZE_T), DIMENSION(3) :: data_dims @@ -797,7 +797,7 @@ INTEGER :: i ! - !initialize the coord array to give the selected points' position + !initialize the coord array to give the selected points' position ! coord(1,1) = 1 coord(2,1) = 1 @@ -822,7 +822,7 @@ ! !Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -832,7 +832,7 @@ CALL check("h5fcreate_f", error, total_error) ! - !Create the data space for the dataset. + !Create the data space for the dataset. ! CALL h5screate_simple_f(RANK, dimsf, dataspace, error) CALL check("h5screate_simple_f", error, total_error) @@ -875,7 +875,7 @@ ! CALL h5fopen_f (fix_filename, H5F_ACC_RDONLY_F, file_id, error) CALL check("h5fopen_f", error, total_error) - + ! !Open the dataset. ! @@ -892,11 +892,11 @@ !Select hyperslab in the dataset. ! CALL h5sselect_hyperslab_f(dataspace, H5S_SELECT_SET_F, & - offset, count, error, stride, block) + offset, count, error, stride, block) CALL check("h5sselect_hyperslab_f", error, total_error) ! - !get the number of hyperslab blocks in the current dataspac selection + !get the number of hyperslab blocks in the current dataspac selection ! CALL h5sget_select_hyper_nblocks_f(dataspace, num_blocks, error) CALL check("h5sget_select_hyper_nblocks_f", error, total_error) @@ -911,16 +911,16 @@ if(error .NE. 0) then STOP endif - + ! - !get the list of hyperslabs selected in the current dataspac selection + !get the list of hyperslabs selected in the current dataspac selection ! CALL h5sget_select_hyper_blocklist_f(dataspace, startblock, & num_blocks, blocklist, error) CALL check("h5sget_select_hyper_blocklist_f", error, total_error) ! write(*,*) (blocklist(i), i =1, num_blocks*RANK*2) !result of blocklist selected is: - !1, 1, 2, 2, 4, 1, 5, 2, 1, 4, 2, 5, 4, 4, 5, 5 + !1, 1, 2, 2, 4, 1, 5, 2, 1, 4, 2, 5, 4, 4, 5, 5 ! !deallocate the blocklist array @@ -928,7 +928,7 @@ DEALLOCATE(blocklist) ! - !get the selection bounds in the current dataspac selection + !get the selection bounds in the current dataspac selection ! CALL h5sget_select_bounds_f(dataspace, startout, endout, error) CALL check("h5sget_select_bounds_f", error, total_error) @@ -967,7 +967,7 @@ CALL h5sget_select_elem_npoints_f(dataspace, num_points, error) CALL check("h5sget_select_elem_npoints_f", error, total_error) IF (num_points .NE. 10) write(*,*) "error occured with num_points" - !write(*,*) num_points + !write(*,*) num_points ! result of num_points is 10 ! @@ -977,11 +977,11 @@ CALL h5sget_select_elem_pointlist_f(dataspace, startpoint, & num1_points, pointlist, error) CALL check("h5sget_select_elem_pointlist_f", error, total_error) - !write(*,*) (pointlist(i), i =1, num1_points*RANK) + !write(*,*) (pointlist(i), i =1, num1_points*RANK) !result of pintlist is: - !1, 1, 3, 1, 5, 1, 1, 3, 3, 3, 5, 3, 3, + !1, 1, 3, 1, 5, 1, 1, 3, 3, 3, 5, 3, 3, !4, 1, 4, 3, 5, 5, 5 - + ! !deallocate the pointlist array ! @@ -1021,13 +1021,13 @@ !****************************************************************/ SUBROUTINE test_select_point(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error INTEGER(HID_T) :: xfer_plist - + INTEGER, PARAMETER :: SPACE1_DIM1=3 INTEGER, PARAMETER :: SPACE1_DIM2=15 INTEGER, PARAMETER :: SPACE1_DIM3=13 @@ -1035,11 +1035,11 @@ SUBROUTINE test_select_point(cleanup, total_error) INTEGER, PARAMETER :: SPACE2_DIM2=26 INTEGER, PARAMETER :: SPACE3_DIM1=15 INTEGER, PARAMETER :: SPACE3_DIM2=26 - + INTEGER, PARAMETER :: SPACE1_RANK=3 INTEGER, PARAMETER :: SPACE2_RANK=2 INTEGER, PARAMETER :: SPACE3_RANK=2 - + ! /* Element selection information */ INTEGER, PARAMETER :: POINT1_NPOINTS=10 INTEGER(hid_t) ::fid1 ! /* HDF5 File IDs */ @@ -1048,7 +1048,7 @@ SUBROUTINE test_select_point(cleanup, total_error) INTEGER(hsize_t), DIMENSION(1:3) :: dims1 = (/SPACE1_DIM1, SPACE1_DIM2, SPACE1_DIM3/) INTEGER(hsize_t), DIMENSION(1:2) :: dims2 = (/SPACE2_DIM1, SPACE2_DIM2/) INTEGER(hsize_t), DIMENSION(1:2) :: dims3 = (/SPACE3_DIM1, SPACE3_DIM2/) - + INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: coord1 !/* Coordinates for point selection */ INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: temp_coord1 !/* Coordinates for point selection */ INTEGER(hsize_t), DIMENSION(1:SPACE2_RANK,1:POINT1_NPOINTS) :: coord2 !/* Coordinates for point selection */ @@ -1064,7 +1064,7 @@ SUBROUTINE test_select_point(cleanup, total_error) ! struct pnt_iter pi; /* Custom Pointer iterator struct */ INTEGER :: error !/* Generic return value */ CHARACTER(LEN=9) :: filename = 'h5s_hyper' - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=1), DIMENSION(1:SPACE2_DIM1,1:SPACE2_DIM2) :: wbuf, rbuf CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) @@ -1090,11 +1090,11 @@ SUBROUTINE test_select_point(cleanup, total_error) !!$ for(i=0, tbuf=wbuf; i<SPACE2_DIM1; i++) !!$ for(j=0; j<SPACE2_DIM2; j++) !!$ *tbuf++=(uint8_t)((i*SPACE2_DIM2)+j); - + !/* Create file */ CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, fid1, error) CALL check("h5fcreate_f", error, total_error) - + !/* Create dataspace for dataset */ CALL h5screate_simple_f(SPACE1_RANK, dims1, sid1, error) CALL check("h5screate_simple_f", error, total_error) @@ -1151,7 +1151,7 @@ SUBROUTINE test_select_point(cleanup, total_error) CALL h5sselect_elements_f(sid1, H5S_SELECT_APPEND_F, SPACE1_RANK, INT(POINT1_NPOINTS,size_t), coord1, error) CALL check("h5sselect_elements_f", error, total_error) ! /* Verify correct elements selected */ - + CALL h5sget_select_elem_pointlist_f(sid1, INT(POINT1_NPOINTS,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord1,error) CALL check("h5sget_select_elem_pointlist_f", error, total_error) @@ -1182,7 +1182,7 @@ SUBROUTINE test_select_point(cleanup, total_error) !/* Verify correct elements selected */ - + CALL h5sget_select_elem_pointlist_f(sid2, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord2,error) CALL check("h5sget_select_elem_pointlist_f", error, total_error) @@ -1349,8 +1349,8 @@ END SUBROUTINE test_select_point !****************************************************************/ SUBROUTINE test_select_combine(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error @@ -1358,7 +1358,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) INTEGER, PARAMETER :: SPACE7_RANK = 2 INTEGER, PARAMETER :: SPACE7_DIM1 = 10 INTEGER, PARAMETER :: SPACE7_DIM2 = 10 - + INTEGER(hid_t) :: base_id ! /* Base dataspace for test */ INTEGER(hid_t) :: all_id ! /* Dataspace for "all" selection */ INTEGER(hid_t) :: none_id ! /* Dataspace for "none" selection */ @@ -1378,7 +1378,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5screate_simple_f", error, total_error) ! /* Copy base dataspace and set selection to "all" */ - CALL h5scopy_f(base_id, all_id, error) + CALL h5scopy_f(base_id, all_id, error) CALL check("h5scopy_f", error, total_error) CALL H5Sselect_all_f(all_id, error) @@ -1389,7 +1389,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error) !/* Copy base dataspace and set selection to "none" */ - CALL h5scopy_f(base_id, none_id, error) + CALL h5scopy_f(base_id, none_id, error) CALL check("h5scopy_f", error, total_error) CALL H5Sselect_none_f(none_id, error) @@ -1398,9 +1398,9 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL H5Sget_select_type_f(none_id, sel_type, error) CALL check("H5Sget_select_type_f", error, total_error) CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_NONE_F), total_error) - + !/* Copy "all" selection & space */ - CALL H5Scopy_f(all_id, space1, error) + CALL H5Scopy_f(all_id, space1, error) CALL check("h5scopy_f", error, total_error) !/* 'OR' "all" selection with another hyperslab */ @@ -1409,7 +1409,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) icount(1:2) = 1 iblock(1:2) = (/5,4/) CALL h5sselect_hyperslab_f(space1, H5S_SELECT_OR_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) !/* Verify that it's still "all" selection */ @@ -1422,7 +1422,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) !/* Copy "all" selection & space */ - CALL H5Scopy_f(all_id, space1, error) + CALL H5Scopy_f(all_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'AND' "all" selection with another hyperslab */ @@ -1431,7 +1431,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) icount(1:2) = 1 iblock(1:2) = (/5,4/) CALL h5sselect_hyperslab_f(space1, H5S_SELECT_AND_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) !/* Verify that the new selection is the same at the original block */ @@ -1443,7 +1443,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error) CALL check("h5sget_select_hyper_nblocks_f", error, total_error) CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error) - + !/* Retrieve the block defined */ CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error) CALL check("h5sget_select_hyper_blocklist_f", error, total_error) @@ -1460,7 +1460,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) !/* Copy "all" selection & space */ - CALL H5Scopy_f(all_id, space1, error) + CALL H5Scopy_f(all_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'XOR' "all" selection with another hyperslab */ @@ -1470,7 +1470,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) CALL h5sselect_hyperslab_f(space1, H5S_SELECT_XOR_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is an inversion of the original block */ @@ -1491,7 +1491,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) ! /* Verify that the correct block is defined */ - ! No guarantee is implied as the order in which blocks are listed. + ! No guarantee is implied as the order in which blocks are listed. ! So this will ONLY work for square domains iblock(1:2) = (/5,5/) !!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error) !!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error) @@ -1512,7 +1512,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) ! /* Copy "all" selection & space */ - CALL H5Scopy_f(all_id, space1, error) + CALL H5Scopy_f(all_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'NOTB' "all" selection with another hyperslab */ @@ -1522,7 +1522,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTB_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is an inversion of the original block */ @@ -1540,9 +1540,9 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error) CALL check("h5sget_select_hyper_blocklist_f", error, total_error) - ! /* Verify that the correct block is defined */ + ! /* Verify that the correct block is defined */ - ! No guarantee is implied as the order in which blocks are listed. + ! No guarantee is implied as the order in which blocks are listed. ! So this will ONLY work for square domains iblock(1:2) = (/5,5/) !!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error) @@ -1564,7 +1564,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL h5sclose_f(space1, error) CALL check("h5sclose_f", error, total_error) ! /* Copy "all" selection & space */ - CALL H5Scopy_f(all_id, space1, error) + CALL H5Scopy_f(all_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'NOTA' "all" selection with another hyperslab */ @@ -1574,7 +1574,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTA_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) !/* Verify that the new selection is the "none" selection */ @@ -1587,7 +1587,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) ! /* Copy "none" selection & space */ - CALL H5Scopy_f(none_id, space1, error) + CALL H5Scopy_f(none_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'OR' "none" selection with another hyperslab */ @@ -1597,14 +1597,14 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_OR_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is the same as the original hyperslab */ CALL H5Sget_select_type_f(space1, sel_type, error) CALL check("H5Sget_select_type_f", error, total_error) CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error) - + ! /* Verify that there is only one block */ CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error) @@ -1627,7 +1627,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) ! /* Copy "none" selection & space */ - CALL H5Scopy_f(none_id, space1, error) + CALL H5Scopy_f(none_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'AND' "none" selection with another hyperslab */ @@ -1637,7 +1637,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_AND_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is the "none" selection */ @@ -1650,7 +1650,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) ! /* Copy "none" selection & space */ - CALL H5Scopy_f(none_id, space1, error) + CALL H5Scopy_f(none_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'XOR' "none" selection with another hyperslab */ @@ -1660,14 +1660,14 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_XOR_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is the same as the original hyperslab */ CALL H5Sget_select_type_f(space1, sel_type, error) CALL check("H5Sget_select_type_f", error, total_error) CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error) - + ! /* Verify that there is only one block */ CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error) @@ -1683,13 +1683,13 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error) - + ! /* Close temporary dataspace */ CALL h5sclose_f(space1, error) CALL check("h5sclose_f", error, total_error) ! /* Copy "none" selection & space */ - CALL H5Scopy_f(none_id, space1, error) + CALL H5Scopy_f(none_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'NOTB' "none" selection with another hyperslab */ @@ -1699,7 +1699,7 @@ SUBROUTINE test_select_combine(cleanup, total_error) iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTB_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is the "none" selection */ @@ -1712,23 +1712,23 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL check("h5sclose_f", error, total_error) ! /* Copy "none" selection & space */ - CALL H5Scopy_f(none_id, space1, error) + CALL H5Scopy_f(none_id, space1, error) CALL check("h5scopy_f", error, total_error) ! /* 'NOTA' "none" selection with another hyperslab */ start(1:2) = 0 stride(1:2) = 1 icount(1:2) = 1 - iblock(1:2) = (/5,4/) !5 + iblock(1:2) = (/5,4/) !5 CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTA_F, start, & - icount, error, stride, iblock) + icount, error, stride, iblock) CALL check("h5sselect_hyperslab_f", error, total_error) ! /* Verify that the new selection is the same as the original hyperslab */ CALL H5Sget_select_type_f(space1, sel_type, error) CALL check("H5Sget_select_type_f", error, total_error) CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error) - + ! /* Verify that there is ONLY one BLOCK */ CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error) CALL check("h5sget_select_hyper_nblocks_f", error, total_error) @@ -1747,13 +1747,13 @@ SUBROUTINE test_select_combine(cleanup, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error) CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error) - + ! /* Close temporary dataspace */ CALL h5sclose_f(space1, error) CALL check("h5sclose_f", error, total_error) ! /* Close dataspaces */ - + CALL h5sclose_f(base_id, error) CALL check("h5sclose_f", error, total_error) CALL h5sclose_f(all_id, error) @@ -1771,8 +1771,8 @@ END SUBROUTINE test_select_combine !****************************************************************/ SUBROUTINE test_select_bounds(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error @@ -1781,7 +1781,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) INTEGER, PARAMETER :: SPACE11_DIM1=100 INTEGER, PARAMETER :: SPACE11_DIM2=50 INTEGER, PARAMETER :: SPACE11_NPOINTS=4 - + INTEGER(hid_t) :: sid ! /* Dataspace ID */ INTEGER(hsize_t), DIMENSION(1:SPACE11_RANK) :: dims = (/SPACE11_DIM1, SPACE11_DIM2/) !Dataspace dimensions INTEGER(hsize_t), DIMENSION(SPACE11_RANK, SPACE11_NPOINTS) :: coord !/* Coordinates for point selection @@ -1792,7 +1792,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) INTEGER(hssize_t), DIMENSION(SPACE11_RANK) :: offset !/* Offset amount for selection */ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: low_bounds !/* The low bounds for the selection */ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: high_bounds !/* The high bounds for the selection */ - + INTEGER :: error !/* Create dataspace */ @@ -1836,7 +1836,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error) !/* Set point selection */ - + coord(1,1)= 3; coord(2,1)= 3; coord(1,2)= 3; coord(2,2)= 46; coord(1,3)= 96; coord(2,3)= 3; @@ -1863,7 +1863,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) ! /* Get bounds for hyperslab selection with negative offset */ CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error) CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error) - + ! /* Set valid offset for selection */ offset(1:2) = (/2,-2/) CALL H5Soffset_simple_f(sid, offset, error) @@ -1888,9 +1888,9 @@ SUBROUTINE test_select_bounds(cleanup, total_error) stride(1:2) = 10 count(1:2) = 4 block(1:2) = 5 - + CALL h5sselect_hyperslab_f(sid, H5S_SELECT_SET_F, start, & - count, error, stride, block) + count, error, stride, block) CALL check("h5sselect_hyperslab_f", error, total_error) !/* Get bounds for hyperslab selection */ @@ -1929,7 +1929,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) offset(1:2) = 0 CALL H5Soffset_simple_f(sid, offset, error) CALL check("H5Soffset_simple_f", error, total_error) - + ! /* Make "irregular" hyperslab selection */ start(1:2) = 20 stride(1:2) = 20 @@ -1937,7 +1937,7 @@ SUBROUTINE test_select_bounds(cleanup, total_error) block(1:2) = 10 CALL h5sselect_hyperslab_f(sid, H5S_SELECT_OR_F, start, & - count, error, stride, block) + count, error, stride, block) CALL check("h5sselect_hyperslab_f", error, total_error) !/* Get bounds for hyperslab selection */ diff --git a/fortran/test/tH5T.f90 b/fortran/test/tH5T.f90 index 5a17a21..d298694 100644 --- a/fortran/test/tH5T.f90 +++ b/fortran/test/tH5T.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE compoundtest(cleanup, total_error) ! @@ -30,20 +30,20 @@ ! h5tequal_f, h5tinsert_array_f, h5tcommit_f, h5tencode_f, h5tdecode_f - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=8), PARAMETER :: filename = "compound" ! File name CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=8), PARAMETER :: dsetname = "Compound" ! Dataset name INTEGER, PARAMETER :: dimsize = 6 ! Size of the dataset - INTEGER, PARAMETER :: COMP_NUM_MEMBERS = 4 ! Number of members in the compound datatype + INTEGER, PARAMETER :: COMP_NUM_MEMBERS = 4 ! Number of members in the compound datatype - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: dtype_id ! Compound datatype identifier INTEGER(HID_T) :: dtarray_id ! Compound datatype identifier @@ -52,8 +52,8 @@ INTEGER(HID_T) :: dt2_id ! Memory datatype identifier (for integer field) INTEGER(HID_T) :: dt3_id ! Memory datatype identifier (for double precision field) INTEGER(HID_T) :: dt4_id ! Memory datatype identifier (for real field) - INTEGER(HID_T) :: dt5_id ! Memory datatype identifier - INTEGER(HID_T) :: membtype_id ! Datatype identifier + INTEGER(HID_T) :: dt5_id ! Memory datatype identifier + INTEGER(HID_T) :: membtype_id ! Datatype identifier INTEGER(HID_T) :: plist_id ! Dataset trasfer property @@ -62,7 +62,7 @@ INTEGER :: error ! Error flag INTEGER(SIZE_T) :: type_size ! Size of the datatype - INTEGER(SIZE_T) :: type_sizec ! Size of the character datatype + INTEGER(SIZE_T) :: type_sizec ! Size of the character datatype INTEGER(SIZE_T) :: type_sizei ! Size of the integer datatype INTEGER(SIZE_T) :: type_sized ! Size of the double precision datatype INTEGER(SIZE_T) :: type_sizer ! Size of the real datatype @@ -77,10 +77,10 @@ REAL, DIMENSION(dimsize) :: real_member REAL, DIMENSION(dimsize) :: real_member_out INTEGER :: i - INTEGER :: class ! Datatype class + INTEGER :: class ! Datatype class INTEGER :: num_members ! Number of members in the compound datatype - CHARACTER(LEN=256) :: member_name - INTEGER :: len ! Lenght of the name of the compound datatype member + CHARACTER(LEN=256) :: member_name + INTEGER :: len ! Lenght of the name of the compound datatype member INTEGER :: member_index ! index of the field INTEGER(HSIZE_T), DIMENSION(3) :: array_dims=(/2,3,4/) INTEGER :: array_dims_range = 3 @@ -88,7 +88,7 @@ INTEGER(SIZE_T) :: sizechar INTEGER(HSIZE_T), DIMENSION(1) :: data_dims LOGICAL :: flag = .TRUE. - + CHARACTER(LEN=1024) :: cmpd_buf INTEGER(SIZE_T) :: cmpd_buf_size=0 INTEGER(HID_T) :: decoded_sid1 @@ -101,8 +101,8 @@ do i = 1, dimsize char_member(i)(1:1) = char(65+i) char_member(i)(2:2) = char(65+i) - char_member_out(i)(1:1) = char(65) - char_member_out(i)(2:2) = char(65) + char_member_out(i)(1:1) = char(65) + char_member_out(i)(2:2) = char(65) int_member(i) = i int_member_out(i) = 0 double_member(i) = 2.* i @@ -121,7 +121,7 @@ CALL check("h5pset_preserve_f", error, total_error) ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -130,7 +130,7 @@ CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error) CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -198,19 +198,19 @@ !!$ ! /* Try decoding bogus buffer */ !!$ !!$ CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error) -!!$ CALL VERIFY("H5Tdecode_f", error, -1, total_error) -!!$ +!!$ CALL VERIFY("H5Tdecode_f", error, -1, total_error) +!!$ !!$ CALL H5Tencode_f(dtype_id, cmpd_buf, cmpd_buf_size, error) !!$ CALL check("H5Tencode_f", error, total_error) !!$ !!$ ! /* Decode from the compound buffer and return an object handle */ !!$ CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error) -!!$ CALL check("H5Tdecode_f", error, total_error) +!!$ CALL check("H5Tdecode_f", error, total_error) !!$ !!$ ! /* Verify that the datatype was copied exactly */ -!!$ +!!$ !!$ CALL H5Tequal_f(decoded_tid1, dtype_id, flag, error) -!!$ CALL check("H5Tequal_f", error, total_error) +!!$ CALL check("H5Tequal_f", error, total_error) !!$ CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error) ! @@ -220,8 +220,8 @@ dset_id, error) CALL check("h5dcreate_f", error, total_error) ! - ! Create memory types. We have to create a compound datatype - ! for each member we want to write. + ! Create memory types. We have to create a compound datatype + ! for each member we want to write. ! CALL h5tcreate_f(H5T_COMPOUND_F, type_sizec, dt1_id, error) CALL check("h5tcreate_f", error, total_error) @@ -258,9 +258,9 @@ CALL h5dwrite_f(dset_id, dt2_id, int_member, data_dims, error, xfer_prp = plist_id) CALL check("h5dwrite_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -284,7 +284,7 @@ CALL check("h5tclose_f", error, total_error) ! - ! Create and store compound datatype with the character and + ! Create and store compound datatype with the character and ! array members. ! type_size = type_sizec + elements*type_sizer ! Size of compound datatype @@ -304,13 +304,13 @@ CALL check("h5tclose_f", error, total_error) CALL h5tclose_f(dtarray_id, error) CALL check("h5tclose_f", error, total_error) - - ! + + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) - + ! ! Open the file. ! @@ -324,7 +324,7 @@ ! ! Get datatype of the open dataset. ! Check it class, number of members, and member's names. - ! + ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f", error, total_error) CALL h5tget_class_f(dtype_id, class, error) @@ -361,7 +361,7 @@ if(offset_out .ne. 0) then write(*,*) "Offset of the char member is incorrect" total_error = total_error + 1 - endif + endif CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error) CALL check("h5tget_member_type_f", error, total_error) CALL h5tequal_f(membtype_id, dt5_id, flag, error) @@ -369,7 +369,7 @@ if(.not. flag) then write(*,*) "Wrong member type returned for character member" total_error = total_error + 1 - endif + endif CALL h5tget_member_class_f(dtype_id, i-1, class, error) CALL check("h5tget_member_class_f",error, total_error) if (class .ne. H5T_STRING_F) then @@ -380,7 +380,7 @@ if(offset_out .ne. type_sizec) then write(*,*) "Offset of the integer member is incorrect" total_error = total_error + 1 - endif + endif CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error) CALL check("h5tget_member_type_f", error, total_error) CALL h5tequal_f(membtype_id, H5T_NATIVE_INTEGER, flag, error) @@ -388,7 +388,7 @@ if(.not. flag) then write(*,*) "Wrong member type returned for integer memebr" total_error = total_error + 1 - endif + endif CALL h5tget_member_class_f(dtype_id, i-1, class, error) CALL check("h5tget_member_class_f",error, total_error) if (class .ne. H5T_INTEGER_F) then @@ -399,7 +399,7 @@ if(offset_out .ne. (type_sizec+type_sizei)) then write(*,*) "Offset of the double precision member is incorrect" total_error = total_error + 1 - endif + endif CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error) CALL check("h5tget_member_type_f", error, total_error) CALL h5tequal_f(membtype_id, H5T_NATIVE_DOUBLE, flag, error) @@ -407,7 +407,7 @@ if(.not. flag) then write(*,*) "Wrong member type returned for double precision memebr" total_error = total_error + 1 - endif + endif CALL h5tget_member_class_f(dtype_id, i-1, class, error) CALL check("h5tget_member_class_f",error, total_error) if (class .ne. H5T_FLOAT_F) then @@ -418,7 +418,7 @@ if(offset_out .ne. (type_sizec+type_sizei+type_sized)) then write(*,*) "Offset of the real member is incorrect" total_error = total_error + 1 - endif + endif CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error) CALL check("h5tget_member_type_f", error, total_error) CALL h5tequal_f(membtype_id, H5T_NATIVE_REAL, flag, error) @@ -426,7 +426,7 @@ if(.not. flag) then write(*,*) "Wrong member type returned for real memebr" total_error = total_error + 1 - endif + endif CALL h5tget_member_class_f(dtype_id, i-1, class, error) CALL check("h5tget_member_class_f",error, total_error) if (class .ne. H5T_FLOAT_F) then @@ -436,7 +436,7 @@ CASE DEFAULT write(*,*) "Wrong member's name" total_error = total_error + 1 - + END SELECT CHECK_NAME enddo @@ -445,7 +445,7 @@ ! CALL h5tcopy_f(H5T_NATIVE_CHARACTER, dt2_id, error) CALL check("h5tcopy_f", error, total_error) - sizechar = 2 + sizechar = 2 CALL h5tset_size_f(dt2_id, sizechar, error) CALL check("h5tset_size_f", error, total_error) CALL h5tget_size_f(dt2_id, type_size, error) @@ -533,19 +533,19 @@ ! /* Try decoding bogus buffer */ CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error) - CALL VERIFY("H5Tdecode_f", error, -1, total_error) - + CALL VERIFY("H5Tdecode_f", error, -1, total_error) + CALL H5Tencode_f(dtype_id, cmpd_buf, cmpd_buf_size, error) CALL check("H5Tencode_f", error, total_error) ! /* Decode from the compound buffer and return an object handle */ CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error) - CALL check("H5Tdecode_f", error, total_error) + CALL check("H5Tdecode_f", error, total_error) ! /* Verify that the datatype was copied exactly */ - + CALL H5Tequal_f(decoded_tid1, dtype_id, flag, error) - CALL check("H5Tequal_f", error, total_error) + CALL check("H5Tequal_f", error, total_error) CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error) ! ! Close all open objects. @@ -572,35 +572,35 @@ - + SUBROUTINE basic_data_type_test(cleanup, total_error) -! This subroutine tests following functionalities: +! This subroutine tests following functionalities: ! H5tget_precision_f, H5tset_precision_f, H5tget_offset_f ! H5tset_offset_f, H5tget_pad_f, H5tset_pad_f, H5tget_sign_f, ! H5tset_sign_f, H5tget_ebias_f,H5tset_ebias_f, H5tget_norm_f, ! H5tset_norm_f, H5tget_inpad_f, H5tset_inpad_f, H5tget_cset_f, ! H5tset_cset_f, H5tget_strpad_f, H5tset_strpad_f - USE HDF5 ! This module contains all necessary modules - + USE HDF5 ! This module contains all necessary modules + IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error - INTEGER(HID_T) :: dtype1_id, dtype2_id, dtype3_id, dtype4_id, dtype5_id + INTEGER(HID_T) :: dtype1_id, dtype2_id, dtype3_id, dtype4_id, dtype5_id ! datatype identifiers INTEGER(SIZE_T) :: precision ! Datatype precision INTEGER(SIZE_T) :: setprecision ! Datatype precision INTEGER(SIZE_T) :: offset ! Datatype offset INTEGER(SIZE_T) :: setoffset ! Datatype offset - INTEGER :: lsbpad !padding type of the least significant bit - INTEGER :: msbpad !padding type of the most significant bit - INTEGER :: sign !sign type for an integer type - INTEGER(SIZE_T) :: ebias1 !Datatype exponent bias of a floating-point type + INTEGER :: lsbpad !padding type of the least significant bit + INTEGER :: msbpad !padding type of the most significant bit + INTEGER :: sign !sign type for an integer type + INTEGER(SIZE_T) :: ebias1 !Datatype exponent bias of a floating-point type INTEGER(SIZE_T) :: ebias2 !Datatype exponent bias of a floating-point type - INTEGER(SIZE_T) :: setebias - INTEGER :: norm !mantissa normalization of a floating-point datatype + INTEGER(SIZE_T) :: setebias + INTEGER :: norm !mantissa normalization of a floating-point datatype INTEGER :: inpad !padding type for unused bits in floating-point datatypes. INTEGER :: cset !character set type of a string datatype INTEGER :: strpad !string padding method for a string datatype @@ -608,7 +608,7 @@ ! - ! Create a datatype + ! Create a datatype ! CALL h5tcopy_f(H5T_STD_U16BE, dtype1_id, error) CALL check("h5tcopy_f",error,total_error) @@ -624,17 +624,17 @@ write (*,*) "got precision is not correct" total_error = total_error + 1 end if - + CALL h5tcopy_f(H5T_STD_I32LE, dtype2_id, error) CALL check("h5tcopy_f",error,total_error) setprecision = 12 CALL h5tset_precision_f(dtype2_id, setprecision, error) CALL check("h5set_precision_f",error,total_error) - setoffset = 2 + setoffset = 2 CALL h5tset_offset_f(dtype1_id, setoffset, error) CALL check("h5set_offset_f",error,total_error) - setoffset = 10 + setoffset = 10 CALL h5tset_offset_f(dtype2_id, setoffset, error) CALL check("h5set_offset_f",error,total_error) CALL h5tget_offset_f(dtype2_id,offset, error) @@ -643,7 +643,7 @@ write (*,*) "got offset is not correct" total_error = total_error + 1 end if - + CALL h5tset_pad_f(dtype2_id,H5T_PAD_ONE_F, H5T_PAD_ONE_F, error) CALL check("h5set_pad_f",error,total_error) CALL h5tget_pad_f(dtype2_id,lsbpad,msbpad, error) @@ -671,7 +671,7 @@ setebias = 257 CALL h5tset_ebias_f(dtype3_id, setebias, error) CALL check("h5tset_ebias_f",error,total_error) - setebias = 1 + setebias = 1 CALL h5tset_ebias_f(dtype4_id, setebias, error) CALL check("h5tset_ebias_f",error,total_error) CALL h5tget_ebias_f(dtype3_id, ebias1, error) @@ -686,7 +686,7 @@ write (*,*) "got ebias is not correct" total_error = total_error + 1 end if - + !attention: !It seems that I can't use H5T_NORM_IMPLIED_F to set the norm value !because I got error for the get_norm function @@ -744,7 +744,7 @@ end if ! we should not apply h5tset_cset_f to non_character data typemake - + ! CALL h5tset_cset_f(dtype4_id, H5T_CSET_ASCII_F, error) ! CALL check("h5tset_cset_f",error,total_error) ! CALL h5tget_cset_f(dtype4_id, cset, error) @@ -803,22 +803,22 @@ IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=4), PARAMETER :: filename="enum" CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=8), PARAMETER :: dsetname="enumdset" CHARACTER(LEN=4) :: true ="TRUE" CHARACTER(LEN=5) :: false="FALSE" - CHARACTER(LEN=5) :: mem_name + CHARACTER(LEN=5) :: mem_name INTEGER(HID_T) :: file_id INTEGER(HID_T) :: dset_id INTEGER(HID_T) :: dspace_id - INTEGER(HID_T) :: dtype_id, dtype, native_type + INTEGER(HID_T) :: dtype_id, dtype, native_type INTEGER :: error INTEGER :: value INTEGER(HSIZE_T), DIMENSION(1) :: dsize - INTEGER(SIZE_T) :: buf_size + INTEGER(SIZE_T) :: buf_size INTEGER, DIMENSION(2) :: data INTEGER(HSIZE_T), DIMENSION(7) :: dims INTEGER :: order1, order2 @@ -831,7 +831,7 @@ data(2) = 0 ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) IF (error .NE. 0) THEN WRITE(*,*) "Cannot modify filename" @@ -869,7 +869,7 @@ CALL check("H5Tget_order_f",error, total_error) CALL H5Tget_order_f(H5T_NATIVE_INTEGER, order2, error) CALL check("H5Tget_order_f",error, total_error) - CALL VERIFY("H5Tget_native_type_f",order1, order2, total_error) + CALL VERIFY("H5Tget_native_type_f",order1, order2, total_error) ! this test depends on whether -i8 was specified @@ -877,12 +877,12 @@ !!$ CALL check("H5Tget_size_f",error, total_error) !!$ CALL H5Tget_size_f(H5T_STD_I32BE, type_size2, error) !!$ CALL check("H5Tget_size_f",error, total_error) -!!$ CALL VERIFY("H5Tget_native_type_f", INT(type_size1), INT(type_size2), total_error) +!!$ CALL VERIFY("H5Tget_native_type_f", INT(type_size1), INT(type_size2), total_error) CALL H5Tget_class_f(native_type, class, error) CALL check("H5Tget_class_f",error, total_error) - CALL VERIFY("H5Tget_native_type_f", INT(class), INT(H5T_ENUM_F), total_error) - + CALL VERIFY("H5Tget_native_type_f", INT(class), INT(H5T_ENUM_F), total_error) + CALL h5dclose_f(dset_id,error) CALL check("h5dclose_f", error, total_error) CALL h5sclose_f(dspace_id,error) @@ -937,17 +937,17 @@ ! *------------------------------------------------------------------------- ! */ -SUBROUTINE test_derived_flt(cleanup, total_error) +SUBROUTINE test_derived_flt(cleanup, total_error) + + USE HDF5 ! This module contains all necessary modules - USE HDF5 ! This module contains all necessary modules - IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup INTEGER, INTENT(OUT) :: total_error INTEGER(hid_t) :: file=-1, tid1=-1, tid2=-1 INTEGER(hid_t) :: dxpl_id=-1 INTEGER(size_t) :: spos, epos, esize, mpos, msize, size - + CHARACTER(LEN=15), PARAMETER :: filename="h5t_derived_flt" CHARACTER(LEN=80) :: fix_filename @@ -965,7 +965,7 @@ SUBROUTINE test_derived_flt(cleanup, total_error) CALL h5fcreate_f(fix_filename,H5F_ACC_TRUNC_F,file,error) CALL check("h5fcreate_f", error, total_error) - + CALL h5pcreate_f(H5P_DATASET_XFER_F, dxpl_id, error) CALL check("h5pcreate_f", error, total_error) @@ -1031,7 +1031,7 @@ SUBROUTINE test_derived_flt(cleanup, total_error) CALL H5Tget_precision_f(tid1, precision1, error) CALL check("H5Tget_precision_f", error, total_error) - CALL VERIFY("H5Tget_precision_f", INT(precision1), 42, total_error) + CALL VERIFY("H5Tget_precision_f", INT(precision1), 42, total_error) CALL H5Tget_offset_f(tid1, offset1, error) CALL check("H5Tget_offset_f", error, total_error) @@ -1092,7 +1092,7 @@ SUBROUTINE test_derived_flt(cleanup, total_error) CALL H5Tget_precision_f(tid2, precision2, error) CALL check("H5Tget_precision_f", error, total_error) - CALL VERIFY("H5Tget_precision_f", INT(precision2), 24, total_error) + CALL VERIFY("H5Tget_precision_f", INT(precision2), 24, total_error) CALL H5Tget_offset_f(tid2, offset2, error) CALL check("H5Tget_offset_f", error, total_error) diff --git a/fortran/test/tH5VL.f90 b/fortran/test/tH5VL.f90 index 13f2af1..3afd025 100644 --- a/fortran/test/tH5VL.f90 +++ b/fortran/test/tH5VL.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,34 +11,34 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! Testing Variable_length datatypes ! ! ! SUBROUTINE vl_test_integer(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=7), PARAMETER :: filename = "VLtypes" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=5), PARAMETER :: dsetname = "VLint" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: vltype_id ! Datatype identifier INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/6/) ! Dataset dimensions - INTEGER(SIZE_T), DIMENSION(6) :: len ! Elements lengths - INTEGER(SIZE_T), DIMENSION(6) :: len_out + INTEGER(SIZE_T), DIMENSION(6) :: len ! Elements lengths + INTEGER(SIZE_T), DIMENSION(6) :: len_out INTEGER :: rank = 1 ! Dataset rank INTEGER, DIMENSION(5,6) :: vl_int_data ! Data buffers @@ -52,14 +52,14 @@ ! ! Initialize the vl_int_data array. ! - do i = 1, 6 - do j = 1, 5 + do i = 1, 6 + do j = 1, 5 vl_int_data(j,i) = -100 end do end do - do i = 2, 6 - do j = 1, i-1 + do i = 2, 6 + do j = 1, i-1 vl_int_data(j,i) = i-1 end do end do @@ -71,7 +71,7 @@ ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -81,7 +81,7 @@ CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -105,13 +105,13 @@ CALL check("h5dwrite_int_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -124,11 +124,11 @@ CALL check("h5fopen_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) - + CALL h5dvlen_get_max_len_f(dset_id, vltype_id, dspace_id, max_len, error) CALL check("h5dvlen_get_max_len_f", error, total_error) if(max_len .ne. data_dims(1)) then @@ -168,37 +168,37 @@ CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + RETURN END SUBROUTINE vl_test_integer SUBROUTINE vl_test_real(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=8), PARAMETER :: filename = "VLtypesR" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=6), PARAMETER :: dsetname = "VLreal" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: vltype_id ! Datatype identifier INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/6/) ! Dataset dimensions - INTEGER(SIZE_T), DIMENSION(6) :: len ! Elements lengths - INTEGER(SIZE_T), DIMENSION(6) :: len_out + INTEGER(SIZE_T), DIMENSION(6) :: len ! Elements lengths + INTEGER(SIZE_T), DIMENSION(6) :: len_out INTEGER :: rank = 1 ! Dataset rank REAL, DIMENSION(5,6) :: vl_real_data ! Data buffers @@ -214,14 +214,14 @@ ! ! Initialize the vl_int_data array. ! - do i = 1, 6 - do j = 1, 5 + do i = 1, 6 + do j = 1, 5 vl_real_data(j,i) = -100. end do end do - do i = 2, 6 - do j = 1, i-1 + do i = 2, 6 + do j = 1, i-1 vl_real_data(j,i) = i-1 end do end do @@ -233,7 +233,7 @@ ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -243,7 +243,7 @@ CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -276,13 +276,13 @@ CALL check("h5dwrite_vl_real_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -295,11 +295,11 @@ CALL check("h5fopen_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) - + CALL h5dvlen_get_max_len_f(dset_id, vltype_id, dspace_id, max_len, error) CALL check("h5dvlen_get_max_len_f", error, total_error) if(max_len .ne. data_dims(1)) then @@ -339,36 +339,36 @@ CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + RETURN END SUBROUTINE vl_test_real SUBROUTINE vl_test_string(cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error CHARACTER(LEN=8), PARAMETER :: filename = "VLtypesS" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=9), PARAMETER :: dsetname = "VLstrings" ! Dataset name - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/4/) ! Dataset dimensions - INTEGER(SIZE_T), DIMENSION(4) :: str_len ! Elements lengths - INTEGER(SIZE_T), DIMENSION(4) :: str_len_out + INTEGER(SIZE_T), DIMENSION(4) :: str_len ! Elements lengths + INTEGER(SIZE_T), DIMENSION(4) :: str_len_out INTEGER :: rank = 1 ! Dataset rank CHARACTER(LEN=10), DIMENSION(4) :: string_data ! Array of strings @@ -388,14 +388,14 @@ string_data(2) = 'a fortran ' str_len(2) = 10 string_data(3) = 'strings ' - str_len(3) = 8 + str_len(3) = 8 string_data(4) = 'test. ' - str_len(4) = 5 + str_len(4) = 5 ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -405,7 +405,7 @@ CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) @@ -437,13 +437,13 @@ CALL check("h5dwrite_string_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -456,7 +456,7 @@ CALL check("h5fopen_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) @@ -471,13 +471,13 @@ total_error=total_error + 1 write(*,*) 'Returned string length is incorrect' goto 100 - endif + endif if(string_data(1)(1:str_len(i)) .ne. string_data_out(1)(1:str_len(i))) then write(*,*) ' Returned string is wrong' total_error = total_error + 1 endif -100 continue - +100 continue + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -488,14 +488,14 @@ CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) CALL check("h5fclose_f", error, total_error) if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) - + RETURN END SUBROUTINE vl_test_string diff --git a/fortran/test/tH5Z.f90 b/fortran/test/tH5Z.f90 index ea567a2..6262528 100644 --- a/fortran/test/tH5Z.f90 +++ b/fortran/test/tH5Z.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,17 +11,17 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! SUBROUTINE filters_test(cleanup, total_error) ! This subroutine tests following functionalities: h5zfilter_avail_f, h5zunregister_f - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error + INTEGER, INTENT(OUT) :: total_error LOGICAL :: status INTEGER(HID_T) :: crtpr_id, xfer_id INTEGER :: nfilters @@ -44,11 +44,11 @@ CALL h5pset_chunk_f(crtpr_id, RANK, ch_dims, error) CALL check("h5pset_chunk_f",error, total_error) CALL h5pset_deflate_f(crtpr_id, dlevel, error) - CALL check("h5pset_deflate_f", error, total_error) + CALL check("h5pset_deflate_f", error, total_error) CALL h5pclose_f(crtpr_id,error) CALL check("h5pclose_f", error, total_error) endif - + ! ! Shuffle filter ! @@ -60,11 +60,11 @@ CALL h5pset_chunk_f(crtpr_id, RANK, ch_dims, error) CALL check("h5pset_chunk_f",error, total_error) CALL h5pset_shuffle_f(crtpr_id, error) - CALL check("h5pset_shuffle_f", error, total_error) + CALL check("h5pset_shuffle_f", error, total_error) CALL h5pclose_f(crtpr_id,error) CALL check("h5pclose_f", error, total_error) endif - + ! ! Checksum filter ! @@ -76,7 +76,7 @@ CALL h5pset_chunk_f(crtpr_id, RANK, ch_dims, error) CALL check("h5pset_chunk_f",error, total_error) CALL h5pset_fletcher32_f(crtpr_id, error) - CALL check("h5pset_fletcher32_f", error, total_error) + CALL check("h5pset_fletcher32_f", error, total_error) CALL h5pclose_f(crtpr_id,error) CALL check("h5pclose_f", error, total_error) CALL h5pcreate_f(H5P_DATASET_XFER_F, xfer_id, error) @@ -106,11 +106,11 @@ CALL h5pcreate_f(H5P_DATASET_CREATE_F, crtpr_id, error) CALL check("h5pcreate_f", error, total_error) CALL h5pset_fletcher32_f(crtpr_id, error) - CALL check("h5pset_fletcher32_f", error, total_error) + CALL check("h5pset_fletcher32_f", error, total_error) CALL h5pset_shuffle_f(crtpr_id, error) - CALL check("h5pset_shuffle_f", error, total_error) + CALL check("h5pset_shuffle_f", error, total_error) CALL h5pget_nfilters_f(crtpr_id, nfilters, error) - CALL check("h5pget_nfilters_f", error, total_error) + CALL check("h5pget_nfilters_f", error, total_error) ! Verify the correct number of filters if (nfilters .ne. 2) then @@ -120,11 +120,11 @@ ! Delete a single filter CALL h5premove_filter_f(crtpr_id, H5Z_FILTER_SHUFFLE_F, error) - CALL check("h5pset_shuffle_f", error, total_error) + CALL check("h5pset_shuffle_f", error, total_error) ! Verify the correct number of filters now CALL h5pget_nfilters_f(crtpr_id, nfilters, error) - CALL check("h5pget_nfilters_f", error, total_error) + CALL check("h5pget_nfilters_f", error, total_error) if (nfilters .ne. 1) then write(*,*) "number of filters is wrong" total_error = total_error + 1 @@ -132,11 +132,11 @@ ! Delete all filters CALL h5premove_filter_f(crtpr_id, H5Z_FILTER_ALL_F, error) - CALL check("h5premove_filter_f", error, total_error) + CALL check("h5premove_filter_f", error, total_error) ! Verify the correct number of filters now CALL h5pget_nfilters_f(crtpr_id, nfilters, error) - CALL check("h5pget_nfilters_f", error, total_error) + CALL check("h5pget_nfilters_f", error, total_error) if (nfilters .ne. 0) then write(*,*) "number of filters is wrong" total_error = total_error + 1 @@ -150,24 +150,24 @@ END SUBROUTINE filters_test SUBROUTINE szip_test(szip_flag, cleanup, total_error) - USE HDF5 ! This module contains all necessary modules + USE HDF5 ! This module contains all necessary modules IMPLICIT NONE LOGICAL, INTENT(OUT) :: szip_flag LOGICAL, INTENT(IN) :: cleanup - INTEGER, INTENT(OUT) :: total_error - + INTEGER, INTENT(OUT) :: total_error + CHARACTER(LEN=4), PARAMETER :: filename = "szip" ! File name - CHARACTER(LEN=80) :: fix_filename + CHARACTER(LEN=80) :: fix_filename CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name INTEGER, PARAMETER :: N = 1024 INTEGER, PARAMETER :: NN = 64 INTEGER, PARAMETER :: M = 512 INTEGER, PARAMETER :: MM = 32 - INTEGER(HID_T) :: file_id ! File identifier - INTEGER(HID_T) :: dset_id ! Dataset identifier + INTEGER(HID_T) :: file_id ! File identifier + INTEGER(HID_T) :: dset_id ! Dataset identifier INTEGER(HID_T) :: dspace_id ! Dataspace identifier INTEGER(HID_T) :: dtype_id ! Datatype identifier @@ -183,9 +183,9 @@ INTEGER :: i, j !general purpose integers INTEGER(HSIZE_T), DIMENSION(2) :: data_dims INTEGER(HID_T) :: crp_list - INTEGER :: options_mask, pix_per_block + INTEGER :: options_mask, pix_per_block LOGICAL :: flag - CHARACTER(LEN=4) filter_name + CHARACTER(LEN=4) filter_name INTEGER :: filter_flag = -1 INTEGER(SIZE_T) :: cd_nelemnts = 4 @@ -213,7 +213,7 @@ CALL h5zget_filter_info_f(H5Z_FILTER_SZIP_F, config_flag, error) CALL check("h5zget_filter_info_f", error, total_error) ! Quit if failed - if (error .ne. 0) return + if (error .ne. 0) return ! ! Make sure h5zget_filter_info_f returns the right flag ! @@ -225,10 +225,10 @@ CALL check("h5zget_filter_info_f config_flag", error, total_error) endif endif - endif + endif ! Continue only when encoder is available - if ( IAND(config_flag, H5Z_FILTER_ENCODE_ENABLED_F) .EQ. 0 ) return + if ( IAND(config_flag, H5Z_FILTER_ENCODE_ENABLED_F) .EQ. 0 ) return options_mask = H5_SZIP_NN_OM_F pix_per_block = 32 @@ -244,7 +244,7 @@ ! ! Create a new file using default properties. - ! + ! CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error) if (error .ne. 0) then write(*,*) "Cannot modify filename" @@ -254,12 +254,12 @@ CALL check("h5fcreate_f", error, total_error) - ! + ! ! Create the dataspace. ! CALL h5screate_simple_f(rank, dims, dspace_id, error) CALL check("h5screate_simple_f", error, total_error) - + CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error) CALL check("h5pcreat_f",error,total_error) @@ -277,11 +277,11 @@ total_error = -1 return endif - + CALL h5pget_filter_by_id_f(crp_list, H5Z_FILTER_SZIP_F, filter_flag, & - + cd_nelemnts, cd_values,& - + filter_name_len, filter_name, error) CALL check("h5pget_filter_by_id_f",error,total_error) ! @@ -300,9 +300,9 @@ CALL check("h5dwrite_f", error, total_error) - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -312,7 +312,7 @@ CALL h5sclose_f(dspace_id, error) CALL check("h5sclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5pclose_f(crp_list, error) @@ -326,20 +326,20 @@ CALL check("h5fopen_f", error, total_error) ! - ! Open the existing dataset. + ! Open the existing dataset. ! CALL h5dopen_f(file_id, dsetname, dset_id, error) CALL check("h5dopen_f", error, total_error) CALL check("h5pget_filter_by_id_f",error,total_error) ! - ! Get the dataset type. + ! Get the dataset type. ! CALL h5dget_type_f(dset_id, dtype_id, error) CALL check("h5dget_type_f", error, total_error) ! - ! Get the data space. + ! Get the data space. ! CALL h5dget_space_f(dset_id, dspace_id, error) CALL check("h5dget_space_f", error, total_error) @@ -352,10 +352,10 @@ ! !Compare the data. - ! + ! do i = 1, N do j = 1, M - IF (data_out(i,j) .NE. dset_data(i, j)) THEN + IF (data_out(i,j) .NE. dset_data(i, j)) THEN write(*, *) "dataset test error occured" write(*,*) "data read is not the same as the data written" num_errors = num_errors + 1 @@ -364,15 +364,15 @@ goto 100 END IF END IF - end do + end do end do 100 IF (num_errors .GT. 0) THEN total_error=total_error + 1 END IF - ! + ! ! End access to the dataset and release resources used by it. - ! + ! CALL h5dclose_f(dset_id, error) CALL check("h5dclose_f", error, total_error) @@ -387,7 +387,7 @@ ! CALL h5tclose_f(dtype_id, error) CALL check("h5tclose_f", error, total_error) - ! + ! ! Close the file. ! CALL h5fclose_f(file_id, error) @@ -395,6 +395,6 @@ if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error) CALL check("h5_cleanup_f", error, total_error) endif ! SZIP available - + RETURN END SUBROUTINE szip_test diff --git a/fortran/test/tf.f90 b/fortran/test/tf.f90 index b4956ea..51c9410 100644 --- a/fortran/test/tf.f90 +++ b/fortran/test/tf.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,10 +11,10 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! ! ! -! ! This file contains subroutines which are used in ! all the hdf5 fortran tests ! @@ -22,7 +22,7 @@ !This definition is needed for Windows DLLs !DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: write_test_status +!DEC$attributes dllexport :: write_test_status !DEC$endif SUBROUTINE write_test_status( test_result, test_title, total_error) @@ -31,7 +31,7 @@ IMPLICIT NONE INTEGER, INTENT(IN) :: test_result ! negative, --skip -- - ! 0 , passed + ! 0 , passed ! positive, failed CHARACTER(LEN=*), INTENT(IN) :: test_title ! Short description of test @@ -51,9 +51,9 @@ ELSE IF (test_result == -1) THEN error_string = skip ENDIF - + WRITE(*, fmt = '(A, T72, A)') test_title, error_string - + IF(test_result.GT.0) total_error = total_error + test_result END SUBROUTINE write_test_status @@ -119,19 +119,19 @@ END SUBROUTINE verifyString !---------------------------------------------------------------------- -! Name: h5_fixname_f +! Name: h5_fixname_f ! ! Purpose: Create a file name from the a file base name. ! It is a fortran counterpart for the h5_fixname in ../../test/h5test.c ! -! Inputs: -! base_name - base name of the file -! fapl - file access property list -! Outputs: +! Inputs: +! base_name - base name of the file +! fapl - file access property list +! Outputs: ! full_name - full file name -! hdferr: - error code +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! September 13, 2002 @@ -144,13 +144,13 @@ SUBROUTINE h5_fixname_f(base_name, full_name, fapl, hdferr) !DEC$if defined(BUILD_HDF5_DLL) !DEC$attributes dllexport :: h5_fixname_f !DEC$endif - USE H5GLOBAL + USE H5GLOBAL IMPLICIT NONE - CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name - CHARACTER(LEN=*), INTENT(IN) :: full_name ! full name - INTEGER, INTENT(OUT) :: hdferr ! Error code + CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name + CHARACTER(LEN=*), INTENT(IN) :: full_name ! full name + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), INTENT(IN) :: fapl ! file access property list - + INTEGER(SIZE_T) :: base_namelen ! Length of the base name character string INTEGER(SIZE_T) :: full_namelen ! Length of the full name character string ! INTEGER(HID_T) :: fapl_default @@ -162,8 +162,8 @@ SUBROUTINE h5_fixname_f(base_name, full_name, fapl, hdferr) !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5_FIXNAME_C':: h5_fixname_c !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: base_name - !DEC$ATTRIBUTES reference :: full_name + !DEC$ATTRIBUTES reference :: base_name + !DEC$ATTRIBUTES reference :: full_name CHARACTER(LEN=*), INTENT(IN) :: base_name INTEGER(SIZE_T) :: base_namelen INTEGER(HID_T), INTENT(IN) :: fapl @@ -171,27 +171,27 @@ SUBROUTINE h5_fixname_f(base_name, full_name, fapl, hdferr) INTEGER(SIZE_T) :: full_namelen END FUNCTION h5_fixname_c END INTERFACE - + base_namelen = LEN(base_name) full_namelen = LEN(full_name) hdferr = h5_fixname_c(base_name, base_namelen, fapl, & - full_name, full_namelen) - + full_name, full_namelen) + END SUBROUTINE h5_fixname_f - + !---------------------------------------------------------------------- -! Name: h5_cleanup_f +! Name: h5_cleanup_f ! ! Purpose: Cleanups tests files ! It is a fortran counterpart for the h5_cleanup in ../../test/h5test.c ! -! Inputs: -! base_name - base name of the file -! fapl - file access property list -! Outputs: -! hdferr: - error code +! Inputs: +! base_name - base name of the file +! fapl - file access property list +! Outputs: +! hdferr: - error code ! Success: 0 -! Failure: -1 +! Failure: -1 ! ! Programmer: Elena Pourmal ! September 19, 2002 @@ -204,34 +204,34 @@ SUBROUTINE h5_cleanup_f(base_name, fapl, hdferr) !DEC$if defined(BUILD_HDF5_DLL) !DEC$attributes dllexport :: h5_cleanup_f !DEC$endif - USE H5GLOBAL + USE H5GLOBAL IMPLICIT NONE - CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name - INTEGER, INTENT(OUT) :: hdferr ! Error code + CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name + INTEGER, INTENT(OUT) :: hdferr ! Error code INTEGER(HID_T), INTENT(IN) :: fapl ! file access property list - + INTEGER(SIZE_T) :: base_namelen ! Length of the base name character string - + INTERFACE INTEGER FUNCTION h5_cleanup_c(base_name, base_namelen, fapl) USE H5GLOBAL !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5_CLEANUP_C':: h5_cleanup_c !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: base_name + !DEC$ATTRIBUTES reference :: base_name CHARACTER(LEN=*), INTENT(IN) :: base_name INTEGER(SIZE_T) :: base_namelen INTEGER(HID_T), INTENT(IN) :: fapl END FUNCTION h5_cleanup_c END INTERFACE - + base_namelen = LEN(base_name) hdferr = h5_cleanup_c(base_name, base_namelen, fapl) - + END SUBROUTINE h5_cleanup_f !---------------------------------------------------------------------- -! Name: h5_exit_f +! Name: h5_exit_f ! ! Purpose: Exit application ! It is a fortran counterpart for the standard C 'exit()' routine @@ -239,10 +239,10 @@ END SUBROUTINE h5_cleanup_f ! UNIX supports a very small range such as 1 byte. ! Therefore, exit(256) may end up as exit(0). ! -! Inputs: +! Inputs: ! status - Status to return from application ! -! Outputs: +! Outputs: ! none ! ! Programmer: Quincey Koziol @@ -258,7 +258,7 @@ SUBROUTINE h5_exit_f(status) !DEC$endif IMPLICIT NONE INTEGER, INTENT(IN) :: status ! Return code - + INTERFACE SUBROUTINE h5_exit_c(status) !DEC$ IF DEFINED(HDF5F90_WINDOWS) @@ -267,18 +267,18 @@ SUBROUTINE h5_exit_f(status) INTEGER, INTENT(IN) :: status END SUBROUTINE h5_exit_c END INTERFACE - + CALL h5_exit_c(status) - -END SUBROUTINE h5_exit_f + +END SUBROUTINE h5_exit_f !---------------------------------------------------------------------- -! Name: h5_env_nocleanup_f +! Name: h5_env_nocleanup_f ! -! Purpose: Uses the HDF5_NOCLEANUP environment variable in Fortran +! Purpose: Uses the HDF5_NOCLEANUP environment variable in Fortran ! tests to determine if the output files should be removed ! -! Inputs: +! Inputs: ! ! Outputs: HDF5_NOCLEANUP: .true. - don't remove test files ! .false. - remove test files @@ -305,13 +305,13 @@ SUBROUTINE h5_env_nocleanup_f(HDF5_NOCLEANUP) INTEGER :: status END SUBROUTINE h5_env_nocleanup_c END INTERFACE - + CALL h5_env_nocleanup_c(status) HDF5_NOCLEANUP = .FALSE. IF(status.EQ.1)THEN HDF5_NOCLEANUP = .TRUE. ENDIF - + END SUBROUTINE h5_env_nocleanup_f diff --git a/fortran/testpar/hyper.f90 b/fortran/testpar/hyper.f90 index a6d72dd..1d65ae1 100644 --- a/fortran/testpar/hyper.f90 +++ b/fortran/testpar/hyper.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,11 +11,11 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * !////////////////////////////////////////////////////////// -! writes/reads dataset by hyperslabs +! writes/reads dataset by hyperslabs !////////////////////////////////////////////////////////// SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors) @@ -26,8 +26,8 @@ SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors) INTEGER, INTENT(in) :: length ! array length LOGICAL, INTENT(in) :: do_collective ! use collective I/O LOGICAL, INTENT(in) :: do_chunk ! use chunking - INTEGER, INTENT(in) :: mpi_size ! number of processes in the group of communicator - INTEGER, INTENT(in) :: mpi_rank ! rank of the calling process in the communicator + INTEGER, INTENT(in) :: mpi_size ! number of processes in the group of communicator + INTEGER, INTENT(in) :: mpi_rank ! rank of the calling process in the communicator INTEGER, INTENT(inout) :: nerrors ! number of errors INTEGER :: mpierror ! MPI hdferror flag INTEGER :: hdferror ! HDF hdferror flag @@ -35,17 +35,17 @@ SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors) INTEGER(hsize_t), DIMENSION(1) :: cdims ! chunk dimensions INTEGER, ALLOCATABLE :: wbuf(:) ! write buffer INTEGER, ALLOCATABLE :: rbuf(:) ! read buffer - INTEGER(hsize_t), DIMENSION(1) :: counti ! hyperslab selection - INTEGER(hsize_t), DIMENSION(1) :: start ! hyperslab selection + INTEGER(hsize_t), DIMENSION(1) :: counti ! hyperslab selection + INTEGER(hsize_t), DIMENSION(1) :: start ! hyperslab selection INTEGER(hid_t) :: fapl_id ! file access identifier - INTEGER(hid_t) :: dxpl_id ! dataset transfer property list - INTEGER(hid_t) :: dcpl_id ! dataset creation property list + INTEGER(hid_t) :: dxpl_id ! dataset transfer property list + INTEGER(hid_t) :: dcpl_id ! dataset creation property list INTEGER(hid_t) :: file_id ! file identifier INTEGER(hid_t) :: dset_id ! dataset identifier INTEGER(hid_t) :: fspace_id ! file space identifier INTEGER(hid_t) :: mspace_id ! memory space identifier INTEGER(hid_t) :: driver_id ! low-level file driver identifier - INTEGER :: istart ! start position in array + INTEGER :: istart ! start position in array INTEGER :: iend ! end position in array INTEGER :: icount ! number of elements in array CHARACTER(len=80) :: filename ! filename @@ -139,11 +139,11 @@ SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors) CALL check("h5dcreate_f", hdferror, nerrors) !////////////////////////////////////////////////////////// - ! define hyperslab + ! define hyperslab !////////////////////////////////////////////////////////// - counti(1) = icount - start(1) = istart + counti(1) = icount + start(1) = istart !////////////////////////////////////////////////////////// ! select hyperslab in memory diff --git a/fortran/testpar/mdset.f90 b/fortran/testpar/mdset.f90 index dcc7210..9d14a50 100644 --- a/fortran/testpar/mdset.f90 +++ b/fortran/testpar/mdset.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,11 +11,11 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * !////////////////////////////////////////////////////////// -! writes/reads dataset by hyperslabs +! writes/reads dataset by hyperslabs !////////////////////////////////////////////////////////// SUBROUTINE multiple_dset_write(length, do_collective, do_chunk, mpi_size, mpi_rank, nerrors) @@ -26,8 +26,8 @@ SUBROUTINE multiple_dset_write(length, do_collective, do_chunk, mpi_size, mpi_ra INTEGER, INTENT(in) :: length ! array length LOGICAL, INTENT(in) :: do_collective ! use collective I/O LOGICAL, INTENT(in) :: do_chunk ! use chunking - INTEGER, INTENT(in) :: mpi_size ! number of processes in the group of communicator - INTEGER, INTENT(in) :: mpi_rank ! rank of the calling process in the communicator + INTEGER, INTENT(in) :: mpi_size ! number of processes in the group of communicator + INTEGER, INTENT(in) :: mpi_rank ! rank of the calling process in the communicator INTEGER, INTENT(inout) :: nerrors ! number of errors INTEGER :: mpierror ! MPI hdferror flag INTEGER :: hdferror ! HDF hdferror flag @@ -35,17 +35,17 @@ SUBROUTINE multiple_dset_write(length, do_collective, do_chunk, mpi_size, mpi_ra INTEGER(hsize_t), DIMENSION(1) :: cdims ! chunk dimensions INTEGER, ALLOCATABLE :: wbuf(:) ! write buffer INTEGER, ALLOCATABLE :: rbuf(:) ! read buffer - INTEGER(hsize_t), DIMENSION(1) :: counti ! hyperslab selection - INTEGER(hsize_t), DIMENSION(1) :: start ! hyperslab selection + INTEGER(hsize_t), DIMENSION(1) :: counti ! hyperslab selection + INTEGER(hsize_t), DIMENSION(1) :: start ! hyperslab selection INTEGER(hid_t) :: fapl_id ! file access identifier - INTEGER(hid_t) :: dxpl_id ! dataset transfer property list - INTEGER(hid_t) :: dcpl_id ! dataset creation property list + INTEGER(hid_t) :: dxpl_id ! dataset transfer property list + INTEGER(hid_t) :: dcpl_id ! dataset creation property list INTEGER(hid_t) :: file_id ! file identifier INTEGER(hid_t) :: dset_id ! dataset identifier INTEGER(hid_t) :: fspace_id ! file space identifier INTEGER(hid_t) :: mspace_id ! memory space identifier INTEGER(hid_t) :: driver_id ! low-level file driver identifier - INTEGER :: istart ! start position in array + INTEGER :: istart ! start position in array INTEGER :: iend ! end position in array INTEGER :: icount ! number of elements in array CHARACTER(len=80) :: filename ! filename @@ -141,11 +141,11 @@ SUBROUTINE multiple_dset_write(length, do_collective, do_chunk, mpi_size, mpi_ra ENDIF !////////////////////////////////////////////////////////// - ! define hyperslab + ! define hyperslab !////////////////////////////////////////////////////////// - counti(1) = icount - start(1) = istart + counti(1) = icount + start(1) = istart !////////////////////////////////////////////////////////// ! select hyperslab in memory diff --git a/fortran/testpar/ptest.f90 b/fortran/testpar/ptest.f90 index 6f6fb2e..e474668 100644 --- a/fortran/testpar/ptest.f90 +++ b/fortran/testpar/ptest.f90 @@ -1,4 +1,4 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! Copyright by The HDF Group. * ! Copyright by the Board of Trustees of the University of Illinois. * ! All rights reserved. * @@ -11,7 +11,7 @@ ! is linked from the top-level documents page. It can also be found at * ! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * ! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * !////////////////////////////////////////////////////////// ! main program for parallel HDF5 Fortran tests @@ -27,8 +27,8 @@ PROGRAM parallel_test LOGICAL :: do_collective ! use collective MPI I/O LOGICAL :: do_chunk ! use chunking INTEGER :: nerrors = 0 ! number of errors - INTEGER :: mpi_size ! number of processes in the group of communicator - INTEGER :: mpi_rank ! rank of the calling process in the communicator + INTEGER :: mpi_size ! number of processes in the group of communicator + INTEGER :: mpi_rank ! rank of the calling process in the communicator INTEGER :: length = 12000 ! length of array !////////////////////////////////////////////////////////// @@ -115,20 +115,20 @@ PROGRAM parallel_test !////////////////////////////////////////////////////////// IF (nerrors == 0) THEN - CALL mpi_finalize(mpierror) + CALL mpi_finalize(mpierror) IF (mpierror .NE. MPI_SUCCESS) THEN WRITE(*,*) "MPI_FINALIZE *FAILED* Process = ", mpi_rank ENDIF ELSE WRITE(*,*) 'Errors detected in process ', mpi_rank - CALL mpi_abort(MPI_COMM_WORLD, 1, mpierror) + CALL mpi_abort(MPI_COMM_WORLD, 1, mpierror) IF (mpierror .NE. MPI_SUCCESS) THEN WRITE(*,*) "MPI_ABORT *FAILED* Process = ", mpi_rank ENDIF ENDIF !////////////////////////////////////////////////////////// - ! end main program + ! end main program !////////////////////////////////////////////////////////// END PROGRAM parallel_test |