diff options
Diffstat (limited to 'fortran/src')
-rw-r--r-- | fortran/src/H5Aff.F90 | 142 | ||||
-rw-r--r-- | fortran/src/H5Dff.F90 | 70 | ||||
-rw-r--r-- | fortran/src/H5ESff.F90 | 28 | ||||
-rw-r--r-- | fortran/src/H5Fff.F90 | 30 | ||||
-rw-r--r-- | fortran/src/H5Gff.F90 | 39 | ||||
-rw-r--r-- | fortran/src/H5Lff.F90 | 47 | ||||
-rw-r--r-- | fortran/src/H5Off.F90 | 129 | ||||
-rw-r--r-- | fortran/src/H5Pff.F90 | 100 | ||||
-rw-r--r-- | fortran/src/H5Tff.F90 | 14 | ||||
-rw-r--r-- | fortran/src/H5VLff.F90 | 42 |
10 files changed, 349 insertions, 292 deletions
diff --git a/fortran/src/H5Aff.F90 b/fortran/src/H5Aff.F90 index 2f1e6d0..b30044d 100644 --- a/fortran/src/H5Aff.F90 +++ b/fortran/src/H5Aff.F90 @@ -96,12 +96,12 @@ MODULE H5A ! Interface for the function used to pass the C pointer of the buffer ! to the C H5Awrite routine INTERFACE - INTEGER FUNCTION h5awrite_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5awrite_f_c') + INTEGER FUNCTION h5awrite_f_c(attr_id, memtype_id, buf) BIND(C, NAME='h5awrite_f_c') IMPORT :: c_ptr IMPORT :: HID_T IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: memtype_id TYPE(C_PTR), VALUE :: buf END FUNCTION h5awrite_f_c END INTERFACE @@ -109,12 +109,12 @@ MODULE H5A ! Interface for the function used to pass the C pointer of the buffer ! to the C H5Aread routine INTERFACE - INTEGER FUNCTION h5aread_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5aread_f_c') + INTEGER FUNCTION h5aread_f_c(attr_id, memtype_id, buf) BIND(C, NAME='h5aread_f_c') IMPORT :: c_ptr IMPORT :: HID_T IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: memtype_id TYPE(C_PTR), VALUE :: buf END FUNCTION h5aread_f_c END INTERFACE @@ -207,7 +207,7 @@ CONTAINS !! \param type_id Attribute datatype identifier !! \param space_id Attribute dataspace identifier !! \param attr_id Attribute identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param acpl_id Attribute creation property list identifier !! \param aapl_id Attribute access property list identifier @@ -229,8 +229,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN), OPTIONAL :: acpl_id INTEGER(HID_T) , INTENT(IN), OPTIONAL :: aapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: acpl_id_default @@ -238,7 +238,6 @@ CONTAINS TYPE(C_PTR) :: file_default = C_NULL_PTR TYPE(C_PTR) :: func_default = C_NULL_PTR INTEGER(KIND=C_INT) :: line_default = 0 - CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name INTERFACE @@ -583,7 +582,7 @@ CONTAINS !! \brief Closes the specified attribute. !! !! \param attr_id Attribute identifier -!! \param hdferr \fortran_error +!! \param hdferr \fortran_error !! !! See C API: @ref H5Aclose() !! @@ -609,7 +608,7 @@ CONTAINS !! \brief Asynchronously closes the specified attribute. !! !! \param attr_id Attribute identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -622,8 +621,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: attr_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -779,6 +778,7 @@ CONTAINS !! \param obj_name Name of object, relative to location, whose attribute is to be renamed !! \param old_attr_name Prior attribute name !! \param new_attr_name New attribute name +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list identifier !! \param file \fortran_file @@ -797,8 +797,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -891,7 +891,7 @@ CONTAINS !! \param obj_id Identifier for object to which attribute is attached !! \param attr_name Name of attribute to open !! \param attr_id Attribute identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param aapl_id Attribute access property list !! \param file \fortran_file @@ -908,8 +908,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: aapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN) , OPTIONAL :: line INTEGER(HID_T) :: aapl_id_default @@ -1155,7 +1155,7 @@ CONTAINS !! \li H5_ITER_N_F - Number of iteration orders !! \param n Attribute’s position in index. !! \param attr_id Attribute identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param aapl_id Attribute access property list. !! \param lapl_id Link access property list. @@ -1178,8 +1178,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: aapl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN) , OPTIONAL :: line INTEGER(HID_T) :: aapl_id_default @@ -1507,7 +1507,7 @@ CONTAINS !! \param type_id Attribute datatype identifier !! \param space_id Attribute dataspace identifier !! \param attr An attribute identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param acpl_id Attribute creation property list identifier (Currently not used.) !! \param aapl_id Attribute access property list identifier (Currently not used.) @@ -1534,8 +1534,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN), OPTIONAL :: acpl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: aapl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: acpl_id_default @@ -1644,8 +1644,10 @@ CONTAINS !! !! \param obj_id Object identifier !! \param attr_name Attribute name -!! \param attr_exists Pointer to attribute exists status, must be of type LOGICAL(C_BOOL) and initialize to .FALSE. -!! \param es_id \es_id +!! \param attr_exists Pointer to attribute exists status. It should be declared INTEGER(C_INT) and initialized +!! to zero (false) for portability. It will return one when true. LOGICAL(C_BOOL) is also +!! acceptable but may encounter atypical anomalies. It should be initialized to false when used. +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -1657,11 +1659,11 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T) , INTENT(IN) :: obj_id CHARACTER(LEN=*), INTENT(IN) :: attr_name - TYPE(C_PTR) , INTENT(INOUT) :: attr_exists + TYPE(C_PTR) , INTENT(IN) :: attr_exists INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line CHARACTER(LEN=LEN_TRIM(attr_name)+1,KIND=C_CHAR) :: c_attr_name @@ -1760,7 +1762,7 @@ CONTAINS !! \param obj_name Object name either relative to loc_id, absolute from the file’s root group, or '. '(a dot) !! \param attr_name Attribute name !! \param attr_exists Pointer to attribute exists status, must be of type LOGICAL(C_BOOL) and initialize to .FALSE. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list identifier !! \param file \fortran_file @@ -1774,12 +1776,12 @@ CONTAINS INTEGER (HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name CHARACTER(LEN=*), INTENT(IN) :: attr_name - TYPE(C_PTR) , INTENT(INOUT) :: attr_exists + TYPE(C_PTR) , INTENT(IN) :: attr_exists INTEGER (HID_T), INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr INTEGER (HID_T), INTENT(IN) , OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN) , OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -1890,7 +1892,7 @@ CONTAINS !! \param obj_name Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot) !! \param attr_name Attribute name !! \param attr_id Attribute identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param aapl_id Attribute access property list (Currently unused; should be passed in as H5P_DEFAULT.) !! \param lapl_id Link access property list identifier @@ -1912,8 +1914,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: aapl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: aapl_id_default @@ -2010,7 +2012,7 @@ CONTAINS !! \param loc_id Location or object identifier; may be dataset or group !! \param old_attr_name Prior attribute name !! \param new_attr_name New attribute name -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -2026,8 +2028,8 @@ CONTAINS CHARACTER(LEN=*), INTENT(IN) :: new_attr_name INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -2073,7 +2075,7 @@ CONTAINS !! \param attr_id Identifier of an attribute to read. !! \param memtype_id Identifier of the attribute datatype (in memory). !! \param buf Buffer for data to be read. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -2082,15 +2084,15 @@ CONTAINS !! See C API: @ref H5Aread_async() !! - SUBROUTINE h5aread_async_f(attr_id, mem_type_id, buf, es_id, hdferr, file, func, line) + SUBROUTINE h5aread_async_f(attr_id, memtype_id, buf, es_id, hdferr, file, func, line) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id - TYPE(C_PTR) , INTENT(OUT) :: buf - INTEGER(HID_T), INTENT(IN) :: es_id - INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + INTEGER(HID_T), INTENT(IN) :: attr_id + INTEGER(HID_T), INTENT(IN) :: memtype_id + TYPE(C_PTR) , INTENT(IN) :: buf + INTEGER(HID_T), INTENT(IN) :: es_id + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -2098,7 +2100,7 @@ CONTAINS INTEGER(KIND=C_INT) :: line_default = 0 INTERFACE - INTEGER FUNCTION H5Aread_async(file, func, line, attr_id, mem_type_id, buf, es_id) & + INTEGER FUNCTION H5Aread_async(file, func, line, attr_id, memtype_id, buf, es_id) & BIND(C,NAME='H5Aread_async') IMPORT :: C_CHAR, C_INT, C_PTR IMPORT :: HID_T @@ -2107,7 +2109,7 @@ CONTAINS TYPE(C_PTR), VALUE :: func INTEGER(C_INT), VALUE :: line INTEGER(HID_T), VALUE :: attr_id - INTEGER(HID_T), VALUE :: mem_type_id + INTEGER(HID_T), VALUE :: memtype_id TYPE(C_PTR) , VALUE :: buf INTEGER(HID_T), VALUE :: es_id END FUNCTION H5Aread_async @@ -2117,7 +2119,7 @@ CONTAINS IF (PRESENT(func)) func_default = func IF (PRESENT(line)) line_default = INT(line, C_INT) - hdferr = H5Aread_async(file_default, func_default, line_default, attr_id, mem_type_id, buf, es_id) + hdferr = H5Aread_async(file_default, func_default, line_default, attr_id, memtype_id, buf, es_id) END SUBROUTINE h5aread_async_f @@ -2129,7 +2131,7 @@ CONTAINS !! \param attr_id Identifier of an attribute to read. !! \param memtype_id Identifier of the attribute datatype (in memory). !! \param buf Data to be written. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -2138,13 +2140,13 @@ CONTAINS !! See C API: @ref H5Awrite_async() !! - SUBROUTINE h5awrite_async_f(attr_id, mem_type_id, buf, es_id, hdferr, file, func, line) + SUBROUTINE h5awrite_async_f(attr_id, memtype_id, buf, es_id, hdferr, file, func, line) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id - TYPE(C_PTR) , INTENT(IN) :: buf - INTEGER(HID_T), INTENT(IN) :: es_id - INTEGER , INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN) :: attr_id + INTEGER(HID_T), INTENT(IN) :: memtype_id + TYPE(C_PTR) , INTENT(IN) :: buf + INTEGER(HID_T), INTENT(IN) :: es_id + INTEGER , INTENT(OUT) :: hdferr TYPE(C_PTR), OPTIONAL :: file TYPE(C_PTR), OPTIONAL :: func INTEGER , INTENT(IN), OPTIONAL :: line @@ -2154,7 +2156,7 @@ CONTAINS INTEGER(KIND=C_INT) :: line_default = 0 INTERFACE - INTEGER FUNCTION H5Awrite_async(file, func, line, attr_id, mem_type_id, buf, es_id) & + INTEGER FUNCTION H5Awrite_async(file, func, line, attr_id, memtype_id, buf, es_id) & BIND(C,NAME='H5Awrite_async') IMPORT :: C_CHAR, C_INT, C_PTR IMPORT :: HID_T @@ -2163,7 +2165,7 @@ CONTAINS TYPE(C_PTR), VALUE :: func INTEGER(C_INT), VALUE :: line INTEGER(HID_T), VALUE :: attr_id - INTEGER(HID_T), VALUE :: mem_type_id + INTEGER(HID_T), VALUE :: memtype_id TYPE(C_PTR) , VALUE :: buf INTEGER(HID_T), VALUE :: es_id END FUNCTION H5Awrite_async @@ -2173,7 +2175,7 @@ CONTAINS IF (PRESENT(func)) func_default = func IF (PRESENT(line)) line_default = INT(line, C_INT) - hdferr = H5Awrite_async(file_default, func_default, line_default, attr_id, mem_type_id, buf, es_id) + hdferr = H5Awrite_async(file_default, func_default, line_default, attr_id, memtype_id, buf, es_id) END SUBROUTINE h5awrite_async_f @@ -2239,10 +2241,10 @@ CONTAINS !! See C API: @ref H5Aread() !! SUBROUTINE h5aread_f(attr_id, memtype_id, buf, hdferr) - INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: memtype_id - TYPE(C_PTR) , INTENT(INOUT) :: buf - INTEGER , INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN) :: attr_id + INTEGER(HID_T), INTENT(IN) :: memtype_id + TYPE(C_PTR) , INTENT(IN) :: buf + INTEGER , INTENT(OUT) :: hdferr END SUBROUTINE h5aread_f !> @@ -2299,14 +2301,14 @@ CONTAINS END SUBROUTINE h5awrite_char_scalar_fix - SUBROUTINE h5awrite_ptr(attr_id, mem_type_id, buf, hdferr) + SUBROUTINE h5awrite_ptr(attr_id, memtype_id, buf, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: memtype_id TYPE(C_PTR), INTENT(IN), TARGET :: buf INTEGER, INTENT(OUT) :: hdferr - hdferr = H5Awrite_f_c(attr_id, mem_type_id, buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, buf) END SUBROUTINE h5awrite_ptr @@ -2337,14 +2339,14 @@ CONTAINS END SUBROUTINE h5aread_char_scalar_fix - SUBROUTINE h5aread_ptr(attr_id, mem_type_id, buf, hdferr) + SUBROUTINE h5aread_ptr(attr_id, memtype_id, buf, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: attr_id - INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HID_T), INTENT(IN) :: memtype_id TYPE(C_PTR), INTENT(INOUT) :: buf INTEGER, INTENT(OUT) :: hdferr - hdferr = H5Aread_f_c(attr_id, mem_type_id, buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, buf) END SUBROUTINE h5aread_ptr diff --git a/fortran/src/H5Dff.F90 b/fortran/src/H5Dff.F90 index 06034ac..5b571e5 100644 --- a/fortran/src/H5Dff.F90 +++ b/fortran/src/H5Dff.F90 @@ -287,7 +287,7 @@ CONTAINS !! \param type_id Dataset datatype identifier !! \param space_id Dataset dataspace identifier !! \param dset_id Dataset identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param dcpl_id Dataset creation property list !! \param lcpl_id Link creation property list @@ -311,8 +311,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN), OPTIONAL :: dcpl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lcpl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: dapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lcpl_id_default @@ -422,7 +422,7 @@ CONTAINS !! \param loc_id File or group identifier !! \param name Dataset name !! \param dset_id Dataset identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param dapl_id Dataset access property list !! \param file \fortran_file @@ -439,8 +439,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: dapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: dapl_id_default @@ -515,7 +515,7 @@ CONTAINS !! \brief Asynchronously closes a dataset. !! !! \param dset_id Dataset identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -528,8 +528,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -659,7 +659,7 @@ CONTAINS !! !! \param dataset_id Dataset identifier !! \param fsize Array containing the new magnitude of each dimension -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -673,8 +673,8 @@ CONTAINS INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: fsize INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -1363,7 +1363,7 @@ CONTAINS !! !! \param dataset_id Dataset identifier. !! \param dataspace_id Dataspace identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -1377,8 +1377,8 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: dataspace_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -1455,11 +1455,11 @@ CONTAINS !! SUBROUTINE h5dvlen_reclaim_f(type_id, space_id, plist_id, buf, hdferr) IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: type_id - INTEGER(HID_T), INTENT(IN) :: space_id - INTEGER(HID_T), INTENT(IN) :: plist_id - TYPE(C_PTR) , INTENT(INOUT) :: buf - INTEGER , INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN) :: type_id + INTEGER(HID_T), INTENT(IN) :: space_id + INTEGER(HID_T), INTENT(IN) :: plist_id + TYPE(C_PTR) , INTENT(IN) :: buf + INTEGER , INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5dvlen_reclaim_c(type_id, space_id, plist_id, buf) BIND(C, NAME='h5dvlen_reclaim_c') @@ -1485,7 +1485,7 @@ CONTAINS !! \param dset_id Identifier of the dataset read from. !! \param mem_type_id Identifier of the memory datatype. !! \param buf Buffer to receive data read from file. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param mem_space_id Identifier of the memory dataspace. !! \param file_space_id Identifier of dataset's dataspace in the file. (Default: H5S_ALL_F) @@ -1502,14 +1502,14 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id - TYPE(C_PTR), INTENT(INOUT) :: buf + TYPE(C_PTR), INTENT(IN) :: buf INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -1552,7 +1552,7 @@ CONTAINS !! \param dset_id Identifier of the dataset to write to. !! \param mem_type_id Identifier of the memory datatype. !! \param buf Buffer with data to be written to the file. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param mem_space_id Identifier of the memory dataspace. !! \param file_space_id Identifier of the dataset's dataspace in the file. @@ -1575,8 +1575,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -1662,7 +1662,7 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id - TYPE(C_PTR), INTENT(INOUT) :: buf + TYPE(C_PTR), INTENT(IN) :: buf INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id @@ -1773,9 +1773,9 @@ CONTAINS SUBROUTINE h5dfill_f(fill_value, fill_type_id, buf, buf_type_id, space_id, hdferr) USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR IMPLICIT NONE - TYPE(C_PTR) :: fill_value + TYPE(C_PTR), INTENT(IN) :: fill_value INTEGER(HID_T), INTENT(IN) :: fill_type_id - TYPE(C_PTR) :: buf + TYPE(C_PTR), INTENT(IN) :: buf INTEGER(HID_T), INTENT(IN) :: buf_type_id INTEGER(HID_T), INTENT(IN) :: space_id END SUBROUTINE h5dfill_f @@ -2101,7 +2101,7 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: dset_id INTEGER(HID_T), INTENT(IN) :: mem_type_id - TYPE(C_PTR), INTENT(INOUT) :: buf + TYPE(C_PTR), INTENT(IN) :: buf INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id @@ -2126,9 +2126,9 @@ CONTAINS SUBROUTINE h5dfill_ptr(fill_value, fill_type_id, buf, buf_type_id, space_id, hdferr) IMPLICIT NONE - TYPE(C_PTR) :: fill_value + TYPE(C_PTR) , INTENT(IN) :: fill_value INTEGER(HID_T), INTENT(IN) :: fill_type_id - TYPE(C_PTR) :: buf + TYPE(C_PTR) , INTENT(IN) :: buf INTEGER(HID_T), INTENT(IN) :: buf_type_id INTEGER(HID_T), INTENT(IN) :: space_id INTEGER, INTENT(OUT) :: hdferr @@ -2288,7 +2288,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: mem_type_id INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: mem_space_id INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: file_space_id - TYPE(C_PTR), DIMENSION(*) :: buf + TYPE(C_PTR), INTENT(IN), DIMENSION(*) :: buf INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp @@ -2339,7 +2339,7 @@ CONTAINS INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: mem_type_id INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: mem_space_id INTEGER(HID_T), INTENT(IN), DIMENSION(*) :: file_space_id - TYPE(C_PTR), DIMENSION(*) :: buf + TYPE(C_PTR), INTENT(IN), DIMENSION(*) :: buf INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp diff --git a/fortran/src/H5ESff.F90 b/fortran/src/H5ESff.F90 index 5b19a51..f102d23 100644 --- a/fortran/src/H5ESff.F90 +++ b/fortran/src/H5ESff.F90 @@ -18,6 +18,18 @@ ! help@hdfgroup.org. * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! +! NOTES +! _____ __ __ _____ ____ _____ _______ _ _ _______ +! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __| +! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | **** +! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | **** +! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | **** +! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_| +! +! If you add a new H5ES function to the module you must add the function name +! to the Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory. +! This is needed for Windows based operating systems. +! MODULE H5ES @@ -32,7 +44,7 @@ CONTAINS !! !! \brief Creates an event set. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! !! See C API: @ref H5EScreate() @@ -60,7 +72,7 @@ CONTAINS !! !! \brief Retrieves number of events in an event set. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param count The number of events in the event set !! \param hdferr \fortran_error !! @@ -90,7 +102,7 @@ CONTAINS !! !! \brief Retrieves the next operation counter to be assigned in an event set. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param counter The number of events in the event set !! \param hdferr \fortran_error !! @@ -121,7 +133,7 @@ CONTAINS !! !! \brief Waits for operations in event set to complete. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param timeout The number of events in the event set !! \param num_in_progress The number of operations still in progress !! \param err_occurred Flag if an operation in the event set failed @@ -163,7 +175,7 @@ CONTAINS !! !! \brief Attempt to cancel operations in an event set. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param num_not_canceled The number of events not canceled !! \param err_occurred Status indicating if error is present in the event set !! \param hdferr \fortran_error @@ -202,7 +214,7 @@ CONTAINS !! !! \brief Checks for failed operations. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param err_occurred Status indicating if error is present in the event set !! \param hdferr \fortran_error !! @@ -238,7 +250,7 @@ CONTAINS !! !! \brief Retrieves the number of failed operations. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param num_errs Number of errors !! \param hdferr \fortran_error !! @@ -270,7 +282,7 @@ CONTAINS !! !! \brief Terminates access to an event set. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! !! See C API: @ref H5ESclose() diff --git a/fortran/src/H5Fff.F90 b/fortran/src/H5Fff.F90 index f1a0d2a..aec149f 100644 --- a/fortran/src/H5Fff.F90 +++ b/fortran/src/H5Fff.F90 @@ -127,7 +127,7 @@ CONTAINS !! \li H5F_ACC_TRUNC_F !! \li H5F_ACC_EXCL_F !! \param file_id File identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param creation_prp File creation property list identifier !! \param access_prp File access property list identifier @@ -147,8 +147,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: creation_prp INTEGER(HID_T), INTENT(IN), OPTIONAL :: access_prp - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: creation_prp_default @@ -234,7 +234,7 @@ CONTAINS !! \param scope Specifies the scope of the flushing action. Possible values are: !! \li H5F_SCOPE_GLOBAL_F !! \li H5F_SCOPE_LOCAL_F -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -248,8 +248,8 @@ CONTAINS INTEGER, INTENT(IN) :: scope INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -418,7 +418,7 @@ CONTAINS !! \li H5F_ACC_RDWR_F !! \li H5F_ACC_RDONLY_F !! \param file_id File identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param access_prp File access property list identifier !! \param file \fortran_file @@ -436,8 +436,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: access_prp - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: access_prp_default @@ -515,7 +515,7 @@ CONTAINS !! !! \param file_id Identifier of a file for which an additional identifier is required. !! \param ret_file_id New file identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -529,8 +529,8 @@ CONTAINS INTEGER(HID_T), INTENT(OUT) :: ret_file_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -724,7 +724,7 @@ CONTAINS !! \brief Asynchronously closes HDF5 file. !! !! \param file_id File identifier -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -737,8 +737,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: file_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR diff --git a/fortran/src/H5Gff.F90 b/fortran/src/H5Gff.F90 index 655c226..c8701a2 100644 --- a/fortran/src/H5Gff.F90 +++ b/fortran/src/H5Gff.F90 @@ -261,7 +261,7 @@ CONTAINS !! \param loc_id Location identifier. !! \param name Group name at the specified location. !! \param grp_id Group identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param size_hint A 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 parameters lcpl_id, gcpl_id, @@ -287,8 +287,8 @@ CONTAINS INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lcpl_id INTEGER(HID_T) , INTENT(IN), OPTIONAL :: gcpl_id INTEGER(HID_T) , INTENT(IN), OPTIONAL :: gapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lcpl_id_default @@ -420,7 +420,7 @@ CONTAINS !! \param loc_id Location identifier. !! \param name Name of the group to open. !! \param grp_id Group identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param gapl_id Group access property list identifier. !! \param file \fortran_file @@ -438,8 +438,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: gapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: gapl_id_default @@ -509,7 +509,7 @@ CONTAINS !! \brief Asynchronously closes the specified group. !! !! \param grp_id Group identifier. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -522,8 +522,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: grp_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR @@ -1076,7 +1076,7 @@ CONTAINS !! !! \param loc_id Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. !! \param ginfo Derived type in which group information is returned. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -1092,8 +1092,8 @@ CONTAINS TYPE(H5G_info_t), INTENT(OUT), TARGET :: ginfo INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: ptr @@ -1234,7 +1234,7 @@ CONTAINS !! \param order Order of the count in the index. !! \param n Position in the index of the group for which information is retrieved. !! \param ginfo Derived type in which group information is returned. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list. !! \param file \fortran_file @@ -1256,8 +1256,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -1414,9 +1414,12 @@ CONTAINS !! \param loc_id File or group identifier. !! \param name Name of group containing group for which information is to be retrieved. !! \param ginfo Derived type in which group information is returned. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list. +!! \param file \fortran_file +!! \param func \fortran_func +!! \param line \fortran_line !! !! See C API: @ref H5Gget_info_by_name_async() !! @@ -1430,8 +1433,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default diff --git a/fortran/src/H5Lff.F90 b/fortran/src/H5Lff.F90 index 9111144..72a471e 100644 --- a/fortran/src/H5Lff.F90 +++ b/fortran/src/H5Lff.F90 @@ -180,7 +180,7 @@ CONTAINS !! !! \param loc_id Identifier of the file or group containing the object. !! \param name Name of the link to delete. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list identifier. !! \param file \fortran_file @@ -196,9 +196,9 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func - INTEGER , INTENT(IN), OPTIONAL :: line + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func + INTEGER , OPTIONAL, INTENT(IN) :: line INTEGER(HID_T) :: lapl_id_default CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name @@ -298,7 +298,7 @@ CONTAINS !! \param target_path Path to the target object, which is not required to exist. !! \param link_loc_id The file or group identifier for the new link. !! \param link_name The name of the new link. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lcpl_id Link creation property list identifier. !! \param lapl_id Link access property list identifier. @@ -318,8 +318,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lcpl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lcpl_id_default @@ -430,7 +430,7 @@ CONTAINS !! \param obj_name Name of the target object, which must already exist. !! \param link_loc_id The file or group identifier for the new link. !! \param link_name The name of the new link. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lcpl_id Link creation property list identifier. !! \param lapl_id Link access property list identifier. @@ -451,8 +451,8 @@ CONTAINS INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lcpl_id INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lcpl_id_default @@ -644,7 +644,7 @@ CONTAINS !! \li H5_ITER_NATIVE_F - No particular order, whatever is fastest !! \li H5_ITER_N_F - Number of iteration orders !! \param n Link for which to retrieve information. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list. !! \param file \fortran_file @@ -664,8 +664,8 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -765,8 +765,10 @@ CONTAINS !! !! \param loc_id Identifier of the file or group to query. !! \param name Link name to check. -!! \param link_exists Pointer to Link exists status, must be of type LOGICAL(C_BOOL) and initialize to .FALSE. -!! \param es_id \es_id +!! \param link_exists Pointer to link exists status. It should be declared INTEGER(C_INT) and initialized +!! to zero (false) for portability. It will return one when true. LOGICAL(C_BOOL) is also +!! acceptable but may encounter atypical anomalies. It should be initialized to false when used. +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list identifier. !! \param file \fortran_file @@ -779,12 +781,12 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name - TYPE(C_PTR) , INTENT(INOUT) :: link_exists + TYPE(C_PTR) , INTENT(IN) :: link_exists INTEGER(HID_T), INTENT(IN) :: es_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -1371,8 +1373,11 @@ CONTAINS !! in \p return_value for H5Literate_async_f(), so \p return_value should !! not be used for determining the return state of the callback routine. !! -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error +!! \param file \fortran_file +!! \param func \fortran_func +!! \param line \fortran_line !! !! See C API: @ref H5Literate_async() !! @@ -1388,8 +1393,8 @@ CONTAINS INTEGER , INTENT(OUT) :: return_value INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line TYPE(C_PTR) :: file_default = C_NULL_PTR diff --git a/fortran/src/H5Off.F90 b/fortran/src/H5Off.F90 index 215f6e8..54c503e 100644 --- a/fortran/src/H5Off.F90 +++ b/fortran/src/H5Off.F90 @@ -266,7 +266,7 @@ CONTAINS !! \param loc_id File or group identifier. !! \param name Path to the object, relative to loc_id. !! \param obj_id Object identifier for the opened object. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Access property list identifier for the link pointing to the object. !! \param file \fortran_file @@ -283,8 +283,8 @@ CONTAINS INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -357,20 +357,23 @@ CONTAINS !! !! \brief Asynchronously closes an object in an HDF5 file. !! -!! \param object_id Object identifier. -!! \param es_id \es_id +!! \param object_id Object identifier +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error +!! \param file \fortran_file +!! \param func \fortran_func +!! \param line \fortran_line !! -!! See C API: @ref H5Oclose_async_f() +!! See C API: @ref H5Oclose_async() !! SUBROUTINE h5oclose_async_f(object_id, es_id, hdferr, file, func, line) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: object_id INTEGER(HID_T), INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func - INTEGER , INTENT(IN), OPTIONAL :: line + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func + INTEGER , OPTIONAL, INTENT(IN) :: line TYPE(C_PTR) :: file_default = C_NULL_PTR TYPE(C_PTR) :: func_default = C_NULL_PTR @@ -497,7 +500,7 @@ CONTAINS !! \param dst_name Name to be assigned to the new copy. !! \param ocpypl_id Object copy property list. !! \param lcpl_id Link creation property list for the new hard link. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param file \fortran_file !! \param func \fortran_func @@ -516,8 +519,8 @@ CONTAINS INTEGER , INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN), OPTIONAL :: ocpypl_id INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lcpl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: ocpypl_id_default, lcpl_id_default @@ -845,7 +848,7 @@ CONTAINS !! \param order Order of iteration within index, NOTE: zero-based. !! \param n Object to open. !! \param obj_id An object identifier for the opened object. -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! !! \param lapl_id Link access property list. @@ -867,8 +870,8 @@ CONTAINS INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lapl_id - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN), OPTIONAL :: line INTEGER(HID_T) :: lapl_id_default @@ -1025,33 +1028,35 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: object_id INTEGER, INTENT(IN) :: index_type INTEGER, INTENT(IN) :: order - - TYPE(C_FUNPTR):: op - TYPE(C_PTR) :: op_data + TYPE(C_FUNPTR), INTENT(IN) :: op + TYPE(C_PTR), INTENT(INOUT) :: op_data ! Declare INOUT to bypass gfortran 4.8.5 issue INTEGER, INTENT(OUT) :: return_value INTEGER, INTENT(OUT) :: hdferr - INTEGER, INTENT(IN), OPTIONAL :: fields - INTEGER :: fields_c + INTEGER, INTENT(IN), OPTIONAL :: fields + + INTEGER(C_INT) :: fields_c + INTEGER(C_INT) :: return_value_c INTERFACE - INTEGER FUNCTION h5ovisit_c(object_id, index_type, order, op, op_data, fields) & - BIND(C, NAME='h5ovisit_c') - IMPORT :: C_FUNPTR, C_PTR + INTEGER(C_INT) FUNCTION H5Ovisit3(object_id, index_type, order, op, op_data, fields) & + BIND(C, NAME='H5Ovisit3') + IMPORT :: C_FUNPTR, C_PTR, C_INT IMPORT :: HID_T IMPLICIT NONE - INTEGER(HID_T), INTENT(IN) :: object_id - INTEGER, INTENT(IN) :: index_type - INTEGER, INTENT(IN) :: order + INTEGER(HID_T), VALUE :: object_id + INTEGER(C_INT), VALUE :: index_type + INTEGER(C_INT), VALUE :: order TYPE(C_FUNPTR), VALUE :: op - TYPE(C_PTR), VALUE :: op_data - INTEGER, INTENT(IN) :: fields - END FUNCTION h5ovisit_c + TYPE(C_PTR) , VALUE :: op_data + INTEGER(C_INT), VALUE :: fields + END FUNCTION H5Ovisit3 END INTERFACE - fields_c = H5O_INFO_ALL_F - IF(PRESENT(fields)) fields_c = fields + fields_c = INT(H5O_INFO_ALL_F,C_INT) + IF(PRESENT(fields)) fields_c = INT(fields,C_INT) - return_value = h5ovisit_c(object_id, index_type, order, op, op_data, fields_c) + return_value_c = H5Ovisit3(object_id, INT(index_type,C_INT), INT(order, C_INT), op, op_data, fields_c) + return_value = INT(return_value_c) IF(return_value.GE.0)THEN hdferr = 0 @@ -1118,7 +1123,7 @@ CONTAINS !! \param loc_id File or group identifier specifying location of group in which object is located. !! \param name Name of group, relative to loc_id. !! \param object_info Pointer to buffer returning object information, points to variable of datatype TYPE(C_H5O_INFO_T). -!! \param es_id \es_id +!! \param es_id \fortran_es_id !! \param hdferr \fortran_error !! \param lapl_id Link access property list. !! \param fields Flags specifying the fields to include in object_info. @@ -1133,13 +1138,13 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T) , INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name - TYPE(C_PTR) , INTENT(INOUT) :: object_info + TYPE(C_PTR) , INTENT(IN) :: object_info INTEGER(HID_T) , INTENT(IN) :: es_id INTEGER , INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id INTEGER , INTENT(IN) , OPTIONAL :: fields - TYPE(C_PTR), OPTIONAL :: file - TYPE(C_PTR), OPTIONAL :: func + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: file + TYPE(C_PTR), OPTIONAL, INTENT(IN) :: func INTEGER , INTENT(IN) , OPTIONAL :: line CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name @@ -1326,45 +1331,45 @@ CONTAINS INTEGER , INTENT(IN) :: index_type INTEGER , INTENT(IN) :: order - TYPE(C_FUNPTR) :: op - TYPE(C_PTR) :: op_data + TYPE(C_FUNPTR) , INTENT(IN) :: op + TYPE(C_PTR) , INTENT(INOUT) :: op_data ! Declare INOUT to bypass gfortran 4.8.5 issue INTEGER , INTENT(OUT) :: return_value INTEGER , INTENT(OUT) :: hdferr INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id INTEGER , INTENT(IN) , OPTIONAL :: fields - INTEGER(SIZE_T) :: namelen - INTEGER(HID_T) :: lapl_id_default - INTEGER :: fields_c + INTEGER(HID_T) :: lapl_id_c + INTEGER(C_INT) :: fields_c + INTEGER(C_INT) :: return_value_c + CHARACTER(LEN=LEN_TRIM(object_name)+1,KIND=C_CHAR) :: object_name_c INTERFACE - INTEGER FUNCTION h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, & - op, op_data, lapl_id, fields) BIND(C, NAME='h5ovisit_by_name_c') - IMPORT :: C_CHAR, C_PTR, C_FUNPTR + INTEGER(C_INT) FUNCTION H5Ovisit_by_name3(loc_id, object_name, index_type, order, & + op, op_data, fields, lapl_id) BIND(C, NAME='H5Ovisit_by_name3') + IMPORT :: C_CHAR, C_PTR, C_FUNPTR, C_INT IMPORT :: HID_T, SIZE_T IMPLICIT NONE - INTEGER(HID_T) , INTENT(IN) :: loc_id - CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: object_name - INTEGER(SIZE_T) :: namelen - INTEGER , INTENT(IN) :: index_type - INTEGER , INTENT(IN) :: order - TYPE(C_FUNPTR) , VALUE :: op - TYPE(C_PTR) , VALUE :: op_data - INTEGER(HID_T) , INTENT(IN) :: lapl_id - INTEGER , INTENT(IN) :: fields - END FUNCTION h5ovisit_by_name_c + INTEGER(HID_T), VALUE :: loc_id + CHARACTER(KIND=C_CHAR), DIMENSION(*) :: object_name + INTEGER(C_INT), VALUE :: index_type + INTEGER(C_INT), VALUE :: order + TYPE(C_FUNPTR), VALUE :: op + TYPE(C_PTR) , VALUE :: op_data + INTEGER(C_INT), VALUE :: fields + INTEGER(HID_T), VALUE :: lapl_id + END FUNCTION H5Ovisit_by_name3 END INTERFACE - fields_c = H5O_INFO_ALL_F - IF(PRESENT(fields)) fields_c = fields - - namelen = LEN(object_name) + fields_c = INT(H5O_INFO_ALL_F, C_INT) + IF(PRESENT(fields)) fields_c = INT(fields, C_INT) + object_name_c = TRIM(object_name)//C_NULL_CHAR - lapl_id_default = H5P_DEFAULT_F - IF(PRESENT(lapl_id)) lapl_id_default = lapl_id + lapl_id_c = INT(H5P_DEFAULT_F, C_INT) + IF(PRESENT(lapl_id)) lapl_id_c = INT(lapl_id, C_INT) - return_value = h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, & - op, op_data, lapl_id_default, fields_c) + return_value_c = H5Ovisit_by_name3(loc_id, object_name_c, INT(index_type, C_INT), INT(order, C_INT), & + op, op_data, fields_c, lapl_id_c) + return_value = INT(return_value_c) IF(return_value.GE.0)THEN hdferr = 0 diff --git a/fortran/src/H5Pff.F90 b/fortran/src/H5Pff.F90 index 49917dd..c6229f7 100644 --- a/fortran/src/H5Pff.F90 +++ b/fortran/src/H5Pff.F90 @@ -4457,7 +4457,7 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) SUBROUTINE h5pget_f(prp_id, name, value, hdferr) INTEGER(HID_T) , INTENT(IN) :: prp_id CHARACTER(LEN=*), INTENT(IN) :: name - TYPE(C_PTR) , INTENT(OUT) :: value + TYPE(C_PTR) , INTENT(IN) :: value INTEGER , INTENT(OUT) :: hdferr END SUBROUTINE h5pget_f @@ -4675,7 +4675,7 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id INTEGER(HID_T), INTENT(IN) :: type_id - TYPE(C_PTR) :: fillvalue + TYPE(C_PTR) , INTENT(IN) :: fillvalue INTEGER , INTENT(OUT) :: hdferr hdferr = h5pget_fill_value_c(prp_id, type_id, fillvalue) @@ -4825,7 +4825,7 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id CHARACTER(LEN=*), INTENT(IN) :: name - TYPE(C_PTR), INTENT(OUT) :: value + TYPE(C_PTR), INTENT(IN) :: value INTEGER, INTENT(OUT) :: hdferr INTEGER :: name_len @@ -4998,8 +4998,8 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(HID_T) , INTENT(OUT) :: class INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR) , OPTIONAL :: create_data, copy_data, close_data - TYPE(C_FUNPTR) , OPTIONAL :: create, copy, close + TYPE(C_PTR) , OPTIONAL, INTENT(IN) :: create_data, copy_data, close_data + TYPE(C_FUNPTR) , OPTIONAL, INTENT(IN) :: create, copy, close INTEGER :: name_len TYPE(C_PTR) :: create_data_default, copy_data_default, close_data_default TYPE(C_FUNPTR) :: create_default, copy_default, close_default @@ -5090,19 +5090,19 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr) !! SUBROUTINE h5pget_file_image_f(fapl_id, buf_ptr, buf_len_ptr, hdferr) IMPLICIT NONE - INTEGER(HID_T) , INTENT(IN) :: fapl_id - TYPE(C_PTR) , INTENT(OUT), DIMENSION(*) :: buf_ptr - INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr - INTEGER , INTENT(OUT) :: hdferr + INTEGER(HID_T) , INTENT(IN) :: fapl_id + TYPE(C_PTR) , INTENT(IN), DIMENSION(*) :: buf_ptr + INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr + INTEGER , INTENT(OUT) :: hdferr INTERFACE INTEGER FUNCTION h5pget_file_image_c(fapl_id, buf_ptr, buf_len_ptr) & BIND(C, NAME='h5pget_file_image_c') IMPORT :: c_ptr IMPORT :: HID_T, SIZE_T - INTEGER(HID_T), INTENT(IN) :: fapl_id - TYPE(C_PTR), DIMENSION(*), INTENT(OUT) :: buf_ptr - INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr + INTEGER(HID_T) :: fapl_id + TYPE(C_PTR), DIMENSION(*) :: buf_ptr + INTEGER(SIZE_T) :: buf_len_ptr END FUNCTION h5pget_file_image_c END INTERFACE @@ -6047,15 +6047,15 @@ END SUBROUTINE h5pget_virtual_dsetname_f LOGICAL(C_BOOL) :: c_minimize INTERFACE - INTEGER FUNCTION h5pget_dset_no_attrs_hint_c(dcpl_id, minimize) BIND(C, NAME='H5Pget_dset_no_attrs_hint') - IMPORT :: HID_T, C_BOOL + INTEGER(C_INT) FUNCTION H5Pget_dset_no_attrs_hint_c(dcpl_id, minimize) BIND(C, NAME='H5Pget_dset_no_attrs_hint') + IMPORT :: C_INT, HID_T, C_BOOL IMPLICIT NONE INTEGER(HID_T), INTENT(IN), VALUE :: dcpl_id LOGICAL(C_BOOL), INTENT(OUT) :: minimize - END FUNCTION h5pget_dset_no_attrs_hint_c + END FUNCTION H5Pget_dset_no_attrs_hint_c END INTERFACE - hdferr = INT(h5pget_dset_no_attrs_hint_c(dcpl_id, c_minimize)) + hdferr = INT(H5Pget_dset_no_attrs_hint_c(dcpl_id, c_minimize)) ! Transfer value of C C_BOOL type to Fortran LOGICAL minimize = c_minimize @@ -6114,24 +6114,24 @@ END SUBROUTINE h5pget_virtual_dsetname_f INTEGER(HID_T) , INTENT(IN) :: plist_id INTEGER(HID_T) , INTENT(IN) :: new_vol_id INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR) , OPTIONAL :: new_vol_info + TYPE(C_PTR) , INTENT(IN), OPTIONAL :: new_vol_info TYPE(C_PTR) :: new_vol_info_default INTERFACE - INTEGER FUNCTION h5pset_vol(plist_id, new_vol_id, new_vol_info) BIND(C, NAME='H5Pset_vol') - IMPORT :: HID_T, C_PTR + INTEGER(C_INT) FUNCTION H5Pset_vol(plist_id, new_vol_id, new_vol_info) BIND(C, NAME='H5Pset_vol') + IMPORT :: C_INT, HID_T, C_PTR IMPLICIT NONE INTEGER(HID_T), INTENT(IN), VALUE :: plist_id INTEGER(HID_T), INTENT(IN), VALUE :: new_vol_id TYPE(C_PTR) , INTENT(IN), VALUE :: new_vol_info - END FUNCTION h5pset_vol + END FUNCTION H5Pset_vol END INTERFACE new_vol_info_default = C_NULL_PTR IF(PRESENT(new_vol_info)) new_vol_info_default=new_vol_info - hdferr = INT(h5pset_vol(plist_id, new_vol_id, new_vol_info_default)) + hdferr = INT(H5Pset_vol(plist_id, new_vol_id, new_vol_info_default)) END SUBROUTINE h5pset_vol_f @@ -6148,26 +6148,56 @@ END SUBROUTINE h5pget_virtual_dsetname_f !! SUBROUTINE h5pget_vol_id_f(plist_id, vol_id, hdferr) IMPLICIT NONE - INTEGER(HID_T) , INTENT(IN) :: plist_id - INTEGER(HID_T) , INTENT(OUT) :: vol_id - INTEGER , INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN) :: plist_id + INTEGER(HID_T), INTENT(OUT) :: vol_id + INTEGER , INTENT(OUT) :: hdferr INTERFACE - INTEGER FUNCTION h5pget_vol_id(plist_id, vol_id) BIND(C, NAME='H5Pget_vol_id') - IMPORT :: HID_T, C_PTR + INTEGER(C_INT) FUNCTION h5pget_vol_id(plist_id, vol_id) BIND(C, NAME='H5Pget_vol_id') + IMPORT :: C_INT, HID_T, C_PTR IMPLICIT NONE INTEGER(HID_T), INTENT(IN), VALUE :: plist_id INTEGER(HID_T), INTENT(OUT) :: vol_id END FUNCTION h5pget_vol_id END INTERFACE - hdferr = INT(h5pget_vol_id(plist_id, vol_id)) + hdferr = INT(H5Pget_vol_id(plist_id, vol_id)) END SUBROUTINE h5pget_vol_id_f !> !! \ingroup FH5P !! +!! \brief Query the capability flags for the VOL connector that will be used with this file access property list (FAPL). +! +!! \param plist_id File access property list identifier +!! \param cap_flags Flags that indicate the VOL connector capabilities +!! \param hdferr \fortran_error +!! +!! See C API: @ref H5Pget_vol_cap_flags() +!! + SUBROUTINE h5pget_vol_cap_flags_f(plist_id, cap_flags, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: plist_id + INTEGER(C_INT64_T), INTENT(OUT) :: cap_flags + INTEGER , INTENT(OUT) :: hdferr + + INTERFACE + INTEGER(C_INT) FUNCTION H5Pget_vol_cap_flags(plist_id, cap_flags) BIND(C, NAME='H5Pget_vol_cap_flags') + IMPORT :: C_INT, HID_T, C_PTR, C_INT64_T + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN), VALUE :: plist_id + INTEGER(C_INT64_T), INTENT(OUT) :: cap_flags + END FUNCTION H5Pget_vol_cap_flags + END INTERFACE + + hdferr = INT(H5Pget_vol_cap_flags(plist_id, cap_flags)) + + END SUBROUTINE h5pget_vol_cap_flags_f + +!> +!! \ingroup FH5P +!! !! \brief Gets the file locking properties. File locking is mainly used to help enforce SWMR semantics. !! !! \param fapl_id Target fileTarget file access property list identifier. @@ -6187,17 +6217,17 @@ END SUBROUTINE h5pget_virtual_dsetname_f LOGICAL(C_BOOL) :: c_ignore_flag INTERFACE - INTEGER FUNCTION h5pget_file_locking(fapl_id, use_file_locking, ignore_disabled_locks) & + INTEGER(C_INT) FUNCTION H5Pget_file_locking(fapl_id, use_file_locking, ignore_disabled_locks) & BIND(C, NAME='H5Pget_file_locking') - IMPORT :: HID_T, C_BOOL + IMPORT :: C_INT, HID_T, C_BOOL IMPLICIT NONE INTEGER(HID_T), INTENT(IN), VALUE :: fapl_id LOGICAL(C_BOOL), INTENT(OUT) :: use_file_locking LOGICAL(C_BOOL), INTENT(OUT) :: ignore_disabled_locks - END FUNCTION h5pget_file_locking + END FUNCTION H5Pget_file_locking END INTERFACE - hdferr = INT(h5pget_file_locking(fapl_id, c_use_flag, c_ignore_flag)) + hdferr = INT(H5Pget_file_locking(fapl_id, c_use_flag, c_ignore_flag)) ! Transfer value of C C_BOOL type to Fortran LOGICAL use_file_locking = c_use_flag @@ -6227,21 +6257,21 @@ END SUBROUTINE h5pget_virtual_dsetname_f LOGICAL(C_BOOL) :: c_ignore_flag INTERFACE - INTEGER FUNCTION h5pset_file_locking(fapl_id, use_file_locking, ignore_disabled_locks) & + INTEGER(C_INT) FUNCTION H5Pset_file_locking(fapl_id, use_file_locking, ignore_disabled_locks) & BIND(C, NAME='H5Pset_file_locking') - IMPORT :: HID_T, C_BOOL + IMPORT :: C_INT, HID_T, C_BOOL IMPLICIT NONE INTEGER(HID_T), INTENT(IN), VALUE :: fapl_id LOGICAL(C_BOOL), INTENT(IN), VALUE :: use_file_locking LOGICAL(C_BOOL), INTENT(IN), VALUE :: ignore_disabled_locks - END FUNCTION h5pset_file_locking + END FUNCTION H5Pset_file_locking END INTERFACE ! Transfer value of Fortran LOGICAL to C C_BOOL type c_use_flag = use_file_locking c_ignore_flag = ignore_disabled_locks - hdferr = INT(h5pset_file_locking(fapl_id, c_use_flag, c_ignore_flag)) + hdferr = INT(H5Pset_file_locking(fapl_id, c_use_flag, c_ignore_flag)) END SUBROUTINE h5pset_file_locking_f diff --git a/fortran/src/H5Tff.F90 b/fortran/src/H5Tff.F90 index 84b9654..29550b7 100644 --- a/fortran/src/H5Tff.F90 +++ b/fortran/src/H5Tff.F90 @@ -2040,13 +2040,13 @@ CONTAINS !! SUBROUTINE h5tconvert_f(src_id, dst_id, nelmts, buf, hdferr, background, plist_id) IMPLICIT NONE - INTEGER(HID_T) , INTENT(IN) :: src_id - INTEGER(HID_T) , INTENT(IN) :: dst_id - INTEGER(SIZE_T), INTENT(IN) :: nelmts - TYPE(C_PTR) , INTENT(INOUT) :: buf - INTEGER , INTENT(OUT) :: hdferr - TYPE(C_PTR) , INTENT(INOUT), OPTIONAL :: background - INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: plist_id + INTEGER(HID_T) , INTENT(IN) :: src_id + INTEGER(HID_T) , INTENT(IN) :: dst_id + INTEGER(SIZE_T), INTENT(IN) :: nelmts + TYPE(C_PTR) , INTENT(IN) :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) , INTENT(IN), OPTIONAL :: background + INTEGER(HID_T) , INTENT(IN), OPTIONAL :: plist_id INTEGER(HID_T) :: plist_id_default TYPE(C_PTR) :: background_default diff --git a/fortran/src/H5VLff.F90 b/fortran/src/H5VLff.F90 index 3b451d0..56edccb 100644 --- a/fortran/src/H5VLff.F90 +++ b/fortran/src/H5VLff.F90 @@ -52,10 +52,10 @@ CONTAINS !! !! \brief Registers a new VOL connector as a member of the virtual object layer class by name. !! -!! \param name Connector name. -!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F. +!! \param name \fortran_vol_name +!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F !! \param hdferr \fortran_error -!! \param vipl_id VOL initialization property list identifier. +!! \param vipl_id VOL initialization property list identifier !! !! See C API: @ref H5VLregister_connector_by_name() !! @@ -94,10 +94,10 @@ CONTAINS !! !! \brief Registers a new VOL connector by value. !! -!! \param connector_value Connector value. -!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F. +!! \param connector_value Connector value +!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F !! \param hdferr \fortran_error -!! \param vipl_id VOL initialization property list identifier. +!! \param vipl_id VOL initialization property list identifier !! !! See C API: @ref H5VLregister_connector_by_value() !! @@ -134,8 +134,8 @@ CONTAINS !! !! \brief Determines whether a VOL class has been registered or not ccording to a specified connector name. !! -!! \param name Connector name. -!! \param registered State of VOL class registration. +!! \param name \fortran_vol_name +!! \param registered State of VOL class registration !! \param hdferr \fortran_error !! !! See C API: @ref H5VLis_connector_registered_by_name() @@ -171,9 +171,9 @@ CONTAINS !! !! \brief Determines whether a VOL class has been registered or not according to a specified connector value (ID). !! -!! \param value ConneConnector value. -!! \param registered State of VOL class registration. -!! \param hdferr Retu\fortran_error +!! \param value Connector value +!! \param registered State of VOL class registration +!! \param hdferr \fortran_error !! !! See C API: @ref H5VLis_connector_registered_by_value() !! @@ -205,7 +205,7 @@ CONTAINS !! !! \brief Retrieves the ID for a registered VOL connector. !! -!! \param obj_id Object id. +!! \param obj_id Object id !! \param vol_id Connector id. !! \param hdferr \fortran_error !! @@ -238,7 +238,7 @@ CONTAINS !! !! \brief Retrieves the ID for a registered VOL connector. !! -!! \param name Connector name. +!! \param name \fortran_vol_name !! \param vol_id Connector id. !! \param hdferr \fortran_error !! @@ -275,8 +275,8 @@ CONTAINS !! !! \brief Retrieves the ID for a registered VOL connector. !! -!! \param value CConnector value. -!! \param vol_id Connector id. +!! \param value Connector value +!! \param vol_id Connector id !! \param hdferr \fortran_error !! !! See C API: @ref H5VLget_connector_id_by_value() @@ -308,10 +308,10 @@ CONTAINS !! !! \brief Retrieves a connector name for a VOL. !! -!! \param obj_id Object identifier or file identifier. -!! \param name Connector name. +!! \param obj_id Object identifier or file identifier +!! \param name \fortran_vol_name !! \param hdferr \fortran_error -!! \param name_len Maximum length of the name to retrieve. +!! \param name_len Maximum length of the name to retrieve !! !! See C API: @ref H5VLget_connector_name() !! @@ -355,7 +355,7 @@ CONTAINS !! !! \brief Closes a VOL connector ID. !! -!! \param vol_id A valid identifier of the connectory to unregister. +!! \param vol_id A valid identifier of the connectory to unregister !! \param hdferr \fortran_error !! !! See C API: @ref H5VLclose() @@ -381,8 +381,8 @@ CONTAINS !! !! \brief Removes a VOL connector ID from the library. !! -!! \param plugin_id A valid identifier of the connector to unregister.. -!! \param hdferr Ret\fortran_error +!! \param plugin_id A valid identifier of the connector to unregister +!! \param hdferr \fortran_error !! !! See C API: @ref H5VLunregister_connector() !! |