[svn-r7598]

Purpose:
    Integrate Fortran90 interfaces into C RM.

Solution:
    Remove "Non-C APIs" sections.
    Add "Fortran90 Interfaces" sections with F90 descriptions.

Platforms tested:
    IE 5, Safari
This commit is contained in:
Frank Baker
2003-10-10 10:42:17 -05:00
parent 048b52f9c6
commit 9ae8ff3906

View File

@@ -221,10 +221,20 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dclose_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dclose_f
<dd>
<pre>
SUBROUTINE h5dclose_f(dset_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dclose_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -325,10 +335,29 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a dataset identifier if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dcreate_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dcreate_f
<dd>
<pre>
SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id, &
hdferr, creation_prp)
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, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: creation_prp
! Dataset creation propertly
! list identifier , default
! value is H5P_DEFAULT_F (6)
END SUBROUTINE h5dcreate_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -373,10 +402,23 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dextend_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dextend_f
<dd>
<pre>
SUBROUTINE h5dextend_f(dataset_id, size, hdferr)
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
! 0 on success and -1 on failure
END SUBROUTINE h5dextend_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -447,10 +489,25 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dfill_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dfill_f
<dd>
<pre>
SUBROUTINE h5dfill_f(fill_value, space_id, buf, hdferr)
IMPLICIT NONE
TYPE, INTENET(IN) :: fill_value ! Fill value; may be have one of the
! following types:
! INTEGER, REAL, DOUBLE PRECISION, CHARACTER
INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
TYPE, DIMENSION(*) :: buf ! Memory buffer to fill in; must have
! the same datatype as fill value
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dfill_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -480,10 +537,23 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a dataset creation property list identifier if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_create_plist_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dget_create_plist_f
<dd>
<pre>
SUBROUTINE h5dget_create_plist_f(dataset_id, creation_prp, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
INTEGER(HID_T), INTENT(OUT) :: creation_id ! Dataset creation
! property list identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dget_create_plist_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -511,11 +581,17 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns the offset in bytes;
otherwise returns <code>HADDR_UNDEF</code>, a negative value.
<dt><strong>Fortran90 Interface:</strong>
<dd>None.
<!--
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_offset_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
--> <!--
<pre>
SUBROUTINE
</pre>
-->
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -544,10 +620,21 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a dataspace identifier if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_space_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dget_space_f
<dd>
<pre>
SUBROUTINE h5dget_space_f(dataset_id, dataspace_id, hdferr)
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
! 0 on success and -1 on failure
END SUBROUTINE h5dget_space_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -597,10 +684,25 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_space_status_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dget_space_status_f
<dd>
<pre>
SUBROUTINE h5dget_space_status_f(dset_id, flag, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER, INTENET(OUT) :: flag ! Status flag ; possible values:
! H5D_SPACE_STS_ERROR_F
! H5D_SPACE_STS_NOT_ALLOCATED_F
! H5D_SPACE_STS_PART_ALLOCATED_F
! H5D_SPACE_STS_ALLOCATED_F
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dget_space_status_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -631,10 +733,21 @@ facilitate moving easily between them.</i>
<dd>Returns the amount of storage space allocated for the dataset,
not counting meta data;
otherwise returns 0 (zero).
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_storage_size_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dget_storage_size_f
<dd>
<pre>
SUBROUTINE h5dget_storage_size_f(dset_id, size, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER(HSIZE_T), INTENT(OUT) :: size ! Amount of storage required for dataset
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dget_storage_size_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -667,10 +780,21 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a datatype identifier if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dget_type_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dget_type_f
<dd>
<pre>
SUBROUTINE h5dget_type_f(dataset_id, datatype_id, hdferr)
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
! 0 on success and -1 on failure
END SUBROUTINE h5dget_type_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -724,11 +848,17 @@ facilitate moving easily between them.</i>
<dd>Returns the return value of the last operator if it was non-zero,
or zero if all elements have been processed.
Otherwise returns a negative value.
<dt><strong>Fortran90 Interface:</strong>
<dd>None.
<!--
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5diterate_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
--> <!--
<pre>
SUBROUTINE
</pre>
-->
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -760,10 +890,22 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a dataset identifier if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dopen_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dopen_f
<dd>
<pre>
SUBROUTINE h5dopen_f(loc_id, name, dset_id, hdferr)
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(OUT) :: dset_id ! Dataset identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dopen_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -930,10 +1072,78 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dread_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dread_f (for all datatypes except object and dataset region references)
<dd>
<pre>
SUBROUTINE h5dread_f(dset_id, mem_type_id, buf, dims, hdferr, &
mem_space_id, file_space_id, xfer_prp)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
TYPE, INTENT(INOUT) :: buf ! Data buffer; may be a scalar or an array
DIMENSION(*), INTEGER(HSIZE_T), INTENT(IN) :: dims
! Array to hold corresponding dimension
! sizes of data buffer buf; dim(k) has
! value of the k-th dimension of buffer buf;
! values are ignored if buf is a scalar
!
! Deprecated type, will be removed in
! Release 1.6:
! INTEGER, INTENT(IN) :: dims(7)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
! Memory dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
! File dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
! Transfer property list identifier
! Default value is H5P_DEFAULT_F
END SUBROUTINE h5dread_f
</pre>
<dt><strong>Fortran90 Interface:</strong> h5dread_f (for object reference and dataset region reference datatypes)
<dd>
<pre>
SUBROUTINE h5dread_f(dset_id, mem_type_id, buf, n, hdferr, &
mem_space_id, file_space_id, xfer_prp)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
DIMENSION(*), INTEGER(HSIZE_T), INTENT(IN) :: dims
! Array to hold corresponding dimension
! sizes of data buffer buf; dim(k) has
! value of the k-th dimension of buffer buf;
! values are ignored if buf is a scalar
!
! Deprecated type, will be removed in
! Release 1.6:
! INTEGER, DIMENSION(7), INTENT(IN) :: dims
TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(INOUT) :: buf
! Data buffer of rank 1
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
! Memory dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
! File dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
! Transfer property list identifier
! Default value is H5P_DEFAULT_F
END SUBROUTINE h5dread_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -975,15 +1185,25 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dt><strong>Fortran90 Interface:</strong> h5dvlen_get_max_len_f
<dd>There is no direct FORTRAN couterpart for the C function
<code>H5Dvlen_get_buf_size</code>;
corresponding functionality is provided by the FORTRAN function
<a href="fortran/h5d_FORTRAN.html#h5dvlen_get_max_len_f"
target="FortranWin"><code>h5dvlen_get_max_len_f</code></a>.
<code>h5dvlen_get_max_len_f</code></a>.
<br>
<a href="fortran/h5d_FORTRAN.html#h5dvlen_get_max_len_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0 ></a>
<pre>
SUBROUTINE h5dvlen_get_max_len_f(dset_id, size, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_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) :: elem_len ! Maximum length of the element
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5dvlen_get_max_len_f
</pre>
<!--
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
@@ -1034,11 +1254,17 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Fortran90 Interface:</strong>
<dd>None.
<!--
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dvlen_reclaim_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
--> <!--
<pre>
SUBROUTINE
</pre>
-->
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->
@@ -1223,10 +1449,79 @@ facilitate moving easily between them.</i>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
otherwise returns a negative value.
<dt><strong>Non-C API(s):</strong>
<dd><a href="fortran/h5d_FORTRAN.html#h5dwrite_f"
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
<!--
<dt><strong>Fortran90 Interface:</strong> h5dwrite_f (for all datatypes except object and dataset region references)
<dd>
<pre>
SUBROUTINE h5dwrite_f(dset_id, mem_type_id, buf, dims, hdferr, &
mem_space_id, file_space_id, xfer_prp)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
TYPE, INTENT(IN) :: buf ! Data buffer; may be a scalar or an array
DIMENSION(*), INTEGER(HSIZE_T), INTENT(IN) :: dims
! Array to hold corresponding dimension
! sizes of data buffer buf; dim(k) has
! value of the k-th dimension of buffer buf;
! values are ignored if buf is a scalar
!
! Deprecated type, will be removed in
! Release 1.6:
! INTEGER, INTENT(IN) :: dims(7)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
! Memory dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
! File dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
! Transfer property list identifier
! Default value is H5P_DEFAULT_F
END SUBROUTINE h5dwrite_f
</pre>
<dt><strong>Fortran90 Interface:</strong> h5dwrite_f (for object reference and dataset region reference datatypes)
<dd>
<pre>
SUBROUTINE h5dwrite_f(dset_id, mem_type_id, buf, n, hdferr, &
mem_space_id, file_space_id, xfer_prp)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
DIMENSION(*), INTEGER(HSIZE_T), INTENT(IN) :: dims
! Array to hold corresponding dimension
! sizes of data buffer buf; dim(k) has
! value of the k-th dimension of buffer buf;
! values are ignored if buf is a scalar
!
! Deprecated type, will be removed in
! Release 1.6:
! INTEGER, DIMENSION(7), INTENT(IN) :: dims
TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(INOUT) :: buf
! Data buffer of rank 1
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
! Memory dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
! File dataspace identfier
! Default value is H5S_ALL_F
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
! Transfer property list identifier
! Default value is H5P_DEFAULT_F
END SUBROUTINE h5dwrite_f
</pre>
<!--<dt><strong>Non-C API(s):</strong>
<dd>
<img src="Graphics/Java.gif">
<img src="Graphics/C++.gif">
-->