summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorFrank Baker <fbaker@hdfgroup.org>2000-12-21 18:45:27 (GMT)
committerFrank Baker <fbaker@hdfgroup.org>2000-12-21 18:45:27 (GMT)
commit28c80557badb55fa29d6255f58a56f41fa9047ed (patch)
treeaadd67b8a74d0a7bdf6cd0e585430a3db0c5c2ba /doc
parentebb9713848df00a177d40ee40be32259783b2e01 (diff)
downloadhdf5-28c80557badb55fa29d6255f58a56f41fa9047ed.zip
hdf5-28c80557badb55fa29d6255f58a56f41fa9047ed.tar.gz
hdf5-28c80557badb55fa29d6255f58a56f41fa9047ed.tar.bz2
[svn-r3174]
Purpose: New Fortran90 API doc -- "HDF5 Fortran90 User's Notes" Platforms tested: IE 5
Diffstat (limited to 'doc')
-rw-r--r--doc/html/fortran/F90UserNotes.html117
1 files changed, 117 insertions, 0 deletions
diff --git a/doc/html/fortran/F90UserNotes.html b/doc/html/fortran/F90UserNotes.html
new file mode 100644
index 0000000..3b43f4c
--- /dev/null
+++ b/doc/html/fortran/F90UserNotes.html
@@ -0,0 +1,117 @@
+<html>
+<head>
+<title>HDF5 Fortran90 User's Notes</title>
+</head>
+
+<body bgcolor=#FFFFFF>
+<pre>
+
+ HDF5 Fortran90 User's Notes
+ ===========================
+
+About the source code organization
+==================================
+
+The Fortran APIs are organized in modules parallel to the HDF5 Interfaces.
+Each module is in a separate file with the name H5*ff.f. Corresponding C
+stubs are in the H5*f.c files. For example, the Fortran File APIs are in
+the file H5Fff.f and the corresponding C stubs are in the file H5Ff.c.
+
+Each module contains Fortran definitions of the constants, interfaces to
+the subroutines if needed, and the subroutines themselves.
+
+Users must use constant names in their programs instead of the numerical
+values, as the numerical values are subject to change without notice.
+
+About the Fortran APIs
+=======================
+
+* The Fortran APIs come in the form of Fortran subroutines.
+
+* Each Fortran subroutine name is derived from the corresponding C function
+ name by adding "_f" to the name. For example, the name of the C function
+ to create an HDF5 file is H5Fcreate; the corresponding Fortran subroutine
+ is h5fcreate_f.
+
+* A description of each implemented Fortran subroutine and its parameters
+ can be found following the description of the corresponding C function in
+ the HDF5 Reference Manual provided with this release.
+
+* The parameter list for each Fortran subroutine has two more parameters
+ than the corresponding C function. These additional parameters hold
+ the return value and an error code. The order of the Fortran subroutine
+ parameters may differ from the order of the C function parameters.
+ The Fortran subroutine parameters are listed in the following order:
+ -- required input parameters,
+ -- output parameters, including return value and error code, and
+ -- optional input parameters.
+ For example, the C function to create a dataset has the following
+ prototype:
+
+ hid_t H5Dcreate(hid_it loc_id, char *name, hid_t type_id,
+ hid_t space_id, hid_t creation_prp);
+
+ The corresponding Fortran subroutine has the following form:
+
+ SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id,
+ hdferr, creation_prp)
+
+ The first four parameters of the Fortran subroutine correspond to the
+ C function parameters. The fifth parameter, dset_id, is an output
+ parameter and contains a valid dataset identifier if the value of the
+ sixth output parameter hdferr indicates successful completion.
+ (Error code descriptions are provided with the subroutine descriptions
+ in the Reference Manual.) The seventh input parameter, creation_prp,
+
+ is optional, and may be omitted when the default creation property
+ list is used.
+
+* Parameters to the Fortran subroutines have one of the following
+ predefined datatypes (see the file H5fortran_types.f90 for KIND
+ definitions):
+
+ INTEGER(HID_T) compares with hid_t type in HDF5 C APIs
+ INTEGER(HSIZE_T) compares with hsize_t in HDF5 C APIs
+ INTEGER(HSSIZE_T) compares with hssize_t in HDF5 C APIs
+ INTEGER(SIZE_T) compares with the C size_t type
+
+ These integer types usually correspond to 4 or 8 byte integers,
+ depending on the FORTRAN90 compiler and the corresponding HDF5
+ C library definitions.
+
+ The H5R module defines two types of references:
+ TYPE(HOBJ_REF_T_F) compares to hobj_ref_t in HDF5 C API
+ TYPE(HDSET_REG_REF_T_F) compares to hdset_reg_ref_t in HDF5 C API
+
+* Each Fortran application must call the h5open_f subroutine to
+ initialize the Fortran interface and the HDF5 C Library before calling
+ any HDF5 Fortran subroutine. The application must call the h5close_f
+ subroutine after all calls to the HDF5 Fortran Library to close the
+ Fortran interface and HDF5 C Library.
+
+* List of the predefined datatypes can be found in the HDF5 Reference
+ Manual provided with this release. See <a href="../PredefDTypes.html">HDF5 Predefined Datatypes</a>.
+
+* When a C application reads data stored from a Fortran program, the data
+ will appear to be transposed due to the difference in the C and Fortran
+ storage orders. For example, if Fortran writes a 4x6 two-dimensional
+ dataset to the file, a C program will read it as a 6x4 two-dimensional
+ dataset into memory. The HDF5 C utilities h5dump and h5ls will also
+ display transposed data, if data is written from a Fortran program.
+
+* Fortran indices are 1-based.
+
+* Compound datatype datasets can be written or read by atomic fields only.
+
+</pre>
+
+<hr>
+
+<pre>
+Last modified: 15 December 2000
+Describes HDF5 Release 1.4 Beta, December 2000
+</pre>
+
+</body>
+</html>
+