summaryrefslogtreecommitdiffstats
path: root/hl
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2011-04-15 16:58:26 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2011-04-15 16:58:26 (GMT)
commit755d168ff7860886d032bbbef7429f9f9b1cda4c (patch)
treeb5b53237ef4136433b95a34f086419be9baa38b2 /hl
parent92bfc35459da4a495ca7935bde6b4a1ac85b3e67 (diff)
downloadhdf5-755d168ff7860886d032bbbef7429f9f9b1cda4c.zip
hdf5-755d168ff7860886d032bbbef7429f9f9b1cda4c.tar.gz
hdf5-755d168ff7860886d032bbbef7429f9f9b1cda4c.tar.bz2
[svn-r20508] Checked in changes for fixing:
Bug 1752 - H5Lite Fortran APIs do not allow you to create 4 dimensional datasets (or greater) * Fixed and tested the integer, real, double routines for creating and reading dimensional dataset with ranks 4-7 Bug 1939 - h5tbget_field_info_f * Fixed error in passing an array of characters with different length field names for h5tbmake_table. * Fixed error in h5tget_field_info_f with packing the C strings into a fortran array of strings. * Added optional arguement to h5tbget_field_info_f called maxlen which returns the maximum string character length in a field name element. * Uncommented out test for h5tbget_field_info_f in the test program and added additional checks for the output. Tested: jam (intel, gnu compilers)
Diffstat (limited to 'hl')
-rwxr-xr-xhl/fortran/src/H5LTf90proto.h474
-rwxr-xr-xhl/fortran/src/H5LTfc.c504
-rwxr-xr-xhl/fortran/src/H5LTff.f909658
-rwxr-xr-xhl/fortran/src/H5TBfc.c61
-rwxr-xr-xhl/fortran/src/H5TBff.f901578
-rw-r--r--hl/fortran/test/tstlite.f901761
-rwxr-xr-xhl/fortran/test/tsttable.f90722
7 files changed, 9572 insertions, 5186 deletions
diff --git a/hl/fortran/src/H5LTf90proto.h b/hl/fortran/src/H5LTf90proto.h
index c0de5ea..b418e72 100755
--- a/hl/fortran/src/H5LTf90proto.h
+++ b/hl/fortran/src/H5LTf90proto.h
@@ -34,40 +34,88 @@ H5_FCDLL void HD5packFstring (char *src, char *dest, size_t len);
# define nh5ltmake_dataset_int1_c H5_FC_FUNC_(h5ltmake_dataset_int1_c, H5LTMAKE_DATASET_INT1_C)
# define nh5ltmake_dataset_int2_c H5_FC_FUNC_(h5ltmake_dataset_int2_c, H5LTMAKE_DATASET_INT2_C)
# define nh5ltmake_dataset_int3_c H5_FC_FUNC_(h5ltmake_dataset_int3_c, H5LTMAKE_DATASET_INT3_C)
+# define nh5ltmake_dataset_int4_c H5_FC_FUNC_(h5ltmake_dataset_int4_c, H5LTMAKE_DATASET_INT4_C)
+# define nh5ltmake_dataset_int5_c H5_FC_FUNC_(h5ltmake_dataset_int5_c, H5LTMAKE_DATASET_INT5_C)
+# define nh5ltmake_dataset_int6_c H5_FC_FUNC_(h5ltmake_dataset_int6_c, H5LTMAKE_DATASET_INT6_C)
+# define nh5ltmake_dataset_int7_c H5_FC_FUNC_(h5ltmake_dataset_int7_c, H5LTMAKE_DATASET_INT7_C)
# define nh5ltmake_dataset_fl1_c H5_FC_FUNC_(h5ltmake_dataset_fl1_c, H5LTMAKE_DATASET_FL1_C)
# define nh5ltmake_dataset_fl2_c H5_FC_FUNC_(h5ltmake_dataset_fl2_c, H5LTMAKE_DATASET_FL2_C)
# define nh5ltmake_dataset_fl3_c H5_FC_FUNC_(h5ltmake_dataset_fl3_c, H5LTMAKE_DATASET_FL3_C)
+# define nh5ltmake_dataset_fl4_c H5_FC_FUNC_(h5ltmake_dataset_fl4_c, H5LTMAKE_DATASET_FL4_C)
+# define nh5ltmake_dataset_fl5_c H5_FC_FUNC_(h5ltmake_dataset_fl5_c, H5LTMAKE_DATASET_FL5_C)
+# define nh5ltmake_dataset_fl6_c H5_FC_FUNC_(h5ltmake_dataset_fl6_c, H5LTMAKE_DATASET_FL6_C)
+# define nh5ltmake_dataset_fl7_c H5_FC_FUNC_(h5ltmake_dataset_fl7_c, H5LTMAKE_DATASET_FL7_C)
# define nh5ltmake_dataset_dl1_c H5_FC_FUNC_(h5ltmake_dataset_dl1_c, H5LTMAKE_DATASET_DL1_C)
# define nh5ltmake_dataset_dl2_c H5_FC_FUNC_(h5ltmake_dataset_dl2_c, H5LTMAKE_DATASET_DL2_C)
# define nh5ltmake_dataset_dl3_c H5_FC_FUNC_(h5ltmake_dataset_dl3_c, H5LTMAKE_DATASET_DL3_C)
+# define nh5ltmake_dataset_dl4_c H5_FC_FUNC_(h5ltmake_dataset_dl4_c, H5LTMAKE_DATASET_DL4_C)
+# define nh5ltmake_dataset_dl5_c H5_FC_FUNC_(h5ltmake_dataset_dl5_c, H5LTMAKE_DATASET_DL5_C)
+# define nh5ltmake_dataset_dl6_c H5_FC_FUNC_(h5ltmake_dataset_dl6_c, H5LTMAKE_DATASET_DL6_C)
+# define nh5ltmake_dataset_dl7_c H5_FC_FUNC_(h5ltmake_dataset_dl7_c, H5LTMAKE_DATASET_DL7_C)
# define nh5ltmake_dataset_nint1_c H5_FC_FUNC_(h5ltmake_dataset_nint1_c, H5LTMAKE_DATASET_NINT1_C)
# define nh5ltmake_dataset_nint2_c H5_FC_FUNC_(h5ltmake_dataset_nint2_c, H5LTMAKE_DATASET_NINT2_C)
# define nh5ltmake_dataset_nint3_c H5_FC_FUNC_(h5ltmake_dataset_nint3_c, H5LTMAKE_DATASET_NINT3_C)
+# define nh5ltmake_dataset_nint4_c H5_FC_FUNC_(h5ltmake_dataset_nint4_c, H5LTMAKE_DATASET_NINT4_C)
+# define nh5ltmake_dataset_nint5_c H5_FC_FUNC_(h5ltmake_dataset_nint5_c, H5LTMAKE_DATASET_NINT5_C)
+# define nh5ltmake_dataset_nint6_c H5_FC_FUNC_(h5ltmake_dataset_nint6_c, H5LTMAKE_DATASET_NINT6_C)
+# define nh5ltmake_dataset_nint7_c H5_FC_FUNC_(h5ltmake_dataset_nint7_c, H5LTMAKE_DATASET_NINT7_C)
# define nh5ltmake_dataset_nfl1_c H5_FC_FUNC_(h5ltmake_dataset_nfl1_c, H5LTMAKE_DATASET_NFL1_C)
# define nh5ltmake_dataset_nfl2_c H5_FC_FUNC_(h5ltmake_dataset_nfl2_c, H5LTMAKE_DATASET_NFL2_C)
# define nh5ltmake_dataset_nfl3_c H5_FC_FUNC_(h5ltmake_dataset_nfl3_c, H5LTMAKE_DATASET_NFL3_C)
+# define nh5ltmake_dataset_nfl4_c H5_FC_FUNC_(h5ltmake_dataset_nfl4_c, H5LTMAKE_DATASET_NFL4_C)
+# define nh5ltmake_dataset_nfl5_c H5_FC_FUNC_(h5ltmake_dataset_nfl5_c, H5LTMAKE_DATASET_NFL5_C)
+# define nh5ltmake_dataset_nfl6_c H5_FC_FUNC_(h5ltmake_dataset_nfl6_c, H5LTMAKE_DATASET_NFL6_C)
+# define nh5ltmake_dataset_nfl7_c H5_FC_FUNC_(h5ltmake_dataset_nfl7_c, H5LTMAKE_DATASET_NFL7_C)
# define nh5ltmake_dataset_ndl1_c H5_FC_FUNC_(h5ltmake_dataset_ndl1_c, H5LTMAKE_DATASET_NDL1_C)
# define nh5ltmake_dataset_ndl2_c H5_FC_FUNC_(h5ltmake_dataset_ndl2_c, H5LTMAKE_DATASET_NDL2_C)
# define nh5ltmake_dataset_ndl3_c H5_FC_FUNC_(h5ltmake_dataset_ndl3_c, H5LTMAKE_DATASET_NDL3_C)
+# define nh5ltmake_dataset_ndl4_c H5_FC_FUNC_(h5ltmake_dataset_ndl4_c, H5LTMAKE_DATASET_NDL4_C)
+# define nh5ltmake_dataset_ndl5_c H5_FC_FUNC_(h5ltmake_dataset_ndl5_c, H5LTMAKE_DATASET_NDL5_C)
+# define nh5ltmake_dataset_ndl6_c H5_FC_FUNC_(h5ltmake_dataset_ndl6_c, H5LTMAKE_DATASET_NDL6_C)
+# define nh5ltmake_dataset_ndl7_c H5_FC_FUNC_(h5ltmake_dataset_ndl7_c, H5LTMAKE_DATASET_NDL7_C)
# define nh5ltread_dataset_c H5_FC_FUNC_(h5ltread_dataset_c, H5LTREAD_DATASET_C)
# define nh5ltread_dataset_int1_c H5_FC_FUNC_(h5ltread_dataset_int1_c, H5LTREAD_DATASET_INT1_C)
# define nh5ltread_dataset_int2_c H5_FC_FUNC_(h5ltread_dataset_int2_c, H5LTREAD_DATASET_INT2_C)
# define nh5ltread_dataset_int3_c H5_FC_FUNC_(h5ltread_dataset_int3_c, H5LTREAD_DATASET_INT3_C)
+# define nh5ltread_dataset_int4_c H5_FC_FUNC_(h5ltread_dataset_int4_c, H5LTREAD_DATASET_INT4_C)
+# define nh5ltread_dataset_int5_c H5_FC_FUNC_(h5ltread_dataset_int5_c, H5LTREAD_DATASET_INT5_C)
+# define nh5ltread_dataset_int6_c H5_FC_FUNC_(h5ltread_dataset_int6_c, H5LTREAD_DATASET_INT6_C)
+# define nh5ltread_dataset_int7_c H5_FC_FUNC_(h5ltread_dataset_int7_c, H5LTREAD_DATASET_INT7_C)
# define nh5ltread_dataset_fl1_c H5_FC_FUNC_(h5ltread_dataset_fl1_c, H5LTREAD_DATASET_FL1_C)
# define nh5ltread_dataset_fl2_c H5_FC_FUNC_(h5ltread_dataset_fl2_c, H5LTREAD_DATASET_FL2_C)
# define nh5ltread_dataset_fl3_c H5_FC_FUNC_(h5ltread_dataset_fl3_c, H5LTREAD_DATASET_FL3_C)
+# define nh5ltread_dataset_fl4_c H5_FC_FUNC_(h5ltread_dataset_fl4_c, H5LTREAD_DATASET_FL4_C)
+# define nh5ltread_dataset_fl5_c H5_FC_FUNC_(h5ltread_dataset_fl5_c, H5LTREAD_DATASET_FL5_C)
+# define nh5ltread_dataset_fl6_c H5_FC_FUNC_(h5ltread_dataset_fl6_c, H5LTREAD_DATASET_FL6_C)
+# define nh5ltread_dataset_fl7_c H5_FC_FUNC_(h5ltread_dataset_fl7_c, H5LTREAD_DATASET_FL7_C)
# define nh5ltread_dataset_dl1_c H5_FC_FUNC_(h5ltread_dataset_dl1_c, H5LTREAD_DATASET_DL1_C)
# define nh5ltread_dataset_dl2_c H5_FC_FUNC_(h5ltread_dataset_dl2_c, H5LTREAD_DATASET_DL2_C)
# define nh5ltread_dataset_dl3_c H5_FC_FUNC_(h5ltread_dataset_dl3_c, H5LTREAD_DATASET_DL3_C)
+# define nh5ltread_dataset_dl4_c H5_FC_FUNC_(h5ltread_dataset_dl4_c, H5LTREAD_DATASET_DL4_C)
+# define nh5ltread_dataset_dl5_c H5_FC_FUNC_(h5ltread_dataset_dl5_c, H5LTREAD_DATASET_DL5_C)
+# define nh5ltread_dataset_dl6_c H5_FC_FUNC_(h5ltread_dataset_dl6_c, H5LTREAD_DATASET_DL6_C)
+# define nh5ltread_dataset_dl7_c H5_FC_FUNC_(h5ltread_dataset_dl7_c, H5LTREAD_DATASET_DL7_C)
# define nh5ltread_dataset_nint1_c H5_FC_FUNC_(h5ltread_dataset_nint1_c, H5LTREAD_DATASET_NINT1_C)
# define nh5ltread_dataset_nint2_c H5_FC_FUNC_(h5ltread_dataset_nint2_c, H5LTREAD_DATASET_NINT2_C)
# define nh5ltread_dataset_nint3_c H5_FC_FUNC_(h5ltread_dataset_nint3_c, H5LTREAD_DATASET_NINT3_C)
+# define nh5ltread_dataset_nint4_c H5_FC_FUNC_(h5ltread_dataset_nint4_c, H5LTREAD_DATASET_NINT4_C)
+# define nh5ltread_dataset_nint5_c H5_FC_FUNC_(h5ltread_dataset_nint5_c, H5LTREAD_DATASET_NINT5_C)
+# define nh5ltread_dataset_nint6_c H5_FC_FUNC_(h5ltread_dataset_nint6_c, H5LTREAD_DATASET_NINT6_C)
+# define nh5ltread_dataset_nint7_c H5_FC_FUNC_(h5ltread_dataset_nint7_c, H5LTREAD_DATASET_NINT7_C)
# define nh5ltread_dataset_nfl1_c H5_FC_FUNC_(h5ltread_dataset_nfl1_c, H5LTREAD_DATASET_NFL1_C)
# define nh5ltread_dataset_nfl2_c H5_FC_FUNC_(h5ltread_dataset_nfl2_c, H5LTREAD_DATASET_NFL2_C)
# define nh5ltread_dataset_nfl3_c H5_FC_FUNC_(h5ltread_dataset_nfl3_c, H5LTREAD_DATASET_NFL3_C)
+# define nh5ltread_dataset_nfl4_c H5_FC_FUNC_(h5ltread_dataset_nfl4_c, H5LTREAD_DATASET_NFL4_C)
+# define nh5ltread_dataset_nfl5_c H5_FC_FUNC_(h5ltread_dataset_nfl5_c, H5LTREAD_DATASET_NFL5_C)
+# define nh5ltread_dataset_nfl6_c H5_FC_FUNC_(h5ltread_dataset_nfl6_c, H5LTREAD_DATASET_NFL6_C)
+# define nh5ltread_dataset_nfl7_c H5_FC_FUNC_(h5ltread_dataset_nfl7_c, H5LTREAD_DATASET_NFL7_C)
# define nh5ltread_dataset_ndl1_c H5_FC_FUNC_(h5ltread_dataset_ndl1_c, H5LTREAD_DATASET_NDL1_C)
# define nh5ltread_dataset_ndl2_c H5_FC_FUNC_(h5ltread_dataset_ndl2_c, H5LTREAD_DATASET_NDL2_C)
# define nh5ltread_dataset_ndl3_c H5_FC_FUNC_(h5ltread_dataset_ndl3_c, H5LTREAD_DATASET_NDL3_C)
+# define nh5ltread_dataset_ndl4_c H5_FC_FUNC_(h5ltread_dataset_ndl4_c, H5LTREAD_DATASET_NDL4_C)
+# define nh5ltread_dataset_ndl5_c H5_FC_FUNC_(h5ltread_dataset_ndl5_c, H5LTREAD_DATASET_NDL5_C)
+# define nh5ltread_dataset_ndl6_c H5_FC_FUNC_(h5ltread_dataset_ndl6_c, H5LTREAD_DATASET_NDL6_C)
+# define nh5ltread_dataset_ndl7_c H5_FC_FUNC_(h5ltread_dataset_ndl7_c, H5LTREAD_DATASET_NDL7_C)
# define nh5ltmake_dataset_string_c H5_FC_FUNC_(h5ltmake_dataset_string_c, H5LTMAKE_DATASET_STRING_C)
# define nh5ltread_dataset_string_c H5_FC_FUNC_(h5ltread_dataset_string_c, H5LTREAD_DATASET_STRING_C)
@@ -181,6 +229,47 @@ nh5ltmake_dataset_int3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltmake_dataset_int4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_int5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_int6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_int7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltmake_dataset_fl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -211,6 +300,47 @@ nh5ltmake_dataset_fl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltmake_dataset_fl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_fl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_fl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_fl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltmake_dataset_dl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -241,6 +371,76 @@ nh5ltmake_dataset_dl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltmake_dataset_dl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_dl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_dl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_dl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_nint1_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_nint2_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_nint3_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltmake_dataset_nint1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -271,7 +471,17 @@ nh5ltmake_dataset_nint3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id,
+nh5ltmake_dataset_nint4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_nfl5_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
int_f *rank,
@@ -281,7 +491,7 @@ nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_nfl2_c (hid_t_f *loc_id,
+nh5ltmake_dataset_nfl6_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
int_f *rank,
@@ -291,7 +501,7 @@ nh5ltmake_dataset_nfl2_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_nfl3_c (hid_t_f *loc_id,
+nh5ltmake_dataset_nfl7_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
int_f *rank,
@@ -331,6 +541,36 @@ nh5ltmake_dataset_ndl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltmake_dataset_ndl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_ndl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltmake_dataset_ndl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -368,6 +608,42 @@ nh5ltread_dataset_int3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_int4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_int5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_int6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_int7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_fl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -395,6 +671,43 @@ nh5ltread_dataset_fl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_fl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_fl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_fl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_fl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_dl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -422,6 +735,42 @@ nh5ltread_dataset_dl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_dl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_dl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_dl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_dl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_nint1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -449,6 +798,42 @@ nh5ltread_dataset_nint3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_nint4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nint5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nint6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nint7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_nfl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -476,6 +861,42 @@ nh5ltread_dataset_nfl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_nfl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nfl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nfl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_nfl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltread_dataset_ndl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -503,6 +924,42 @@ nh5ltread_dataset_ndl3_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
+nh5ltread_dataset_ndl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_ndl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_ndl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltread_dataset_ndl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims);
+
+HDF5_HL_F90CSTUBDLL
+int_f
nh5ltset_attribute_int_c(hid_t_f *loc_id,
int_f *namelen,
_fcd dsetname,
@@ -759,7 +1216,8 @@ nh5tbmake_table_c(int_f *namelen1,
hid_t_f *field_types,
hsize_t_f *chunk_size,
int_f *compress,
- int_f *len, /* field_names lenghts */
+ int_f *char_len_field_names, /* field_names lenghts */
+ int_f *max_char_size_field_names, /* char len of fields */
_fcd buf); /* field_names */
HDF5_HL_F90CSTUBDLL
@@ -1069,10 +1527,10 @@ nh5tbget_field_info_c(hid_t_f *loc_id,
size_t_f *field_sizes,
size_t_f *field_offsets,
size_t_f *type_size,
- int_f *namelen2, /* field_names lenghts */
- _fcd field_names) ; /* field_names */
-
-
+ int_f *namelen2,
+ int_f *lenmax,
+ _fcd field_names,
+ int_f *maxlen_out);
#endif /* _H5LTf90proto_H */
diff --git a/hl/fortran/src/H5LTfc.c b/hl/fortran/src/H5LTfc.c
index 0985aac..484acf1 100755
--- a/hl/fortran/src/H5LTfc.c
+++ b/hl/fortran/src/H5LTfc.c
@@ -132,6 +132,50 @@ nh5ltmake_dataset_int3_c (hid_t_f *loc_id,
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
int_f
+nh5ltmake_dataset_int4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_int5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_int6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_int7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
nh5ltmake_dataset_fl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -165,6 +209,50 @@ nh5ltmake_dataset_fl3_c (hid_t_f *loc_id,
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
int_f
+nh5ltmake_dataset_fl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_fl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_fl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_fl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
nh5ltmake_dataset_dl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -198,6 +286,50 @@ nh5ltmake_dataset_dl3_c (hid_t_f *loc_id,
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
int_f
+nh5ltmake_dataset_dl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_dl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_dl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_dl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
nh5ltmake_dataset_nint1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -231,6 +363,50 @@ nh5ltmake_dataset_nint3_c (hid_t_f *loc_id,
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
int_f
+nh5ltmake_dataset_nint4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nint5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nint6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nint7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -264,6 +440,50 @@ nh5ltmake_dataset_nfl3_c (hid_t_f *loc_id,
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
int_f
+nh5ltmake_dataset_nfl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nfl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nfl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_nfl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
nh5ltmake_dataset_ndl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -296,6 +516,50 @@ nh5ltmake_dataset_ndl3_c (hid_t_f *loc_id,
{
return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
}
+int_f
+nh5ltmake_dataset_ndl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_ndl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_ndl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
+int_f
+nh5ltmake_dataset_ndl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ int_f *rank,
+ hsize_t_f *dims,
+ hid_t_f *type_id,
+ void *buf)
+{
+ return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf);
+}
/*-------------------------------------------------------------------------
* Function: H5LTread_dataset_c
*
@@ -389,6 +653,46 @@ nh5ltread_dataset_int3_c (hid_t_f *loc_id,
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
int_f
+nh5ltread_dataset_int4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_int5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_int6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_int7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
nh5ltread_dataset_fl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -419,6 +723,46 @@ nh5ltread_dataset_fl3_c (hid_t_f *loc_id,
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
int_f
+nh5ltread_dataset_fl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_fl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_fl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_fl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
nh5ltread_dataset_dl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -449,6 +793,46 @@ nh5ltread_dataset_dl3_c (hid_t_f *loc_id,
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
int_f
+nh5ltread_dataset_dl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_dl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_dl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_dl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
nh5ltread_dataset_nint1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -479,6 +863,46 @@ nh5ltread_dataset_nint3_c (hid_t_f *loc_id,
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
int_f
+nh5ltread_dataset_nint4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nint5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nint6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nint7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
nh5ltread_dataset_nfl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -509,6 +933,46 @@ nh5ltread_dataset_nfl3_c (hid_t_f *loc_id,
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
int_f
+nh5ltread_dataset_nfl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nfl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nfl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_nfl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
nh5ltread_dataset_ndl1_c (hid_t_f *loc_id,
int_f *namelen,
_fcd name,
@@ -538,6 +1002,46 @@ nh5ltread_dataset_ndl3_c (hid_t_f *loc_id,
{
return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
}
+int_f
+nh5ltread_dataset_ndl4_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_ndl5_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_ndl6_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
+int_f
+nh5ltread_dataset_ndl7_c (hid_t_f *loc_id,
+ int_f *namelen,
+ _fcd name,
+ hid_t_f *type_id,
+ void *buf,
+ hsize_t_f *dims)
+{
+ return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims);
+}
/*-------------------------------------------------------------------------
* Function: H5LTmake_dataset_string_c
*
diff --git a/hl/fortran/src/H5LTff.f90 b/hl/fortran/src/H5LTff.f90
index 0c07449..cbc9b96 100755
--- a/hl/fortran/src/H5LTff.f90
+++ b/hl/fortran/src/H5LTff.f90
@@ -17,3370 +17,6300 @@
! This file contains FORTRAN90 interfaces for H5LT functions
!
-module h5lt
-use h5fortran_types
-use hdf5
-
-interface h5ltmake_dataset_f
- module procedure h5ltmake_dataset_f_int1
- module procedure h5ltmake_dataset_f_int2
- module procedure h5ltmake_dataset_f_int3
- module procedure h5ltmake_dataset_f_float1
- module procedure h5ltmake_dataset_f_float2
- module procedure h5ltmake_dataset_f_float3
- module procedure h5ltmake_dataset_f_double1
- module procedure h5ltmake_dataset_f_double2
- module procedure h5ltmake_dataset_f_double3
-end interface
-
-interface h5ltread_dataset_f
- module procedure h5ltread_dataset_f_int1
- module procedure h5ltread_dataset_f_int2
- module procedure h5ltread_dataset_f_int3
- module procedure h5ltread_dataset_f_float1
- module procedure h5ltread_dataset_f_float2
- module procedure h5ltread_dataset_f_float3
- module procedure h5ltread_dataset_f_double1
- module procedure h5ltread_dataset_f_double2
- module procedure h5ltread_dataset_f_double3
-end interface
-
-interface h5ltmake_dataset_int_f
- module procedure h5ltmake_dataset_int_f_1
- module procedure h5ltmake_dataset_int_f_2
- module procedure h5ltmake_dataset_int_f_3
-end interface
-
-interface h5ltmake_dataset_float_f
- module procedure h5ltmake_dataset_float_f_1
- module procedure h5ltmake_dataset_float_f_2
- module procedure h5ltmake_dataset_float_f_3
-end interface
-
-interface h5ltmake_dataset_double_f
- module procedure h5ltmake_dataset_double_f_1
- module procedure h5ltmake_dataset_double_f_2
- module procedure h5ltmake_dataset_double_f_3
-end interface
-
-interface h5ltread_dataset_int_f
- module procedure h5ltread_dataset_int_f_1
- module procedure h5ltread_dataset_int_f_2
- module procedure h5ltread_dataset_int_f_3
-end interface
-
-interface h5ltread_dataset_float_f
- module procedure h5ltread_dataset_float_f_1
- module procedure h5ltread_dataset_float_f_2
- module procedure h5ltread_dataset_float_f_3
-end interface
-
-interface h5ltread_dataset_double_f
- module procedure h5ltread_dataset_double_f_1
- module procedure h5ltread_dataset_double_f_2
- module procedure h5ltread_dataset_double_f_3
-end interface
-
-contains
-!-------------------------------------------------------------------------
-! Make/Read dataset functions
-!-------------------------------------------------------------------------
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_int1
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_int1(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_int1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT1_C'::h5ltmake_dataset_int1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltmake_dataset_int1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_int1
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_int2
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_int2(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_int2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT2_C'::h5ltmake_dataset_int2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_int2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_int2
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_int3
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_int3(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_int3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT3_C'::h5ltmake_dataset_int3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_int3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_int3
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_float1
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_float1(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_float1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL1_C'::h5ltmake_dataset_fl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltmake_dataset_fl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_float1
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_float2
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_float2(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_float2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL2_C'::h5ltmake_dataset_fl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_fl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_float2
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_float3
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_float3(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_float3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL3_C'::h5ltmake_dataset_fl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_fl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_float3
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_double1
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_double1(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_double1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL1_C'::h5ltmake_dataset_dl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltmake_dataset_dl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_double1
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_double2
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_double2(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_double2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL2_C'::h5ltmake_dataset_dl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_dl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_double2
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_f_double3
-!
-! Purpose: Creates and writes a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 1, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_f_double3(loc_id,&
- dset_name,&
- rank,&
- dims,&
- type_id,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_f_double3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL3_C'::h5ltmake_dataset_dl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_dl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
-
-end subroutine h5ltmake_dataset_f_double3
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_int1
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_int1(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_int1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(inout), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT1_C'::h5ltread_dataset_int1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- integer(HID_T), intent(IN) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), dimension(*), intent(IN) :: dims ! size of the bufffer buf
- integer, intent(IN), dimension(*) :: buf ! data buffer
- end function h5ltread_dataset_int1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_int1
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_int2
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_int2(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_int2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT2_C'::h5ltread_dataset_int2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_int2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_int2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_int3
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_int3(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_int3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT3_C'::h5ltread_dataset_int3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_int3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_int3
-
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_float1
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_float1(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_float1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(inout), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL1_C'::h5ltread_dataset_fl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltread_dataset_fl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_float1
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_float2
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_float2(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_float2
-!DEC$endif
-!
-
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL2_C'::h5ltread_dataset_fl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_fl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_float2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_float3
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_float3(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_float3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL3_C'::h5ltread_dataset_fl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_fl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_float3
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_double1
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_double1(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport ::h5ltread_dataset_f_double1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(inout), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL1_C'::h5ltread_dataset_dl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltread_dataset_dl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_double1
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_double2
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_double2(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_double2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL2_C'::h5ltread_dataset_dl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_dl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_double2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_f_double3
-!
-! Purpose: Read a dataset of a type TYPE_ID
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_f_double3(loc_id,&
- dset_name,&
- type_id,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_f_double3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL3_C'::h5ltread_dataset_dl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_dl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
-
-end subroutine h5ltread_dataset_f_double3
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_int_f_1
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_int_f_1 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_int_f_1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT1_C'::h5ltmake_dataset_nint1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltmake_dataset_nint1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,h5t_native_integer,buf)
-
-end subroutine h5ltmake_dataset_int_f_1
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_int_f_2
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_int_f_2 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_int_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
-
- interface
- integer function h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT2_C'::h5ltmake_dataset_nint2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_nint2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
-
-end subroutine h5ltmake_dataset_int_f_2
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_int_f_3
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_int_f_3 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_int_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
-
- interface
- integer function h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT3_C'::h5ltmake_dataset_nint3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_nint3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
-
-end subroutine h5ltmake_dataset_int_f_3
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_float_f_1
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_float_f_1 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_float_f_1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL1_C'::h5ltmake_dataset_nfl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltmake_dataset_nfl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
-
-end subroutine h5ltmake_dataset_float_f_1
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_float_f_2
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_float_f_2 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_float_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL2_C'::h5ltmake_dataset_nfl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_nfl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
-
-end subroutine h5ltmake_dataset_float_f_2
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_float_f_3
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_float_f_3 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_float_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL3_C'::h5ltmake_dataset_nfl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_nfl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
-
-end subroutine h5ltmake_dataset_float_f_3
-
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_double_f_1
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_double_f_1 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_double_f_1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(in), &
- dimension(dims(1)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL1_C'::h5ltmake_dataset_ndl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1)) :: buf ! data buffer
- end function h5ltmake_dataset_ndl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
-
-end subroutine h5ltmake_dataset_double_f_1
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_double_f_2
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_double_f_2 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_double_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL2_C'::h5ltmake_dataset_ndl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltmake_dataset_ndl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
-
-end subroutine h5ltmake_dataset_double_f_2
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_double_f_3
-!
-! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_double_f_3 (loc_id,&
- dset_name,&
- rank,&
- dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_double_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL3_C'::h5ltmake_dataset_ndl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: rank ! rank
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(in), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltmake_dataset_ndl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
-
-end subroutine h5ltmake_dataset_double_f_3
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_int_f_1
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_int_f_1(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_int_f_1
-!DEC$endif
-!
-
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT1_C'::h5ltread_dataset_nint1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
- end function h5ltread_dataset_nint1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
-
-end subroutine h5ltread_dataset_int_f_1
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_int_f_2
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_int_f_2(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_int_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT2_C'::h5ltread_dataset_nint2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_nint2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
-
-end subroutine h5ltread_dataset_int_f_2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_int_f_3
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_int_f_3(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_int_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT3_C'::h5ltread_dataset_nint3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_nint3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
-
-end subroutine h5ltread_dataset_int_f_3
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_float_f_1
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_float_f_1(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_float_f_1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL1_C'::h5ltread_dataset_nfl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
- end function h5ltread_dataset_nfl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
-
-end subroutine h5ltread_dataset_float_f_1
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_float_f_2
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_float_f_2(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_float_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL2_C'::h5ltread_dataset_nfl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_nfl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
-
-end subroutine h5ltread_dataset_float_f_2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_float_f_3
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_float_f_3(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_float_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- real, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL3_C'::h5ltread_dataset_nfl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- real, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_nfl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
-
-end subroutine h5ltread_dataset_float_f_3
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_double_f_1
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_double_f_1(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_double_f_1
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL1_C'::h5ltread_dataset_ndl1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(inout), &
- dimension(dims(1)) :: buf ! data buffer
- end function h5ltread_dataset_ndl1_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
-
-end subroutine h5ltread_dataset_double_f_1
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_double_f_2
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_double_f_2(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_double_f_2
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL2_C'::h5ltread_dataset_ndl2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(inout), &
- dimension(dims(1),dims(2)) :: buf ! data buffer
- end function h5ltread_dataset_ndl2_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
-
-end subroutine h5ltread_dataset_double_f_2
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_double_f_3
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_double_f_3(loc_id,&
- dset_name,&
- buf,&
- dims,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_double_f_3
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- integer :: errcode ! error code
- integer :: namelen ! name length
- double precision, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
-
- interface
- integer function h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL3_C'::h5ltread_dataset_ndl3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(hid_t), intent(in) :: type_id ! datatype identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf
- double precision, intent(inout), &
- dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer
- end function h5ltread_dataset_ndl3_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
-
-end subroutine h5ltread_dataset_double_f_3
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltmake_dataset_string_f
-!
-! Purpose: Creates and writes a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltmake_dataset_string_f(loc_id,&
- dset_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltmake_dataset_string_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: buflen ! buffer length
-
- interface
- integer function h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_STRING_C'::h5ltmake_dataset_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: buflen ! lenght of data buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: buf ! data buffer
- end function h5ltmake_dataset_string_c
- end interface
-
- namelen = len(dset_name)
- buflen = len(buf)
- errcode = h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
-
-end subroutine h5ltmake_dataset_string_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltread_dataset_string_f
-!
-! Purpose: Read a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 22, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltread_dataset_string_f(loc_id,&
- dset_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltread_dataset_string_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(inout) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_STRING_C'::h5ltread_dataset_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(inout) :: buf ! data buffer
- end function h5ltread_dataset_string_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
-
-end subroutine h5ltread_dataset_string_f
-
-
-
-
-!-------------------------------------------------------------------------
-! Make/Read attribute functions
-!-------------------------------------------------------------------------
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltset_attribute_int_f
-!
-! Purpose: Create and write an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltset_attribute_int_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- size,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltset_attribute_int_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- integer :: errcode ! error code
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_INT_C'::h5ltset_attribute_int_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- integer, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltset_attribute_int_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
-
-end subroutine h5ltset_attribute_int_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltset_attribute_float_f
-!
-! Purpose: Create and write an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltset_attribute_float_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- size,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltset_attribute_float_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- integer :: errcode ! error code
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_FLOAT_C'::h5ltset_attribute_float_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- real, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltset_attribute_float_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
-
-end subroutine h5ltset_attribute_float_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltset_attribute_double_f
-!
-! Purpose: Create and write an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltset_attribute_double_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- size,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltset_attribute_double_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- integer :: errcode ! error code
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_DOUBLE_C'::h5ltset_attribute_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(size_t), intent(in) :: size ! size of attribute array
- double precision, intent(in), dimension(*) :: buf ! data buffer
- end function h5ltset_attribute_double_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
-
-end subroutine h5ltset_attribute_double_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltset_attribute_string_f
-!
-! Purpose: Create and write an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltset_attribute_string_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltset_attribute_string_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer :: errcode ! error code
- character(len=*), intent(in) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
- integer :: buflen ! data buffer length
-
- interface
- integer function h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_STRING_C'::h5ltset_attribute_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- integer :: buflen ! data buffer length
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- character(len=*), intent(in) :: buf ! data buffer
- end function h5ltset_attribute_string_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- buflen = len(buf)
- errcode = h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
-
-end subroutine h5ltset_attribute_string_f
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_int_f
-!
-! Purpose: Reads an attribute named ATTR_NAME
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_int_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_int_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer :: errcode ! error code
- integer, intent(inout), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INT_C'::h5ltget_attribute_int_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer, intent(inout), dimension(*) :: buf ! data buffer
- end function h5ltget_attribute_int_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
-
-end subroutine h5ltget_attribute_int_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_float_f
-!
-! Purpose: Reads an attribute named ATTR_NAME
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_float_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_float_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer :: errcode ! error code
- real, intent(inout), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_FLOAT_C'::h5ltget_attribute_float_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- real, intent(inout), dimension(*) :: buf ! data buffer
- end function h5ltget_attribute_float_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
-
-end subroutine h5ltget_attribute_float_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_double_f
-!
-! Purpose: Reads an attribute named ATTR_NAME
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_double_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_double_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer :: errcode ! error code
- double precision,intent(inout),dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_DOUBLE_C'::h5ltget_attribute_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- double precision, intent(inout), dimension(*) :: buf ! data buffer
- end function h5ltget_attribute_double_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
-
-end subroutine h5ltget_attribute_double_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_string_f
-!
-! Purpose: Reads an attribute named ATTR_NAME
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_string_f(loc_id,&
- dset_name,&
- attr_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_string_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer :: errcode ! error code
- character(len=*), intent(inout) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_STRING_C'::h5ltget_attribute_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- character(len=*), intent(inout) :: buf ! data buffer
- end function h5ltget_attribute_string_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
-
-end subroutine h5ltget_attribute_string_f
-
-!-------------------------------------------------------------------------
-! Query dataset functions
-!-------------------------------------------------------------------------
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_dataset_ndims_f
-!
-! Purpose: Gets the dimensionality of a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 30, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_dataset_ndims_f(loc_id,&
- dset_name,&
- rank,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_dataset_ndims_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(inout) :: rank ! rank
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_NDIMS_C'::h5ltget_dataset_ndims_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(inout) :: rank ! rank
- end function h5ltget_dataset_ndims_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
-
-end subroutine h5ltget_dataset_ndims_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltfind_dataset_f
-!
-! Purpose: Inquires if a dataset named dset_name exists attached
-! to the object loc_id.
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-integer function h5ltfind_dataset_f(loc_id,&
- dset_name)
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltfind_dataset_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltfind_dataset_c(loc_id,namelen,dset_name)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTFIND_DATASET_C'::h5ltfind_dataset_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- end function h5ltfind_dataset_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltfind_dataset_c(loc_id,namelen,dset_name)
- h5ltfind_dataset_f = errcode
-
-end function h5ltfind_dataset_f
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_dataset_info_f
-!
-! Purpose: Gets information about a dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 30, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_dataset_info_f(loc_id,&
- dset_name,&
- dims,&
- type_class,&
- type_size,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_dataset_info_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions
- integer, intent(inout) :: type_class ! type class
- integer(size_t), intent(inout) :: type_size ! type size
- integer :: errcode ! error code
- integer :: namelen ! name length
-
- interface
- integer function h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_INFO_C'::h5ltget_dataset_info_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions
- integer, intent(inout) :: type_class ! type class
- integer(size_t), intent(inout) :: type_size ! type size
- end function h5ltget_dataset_info_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
-
-end subroutine h5ltget_dataset_info_f
-
-
-!-------------------------------------------------------------------------
-! Query attribute functions
-!-------------------------------------------------------------------------
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_ndims_f
-!
-! Purpose: Create and write an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_ndims_f(loc_id,&
- dset_name,&
- attr_name,&
- rank,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_ndims_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer, intent(inout) :: rank ! rank
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_NDIMS_C'::h5ltget_attribute_ndims_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer, intent(inout) :: rank ! rank
- end function h5ltget_attribute_ndims_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
-
-end subroutine h5ltget_attribute_ndims_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5ltget_attribute_info_f
-!
-! Purpose: Gets information about an attribute
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: September 30, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5ltget_attribute_info_f(loc_id,&
- dset_name,&
- attr_name,&
- dims,&
- type_class,&
- type_size,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5ltget_attribute_info_f
-!DEC$endif
-!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions
- integer, intent(inout) :: type_class ! type class
- integer(size_t), intent(inout) :: type_size ! type size
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: attrlen ! name length
-
- interface
- integer function h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size)
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INFO_C'::h5ltget_attribute_info_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: attr_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer :: namelen ! lenght of name buffer
- integer :: attrlen ! lenght of attr name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: attr_name ! name of the attribute
- integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions
- integer, intent(inout) :: type_class ! type class
- integer(size_t), intent(inout) :: type_size ! type size
- end function h5ltget_attribute_info_c
- end interface
-
- namelen = len(dset_name)
- attrlen = len(attr_name)
- errcode = h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size)
-
-end subroutine h5ltget_attribute_info_f
-
-
-
-! end
-!
-end module H5LT
+MODULE h5lt
+ USE h5fortran_types
+ USE hdf5
+
+ INTERFACE h5ltmake_dataset_f
+ MODULE PROCEDURE h5ltmake_dataset_f_int1
+ MODULE PROCEDURE h5ltmake_dataset_f_int2
+ MODULE PROCEDURE h5ltmake_dataset_f_int3
+ MODULE PROCEDURE h5ltmake_dataset_f_int4
+ MODULE PROCEDURE h5ltmake_dataset_f_int5
+ MODULE PROCEDURE h5ltmake_dataset_f_int6
+ MODULE PROCEDURE h5ltmake_dataset_f_int7
+ MODULE PROCEDURE h5ltmake_dataset_f_float1
+ MODULE PROCEDURE h5ltmake_dataset_f_float2
+ MODULE PROCEDURE h5ltmake_dataset_f_float3
+ MODULE PROCEDURE h5ltmake_dataset_f_float4
+ MODULE PROCEDURE h5ltmake_dataset_f_float5
+ MODULE PROCEDURE h5ltmake_dataset_f_float6
+ MODULE PROCEDURE h5ltmake_dataset_f_float7
+ MODULE PROCEDURE h5ltmake_dataset_f_double1
+ MODULE PROCEDURE h5ltmake_dataset_f_double2
+ MODULE PROCEDURE h5ltmake_dataset_f_double3
+ MODULE PROCEDURE h5ltmake_dataset_f_double4
+ MODULE PROCEDURE h5ltmake_dataset_f_double5
+ MODULE PROCEDURE h5ltmake_dataset_f_double6
+ MODULE PROCEDURE h5ltmake_dataset_f_double7
+ END INTERFACE
+
+ INTERFACE h5ltread_dataset_f
+ MODULE PROCEDURE h5ltread_dataset_f_int1
+ MODULE PROCEDURE h5ltread_dataset_f_int2
+ MODULE PROCEDURE h5ltread_dataset_f_int3
+ MODULE PROCEDURE h5ltread_dataset_f_int4
+ MODULE PROCEDURE h5ltread_dataset_f_int5
+ MODULE PROCEDURE h5ltread_dataset_f_int6
+ MODULE PROCEDURE h5ltread_dataset_f_int7
+ MODULE PROCEDURE h5ltread_dataset_f_float1
+ MODULE PROCEDURE h5ltread_dataset_f_float2
+ MODULE PROCEDURE h5ltread_dataset_f_float3
+ MODULE PROCEDURE h5ltread_dataset_f_float4
+ MODULE PROCEDURE h5ltread_dataset_f_float5
+ MODULE PROCEDURE h5ltread_dataset_f_float6
+ MODULE PROCEDURE h5ltread_dataset_f_float7
+ MODULE PROCEDURE h5ltread_dataset_f_double1
+ MODULE PROCEDURE h5ltread_dataset_f_double2
+ MODULE PROCEDURE h5ltread_dataset_f_double3
+ MODULE PROCEDURE h5ltread_dataset_f_double4
+ MODULE PROCEDURE h5ltread_dataset_f_double5
+ MODULE PROCEDURE h5ltread_dataset_f_double6
+ MODULE PROCEDURE h5ltread_dataset_f_double7
+ END INTERFACE
+
+ INTERFACE h5ltmake_dataset_int_f
+ MODULE PROCEDURE h5ltmake_dataset_int_f_1
+ MODULE PROCEDURE h5ltmake_dataset_int_f_2
+ MODULE PROCEDURE h5ltmake_dataset_int_f_3
+ MODULE PROCEDURE h5ltmake_dataset_int_f_4
+ MODULE PROCEDURE h5ltmake_dataset_int_f_5
+ MODULE PROCEDURE h5ltmake_dataset_int_f_6
+ MODULE PROCEDURE h5ltmake_dataset_int_f_7
+ END INTERFACE
+
+ INTERFACE h5ltmake_dataset_float_f
+ MODULE PROCEDURE h5ltmake_dataset_float_f_1
+ MODULE PROCEDURE h5ltmake_dataset_float_f_2
+ MODULE PROCEDURE h5ltmake_dataset_float_f_3
+ MODULE PROCEDURE h5ltmake_dataset_float_f_4
+ MODULE PROCEDURE h5ltmake_dataset_float_f_5
+ MODULE PROCEDURE h5ltmake_dataset_float_f_6
+ MODULE PROCEDURE h5ltmake_dataset_float_f_7
+ END INTERFACE
+
+ INTERFACE h5ltmake_dataset_double_f
+ MODULE PROCEDURE h5ltmake_dataset_double_f_1
+ MODULE PROCEDURE h5ltmake_dataset_double_f_2
+ MODULE PROCEDURE h5ltmake_dataset_double_f_3
+ MODULE PROCEDURE h5ltmake_dataset_double_f_4
+ MODULE PROCEDURE h5ltmake_dataset_double_f_5
+ MODULE PROCEDURE h5ltmake_dataset_double_f_6
+ MODULE PROCEDURE h5ltmake_dataset_double_f_7
+ END INTERFACE
+
+ INTERFACE h5ltread_dataset_int_f
+ MODULE PROCEDURE h5ltread_dataset_int_f_1
+ MODULE PROCEDURE h5ltread_dataset_int_f_2
+ MODULE PROCEDURE h5ltread_dataset_int_f_3
+ MODULE PROCEDURE h5ltread_dataset_int_f_4
+ MODULE PROCEDURE h5ltread_dataset_int_f_5
+ MODULE PROCEDURE h5ltread_dataset_int_f_6
+ MODULE PROCEDURE h5ltread_dataset_int_f_7
+ END INTERFACE
+
+ INTERFACE h5ltread_dataset_float_f
+ MODULE PROCEDURE h5ltread_dataset_float_f_1
+ MODULE PROCEDURE h5ltread_dataset_float_f_2
+ MODULE PROCEDURE h5ltread_dataset_float_f_3
+ MODULE PROCEDURE h5ltread_dataset_float_f_4
+ MODULE PROCEDURE h5ltread_dataset_float_f_5
+ MODULE PROCEDURE h5ltread_dataset_float_f_6
+ MODULE PROCEDURE h5ltread_dataset_float_f_7
+ END INTERFACE
+
+ INTERFACE h5ltread_dataset_double_f
+ MODULE PROCEDURE h5ltread_dataset_double_f_1
+ MODULE PROCEDURE h5ltread_dataset_double_f_2
+ MODULE PROCEDURE h5ltread_dataset_double_f_3
+ MODULE PROCEDURE h5ltread_dataset_double_f_4
+ MODULE PROCEDURE h5ltread_dataset_double_f_5
+ MODULE PROCEDURE h5ltread_dataset_double_f_6
+ MODULE PROCEDURE h5ltread_dataset_double_f_7
+ END INTERFACE
+
+CONTAINS
+ !-------------------------------------------------------------------------
+ ! Make/Read dataset functions
+ !-------------------------------------------------------------------------
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int1
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int1(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT1_C'::h5ltmake_dataset_int1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int2
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int2(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT2_C'::h5ltmake_dataset_int2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int3
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int3(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT3_C'::h5ltmake_dataset_int3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int4
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int4(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT4_C'::h5ltmake_dataset_int4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int5
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int5(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT5_C'::h5ltmake_dataset_int5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int6
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int6(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT6_C'::h5ltmake_dataset_int6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_int7
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int7(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_int7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_int7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT7_C'::h5ltmake_dataset_int7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_int7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_int7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_int7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float1
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float1(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL1_C'::h5ltmake_dataset_fl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float2
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float2(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL2_C'::h5ltmake_dataset_fl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float3
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float3(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL3_C'::h5ltmake_dataset_fl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float4
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float4(loc_id, dset_name, rank, dims,&
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL4_C'::h5ltmake_dataset_fl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float5
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float5(loc_id, dset_name, rank, dims,&
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL5_C'::h5ltmake_dataset_fl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float6
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float6(loc_id, dset_name, rank, dims,&
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL6_C'::h5ltmake_dataset_fl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_float7
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_float7(loc_id, dset_name, rank, dims,&
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_float7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_fl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL7_C'::h5ltmake_dataset_fl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_fl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_fl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_float7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double1
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double1(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL1_C'::h5ltmake_dataset_dl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double2
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double2(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL2_C'::h5ltmake_dataset_dl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double3
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 1, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double3(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL3_C'::h5ltmake_dataset_dl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double4
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double4(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL4_C'::h5ltmake_dataset_dl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double5
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double5(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL5_C'::h5ltmake_dataset_dl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double6
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double6(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL6_C'::h5ltmake_dataset_dl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_f_double7
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 7, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_double7(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_f_double7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_dl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL7_C'::h5ltmake_dataset_dl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_dl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_dl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_double7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int1
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int1(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT1_C'::h5ltread_dataset_int1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(LEN=*), INTENT(IN) :: dset_name ! name of the dataset
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(IN), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int2
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int2(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT2_C'::h5ltread_dataset_int2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int3
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int3(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT3_C'::h5ltread_dataset_int3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int4
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 12, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int4(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT4_C'::h5ltread_dataset_int4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int5
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 12, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int5(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT5_C'::h5ltread_dataset_int5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int6
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 12, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int6(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT6_C'::h5ltread_dataset_int6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_int7
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 12, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_int7(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_int7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_int7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT7_C'::h5ltread_dataset_int7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_int7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_int7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_int7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float1
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float1(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL1_C'::h5ltread_dataset_fl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float2
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float2(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float2
+ !DEC$endif
+ !
+
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL2_C'::h5ltread_dataset_fl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float3
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float3(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL3_C'::h5ltread_dataset_fl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float4
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float4(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL4_C'::h5ltread_dataset_fl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float5
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float5(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL5_C'::h5ltread_dataset_fl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float6
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float6(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL6_C'::h5ltread_dataset_fl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_float7
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_float7(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_float7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_fl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL7_C'::h5ltread_dataset_fl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_fl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_fl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_float7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double1
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double1(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport ::h5ltread_dataset_f_double1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL1_C'::h5ltread_dataset_dl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double2
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double2(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL2_C'::h5ltread_dataset_dl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double3
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double3(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL3_C'::h5ltread_dataset_dl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double4
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double4(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL4_C'::h5ltread_dataset_dl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double5
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double5(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL5_C'::h5ltread_dataset_dl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double6
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double6(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL6_C'::h5ltread_dataset_dl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_f_double7
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_double7(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_f_double7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_dl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL7_C'::h5ltread_dataset_dl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_dl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_dl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_f_double7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_1
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_1 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT1_C'::h5ltmake_dataset_nint1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,h5t_native_integer,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_2
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_2 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT2_C'::h5ltmake_dataset_nint2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_2
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_3
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_3 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT3_C'::h5ltmake_dataset_nint3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_4
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_4(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT4_C'::h5ltmake_dataset_nint4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_5
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_5(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT5_C'::h5ltmake_dataset_nint5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_6
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_6(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT6_C'::h5ltmake_dataset_nint6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_int_f_7
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_int_f_7(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_int_f_7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nint7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT7_C'::h5ltmake_dataset_nint7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nint7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nint7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_1
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_1 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL1_C'::h5ltmake_dataset_nfl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_1
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_2
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_2 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL2_C'::h5ltmake_dataset_nfl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_3
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_3 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL3_C'::h5ltmake_dataset_nfl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_4
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_4 (loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL4_C'::h5ltmake_dataset_nfl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_5
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_5 (loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL5_C'::h5ltmake_dataset_nfl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_6
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_6 (loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL6_C'::h5ltmake_dataset_nfl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_float_f_7
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_float_f_7 (loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_float_f_7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_nfl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL7_C'::h5ltmake_dataset_nfl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_nfl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_nfl7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf)
+
+ END SUBROUTINE h5ltmake_dataset_float_f_7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_1
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_1 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL1_C'::h5ltmake_dataset_ndl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_1
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_2
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_2 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL2_C'::h5ltmake_dataset_ndl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_3
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_3 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL3_C'::h5ltmake_dataset_ndl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_4
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_4 (loc_id, dset_name, rank, dims,&
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL4_C'::h5ltmake_dataset_ndl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_5
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_5 (loc_id, dset_name, rank, dims,&
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL5_C'::h5ltmake_dataset_ndl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_6
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_6 (loc_id, dset_name, rank, dims,&
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL6_C'::h5ltmake_dataset_ndl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_double_f_7
+ !
+ ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_double_f_7 (loc_id, dset_name, rank, dims,&
+ buf, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_ndl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL7_C'::h5ltmake_dataset_ndl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_ndl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_ndl7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf)
+
+ END SUBROUTINE h5ltmake_dataset_double_f_7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_1
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_1(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_1
+ !DEC$endif
+ !
+
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT1_C'::h5ltread_dataset_nint1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_1
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_2
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_2(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT2_C'::h5ltread_dataset_nint2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_3
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_3(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT3_C'::h5ltread_dataset_nint3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_4
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_4(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT4_C'::h5ltread_dataset_nint4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint4_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_5
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_5(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT5_C'::h5ltread_dataset_nint5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint5_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_6
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_6(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT6_C'::h5ltread_dataset_nint6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint6_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_int_f_7
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_int_f_7(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_int_f_7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nint7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT7_C'::h5ltread_dataset_nint7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nint7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nint7_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_int_f_7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_1
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_1(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL1_C'::h5ltread_dataset_nfl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_1
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_2
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_2(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL2_C'::h5ltread_dataset_nfl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_3
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_3(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL3_C'::h5ltread_dataset_nfl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_4
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_4(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL4_C'::h5ltread_dataset_nfl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl4_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_5
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_5(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL5_C'::h5ltread_dataset_nfl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl5_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_6
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_6(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL6_C'::h5ltread_dataset_nfl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl6_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_float_f_7
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_float_f_7(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_float_f_7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_nfl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL7_C'::h5ltread_dataset_nfl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ REAL, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_nfl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_nfl7_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_float_f_7
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_1
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_1(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_1
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL1_C'::h5ltread_dataset_ndl1_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl1_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_1
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_2
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_2(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_2
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL2_C'::h5ltread_dataset_ndl2_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl2_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_2
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_3
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_3(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_3
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL3_C'::h5ltread_dataset_ndl3_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl3_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_3
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_4
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_4(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_4
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL4_C'::h5ltread_dataset_ndl4_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl4_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl4_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_4
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_5
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_5(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_5
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL5_C'::h5ltread_dataset_ndl5_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl5_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl5_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_5
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_6
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_6(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_6
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL6_C'::h5ltread_dataset_ndl6_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl6_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl6_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_6
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_double_f_7
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: March 8, 2011
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_double_f_7(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_double_f_7
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_ndl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL7_C'::h5ltread_dataset_ndl7_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf
+ DOUBLE PRECISION, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_ndl7_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_ndl7_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims)
+
+ END SUBROUTINE h5ltread_dataset_double_f_7
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltmake_dataset_string_f
+ !
+ ! Purpose: Creates and writes a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_string_f(loc_id,&
+ dset_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltmake_dataset_string_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: buflen ! buffer length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_STRING_C'::h5ltmake_dataset_string_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: buflen ! lenght of data buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_string_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ buflen = LEN(buf)
+ errcode = h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
+
+ END SUBROUTINE h5ltmake_dataset_string_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltread_dataset_string_f
+ !
+ ! Purpose: Read a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 22, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_string_f(loc_id,&
+ dset_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltread_dataset_string_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(inout) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_STRING_C'::h5ltread_dataset_string_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(inout) :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_string_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
+
+ END SUBROUTINE h5ltread_dataset_string_f
+
+
+
+
+ !-------------------------------------------------------------------------
+ ! Make/Read attribute functions
+ !-------------------------------------------------------------------------
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltset_attribute_int_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltset_attribute_int_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ size,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltset_attribute_int_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ INTEGER :: errcode ! error code
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_INT_C'::h5ltset_attribute_int_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltset_attribute_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+
+ END SUBROUTINE h5ltset_attribute_int_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltset_attribute_float_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltset_attribute_float_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ size,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltset_attribute_float_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ INTEGER :: errcode ! error code
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_FLOAT_C'::h5ltset_attribute_float_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltset_attribute_float_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+
+ END SUBROUTINE h5ltset_attribute_float_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltset_attribute_double_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltset_attribute_double_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ size,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltset_attribute_double_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ INTEGER :: errcode ! error code
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_DOUBLE_C'::h5ltset_attribute_double_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltset_attribute_double_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
+
+ END SUBROUTINE h5ltset_attribute_double_f
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltset_attribute_string_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltset_attribute_string_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltset_attribute_string_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER :: errcode ! error code
+ CHARACTER(len=*), INTENT(in) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+ INTEGER :: buflen ! data buffer length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_STRING_C'::h5ltset_attribute_string_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ INTEGER :: buflen ! data buffer length
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ CHARACTER(len=*), INTENT(in) :: buf ! data buffer
+ END FUNCTION h5ltset_attribute_string_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ buflen = LEN(buf)
+ errcode = h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
+
+ END SUBROUTINE h5ltset_attribute_string_f
+
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_int_f
+ !
+ ! Purpose: Reads an attribute named ATTR_NAME
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_int_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_int_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER :: errcode ! error code
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INT_C'::h5ltget_attribute_int_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltget_attribute_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+
+ END SUBROUTINE h5ltget_attribute_int_f
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_float_f
+ !
+ ! Purpose: Reads an attribute named ATTR_NAME
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_float_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_float_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER :: errcode ! error code
+ REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_FLOAT_C'::h5ltget_attribute_float_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltget_attribute_float_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+
+ END SUBROUTINE h5ltget_attribute_float_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_double_f
+ !
+ ! Purpose: Reads an attribute named ATTR_NAME
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_double_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_double_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER :: errcode ! error code
+ DOUBLE PRECISION,INTENT(inout),DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_DOUBLE_C'::h5ltget_attribute_double_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ DOUBLE PRECISION, INTENT(inout), DIMENSION(*) :: buf ! data buffer
+ END FUNCTION h5ltget_attribute_double_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+
+ END SUBROUTINE h5ltget_attribute_double_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_string_f
+ !
+ ! Purpose: Reads an attribute named ATTR_NAME
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_string_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_string_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER :: errcode ! error code
+ CHARACTER(len=*), INTENT(inout) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_STRING_C'::h5ltget_attribute_string_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ CHARACTER(len=*), INTENT(inout) :: buf ! data buffer
+ END FUNCTION h5ltget_attribute_string_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
+
+ END SUBROUTINE h5ltget_attribute_string_f
+
+ !-------------------------------------------------------------------------
+ ! Query dataset functions
+ !-------------------------------------------------------------------------
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_dataset_ndims_f
+ !
+ ! Purpose: Gets the dimensionality of a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 30, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_dataset_ndims_f(loc_id,&
+ dset_name,&
+ rank,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_dataset_ndims_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(inout) :: rank ! rank
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_NDIMS_C'::h5ltget_dataset_ndims_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(inout) :: rank ! rank
+ END FUNCTION h5ltget_dataset_ndims_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
+
+ END SUBROUTINE h5ltget_dataset_ndims_f
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltfind_dataset_f
+ !
+ ! Purpose: Inquires if a dataset named dset_name exists attached
+ ! to the object loc_id.
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ INTEGER FUNCTION h5ltfind_dataset_f(loc_id,&
+ dset_name)
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltfind_dataset_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltfind_dataset_c(loc_id,namelen,dset_name)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTFIND_DATASET_C'::h5ltfind_dataset_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ END FUNCTION h5ltfind_dataset_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltfind_dataset_c(loc_id,namelen,dset_name)
+ h5ltfind_dataset_f = errcode
+
+ END FUNCTION h5ltfind_dataset_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_dataset_info_f
+ !
+ ! Purpose: Gets information about a dataset
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 30, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_dataset_info_f(loc_id,&
+ dset_name,&
+ dims,&
+ type_class,&
+ type_size,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_dataset_info_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions
+ INTEGER, INTENT(inout) :: type_class ! type class
+ INTEGER(size_t), INTENT(inout) :: type_size ! type size
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_INFO_C'::h5ltget_dataset_info_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions
+ INTEGER, INTENT(inout) :: type_class ! type class
+ INTEGER(size_t), INTENT(inout) :: type_size ! type size
+ END FUNCTION h5ltget_dataset_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
+
+ END SUBROUTINE h5ltget_dataset_info_f
+
+
+ !-------------------------------------------------------------------------
+ ! Query attribute functions
+ !-------------------------------------------------------------------------
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_ndims_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: October 05, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_ndims_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ rank,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_ndims_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER, INTENT(inout) :: rank ! rank
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_NDIMS_C'::h5ltget_attribute_ndims_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER, INTENT(inout) :: rank ! rank
+ END FUNCTION h5ltget_attribute_ndims_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
+
+ END SUBROUTINE h5ltget_attribute_ndims_f
+
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_info_f
+ !
+ ! Purpose: Gets information about an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: pvn@ncsa.uiuc.edu
+ !
+ ! Date: September 30, 2004
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_info_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ dims,&
+ type_class,&
+ type_size,&
+ errcode )
+
+ IMPLICIT NONE
+
+ !
+ !This definition is needed for Windows DLLs
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$attributes dllexport :: h5ltget_attribute_info_f
+ !DEC$endif
+ !
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions
+ INTEGER, INTENT(inout) :: type_class ! type class
+ INTEGER(size_t), INTENT(inout) :: type_size ! type size
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size)
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INFO_C'::h5ltget_attribute_info_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER :: namelen ! lenght of name buffer
+ INTEGER :: attrlen ! lenght of attr name buffer
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions
+ INTEGER, INTENT(inout) :: type_class ! type class
+ INTEGER(size_t), INTENT(inout) :: type_size ! type size
+ END FUNCTION h5ltget_attribute_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size)
+
+ END SUBROUTINE h5ltget_attribute_info_f
+ ! end
+ !
+END MODULE H5LT
diff --git a/hl/fortran/src/H5TBfc.c b/hl/fortran/src/H5TBfc.c
index 76a3f1c..0efc9a8 100755
--- a/hl/fortran/src/H5TBfc.c
+++ b/hl/fortran/src/H5TBfc.c
@@ -13,6 +13,8 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+#include <math.h>
+
/* This files contains C stubs for H5D Fortran APIs */
#include "H5TBprivate.h"
@@ -47,14 +49,14 @@ nh5tbmake_table_c(int_f *namelen1,
hid_t_f *field_types,
hsize_t_f *chunk_size,
int_f *compress,
- int_f *namelen2, /* field_names lenghts */
- _fcd field_names) /* field_names */
+ int_f *char_len_field_names, /* field_names lenghts */
+ int_f *max_char_size_field_names, /* char len of fields */
+ char *field_names) /* field_names */
{
char *c_name = NULL;
char *c_name1 = NULL;
hsize_t num_elem;
hsize_t i;
- int max_len = 1;
hsize_t c_nfields = (hsize_t)*nfields;
size_t *c_field_offset = NULL;
hid_t *c_field_types = NULL;
@@ -63,9 +65,6 @@ nh5tbmake_table_c(int_f *namelen1,
int_f ret_value = 0;
num_elem = *nfields;
- for(i = 0; i < num_elem; i++)
- if(namelen2[i] > max_len)
- max_len = namelen2[i];
/*
* convert FORTRAN name to C name
@@ -91,20 +90,19 @@ nh5tbmake_table_c(int_f *namelen1,
HGOTO_DONE(FAIL)
/* copy data to long C string */
- if(NULL == (tmp = (char *)HD5f2cstring(field_names, (size_t)(max_len * num_elem))))
+ if(NULL == (tmp = (char *)HD5f2cstring(field_names, (size_t)*(max_char_size_field_names)*(size_t)num_elem)))
HGOTO_DONE(FAIL)
-
/*
* move data from temorary buffer
*/
tmp_p = tmp;
for(i = 0; i < num_elem; i++) {
- if(NULL == (c_field_names[i] = (char *)HDmalloc((size_t)namelen2[i] + 1)))
+ if(NULL == (c_field_names[i] = (char *)HDmalloc((size_t)char_len_field_names[i] + 1)))
HGOTO_DONE(FAIL)
+ HDmemcpy(c_field_names[i], tmp_p, (size_t)char_len_field_names[i]);
+ c_field_names[i][char_len_field_names[i]] = '\0';
- HDmemcpy(c_field_names[i], tmp_p, (size_t)namelen2[i]);
- c_field_names[i][namelen2[i]] = '\0';
- tmp_p = tmp_p + max_len;
+ tmp_p = tmp_p + *max_char_size_field_names;
} /* end for */
/*
@@ -125,7 +123,7 @@ done:
if(c_field_names[i])
HDfree(c_field_names[i]);
} /* end for */
- HDfree(c_field_names);
+ HDfree(c_field_names);
} /* end if */
if(tmp)
HDfree(tmp);
@@ -616,10 +614,10 @@ nh5tbinsert_field_c(hid_t_f *loc_id,
HGOTO_DONE(FAIL)
if(NULL == (c_name1 = (char *)HD5f2cstring(field_name, (size_t)*namelen1)))
HGOTO_DONE(FAIL)
-
/*
* call H5TBinsert_field function.
*/
+
if(H5TBinsert_field((hid_t)*loc_id, c_name, c_name1, (hid_t)*field_type,
(hsize_t)*position, NULL, buf) < 0)
HGOTO_DONE(FAIL)
@@ -771,13 +769,14 @@ nh5tbget_table_info_c(hid_t_f *loc_id,
if(NULL == (c_name = (char *)HD5f2cstring(name, (size_t)*namelen)))
HGOTO_DONE(FAIL)
+
/*
* call H5TBread_fields_index function.
*/
+
if(H5TBget_table_info((hid_t)*loc_id, c_name, &c_nfields, &c_nrecords) < 0)
HGOTO_DONE(FAIL)
-
- *nfields = (hsize_t_f) c_nfields;;
+ *nfields = (hsize_t_f) c_nfields;
*nrecords = (hsize_t_f) c_nrecords;
done:
@@ -811,26 +810,27 @@ nh5tbget_field_info_c(hid_t_f *loc_id,
size_t_f *field_offsets,
size_t_f *type_size,
int_f *namelen2, /* field_names lenghts */
- _fcd field_names) /* field_names */
+ int_f *lenmax, /* character len max */
+ _fcd field_names, /* field_names */
+ int_f *maxlen_out)
{
char *c_name = NULL;
hsize_t num_elem;
- int max_len = 1;
hsize_t c_nfields = *nfields;
size_t *c_field_sizes = NULL;
size_t *c_field_offsets = NULL;
size_t c_type_size;
char **c_field_names = NULL;
char *tmp = NULL, *tmp_p;
- int c_lenmax = HLTB_MAX_FIELD_LEN;
hsize_t i;
int_f ret_value = 0;
+ size_t c_lenmax;
+ size_t length = 0;
+
+ c_lenmax = (size_t)*lenmax;
num_elem = c_nfields;
- for(i = 0; i < num_elem; i++)
- if(namelen2[i] > max_len)
- max_len = namelen2[i];
/*
* convert FORTRAN name to C name
@@ -854,24 +854,25 @@ nh5tbget_field_info_c(hid_t_f *loc_id,
if(H5TBget_field_info((hid_t)*loc_id, c_name, c_field_names, c_field_sizes,
c_field_offsets, &c_type_size) < 0)
HGOTO_DONE(FAIL)
-
+
/* return values */
/* names array */
if(NULL == (tmp = (char *)HDmalloc((c_lenmax * (size_t)c_nfields) + 1)))
HGOTO_DONE(FAIL)
-
tmp_p = tmp;
HDmemset(tmp, ' ', c_lenmax * (size_t)c_nfields);
tmp[c_lenmax * c_nfields] = '\0';
for(i = 0; i < c_nfields; i++) {
- size_t field_name_len = HDstrlen(c_field_names[i]);
+ size_t field_name_len = HDstrlen(c_field_names[i]);
- HDmemcpy(tmp_p, c_field_names[i], field_name_len);
- namelen2[i] = (int_f)field_name_len;
- tmp_p += c_lenmax;
+ HDmemcpy(tmp_p, c_field_names[i], field_name_len);
+ namelen2[i] = (int_f)field_name_len;
+ length = MAX(length, strlen((c_field_names[i])));
+ tmp_p = tmp_p + c_lenmax;
} /* end for */
- HD5packFstring(tmp, _fcdtocp(field_names), (int)(c_lenmax * c_nfields));
+
+ HD5packFstring(tmp, _fcdtocp(field_names), (size_t)( c_lenmax* c_nfields));
*type_size = (size_t_f)c_type_size;
for(i = 0; i < num_elem; i++) {
@@ -879,6 +880,8 @@ nh5tbget_field_info_c(hid_t_f *loc_id,
field_offsets[i] = (size_t_f)c_field_offsets[i];
} /* end for */
+ *maxlen_out = (int_f)length;
+
done:
if(c_name)
HDfree(c_name);
diff --git a/hl/fortran/src/H5TBff.f90 b/hl/fortran/src/H5TBff.f90
index 9acdcee..36e13f9 100755
--- a/hl/fortran/src/H5TBff.f90
+++ b/hl/fortran/src/H5TBff.f90
@@ -17,49 +17,49 @@
! This file contains FORTRAN90 interfaces for H5TB functions
!
-module h5tb
-use h5fortran_types
-use hdf5
+MODULE h5tb
+USE h5fortran_types
+USE hdf5
-interface h5tbwrite_field_name_f
- module procedure h5tbwrite_field_name_f_int
- module procedure h5tbwrite_field_name_f_float
- module procedure h5tbwrite_field_name_f_double
- module procedure h5tbwrite_field_name_f_string
-end interface
+INTERFACE h5tbwrite_field_name_f
+ MODULE PROCEDURE h5tbwrite_field_name_f_int
+ MODULE PROCEDURE h5tbwrite_field_name_f_float
+ MODULE PROCEDURE h5tbwrite_field_name_f_double
+ MODULE PROCEDURE h5tbwrite_field_name_f_string
+END INTERFACE
-interface h5tbread_field_name_f
- module procedure h5tbread_field_name_f_int
- module procedure h5tbread_field_name_f_float
- module procedure h5tbread_field_name_f_double
- module procedure h5tbread_field_name_f_string
-end interface
+INTERFACE h5tbread_field_name_f
+ MODULE PROCEDURE h5tbread_field_name_f_int
+ MODULE PROCEDURE h5tbread_field_name_f_float
+ MODULE PROCEDURE h5tbread_field_name_f_double
+ MODULE PROCEDURE h5tbread_field_name_f_string
+END INTERFACE
-interface h5tbwrite_field_index_f
- module procedure h5tbwrite_field_index_f_int
- module procedure h5tbwrite_field_index_f_float
- module procedure h5tbwrite_field_index_f_double
- module procedure h5tbwrite_field_index_f_string
-end interface
+INTERFACE h5tbwrite_field_index_f
+ MODULE PROCEDURE h5tbwrite_field_index_f_int
+ MODULE PROCEDURE h5tbwrite_field_index_f_float
+ MODULE PROCEDURE h5tbwrite_field_index_f_double
+ MODULE PROCEDURE h5tbwrite_field_index_f_string
+END INTERFACE
-interface h5tbread_field_index_f
- module procedure h5tbread_field_index_f_int
- module procedure h5tbread_field_index_f_float
- module procedure h5tbread_field_index_f_double
- module procedure h5tbread_field_index_f_string
-end interface
+INTERFACE h5tbread_field_index_f
+ MODULE PROCEDURE h5tbread_field_index_f_int
+ MODULE PROCEDURE h5tbread_field_index_f_float
+ MODULE PROCEDURE h5tbread_field_index_f_double
+ MODULE PROCEDURE h5tbread_field_index_f_string
+END INTERFACE
-interface h5tbinsert_field_f
- module procedure h5tbinsert_field_f_int
- module procedure h5tbinsert_field_f_float
- module procedure h5tbinsert_field_f_double
- module procedure h5tbinsert_field_f_string
-end interface
+INTERFACE h5tbinsert_field_f
+ MODULE PROCEDURE h5tbinsert_field_f_int
+ MODULE PROCEDURE h5tbinsert_field_f_float
+ MODULE PROCEDURE h5tbinsert_field_f_double
+ MODULE PROCEDURE h5tbinsert_field_f_string
+END INTERFACE
-contains
+CONTAINS
!-------------------------------------------------------------------------
@@ -79,7 +79,7 @@ contains
!
!-------------------------------------------------------------------------
-subroutine h5tbmake_table_f(table_title,&
+SUBROUTINE h5tbmake_table_f(table_title,&
loc_id,&
dset_name,&
nfields,&
@@ -92,7 +92,7 @@ subroutine h5tbmake_table_f(table_title,&
compress,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -101,68 +101,75 @@ subroutine h5tbmake_table_f(table_title,&
!DEC$endif
!
- character(len=*), intent(in) :: table_title ! name of the dataset
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in) :: nfields ! fields
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), dimension(nfields), intent(in) :: field_names ! field names
- integer(size_t), dimension(nfields), intent(in) :: field_offset ! field offset
- integer(hid_t), dimension(nfields), intent(in) :: field_types ! field types
- integer(hsize_t), intent(in) :: chunk_size ! chunk size
- integer, intent(in) :: compress ! compress
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
- integer, dimension(nfields) :: namelen2 ! name lengths
- integer :: i ! general purpose integer
-
-
- interface
- integer function h5tbmake_table_c(namelen1,&
- table_title,&
- loc_id,&
- namelen,&
- dset_name,&
- nfields,&
- nrecords,&
- type_size,&
- field_offset,&
- field_types,&
- chunk_size,&
- compress,&
- namelen2,&
- field_names)
-
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBMAKE_TABLE_C'::h5tbmake_table_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: table_title
- character(len=*), intent(in) :: table_title ! name of the dataset
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in) :: nfields ! fields
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), dimension(nfields), intent(in) :: field_names ! field names
- integer(size_t), dimension(nfields), intent(in) :: field_offset ! field offset
- integer(hid_t), dimension(nfields), intent(in) :: field_types ! field types
- integer(hsize_t), intent(in) :: chunk_size ! chunk size
- integer, intent(in) :: compress ! compress
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer, dimension(nfields) :: namelen2 ! name lengths
- end function h5tbmake_table_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(table_title)
- do i = 1, nfields
- namelen2(i) = len(field_names(i));
- end do
+ CHARACTER(LEN=*), INTENT(in) :: table_title ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in) :: nfields ! fields
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), DIMENSION(1:nfields), INTENT(in) :: field_names ! field names
+ INTEGER(size_t), DIMENSION(1:nfields), INTENT(in) :: field_offset ! field offset
+ INTEGER(hid_t), DIMENSION(1:nfields), INTENT(in) :: field_types ! field types
+ INTEGER(hsize_t), INTENT(in) :: chunk_size ! chunk size
+ INTEGER, INTENT(in) :: compress ! compress
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
+ INTEGER, DIMENSION(1:nfields) :: char_len_field_names ! field name lengths
+ INTEGER :: max_char_size_field_names ! character len of field names
+ INTEGER :: i ! general purpose integer
+
+
+ INTERFACE
+ INTEGER FUNCTION h5tbmake_table_c(namelen1,&
+ table_title,&
+ loc_id,&
+ namelen,&
+ dset_name,&
+ nfields,&
+ nrecords,&
+ type_size,&
+ field_offset,&
+ field_types,&
+ chunk_size,&
+ compress,&
+ char_len_field_names,&
+ max_char_size_field_names,&
+ field_names)
+
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBMAKE_TABLE_C'::h5tbmake_table_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ !DEC$ATTRIBUTES reference :: table_title
+ CHARACTER(LEN=*), INTENT(in) :: table_title ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in) :: nfields ! fields
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), DIMENSION(nfields), INTENT(in) :: field_names ! field names
+ INTEGER(size_t), DIMENSION(nfields), INTENT(in) :: field_offset ! field offset
+ INTEGER(hid_t), DIMENSION(nfields), INTENT(in) :: field_types ! field types
+ INTEGER(hsize_t), INTENT(in) :: chunk_size ! chunk size
+ INTEGER, INTENT(in) :: compress ! compress
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER, DIMENSION(nfields) :: char_len_field_names ! field name's lengths
+ INTEGER :: max_char_size ! character len of field names
+ END FUNCTION h5tbmake_table_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(table_title)
+
+ ! Find the size of each character string in the array
+ DO i = 1, nfields
+ char_len_field_names(i) = LEN_TRIM(field_names(i))
+ END DO
+
+ max_char_size_field_names = LEN(field_names(1))
errcode = h5tbmake_table_c(namelen1,&
table_title,&
@@ -176,10 +183,11 @@ subroutine h5tbmake_table_f(table_title,&
field_types,&
chunk_size,&
compress,&
- namelen2,&
+ char_len_field_names, &
+ max_char_size_field_names, &
field_names)
-end subroutine h5tbmake_table_f
+END SUBROUTINE h5tbmake_table_f
!-------------------------------------------------------------------------
@@ -197,7 +205,7 @@ end subroutine h5tbmake_table_f
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_name_f_int(loc_id,&
+SUBROUTINE h5tbwrite_field_name_f_int(loc_id,&
dset_name,&
field_name,&
start,&
@@ -206,7 +214,7 @@ subroutine h5tbwrite_field_name_f_int(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -215,47 +223,47 @@ subroutine h5tbwrite_field_name_f_int(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_INT_C'::h5tbwrite_field_name_int_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbwrite_field_name_int_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbwrite_field_name_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_name_f_int
+END SUBROUTINE h5tbwrite_field_name_f_int
!-------------------------------------------------------------------------
! Function: h5tbwrite_field_name_f_float
@@ -272,7 +280,7 @@ end subroutine h5tbwrite_field_name_f_int
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_name_f_float(loc_id,&
+SUBROUTINE h5tbwrite_field_name_f_float(loc_id,&
dset_name,&
field_name,&
start,&
@@ -281,7 +289,7 @@ subroutine h5tbwrite_field_name_f_float(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -290,47 +298,47 @@ subroutine h5tbwrite_field_name_f_float(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_FL_C'::h5tbwrite_field_name_fl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbwrite_field_name_fl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbwrite_field_name_fl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_name_f_float
+END SUBROUTINE h5tbwrite_field_name_f_float
@@ -349,7 +357,7 @@ end subroutine h5tbwrite_field_name_f_float
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_name_f_double(loc_id,&
+SUBROUTINE h5tbwrite_field_name_f_double(loc_id,&
dset_name,&
field_name,&
start,&
@@ -358,7 +366,7 @@ subroutine h5tbwrite_field_name_f_double(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -367,47 +375,47 @@ subroutine h5tbwrite_field_name_f_double(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_DL_C'::h5tbwrite_field_name_dl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbwrite_field_name_dl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbwrite_field_name_dl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_name_f_double
+END SUBROUTINE h5tbwrite_field_name_f_double
!-------------------------------------------------------------------------
! Function: h5tbwrite_field_name_f_string
@@ -424,7 +432,7 @@ end subroutine h5tbwrite_field_name_f_double
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_name_f_string(loc_id,&
+SUBROUTINE h5tbwrite_field_name_f_string(loc_id,&
dset_name,&
field_name,&
start,&
@@ -433,7 +441,7 @@ subroutine h5tbwrite_field_name_f_string(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -442,47 +450,47 @@ subroutine h5tbwrite_field_name_f_string(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_ST_C'::h5tbwrite_field_name_st_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbwrite_field_name_st_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbwrite_field_name_st_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_name_f_string
+END SUBROUTINE h5tbwrite_field_name_f_string
!-------------------------------------------------------------------------
@@ -500,7 +508,7 @@ end subroutine h5tbwrite_field_name_f_string
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_name_f_int(loc_id,&
+SUBROUTINE h5tbread_field_name_f_int(loc_id,&
dset_name,&
field_name,&
start,&
@@ -509,7 +517,7 @@ subroutine h5tbread_field_name_f_int(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -518,47 +526,47 @@ subroutine h5tbread_field_name_f_int(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_INT_C'::h5tbread_field_name_int_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbread_field_name_int_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbread_field_name_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_name_f_int
+END SUBROUTINE h5tbread_field_name_f_int
!-------------------------------------------------------------------------
! Function: h5tbread_field_name_f_float
@@ -575,7 +583,7 @@ end subroutine h5tbread_field_name_f_int
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_name_f_float(loc_id,&
+SUBROUTINE h5tbread_field_name_f_float(loc_id,&
dset_name,&
field_name,&
start,&
@@ -584,7 +592,7 @@ subroutine h5tbread_field_name_f_float(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -593,47 +601,47 @@ subroutine h5tbread_field_name_f_float(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_FL_C'::h5tbread_field_name_fl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbread_field_name_fl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbread_field_name_fl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_name_f_float
+END SUBROUTINE h5tbread_field_name_f_float
!-------------------------------------------------------------------------
! Function: h5tbread_field_name_f_double
@@ -650,7 +658,7 @@ end subroutine h5tbread_field_name_f_float
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_name_f_double(loc_id,&
+SUBROUTINE h5tbread_field_name_f_double(loc_id,&
dset_name,&
field_name,&
start,&
@@ -659,7 +667,7 @@ subroutine h5tbread_field_name_f_double(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -668,47 +676,47 @@ subroutine h5tbread_field_name_f_double(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_DL_C'::h5tbread_field_name_dl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbread_field_name_dl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbread_field_name_dl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_name_f_double
+END SUBROUTINE h5tbread_field_name_f_double
!-------------------------------------------------------------------------
! Function: h5tbread_field_name_f_string
@@ -725,7 +733,7 @@ end subroutine h5tbread_field_name_f_double
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_name_f_string(loc_id,&
+SUBROUTINE h5tbread_field_name_f_string(loc_id,&
dset_name,&
field_name,&
start,&
@@ -734,7 +742,7 @@ subroutine h5tbread_field_name_f_string(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -743,47 +751,47 @@ subroutine h5tbread_field_name_f_string(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
- interface
- integer function h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_ST_C'::h5tbread_field_name_st_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- end function h5tbread_field_name_st_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ END FUNCTION h5tbread_field_name_st_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_name_f_string
+END SUBROUTINE h5tbread_field_name_f_string
!-------------------------------------------------------------------------
@@ -801,7 +809,7 @@ end subroutine h5tbread_field_name_f_string
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_index_f_int(loc_id,&
+SUBROUTINE h5tbwrite_field_index_f_int(loc_id,&
dset_name,&
field_index,&
start,&
@@ -810,7 +818,7 @@ subroutine h5tbwrite_field_index_f_int(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -819,43 +827,43 @@ subroutine h5tbwrite_field_index_f_int(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_INT_C'::h5tbwrite_field_index_int_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbwrite_field_index_int_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbwrite_field_index_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_index_f_int
+END SUBROUTINE h5tbwrite_field_index_f_int
!-------------------------------------------------------------------------
! Function: h5tbwrite_field_index_f_float
@@ -872,7 +880,7 @@ end subroutine h5tbwrite_field_index_f_int
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_index_f_float(loc_id,&
+SUBROUTINE h5tbwrite_field_index_f_float(loc_id,&
dset_name,&
field_index,&
start,&
@@ -881,7 +889,7 @@ subroutine h5tbwrite_field_index_f_float(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -890,43 +898,43 @@ subroutine h5tbwrite_field_index_f_float(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_FL_C'::h5tbwrite_field_index_fl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbwrite_field_index_fl_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbwrite_field_index_fl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_index_f_float
+END SUBROUTINE h5tbwrite_field_index_f_float
@@ -945,7 +953,7 @@ end subroutine h5tbwrite_field_index_f_float
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_index_f_double(loc_id,&
+SUBROUTINE h5tbwrite_field_index_f_double(loc_id,&
dset_name,&
field_index,&
start,&
@@ -954,7 +962,7 @@ subroutine h5tbwrite_field_index_f_double(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -963,43 +971,43 @@ subroutine h5tbwrite_field_index_f_double(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_DL_C'::h5tbwrite_field_index_dl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbwrite_field_index_dl_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbwrite_field_index_dl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_index_f_double
+END SUBROUTINE h5tbwrite_field_index_f_double
!-------------------------------------------------------------------------
! Function: h5tbwrite_field_index_f_string
@@ -1016,7 +1024,7 @@ end subroutine h5tbwrite_field_index_f_double
!
!-------------------------------------------------------------------------
-subroutine h5tbwrite_field_index_f_string(loc_id,&
+SUBROUTINE h5tbwrite_field_index_f_string(loc_id,&
dset_name,&
field_index,&
start,&
@@ -1025,7 +1033,7 @@ subroutine h5tbwrite_field_index_f_string(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1034,43 +1042,43 @@ subroutine h5tbwrite_field_index_f_string(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_ST_C'::h5tbwrite_field_index_st_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbwrite_field_index_st_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbwrite_field_index_st_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbwrite_field_index_f_string
+END SUBROUTINE h5tbwrite_field_index_f_string
!-------------------------------------------------------------------------
@@ -1088,7 +1096,7 @@ end subroutine h5tbwrite_field_index_f_string
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_index_f_int(loc_id,&
+SUBROUTINE h5tbread_field_index_f_int(loc_id,&
dset_name,&
field_index,&
start,&
@@ -1097,7 +1105,7 @@ subroutine h5tbread_field_index_f_int(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1106,43 +1114,43 @@ subroutine h5tbread_field_index_f_int(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_INT_C'::h5tbread_field_index_int_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbread_field_index_int_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbread_field_index_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_index_f_int
+END SUBROUTINE h5tbread_field_index_f_int
!-------------------------------------------------------------------------
! Function: h5tbread_field_index_f_float
@@ -1159,7 +1167,7 @@ end subroutine h5tbread_field_index_f_int
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_index_f_float(loc_id,&
+SUBROUTINE h5tbread_field_index_f_float(loc_id,&
dset_name,&
field_index,&
start,&
@@ -1168,7 +1176,7 @@ subroutine h5tbread_field_index_f_float(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1177,43 +1185,43 @@ subroutine h5tbread_field_index_f_float(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_FL_C'::h5tbread_field_index_fl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbread_field_index_fl_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbread_field_index_fl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_index_f_float
+END SUBROUTINE h5tbread_field_index_f_float
!-------------------------------------------------------------------------
! Function: h5tbread_field_index_f_double
@@ -1230,7 +1238,7 @@ end subroutine h5tbread_field_index_f_float
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_index_f_double(loc_id,&
+SUBROUTINE h5tbread_field_index_f_double(loc_id,&
dset_name,&
field_index,&
start,&
@@ -1239,7 +1247,7 @@ subroutine h5tbread_field_index_f_double(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1248,43 +1256,43 @@ subroutine h5tbread_field_index_f_double(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_DL_C'::h5tbread_field_index_dl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbread_field_index_dl_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbread_field_index_dl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_index_f_double
+END SUBROUTINE h5tbread_field_index_f_double
!-------------------------------------------------------------------------
! Function: h5tbread_field_index_f_string
@@ -1301,7 +1309,7 @@ end subroutine h5tbread_field_index_f_double
!
!-------------------------------------------------------------------------
-subroutine h5tbread_field_index_f_string(loc_id,&
+SUBROUTINE h5tbread_field_index_f_string(loc_id,&
dset_name,&
field_index,&
start,&
@@ -1310,7 +1318,7 @@ subroutine h5tbread_field_index_f_string(loc_id,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1319,43 +1327,43 @@ subroutine h5tbread_field_index_f_string(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,&
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_ST_C'::h5tbread_field_index_st_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: field_index ! index
- integer(hsize_t), intent(in) :: start ! start record
- integer(hsize_t), intent(in) :: nrecords ! records
- integer(size_t), intent(in) :: type_size ! type size
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: errcode ! error code
- integer :: namelen ! name length
- end function h5tbread_field_index_st_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: field_index ! index
+ INTEGER(hsize_t), INTENT(in) :: start ! start record
+ INTEGER(hsize_t), INTENT(in) :: nrecords ! records
+ INTEGER(size_t), INTENT(in) :: type_size ! type size
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbread_field_index_st_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,&
start,nrecords,type_size,buf)
-end subroutine h5tbread_field_index_f_string
+END SUBROUTINE h5tbread_field_index_f_string
!-------------------------------------------------------------------------
@@ -1373,14 +1381,14 @@ end subroutine h5tbread_field_index_f_string
!
!-------------------------------------------------------------------------
-subroutine h5tbinsert_field_f_int(loc_id,&
+SUBROUTINE h5tbinsert_field_f_int(loc_id,&
dset_name,&
field_name,&
field_type,&
field_index,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1389,45 +1397,45 @@ subroutine h5tbinsert_field_f_int(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
- interface
- integer function h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_INT_C'::h5tbinsert_field_int_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- integer, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length length
- end function h5tbinsert_field_int_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length length
+ END FUNCTION h5tbinsert_field_int_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
-end subroutine h5tbinsert_field_f_int
+END SUBROUTINE h5tbinsert_field_f_int
@@ -1446,14 +1454,14 @@ end subroutine h5tbinsert_field_f_int
!
!-------------------------------------------------------------------------
-subroutine h5tbinsert_field_f_float(loc_id,&
+SUBROUTINE h5tbinsert_field_f_float(loc_id,&
dset_name,&
field_name,&
field_type,&
field_index,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1462,45 +1470,45 @@ subroutine h5tbinsert_field_f_float(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
- interface
- integer function h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_FL_C'::h5tbinsert_field_fl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- real, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length length
- end function h5tbinsert_field_fl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length length
+ END FUNCTION h5tbinsert_field_fl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
-end subroutine h5tbinsert_field_f_float
+END SUBROUTINE h5tbinsert_field_f_float
@@ -1519,14 +1527,14 @@ end subroutine h5tbinsert_field_f_float
!
!-------------------------------------------------------------------------
-subroutine h5tbinsert_field_f_double(loc_id,&
+SUBROUTINE h5tbinsert_field_f_double(loc_id,&
dset_name,&
field_name,&
field_type,&
field_index,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1535,45 +1543,45 @@ subroutine h5tbinsert_field_f_double(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
- interface
- integer function h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_DL_C'::h5tbinsert_field_dl_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- double precision, intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length length
- end function h5tbinsert_field_dl_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length length
+ END FUNCTION h5tbinsert_field_dl_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
-end subroutine h5tbinsert_field_f_double
+END SUBROUTINE h5tbinsert_field_f_double
@@ -1593,14 +1601,14 @@ end subroutine h5tbinsert_field_f_double
!
!-------------------------------------------------------------------------
-subroutine h5tbinsert_field_f_string(loc_id,&
+SUBROUTINE h5tbinsert_field_f_string(loc_id,&
dset_name,&
field_name,&
field_type,&
field_index,&
buf,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1609,45 +1617,45 @@ subroutine h5tbinsert_field_f_string(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
- interface
- integer function h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ INTERFACE
+ INTEGER FUNCTION h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_ST_C'::h5tbinsert_field_st_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer(hid_t), intent(in) :: field_type ! field type
- integer, intent(in) :: field_index ! field_index
- character(len=*), intent(in), dimension(*) :: buf ! data buffer
- integer :: namelen ! name length
- integer :: namelen1 ! name length length
- end function h5tbinsert_field_st_c
- end interface
-
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length length
+ END FUNCTION h5tbinsert_field_st_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
field_type,field_index,buf)
-end subroutine h5tbinsert_field_f_string
+END SUBROUTINE h5tbinsert_field_f_string
@@ -1667,11 +1675,11 @@ end subroutine h5tbinsert_field_f_string
!
!-------------------------------------------------------------------------
-subroutine h5tbdelete_field_f(loc_id,&
+SUBROUTINE h5tbdelete_field_f(loc_id,&
dset_name,&
field_name,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1680,37 +1688,37 @@ subroutine h5tbdelete_field_f(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- character(len=*), intent(in) :: field_name ! name of the field
- integer :: namelen ! name length
- integer :: namelen1 ! name length
- integer :: errcode ! error code
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length
+ INTEGER :: errcode ! error code
- interface
- integer function h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name)
+ INTERFACE
+ INTEGER FUNCTION h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name)
- use h5global
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBDELETE_FIELD_C'::h5tbdelete_field_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: field_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- character(LEN=*), intent(IN) :: field_name ! name of the field
- integer :: namelen ! name length
- integer :: namelen1 ! name length length
- end function h5tbdelete_field_c
- end interface
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(IN) :: dset_name ! name of the dataset
+ CHARACTER(LEN=*), INTENT(IN) :: field_name ! name of the field
+ INTEGER :: namelen ! name length
+ INTEGER :: namelen1 ! name length length
+ END FUNCTION h5tbdelete_field_c
+ END INTERFACE
- namelen = len(dset_name)
- namelen1 = len(field_name)
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
errcode = h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name)
-end subroutine h5tbdelete_field_f
+END SUBROUTINE h5tbdelete_field_f
@@ -1731,13 +1739,13 @@ end subroutine h5tbdelete_field_f
!
!-------------------------------------------------------------------------
-subroutine h5tbget_table_info_f(loc_id,&
+SUBROUTINE h5tbget_table_info_f(loc_id,&
dset_name,&
nfields,&
nrecords,&
errcode )
- implicit none
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
@@ -1746,32 +1754,32 @@ subroutine h5tbget_table_info_f(loc_id,&
!DEC$endif
!
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(inout):: nfields ! nfields
- integer(hsize_t), intent(inout):: nrecords ! nrecords
- integer :: errcode ! error code
- integer :: namelen ! name length
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(inout):: nfields ! nfields
+ INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords
+ INTEGER :: errcode ! error code
+ INTEGER :: namelen ! name length
- interface
- integer function h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords)
- use h5global
+ INTERFACE
+ INTEGER FUNCTION h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords)
+ USE h5global
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_TABLE_INFO_C'::h5tbget_table_info_c
!DEC$ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(inout):: nfields ! nfields
- integer(hsize_t), intent(inout):: nrecords ! nrecords
- integer :: namelen ! name length
- end function h5tbget_table_info_c
- end interface
-
- namelen = len(dset_name)
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(inout):: nfields ! nfields
+ INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords
+ INTEGER :: namelen ! name length
+ END FUNCTION h5tbget_table_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
errcode = h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords)
-end subroutine h5tbget_table_info_f
+END SUBROUTINE h5tbget_table_info_f
!-------------------------------------------------------------------------
@@ -1787,75 +1795,81 @@ end subroutine h5tbget_table_info_f
!
! Comments:
!
-! Modifications:
+! Modifications:
+! Added optional parameter for returning the maximum character lenght
+! in the field name array. March 3, 2011
!
!-------------------------------------------------------------------------
-subroutine h5tbget_field_info_f(loc_id,&
+SUBROUTINE h5tbget_field_info_f(loc_id,&
dset_name,&
nfields,&
field_names,&
- field_sizes,&
- field_offsets,&
- type_size,&
- errcode )
-
- implicit none
+ field_sizes,&
+ field_offsets,&
+ type_size,&
+ errcode, maxlen_out )
+ IMPLICIT NONE
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
!DEC$attributes dllexport :: h5tbget_field_info_f
!DEC$endif
!
-
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in):: nfields ! nfields
- character(len=*), dimension(nfields), intent(inout) :: field_names ! field names
- integer(size_t), dimension(nfields), intent(inout) :: field_sizes ! field sizes
- integer(size_t), dimension(nfields), intent(inout) :: field_offsets ! field offsets
- integer(size_t), intent(inout):: type_size ! type size
- integer :: errcode ! error code
- integer :: namelen ! name length
- integer, dimension(nfields) :: namelen2 ! name lengths
- integer :: i ! general purpose integer
-
- interface
- integer function h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,&
- field_sizes,field_offsets,type_size,namelen2,field_names)
-
- use h5global
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_FIELD_INFO_C'::h5tbget_field_info_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in):: nfields ! nfields
- character(len=*), dimension(nfields), intent(inout) :: field_names ! field names
- integer(size_t), dimension(nfields), intent(inout) :: field_sizes ! field sizes
- integer(size_t), dimension(nfields), intent(inout) :: field_offsets ! field offsets
- integer(size_t), intent(inout):: type_size ! type size
- integer :: namelen ! name length
- integer, dimension(nfields) :: namelen2 ! name lengths
- end function h5tbget_field_info_c
- end interface
-
- namelen = len(dset_name)
- do i = 1, nfields
- namelen2(i) = len(field_names(i));
- end do
- errcode = h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,&
- field_sizes,field_offsets,type_size,namelen2,field_names)
-
-end subroutine h5tbget_field_info_f
-
-
-
-! end
-!
-end module H5TB
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in) :: nfields ! nfields
+ CHARACTER(LEN=*), DIMENSION(nfields), INTENT(inout) :: field_names ! field names
+ INTEGER(size_t), DIMENSION(nfields), INTENT(inout) :: field_sizes ! field sizes
+ INTEGER(size_t), DIMENSION(nfields), INTENT(inout) :: field_offsets ! field offsets
+ INTEGER(size_t), INTENT(inout):: type_size ! type size
+ INTEGER :: errcode ! error code
+ INTEGER, OPTIONAL :: maxlen_out ! maximum character len of the field names
+ INTEGER :: namelen ! name length
+ INTEGER, DIMENSION(nfields) :: namelen2 ! name lengths
+ INTEGER :: i ! general purpose integer
+ INTEGER :: maxlen
+ INTEGER :: c_maxlen_out
+
+ INTERFACE
+ INTEGER FUNCTION h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,&
+ field_sizes,field_offsets,type_size,namelen2, maxlen, field_names, c_maxlen_out)
+
+ USE h5global
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_FIELD_INFO_C'::h5tbget_field_info_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: dset_name
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in):: nfields ! nfields
+ CHARACTER(LEN=*), DIMENSION(1:nfields), INTENT(inout) :: field_names ! field names
+ INTEGER(size_t), DIMENSION(1:nfields), INTENT(inout) :: field_sizes ! field sizes
+ INTEGER(size_t), DIMENSION(1:nfields), INTENT(inout) :: field_offsets ! field offsets
+ INTEGER(size_t), INTENT(inout):: type_size ! type size
+ INTEGER :: namelen ! name length
+ INTEGER :: maxlen ! maxiumum length of input field names
+ INTEGER, DIMENSION(1:nfields) :: namelen2 ! name lengths
+ INTEGER :: c_maxlen_out ! maximum character length of a field array element
+ END FUNCTION h5tbget_field_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ DO i = 1, nfields
+ namelen2(i) = LEN_TRIM(field_names(i))
+ END DO
+ maxlen = LEN(field_names(1))
+ c_maxlen_out = 0
+
+ errcode = h5tbget_field_info_c(loc_id, namelen,dset_name, nfields, &
+ field_sizes, field_offsets, type_size, namelen2, maxlen, field_names, c_maxlen_out)
+
+ IF(PRESENT(maxlen_out)) maxlen_out = c_maxlen_out
+
+END SUBROUTINE h5tbget_field_info_f
+
+END MODULE H5TB
diff --git a/hl/fortran/test/tstlite.f90 b/hl/fortran/test/tstlite.f90
index 504b8d7..b0e28f9 100644
--- a/hl/fortran/test/tstlite.f90
+++ b/hl/fortran/test/tstlite.f90
@@ -17,67 +17,71 @@
! This file contains the FORTRAN90 tests for H5LT
!
-program lite_test
+PROGRAM lite_test
-call test_dataset1D()
-call test_dataset2D()
-call test_dataset3D()
-call test_datasets()
-call test_attributes()
+ CALL test_dataset1D()
+ CALL test_dataset2D()
+ CALL test_dataset3D()
+ CALL test_datasetND(4)
+ CALL test_datasetND(5)
+ CALL test_datasetND(6)
+ CALL test_datasetND(7)
+ CALL test_datasets()
+ CALL test_attributes()
-end program lite_test
+END PROGRAM lite_test
!-------------------------------------------------------------------------
! test_dataset1D
!-------------------------------------------------------------------------
-subroutine test_dataset1D()
+SUBROUTINE test_dataset1D()
-use H5LT ! module of H5LT
-use HDF5 ! module of HDF5 library
+USE H5LT ! module of H5LT
+USE HDF5 ! module of HDF5 library
-implicit none
+IMPLICIT NONE
-integer, parameter :: DIM1 = 4; ! Dimension of array
-character(len=9), parameter :: filename = "dsetf1.h5"! File name
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-character(LEN=5), parameter :: dsetname2 = "dset2" ! Dataset name
-character(LEN=5), parameter :: dsetname3 = "dset3" ! Dataset name
-integer(HID_T) :: file_id ! File identifier
-integer(HSIZE_T), dimension(1) :: dims = (/DIM1/) ! Dataset dimensions
-integer :: rank = 1 ! Dataset rank
-integer, dimension(DIM1) :: buf1 ! Data buffer
-integer, dimension(DIM1) :: bufr1 ! Data buffer
-real, dimension(DIM1) :: buf2 ! Data buffer
-real, dimension(DIM1) :: bufr2 ! Data buffer
-double precision, dimension(DIM1) :: buf3 ! Data buffer
-double precision, dimension(DIM1) :: bufr3 ! Data buffer
-integer :: errcode ! Error flag
-integer :: i ! general purpose integer
+INTEGER, PARAMETER :: DIM1 = 4; ! Dimension of array
+CHARACTER(len=9), PARAMETER :: filename = "dsetf1.h5"! File name
+CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname3 = "dset3" ! Dataset name
+INTEGER(HID_T) :: file_id ! File identifier
+INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/DIM1/) ! Dataset dimensions
+INTEGER :: rank = 1 ! Dataset rank
+INTEGER, DIMENSION(DIM1) :: buf1 ! Data buffer
+INTEGER, DIMENSION(DIM1) :: bufr1 ! Data buffer
+REAL, DIMENSION(DIM1) :: buf2 ! Data buffer
+REAL, DIMENSION(DIM1) :: bufr2 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1) :: buf3 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1) :: bufr3 ! Data buffer
+INTEGER :: errcode ! Error flag
+INTEGER :: i ! general purpose integer
-call test_begin(' Make/Read datasets (1D) ')
+CALL test_begin(' Make/Read datasets (1D) ')
!
! Initialize the data array.
!
-do i = 1, DIM1
+DO i = 1, DIM1
buf1(i) = i;
buf2(i) = i;
buf3(i) = i;
-end do
+END DO
!
! Initialize FORTRAN predefined datatypes.
!
-call h5open_f(errcode)
+CALL h5open_f(errcode)
!
! Create a new file using default properties.
!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!-------------------------------------------------------------------------
! H5T_NATIVE_INTEGER
@@ -86,23 +90,23 @@ call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf1, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf1, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr1, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr1, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, DIM1
- if ( buf1(i) .ne. bufr1(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr1(i), ' and ', buf1(i)
- stop
- endif
-end do
+DO i = 1, DIM1
+ IF ( buf1(i) .NE. bufr1(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr1(i), ' and ', buf1(i)
+ STOP
+ ENDIF
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_REAL
@@ -111,23 +115,23 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_REAL, buf2, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_REAL, buf2, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_REAL, bufr2, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_REAL, bufr2, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, DIM1
- if ( buf2(i) .ne. bufr2(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr2(i), ' and ', buf2(i)
- stop
- endif
-end do
+DO i = 1, DIM1
+ IF ( buf2(i) .NE. bufr2(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr2(i), ' and ', buf2(i)
+ STOP
+ ENDIF
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_DOUBLE
@@ -136,103 +140,103 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_DOUBLE, buf3, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_DOUBLE, buf3, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_DOUBLE, bufr3, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_DOUBLE, bufr3, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, DIM1
- if ( buf3(i) .ne. bufr3(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr3(i), ' and ', buf3(i)
- stop
- endif
-end do
+DO i = 1, DIM1
+ IF ( buf3(i) .NE. bufr3(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr3(i), ' and ', buf3(i)
+ STOP
+ ENDIF
+END DO
!
! Close the file.
!
-call h5fclose_f(file_id, errcode)
+CALL h5fclose_f(file_id, errcode)
!
! Close FORTRAN predefined datatypes.
!
-call h5close_f(errcode)
+CALL h5close_f(errcode)
-call passed()
+CALL passed()
!
! end function.
!
-end subroutine test_dataset1D
+END SUBROUTINE test_dataset1D
!-------------------------------------------------------------------------
! test_dataset2D
!-------------------------------------------------------------------------
-subroutine test_dataset2D()
+SUBROUTINE test_dataset2D()
-use H5LT ! module of H5LT
-use HDF5 ! module of HDF5 library
+USE H5LT ! module of H5LT
+USE HDF5 ! module of HDF5 library
-implicit none
+IMPLICIT NONE
-integer, parameter :: DIM1 = 4; ! columns
-integer, parameter :: DIM2 = 6; ! rows
-character(len=9), parameter :: filename = "dsetf2.h5"! File name
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-character(LEN=5), parameter :: dsetname2 = "dset2" ! Dataset name
-character(LEN=5), parameter :: dsetname3 = "dset3" ! Dataset name
-character(LEN=5), parameter :: dsetname4 = "dset4" ! Dataset name
-integer(HID_T) :: file_id ! File identifier
-integer(HSIZE_T), dimension(2) :: dims = (/4,6/) ! Dataset dimensions
-integer :: rank = 2 ! Dataset rank
-integer, dimension(DIM1*DIM2) :: buf ! Data buffer
-integer, dimension(DIM1*DIM2) :: bufr ! Data buffer
-integer, dimension(DIM1,DIM2) :: buf2 ! Data buffer
-integer, dimension(DIM1,DIM2) :: buf2r ! Data buffer
-real, dimension(DIM1,DIM2) :: buf3 ! Data buffer
-real, dimension(DIM1,DIM2) :: buf3r ! Data buffer
-double precision, dimension(DIM1,DIM2) :: buf4 ! Data buffer
-double precision, dimension(DIM1,DIM2) :: buf4r ! Data buffer
-integer :: errcode ! Error flag
-integer :: i, j, n ! general purpose integers
+INTEGER, PARAMETER :: DIM1 = 4; ! columns
+INTEGER, PARAMETER :: DIM2 = 6; ! rows
+CHARACTER(len=9), PARAMETER :: filename = "dsetf2.h5"! File name
+CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname3 = "dset3" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname4 = "dset4" ! Dataset name
+INTEGER(HID_T) :: file_id ! File identifier
+INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/4,6/) ! Dataset dimensions
+INTEGER :: rank = 2 ! Dataset rank
+INTEGER, DIMENSION(DIM1*DIM2) :: buf ! Data buffer
+INTEGER, DIMENSION(DIM1*DIM2) :: bufr ! Data buffer
+INTEGER, DIMENSION(DIM1,DIM2) :: buf2 ! Data buffer
+INTEGER, DIMENSION(DIM1,DIM2) :: buf2r ! Data buffer
+REAL, DIMENSION(DIM1,DIM2) :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2) :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2) :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2) :: buf4r ! Data buffer
+INTEGER :: errcode ! Error flag
+INTEGER :: i, j, n ! general purpose integers
-call test_begin(' Make/Read datasets (2D) ')
+CALL test_begin(' Make/Read datasets (2D) ')
!
! Initialize the data arrays.
!
n=1
-do i = 1, DIM1*DIM2
+DO i = 1, DIM1*DIM2
buf(i) = n;
n = n + 1
-end do
+END DO
-do i = 1, dims(1)
- do j = 1, dims(2)
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
buf2(i,j) = (i-1)*dims(2) + j;
buf3(i,j) = (i-1)*dims(2) + j;
buf4(i,j) = (i-1)*dims(2) + j;
- end do
-end do
+ END DO
+END DO
!
! Initialize FORTRAN predefined datatypes.
!
-call h5open_f(errcode)
+CALL h5open_f(errcode)
!
! Create a new file using default properties.
!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!-------------------------------------------------------------------------
! H5T_NATIVE_INT 1D buffer
@@ -241,23 +245,23 @@ call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, DIM1*DIM2
- if ( buf(i) .ne. bufr(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr(i), ' and ', buf(i)
- stop
- endif
-end do
+DO i = 1, DIM1*DIM2
+ IF ( buf(i) .NE. bufr(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr(i), ' and ', buf(i)
+ STOP
+ ENDIF
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_INT 2D buffer
@@ -266,25 +270,25 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_INTEGER, buf2, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_INTEGER, buf2, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, buf2r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, buf2r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- if ( buf2(i,j) .ne. buf2r(i,j) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf2r(i,j), ' and ', buf2(i,j)
- stop
- endif
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ IF ( buf2(i,j) .NE. buf2r(i,j) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf2r(i,j), ' and ', buf2(i,j)
+ STOP
+ ENDIF
+ END DO
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_REAL
@@ -293,25 +297,25 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- if ( buf3(i,j) .ne. buf3r(i,j) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf3r(i,j), ' and ', buf3(i,j)
- stop
- endif
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ IF ( buf3(i,j) .NE. buf3r(i,j) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf3r(i,j), ' and ', buf3(i,j)
+ STOP
+ ENDIF
+ END DO
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_DOUBLE
@@ -320,41 +324,41 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- if ( buf4(i,j) .ne. buf4r(i,j) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf4r(i,j), ' and ', buf4(i,j)
- stop
- endif
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ IF ( buf4(i,j) .NE. buf4r(i,j) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf4r(i,j), ' and ', buf4(i,j)
+ STOP
+ ENDIF
+ END DO
+END DO
!
! Close the file.
!
-call h5fclose_f(file_id, errcode)
+CALL h5fclose_f(file_id, errcode)
!
! Close FORTRAN predefined datatypes.
!
-call h5close_f(errcode)
+CALL h5close_f(errcode)
-call passed()
+CALL passed()
!
! end function.
!
-end subroutine test_dataset2D
+END SUBROUTINE test_dataset2D
!-------------------------------------------------------------------------
@@ -362,71 +366,71 @@ end subroutine test_dataset2D
!-------------------------------------------------------------------------
-subroutine test_dataset3D()
+SUBROUTINE test_dataset3D()
-use H5LT ! module of H5LT
-use HDF5 ! module of HDF5 library
+USE H5LT ! module of H5LT
+USE HDF5 ! module of HDF5 library
-implicit none
+IMPLICIT NONE
-integer, parameter :: DIM1 = 6; ! columns
-integer, parameter :: DIM2 = 4; ! rows
-integer, parameter :: DIM3 = 2; ! layers
-character(len=9), parameter :: filename = "dsetf3.h5" ! File name
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-character(LEN=5), parameter :: dsetname2 = "dset2" ! Dataset name
-character(LEN=5), parameter :: dsetname3 = "dset3" ! Dataset name
-character(LEN=5), parameter :: dsetname4 = "dset4" ! Dataset name
-integer(HID_T) :: file_id ! File identifier
-integer(HSIZE_T), dimension(3) :: dims = (/DIM1,DIM2,DIM3/) ! Dataset dimensions
-integer(HSIZE_T), dimension(3) :: dimsr ! Dataset dimensions
-integer, dimension(DIM1*DIM2*DIM3) :: buf ! Data buffer
-integer, dimension(DIM1*DIM2*DIM3) :: bufr ! Data buffer
-integer, dimension(DIM1,DIM2,DIM3) :: buf2 ! Data buffer
-integer, dimension(DIM1,DIM2,DIM3) :: buf2r ! Data buffer
-real, dimension(DIM1,DIM2,DIM3) :: buf3 ! Data buffer
-real, dimension(DIM1,DIM2,DIM3) :: buf3r ! Data buffer
-double precision, dimension(DIM1,DIM2,DIM3) :: buf4 ! Data buffer
-double precision, dimension(DIM1,DIM2,DIM3) :: buf4r ! Data buffer
-integer :: rank = 3 ! Dataset rank
-integer :: errcode ! Error flag
-integer :: i, j, k, n ! general purpose integers
-integer :: type_class
-integer(SIZE_T) :: type_size
+INTEGER, PARAMETER :: DIM1 = 6; ! columns
+INTEGER, PARAMETER :: DIM2 = 4; ! rows
+INTEGER, PARAMETER :: DIM3 = 2; ! layers
+CHARACTER(len=9), PARAMETER :: filename = "dsetf3.h5" ! File name
+CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname3 = "dset3" ! Dataset name
+CHARACTER(LEN=5), PARAMETER :: dsetname4 = "dset4" ! Dataset name
+INTEGER(HID_T) :: file_id ! File identifier
+INTEGER(HSIZE_T), DIMENSION(3) :: dims = (/DIM1,DIM2,DIM3/) ! Dataset dimensions
+INTEGER(HSIZE_T), DIMENSION(3) :: dimsr ! Dataset dimensions
+INTEGER, DIMENSION(DIM1*DIM2*DIM3) :: buf ! Data buffer
+INTEGER, DIMENSION(DIM1*DIM2*DIM3) :: bufr ! Data buffer
+INTEGER, DIMENSION(DIM1,DIM2,DIM3) :: buf2 ! Data buffer
+INTEGER, DIMENSION(DIM1,DIM2,DIM3) :: buf2r ! Data buffer
+REAL, DIMENSION(DIM1,DIM2,DIM3) :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2,DIM3) :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3) :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3) :: buf4r ! Data buffer
+INTEGER :: rank = 3 ! Dataset rank
+INTEGER :: errcode ! Error flag
+INTEGER :: i, j, k, n ! general purpose integers
+INTEGER :: type_class
+INTEGER(SIZE_T) :: type_size
-call test_begin(' Make/Read datasets (3D) ')
+CALL test_begin(' Make/Read datasets (3D) ')
!
! Initialize the data array.
!
n=1
-do i = 1, DIM1*DIM2*DIM3
+DO i = 1, DIM1*DIM2*DIM3
buf(i) = n;
n = n + 1
-end do
+END DO
n = 1
-do i = 1, dims(1)
- do j = 1, dims(2)
- do k = 1, dims(3)
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
buf2(i,j,k) = n;
buf3(i,j,k) = n;
buf4(i,j,k) = n;
n = n + 1
- end do
- end do
-end do
+ END DO
+ END DO
+END DO
!
! Initialize FORTRAN predefined datatypes.
!
-call h5open_f(errcode)
+CALL h5open_f(errcode)
!
! Create a new file using default properties.
!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!-------------------------------------------------------------------------
! H5T_NATIVE_INT 1D buffer
@@ -435,23 +439,23 @@ call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, DIM1*DIM2*DIM3
- if ( buf(i) .ne. bufr(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr(i), ' and ', buf(i)
- stop
- endif
-end do
+DO i = 1, DIM1*DIM2*DIM3
+ IF ( buf(i) .NE. bufr(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr(i), ' and ', buf(i)
+ STOP
+ ENDIF
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_INT 3D buffer
@@ -460,27 +464,27 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_INTEGER, buf2, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims, H5T_NATIVE_INTEGER, buf2, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, buf2r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, buf2r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- do k = 1, dims(3)
- if ( buf2(i,j,k) .ne. buf2r(i,j,k) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf2r(i,j,k), ' and ', buf2(i,j,k)
- stop
- endif
- end do
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ IF ( buf2(i,j,k) .NE. buf2r(i,j,k) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf2r(i,j,k), ' and ', buf2(i,j,k)
+ STOP
+ ENDIF
+ END DO
+ END DO
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_REAL
@@ -489,27 +493,27 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- do k = 1, dims(3)
- if ( buf3(i,j,k) .ne. buf3r(i,j,k) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf3r(i,j,k), ' and ', buf3(i,j,k)
- stop
- endif
- end do
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ IF ( buf3(i,j,k) .NE. buf3r(i,j,k) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf3r(i,j,k), ' and ', buf3(i,j,k)
+ STOP
+ ENDIF
+ END DO
+ END DO
+END DO
!-------------------------------------------------------------------------
! H5T_NATIVE_DOUBLE
@@ -518,299 +522,756 @@ end do
!
! write dataset.
!
-call h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
+CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
!
! read dataset.
!
-call h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
+CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
!
! compare read and write buffers.
!
-do i = 1, dims(1)
- do j = 1, dims(2)
- do k = 1, dims(3)
- if ( buf4(i,j,k) .ne. buf4r(i,j,k) ) then
- print *, 'read buffer differs from write buffer'
- print *, buf4r(i,j,k), ' and ', buf4(i,j,k)
- stop
- endif
- end do
- end do
-end do
+DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ IF ( buf4(i,j,k) .NE. buf4r(i,j,k) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf4r(i,j,k), ' and ', buf4(i,j,k)
+ STOP
+ ENDIF
+ END DO
+ END DO
+END DO
-call h5ltget_dataset_info_f(file_id,dsetname4,dimsr,type_class,type_size,errcode )
+CALL h5ltget_dataset_info_f(file_id,dsetname4,dimsr,type_class,type_size,errcode )
!
! compare dimensions
!
-do i = 1, rank
- if ( dimsr(i) .ne. dims(i) ) then
- print *, 'dimensions differ '
- stop
- endif
-end do
+DO i = 1, rank
+ IF ( dimsr(i) .NE. dims(i) ) THEN
+ PRINT *, 'dimensions differ '
+ STOP
+ ENDIF
+END DO
!
! Close the file.
!
-call h5fclose_f(file_id, errcode)
+CALL h5fclose_f(file_id, errcode)
!
! Close FORTRAN predefined datatypes.
!
-call h5close_f(errcode)
+CALL h5close_f(errcode)
-call passed()
+CALL passed()
!
! end function.
!
-end subroutine test_dataset3D
-
-
+END SUBROUTINE test_dataset3D
!-------------------------------------------------------------------------
-! test_datasets
+! test_datasetND
!-------------------------------------------------------------------------
-subroutine test_datasets()
-
-use H5LT ! module of H5LT
-use HDF5 ! module of HDF5 library
-
-implicit none
-
-character(len=9), parameter :: filename = "dsetf4.h5"! File name
-integer(HID_T) :: file_id ! File identifier
-integer :: errcode ! Error flag
-integer, parameter :: DIM1 = 10; ! Dimension of array
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-character(LEN=5), parameter :: dsetname2 = "dset2" ! Dataset name
-character(LEN=5), parameter :: dsetname3 = "dset3" ! Dataset name
-character(LEN=5), parameter :: dsetname4 = "dset4" ! Dataset name
-character(LEN=5), parameter :: dsetname5 = "dset5" ! Dataset name
-integer(HSIZE_T), dimension(1) :: dims = (/DIM1/) ! Dataset dimensions
-integer(HSIZE_T), dimension(1) :: dimsr ! Dataset dimensions
-integer :: rank = 1 ! Dataset rank
-integer :: rankr ! Dataset rank
-character(LEN=8), parameter :: buf1 = "mystring" ! Data buffer
-character(LEN=8) :: buf1r ! Data buffer
-integer, dimension(DIM1) :: buf2 ! Data buffer
-integer, dimension(DIM1) :: bufr2 ! Data buffer
-real, dimension(DIM1) :: buf3 ! Data buffer
-real, dimension(DIM1) :: bufr3 ! Data buffer
-double precision, dimension(DIM1) :: buf4 ! Data buffer
-double precision, dimension(DIM1) :: bufr4 ! Data buffer
-integer :: i, n ! general purpose integer
-integer :: has ! general purpose integer
-integer :: type_class
-integer(SIZE_T) :: type_size
-
-!
-! Initialize FORTRAN predefined datatypes.
-!
-call h5open_f(errcode)
-
-!
-! Create a new file using default properties.
-!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+SUBROUTINE test_datasetND(rank)
+
+ USE H5LT ! module of H5LT
+ USE HDF5 ! module of HDF5 library
+
+ IMPLICIT NONE
+
+ INTEGER :: rank ! Dataset rank
+
+ INTEGER, PARAMETER :: DIM1 = 2 ! columns
+ INTEGER, PARAMETER :: DIM2 = 4 ! rows
+ INTEGER, PARAMETER :: DIM3 = 2 ! layers
+ INTEGER, PARAMETER :: DIM4 = 5 ! columns
+ INTEGER, PARAMETER :: DIM5 = 4 ! rows
+ INTEGER, PARAMETER :: DIM6 = 3 ! layers
+ INTEGER, PARAMETER :: DIM7 = 2 ! layers
+ CHARACTER(len=9), PARAMETER :: filename = "dsetf3.h5" ! File name
+ CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname3 = "dset3" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname4 = "dset4" ! Dataset name
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER(HSIZE_T), DIMENSION(7) :: dims
+ INTEGER(HSIZE_T), DIMENSION(7) :: dimsr ! Dataset dimensions
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibuf_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibufr_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ibuf_5 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ibufr_5 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: ibuf_6 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: ibufr_6 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: ibuf_7 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: ibufr_7 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: rbuf_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: rbufr_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: rbuf_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: rbufr_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: rbuf_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: rbufr_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: rbuf_7 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: rbufr_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:) :: dbuf_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:) :: dbufr_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: dbuf_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: dbufr_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: dbuf_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: dbufr_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: dbuf_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: dbufr_7 ! Data buffer
+ INTEGER :: errcode ! Error flag
+ INTEGER :: i, j, k, l, m, n, o, nn ! general purpose integers
+ INTEGER :: type_class
+ INTEGER(SIZE_T) :: type_size
+ CHARACTER(LEN=1) :: ichr1
+
+ WRITE(ichr1,'(I1.1)') rank
+ CALL test_begin(' Make/Read datasets ('//ichr1//'D) ')
!
! Initialize the data array.
!
-n = 1
-do i = 1, DIM1
- buf2(i) = n;
- buf3(i) = n;
- buf4(i) = n;
- n = n + 1;
-end do
-
-!-------------------------------------------------------------------------
-! int
-!-------------------------------------------------------------------------
+ IF(rank.EQ.4)THEN
+
+ ALLOCATE(ibuf_4 (1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+ ALLOCATE(ibufr_4(1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+ ALLOCATE(rbuf_4 (1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+ ALLOCATE(rbufr_4(1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+ ALLOCATE(dbuf_4 (1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+ ALLOCATE(dbufr_4(1:DIM1,1:DIM2,1:DIM3,1:DIM4))
+
+ dims(1:7) = (/DIM1,DIM2,DIM3,DIM4,0,0,0/)
+
+ nn = 1
+ DO i = 1, DIM1
+ DO j = 1, DIM2
+ DO k = 1, DIM3
+ DO l = 1, DIM4
+ ibuf_4(i,j,k,l) = nn
+ rbuf_4(i,j,k,l) = nn
+ dbuf_4(i,j,k,l) = nn
+ nn = nn + 1
+ END DO
+ END DO
+ END DO
+ ENDDO
+
+ ELSE IF(rank.EQ.5)THEN
+
+ ALLOCATE(ibuf_5 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+ ALLOCATE(ibufr_5(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+ ALLOCATE(rbuf_5 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+ ALLOCATE(rbufr_5(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+ ALLOCATE(dbuf_5 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+ ALLOCATE(dbufr_5(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5))
+
+ dims(1:7) = (/DIM1,DIM2,DIM3,DIM4,DIM5,0,0/)
+
+ nn = 1
+ DO i = 1, DIM1
+ DO j = 1, DIM2
+ DO k = 1, DIM3
+ DO l = 1, DIM4
+ DO m = 1, DIM5
+ ibuf_5(i,j,k,l,m) = nn
+ rbuf_5(i,j,k,l,m) = nn
+ dbuf_5(i,j,k,l,m) = nn
+ nn = nn + 1
+ END DO
+ END DO
+ END DO
+ ENDDO
+ ENDDO
+
+ ELSE IF(rank.EQ.6)THEN
+
+ ALLOCATE(ibuf_6 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+ ALLOCATE(ibufr_6(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+ ALLOCATE(rbuf_6 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+ ALLOCATE(rbufr_6(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+ ALLOCATE(dbuf_6 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+ ALLOCATE(dbufr_6(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6))
+
+ dims(1:7) = (/DIM1,DIM2,DIM3,DIM4,DIM5,DIM6,0/)
+
+ nn = 1
+ DO i = 1, DIM1
+ DO j = 1, DIM2
+ DO k = 1, DIM3
+ DO l = 1, DIM4
+ DO m = 1, DIM5
+ DO n = 1, DIM6
+ ibuf_6(i,j,k,l,m,n) = nn
+ rbuf_6(i,j,k,l,m,n) = nn
+ dbuf_6(i,j,k,l,m,n) = nn
+ nn = nn + 1
+ END DO
+ END DO
+ END DO
+ ENDDO
+ ENDDO
+ ENDDO
+
+ ELSE IF(rank.EQ.7)THEN
+
+ ALLOCATE(ibuf_7 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+ ALLOCATE(ibufr_7(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+ ALLOCATE(rbuf_7 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+ ALLOCATE(rbufr_7(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+ ALLOCATE(dbuf_7 (1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+ ALLOCATE(dbufr_7(1:DIM1,1:DIM2,1:DIM3,1:DIM4,1:DIM5,1:DIM6,1:DIM7))
+
+ dims(1:7) = (/DIM1,DIM2,DIM3,DIM4,DIM5,DIM6,DIM7/)
+
+ nn = 1
+ DO i = 1, DIM1
+ DO j = 1, DIM2
+ DO k = 1, DIM3
+ DO l = 1, DIM4
+ DO m = 1, DIM5
+ DO n = 1, DIM6
+ DO o = 1, DIM7
+ ibuf_7(i,j,k,l,m,n,o) = nn
+ rbuf_7(i,j,k,l,m,n,o) = nn
+ dbuf_7(i,j,k,l,m,n,o) = nn
+ nn = nn + 1
+ END DO
+ END DO
+ END DO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+
+ ENDIF
+
+ !
+ ! Initialize FORTRAN predefined datatypes.
+ !
+ CALL h5open_f(errcode)
+
+ !
+ ! Create a new file using default properties.
+ !
+ CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+
+ !-------------------------------------------------------------------------
+ ! H5T_NATIVE_INT ND buffer
+ !-------------------------------------------------------------------------
+
+ !
+ ! write dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_4, errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_5, errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_6, errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_7, errcode)
+ ENDIF
+
+
+ !
+ ! read dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_4, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_5, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_6, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_7, dims(1:rank), errcode)
+ ENDIF
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ DO l = 1, dims(4)
+ IF(rank.EQ.4)THEN
+ IF ( ibuf_4(i,j,k,l) .NE. ibufr_4(i,j,k,l) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, ibuf_4(i,j,k,l), ' and ', ibufr_4(i,j,k,l)
+ STOP
+ ENDIF
+ ENDIF
+ DO m = 1, dims(5)
+ IF(rank.EQ.5)THEN
+ IF ( ibuf_5(i,j,k,l,m) .NE. ibufr_5(i,j,k,l,m) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, ibuf_5(i,j,k,l,m), ' and ', ibufr_5(i,j,k,l,m)
+ STOP
+ ENDIF
+ ENDIF
+ DO n = 1, dims(6)
+ IF(rank.EQ.6)THEN
+ IF ( ibuf_6(i,j,k,l,m,n) .NE. ibufr_6(i,j,k,l,m,n) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, ibuf_6(i,j,k,l,m,n), ' and ', ibufr_6(i,j,k,l,m,n)
+ STOP
+ ENDIF
+ ENDIF
+ DO o = 1, dims(7)
+ IF(rank.EQ.7)THEN
+ IF ( ibuf_7(i,j,k,l,m,n,o) .NE. ibufr_7(i,j,k,l,m,n,o) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, ibuf_7(i,j,k,l,m,n,o), ' and ', ibufr_7(i,j,k,l,m,n,o)
+ STOP
+ ENDIF
+ ENDIF
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ !-------------------------------------------------------------------------
+ ! H5T_NATIVE_REAL
+ !-------------------------------------------------------------------------
+
+ !
+ ! write dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_4, errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_5, errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_6, errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_7, errcode)
+ ENDIF
+
+
+ !
+ ! read dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_4, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_5, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_6, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_7, dims(1:rank), errcode)
+ ENDIF
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ DO l = 1, dims(4)
+ IF(rank.EQ.4)THEN
+ IF ( rbuf_4(i,j,k,l) .NE. rbufr_4(i,j,k,l) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, rbuf_4(i,j,k,l), ' and ', rbufr_4(i,j,k,l)
+ STOP
+ ENDIF
+ ENDIF
+ DO m = 1, dims(5)
+ IF(rank.EQ.5)THEN
+ IF ( rbuf_5(i,j,k,l,m) .NE. rbufr_5(i,j,k,l,m) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, rbuf_5(i,j,k,l,m), ' and ', rbufr_5(i,j,k,l,m)
+ STOP
+ ENDIF
+ ENDIF
+ DO n = 1, dims(6)
+ IF(rank.EQ.6)THEN
+ IF ( rbuf_6(i,j,k,l,m,n) .NE. rbufr_6(i,j,k,l,m,n) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, rbuf_6(i,j,k,l,m,n), ' and ', rbufr_6(i,j,k,l,m,n)
+ STOP
+ ENDIF
+ ENDIF
+ DO o = 1, dims(7)
+ IF(rank.EQ.7)THEN
+ IF ( rbuf_7(i,j,k,l,m,n,o) .NE. rbufr_7(i,j,k,l,m,n,o) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, rbuf_7(i,j,k,l,m,n,o), ' and ', rbufr_7(i,j,k,l,m,n,o)
+ STOP
+ ENDIF
+ ENDIF
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+
+ !-------------------------------------------------------------------------
+ ! H5T_NATIVE_DOUBLE
+ !-------------------------------------------------------------------------
+
+ !
+ ! write dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_4, errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_5, errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_6, errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_7, errcode)
+ ENDIF
+
+
+ !
+ ! read dataset.
+ !
+ IF(rank.EQ.4)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_4, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.5)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_5, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.6)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_6, dims(1:rank), errcode)
+ ELSE IF(rank.EQ.7)THEN
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_7, dims(1:rank), errcode)
+ ENDIF
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, dims(1)
+ DO j = 1, dims(2)
+ DO k = 1, dims(3)
+ DO l = 1, dims(4)
+ IF(rank.EQ.4)THEN
+ IF ( dbuf_4(i,j,k,l) .NE. dbufr_4(i,j,k,l) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, dbuf_4(i,j,k,l), ' and ', dbufr_4(i,j,k,l)
+ STOP
+ ENDIF
+ ENDIF
+ DO m = 1, dims(5)
+ IF(rank.EQ.5)THEN
+ IF ( dbuf_5(i,j,k,l,m) .NE. dbufr_5(i,j,k,l,m) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, dbuf_5(i,j,k,l,m), ' and ', dbufr_5(i,j,k,l,m)
+ STOP
+ ENDIF
+ ENDIF
+ DO n = 1, dims(6)
+ IF(rank.EQ.6)THEN
+ IF ( dbuf_6(i,j,k,l,m,n) .NE. dbufr_6(i,j,k,l,m,n) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, dbuf_6(i,j,k,l,m,n), ' and ', dbufr_6(i,j,k,l,m,n)
+ STOP
+ ENDIF
+ ENDIF
+ DO o = 1, dims(7)
+ IF(rank.EQ.7)THEN
+ IF ( dbuf_7(i,j,k,l,m,n,o) .NE. dbufr_7(i,j,k,l,m,n,o) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, dbuf_7(i,j,k,l,m,n,o), ' and ', dbufr_7(i,j,k,l,m,n,o)
+ STOP
+ ENDIF
+ ENDIF
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+ ENDDO
+
+ CALL h5ltget_dataset_info_f(file_id,dsetname4,dimsr,type_class,type_size,errcode )
+
+ !
+ ! compare dimensions
+ !
+ DO i = 1, rank
+ IF ( dimsr(i) .NE. dims(i) ) THEN
+ PRINT *, 'dimensions differ '
+ STOP
+ ENDIF
+ END DO
+
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, errcode)
+
+ !
+ ! Close FORTRAN predefined datatypes.
+ !
+ CALL h5close_f(errcode)
+
+ ! DEALLOCATE RESOURCES
+
+ IF(rank.EQ.4)THEN
+ DEALLOCATE(ibuf_4, ibufr_4, rbuf_4, rbufr_4, dbuf_4, dbufr_4)
+ ELSE IF(rank.EQ.5)THEN
+ DEALLOCATE(ibuf_5, ibufr_5, rbuf_5, rbufr_5, dbuf_5, dbufr_5)
+ ELSE IF(rank.EQ.6)THEN
+ DEALLOCATE(ibuf_6, ibufr_6, rbuf_6, rbufr_6, dbuf_6, dbufr_6)
+ ELSE IF(rank.EQ.7)THEN
+ DEALLOCATE(ibuf_7, ibufr_7, rbuf_7, rbufr_7, dbuf_7, dbufr_7)
+ ENDIF
+
+ CALL passed()
+ !
+ ! end function.
+ !
+END SUBROUTINE test_datasetND
-call test_begin(' Make/Read datasets (integer) ')
-!
-! write dataset.
-!
-call h5ltmake_dataset_int_f(file_id, dsetname2, rank, dims, buf2, errcode)
-
-!
-! read dataset.
-!
-call h5ltread_dataset_int_f(file_id, dsetname2, bufr2, dims, errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf2(i) .ne. bufr2(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr2(i), ' and ', buf2(i)
- stop
- endif
-end do
-
-call passed()
!-------------------------------------------------------------------------
-! real
+! test_datasets
!-------------------------------------------------------------------------
-call test_begin(' Make/Read datasets (float) ')
+SUBROUTINE test_datasets()
+
+ USE H5LT ! module of H5LT
+ USE HDF5 ! module of HDF5 library
+
+ IMPLICIT NONE
+
+ CHARACTER(len=9), PARAMETER :: filename = "dsetf4.h5"! File name
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER :: errcode ! Error flag
+ INTEGER, PARAMETER :: DIM1 = 10; ! Dimension of array
+ CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname3 = "dset3" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname4 = "dset4" ! Dataset name
+ CHARACTER(LEN=5), PARAMETER :: dsetname5 = "dset5" ! Dataset name
+ INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/DIM1/) ! Dataset dimensions
+ INTEGER(HSIZE_T), DIMENSION(1) :: dimsr ! Dataset dimensions
+ INTEGER :: rank = 1 ! Dataset rank
+ INTEGER :: rankr ! Dataset rank
+ CHARACTER(LEN=8), PARAMETER :: buf1 = "mystring" ! Data buffer
+ CHARACTER(LEN=8) :: buf1r ! Data buffer
+ INTEGER, DIMENSION(DIM1) :: buf2 ! Data buffer
+ INTEGER, DIMENSION(DIM1) :: bufr2 ! Data buffer
+ REAL, DIMENSION(DIM1) :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1) :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: bufr4 ! Data buffer
+ INTEGER :: i, n ! general purpose integer
+ INTEGER :: has ! general purpose integer
+ INTEGER :: type_class
+ INTEGER(SIZE_T) :: type_size
+
+ !
+ ! Initialize FORTRAN predefined datatypes.
+ !
+ CALL h5open_f(errcode)
+
+ !
+ ! Create a new file using default properties.
+ !
+ CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+
+ !
+ ! Initialize the data array.
+ !
+ n = 1
+ DO i = 1, DIM1
+ buf2(i) = n;
+ buf3(i) = n;
+ buf4(i) = n;
+ n = n + 1;
+ END DO
+
+ !-------------------------------------------------------------------------
+ ! int
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Make/Read datasets (integer) ')
+
+ !
+ ! write dataset.
+ !
+ CALL h5ltmake_dataset_int_f(file_id, dsetname2, rank, dims, buf2, errcode)
+
+ !
+ ! read dataset.
+ !
+ CALL h5ltread_dataset_int_f(file_id, dsetname2, bufr2, dims, errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf2(i) .NE. bufr2(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr2(i), ' and ', buf2(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL passed()
+
+ !-------------------------------------------------------------------------
+ ! real
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Make/Read datasets (float) ')
+
+
+ !
+ ! write dataset.
+ !
+ CALL h5ltmake_dataset_float_f(file_id, dsetname3, rank, dims, buf3, errcode)
+
+ !
+ ! read dataset.
+ !
+ CALL h5ltread_dataset_float_f(file_id, dsetname3, bufr3, dims, errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf3(i) .NE. bufr3(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr3(i), ' and ', buf3(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL passed()
+
+ !-------------------------------------------------------------------------
+ ! double
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Make/Read datasets (double) ')
+
+
+ !
+ ! write dataset.
+ !
+ CALL h5ltmake_dataset_double_f(file_id, dsetname4, rank, dims, buf4, errcode)
+
+ !
+ ! read dataset.
+ !
+ CALL h5ltread_dataset_double_f(file_id, dsetname4, bufr4, dims, errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf4(i) .NE. bufr4(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr4(i), ' and ', buf4(i)
+ STOP
+ ENDIF
+ END DO
+ CALL passed()
-!
-! write dataset.
-!
-call h5ltmake_dataset_float_f(file_id, dsetname3, rank, dims, buf3, errcode)
-!
-! read dataset.
-!
-call h5ltread_dataset_float_f(file_id, dsetname3, bufr3, dims, errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf3(i) .ne. bufr3(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr3(i), ' and ', buf3(i)
- stop
- endif
-end do
+ !-------------------------------------------------------------------------
+ ! string
+ !-------------------------------------------------------------------------
-call passed()
+ CALL test_begin(' Make/Read datasets (string) ')
-!-------------------------------------------------------------------------
-! double
-!-------------------------------------------------------------------------
-
-call test_begin(' Make/Read datasets (double) ')
+ !
+ ! write dataset.
+ !
+ CALL h5ltmake_dataset_string_f(file_id, dsetname5, buf1, errcode)
-!
-! write dataset.
-!
-call h5ltmake_dataset_double_f(file_id, dsetname4, rank, dims, buf4, errcode)
+ !
+ ! read dataset.
+ !
+ CALL h5ltread_dataset_string_f(file_id, dsetname5, buf1r, errcode)
-!
-! read dataset.
-!
-call h5ltread_dataset_double_f(file_id, dsetname4, bufr4, dims, errcode)
+ !
+ ! compare read and write buffers.
+ !
+ IF ( buf1 .NE. buf1r ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf1, ' and ', buf1r
+ STOP
+ ENDIF
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf4(i) .ne. bufr4(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr4(i), ' and ', buf4(i)
- stop
- endif
-end do
+ CALL passed()
-call passed()
-!-------------------------------------------------------------------------
-! string
-!-------------------------------------------------------------------------
-call test_begin(' Make/Read datasets (string) ')
-!
-! write dataset.
-!
-call h5ltmake_dataset_string_f(file_id, dsetname5, buf1, errcode)
+ CALL test_begin(' Get dataset dimensions/info ')
-!
-! read dataset.
-!
-call h5ltread_dataset_string_f(file_id, dsetname5, buf1r, errcode)
+ !-------------------------------------------------------------------------
+ ! h5ltget_dataset_ndims_f
+ !-------------------------------------------------------------------------
-!
-! compare read and write buffers.
-!
-if ( buf1 .ne. buf1r ) then
- print *, 'read buffer differs from write buffer'
- print *, buf1, ' and ', buf1r
- stop
-endif
+ CALL h5ltget_dataset_ndims_f(file_id, dsetname4, rankr, errcode)
+ IF ( rankr .NE. rank ) THEN
+ PRINT *, 'h5ltget_dataset_ndims_f return error'
+ STOP
+ ENDIF
-call passed()
+ !-------------------------------------------------------------------------
+ ! test h5ltfind_dataset_f function
+ !-------------------------------------------------------------------------
+ has = h5ltfind_dataset_f(file_id,dsetname4)
+ IF ( has .NE. 1 ) THEN
+ PRINT *, 'h5ltfind_dataset_f return error'
+ STOP
+ ENDIF
+ !-------------------------------------------------------------------------
+ ! test h5ltget_dataset_info_f function
+ !-------------------------------------------------------------------------
-call test_begin(' Get dataset dimensions/info ')
+ CALL h5ltget_dataset_info_f(file_id,dsetname4,dimsr,type_class,type_size,errcode )
-!-------------------------------------------------------------------------
-! h5ltget_dataset_ndims_f
-!-------------------------------------------------------------------------
+ !
+ ! compare dimensions
+ !
+ DO i = 1, rank
+ IF ( dimsr(i) .NE. dims(i) ) THEN
+ PRINT *, 'dimensions differ '
+ STOP
+ ENDIF
+ END DO
-call h5ltget_dataset_ndims_f(file_id, dsetname4, rankr, errcode)
-if ( rankr .ne. rank ) then
- print *, 'h5ltget_dataset_ndims_f return error'
- stop
-endif
+ IF ( type_class .NE. 1 ) THEN ! H5T_FLOAT
+ PRINT *, 'wrong type class '
+ STOP
+ ENDIF
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, errcode)
+ !
+ ! Close FORTRAN predefined datatypes.
+ !
+ CALL h5close_f(errcode)
-!-------------------------------------------------------------------------
-! test h5ltfind_dataset_f function
-!-------------------------------------------------------------------------
-
-
-has = h5ltfind_dataset_f(file_id,dsetname4)
-if ( has .ne. 1 ) then
- print *, 'h5ltfind_dataset_f return error'
- stop
-endif
-
-!-------------------------------------------------------------------------
-! test h5ltget_dataset_info_f function
-!-------------------------------------------------------------------------
-
-
-call h5ltget_dataset_info_f(file_id,dsetname4,dimsr,type_class,type_size,errcode )
-
-!
-! compare dimensions
-!
-do i = 1, rank
- if ( dimsr(i) .ne. dims(i) ) then
- print *, 'dimensions differ '
- stop
- endif
-end do
-
-if ( type_class .ne. 1 ) then ! H5T_FLOAT
- print *, 'wrong type class '
- stop
-endif
-
-!
-! Close the file.
-!
-call h5fclose_f(file_id, errcode)
-!
-! Close FORTRAN predefined datatypes.
-!
-call h5close_f(errcode)
-
-call passed()
-!
-! end function.
-!
-end subroutine test_datasets
+ CALL passed()
+ !
+ ! end function.
+ !
+END SUBROUTINE test_datasets
@@ -818,232 +1279,232 @@ end subroutine test_datasets
! test_attributes
!-------------------------------------------------------------------------
-subroutine test_attributes()
-
-use H5LT ! module of H5LT
-use HDF5 ! module of HDF5 library
-
-implicit none
-
-character(len=9), parameter :: filename = "dsetf5.h5"! File name
-integer(HID_T) :: file_id ! File identifier
-integer, parameter :: DIM1 = 10; ! Dimension of array
-character(LEN=5), parameter :: attrname1 = "attr1" ! Attribute name
-character(LEN=5), parameter :: attrname2 = "attr2" ! Attribute name
-character(LEN=5), parameter :: attrname3 = "attr3" ! Attribute name
-character(LEN=5), parameter :: attrname4 = "attr4" ! Attribute name
-character(LEN=5), parameter :: attrname5 = "attr5" ! Attribute name
-character(LEN=8), parameter :: buf1 = "mystring" ! Data buffer
-character(LEN=8) :: bufr1 ! Data buffer
-integer, dimension(DIM1) :: buf2 ! Data buffer
-integer, dimension(DIM1) :: bufr2 ! Data buffer
-real, dimension(DIM1) :: buf3 ! Data buffer
-real, dimension(DIM1) :: bufr3 ! Data buffer
-double precision, dimension(DIM1) :: buf4 ! Data buffer
-double precision, dimension(DIM1) :: bufr4 ! Data buffer
-integer :: errcode ! Error flag
-integer :: i, n ! general purpose integer
-integer(SIZE_T) size ! size of attribute array
-integer :: rankr ! rank
-integer(HSIZE_T), dimension(1) :: dimsr ! attribute dimensions
-integer :: type_class
-integer(SIZE_T) :: type_size
-integer(HSIZE_T), dimension(1) :: dims = (/DIM1/) ! Dataset dimensions
-integer :: rank = 1 ! Dataset rank
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-integer, dimension(DIM1) :: buf ! Data buffer
+SUBROUTINE test_attributes()
+
+ USE H5LT ! module of H5LT
+ USE HDF5 ! module of HDF5 library
+
+ IMPLICIT NONE
+
+ CHARACTER(len=9), PARAMETER :: filename = "dsetf5.h5"! File name
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER, PARAMETER :: DIM1 = 10; ! Dimension of array
+ CHARACTER(LEN=5), PARAMETER :: attrname1 = "attr1" ! Attribute name
+ CHARACTER(LEN=5), PARAMETER :: attrname2 = "attr2" ! Attribute name
+ CHARACTER(LEN=5), PARAMETER :: attrname3 = "attr3" ! Attribute name
+ CHARACTER(LEN=5), PARAMETER :: attrname4 = "attr4" ! Attribute name
+ CHARACTER(LEN=5), PARAMETER :: attrname5 = "attr5" ! Attribute name
+ CHARACTER(LEN=8), PARAMETER :: buf1 = "mystring" ! Data buffer
+ CHARACTER(LEN=8) :: bufr1 ! Data buffer
+ INTEGER, DIMENSION(DIM1) :: buf2 ! Data buffer
+ INTEGER, DIMENSION(DIM1) :: bufr2 ! Data buffer
+ REAL, DIMENSION(DIM1) :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1) :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: bufr4 ! Data buffer
+ INTEGER :: errcode ! Error flag
+ INTEGER :: i, n ! general purpose integer
+ INTEGER(SIZE_T) size ! size of attribute array
+ INTEGER :: rankr ! rank
+ INTEGER(HSIZE_T), DIMENSION(1) :: dimsr ! attribute dimensions
+ INTEGER :: type_class
+ INTEGER(SIZE_T) :: type_size
+ INTEGER(HSIZE_T), DIMENSION(1) :: dims = (/DIM1/) ! Dataset dimensions
+ INTEGER :: rank = 1 ! Dataset rank
+ CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+ INTEGER, DIMENSION(DIM1) :: buf ! Data buffer
+
+ !
+ ! Initialize FORTRAN predefined datatypes.
+ !
+ CALL h5open_f(errcode)
+ !
+ ! Create a new file using default properties.
+ !
+ CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+ !
+ ! make a dataset.
+ !
+ CALL h5ltmake_dataset_int_f(file_id, dsetname1, rank, dims, buf, errcode)
+
+ !
+ ! Initialize the data array.
+ !
+ size = DIM1
+ n = 1
+ DO i = 1, DIM1
+ buf2(i) = n;
+ buf3(i) = n;
+ buf4(i) = n;
+ n = n + 1;
+ END DO
+
+
+ !-------------------------------------------------------------------------
+ ! int
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Set/Get attributes int ')
+
+
+ !
+ ! write attribute.
+ !
+ CALL h5ltset_attribute_int_f(file_id,dsetname1,attrname2,buf2,size,errcode)
+
+ !
+ ! read attribute.
+ !
+ CALL h5ltget_attribute_int_f(file_id,dsetname1,attrname2,bufr2,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf2(i) .NE. bufr2(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr2(i), ' and ', buf2(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL passed()
+
+ !-------------------------------------------------------------------------
+ ! float
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Set/Get attributes float ')
+
+
+ !
+ ! write attribute.
+ !
+ CALL h5ltset_attribute_float_f(file_id,dsetname1,attrname3,buf3,size,errcode)
+
+ !
+ ! read attribute.
+ !
+ CALL h5ltget_attribute_float_f(file_id,dsetname1,attrname3,bufr3,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf3(i) .NE. bufr3(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr3(i), ' and ', buf3(i)
+ STOP
+ ENDIF
+ END DO
+
+
+ CALL passed()
+
+ !-------------------------------------------------------------------------
+ ! double
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Set/Get attributes double ')
+
-!
-! Initialize FORTRAN predefined datatypes.
-!
-call h5open_f(errcode)
-!
-! Create a new file using default properties.
-!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
-!
-! make a dataset.
-!
-call h5ltmake_dataset_int_f(file_id, dsetname1, rank, dims, buf, errcode)
+ !
+ ! write attribute.
+ !
+ CALL h5ltset_attribute_double_f(file_id,dsetname1,attrname4,buf4,size,errcode)
-!
-! Initialize the data array.
-!
-size = DIM1
-n = 1
-do i = 1, DIM1
- buf2(i) = n;
- buf3(i) = n;
- buf4(i) = n;
- n = n + 1;
-end do
+ !
+ ! read attribute.
+ !
+ CALL h5ltget_attribute_double_f(file_id,dsetname1,attrname4,bufr4,errcode)
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, DIM1
+ IF ( buf4(i) .NE. bufr4(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufr4(i), ' and ', buf4(i)
+ STOP
+ ENDIF
+ END DO
-!-------------------------------------------------------------------------
-! int
-!-------------------------------------------------------------------------
+ CALL passed()
-call test_begin(' Set/Get attributes int ')
-!
-! write attribute.
-!
-call h5ltset_attribute_int_f(file_id,dsetname1,attrname2,buf2,size,errcode)
+ !-------------------------------------------------------------------------
+ ! string
+ !-------------------------------------------------------------------------
-!
-! read attribute.
-!
-call h5ltget_attribute_int_f(file_id,dsetname1,attrname2,bufr2,errcode)
+ CALL test_begin(' Set/Get attributes string ')
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf2(i) .ne. bufr2(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr2(i), ' and ', buf2(i)
- stop
- endif
-end do
-call passed()
+ !
+ ! write attribute.
+ !
+ CALL h5ltset_attribute_string_f(file_id,dsetname1,attrname5,buf1,errcode)
-!-------------------------------------------------------------------------
-! float
-!-------------------------------------------------------------------------
+ !
+ ! read attribute.
+ !
+ CALL h5ltget_attribute_string_f(file_id,dsetname1,attrname5,bufr1,errcode)
-call test_begin(' Set/Get attributes float ')
+ !
+ ! compare read and write buffers.
+ !
+ IF ( buf1 .NE. bufr1 ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, buf1, ' and ', bufr1
+ STOP
+ ENDIF
-!
-! write attribute.
-!
-call h5ltset_attribute_float_f(file_id,dsetname1,attrname3,buf3,size,errcode)
-!
-! read attribute.
-!
-call h5ltget_attribute_float_f(file_id,dsetname1,attrname3,bufr3,errcode)
+ CALL passed()
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf3(i) .ne. bufr3(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr3(i), ' and ', buf3(i)
- stop
- endif
-end do
+ !-------------------------------------------------------------------------
+ ! get attribute rank
+ !-------------------------------------------------------------------------
+ CALL test_begin(' Get attribute rank/info ')
-call passed()
-
-!-------------------------------------------------------------------------
-! double
-!-------------------------------------------------------------------------
-
-call test_begin(' Set/Get attributes double ')
+ CALL h5ltget_attribute_ndims_f(file_id,dsetname1,attrname2,rankr,errcode)
-!
-! write attribute.
-!
-call h5ltset_attribute_double_f(file_id,dsetname1,attrname4,buf4,size,errcode)
+ IF ( rankr .NE. 1 ) THEN
+ PRINT *, 'h5ltget_attribute_ndims_f return error'
+ STOP
+ ENDIF
-!
-! read attribute.
-!
-call h5ltget_attribute_double_f(file_id,dsetname1,attrname4,bufr4,errcode)
-!
-! compare read and write buffers.
-!
-do i = 1, DIM1
- if ( buf4(i) .ne. bufr4(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufr4(i), ' and ', buf4(i)
- stop
- endif
-end do
+ CALL h5ltget_attribute_info_f(file_id,dsetname1,attrname2,dimsr,type_class,type_size,errcode)
-call passed()
+ !
+ ! compare dimensions
+ !
+ DO i = 1, rank
+ IF ( dimsr(i) .NE. dims(i) ) THEN
+ PRINT *, 'dimensions differ '
+ STOP
+ ENDIF
+ END DO
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, errcode)
+ !
+ ! Close FORTRAN predefined datatypes.
+ !
+ CALL h5close_f(errcode)
-!-------------------------------------------------------------------------
-! string
-!-------------------------------------------------------------------------
-
-call test_begin(' Set/Get attributes string ')
-
-
-!
-! write attribute.
-!
-call h5ltset_attribute_string_f(file_id,dsetname1,attrname5,buf1,errcode)
-
-!
-! read attribute.
-!
-call h5ltget_attribute_string_f(file_id,dsetname1,attrname5,bufr1,errcode)
-
-!
-! compare read and write buffers.
-!
-
-if ( buf1 .ne. bufr1 ) then
- print *, 'read buffer differs from write buffer'
- print *, buf1, ' and ', bufr1
- stop
- endif
-
-
-call passed()
-
-!-------------------------------------------------------------------------
-! get attribute rank
-!-------------------------------------------------------------------------
-
-call test_begin(' Get attribute rank/info ')
-
-
-call h5ltget_attribute_ndims_f(file_id,dsetname1,attrname2,rankr,errcode)
-
-if ( rankr .ne. 1 ) then
- print *, 'h5ltget_attribute_ndims_f return error'
- stop
-endif
-
-
-call h5ltget_attribute_info_f(file_id,dsetname1,attrname2,dimsr,type_class,type_size,errcode)
-
-!
-! compare dimensions
-!
-do i = 1, rank
- if ( dimsr(i) .ne. dims(i) ) then
- print *, 'dimensions differ '
- stop
- endif
-end do
-
-
-!
-! Close the file.
-!
-call h5fclose_f(file_id, errcode)
-!
-! Close FORTRAN predefined datatypes.
-!
-call h5close_f(errcode)
-
-call passed()
-!
-! end function.
-!
-end subroutine test_attributes
+ CALL passed()
+ !
+ ! end function.
+ !
+END SUBROUTINE test_attributes
@@ -1054,16 +1515,16 @@ end subroutine test_attributes
! test_begin
!-------------------------------------------------------------------------
-subroutine test_begin(string)
-character(LEN=*), intent(IN) :: string
-write(*, fmt = '(14a)', advance = 'no') string
-write(*, fmt = '(40x,a)', advance = 'no') ' '
-end subroutine test_begin
+SUBROUTINE test_begin(string)
+ CHARACTER(LEN=*), INTENT(IN) :: string
+ WRITE(*, fmt = '(14a)', advance = 'no') string
+ WRITE(*, fmt = '(40x,a)', advance = 'no') ' '
+END SUBROUTINE test_begin
!-------------------------------------------------------------------------
! passed
!-------------------------------------------------------------------------
-subroutine passed()
-write(*, fmt = '(6a)') 'PASSED'
-end subroutine passed
+SUBROUTINE passed()
+ WRITE(*, fmt = '(6a)') 'PASSED'
+END SUBROUTINE passed
diff --git a/hl/fortran/test/tsttable.f90 b/hl/fortran/test/tsttable.f90
index a6ce27f..8191693 100755
--- a/hl/fortran/test/tsttable.f90
+++ b/hl/fortran/test/tsttable.f90
@@ -17,420 +17,436 @@
! This file contains the FORTRAN90 tests for H5LT
!
-program table_test
+PROGRAM table_test
-call test_table1()
+ CALL test_table1()
-end program table_test
+END PROGRAM table_test
!-------------------------------------------------------------------------
! test_table1
!-------------------------------------------------------------------------
-subroutine test_table1()
-
-use H5TB ! module of H5TB
-use HDF5 ! module of HDF5 library
-
-implicit none
-
-character(len=8), parameter :: filename = "f1tab.h5" ! File name
-character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
-integer(HID_T) :: file_id ! File identifier
-integer(HSIZE_T), parameter :: nfields = 4; ! nfields
-integer(HSIZE_T), parameter :: nrecords = 5; ! nrecords
-character(LEN=6), dimension(nfields) :: field_names ! field names
-integer(SIZE_T), dimension(nfields) :: field_offset ! field offset
-integer(HID_T), dimension(nfields) :: field_types ! field types
-integer(HSIZE_T), parameter :: chunk_size = 5 ! chunk size
-integer, parameter :: compress = 0 ! compress
-integer :: errcode ! Error flag
-integer :: i ! general purpose integer
-integer(SIZE_T) :: type_size ! Size of the 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
-integer(HID_T) :: type_id_c ! Memory datatype identifier (for character field)
-integer(SIZE_T) :: offset ! Member's offset
-integer(HSIZE_T) :: start = 0 ! start record
-integer, dimension(nrecords) :: bufi ! Data buffer
-integer, dimension(nrecords) :: bufir ! Data buffer
-real, dimension(nrecords) :: bufr ! Data buffer
-real, dimension(nrecords) :: bufrr ! Data buffer
-double precision, dimension(nrecords) :: bufd ! Data buffer
-double precision, dimension(nrecords) :: bufdr ! Data buffer
-character(LEN=2), dimension(nrecords), parameter :: bufs = (/"AB","CD","EF","GH","IJ"/) ! Data buffer
-character(LEN=2), dimension(nrecords) :: bufsr ! Data buffer
-integer(HSIZE_T) :: nfieldsr ! nfields
-integer(HSIZE_T) :: nrecordsr ! nrecords
-character(LEN=6), dimension(nfields) :: field_namesr ! field names
-integer(SIZE_T), dimension(nfields) :: field_offsetr ! field offset
-integer(SIZE_T), dimension(nfields) :: field_sizesr ! field sizes
-integer(SIZE_T) :: type_sizeout ! size of the datatype
+SUBROUTINE test_table1()
+
+ USE H5TB ! module of H5TB
+ USE HDF5 ! module of HDF5 library
+
+ IMPLICIT NONE
+
+ CHARACTER(len=8), PARAMETER :: filename = "f1tab.h5" ! File name
+ CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER(HSIZE_T), PARAMETER :: nfields = 4; ! nfields
+ INTEGER(HSIZE_T), PARAMETER :: nrecords = 5; ! nrecords
+ CHARACTER(LEN=10),DIMENSION(1:nfields) :: field_names ! field names
+ INTEGER(SIZE_T), DIMENSION(1:nfields) :: field_offset ! field offset
+ INTEGER(HID_T), DIMENSION(1:nfields) :: field_types ! field types
+ INTEGER(HSIZE_T), PARAMETER :: chunk_size = 5 ! chunk size
+ INTEGER, PARAMETER :: compress = 0 ! compress
+ INTEGER :: errcode ! Error flag
+ INTEGER :: i ! general purpose integer
+ INTEGER(SIZE_T) :: type_size ! Size of the 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
+ INTEGER(HID_T) :: type_id_c ! Memory datatype identifier (for character field)
+ INTEGER(SIZE_T) :: offset ! Member's offset
+ INTEGER(HSIZE_T) :: start = 0 ! start record
+ INTEGER, DIMENSION(nrecords) :: bufi ! Data buffer
+ INTEGER, DIMENSION(nrecords) :: bufir ! Data buffer
+ REAL, DIMENSION(nrecords) :: bufr ! Data buffer
+ REAL, DIMENSION(nrecords) :: bufrr ! Data buffer
+ DOUBLE PRECISION, DIMENSION(nrecords) :: bufd ! Data buffer
+ DOUBLE PRECISION, DIMENSION(nrecords) :: bufdr ! Data buffer
+ CHARACTER(LEN=2), DIMENSION(nrecords), PARAMETER :: bufs = (/"AB","CD","EF","GH","IJ"/) ! Data buffer
+ CHARACTER(LEN=2), DIMENSION(nrecords) :: bufsr ! Data buffer
+ INTEGER(HSIZE_T) :: nfieldsr ! nfields
+ INTEGER(HSIZE_T) :: nrecordsr ! nrecords
+ CHARACTER(LEN=9), DIMENSION(1:nfields) :: field_namesr ! field names
+ INTEGER(SIZE_T), DIMENSION(1:nfields) :: field_offsetr ! field offset
+ INTEGER(SIZE_T), DIMENSION(1:nfields) :: field_sizesr ! field sizes
+ INTEGER(SIZE_T) :: type_sizeout ! size of the datatype
+ INTEGER :: maxlen ! max chararter length of a field name
+
+
+ !
+ ! Initialize the data arrays.
+ !
+ DO i = 1, nrecords
+ bufi(i) = i
+ bufr(i) = i
+ bufd(i) = i
+ END DO
+
+ !
+ ! Initialize FORTRAN predefined datatypes.
+ !
+ CALL h5open_f(errcode)
+
+ !
+ ! Create a new file using default properties.
+ !
+ CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
+
+
+ !-------------------------------------------------------------------------
+ ! make table
+ ! initialize the table parameters
+ !-------------------------------------------------------------------------
+
+ field_names(1) = "field1"
+ field_names(2) = "field2a"
+ field_names(3) = "field3ab"
+ field_names(4) = "field4abc"
+
+ !
+ ! calculate total size by calculating sizes of each member
+ !
+ CALL h5tcopy_f(H5T_NATIVE_CHARACTER, type_id_c, errcode)
+ type_size = 2
+ CALL h5tset_size_f(type_id_c, type_size, errcode)
+ CALL h5tget_size_f(type_id_c, type_sizec, errcode)
+ CALL h5tget_size_f(H5T_NATIVE_INTEGER, type_sizei, errcode)
+ CALL h5tget_size_f(H5T_NATIVE_DOUBLE, type_sized, errcode)
+ CALL h5tget_size_f(H5T_NATIVE_REAL, type_sizer, errcode)
+ type_size = type_sizec + type_sizei + type_sized + type_sizer
+
+ !
+ ! type ID's
+ !
+ field_types(1) = type_id_c
+ field_types(2) = H5T_NATIVE_INTEGER
+ field_types(3) = H5T_NATIVE_DOUBLE
+ field_types(4) = H5T_NATIVE_REAL
+
+ !
+ ! offsets
+ !
+ offset = 0
+ field_offset(1) = offset
+ offset = offset + type_sizec ! Offset of the second memeber is 2
+ field_offset(2) = offset
+ offset = offset + type_sizei ! Offset of the second memeber is 6
+ field_offset(3) = offset
+ offset = offset + type_sized ! Offset of the second memeber is 14
+ field_offset(4) = offset
+
+ !-------------------------------------------------------------------------
+ ! make table
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Make table ')
+
+ CALL h5tbmake_table_f(dsetname1,&
+ file_id,&
+ dsetname1,&
+ nfields,&
+ nrecords,&
+ type_size,&
+ field_names,&
+ field_offset,&
+ field_types,&
+ chunk_size,&
+ compress,&
+ errcode )
+
+ CALL passed()
+
+
+ !-------------------------------------------------------------------------
+ ! write field
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Read/Write field by name ')
+
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(1),start,nrecords,type_sizec,&
+ bufs,errcode)
+
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
+ bufi,errcode)
+
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
+ bufd,errcode)
+
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
+ bufr,errcode)
+
+
+ !-------------------------------------------------------------------------
+ ! read field
+ !-------------------------------------------------------------------------
+
+ CALL h5tbread_field_name_f(file_id,dsetname1,field_names(1),start,nrecords,type_sizec,&
+ bufsr,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufsr(i) .NE. bufs(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufsr(i), ' and ', bufs(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL h5tbread_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
+ bufir,errcode)
+
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufir(i) .NE. bufi(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufir(i), ' and ', bufi(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL h5tbread_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
+ bufdr,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufdr(i) .NE. bufd(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufdr(i), ' and ', bufd(i)
+ STOP
+ ENDIF
+ END DO
+
+ CALL h5tbread_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
+ bufrr,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufrr(i) .NE. bufr(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufrr(i), ' and ', bufr(i)
+ STOP
+ ENDIF
+ END DO
+
+
+ CALL passed()
+
+ !-------------------------------------------------------------------------
+ ! write field
+ !-------------------------------------------------------------------------
+
+ CALL test_begin(' Read/Write field by index ')
+
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,1,start,nrecords,type_sizec,&
+ bufs,errcode)
+
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,2,start,nrecords,type_sizei,&
+ bufi,errcode)
+
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
+ bufd,errcode)
+
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
+ bufr,errcode)
+
+
+ !-------------------------------------------------------------------------
+ ! read field
+ !-------------------------------------------------------------------------
+
+ CALL h5tbread_field_index_f(file_id,dsetname1,1,start,nrecords,type_sizec,&
+ bufsr,errcode)
-!
-! Initialize the data arrays.
-!
-do i = 1, nrecords
- bufi(i) = i;
- bufr(i) = i;
- bufd(i) = i;
-end do
-
-!
-! Initialize FORTRAN predefined datatypes.
-!
-call h5open_f(errcode)
-
-!
-! Create a new file using default properties.
-!
-call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
-
-
-!-------------------------------------------------------------------------
-! make table
-! initialize the table parameters
-!-------------------------------------------------------------------------
-
-field_names(1) = "field1"
-field_names(2) = "field2"
-field_names(3) = "field3"
-field_names(4) = "field4"
-
-!
-! calculate total size by calculating sizes of each member
-!
-call h5tcopy_f(H5T_NATIVE_CHARACTER, type_id_c, errcode)
-type_size = 2
-call h5tset_size_f(type_id_c, type_size, errcode)
-call h5tget_size_f(type_id_c, type_sizec, errcode)
-call h5tget_size_f(H5T_NATIVE_INTEGER, type_sizei, errcode)
-call h5tget_size_f(H5T_NATIVE_DOUBLE, type_sized, errcode)
-call h5tget_size_f(H5T_NATIVE_REAL, type_sizer, errcode)
-type_size = type_sizec + type_sizei + type_sized + type_sizer
-
-!
-! type ID's
-!
-field_types(1) = type_id_c
-field_types(2) = H5T_NATIVE_INTEGER
-field_types(3) = H5T_NATIVE_DOUBLE
-field_types(4) = H5T_NATIVE_REAL
-
-!
-! offsets
-!
-offset = 0
-field_offset(1) = offset
-offset = offset + type_sizec ! Offset of the second memeber is 2
-field_offset(2) = offset
-offset = offset + type_sizei ! Offset of the second memeber is 6
-field_offset(3) = offset
-offset = offset + type_sized ! Offset of the second memeber is 14
-field_offset(4) = offset
-
-!-------------------------------------------------------------------------
-! make table
-!-------------------------------------------------------------------------
-
-call test_begin(' Make table ')
-
-
-call h5tbmake_table_f(dsetname1,&
- file_id,&
- dsetname1,&
- nfields,&
- nrecords,&
- type_size,&
- field_names,&
- field_offset,&
- field_types,&
- chunk_size,&
- compress,&
- errcode )
-
-call passed()
-
-!-------------------------------------------------------------------------
-! write field
-!-------------------------------------------------------------------------
-
-call test_begin(' Read/Write field by name ')
-
-call h5tbwrite_field_name_f(file_id,dsetname1,field_names(1),start,nrecords,type_sizec,&
- bufs,errcode)
-
-call h5tbwrite_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
- bufi,errcode)
-
-call h5tbwrite_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
- bufd,errcode)
-
-call h5tbwrite_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
- bufr,errcode)
-
-
-
-!-------------------------------------------------------------------------
-! read field
-!-------------------------------------------------------------------------
-
-call h5tbread_field_name_f(file_id,dsetname1,field_names(1),start,nrecords,type_sizec,&
- bufsr,errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufsr(i) .ne. bufs(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufsr(i), ' and ', bufs(i)
- stop
- endif
-end do
-
-call h5tbread_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
- bufir,errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufir(i) .ne. bufi(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufir(i), ' and ', bufi(i)
- stop
- endif
-end do
-
-call h5tbread_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
- bufdr,errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufdr(i) .ne. bufd(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufdr(i), ' and ', bufd(i)
- stop
- endif
-end do
-
-call h5tbread_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
- bufrr,errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufrr(i) .ne. bufr(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufrr(i), ' and ', bufr(i)
- stop
- endif
-end do
-
-
-call passed()
-
-
-!-------------------------------------------------------------------------
-! write field
-!-------------------------------------------------------------------------
-
-call test_begin(' Read/Write field by index ')
-
-call h5tbwrite_field_index_f(file_id,dsetname1,1,start,nrecords,type_sizec,&
- bufs,errcode)
-
-call h5tbwrite_field_index_f(file_id,dsetname1,2,start,nrecords,type_sizei,&
- bufi,errcode)
-
-call h5tbwrite_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
- bufd,errcode)
-
-call h5tbwrite_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
- bufr,errcode)
-
-
-
-!-------------------------------------------------------------------------
-! read field
-!-------------------------------------------------------------------------
-
-call h5tbread_field_index_f(file_id,dsetname1,1,start,nrecords,type_sizec,&
- bufsr,errcode)
-
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufsr(i) .ne. bufs(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufsr(i), ' and ', bufs(i)
- stop
- endif
-end do
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufsr(i) .NE. bufs(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufsr(i), ' and ', bufs(i)
+ STOP
+ ENDIF
+ END DO
-call h5tbread_field_index_f(file_id,dsetname1,2,start,nrecords,type_sizei,&
- bufir,errcode)
+ CALL h5tbread_field_index_f(file_id,dsetname1,2,start,nrecords,type_sizei,&
+ bufir,errcode)
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufir(i) .ne. bufi(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufir(i), ' and ', bufi(i)
- stop
- endif
-end do
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufir(i) .NE. bufi(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufir(i), ' and ', bufi(i)
+ STOP
+ ENDIF
+ END DO
-call h5tbread_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
- bufdr,errcode)
+ CALL h5tbread_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
+ bufdr,errcode)
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufdr(i) .ne. bufd(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufdr(i), ' and ', bufd(i)
- stop
- endif
-end do
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufdr(i) .NE. bufd(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufdr(i), ' and ', bufd(i)
+ STOP
+ ENDIF
+ END DO
-call h5tbread_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
- bufrr,errcode)
+ CALL h5tbread_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
+ bufrr,errcode)
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufrr(i) .ne. bufr(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufrr(i), ' and ', bufr(i)
- stop
- endif
-end do
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufrr(i) .NE. bufr(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufrr(i), ' and ', bufr(i)
+ STOP
+ ENDIF
+ END DO
-call passed()
+ CALL passed()
-!-------------------------------------------------------------------------
-! Insert field
-! we insert a field callsed "field5" with the same type and buffer as field 4 (Real)
-!-------------------------------------------------------------------------
-
-call test_begin(' Insert field ')
-
-call h5tbinsert_field_f(file_id,dsetname1,"field5",field_types(4),4,bufr,errcode)
+ !-------------------------------------------------------------------------
+ ! Insert field
+ ! we insert a field callsed "field5" with the same type and buffer as field 4 (Real)
+ !-------------------------------------------------------------------------
-call h5tbread_field_index_f(file_id,dsetname1,5,start,nrecords,type_sizer,&
- bufrr,errcode)
-!
-! compare read and write buffers.
-!
-do i = 1, nrecords
- if ( bufrr(i) .ne. bufr(i) ) then
- print *, 'read buffer differs from write buffer'
- print *, bufrr(i), ' and ', bufr(i)
- stop
- endif
-end do
-call passed()
+ CALL test_begin(' Insert field ')
+ CALL h5tbinsert_field_f(file_id,dsetname1,"field5",field_types(4),4,bufr,errcode)
+ CALL h5tbread_field_index_f(file_id,dsetname1,5,start,nrecords,type_sizer,&
+ bufrr,errcode)
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufrr(i) .NE. bufr(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufrr(i), ' and ', bufr(i)
+ STOP
+ ENDIF
+ END DO
-!-------------------------------------------------------------------------
-! Delete field
-!-------------------------------------------------------------------------
-call test_begin(' Delete field ')
+ CALL passed()
-call h5tbdelete_field_f(file_id,dsetname1,"field4",errcode)
+ !-------------------------------------------------------------------------
+ ! Delete field
+ !-------------------------------------------------------------------------
-call passed()
+ CALL test_begin(' Delete field ')
+ CALL h5tbdelete_field_f(file_id,dsetname1,"field4abc",errcode)
-!-------------------------------------------------------------------------
-! Gets the number of records and fields
-!-------------------------------------------------------------------------
+ CALL passed()
-call test_begin(' Get table info ')
-call h5tbget_table_info_f(file_id,dsetname1,nfieldsr,nrecordsr,errcode )
+ !-------------------------------------------------------------------------
+ ! Gets the number of records and fields
+ !-------------------------------------------------------------------------
-if ( nfieldsr .ne. nfields .and. nrecordsr .ne. nrecords ) then
- print *, 'h5tbget_table_info_f return error'
- stop
-endif
+ CALL test_begin(' Get table info ')
-call passed()
+ CALL h5tbget_table_info_f(file_id,dsetname1,nfieldsr,nrecordsr,errcode )
+ IF ( nfieldsr .NE. nfields .AND. nrecordsr .NE. nrecords ) THEN
+ PRINT *, 'h5tbget_table_info_f return error'
+ STOP
+ ENDIF
-!-------------------------------------------------------------------------
-! Get information about fields
-!-------------------------------------------------------------------------
+ CALL passed()
-!call test_begin(' Get fields info ')
-!call h5tbget_field_info_f(file_id,dsetname1,nfields,field_namesr,field_sizesr,&
-! field_offsetr,type_sizeout,errcode )
+ !-------------------------------------------------------------------------
+ ! Get information about fields
+ !-------------------------------------------------------------------------
+ CALL test_begin(' Get fields info ')
-!call passed()
+ CALL h5tbget_field_info_f(file_id, dsetname1, nfields, field_namesr, field_sizesr,&
+ field_offsetr, type_sizeout, errcode, maxlen )
+ IF ( errcode.NE.0 ) THEN
+ WRITE(*,'(/,5X,"H5TBGET_FIELD_INFO_F: RETURN ERROR")')
+ STOP
+ ENDIF
+ ! "field4abc" was deleted and "field5" was added.
+ field_names(4) = "field5"
-!-------------------------------------------------------------------------
-! end
-!-------------------------------------------------------------------------
+ IF ( maxlen .NE. 8 ) THEN
+ WRITE(*,'(/,5X,"H5TBGET_FIELD_INFO_F: INCORRECT MAXIMUM CHARACTER LENGTH OF THE FIELD NAMES")')
+ WRITE(*,'(5X,"RETURNED VALUE = ", I0, ", CORRECT VALUE = ", I0)') maxlen, 8
+ STOP
+ ENDIF
-!
-! Close the file.
-!
-call h5fclose_f(file_id, errcode)
+ DO i = 1, nfields
+ IF ( field_namesr(i) .NE. field_names(i)) THEN
+ WRITE(*,'(/,5X,"H5TBGET_FIELD_INFO_F: READ/WRITE FIELD NAMES DIFFER")')
+ WRITE(*,'(27X,A," AND ",A)') TRIM(field_namesr(i)), TRIM(field_names(i))
+ STOP
+ ENDIF
+ END DO
-!
-! Close FORTRAN predefined datatypes.
-!
-call h5close_f(errcode)
+ CALL passed()
-!
-! end function.
-!
-end subroutine test_table1
+ !-------------------------------------------------------------------------
+ ! end
+ !-------------------------------------------------------------------------
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, errcode)
+ !
+ ! Close FORTRAN predefined datatypes.
+ !
+ CALL h5close_f(errcode)
+ !
+ ! end function.
+ !
+END SUBROUTINE test_table1
!-------------------------------------------------------------------------
! test_begin
!-------------------------------------------------------------------------
-subroutine test_begin(string)
-character(LEN=*), intent(IN) :: string
-write(*, fmt = '(14a)', advance = 'no') string
-write(*, fmt = '(40x,a)', advance = 'no') ' '
-end subroutine test_begin
+SUBROUTINE test_begin(string)
+ CHARACTER(LEN=*), INTENT(IN) :: string
+ WRITE(*, fmt = '(14a)', advance = 'no') string
+ WRITE(*, fmt = '(40x,a)', advance = 'no') ' '
+END SUBROUTINE test_begin
!-------------------------------------------------------------------------
! passed
!-------------------------------------------------------------------------
-subroutine passed()
-write(*, fmt = '(6a)') 'PASSED'
-end subroutine passed
+SUBROUTINE passed()
+ WRITE(*, fmt = '(6a)') 'PASSED'
+END SUBROUTINE passed