summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2015-08-11 01:00:33 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2015-08-11 01:00:33 (GMT)
commit415eb5512b0726716b5f8f72de3dda11ecff8091 (patch)
treeec3eddd4abad940acc89f83c0f114203ff3d6345
parent1900d6a65db0bebcadbcbf98f8a8a9e1d9ff47b4 (diff)
parenta9bef45c7528f2fcca5817900b5536d9d6c14889 (diff)
downloadhdf5-415eb5512b0726716b5f8f72de3dda11ecff8091.zip
hdf5-415eb5512b0726716b5f8f72de3dda11ecff8091.tar.gz
hdf5-415eb5512b0726716b5f8f72de3dda11ecff8091.tar.bz2
[svn-r27488] Merged the F2003_v1.10 branch to the trunk.
Tested: h5committest
-rw-r--r--CMakeLists.txt1
-rw-r--r--MANIFEST174
-rw-r--r--Makefile.in27
-rw-r--r--c++/Makefile.in27
-rw-r--r--c++/examples/Makefile.in27
-rw-r--r--c++/src/Makefile.in29
-rw-r--r--c++/test/Makefile.in29
-rw-r--r--config/cmake/ConfigureChecks.cmake11
-rw-r--r--config/cmake/H5pubconf.h.in12
-rw-r--r--config/cmake/HDF518_Examples.cmake.in3
-rw-r--r--config/cmake/HDF5UseFortran.cmake491
-rw-r--r--config/cmake/hdf5-config.cmake.in1
-rw-r--r--config/cmake/libhdf5.settings.cmake.in1
-rw-r--r--config/cmake/mccacheinit.cmake2
-rwxr-xr-xconfigure4285
-rw-r--r--configure.ac295
-rw-r--r--examples/Makefile.in27
-rw-r--r--fortran/Makefile.in27
-rw-r--r--fortran/doc/DevelGuide/masterindex.html589
-rw-r--r--fortran/doc/DevelGuide/robo_functions.html39
-rw-r--r--fortran/doc/DevelGuide/robo_modules.html117
-rw-r--r--fortran/doc/DevelGuide/robo_programs.html39
-rw-r--r--fortran/doc/DevelGuide/robo_sourcefiles.html309
-rw-r--r--fortran/doc/DevelGuide/robo_subroutines.html421
-rw-r--r--fortran/doc/DevelGuide/robodoc.css302
-rw-r--r--fortran/doc/DevelGuide/src/H5Af_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Aff_F03_f90.html130
-rw-r--r--fortran/doc/DevelGuide/src/H5Aff_F90_f90.html56
-rw-r--r--fortran/doc/DevelGuide/src/H5Aff_f90.html1102
-rw-r--r--fortran/doc/DevelGuide/src/H5Df_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Dff_F03_f90.html138
-rw-r--r--fortran/doc/DevelGuide/src/H5Dff_F90_f90.html116
-rw-r--r--fortran/doc/DevelGuide/src/H5Dff_f90.html506
-rw-r--r--fortran/doc/DevelGuide/src/H5Ef_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Eff_f90.html197
-rw-r--r--fortran/doc/DevelGuide/src/H5FDmpiof_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5FDmpioff_f90.html253
-rw-r--r--fortran/doc/DevelGuide/src/H5Ff_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Fff_f90.html653
-rw-r--r--fortran/doc/DevelGuide/src/H5Gf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Gff_f90.html840
-rw-r--r--fortran/doc/DevelGuide/src/H5If_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Iff_f90.html304
-rw-r--r--fortran/doc/DevelGuide/src/H5Lf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Lff_F03_f90.html181
-rw-r--r--fortran/doc/DevelGuide/src/H5Lff_F90_f90.html50
-rw-r--r--fortran/doc/DevelGuide/src/H5Lff_f90.html637
-rw-r--r--fortran/doc/DevelGuide/src/H5Of_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Off_f90.html198
-rw-r--r--fortran/doc/DevelGuide/src/H5Pf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Pff_F03_f90.html832
-rw-r--r--fortran/doc/DevelGuide/src/H5Pff_F90_f90.html715
-rw-r--r--fortran/doc/DevelGuide/src/H5Pff_f90.html4752
-rw-r--r--fortran/doc/DevelGuide/src/H5Rf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Rff_F03_f90.html492
-rw-r--r--fortran/doc/DevelGuide/src/H5Rff_F90_f90.html305
-rw-r--r--fortran/doc/DevelGuide/src/H5Rff_f90.html148
-rw-r--r--fortran/doc/DevelGuide/src/H5Sf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Sff_f90.html1165
-rw-r--r--fortran/doc/DevelGuide/src/H5Tf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Tff_f90.html2378
-rw-r--r--fortran/doc/DevelGuide/src/H5Zf_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5Zff_f90.html173
-rw-r--r--fortran/doc/DevelGuide/src/H5_DBLE_InterfaceExclude_f90.html53
-rw-r--r--fortran/doc/DevelGuide/src/H5_DBLE_InterfaceInclude_f90.html54
-rw-r--r--fortran/doc/DevelGuide/src/H5_f_c.html41
-rw-r--r--fortran/doc/DevelGuide/src/H5_ff_F03_f90.html83
-rw-r--r--fortran/doc/DevelGuide/src/H5_ff_F90_f90.html48
-rw-r--r--fortran/doc/DevelGuide/src/H5_ff_f90.html269
-rw-r--r--fortran/doc/DevelGuide/src/H5f90global_f90.html61
-rw-r--r--fortran/doc/DevelGuide/src/H5f90kit_c.html44
-rw-r--r--fortran/doc/DevelGuide/src/H5match_types_c.html49
-rw-r--r--fortran/doc/DevelGuide/src/H5test_kind_SIZEOF_f90.html61
-rw-r--r--fortran/doc/DevelGuide/src/H5test_kind_f90.html62
-rw-r--r--fortran/doc/DevelGuide/src/HDF5_f90.html47
-rw-r--r--fortran/doc/DevelGuide/src/HDF5mpio_f90.html45
-rw-r--r--fortran/doc/DevelGuide/test/fflush1_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/fflush2_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/fortranlib_test_1_8_f90.html44
-rw-r--r--fortran/doc/DevelGuide/test/fortranlib_test_F03_f90.html45
-rw-r--r--fortran/doc/DevelGuide/test/fortranlib_test_f90.html44
-rw-r--r--fortran/doc/DevelGuide/test/tF2003_f90.html53
-rw-r--r--fortran/doc/DevelGuide/test/tH5A_1_8_f90.html51
-rw-r--r--fortran/doc/DevelGuide/test/tH5A_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5D_f90.html52
-rw-r--r--fortran/doc/DevelGuide/test/tH5E_f90.html51
-rw-r--r--fortran/doc/DevelGuide/test/tH5F_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5G_1_8_f90.html49
-rw-r--r--fortran/doc/DevelGuide/test/tH5G_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5I_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5O_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5P_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5R_f90.html51
-rw-r--r--fortran/doc/DevelGuide/test/tH5S_f90.html54
-rw-r--r--fortran/doc/DevelGuide/test/tH5Sselect_f90.html56
-rw-r--r--fortran/doc/DevelGuide/test/tH5T_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5VL_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/tH5Z_f90.html47
-rw-r--r--fortran/doc/DevelGuide/test/t_c.html44
-rw-r--r--fortran/doc/DevelGuide/test/tf_f90.html48
-rw-r--r--fortran/doc/DevelGuide/toc_index.html552
-rw-r--r--fortran/examples/CMakeLists.txt54
-rw-r--r--fortran/examples/Makefile.am12
-rw-r--r--fortran/examples/Makefile.in51
-rw-r--r--fortran/examples/nested_derived_type.f9012
-rw-r--r--fortran/examples/rwdset_fortran2003.f9024
-rw-r--r--fortran/src/CMakeLists.txt239
-rw-r--r--fortran/src/H5Af.c1446
-rw-r--r--fortran/src/H5Aff.F90 (renamed from fortran/src/H5Aff.f90)882
-rw-r--r--fortran/src/H5Aff_F03.f901267
-rw-r--r--fortran/src/H5Aff_F90.f901618
-rw-r--r--fortran/src/H5Df.c1506
-rw-r--r--fortran/src/H5Dff.F901878
-rw-r--r--fortran/src/H5Dff.f901035
-rw-r--r--fortran/src/H5Dff_F03.f902389
-rw-r--r--fortran/src/H5Dff_F90.f903004
-rw-r--r--fortran/src/H5Ef.c65
-rw-r--r--fortran/src/H5Eff.F90 (renamed from fortran/src/H5Eff.f90)119
-rw-r--r--fortran/src/H5Eff_F03.f90108
-rw-r--r--fortran/src/H5Eff_F90.f9089
-rw-r--r--fortran/src/H5FDmpiof.c258
-rw-r--r--fortran/src/H5FDmpioff.f90212
-rw-r--r--fortran/src/H5Ff.c238
-rw-r--r--fortran/src/H5Fff.F90 (renamed from fortran/src/H5Fff.f90)225
-rw-r--r--fortran/src/H5Fff_F03.f9099
-rw-r--r--fortran/src/H5Fff_F90.f9043
-rw-r--r--fortran/src/H5Gf.c393
-rw-r--r--fortran/src/H5Gff.F90 (renamed from fortran/src/H5Gff.f90)249
-rw-r--r--fortran/src/H5If.c104
-rw-r--r--fortran/src/H5Iff.F90 (renamed from fortran/src/H5Iff.f90)73
-rw-r--r--fortran/src/H5Lf.c324
-rw-r--r--fortran/src/H5Lff.F90 (renamed from fortran/src/H5Lff.f90)390
-rw-r--r--fortran/src/H5Lff_F03.f90242
-rw-r--r--fortran/src/H5Lff_F90.f9039
-rw-r--r--fortran/src/H5Of.c86
-rw-r--r--fortran/src/H5Off.F90 (renamed from fortran/src/H5Off.f90)554
-rw-r--r--fortran/src/H5Off_F03.f90435
-rw-r--r--fortran/src/H5Off_F90.f9039
-rw-r--r--fortran/src/H5Pf.c2627
-rw-r--r--fortran/src/H5Pff.F90 (renamed from fortran/src/H5Pff.f90)2765
-rw-r--r--fortran/src/H5Pff_F03.f901267
-rw-r--r--fortran/src/H5Pff_F90.f90949
-rw-r--r--fortran/src/H5Rf.c338
-rw-r--r--fortran/src/H5Rff.F90 (renamed from fortran/src/H5Rff_F03.f90)171
-rw-r--r--fortran/src/H5Rff.f90128
-rw-r--r--fortran/src/H5Rff_F90.f90514
-rw-r--r--fortran/src/H5Sf.c554
-rw-r--r--fortran/src/H5Sff.F901754
-rw-r--r--fortran/src/H5Sff.f901875
-rw-r--r--fortran/src/H5Tf.c681
-rw-r--r--fortran/src/H5Tff.F903082
-rw-r--r--fortran/src/H5Tff.f903105
-rw-r--r--fortran/src/H5Tff_F03.f90223
-rw-r--r--fortran/src/H5Tff_F90.f9095
-rw-r--r--fortran/src/H5Zf.c44
-rw-r--r--fortran/src/H5Zff.F90 (renamed from fortran/src/H5Zff.f90)121
-rw-r--r--fortran/src/H5_DBLE_InterfaceExclude.f9039
-rw-r--r--fortran/src/H5_DBLE_InterfaceInclude.f901859
-rw-r--r--fortran/src/H5_buildiface.F901024
-rw-r--r--fortran/src/H5_f.c275
-rw-r--r--fortran/src/H5_ff.F90 (renamed from fortran/src/H5_ff.f90)158
-rw-r--r--fortran/src/H5_ff_F03.f9075
-rw-r--r--fortran/src/H5_ff_F90.f9034
-rw-r--r--fortran/src/H5config_f.inc.cmake84
-rw-r--r--fortran/src/H5config_f.inc.in59
-rw-r--r--fortran/src/H5f90global.F90 (renamed from fortran/src/H5f90global.f90)113
-rw-r--r--fortran/src/H5f90kit.c32
-rw-r--r--fortran/src/H5f90proto.h1468
-rw-r--r--fortran/src/H5fort_type_defines.h.in16
-rw-r--r--fortran/src/H5match_types.c577
-rw-r--r--fortran/src/H5test_kind.f90269
-rw-r--r--fortran/src/H5test_kind_SIZEOF.f90228
-rw-r--r--fortran/src/H5test_kind_STORAGE_SIZE.f90230
-rw-r--r--fortran/src/HDF5.F90 (renamed from fortran/src/HDF5.f90)12
-rw-r--r--fortran/src/HDF5mpio.f9055
-rw-r--r--fortran/src/Makefile.am157
-rw-r--r--fortran/src/Makefile.in306
-rw-r--r--fortran/src/hdf5_fortrandll.def.in272
-rw-r--r--fortran/test/CMakeLists.txt143
-rw-r--r--fortran/test/H5_test_buildiface.F90306
-rw-r--r--fortran/test/Makefile.am61
-rw-r--r--fortran/test/Makefile.in224
-rw-r--r--fortran/test/fflush2.f90297
-rw-r--r--fortran/test/tH5A.f9019
-rw-r--r--fortran/test/tH5A_1_8.f90177
-rw-r--r--fortran/test/tH5D.f90950
-rw-r--r--fortran/test/tH5E_F03.f9019
-rw-r--r--fortran/test/tH5F_F03.f9013
-rw-r--r--fortran/test/tH5G_1_8.f90207
-rw-r--r--fortran/test/tH5I.f9010
-rw-r--r--fortran/test/tH5L_F03.f9027
-rw-r--r--fortran/test/tH5MISC_1_8.f9053
-rw-r--r--fortran/test/tH5O.f9056
-rw-r--r--fortran/test/tH5O_F03.f904
-rw-r--r--fortran/test/tH5P.f9071
-rw-r--r--fortran/test/tH5P_F03.f9065
-rw-r--r--fortran/test/tH5R.f9037
-rw-r--r--fortran/test/tH5S.f906
-rw-r--r--fortran/test/tH5Sselect.f90219
-rw-r--r--fortran/test/tH5T.f90259
-rw-r--r--fortran/test/tH5T_F03.F90 (renamed from fortran/test/tH5T_F03.f90)358
-rw-r--r--fortran/test/tH5VL.f9030
-rw-r--r--fortran/test/tHDF5.f901
-rw-r--r--fortran/test/tf.F90 (renamed from fortran/test/tf.f90)237
-rw-r--r--fortran/test/tf_F03.f90128
-rw-r--r--fortran/test/tf_F08.f90128
-rw-r--r--fortran/test/tf_F90.f9033
-rw-r--r--fortran/testpar/Makefile.in29
-rw-r--r--hl/Makefile.in27
-rw-r--r--hl/c++/Makefile.in27
-rw-r--r--hl/c++/examples/Makefile.in27
-rw-r--r--hl/c++/src/Makefile.in29
-rw-r--r--hl/c++/test/Makefile.in29
-rw-r--r--hl/examples/Makefile.in27
-rw-r--r--hl/fortran/Makefile.in27
-rw-r--r--hl/fortran/examples/Makefile.in27
-rw-r--r--hl/fortran/src/CMakeLists.txt72
-rw-r--r--hl/fortran/src/H5DSfc.c36
-rw-r--r--hl/fortran/src/H5DSff.F90 (renamed from hl/fortran/src/H5DSff.f90)101
-rw-r--r--hl/fortran/src/H5HL_buildiface.F90683
-rw-r--r--hl/fortran/src/H5IMfc.c24
-rw-r--r--hl/fortran/src/H5IMff.F90667
-rw-r--r--hl/fortran/src/H5IMff.f90783
-rw-r--r--hl/fortran/src/H5LTf90proto.h1362
-rw-r--r--hl/fortran/src/H5LTfc.c1332
-rw-r--r--hl/fortran/src/H5LTff.F901912
-rw-r--r--hl/fortran/src/H5LTff.f906490
-rw-r--r--hl/fortran/src/H5TBfc.c307
-rw-r--r--hl/fortran/src/H5TBff.F90848
-rw-r--r--hl/fortran/src/H5TBff.f901900
-rw-r--r--hl/fortran/src/Makefile.am36
-rw-r--r--hl/fortran/src/Makefile.in148
-rw-r--r--hl/fortran/src/hdf5_hl_fortrandll.def.in88
-rw-r--r--hl/fortran/test/CMakeLists.txt16
-rw-r--r--hl/fortran/test/Makefile.am8
-rw-r--r--hl/fortran/test/Makefile.in68
-rw-r--r--hl/fortran/test/tstds.F90 (renamed from hl/fortran/test/tstds.f90)0
-rw-r--r--hl/fortran/test/tstimage.F90 (renamed from hl/fortran/test/tstimage.f90)0
-rw-r--r--hl/fortran/test/tstlite.F90 (renamed from hl/fortran/test/tstlite.f90)275
-rw-r--r--hl/fortran/test/tsttable.F90 (renamed from hl/fortran/test/tsttable.f90)136
-rw-r--r--hl/src/Makefile.in29
-rw-r--r--hl/test/Makefile.in29
-rw-r--r--hl/tools/Makefile.in27
-rw-r--r--hl/tools/gif2h5/Makefile.in29
-rw-r--r--m4/aclocal_fc.m4345
-rw-r--r--src/H5config.h.in54
-rw-r--r--src/Makefile.in28
-rw-r--r--src/libhdf5.settings.in1
-rw-r--r--test/Makefile.in29
-rw-r--r--testpar/Makefile.in29
-rw-r--r--tools/Makefile.in27
-rw-r--r--tools/h5copy/Makefile.in29
-rw-r--r--tools/h5diff/Makefile.in29
-rw-r--r--tools/h5dump/Makefile.in29
-rw-r--r--tools/h5import/Makefile.in29
-rw-r--r--tools/h5jam/Makefile.in29
-rw-r--r--tools/h5ls/Makefile.in29
-rw-r--r--tools/h5repack/Makefile.in29
-rw-r--r--tools/h5stat/Makefile.in29
-rw-r--r--tools/lib/Makefile.in29
-rw-r--r--tools/misc/Makefile.in29
-rw-r--r--tools/perform/Makefile.in29
262 files changed, 27215 insertions, 69654 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fda7d75..799c1da 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -673,6 +673,7 @@ if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/for
endif (BUILD_SHARED_LIBS AND APPLE)
option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON)
include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake)
+ include (${HDF_RESOURCES_DIR}/HDF5UseFortran.cmake)
if (HDF5_ENABLE_F2003)
if (NOT FORTRAN_HAVE_ISO_C_BINDING)
set (HDF5_ENABLE_F2003 OFF)
diff --git a/MANIFEST b/MANIFEST
index e5c002f..3629e3c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -162,89 +162,6 @@
./fortran/Makefile.in
./fortran/robodoc.rc
-./fortran/doc/DevelGuide/toc_index.html
-./fortran/doc/DevelGuide/masterindex.html
-./fortran/doc/DevelGuide/robo_subroutines.html
-./fortran/doc/DevelGuide/robo_sourcefiles.html
-./fortran/doc/DevelGuide/robo_functions.html
-./fortran/doc/DevelGuide/robo_modules.html
-./fortran/doc/DevelGuide/robo_programs.html
-./fortran/doc/DevelGuide/robodoc.css
-./fortran/doc/DevelGuide/test/fortranlib_test_f90.html
-./fortran/doc/DevelGuide/test/tH5A_f90.html
-./fortran/doc/DevelGuide/test/tH5VL_f90.html
-./fortran/doc/DevelGuide/test/tH5D_f90.html
-./fortran/doc/DevelGuide/test/tH5E_f90.html
-./fortran/doc/DevelGuide/test/tH5F_f90.html
-./fortran/doc/DevelGuide/test/tH5G_f90.html
-./fortran/doc/DevelGuide/test/fflush1_f90.html
-./fortran/doc/DevelGuide/test/fortranlib_test_1_8_f90.html
-./fortran/doc/DevelGuide/test/tH5A_1_8_f90.html
-./fortran/doc/DevelGuide/test/tf_f90.html
-./fortran/doc/DevelGuide/test/fflush2_f90.html
-./fortran/doc/DevelGuide/test/fortranlib_test_F03_f90.html
-./fortran/doc/DevelGuide/test/tH5I_f90.html
-./fortran/doc/DevelGuide/test/tH5G_1_8_f90.html
-./fortran/doc/DevelGuide/test/tF2003_f90.html
-./fortran/doc/DevelGuide/test/tH5O_f90.html
-./fortran/doc/DevelGuide/test/tH5P_f90.html
-./fortran/doc/DevelGuide/test/tH5R_f90.html
-./fortran/doc/DevelGuide/test/tH5S_f90.html
-./fortran/doc/DevelGuide/test/tH5Sselect_f90.html
-./fortran/doc/DevelGuide/test/tH5T_f90.html
-./fortran/doc/DevelGuide/test/t_c.html
-./fortran/doc/DevelGuide/test/tH5Z_f90.html
-./fortran/doc/DevelGuide/src/H5Fff_f90.html
-./fortran/doc/DevelGuide/src/H5Zf_c.html
-./fortran/doc/DevelGuide/src/H5Pff_F90_f90.html
-./fortran/doc/DevelGuide/src/H5Aff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5match_types_c.html
-./fortran/doc/DevelGuide/src/H5Rff_F90_f90.html
-./fortran/doc/DevelGuide/src/H5Lff_f90.html
-./fortran/doc/DevelGuide/src/H5FDmpiof_c.html
-./fortran/doc/DevelGuide/src/H5_f_c.html
-./fortran/doc/DevelGuide/src/H5Pff_f90.html
-./fortran/doc/DevelGuide/src/H5Rff_f90.html
-./fortran/doc/DevelGuide/src/H5Tff_f90.html
-./fortran/doc/DevelGuide/src/H5test_kind_f90.html
-./fortran/doc/DevelGuide/src/H5Aff_F90_f90.html
-./fortran/doc/DevelGuide/src/H5Zff_f90.html
-./fortran/doc/DevelGuide/src/HDF5_f90.html
-./fortran/doc/DevelGuide/src/H5_DBLE_InterfaceInclude_f90.html
-./fortran/doc/DevelGuide/src/H5f90kit_c.html
-./fortran/doc/DevelGuide/src/H5Aff_f90.html
-./fortran/doc/DevelGuide/src/H5_DBLE_InterfaceExclude_f90.html
-./fortran/doc/DevelGuide/src/H5Eff_f90.html
-./fortran/doc/DevelGuide/src/H5_ff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5Gff_f90.html
-./fortran/doc/DevelGuide/src/H5test_kind_SIZEOF_f90.html
-./fortran/doc/DevelGuide/src/H5Iff_f90.html
-./fortran/doc/DevelGuide/src/H5Dff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5Af_c.html
-./fortran/doc/DevelGuide/src/H5Off_f90.html
-./fortran/doc/DevelGuide/src/H5Df_c.html
-./fortran/doc/DevelGuide/src/H5Sff_f90.html
-./fortran/doc/DevelGuide/src/H5Ef_c.html
-./fortran/doc/DevelGuide/src/HDF5mpio_f90.html
-./fortran/doc/DevelGuide/src/H5Lff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5Ff_c.html
-./fortran/doc/DevelGuide/src/H5f90global_f90.html
-./fortran/doc/DevelGuide/src/H5Gf_c.html
-./fortran/doc/DevelGuide/src/H5If_c.html
-./fortran/doc/DevelGuide/src/H5Pff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5_ff_F90_f90.html
-./fortran/doc/DevelGuide/src/H5Rff_F03_f90.html
-./fortran/doc/DevelGuide/src/H5Lf_c.html
-./fortran/doc/DevelGuide/src/H5Of_c.html
-./fortran/doc/DevelGuide/src/H5Dff_F90_f90.html
-./fortran/doc/DevelGuide/src/H5Pf_c.html
-./fortran/doc/DevelGuide/src/H5FDmpioff_f90.html
-./fortran/doc/DevelGuide/src/H5_ff_f90.html
-./fortran/doc/DevelGuide/src/H5Rf_c.html
-./fortran/doc/DevelGuide/src/H5Sf_c.html
-./fortran/doc/DevelGuide/src/H5Tf_c.html
-./fortran/doc/DevelGuide/src/H5Dff_f90.html
-./fortran/doc/DevelGuide/src/H5Lff_F90_f90.html
./fortran/examples/Makefile.am
./fortran/examples/Makefile.in
@@ -272,68 +189,44 @@
./fortran/examples/rwdset_fortran2003.f90
./fortran/src/H5_f.c
-./fortran/src/H5_ff.f90
-./fortran/src/H5_ff_F90.f90
-./fortran/src/H5_ff_F03.f90
-./fortran/src/H5_DBLE_InterfaceInclude.f90
-./fortran/src/H5_DBLE_InterfaceExclude.f90
+./fortran/src/H5_ff.F90
./fortran/src/H5Af.c
-./fortran/src/H5Aff.f90
-./fortran/src/H5Aff_F90.f90
-./fortran/src/H5Aff_F03.f90
+./fortran/src/H5Aff.F90
./fortran/src/H5Df.c
-./fortran/src/H5Dff.f90
-./fortran/src/H5Dff_F90.f90
-./fortran/src/H5Dff_F03.f90
+./fortran/src/H5Dff.F90
./fortran/src/H5Ef.c
-./fortran/src/H5Eff.f90
-./fortran/src/H5Eff_F90.f90
-./fortran/src/H5Eff_F03.f90
-./fortran/src/H5FDmpiof.c
-./fortran/src/H5FDmpioff.f90
+./fortran/src/H5Eff.F90
./fortran/src/H5Ff.c
-./fortran/src/H5Fff.f90
-./fortran/src/H5Fff_F90.f90
-./fortran/src/H5Fff_F03.f90
+./fortran/src/H5Fff.F90
./fortran/src/H5Gf.c
-./fortran/src/H5Gff.f90
+./fortran/src/H5Gff.F90
./fortran/src/H5If.c
-./fortran/src/H5Iff.f90
+./fortran/src/H5Iff.F90
./fortran/src/H5Lf.c
-./fortran/src/H5Lff.f90
-./fortran/src/H5Lff_F90.f90
-./fortran/src/H5Lff_F03.f90
+./fortran/src/H5Lff.F90
./fortran/src/H5Of.c
-./fortran/src/H5Off.f90
-./fortran/src/H5Off_F90.f90
-./fortran/src/H5Off_F03.f90
+./fortran/src/H5Off.F90
./fortran/src/H5Pf.c
-./fortran/src/H5Pff.f90
-./fortran/src/H5Pff_F90.f90
-./fortran/src/H5Pff_F03.f90
+./fortran/src/H5Pff.F90
./fortran/src/H5Rf.c
-./fortran/src/H5Rff.f90
-./fortran/src/H5Rff_F90.f90
-./fortran/src/H5Rff_F03.f90
+./fortran/src/H5Rff.F90
./fortran/src/H5Sf.c
-./fortran/src/H5Sff.f90
+./fortran/src/H5Sff.F90
./fortran/src/H5Tf.c
-./fortran/src/H5Tff.f90
-./fortran/src/H5Tff_F90.f90
-./fortran/src/H5Tff_F03.f90
+./fortran/src/H5Tff.F90
./fortran/src/H5Zf.c
-./fortran/src/H5Zff.f90
+./fortran/src/H5Zff.F90
./fortran/src/H5f90.h
-./fortran/src/H5f90global.f90
+./fortran/src/H5f90global.F90
./fortran/src/H5f90i.h
./fortran/src/H5f90kit.c
./fortran/src/H5f90proto.h
-./fortran/src/H5test_kind.f90
-./fortran/src/H5test_kind_SIZEOF.f90
-./fortran/src/H5test_kind_STORAGE_SIZE.f90
+./fortran/src/H5_buildiface.F90
./fortran/src/H5match_types.c
-./fortran/src/HDF5.f90
-./fortran/src/HDF5mpio.f90
+./fortran/src/HDF5.F90
+./fortran/src/H5config_f.inc.in
+./fortran/src/H5config_f.inc.cmake
+./fortran/src/H5fort_type_defines.h.in
./fortran/src/Makefile.am
./fortran/src/Makefile.in
./fortran/src/README
@@ -348,12 +241,10 @@
./fortran/test/fortranlib_test.f90
./fortran/test/fortranlib_test_1_8.f90
./fortran/test/fortranlib_test_F03.f90
+./fortran/test/H5_test_buildiface.F90
./fortran/test/t.c
./fortran/test/t.h
-./fortran/test/tf.f90
-./fortran/test/tf_F90.f90
-./fortran/test/tf_F03.f90
-./fortran/test/tf_F08.f90
+./fortran/test/tf.F90
./fortran/test/tH5A.f90
./fortran/test/tH5A_1_8.f90
./fortran/test/tH5D.f90
@@ -373,7 +264,7 @@
./fortran/test/tH5R.f90
./fortran/test/tH5S.f90
./fortran/test/tH5Sselect.f90
-./fortran/test/tH5T_F03.f90
+./fortran/test/tH5T_F03.F90
./fortran/test/tH5T.f90
./fortran/test/tH5VL.f90
./fortran/test/tH5Z.f90
@@ -2354,25 +2245,27 @@
./hl/fortran/examples/ex_ds1.f90
./hl/fortran/examples/exlite.f90
./hl/fortran/examples/run-hlfortran-ex.sh.in
+./hl/fortran/src/hdf5_hl_fortrandll.def.in
./hl/fortran/src/H5DSfc.c
-./hl/fortran/src/H5DSff.f90
+./hl/fortran/src/H5DSff.F90
./hl/fortran/src/H5IMcc.c
./hl/fortran/src/H5IMcc.h
./hl/fortran/src/H5IMfc.c
-./hl/fortran/src/H5IMff.f90
+./hl/fortran/src/H5IMff.F90
+./hl/fortran/src/H5HL_buildiface.F90
./hl/fortran/src/H5LTf90proto.h
./hl/fortran/src/H5LTfc.c
-./hl/fortran/src/H5LTff.f90
+./hl/fortran/src/H5LTff.F90
./hl/fortran/src/H5TBfc.c
-./hl/fortran/src/H5TBff.f90
+./hl/fortran/src/H5TBff.F90
./hl/fortran/src/Makefile.am
./hl/fortran/src/Makefile.in
./hl/fortran/test/Makefile.am
./hl/fortran/test/Makefile.in
-./hl/fortran/test/tstds.f90
-./hl/fortran/test/tstimage.f90
-./hl/fortran/test/tstlite.f90
-./hl/fortran/test/tsttable.f90
+./hl/fortran/test/tstds.F90
+./hl/fortran/test/tstimage.F90
+./hl/fortran/test/tstlite.F90
+./hl/fortran/test/tsttable.F90
# hl c++
./hl/c++/COPYING
@@ -2404,6 +2297,7 @@
./config/cmake/hdf5-config-version.cmake.in
./config/cmake/HDFCompilerFlags.cmake
./config/cmake/HDF5Macros.cmake
+./config/cmake/HDF5UseFortran.cmake
./config/cmake/libhdf5.settings.cmake.in
./config/cmake/mccacheinit.cmake
./config/cmake/patch.xml
diff --git a/Makefile.in b/Makefile.in
index edee230..ce0c833 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -128,7 +128,8 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -288,14 +289,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -305,13 +313,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -353,6 +360,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/c++/Makefile.in b/c++/Makefile.in
index c964e95..2315cc2 100644
--- a/c++/Makefile.in
+++ b/c++/Makefile.in
@@ -106,7 +106,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -448,14 +449,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -465,13 +473,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -513,6 +520,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/c++/examples/Makefile.in b/c++/examples/Makefile.in
index 03bd135..6b0f894 100644
--- a/c++/examples/Makefile.in
+++ b/c++/examples/Makefile.in
@@ -112,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-c++-ex.sh testh5c++.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -396,14 +397,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -413,13 +421,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -461,6 +468,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index 5dff737..c2daa56 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = h5c++
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -174,7 +175,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -459,14 +460,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -476,13 +484,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -524,6 +531,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/c++/test/Makefile.in b/c++/test/Makefile.in
index 8711eef..0da1d86 100644
--- a/c++/test/Makefile.in
+++ b/c++/test/Makefile.in
@@ -108,7 +108,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = H5srcdir_str.h
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = testhdf5$(EXEEXT)
@@ -136,7 +137,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -450,14 +451,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -467,13 +475,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -515,6 +522,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/config/cmake/ConfigureChecks.cmake b/config/cmake/ConfigureChecks.cmake
index 09f1caf..b9f18a9 100644
--- a/config/cmake/ConfigureChecks.cmake
+++ b/config/cmake/ConfigureChecks.cmake
@@ -158,6 +158,17 @@ if (NOT WINDOWS)
endif (HDF5_ENABLE_DIRECT_VFD)
endif (NOT WINDOWS)
+#-----------------------------------------------------------------------------
+# Check if C has __float128 extension
+#-----------------------------------------------------------------------------
+
+CHECK_TYPE_SIZE("__float128" SIZEOF___FLOAT128)
+if(${HAVE_SIZEOF___FLOAT128})
+ SET(H5_HAVE_FLOAT128 1)
+else (${HAVE_SIZEOF___FLOAT128})
+ SET(H5_HAVE_FLOAT128 0)
+ SET(SIZEOF___FLOAT128 0)
+endif(${HAVE_SIZEOF___FLOAT128})
#-----------------------------------------------------------------------------
# Macro to determine the various conversion capabilities
diff --git a/config/cmake/H5pubconf.h.in b/config/cmake/H5pubconf.h.in
index af9afde..37bcfbf 100644
--- a/config/cmake/H5pubconf.h.in
+++ b/config/cmake/H5pubconf.h.in
@@ -45,6 +45,18 @@
/* As FC_FUNC, but for C identifiers containing underscores. */
#define @H5_FC_FUNC_@
+/* Define Fortran Maximum Real Decimal Precision */
+#cmakedefine H5_PAC_FC_MAX_REAL_PRECISION @H5_PAC_FC_MAX_REAL_PRECISION@
+
+/* Define C Maximum Real Decimal Precision */
+#cmakedefine H5_PAC_C_MAX_REAL_PRECISION @H5_PAC_C_MAX_REAL_PRECISION@
+
+/* Define if we have Fortran C_LONG_DOUBLE */
+#cmakedefine H5_FORTRAN_HAVE_C_LONG_DOUBLE @H5_FORTRAN_HAVE_C_LONG_DOUBLE@
+
+/* Determine if __float128 is available */
+#cmakedefine H5_HAVE_FLOAT128 @H5_HAVE_FLOAT128@
+
/* Define to 1 if you have the `alarm' function. */
#cmakedefine H5_HAVE_ALARM @H5_HAVE_ALARM@
diff --git a/config/cmake/HDF518_Examples.cmake.in b/config/cmake/HDF518_Examples.cmake.in
index febf20a..c82fcf2 100644
--- a/config/cmake/HDF518_Examples.cmake.in
+++ b/config/cmake/HDF518_Examples.cmake.in
@@ -13,7 +13,6 @@ set(CTEST_DASHBOARD_ROOT ${CTEST_SCRIPT_DIRECTORY})
set(CTEST_BUILD_CONFIGURATION "Release")
#set(NO_MAC_FORTRAN "true")
#set(BUILD_OPTIONS "${BUILD_OPTIONS} -DHDF_BUILD_FORTRAN:BOOL=ON")
-set(BUILD_OPTIONS "${BUILD_OPTIONS} -DHDF_ENABLE_F2003:BOOL=ON")
#set(CTEST_USE_TAR_SOURCE "${CTEST_SCRIPT_ARG}")
###############################################################################################################
@@ -123,4 +122,4 @@ if(res GREATER 0)
endif(res GREATER 0)
#-----------------------------------------------------------------------------
##############################################################################################################
-message(STATUS "DONE") \ No newline at end of file
+message(STATUS "DONE")
diff --git a/config/cmake/HDF5UseFortran.cmake b/config/cmake/HDF5UseFortran.cmake
new file mode 100644
index 0000000..b3dec14
--- /dev/null
+++ b/config/cmake/HDF5UseFortran.cmake
@@ -0,0 +1,491 @@
+
+## Check for non-standard extenstion quadmath.h
+
+CHECK_INCLUDE_FILES(quadmath.h C_HAVE_QUADMATH)
+
+if (${C_HAVE_QUADMATH})
+ set(HAVE_QUADMATH 1)
+else ()
+ set(HAVE_QUADMATH 0)
+endif()
+
+#
+# This file provides functions for HDF5 specific Fortran support.
+#
+#-------------------------------------------------------------------------------
+ENABLE_LANGUAGE (Fortran)
+
+# The provided CMake Fortran macros don't provide a general compile/run function
+# so this one is used.
+#-----------------------------------------------------------------------------
+MACRO (FORTRAN_RUN FUNCTION CODE RUN_RESULT_VAR1 COMPILE_RESULT_VAR RETURN)
+# MSB CHECK WHY THIS CHECK?
+# if (NOT DEFINED ${RUN_RESULT_VAR})
+ message (STATUS "Detecting Fortran ${FUNCTION}")
+ if (CMAKE_REQUIRED_LIBRARIES)
+ set (CHECK_FUNCTION_EXISTS_ADD_LIBRARIES
+ "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
+ else (CMAKE_REQUIRED_LIBRARIES)
+ set (CHECK_FUNCTION_EXISTS_ADD_LIBRARIES)
+ endif (CMAKE_REQUIRED_LIBRARIES)
+ file (WRITE
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranCompiler1.f90
+ "${CODE}"
+ )
+ TRY_RUN (RUN_RESULT_VAR COMPILE_RESULT_VAR
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testFortranCompiler1.f90
+ CMAKE_FLAGS "${CHECK_FUNCTION_EXISTS_ADD_LIBRARIES}"
+ RUN_OUTPUT_VARIABLE OUTPUT
+ )
+
+
+
+ set(${RETURN} ${OUTPUT})
+
+ #message ( "Test result1 ${RETURN} ")
+ #message ( "Test result3 ${RESULT} ")
+ #message ( "Test result2 ${CMAKE_MATCH_0} ")
+ #message ( "Test result4 ${CMAKE_MATCH_1} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+ #message ( "Test result2 ${COMPILE_RESULT_VAR} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+ #message ( "Test result1 ${RUN_RESULT_VAR} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+
+ if (${COMPILE_RESULT_VAR})
+ if (${RUN_RESULT_VAR} MATCHES 0)
+ message (STATUS "Testing Fortran ${FUNCTION} - OK")
+ file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
+ "Determining if the Fortran ${FUNCTION} exists passed with the following output:\n"
+ "${OUTPUT}\n\n"
+ )
+ else ()
+ message (STATUS "Testing Fortran ${FUNCTION} - Fail")
+ file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
+ "Determining if the Fortran ${FUNCTION} exists failed with the following output:\n"
+ "${OUTPUT}\n\n")
+ endif ()
+ endif ()
+# endif (NOT DEFINED ${RUN_RESULT_VAR})
+ENDMACRO (FORTRAN_RUN)
+
+#-----------------------------------------------------------------------------
+# Check to see C_LONG_DOUBLE is available
+CHECK_FORTRAN_FEATURE(c_long_double
+ "
+ PROGRAM main
+ USE ISO_C_BINDING
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END PROGRAM
+ "
+ FORTRAN_HAVE_C_LONG_DOUBLE
+)
+if (${FORTRAN_HAVE_C_LONG_DOUBLE})
+ set(FORTRAN_HAVE_C_LONG_DOUBLE 1)
+else ()
+ set(FORTRAN_HAVE_C_LONG_DOUBLE 0)
+endif()
+
+# Check to see C_LONG_DOUBLE is different from C_DOUBLE
+
+CHECK_FORTRAN_FEATURE(c_long_double
+ "
+ MODULE type_mod
+ USE ISO_C_BINDING
+ INTERFACE h5t
+ MODULE PROCEDURE h5t_c_double
+ MODULE PROCEDURE h5t_c_long_double
+ END INTERFACE
+ CONTAINS
+ SUBROUTINE h5t_c_double(r)
+ REAL(KIND=C_DOUBLE) :: r
+ END SUBROUTINE h5t_c_double
+ SUBROUTINE h5t_c_long_double(d)
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END SUBROUTINE h5t_c_long_double
+ END MODULE type_mod
+ PROGRAM main
+ USE ISO_C_BINDING
+ USE type_mod
+ REAL(KIND=C_DOUBLE) :: r
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ CALL h5t(r)
+ CALL h5t(d)
+ END PROGRAM main
+ "
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE
+)
+if (${FORTRAN_C_LONG_DOUBLE_IS_UNIQUE})
+ set(FORTRAN_C_LONG_DOUBLE_IS_UNIQUE 1)
+else ()
+ set(FORTRAN_C_LONG_DOUBLE_IS_UNIQUE 0)
+endif()
+
+## Set the sizeof function for use later in the fortran tests
+if(FORTRAN_HAVE_STORAGE_SIZE)
+ set(FC_SIZEOF_A "STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)")
+ set(FC_SIZEOF_B "STORAGE_SIZE(b, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)")
+ set(FC_SIZEOF_C "STORAGE_SIZE(c, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)")
+elseif(FORTRAN_HAVE_C_SIZEOF)
+ set(FC_SIZEOF_A "SIZEOF(a)")
+ set(FC_SIZEOF_B "SIZEOF(b)")
+ set(FC_SIZEOF_C "SIZEOF(c)")
+else(FORTRAN_HAVE_STORAGE_SIZE)
+ message (FATAL_ERROR "Fortran compiler requires either intrinsic functions SIZEOF or STORAGE_SIZE")
+endif(FORTRAN_HAVE_STORAGE_SIZE)
+
+#-----------------------------------------------------------------------------
+# Determine the available KINDs for REALs and INTEGERs
+#-----------------------------------------------------------------------------
+
+FORTRAN_RUN("REAL and INTEGER KINDs"
+ "
+ PROGRAM main
+ IMPLICIT NONE
+ INTEGER :: ik, k, lastkind, max_decimal_prec
+ INTEGER :: num_rkinds, num_ikinds
+ num_ikinds = 0
+ lastkind=SELECTED_INT_KIND(1)
+ ! Find integer KINDs
+ DO ik=2,36
+ k = SELECTED_INT_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(*,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(*,'(A)',ADVANCE='NO') ','
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(*,'(I0)') lastkind
+ ELSE
+ WRITE(*,'()')
+ ENDIF
+ ! Find real KINDs
+ num_rkinds = 0
+ lastkind=SELECTED_REAL_KIND(1)
+ max_decimal_prec = 1
+ DO ik=2,36
+ k = SELECTED_REAL_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(*,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(*,'(A)',ADVANCE='NO') ','
+ max_decimal_prec = ik
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1)THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(*,'(I0)') lastkind
+ ELSE
+ WRITE(*,'()')
+ ENDIF
+ WRITE(*,'(I0)') max_decimal_prec
+ WRITE(*,'(I0)') num_ikinds
+ WRITE(*,'(I0)') num_rkinds
+ END
+ "
+ XX
+ YY
+ PROG_OUTPUT
+)
+# dnl The output from the above program will be:
+# dnl -- LINE 1 -- valid integer kinds (comma seperated list)
+# dnl -- LINE 2 -- valid real kinds (comma seperated list)
+# dnl -- LINE 3 -- max decimal precision for reals
+# dnl -- LINE 4 -- number of valid integer kinds
+# dnl -- LINE 5 -- number of valid real kinds
+
+# Convert the string to a list of strings by replacing the carriage return with a semicolon
+string(REGEX REPLACE "\n" ";" PROG_OUTPUT "${PROG_OUTPUT}")
+
+list(GET PROG_OUTPUT 0 pac_validIntKinds)
+list(GET PROG_OUTPUT 1 pac_validRealKinds)
+list(GET PROG_OUTPUT 2 H5_PAC_FC_MAX_REAL_PRECISION)
+
+set(PAC_FC_ALL_INTEGER_KINDS "\{${pac_validIntKinds}\}")
+set(PAC_FC_ALL_REAL_KINDS "\{${pac_validRealKinds}\}")
+
+list(GET PROG_OUTPUT 3 NUM_IKIND)
+list(GET PROG_OUTPUT 4 NUM_RKIND)
+
+set(H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = ${NUM_IKIND}")
+set(H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/${pac_validIntKinds}/)")
+
+message ( " ........REAL KINDS FOUND ${PAC_FC_ALL_REAL_KINDS}")
+message ( " ........INTEGER KINDS FOUND ${PAC_FC_ALL_REAL_KINDS}")
+message ( " ........MAX DECIMAL PRECISION ${H5_PAC_FC_MAX_REAL_PRECISION}")
+
+#-----------------------------------------------------------------------------
+# Determine the available KINDs for REALs and INTEGERs
+#-----------------------------------------------------------------------------
+# **********
+# INTEGERS
+# **********
+string(REGEX REPLACE "," ";" VAR_KIND "${pac_validIntKinds}")
+
+foreach( KIND ${VAR_KIND} )
+ set(PROG_SRC
+ "
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER (KIND=${KIND}) a
+ WRITE(*,'(I0)') ${FC_SIZEOF_A}
+ END
+ "
+ )
+ FORTRAN_RUN("INTEGER KIND SIZEOF" ${PROG_SRC}
+ XX
+ YY
+ PROG_OUTPUT1
+ )
+ string(REGEX REPLACE "\n" "" PROG_OUTPUT1 "${PROG_OUTPUT1}")
+ set(pack_int_sizeof "${pack_int_sizeof} ${PROG_OUTPUT1},")
+endforeach(KIND)
+string(STRIP ${pack_int_sizeof} pack_int_sizeof)
+
+
+#Remove trailing comma
+string(REGEX REPLACE ",$" "" pack_int_sizeof "${pack_int_sizeof}")
+#Remove spaces
+string(REGEX REPLACE " " "" pack_int_sizeof "${pack_int_sizeof}")
+
+set(PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{${pack_int_sizeof}\}")
+
+message("...FOUND SIZEOF for INTEGER KINDs ${PAC_FC_ALL_INTEGER_KINDS_SIZEOF}")
+# **********
+# REALS
+# **********
+string(REGEX REPLACE "," ";" VAR_KIND "${pac_validRealKinds}")
+
+#find the maximum kind of the real
+list(LENGTH VAR_KIND LEN_VAR_KIND)
+MATH (EXPR _LEN "${LEN_VAR_KIND} - 1")
+list(GET VAR_KIND ${_LEN} max_real_fortran_kind)
+
+foreach( KIND ${VAR_KIND} )
+ set(PROG_SRC
+ "
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ REAL (KIND=${KIND}) a
+ WRITE(*,'(I0)') ${FC_SIZEOF_A}
+ END
+ "
+ )
+ FORTRAN_RUN("REAL KIND SIZEOF" ${PROG_SRC}
+ XX
+ YY
+ PROG_OUTPUT1
+ )
+ string(REGEX REPLACE "\n" "" PROG_OUTPUT1 "${PROG_OUTPUT1}")
+ set(pack_real_sizeof "${pack_real_sizeof} ${PROG_OUTPUT1},")
+endforeach(KIND)
+string(STRIP ${pack_real_sizeof} pack_real_sizeof)
+
+#Remove trailing comma
+string(REGEX REPLACE ",$" "" pack_real_sizeof "${pack_real_sizeof}")
+#Remove spaces
+string(REGEX REPLACE " " "" pack_real_sizeof "${pack_real_sizeof}")
+
+set(H5CONFIG_F_RKIND_SIZEOF "INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/${pack_real_sizeof}/)")
+
+message("...FOUND SIZEOF for REAL KINDs \{${pack_real_sizeof}\}")
+
+#find the maximum kind of the real
+list(LENGTH VAR_KIND LEN_VAR_KIND)
+MATH (EXPR _LEN "${LEN_VAR_KIND} - 1")
+list(GET VAR_KIND ${_LEN} max_real_fortran_sizeof)
+
+set(PAC_FC_ALL_REAL_KINDS_SIZEOF "\{${pack_real_sizeof}\}")
+#-----------------------------------------------------------------------------
+# Find sizeof of native kinds
+#-----------------------------------------------------------------------------
+FORTRAN_RUN("SIZEOF NATIVE KINDs"
+ "
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER a
+ REAL b
+ DOUBLE PRECISION c
+ WRITE(*,*) ${FC_SIZEOF_A}
+ WRITE(*,*) kind(a)
+ WRITE(*,*) ${FC_SIZEOF_B}
+ WRITE(*,*) kind(b)
+ WRITE(*,*) ${FC_SIZEOF_C}
+ WRITE(*,*) kind(c)
+ END
+ "
+ XX
+ YY
+ PROG_OUTPUT
+)
+# dnl The output from the above program will be:
+# dnl -- LINE 1 -- sizeof INTEGER
+# dnl -- LINE 2 -- kind of INTEGER
+# dnl -- LINE 3 -- sizeof REAL
+# dnl -- LINE 4 -- kind of REAL
+# dnl -- LINE 5 -- sizeof DOUBLE PRECISION
+# dnl -- LINE 6 -- kind of DOUBLE PRECISION
+
+# Convert the string to a list of strings by replacing the carriage return with a semicolon
+string(REGEX REPLACE "\n" ";" PROG_OUTPUT "${PROG_OUTPUT}")
+
+list(GET PROG_OUTPUT 0 PAC_FORTRAN_NATIVE_INTEGER_SIZEOF)
+list(GET PROG_OUTPUT 1 PAC_FORTRAN_NATIVE_INTEGER_KIND)
+list(GET PROG_OUTPUT 2 PAC_FORTRAN_NATIVE_REAL_SIZEOF)
+list(GET PROG_OUTPUT 3 PAC_FORTRAN_NATIVE_REAL_KIND)
+list(GET PROG_OUTPUT 4 PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF)
+list(GET PROG_OUTPUT 5 PAC_FORTRAN_NATIVE_DOUBLE_KIND)
+
+set(FORTRAN_SIZEOF_LONG_DOUBLE ${${HDF_PREFIX}_SIZEOF_LONG_DOUBLE})
+#set(H5_SIZEOF_LONG_DOUBLE ${${HDF_PREFIX}_SIZEOF_LONG_DOUBLE})
+
+# remove the invalid kind from the list
+if(NOT(${SIZEOF___FLOAT128} EQUAL 0))
+ if(NOT(${SIZEOF___FLOAT128} EQUAL ${max_real_fortran_sizeof}) AND NOT(${FORTRAN_SIZEOF_LONG_DOUBLE} EQUAL ${max_real_fortran_sizeof}))
+ message(WARNING "
+ Fortran REAL(KIND=${max_real_fortran_kind}) is $max_real_fortran_sizeof Bytes, but no corresponding C float type exists of that size
+ !!! Fortran interfaces will not be generated for REAL(KIND=${max_real_fortran_kind}) !!!")
+ string(REGEX REPLACE ",[0-9]+}" "}" PAC_FC_ALL_REAL_KINDS ${PAC_FC_ALL_REAL_KINDS})
+ string(REGEX REPLACE ",[0-9]+}" "}" PAC_FC_ALL_REAL_KINDS_SIZEOF ${PAC_FC_ALL_REAL_KINDS_SIZEOF})
+ MATH (EXPR NUM_RKIND "${NUM_RKIND} - 1")
+ endif(NOT(${SIZEOF___FLOAT128} EQUAL ${max_real_fortran_sizeof}) AND NOT(${FORTRAN_SIZEOF_LONG_DOUBLE} EQUAL ${max_real_fortran_sizeof}))
+endif(NOT(${SIZEOF___FLOAT128} EQUAL 0))
+
+set(H5CONFIG_F_NUM_RKIND "INTEGER, PARAMETER :: num_rkinds = ${NUM_RKIND}")
+
+string(REGEX REPLACE "{" "" OUT_VAR ${PAC_FC_ALL_REAL_KINDS})
+string(REGEX REPLACE "}" "" OUT_VAR ${OUT_VAR})
+set(H5CONFIG_F_RKIND "INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/${OUT_VAR}/)")
+
+string(REGEX REPLACE "{" "" OUT_VAR ${PAC_FC_ALL_REAL_KINDS_SIZEOF})
+string(REGEX REPLACE "}" "" OUT_VAR ${OUT_VAR})
+set(H5CONFIG_F_RKIND_SIZEOF "INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/${OUT_VAR}/)")
+
+ENABLE_LANGUAGE (C)
+
+#-----------------------------------------------------------------------------
+# The provided CMake C macros don't provide a general compile/run function
+# so this one is used.
+#-----------------------------------------------------------------------------
+MACRO (C_RUN FUNCTION CODE RUN_RESULT_VAR COMPILE_RESULT_VAR RETURN)
+# MSB CHECK WHY THIS CHECK?
+# if (NOT DEFINED ${RUN_RESULT_VAR})
+ message (STATUS "Detecting C ${FUNCTION}")
+ if (CMAKE_REQUIRED_LIBRARIES)
+ set (CHECK_FUNCTION_EXISTS_ADD_LIBRARIES
+ "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
+ else (CMAKE_REQUIRED_LIBRARIES)
+ set (CHECK_FUNCTION_EXISTS_ADD_LIBRARIES)
+ endif (CMAKE_REQUIRED_LIBRARIES)
+ file (WRITE
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testCCompiler1.c
+ ${CODE}
+ )
+ TRY_RUN (${RUN_RESULT_VAR} ${COMPILE_RESULT_VAR}
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testCCompiler1.c
+ CMAKE_FLAGS "${CHECK_FUNCTION_EXISTS_ADD_LIBRARIES}"
+ RUN_OUTPUT_VARIABLE OUTPUT
+ )
+
+ set(${RETURN} ${OUTPUT})
+
+ #message ( "Test result1 ${RETURN} ")
+ #message ( "Test result3 ${RESULT} ")
+ #message ( "Test result2 ${CMAKE_MATCH_0} ")
+ #message ( "Test result4 ${CMAKE_MATCH_1} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+ #message ( "Test result ${COMPILE_RESULT_VAR} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+ #message ( "Test result ${RUN_RESULT_VAR} ")
+ #message ( "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ")
+
+ if (${COMPILE_RESULT_VAR})
+ if (${RUN_RESULT_VAR} MATCHES 0)
+ set (${RUN_RESULT_VAR} 1 CACHE INTERNAL "Have C function ${FUNCTION}")
+ message (STATUS "Testing C ${FUNCTION} - OK")
+ file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
+ "Determining if the C ${FUNCTION} exists passed with the following output:\n"
+ "${OUTPUT}\n\n"
+ )
+ else ()
+ message (STATUS "Testing C ${FUNCTION} - Fail")
+ set (${RUN_RESULT_VAR} "" CACHE INTERNAL "Have C function ${FUNCTION}")
+ file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
+ "Determining if the C ${FUNCTION} exists failed with the following output:\n"
+ "${OUTPUT}\n\n")
+ endif ()
+ endif()
+# endif (NOT DEFINED ${RUN_RESULT_VAR})
+ENDMACRO (C_RUN)
+
+set(PROG_SRC
+ "
+#include <float.h>
+#include <stdio.h>
+#define CHECK_FLOAT128 ${SIZEOF___FLOAT128}
+#if CHECK_FLOAT128!=0
+# if ${HAVE_QUADMATH}!=0
+#include <quadmath.h>
+# endif
+# ifdef FLT128_DIG
+#define C_FLT128_DIG FLT128_DIG
+# else
+#define C_FLT128_DIG 0
+# endif
+#else
+#define C_FLT128_DIG 0
+#endif
+#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+#define C_LDBL_DIG DECIMAL_DIG
+#else
+#define C_LDBL_DIG LDBL_DIG
+#endif
+ void main() {
+ printf(\"%d\\\\n%d\\\\n\", C_LDBL_DIG, C_FLT128_DIG)\\\;
+ }
+ "
+ )
+
+C_RUN("maximum decimal precision for C" ${PROG_SRC}
+ XX
+ YY
+ PROG_OUTPUT
+)
+
+# dnl The output from the above program will be:
+# dnl -- LINE 1 -- long double decimal precision
+# dnl -- LINE 2 -- __float128 decimal precision
+
+# Convert the string to a list of strings by replacing the carriage return with a semicolon
+string(REGEX REPLACE "\n" ";" PROG_OUTPUT "${PROG_OUTPUT}")
+
+list(GET PROG_OUTPUT 0 LDBL_DIG)
+list(GET PROG_OUTPUT 1 FLT128_DIG)
+
+if(SIZEOF___FLOAT128 EQUAL 0 OR FLT128_DIG EQUAL 0)
+ SET(H5_HAVE_FLOAT128 0)
+ SET(SIZEOF___FLOAT128 0)
+ set(H5_PAC_C_MAX_REAL_PRECISION ${LDBL_DIG})
+else ()
+ set(H5_PAC_C_MAX_REAL_PRECISION ${FLT128_DIG})
+endif()
+
+
+# Setting definition if there is a 16 byte fortran integer
+string(FIND ${PAC_FC_ALL_INTEGER_KINDS_SIZEOF} "16" pos)
+if(${pos} EQUAL -1)
+ set(HAVE_Fortran_INTEGER_SIZEOF_16 0)
+else ()
+ set(HAVE_Fortran_INTEGER_SIZEOF_16 1)
+endif ()
diff --git a/config/cmake/hdf5-config.cmake.in b/config/cmake/hdf5-config.cmake.in
index 321267f..adeec55 100644
--- a/config/cmake/hdf5-config.cmake.in
+++ b/config/cmake/hdf5-config.cmake.in
@@ -22,7 +22,6 @@ set (${HDF5_PACKAGE_NAME}_VALID_COMPONENTS
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@)
set (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
-set (${HDF5_PACKAGE_NAME}_ENABLE_F2003 @HDF5_ENABLE_F2003@)
set (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
diff --git a/config/cmake/libhdf5.settings.cmake.in b/config/cmake/libhdf5.settings.cmake.in
index 8ef67a5..ba764a4 100644
--- a/config/cmake/libhdf5.settings.cmake.in
+++ b/config/cmake/libhdf5.settings.cmake.in
@@ -38,7 +38,6 @@ Languages:
----------
Fortran: @HDF5_BUILD_FORTRAN@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran Compiler: @CMAKE_Fortran_COMPILER@
-@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran 2003 Compiler: @HDF5_ENABLE_F2003@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran Flags: @CMAKE_Fortran_FLAGS@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ H5 Fortran Flags: @H5_FCFLAGS@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ AM Fortran Flags: @AM_FCFLAGS@
diff --git a/config/cmake/mccacheinit.cmake b/config/cmake/mccacheinit.cmake
index af506e6..39ec124 100644
--- a/config/cmake/mccacheinit.cmake
+++ b/config/cmake/mccacheinit.cmake
@@ -16,8 +16,6 @@ set (HDF5_BUILD_EXAMPLES ON CACHE BOOL "Build HDF5 Library Examples" FORCE)
set (HDF5_BUILD_FORTRAN ON CACHE BOOL "Build FORTRAN support" FORCE)
-set (HDF5_ENABLE_F2003 ON CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
-
set (HDF5_BUILD_HL_LIB ON CACHE BOOL "Build HIGH Level HDF5 Library" FORCE)
set (HDF5_BUILD_TOOLS ON CACHE BOOL "Build HDF5 Tools" FORCE)
diff --git a/configure b/configure
index 860f480..fe13186 100755
--- a/configure
+++ b/configure
@@ -199,6 +199,7 @@ test -x / || exit 1"
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1
test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
@@ -206,8 +207,7 @@ test -x / || exit 1"
ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
PATH=/empty FPATH=/empty; export PATH FPATH
test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
- || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
+ || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
if (eval "$as_required") 2>/dev/null; then :
as_have_required=yes
else
@@ -682,7 +682,6 @@ AM_MAKEFLAGS
LT_STATIC_EXEC
USE_PLUGINS_CONDITIONAL_FALSE
USE_PLUGINS_CONDITIONAL_TRUE
-CPP
OTOOL64
OTOOL
LIPO
@@ -699,8 +698,6 @@ ac_ct_DUMPBIN
DUMPBIN
LD
FGREP
-EGREP
-GREP
SED
LIBTOOL
FORTRAN_SHARED_CONDITIONAL_FALSE
@@ -713,7 +710,6 @@ PARALLEL
TIME
TR
AR
-PERL
HL_FOR
HL
CXXCPP
@@ -722,16 +718,26 @@ am__fastdepCXX_TRUE
CXXDEPMODE
ac_ct_CXX
CXXFLAGS
-FORTRAN_DEFAULT_REALisDBLE_F_FALSE
-FORTRAN_DEFAULT_REALisDBLE_F_TRUE
-FORTRAN_2003_CONDITIONAL_F_FALSE
-FORTRAN_2003_CONDITIONAL_F_TRUE
-FORTRAN_HAVE_STORAGE_SIZE_FALSE
-FORTRAN_HAVE_STORAGE_SIZE_TRUE
-FORTRAN_HAVE_C_SIZEOF_FALSE
-FORTRAN_HAVE_C_SIZEOF_TRUE
-FORTRAN_HAVE_SIZEOF_FALSE
-FORTRAN_HAVE_SIZEOF_TRUE
+H5CONFIG_F_IKIND
+H5CONFIG_F_NUM_IKIND
+H5CONFIG_F_RKIND_SIZEOF
+H5CONFIG_F_RKIND
+H5CONFIG_F_NUM_RKIND
+FORTRAN_SIZEOF_LONG_DOUBLE
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE
+FORTRAN_HAVE_C_LONG_DOUBLE
+HAVE_Fortran_INTEGER_SIZEOF_16
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF
+PAC_FORTRAN_NATIVE_DOUBLE_KIND
+PAC_FORTRAN_NATIVE_REAL_SIZEOF
+PAC_FORTRAN_NATIVE_REAL_KIND
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF
+PAC_FORTRAN_NATIVE_INTEGER_KIND
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF
+PAC_FC_ALL_REAL_KINDS_SIZEOF
+PAC_FC_ALL_INTEGER_KINDS
+PAC_FC_MAX_REAL_PRECISION
+PAC_FC_ALL_REAL_KINDS
FCLIBS
F9XMODEXT
F9XMODFLAG
@@ -748,8 +754,10 @@ HSIZE_T
HADDR_T
R_INTEGER
R_LARGE
-HAVE_FORTRAN_2003
HDF5_INTERFACES
+EGREP
+GREP
+CPP
am__fastdepCC_FALSE
am__fastdepCC_TRUE
CCDEPMODE
@@ -766,6 +774,7 @@ ac_ct_CC
LDFLAGS
CFLAGS
CC
+PAC_C_MAX_REAL_PRECISION
UNAME_INFO
enable_static
enable_shared
@@ -778,9 +787,7 @@ INSTRUMENT
HDF5_HL
CXX
HDF_CXX
-FC2003
FC
-HDF_FORTRAN2003
HDF_FORTRAN
STATIC_EXEC
MPE
@@ -834,6 +841,7 @@ am__isrc
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
+PERL
target_alias
host_alias
build_alias
@@ -880,7 +888,6 @@ enable_maintainer_mode
enable_dependency_tracking
enable_unsupported
enable_fortran
-enable_fortran2003
enable_cxx
enable_hl
enable_shared
@@ -926,13 +933,13 @@ CFLAGS
LDFLAGS
LIBS
CPPFLAGS
+CPP
FC
FCFLAGS
CXX
CXXFLAGS
CCC
-CXXCPP
-CPP'
+CXXCPP'
# Initialize some variables set by options.
@@ -1561,9 +1568,7 @@ Optional Features:
--disable-dependency-tracking
speeds up one-time build
--enable-unsupported Allow unsupported combinations of configure options
- --enable-fortran Compile the Fortran 90/95 interface [default=no]
- --enable-fortran2003 Compile the Fortran 2003 interface, must also
- specify --enable-fortran [default=no]
+ --enable-fortran Compile the Fortran interface [default=no]
--enable-cxx Compile the C++ interface [default=no]
--enable-hl Enable the high level library [default=yes]
--enable-shared[=PKGS] build shared libraries [default=yes]
@@ -1661,12 +1666,12 @@ Some influential environment variables:
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
+ CPP C preprocessor
FC Fortran compiler command
FCFLAGS Fortran compiler flags
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CXXCPP C++ preprocessor
- CPP C preprocessor
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -1786,6 +1791,444 @@ fi
} # ac_fn_c_try_compile
+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
+# -------------------------------------------
+# Tests whether TYPE exists after having included INCLUDES, setting cache
+# variable VAR accordingly.
+ac_fn_c_check_type ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=no"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof ($2))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof (($2)))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ eval "$3=yes"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_type
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } > conftest.i && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
+# --------------------------------------------
+# Tries to find the compile-time value of EXPR in a program that includes
+# INCLUDES, setting VAR accordingly. Returns whether the value could be
+# computed
+ac_fn_c_compute_int ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if test "$cross_compiling" = yes; then
+ # Depending upon the size, compute the lo and hi bounds.
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= 0)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=$ac_mid; break
+else
+ as_fn_arith $ac_mid + 1 && ac_lo=$as_val
+ if test $ac_lo -le $ac_mid; then
+ ac_lo= ac_hi=
+ break
+ fi
+ as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) < 0)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=-1 ac_mid=-1
+ while :; do
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_lo=$ac_mid; break
+else
+ as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
+ if test $ac_mid -le $ac_hi; then
+ ac_lo= ac_hi=
+ break
+ fi
+ as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ ac_lo= ac_hi=
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=$ac_mid
+else
+ as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in #((
+?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
+'') ac_retval=1 ;;
+esac
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+static long int longval () { return $2; }
+static unsigned long int ulongval () { return $2; }
+#include <stdio.h>
+#include <stdlib.h>
+int
+main ()
+{
+
+ FILE *f = fopen ("conftest.val", "w");
+ if (! f)
+ return 1;
+ if (($2) < 0)
+ {
+ long int i = longval ();
+ if (i != ($2))
+ return 1;
+ fprintf (f, "%ld", i);
+ }
+ else
+ {
+ unsigned long int i = ulongval ();
+ if (i != ($2))
+ return 1;
+ fprintf (f, "%lu", i);
+ }
+ /* Do not output a trailing newline, as this causes \r\n confusion
+ on some platforms. */
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ echo >>conftest.val; read $3 <conftest.val; ac_retval=0
+else
+ ac_retval=1
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f conftest.val
+
+ fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_compute_int
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if eval \${$3+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_header_compiler=yes
+else
+ ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ ac_header_preproc=yes
+else
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+ yes:no: )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( $as_echo "## -------------------------------- ##
+## Report this to help@hdfgroup.org ##
+## -------------------------------- ##"
+ ) | sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_mongrel
+
# ac_fn_fc_try_compile LINENO
# ---------------------------
# Try to compile conftest.$ac_ext, and return whether this succeeded.
@@ -1824,10 +2267,10 @@ fi
} # ac_fn_fc_try_compile
-# ac_fn_c_try_link LINENO
-# -----------------------
+# ac_fn_fc_try_link LINENO
+# ------------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
+ac_fn_fc_try_link ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
rm -f conftest.$ac_objext conftest$ac_exeext
@@ -1847,7 +2290,7 @@ $as_echo "$ac_try_echo"; } >&5
fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
+ test -z "$ac_fc_werror_flag" ||
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
@@ -1868,12 +2311,12 @@ fi
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
-} # ac_fn_c_try_link
+} # ac_fn_fc_try_link
-# ac_fn_fc_try_link LINENO
-# ------------------------
+# ac_fn_c_try_link LINENO
+# -----------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_fc_try_link ()
+ac_fn_c_try_link ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
rm -f conftest.$ac_objext conftest$ac_exeext
@@ -1893,7 +2336,7 @@ $as_echo "$ac_try_echo"; } >&5
fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
- test -z "$ac_fc_werror_flag" ||
+ test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
@@ -1914,7 +2357,49 @@ fi
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
-} # ac_fn_fc_try_link
+} # ac_fn_c_try_link
+
+# ac_fn_fc_try_run LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_fc_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_fc_try_run
# ac_fn_cxx_try_compile LINENO
# ----------------------------
@@ -2037,116 +2522,6 @@ fi
} # ac_fn_cxx_try_link
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
# ac_fn_c_check_func LINENO FUNC VAR
# ----------------------------------
# Tests whether FUNC exists, setting the cache variable VAR accordingly
@@ -2222,398 +2597,6 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_c_check_func
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval \${$3+:} false; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## -------------------------------- ##
-## Report this to help@hdfgroup.org ##
-## -------------------------------- ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-# -------------------------------------------
-# Tests whether TYPE exists after having included INCLUDES, setting cache
-# variable VAR accordingly.
-ac_fn_c_check_type ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=no"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-if (sizeof ($2))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-if (sizeof (($2)))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_type
-
-# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-# --------------------------------------------
-# Tries to find the compile-time value of EXPR in a program that includes
-# INCLUDES, setting VAR accordingly. Returns whether the value could be
-# computed
-ac_fn_c_compute_int ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if test "$cross_compiling" = yes; then
- # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) >= 0)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_lo=0 ac_mid=0
- while :; do
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=$ac_mid; break
-else
- as_fn_arith $ac_mid + 1 && ac_lo=$as_val
- if test $ac_lo -le $ac_mid; then
- ac_lo= ac_hi=
- break
- fi
- as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- done
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) < 0)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=-1 ac_mid=-1
- while :; do
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) >= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_lo=$ac_mid; break
-else
- as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
- if test $ac_mid -le $ac_hi; then
- ac_lo= ac_hi=
- break
- fi
- as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- done
-else
- ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
- as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=$ac_mid
-else
- as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in #((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
- else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-
- FILE *f = fopen ("conftest.val", "w");
- if (! f)
- return 1;
- if (($2) < 0)
- {
- long int i = longval ();
- if (i != ($2))
- return 1;
- fprintf (f, "%ld", i);
- }
- else
- {
- unsigned long int i = ulongval ();
- if (i != ($2))
- return 1;
- fprintf (f, "%lu", i);
- }
- /* Do not output a trailing newline, as this causes \r\n confusion
- on some platforms. */
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
- ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
- fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_compute_int
-
# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
# ---------------------------------------------
# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
@@ -3020,6 +3003,54 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+## PLACE CHECKS FOR REQUIRED PACKAGES NEEDED TO INSTALL HDF5 AT THE BEGINNING
+## --------------------------------------------------------------------------
+## Requirement #1: Check if Perl is installed.
+##
+ PERL=""
+# Extract the first word of "perl", so it can be a program name with args.
+set dummy perl; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_PERL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$PERL"; then
+ ac_cv_prog_PERL="$PERL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_PERL=""
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+ test -z "$ac_cv_prog_PERL" && ac_cv_prog_PERL="$PATH"
+fi
+fi
+PERL=$ac_cv_prog_PERL
+if test -n "$PERL"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
+$as_echo "$PERL" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+if test "x$PERL" = "xfalse"; then
+ as_fn_error $? "*** Perl is required for installing HDF5, but Perl could not be found!" "$LINENO" 5
+fi
+
+
ac_config_headers="$ac_config_headers src/H5config.h"
@@ -3864,7 +3895,6 @@ $as_echo "done" >&6; }
## MPE: whether MPE option is enabled. Default no.
## STATIC_EXEC: whether static-exec is enabled. Default no.
## HDF_FORTRAN: whether Fortran is enabled. Default no.
-## HDF_FORTRAN2003: whether Fortran 2003 is enabled. Default no.
## FC: Fortran compiler.
## HDF_CXX: whether C++ is enabled. Default no.
## CXX: C++ compiler.
@@ -3872,6 +3902,7 @@ $as_echo "done" >&6; }
## INSTRUMENT: whether INSTRUMENT is enabled. No default set here.
## CODESTACK: whether CODESTACK is enabled. Default no.
## HAVE_DMALLOC: whether system has dmalloc support. Default no.
+## HAVE_FLOAT128: whether system has Quad-Precision Math Library. Default no.
## DIRECT_VFD: whether DIRECT_VFD is enabled. Default no.
## THREADSAFE: whether THREADSAFE is enabled. Default no.
## STATIC_SHARED: whether static and/or shared libraries are requested.
@@ -3883,9 +3914,7 @@ $as_echo "done" >&6; }
MPE=no
STATIC_EXEC=no
HDF_FORTRAN=no
- HDF_FORTRAN2003=no
HDF_FORTRAN=no
- HDF_FORTRAN2003=no
HDF_CXX=no
HDF_CXX=no
HDF5_HL=yes
@@ -3899,6 +3928,7 @@ $as_echo "done" >&6; }
UNAME_INFO=`uname -a`
+
## ----------------------------------------------------------------------
## Some platforms have broken basename, and/or xargs programs. Check
## that it actually does what it's supposed to do. Catch this early
@@ -5122,6 +5152,1175 @@ $as_echo "yes" >&6; }
esac
## ----------------------------------------------------------------------
+## Data types and their sizes.
+##
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if ${ac_cv_prog_CPP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+else
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ # Broken: success on invalid input.
+continue
+else
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+else
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ # Broken: success on invalid input.
+continue
+else
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+
+else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ as_fn_executable_p "$ac_path_GREP" || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if ${ac_cv_path_EGREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ as_fn_executable_p "$ac_path_EGREP" || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
+if ${ac_cv_header_stdc+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_header_stdc=yes
+else
+ ac_cv_header_stdc=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then :
+ :
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ctype.h>
+#include <stdlib.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ return 2;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
+if test "x$ac_cv_type_off_t" = xyes; then :
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define off_t long int
+_ACEOF
+
+fi
+
+ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
+if test "x$ac_cv_type_size_t" = xyes; then :
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define size_t unsigned long
+_ACEOF
+
+fi
+
+ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
+if test "x$ac_cv_type_ssize_t" = xyes; then :
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define ssize_t long
+_ACEOF
+
+fi
+
+ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
+if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define ptrdiff_t long
+_ACEOF
+
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
+$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
+if ${ac_cv_c_bigendian+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_c_bigendian=unknown
+ # See if we're dealing with a universal compiler.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifndef __APPLE_CC__
+ not a universal capable compiler
+ #endif
+ typedef int dummy;
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+ # Check for potential -arch flags. It is not universal unless
+ # there are at least two -arch flags with different values.
+ ac_arch=
+ ac_prev=
+ for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
+ if test -n "$ac_prev"; then
+ case $ac_word in
+ i?86 | x86_64 | ppc | ppc64)
+ if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
+ ac_arch=$ac_word
+ else
+ ac_cv_c_bigendian=universal
+ break
+ fi
+ ;;
+ esac
+ ac_prev=
+ elif test "x$ac_word" = "x-arch"; then
+ ac_prev=arch
+ fi
+ done
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if sys/param.h defines the BYTE_ORDER macro.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main ()
+{
+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
+ && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
+ && LITTLE_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ # It does; now see whether it defined to BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main ()
+{
+#if BYTE_ORDER != BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main ()
+{
+#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ # It does; now see whether it defined to _BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main ()
+{
+#ifndef _BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+ if test $ac_cv_c_bigendian = unknown; then
+ # Compile a test program.
+ if test "$cross_compiling" = yes; then :
+ # Try to guess by grepping values from an object file.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+short int ascii_mm[] =
+ { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+ short int ascii_ii[] =
+ { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+ int use_ascii (int i) {
+ return ascii_mm[i] + ascii_ii[i];
+ }
+ short int ebcdic_ii[] =
+ { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+ short int ebcdic_mm[] =
+ { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
+ int use_ebcdic (int i) {
+ return ebcdic_mm[i] + ebcdic_ii[i];
+ }
+ extern int foo;
+
+int
+main ()
+{
+return use_ascii (foo) == use_ebcdic (foo);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
+ ac_cv_c_bigendian=yes
+ fi
+ if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
+ if test "$ac_cv_c_bigendian" = unknown; then
+ ac_cv_c_bigendian=no
+ else
+ # finding both strings is unlikely to happen, but who knows?
+ ac_cv_c_bigendian=unknown
+ fi
+ fi
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_includes_default
+int
+main ()
+{
+
+ /* Are we little or big endian? From Harbison&Steele. */
+ union
+ {
+ long int l;
+ char c[sizeof (long int)];
+ } u;
+ u.l = 1;
+ return u.c[sizeof (long int) - 1] == 1;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ ac_cv_c_bigendian=no
+else
+ ac_cv_c_bigendian=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
+$as_echo "$ac_cv_c_bigendian" >&6; }
+ case $ac_cv_c_bigendian in #(
+ yes)
+ $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
+;; #(
+ no)
+ ;; #(
+ universal)
+
+$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
+
+ ;; #(
+ *)
+ as_fn_error $? "unknown endianness
+ presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
+ esac
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
+$as_echo_n "checking size of char... " >&6; }
+if ${ac_cv_sizeof_char+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_char" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (char)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_char=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
+$as_echo "$ac_cv_sizeof_char" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_CHAR $ac_cv_sizeof_char
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
+$as_echo_n "checking size of short... " >&6; }
+if ${ac_cv_sizeof_short+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_short" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (short)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_short=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
+$as_echo "$ac_cv_sizeof_short" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_SHORT $ac_cv_sizeof_short
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
+$as_echo_n "checking size of int... " >&6; }
+if ${ac_cv_sizeof_int+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_int" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (int)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_int=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
+$as_echo "$ac_cv_sizeof_int" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_INT $ac_cv_sizeof_int
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of unsigned" >&5
+$as_echo_n "checking size of unsigned... " >&6; }
+if ${ac_cv_sizeof_unsigned+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned))" "ac_cv_sizeof_unsigned" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_unsigned" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (unsigned)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_unsigned=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned" >&5
+$as_echo "$ac_cv_sizeof_unsigned" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_UNSIGNED $ac_cv_sizeof_unsigned
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
+$as_echo_n "checking size of long... " >&6; }
+if ${ac_cv_sizeof_long+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_long" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (long)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_long=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
+$as_echo "$ac_cv_sizeof_long" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_LONG $ac_cv_sizeof_long
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
+$as_echo_n "checking size of long long... " >&6; }
+if ${ac_cv_sizeof_long_long+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_long_long" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (long long)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_long_long=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
+$as_echo "$ac_cv_sizeof_long_long" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of __int64" >&5
+$as_echo_n "checking size of __int64... " >&6; }
+if ${ac_cv_sizeof___int64+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (__int64))" "ac_cv_sizeof___int64" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type___int64" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (__int64)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof___int64=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof___int64" >&5
+$as_echo "$ac_cv_sizeof___int64" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF___INT64 $ac_cv_sizeof___int64
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of float" >&5
+$as_echo_n "checking size of float... " >&6; }
+if ${ac_cv_sizeof_float+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (float))" "ac_cv_sizeof_float" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_float" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (float)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_float=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_float" >&5
+$as_echo "$ac_cv_sizeof_float" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_FLOAT $ac_cv_sizeof_float
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5
+$as_echo_n "checking size of double... " >&6; }
+if ${ac_cv_sizeof_double+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_double" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (double)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_double=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5
+$as_echo "$ac_cv_sizeof_double" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_DOUBLE $ac_cv_sizeof_double
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long double" >&5
+$as_echo_n "checking size of long double... " >&6; }
+if ${ac_cv_sizeof_long_double+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long double))" "ac_cv_sizeof_long_double" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type_long_double" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (long double)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof_long_double=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_double" >&5
+$as_echo "$ac_cv_sizeof_long_double" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double
+_ACEOF
+
+
+
+## Check for non-standard extenstion __FLOAT128
+HAVE_FLOAT128=0
+HAVE_QUADMATH=0
+FLT128_DIG=0
+LDBL_DIG=0
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of __float128" >&5
+$as_echo_n "checking size of __float128... " >&6; }
+if ${ac_cv_sizeof___float128+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (__float128))" "ac_cv_sizeof___float128" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type___float128" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (__float128)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof___float128=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof___float128" >&5
+$as_echo "$ac_cv_sizeof___float128" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF___FLOAT128 $ac_cv_sizeof___float128
+_ACEOF
+
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of _Quad" >&5
+$as_echo_n "checking size of _Quad... " >&6; }
+if ${ac_cv_sizeof__Quad+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (_Quad))" "ac_cv_sizeof__Quad" "$ac_includes_default"; then :
+
+else
+ if test "$ac_cv_type__Quad" = yes; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (_Quad)
+See \`config.log' for more details" "$LINENO" 5; }
+ else
+ ac_cv_sizeof__Quad=0
+ fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof__Quad" >&5
+$as_echo "$ac_cv_sizeof__Quad" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF__QUAD $ac_cv_sizeof__Quad
+_ACEOF
+
+
+for ac_header in quadmath.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "quadmath.h" "ac_cv_header_quadmath_h" "$ac_includes_default"
+if test "x$ac_cv_header_quadmath_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_QUADMATH_H 1
+_ACEOF
+ HAVE_QUADMATH=1
+fi
+
+done
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking maximum decimal precision for C" >&5
+$as_echo_n "checking maximum decimal precision for C... " >&6; }
+rm -f pac_Cconftest.out
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+ #include <float.h>
+ #include <stdio.h>
+ #define CHECK_FLOAT128 $ac_cv_sizeof___float128
+ #if CHECK_FLOAT128!=0
+ # if $HAVE_QUADMATH!=0
+ #include <quadmath.h>
+ # endif
+ # ifdef FLT128_DIG
+ #define C_FLT128_DIG FLT128_DIG
+ # else
+ #define C_FLT128_DIG 0
+ # endif
+ #else
+ #define C_FLT128_DIG 0
+ #endif
+ #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+ #define C_LDBL_DIG DECIMAL_DIG
+ #else
+ #define C_LDBL_DIG LDBL_DIG
+ #endif
+
+int
+main ()
+{
+
+ FILE * pFile;
+ pFile = fopen("pac_Cconftest.out","w");
+ fprintf(pFile, "%d\n%d\n", C_LDBL_DIG, C_FLT128_DIG);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+ if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ if ac_fn_c_try_run "$LINENO"; then :
+
+ if test -s pac_Cconftest.out ; then
+ LDBL_DIG="`perl -ne '$. == 1 && print && exit' pac_Cconftest.out`"
+ FLT128_DIG="`perl -ne '$. == 2 && print && exit' pac_Cconftest.out`"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
+ fi
+ rm -f pac_Cconftest.out
+
+else
+
+ as_fn_error $? "C program fails to build or run!" "$LINENO" 5
+
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam
+fi
+
+
+
+if test "$ac_cv_sizeof___float128" != 0 && test "$FLT128_DIG" != 0 ; then
+
+$as_echo "#define HAVE_FLOAT128 1" >>confdefs.h
+
+ PAC_C_MAX_REAL_PRECISION=$FLT128_DIG
+else
+ PAC_C_MAX_REAL_PRECISION=$LDBL_DIG
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define PAC_C_MAX_REAL_PRECISION $PAC_C_MAX_REAL_PRECISION
+_ACEOF
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_C_MAX_REAL_PRECISION" >&5
+$as_echo "$PAC_C_MAX_REAL_PRECISION" >&6; }
+## ----------------------------------------------------------------------
## Check if they would like the Fortran interface compiled
##
HDF5_INTERFACES=""
@@ -5139,38 +6338,17 @@ else
echo "no"
fi
+if test "X$HDF_FORTRAN" = "Xyes"; then
-## ----------------------------------------------------------------------
-## Check if they would like the Fortran 2003 interface compiled
-##
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran 2003 interface enabled" >&5
-$as_echo_n "checking if Fortran 2003 interface enabled... " >&6; }
-# Check whether --enable-fortran2003 was given.
-if test "${enable_fortran2003+set}" = set; then :
- enableval=$enable_fortran2003; HDF_FORTRAN2003=$enableval
-fi
-
-
-## ----------------------------------------------------------------------
-## Check to make sure --enable-fortran is present if --enable-fortran2003
-## was specified
-
-if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xno"; then
- echo "no"
- as_fn_error $? "--enable-fortran must be used with --enable-fortran2003" "$LINENO" 5
-else
- if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xyes"; then
- echo "yes"
- else
- echo "no"
- fi
-fi
+## We will output an include file for Fortran, H5config_f.inc which
+## contains various configure definitions used by the Fortran Library.
+## Prepend H5_ to all macro names. This avoids name conflict between HDF5 macro
+## names and those generated by another software package that uses the HDF5 library.
+ ac_config_headers="$ac_config_headers fortran/src/H5config_f.inc"
-if test "X$HDF_FORTRAN" = "Xyes"; then
HDF_FORTRAN=yes
-
HDF5_INTERFACES="$HDF5_INTERFACES fortran"
## --------------------------------------------------------------------
@@ -5771,6 +6949,43 @@ ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+ ## Checking if the compiler supports the required Fortran 2003 features and
+ ## stopping if it does not.
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler version compatible with Fortran 2003 HDF" >&5
+$as_echo_n "checking if Fortran compiler version compatible with Fortran 2003 HDF... " >&6; }
+ HAVE_F2003_REQUIREMENTS="no"
+ cat > conftest.$ac_ext <<_ACEOF
+ program main
+
+
+ USE iso_c_binding
+ IMPLICIT NONE
+ TYPE(C_PTR) :: ptr
+ TYPE(C_FUNPTR) :: funptr
+ CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
+
+ ptr = C_LOC(ichr(1:1))
+
+
+ end
+_ACEOF
+if ac_fn_fc_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ HAVE_F2003_REQUIREMENTS=yes
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+
+ if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
+ as_fn_error $? "Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran" "$LINENO" 5
+ fi
+
## --------------------------------------------------------------------
## Define wrappers for the C compiler to use Fortran function names
##
@@ -6120,7 +7335,6 @@ ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
-
ac_ext=${ac_fc_srcext-f}
ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
@@ -6535,142 +7749,747 @@ rm -f core conftest.err conftest.$ac_objext \
- ## Check to see if -r8 was specified to determine if we need to
- ## compile the DOUBLE PRECISION interfaces.
+ ## Set the sizeof function for use later in the fortran tests
+ if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes";then
+ FC_SIZEOF_A="STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ FC_SIZEOF_B="STORAGE_SIZE(b, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ FC_SIZEOF_C="STORAGE_SIZE(c, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ else
+ if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes";then
+ FC_SIZEOF_A="SIZEOF(a)"
+ FC_SIZEOF_B="SIZEOF(b)"
+ FC_SIZEOF_C="SIZEOF(c)"
+ else
+ ## If neither intrinsic functions SIZEOF or STORAGE_SIZE is available then stop configure with an error
+ as_fn_error $? "Fortran compiler requires either intrinsic functions SIZEOF or STORAGE_SIZE" "$LINENO" 5
+ fi
+ fi
- FORTRAN_DEFAULT_REALisDBLE="no"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran default REAL is DOUBLE PRECISION" >&5
-$as_echo_n "checking if Fortran default REAL is DOUBLE PRECISION... " >&6; }
+ ## See if the fortran compiler supports the intrinsic module "ISO_FORTRAN_ENV"
+ HAVE_ISO_FORTRAN_ENV="no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler supports intrinsic module ISO_FORTRAN_ENV" >&5
+$as_echo_n "checking if Fortran compiler supports intrinsic module ISO_FORTRAN_ENV... " >&6; }
cat > conftest.$ac_ext <<_ACEOF
- MODULE type_mod
- INTERFACE h5t
- MODULE PROCEDURE h5t_real
- MODULE PROCEDURE h5t_dble
- END INTERFACE
- CONTAINS
- SUBROUTINE h5t_real(r)
- REAL :: r
- END SUBROUTINE h5t_real
- SUBROUTINE h5t_dble(d)
- DOUBLE PRECISION :: d
- END SUBROUTINE h5t_dble
- END MODULE type_mod
- PROGRAM main
- USE type_mod
- REAL :: r
- DOUBLE PRECISION :: d
- CALL h5t(r)
- CALL h5t(d)
- END PROGRAM main
+ PROGRAM main
+ USE, INTRINSIC :: ISO_FORTRAN_ENV
+ END PROGRAM
_ACEOF
-if ac_fn_fc_try_compile "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-else
+if ac_fn_fc_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- FORTRAN_DEFAULT_REALisDBLE="yes"
+ HAVE_ISO_FORTRAN_ENV="yes"
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ ## Check KIND and size of native integer
- if test "X$HDF_FORTRAN2003" = "Xyes"; then
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
- ## Checking if the compiler supports the required Fortran 2003 features and
- ## disable Fortran 2003 if it does not.
+rm -f pac_fconftest.out
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler version compatible with Fortran 2003 HDF" >&5
-$as_echo_n "checking if Fortran compiler version compatible with Fortran 2003 HDF... " >&6; }
- HAVE_FORTRAN_2003="no"
- HAVE_F2003_REQUIREMENTS="no"
- cat > conftest.$ac_ext <<_ACEOF
- program main
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat > conftest.$ac_ext <<_ACEOF
- USE iso_c_binding
+ PROGRAM main
IMPLICIT NONE
- TYPE(C_PTR) :: ptr
- TYPE(C_FUNPTR) :: funptr
- CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
+ INTEGER :: ik, k, lastkind, max_decimal_prec
+ INTEGER :: num_rkinds, num_ikinds
+ num_ikinds = 0
+ lastkind=SELECTED_INT_KIND(1)
+ OPEN(8, FILE='pac_fconftest.out', form='formatted')
+ ! Find integer KINDs
+ DO ik=2,36
+ k = SELECTED_INT_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ ! Find real KINDs
+ num_rkinds = 0
+ lastkind=SELECTED_REAL_KIND(1)
+ max_decimal_prec = 1
+ DO ik=2,36
+ k = SELECTED_REAL_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ max_decimal_prec = ik
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1)THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ WRITE(8,'(I0)') max_decimal_prec
+ WRITE(8,'(I0)') num_ikinds
+ WRITE(8,'(I0)') num_rkinds
+ END
+
+
+_ACEOF
+if ac_fn_fc_try_run "$LINENO"; then :
+
+ if test -s pac_fconftest.out ; then
+
+
+ pac_validIntKinds="`perl -ne '$. == 1 && print && exit' pac_fconftest.out`"
+ pac_validRealKinds="`perl -ne '$. == 2 && print && exit' pac_fconftest.out`"
+ PAC_FC_MAX_REAL_PRECISION="`perl -ne '$. == 3 && print && exit' pac_fconftest.out`"
- ptr = C_LOC(ichr(1:1))
+cat >>confdefs.h <<_ACEOF
+#define PAC_FC_MAX_REAL_PRECISION $PAC_FC_MAX_REAL_PRECISION
+_ACEOF
- end
+ PAC_FC_ALL_INTEGER_KINDS="{`echo $pac_validIntKinds`}"
+ PAC_FC_ALL_REAL_KINDS="{`echo $pac_validRealKinds`}"
+
+ H5CONFIG_F_NUM_IKIND="INTEGER, PARAMETER :: num_ikinds = `perl -ne '$. == 4 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_IKIND="INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/`echo $pac_validIntKinds`/)"
+ H5CONFIG_F_NUM_RKIND="INTEGER, PARAMETER :: num_rkinds = `perl -ne '$. == 5 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_RKIND="INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/`echo $pac_validRealKinds`/)"
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_NUM_RKIND $H5CONFIG_F_NUM_RKIND
_ACEOF
-if ac_fn_fc_try_link "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- HAVE_F2003_REQUIREMENTS=yes
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_NUM_IKIND $H5CONFIG_F_NUM_IKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_RKIND $H5CONFIG_F_RKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_IKIND $H5CONFIG_F_IKIND
+_ACEOF
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran INTEGER KINDs" >&5
+$as_echo_n "checking for Fortran INTEGER KINDs... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_INTEGER_KINDS" >&5
+$as_echo "$PAC_FC_ALL_INTEGER_KINDS" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran REAL KINDs" >&5
+$as_echo_n "checking for Fortran REAL KINDs... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_REAL_KINDS" >&5
+$as_echo "$PAC_FC_ALL_REAL_KINDS" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran REALs maximum decimal precision" >&5
+$as_echo_n "checking for Fortran REALs maximum decimal precision... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_MAX_REAL_PRECISION" >&5
+$as_echo "$PAC_FC_MAX_REAL_PRECISION" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Error" >&5
+$as_echo "Error" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
+ fi
+ rm -f pac_fconftest.out
+
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Error" >&5
+$as_echo "Error" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed to run program to determine available KINDs" >&5
+$as_echo "$as_me: WARNING: Failed to run program to determine available KINDs" >&2;}
+
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sizeof of native KINDS" >&5
+$as_echo_n "checking sizeof of native KINDS... " >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+pack_int_sizeof=""
+rm -f pac_fconftest.out
+ cat > conftest.$ac_ext <<_ACEOF
- if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
- as_fn_error $? "Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran2003" "$LINENO" 5
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER a
+ REAL b
+ DOUBLE PRECISION c
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,*) $FC_SIZEOF_A
+ WRITE(8,*) kind(a)
+ WRITE(8,*) $FC_SIZEOF_B
+ WRITE(8,*) kind(b)
+ WRITE(8,*) $FC_SIZEOF_C
+ WRITE(8,*) kind(c)
+ CLOSE(8)
+ END
+
+
+_ACEOF
+ if test "$cross_compiling" = yes; then :
+
+ pack_int_sizeof=""
+
+else
+ if ac_fn_fc_try_run "$LINENO"; then :
+
+ if test -s pac_fconftest.out ; then
+ PAC_FORTRAN_NATIVE_INTEGER_KIND="`perl -ne '$. == 1 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_INTEGER_SIZEOF="`perl -ne '$. == 2 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_REAL_KIND="`perl -ne '$. == 3 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_REAL_SIZEOF="`perl -ne '$. == 4 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_DOUBLE_KIND="`perl -ne '$. == 5 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF="`perl -ne '$. == 6 && print && exit' pac_fconftest.out`"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
+ fi
+ rm -f pac_fconftest.out
+
+else
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Fortran program fails to build or run!" >&5
+$as_echo "$as_me: WARNING: Fortran program fails to build or run!" >&2;}
+
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $pack_int_sizeof" >&5
+$as_echo "$pack_int_sizeof" >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+
+
+ ## Find all available KINDs
+
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+rm -f pac_fconftest.out
+
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat > conftest.$ac_ext <<_ACEOF
+
+
+ PROGRAM main
+ IMPLICIT NONE
+ INTEGER :: ik, k, lastkind, max_decimal_prec
+ INTEGER :: num_rkinds, num_ikinds
+ num_ikinds = 0
+ lastkind=SELECTED_INT_KIND(1)
+ OPEN(8, FILE='pac_fconftest.out', form='formatted')
+ ! Find integer KINDs
+ DO ik=2,36
+ k = SELECTED_INT_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ ! Find real KINDs
+ num_rkinds = 0
+ lastkind=SELECTED_REAL_KIND(1)
+ max_decimal_prec = 1
+ DO ik=2,36
+ k = SELECTED_REAL_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ max_decimal_prec = ik
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1)THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ WRITE(8,'(I0)') max_decimal_prec
+ WRITE(8,'(I0)') num_ikinds
+ WRITE(8,'(I0)') num_rkinds
+ END
+
+
+_ACEOF
+if ac_fn_fc_try_run "$LINENO"; then :
+
+ if test -s pac_fconftest.out ; then
+
+
+ pac_validIntKinds="`perl -ne '$. == 1 && print && exit' pac_fconftest.out`"
+ pac_validRealKinds="`perl -ne '$. == 2 && print && exit' pac_fconftest.out`"
+ PAC_FC_MAX_REAL_PRECISION="`perl -ne '$. == 3 && print && exit' pac_fconftest.out`"
+
+cat >>confdefs.h <<_ACEOF
+#define PAC_FC_MAX_REAL_PRECISION $PAC_FC_MAX_REAL_PRECISION
+_ACEOF
+
+
+ PAC_FC_ALL_INTEGER_KINDS="{`echo $pac_validIntKinds`}"
+ PAC_FC_ALL_REAL_KINDS="{`echo $pac_validRealKinds`}"
+
+ H5CONFIG_F_NUM_IKIND="INTEGER, PARAMETER :: num_ikinds = `perl -ne '$. == 4 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_IKIND="INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/`echo $pac_validIntKinds`/)"
+ H5CONFIG_F_NUM_RKIND="INTEGER, PARAMETER :: num_rkinds = `perl -ne '$. == 5 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_RKIND="INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/`echo $pac_validRealKinds`/)"
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_NUM_RKIND $H5CONFIG_F_NUM_RKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_NUM_IKIND $H5CONFIG_F_NUM_IKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_RKIND $H5CONFIG_F_RKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_IKIND $H5CONFIG_F_IKIND
+_ACEOF
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran INTEGER KINDs" >&5
+$as_echo_n "checking for Fortran INTEGER KINDs... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_INTEGER_KINDS" >&5
+$as_echo "$PAC_FC_ALL_INTEGER_KINDS" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran REAL KINDs" >&5
+$as_echo_n "checking for Fortran REAL KINDs... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_REAL_KINDS" >&5
+$as_echo "$PAC_FC_ALL_REAL_KINDS" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran REALs maximum decimal precision" >&5
+$as_echo_n "checking for Fortran REALs maximum decimal precision... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_MAX_REAL_PRECISION" >&5
+$as_echo "$PAC_FC_MAX_REAL_PRECISION" >&6; }
else
- HAVE_FORTRAN_2003="yes"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Error" >&5
+$as_echo "Error" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
fi
- fi
+ rm -f pac_fconftest.out
+
else
- FC="no"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Error" >&5
+$as_echo "Error" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed to run program to determine available KINDs" >&5
+$as_echo "$as_me: WARNING: Failed to run program to determine available KINDs" >&2;}
+
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-## Change back to the C language
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+
+ ## Find all sizeofs for available KINDs
- if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"; then
- FORTRAN_HAVE_SIZEOF_TRUE=
- FORTRAN_HAVE_SIZEOF_FALSE='#'
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sizeof of available INTEGER KINDs" >&5
+$as_echo_n "checking sizeof of available INTEGER KINDs... " >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+pack_int_sizeof=""
+rm -f pac_fconftest.out
+
+for kind in `echo $pac_validIntKinds | perl -pe 's/,/ /g'`; do
+ cat > conftest.$ac_ext <<_ACEOF
+
+
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER (KIND=$kind) a
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,'(I0)') $FC_SIZEOF_A
+ CLOSE(8)
+ END
+
+
+_ACEOF
+ if test "$cross_compiling" = yes; then :
+
+ pack_int_sizeof=""
+
else
- FORTRAN_HAVE_SIZEOF_TRUE='#'
- FORTRAN_HAVE_SIZEOF_FALSE=
-fi
+ if ac_fn_fc_try_run "$LINENO"; then :
+
+ if test -s pac_fconftest.out ; then
+ sizes="`cat pac_fconftest.out`"
+ pack_int_sizeof="$pack_int_sizeof $sizes,"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
+ fi
+ rm -f pac_fconftest.out
- if test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"; then
- FORTRAN_HAVE_C_SIZEOF_TRUE=
- FORTRAN_HAVE_C_SIZEOF_FALSE='#'
else
- FORTRAN_HAVE_C_SIZEOF_TRUE='#'
- FORTRAN_HAVE_C_SIZEOF_FALSE=
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Fortran program fails to build or run!" >&5
+$as_echo "$as_me: WARNING: Fortran program fails to build or run!" >&2;}
+
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam
fi
- if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"; then
- FORTRAN_HAVE_STORAGE_SIZE_TRUE=
- FORTRAN_HAVE_STORAGE_SIZE_FALSE='#'
+done
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF="{`echo $pack_int_sizeof | perl -pe 's/,$//' | perl -pe 's/ //g'`}"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_INTEGER_KINDS_SIZEOF" >&5
+$as_echo "$PAC_FC_ALL_INTEGER_KINDS_SIZEOF" >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sizeof of available REAL KINDs" >&5
+$as_echo_n "checking sizeof of available REAL KINDs... " >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+pack_real_sizeof=""
+rm -f pac_fconftest.out
+for kind in `echo $pac_validRealKinds| perl -pe 's/,/ /g'`; do
+ cat > conftest.$ac_ext <<_ACEOF
+
+
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ REAL (KIND=$kind) :: a
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,'(I0)') $FC_SIZEOF_A
+ CLOSE(8)
+ END
+
+
+_ACEOF
+ if test "$cross_compiling" = yes; then :
+
+ pack_real_sizeof=""
+
else
- FORTRAN_HAVE_STORAGE_SIZE_TRUE='#'
- FORTRAN_HAVE_STORAGE_SIZE_FALSE=
+ if ac_fn_fc_try_run "$LINENO"; then :
+
+ if test -s pac_fconftest.out ; then
+ sizes="`cat pac_fconftest.out`"
+ pack_real_sizeof="$pack_real_sizeof $sizes,"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: No output from test program!" >&5
+$as_echo "$as_me: WARNING: No output from test program!" >&2;}
+ fi
+ rm -f pac_fconftest.out
+
+else
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Fortran program fails to build or run!" >&5
+$as_echo "$as_me: WARNING: Fortran program fails to build or run!" >&2;}
+
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam
fi
- if test "X$HAVE_FORTRAN_2003" = "Xyes"; then
- FORTRAN_2003_CONDITIONAL_F_TRUE=
- FORTRAN_2003_CONDITIONAL_F_FALSE='#'
+done
+PAC_FC_ALL_REAL_KINDS_SIZEOF="{`echo $pack_real_sizeof | perl -pe 's/,$//' | perl -pe 's/ //g'`}"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_REAL_KINDS_SIZEOF" >&5
+$as_echo "$PAC_FC_ALL_REAL_KINDS_SIZEOF" >&6; }
+ac_ext=${ac_fc_srcext-f}
+ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ## Setting definition if there is a 16 byte fortran integer
+ if `echo $PAC_FC_ALL_INTEGER_KINDS_SIZEOF | grep '16' >/dev/null`; then
+ HAVE_Fortran_INTEGER_SIZEOF_16="1"
+
+$as_echo "#define HAVE_Fortran_INTEGER_SIZEOF_16 1" >>confdefs.h
+
+ else
+ HAVE_Fortran_INTEGER_SIZEOF_16="0"
+
+$as_echo "#define HAVE_Fortran_INTEGER_SIZEOF_16 0" >>confdefs.h
+
+ fi
+
+ if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"; then
+
+$as_echo "#define FORTRAN_HAVE_STORAGE_SIZE 1" >>confdefs.h
+
+ fi
+
+ if test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"; then
+
+$as_echo "#define FORTRAN_HAVE_C_SIZEOF 1" >>confdefs.h
+
+ fi
+
+ if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"; then
+
+$as_echo "#define FORTRAN_HAVE_SIZEOF 1" >>confdefs.h
+
+ fi
+
+ ## See if C_LONG_DOUBLE is available
+
+ HAVE_C_LONG_DOUBLE_FORTRAN="no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler supports intrinsic C_LONG_DOUBLE" >&5
+$as_echo_n "checking if Fortran compiler supports intrinsic C_LONG_DOUBLE... " >&6; }
+ cat > conftest.$ac_ext <<_ACEOF
+
+ PROGRAM main
+ USE ISO_C_BINDING
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END PROGRAM
+
+_ACEOF
+if ac_fn_fc_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ HAVE_C_LONG_DOUBLE_FORTRAN="yes"
else
- FORTRAN_2003_CONDITIONAL_F_TRUE='#'
- FORTRAN_2003_CONDITIONAL_F_FALSE=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+
+ FORTRAN_HAVE_C_LONG_DOUBLE="0"
+ if test "X$HAVE_C_LONG_DOUBLE_FORTRAN" = "Xyes"; then
+ FORTRAN_HAVE_C_LONG_DOUBLE="1"
+
+$as_echo "#define FORTRAN_HAVE_C_LONG_DOUBLE 1" >>confdefs.h
+
+ fi
+
+ ## Is C_LONG_DOUBLE different from C_DOUBLE
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="0"
+ if test "X$FORTRAN_HAVE_C_LONG_DOUBLE"; then
- if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
- FORTRAN_DEFAULT_REALisDBLE_F_TRUE=
- FORTRAN_DEFAULT_REALisDBLE_F_FALSE='#'
+ C_LONG_DOUBLE_IS_UNIQUE_FORTRAN="no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran C_LONG_DOUBLE is different from C_DOUBLE" >&5
+$as_echo_n "checking if Fortran C_LONG_DOUBLE is different from C_DOUBLE... " >&6; }
+
+ cat > conftest.$ac_ext <<_ACEOF
+
+ MODULE type_mod
+ USE ISO_C_BINDING
+ INTERFACE h5t
+ MODULE PROCEDURE h5t_c_double
+ MODULE PROCEDURE h5t_c_long_double
+ END INTERFACE
+ CONTAINS
+ SUBROUTINE h5t_c_double(r)
+ REAL(KIND=C_DOUBLE) :: r
+ END SUBROUTINE h5t_c_double
+ SUBROUTINE h5t_c_long_double(d)
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END SUBROUTINE h5t_c_long_double
+ END MODULE type_mod
+ PROGRAM main
+ USE ISO_C_BINDING
+ USE type_mod
+ REAL(KIND=C_DOUBLE) :: r
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ CALL h5t(r)
+ CALL h5t(d)
+ END PROGRAM main
+
+_ACEOF
+if ac_fn_fc_try_compile "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ C_LONG_DOUBLE_IS_UNIQUE_FORTRAN="yes"
else
- FORTRAN_DEFAULT_REALisDBLE_F_TRUE='#'
- FORTRAN_DEFAULT_REALisDBLE_F_FALSE=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test "X$C_LONG_DOUBLE_IS_UNIQUE_FORTRAN" = "Xyes"; then
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="1"
+
+$as_echo "#define FORTRAN_C_LONG_DOUBLE_IS_UNIQUE 1" >>confdefs.h
+
+ else
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="0"
+ fi
+ fi
+
+ FORTRAN_SIZEOF_LONG_DOUBLE=${ac_cv_sizeof_long_double}
+
+cat >>confdefs.h <<_ACEOF
+#define FORTRAN_SIZEOF_LONG_DOUBLE "${ac_cv_sizeof_long_double}"
+_ACEOF
+
+
+
+
+ max_real_fortran_sizeof="`echo \"$PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -ne '/,(\d+)\}/; print $1'`"
+ max_real_fortran_kind="`echo \"$PAC_FC_ALL_REAL_KINDS\" | perl -ne '/,(\d+)\}/; print $1'`"
+
+ if test "$ac_cv_sizeof___float128" != 0;then
+ if test "$ac_cv_sizeof___float128" != "$max_real_fortran_sizeof" && test "${ac_cv_sizeof_long_double}" != "$max_real_fortran_sizeof"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
+ Fortran REAL(KIND=$max_real_fortran_kind) is $max_real_fortran_sizeof Bytes, but no corresponding C float type exists of that size
+ !!! Fortran interfaces will not be generated for REAL(KIND=$max_real_fortran_kind) !!!
+ " >&5
+$as_echo "$as_me: WARNING:
+ Fortran REAL(KIND=$max_real_fortran_kind) is $max_real_fortran_sizeof Bytes, but no corresponding C float type exists of that size
+ !!! Fortran interfaces will not be generated for REAL(KIND=$max_real_fortran_kind) !!!
+ " >&2;}
+ PAC_FC_ALL_REAL_KINDS="`echo \"$PAC_FC_ALL_REAL_KINDS\" | perl -pe 's/,\d+}/}/g;'`"
+ PAC_FC_ALL_REAL_KINDS_SIZEOF="`echo \"$PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -pe 's/,\d+}/}/g;'`"
+ fi
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran interoperable KINDS with C" >&5
+$as_echo_n "checking for Fortran interoperable KINDS with C... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PAC_FC_ALL_REAL_KINDS" >&5
+$as_echo "$PAC_FC_ALL_REAL_KINDS" >&6; }
+
+ H5CONFIG_F_NUM_RKIND="INTEGER, PARAMETER :: num_rkinds = `echo \"$PAC_FC_ALL_REAL_KINDS\" | perl -e '$count = (<STDIN> =~ tr/,//);print $count+1'`"
+ H5CONFIG_F_RKIND="INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/`echo \"$PAC_FC_ALL_REAL_KINDS\" | perl -pe 's/{//g' | perl -pe 's/}//g' | perl -pe 's/ /,/g'`/)"
+ H5CONFIG_F_RKIND_SIZEOF="INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/`echo \"$PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -pe 's/{//g' | perl -pe 's/}//g'| perl -pe 's/ /,/g'`/)"
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_NUM_RKIND $H5CONFIG_F_NUM_RKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_RKIND $H5CONFIG_F_RKIND
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define H5CONFIG_F_RKIND_SIZEOF $H5CONFIG_F_RKIND_SIZEOF
+_ACEOF
+
+
+## Change back to the C language
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+else
+ FC="no"
+fi
## ----------------------------------------------------------------------
## Check if they would like the C++ interface compiled
@@ -7425,68 +9244,12 @@ if test "X$HDF5_HL" = "Xyes"; then
$as_echo "#define INCLUDE_HL 1" >>confdefs.h
-
- ## If Fortran's default real is double precision and HL is being built then configure
- ## should fail due to bug HDFFV-889.
- if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
- as_fn_error $? "Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl." "$LINENO" 5
- fi
else
echo "no"
fi
## ----------------------------------------------------------------------
-## Check if they have Perl installed on their system. We only need Perl
-## if they're using a GNU compiler.
-##
- PERL=""
-if test "X$GCC" = "Xyes"; then
- for ac_prog in perl
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_PERL+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$PERL"; then
- ac_cv_prog_PERL="$PERL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_PERL="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-PERL=$ac_cv_prog_PERL
-if test -n "$PERL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
-$as_echo "$PERL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$PERL" && break
-done
-
-fi
-
-## ----------------------------------------------------------------------
## Check which archiving tool to use. This needs to be done before
## the AM_PROG_LIBTOOL macro.
##
@@ -7938,136 +9701,6 @@ Xsed="$SED -e 1s/^X//"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$GREP"; then
- ac_path_GREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_GREP" || continue
-# Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_GREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_GREP"; then
- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_EGREP" || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
$as_echo_n "checking for fgrep... " >&6; }
if ${ac_cv_path_FGREP+:} false; then :
@@ -11008,281 +12641,6 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
;;
esac
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
- if ${ac_cv_prog_CPP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CPP=$CPP
-
-fi
- CPP=$ac_cv_prog_CPP
-else
- ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
for ac_header in dlfcn.h
do :
ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
@@ -22470,7 +23828,7 @@ case "$host_cpu-$host_vendor-$host_os" in
##
## POSIX feature information can be found in the gcc manual at:
## http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
- H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
+##SCOT H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
## Need to add this so that O_DIRECT is visible for the direct
## VFD on Linux systems.
@@ -22588,656 +23946,6 @@ $as_echo "skipping test for stat64() and fstat64()" >&6; }
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-## ----------------------------------------------------------------------
-## Data types and their sizes.
-##
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned long
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define ssize_t long
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define ptrdiff_t long
-_ACEOF
-
-fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_c_bigendian=unknown
- # See if we're dealing with a universal compiler.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifndef __APPLE_CC__
- not a universal capable compiler
- #endif
- typedef int dummy;
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
- # Check for potential -arch flags. It is not universal unless
- # there are at least two -arch flags with different values.
- ac_arch=
- ac_prev=
- for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
- if test -n "$ac_prev"; then
- case $ac_word in
- i?86 | x86_64 | ppc | ppc64)
- if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
- ac_arch=$ac_word
- else
- ac_cv_c_bigendian=universal
- break
- fi
- ;;
- esac
- ac_prev=
- elif test "x$ac_word" = "x-arch"; then
- ac_prev=arch
- fi
- done
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- if test $ac_cv_c_bigendian = unknown; then
- # See if sys/param.h defines the BYTE_ORDER macro.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <sys/types.h>
- #include <sys/param.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
- && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
- && LITTLE_ENDIAN)
- bogus endian macros
- #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- # It does; now see whether it defined to BIG_ENDIAN or not.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <sys/types.h>
- #include <sys/param.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-#if BYTE_ORDER != BIG_ENDIAN
- not big endian
- #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_c_bigendian=yes
-else
- ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- fi
- if test $ac_cv_c_bigendian = unknown; then
- # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <limits.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
- bogus endian macros
- #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- # It does; now see whether it defined to _BIG_ENDIAN or not.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <limits.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-#ifndef _BIG_ENDIAN
- not big endian
- #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_c_bigendian=yes
-else
- ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- fi
- if test $ac_cv_c_bigendian = unknown; then
- # Compile a test program.
- if test "$cross_compiling" = yes; then :
- # Try to guess by grepping values from an object file.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-short int ascii_mm[] =
- { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
- short int ascii_ii[] =
- { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
- int use_ascii (int i) {
- return ascii_mm[i] + ascii_ii[i];
- }
- short int ebcdic_ii[] =
- { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
- short int ebcdic_mm[] =
- { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
- int use_ebcdic (int i) {
- return ebcdic_mm[i] + ebcdic_ii[i];
- }
- extern int foo;
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return use_ascii (foo) == use_ebcdic (foo);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
- ac_cv_c_bigendian=yes
- fi
- if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
- if test "$ac_cv_c_bigendian" = unknown; then
- ac_cv_c_bigendian=no
- else
- # finding both strings is unlikely to happen, but who knows?
- ac_cv_c_bigendian=unknown
- fi
- fi
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$ac_includes_default
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-
- /* Are we little or big endian? From Harbison&Steele. */
- union
- {
- long int l;
- char c[sizeof (long int)];
- } u;
- u.l = 1;
- return u.c[sizeof (long int) - 1] == 1;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_c_bigendian=no
-else
- ac_cv_c_bigendian=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
- case $ac_cv_c_bigendian in #(
- yes)
- $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
-;; #(
- no)
- ;; #(
- universal)
-
-$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
-
- ;; #(
- *)
- as_fn_error $? "unknown endianness
- presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
- esac
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
-$as_echo_n "checking size of char... " >&6; }
-if ${ac_cv_sizeof_char+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_char" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_char=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
-$as_echo "$ac_cv_sizeof_char" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_short" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (short)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_short=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_int" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_int=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of unsigned" >&5
-$as_echo_n "checking size of unsigned... " >&6; }
-if ${ac_cv_sizeof_unsigned+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned))" "ac_cv_sizeof_unsigned" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_unsigned" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (unsigned)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_unsigned=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned" >&5
-$as_echo "$ac_cv_sizeof_unsigned" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_UNSIGNED $ac_cv_sizeof_unsigned
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_long" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_long=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
-$as_echo_n "checking size of long long... " >&6; }
-if ${ac_cv_sizeof_long_long+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_long_long" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long long)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_long_long=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
-$as_echo "$ac_cv_sizeof_long_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of __int64" >&5
-$as_echo_n "checking size of __int64... " >&6; }
-if ${ac_cv_sizeof___int64+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (__int64))" "ac_cv_sizeof___int64" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type___int64" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (__int64)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof___int64=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof___int64" >&5
-$as_echo "$ac_cv_sizeof___int64" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF___INT64 $ac_cv_sizeof___int64
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of float" >&5
-$as_echo_n "checking size of float... " >&6; }
-if ${ac_cv_sizeof_float+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (float))" "ac_cv_sizeof_float" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_float" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (float)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_float=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_float" >&5
-$as_echo "$ac_cv_sizeof_float" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_FLOAT $ac_cv_sizeof_float
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5
-$as_echo_n "checking size of double... " >&6; }
-if ${ac_cv_sizeof_double+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_double" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (double)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_double=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5
-$as_echo "$ac_cv_sizeof_double" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_DOUBLE $ac_cv_sizeof_double
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long double" >&5
-$as_echo_n "checking size of long double... " >&6; }
-if ${ac_cv_sizeof_long_double+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long double))" "ac_cv_sizeof_long_double" "$ac_includes_default"; then :
-
-else
- if test "$ac_cv_type_long_double" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long double)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_long_double=0
- fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_double" >&5
-$as_echo "$ac_cv_sizeof_long_double" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double
-_ACEOF
-
-
-
## Checkpoint the cache
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -26528,13 +27236,13 @@ all_packages="ac,b,b2,d,e,f,g,hg,hl,i,mf,mm,o,p,s,t,v,z"
case "X-$DEBUG_PKG" in
X-yes)
DEBUG_PKG="d,e,f,g,hg,i,mm,o,p,s,t,v,z"
- H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: default ($DEBUG_PKG)" >&5
$as_echo "default ($DEBUG_PKG)" >&6; }
;;
X-all)
DEBUG_PKG=$all_packages
- H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: all ($DEBUG_PKG)" >&5
$as_echo "all ($DEBUG_PKG)" >&6; }
;;
@@ -26542,7 +27250,7 @@ $as_echo "all ($DEBUG_PKG)" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
$as_echo "none" >&6; }
DEBUG_PKG=
- H5_CPPFLAGS="$H5_CPPFLAGS -DNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -DNDEBUG"
;;
*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $DEBUG_PKG" >&5
@@ -30317,7 +31025,7 @@ else
fi
-ac_config_files="$ac_config_files src/libhdf5.settings Makefile src/Makefile test/Makefile test/testcheck_version.sh test/testerror.sh test/H5srcdir_str.h test/testlibinfo.sh test/testlinks_env.sh test/test_plugin.sh testpar/Makefile tools/Makefile tools/h5dump/Makefile tools/h5dump/testh5dump.sh tools/h5dump/testh5dumppbits.sh tools/h5dump/testh5dumpxml.sh tools/h5ls/testh5ls.sh tools/h5import/Makefile tools/h5import/h5importtestutil.sh tools/h5diff/Makefile tools/h5diff/testh5diff.sh tools/h5diff/testph5diff.sh tools/h5jam/Makefile tools/h5jam/testh5jam.sh tools/h5repack/Makefile tools/h5repack/h5repack.sh tools/h5repack/h5repack_plugin.sh tools/h5ls/Makefile tools/h5copy/Makefile tools/h5copy/testh5copy.sh tools/lib/Makefile tools/misc/Makefile tools/misc/h5cc tools/misc/testh5mkgrp.sh tools/misc/testh5repart.sh tools/h5stat/testh5stat.sh tools/h5stat/Makefile tools/perform/Makefile examples/Makefile examples/run-c-ex.sh examples/testh5cc.sh c++/Makefile c++/src/Makefile c++/src/h5c++ c++/test/Makefile c++/test/H5srcdir_str.h c++/examples/Makefile c++/examples/run-c++-ex.sh c++/examples/testh5c++.sh fortran/Makefile fortran/src/h5fc fortran/src/Makefile fortran/test/Makefile fortran/testpar/Makefile fortran/examples/Makefile fortran/examples/run-fortran-ex.sh fortran/examples/testh5fc.sh hl/Makefile hl/src/Makefile hl/test/Makefile hl/test/H5srcdir_str.h hl/tools/Makefile hl/tools/gif2h5/Makefile hl/tools/gif2h5/h52giftest.sh hl/examples/Makefile hl/examples/run-hlc-ex.sh hl/c++/Makefile hl/c++/src/Makefile hl/c++/test/Makefile hl/c++/examples/Makefile hl/c++/examples/run-hlc++-ex.sh hl/fortran/Makefile hl/fortran/src/Makefile hl/fortran/test/Makefile hl/fortran/examples/Makefile hl/fortran/examples/run-hlfortran-ex.sh"
+ac_config_files="$ac_config_files src/libhdf5.settings Makefile src/Makefile test/Makefile test/testcheck_version.sh test/testerror.sh test/H5srcdir_str.h test/testlibinfo.sh test/testlinks_env.sh test/test_plugin.sh testpar/Makefile tools/Makefile tools/h5dump/Makefile tools/h5dump/testh5dump.sh tools/h5dump/testh5dumppbits.sh tools/h5dump/testh5dumpxml.sh tools/h5ls/testh5ls.sh tools/h5import/Makefile tools/h5import/h5importtestutil.sh tools/h5diff/Makefile tools/h5diff/testh5diff.sh tools/h5diff/testph5diff.sh tools/h5jam/Makefile tools/h5jam/testh5jam.sh tools/h5repack/Makefile tools/h5repack/h5repack.sh tools/h5repack/h5repack_plugin.sh tools/h5ls/Makefile tools/h5copy/Makefile tools/h5copy/testh5copy.sh tools/lib/Makefile tools/misc/Makefile tools/misc/h5cc tools/misc/testh5mkgrp.sh tools/misc/testh5repart.sh tools/h5stat/testh5stat.sh tools/h5stat/Makefile tools/perform/Makefile examples/Makefile examples/run-c-ex.sh examples/testh5cc.sh c++/Makefile c++/src/Makefile c++/src/h5c++ c++/test/Makefile c++/test/H5srcdir_str.h c++/examples/Makefile c++/examples/run-c++-ex.sh c++/examples/testh5c++.sh fortran/Makefile fortran/src/h5fc fortran/src/Makefile fortran/src/H5fort_type_defines.h fortran/test/Makefile fortran/testpar/Makefile fortran/examples/Makefile fortran/examples/run-fortran-ex.sh fortran/examples/testh5fc.sh hl/Makefile hl/src/Makefile hl/test/Makefile hl/test/H5srcdir_str.h hl/tools/Makefile hl/tools/gif2h5/Makefile hl/tools/gif2h5/h52giftest.sh hl/examples/Makefile hl/examples/run-hlc-ex.sh hl/c++/Makefile hl/c++/src/Makefile hl/c++/test/Makefile hl/c++/examples/Makefile hl/c++/examples/run-hlc++-ex.sh hl/fortran/Makefile hl/fortran/src/Makefile hl/fortran/test/Makefile hl/fortran/examples/Makefile hl/fortran/examples/run-hlfortran-ex.sh"
cat >confcache <<\_ACEOF
@@ -30457,26 +31165,7 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
-if test -z "${FORTRAN_HAVE_SIZEOF_TRUE}" && test -z "${FORTRAN_HAVE_SIZEOF_FALSE}"; then
- as_fn_error $? "conditional \"FORTRAN_HAVE_SIZEOF\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${FORTRAN_HAVE_C_SIZEOF_TRUE}" && test -z "${FORTRAN_HAVE_C_SIZEOF_FALSE}"; then
- as_fn_error $? "conditional \"FORTRAN_HAVE_C_SIZEOF\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${FORTRAN_HAVE_STORAGE_SIZE_TRUE}" && test -z "${FORTRAN_HAVE_STORAGE_SIZE_FALSE}"; then
- as_fn_error $? "conditional \"FORTRAN_HAVE_STORAGE_SIZE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${FORTRAN_2003_CONDITIONAL_F_TRUE}" && test -z "${FORTRAN_2003_CONDITIONAL_F_FALSE}"; then
- as_fn_error $? "conditional \"FORTRAN_2003_CONDITIONAL_F\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${FORTRAN_DEFAULT_REALisDBLE_F_TRUE}" && test -z "${FORTRAN_DEFAULT_REALisDBLE_F_FALSE}"; then
- as_fn_error $? "conditional \"FORTRAN_DEFAULT_REALisDBLE_F\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
+
if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -30489,7 +31178,6 @@ if test -z "${USE_PLUGINS_CONDITIONAL_TRUE}" && test -z "${USE_PLUGINS_CONDITION
as_fn_error $? "conditional \"USE_PLUGINS_CONDITIONAL\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
-
if test -z "${BUILD_SHARED_SZIP_CONDITIONAL_TRUE}" && test -z "${BUILD_SHARED_SZIP_CONDITIONAL_FALSE}"; then
as_fn_error $? "conditional \"BUILD_SHARED_SZIP_CONDITIONAL\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -31579,6 +32267,7 @@ do
"src/H5config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/H5config.h" ;;
"pubconf") CONFIG_COMMANDS="$CONFIG_COMMANDS pubconf" ;;
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ "fortran/src/H5config_f.inc") CONFIG_HEADERS="$CONFIG_HEADERS fortran/src/H5config_f.inc" ;;
"libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
"src/libhdf5.settings") CONFIG_FILES="$CONFIG_FILES src/libhdf5.settings" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
@@ -31632,6 +32321,7 @@ do
"fortran/Makefile") CONFIG_FILES="$CONFIG_FILES fortran/Makefile" ;;
"fortran/src/h5fc") CONFIG_FILES="$CONFIG_FILES fortran/src/h5fc" ;;
"fortran/src/Makefile") CONFIG_FILES="$CONFIG_FILES fortran/src/Makefile" ;;
+ "fortran/src/H5fort_type_defines.h") CONFIG_FILES="$CONFIG_FILES fortran/src/H5fort_type_defines.h" ;;
"fortran/test/Makefile") CONFIG_FILES="$CONFIG_FILES fortran/test/Makefile" ;;
"fortran/testpar/Makefile") CONFIG_FILES="$CONFIG_FILES fortran/testpar/Makefile" ;;
"fortran/examples/Makefile") CONFIG_FILES="$CONFIG_FILES fortran/examples/Makefile" ;;
@@ -32361,6 +33051,7 @@ $as_echo X"$file" |
done
}
;;
+ "fortran/src/H5config_f.inc":H) cat fortran/src/H5config_f.inc | sed '1d;s%^/\* \(.*\) \*/%\1%;s/#define /#define H5_/;s/#undef /#undef H5_/' >fortran/src/H5config_f.inc.tmp; mv -f fortran/src/H5config_f.inc.tmp fortran/src/H5config_f.inc ;;
"libtool":C)
# See if we are running on zsh, and set the options which allow our
diff --git a/configure.ac b/configure.ac
index 1e67f39..c37a1c4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,6 +27,17 @@ AC_PREREQ([2.69])
## release!!!
##
AC_INIT([HDF5], [1.9.227], [help@hdfgroup.org])
+
+## PLACE CHECKS FOR REQUIRED PACKAGES NEEDED TO INSTALL HDF5 AT THE BEGINNING
+## --------------------------------------------------------------------------
+## Requirement #1: Check if Perl is installed.
+##
+AC_SUBST([PERL]) PERL=""
+AC_CHECK_PROG([PERL], [perl],, [$PATH])
+if test "x$PERL" = "xfalse"; then
+ AC_MSG_ERROR([*** Perl is required for installing HDF5, but Perl could not be found!])
+fi
+
AC_CONFIG_SRCDIR([src/H5.c])
AC_CONFIG_HEADER([src/H5config.h])
@@ -149,7 +160,6 @@ AC_MSG_RESULT([done])
## MPE: whether MPE option is enabled. Default no.
## STATIC_EXEC: whether static-exec is enabled. Default no.
## HDF_FORTRAN: whether Fortran is enabled. Default no.
-## HDF_FORTRAN2003: whether Fortran 2003 is enabled. Default no.
## FC: Fortran compiler.
## HDF_CXX: whether C++ is enabled. Default no.
## CXX: C++ compiler.
@@ -157,6 +167,7 @@ AC_MSG_RESULT([done])
## INSTRUMENT: whether INSTRUMENT is enabled. No default set here.
## CODESTACK: whether CODESTACK is enabled. Default no.
## HAVE_DMALLOC: whether system has dmalloc support. Default no.
+## HAVE_FLOAT128: whether system has Quad-Precision Math Library. Default no.
## DIRECT_VFD: whether DIRECT_VFD is enabled. Default no.
## THREADSAFE: whether THREADSAFE is enabled. Default no.
## STATIC_SHARED: whether static and/or shared libraries are requested.
@@ -168,9 +179,7 @@ AC_SUBST([EXTERNAL_FILTERS])
AC_SUBST([MPE]) MPE=no
AC_SUBST([STATIC_EXEC]) STATIC_EXEC=no
AC_SUBST([HDF_FORTRAN]) HDF_FORTRAN=no
-AC_SUBST([HDF_FORTRAN2003]) HDF_FORTRAN2003=no
AC_SUBST([FC]) HDF_FORTRAN=no
-AC_SUBST([FC2003]) HDF_FORTRAN2003=no
AC_SUBST([HDF_CXX]) HDF_CXX=no
AC_SUBST([CXX]) HDF_CXX=no
AC_SUBST([HDF5_HL]) HDF5_HL=yes
@@ -183,6 +192,7 @@ AC_SUBST([STATIC_SHARED])
AC_SUBST([enable_shared])
AC_SUBST([enable_static])
AC_SUBST([UNAME_INFO]) UNAME_INFO=`uname -a`
+AC_SUBST([PAC_C_MAX_REAL_PRECISION])
## ----------------------------------------------------------------------
## Some platforms have broken basename, and/or xargs programs. Check
@@ -347,13 +357,57 @@ case "X-$ALLOW_UNSUPPORTED" in
esac
## ----------------------------------------------------------------------
+## Data types and their sizes.
+##
+AC_TYPE_OFF_T
+AC_CHECK_TYPE([size_t], [],
+ [AC_DEFINE_UNQUOTED([size_t], [unsigned long],
+ [Define to `unsigned long' if <sys/types.h> does not define.])])
+AC_CHECK_TYPE([ssize_t], [],
+ [AC_DEFINE_UNQUOTED([ssize_t], [long],
+ [Define to `long' if <sys/types.h> does not define.])])
+AC_CHECK_TYPE([ptrdiff_t], [],
+ [AC_DEFINE_UNQUOTED([ptrdiff_t], [long],
+ [Define to `long' if <sys/types.h> does not define.])])
+AC_C_BIGENDIAN
+AC_CHECK_SIZEOF([char], [1])
+AC_CHECK_SIZEOF([short], [2])
+AC_CHECK_SIZEOF([int], [4])
+AC_CHECK_SIZEOF([unsigned], [4])
+AC_CHECK_SIZEOF([long], [4])
+AC_CHECK_SIZEOF([long long], [8])
+AC_CHECK_SIZEOF([__int64], [8])
+AC_CHECK_SIZEOF([float], [4])
+AC_CHECK_SIZEOF([double], [8])
+AC_CHECK_SIZEOF([long double], [8])
+
+## Check for non-standard extenstion __FLOAT128
+HAVE_FLOAT128=0
+HAVE_QUADMATH=0
+FLT128_DIG=0
+LDBL_DIG=0
+
+AC_CHECK_SIZEOF([__float128])
+AC_CHECK_SIZEOF([_Quad])
+AC_CHECK_HEADERS([quadmath.h], [HAVE_QUADMATH=1], [])
+PAC_FC_LDBL_DIG
+
+if test "$ac_cv_sizeof___float128" != 0 && test "$FLT128_DIG" != 0 ; then
+ AC_DEFINE([HAVE_FLOAT128], [1], [Determine if __float128 is available])
+ PAC_C_MAX_REAL_PRECISION=$FLT128_DIG
+else
+ PAC_C_MAX_REAL_PRECISION=$LDBL_DIG
+fi
+AC_DEFINE_UNQUOTED([PAC_C_MAX_REAL_PRECISION], $PAC_C_MAX_REAL_PRECISION, [Determine the maximum decimal precision in C])
+AC_MSG_RESULT([$PAC_C_MAX_REAL_PRECISION])
+## ----------------------------------------------------------------------
## Check if they would like the Fortran interface compiled
##
AC_SUBST([HDF5_INTERFACES]) HDF5_INTERFACES=""
AC_MSG_CHECKING([if Fortran interface enabled])
AC_ARG_ENABLE([fortran],
[AS_HELP_STRING([--enable-fortran],
- [Compile the Fortran 90/95 interface [default=no]])],
+ [Compile the Fortran interface [default=no]])],
[HDF_FORTRAN=$enableval])
if test "X$HDF_FORTRAN" = "Xyes"; then
@@ -362,35 +416,16 @@ else
echo "no"
fi
-
-## ----------------------------------------------------------------------
-## Check if they would like the Fortran 2003 interface compiled
-##
-AC_MSG_CHECKING([if Fortran 2003 interface enabled])
-AC_ARG_ENABLE([fortran2003],
- [AS_HELP_STRING([--enable-fortran2003],
- [Compile the Fortran 2003 interface, must also specify --enable-fortran [default=no]])],
- [HDF_FORTRAN2003=$enableval])
-
-## ----------------------------------------------------------------------
-## Check to make sure --enable-fortran is present if --enable-fortran2003
-## was specified
-
-if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xno"; then
- echo "no"
- AC_MSG_ERROR([--enable-fortran must be used with --enable-fortran2003])
-else
- if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xyes"; then
- echo "yes"
- else
- echo "no"
- fi
-fi
-
if test "X$HDF_FORTRAN" = "Xyes"; then
+## We will output an include file for Fortran, H5config_f.inc which
+## contains various configure definitions used by the Fortran Library.
+## Prepend H5_ to all macro names. This avoids name conflict between HDF5 macro
+## names and those generated by another software package that uses the HDF5 library.
+ AC_CONFIG_HEADERS([fortran/src/H5config_f.inc],
+ [cat fortran/src/H5config_f.inc | sed '1d;s%^/\* \(.*\) \*/%\1%;s/#define /#define H5_/;s/#undef /#undef H5_/' >fortran/src/H5config_f.inc.tmp; mv -f fortran/src/H5config_f.inc.tmp fortran/src/H5config_f.inc])
+
AC_SUBST([FC]) HDF_FORTRAN=yes
- AC_SUBST([HAVE_FORTRAN_2003])
HDF5_INTERFACES="$HDF5_INTERFACES fortran"
@@ -423,6 +458,14 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
## Change to the Fortran 90 language
AC_LANG_PUSH(Fortran)
+ ## Checking if the compiler supports the required Fortran 2003 features and
+ ## stopping if it does not.
+ PAC_PROG_FC_HAVE_F2003_REQUIREMENTS
+
+ if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
+ AC_MSG_ERROR([Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran])
+ fi
+
## --------------------------------------------------------------------
## Define wrappers for the C compiler to use Fortran function names
##
@@ -434,39 +477,138 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
## See if the fortran compiler supports the intrinsic function "C_SIZEOF"
PAC_PROG_FC_C_SIZEOF
-
+
## See if the fortran compiler supports the intrinsic function "STORAGE_SIZE"
- PAC_PROG_FC_STORAGE_SIZE
+ PAC_PROG_FC_STORAGE_SIZE
+
+ ## Set the sizeof function for use later in the fortran tests
+ if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes";then
+ FC_SIZEOF_A="STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ FC_SIZEOF_B="STORAGE_SIZE(b, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ FC_SIZEOF_C="STORAGE_SIZE(c, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
+ else
+ if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes";then
+ FC_SIZEOF_A="SIZEOF(a)"
+ FC_SIZEOF_B="SIZEOF(b)"
+ FC_SIZEOF_C="SIZEOF(c)"
+ else
+ ## If neither intrinsic functions SIZEOF or STORAGE_SIZE is available then stop configure with an error
+ AC_MSG_ERROR([Fortran compiler requires either intrinsic functions SIZEOF or STORAGE_SIZE])
+ fi
+ fi
- ## Check to see if -r8 was specified to determine if we need to
- ## compile the DOUBLE PRECISION interfaces.
- PAC_PROG_FC_DEFAULT_REALisDBLE
+ ## See if the fortran compiler supports the intrinsic module "ISO_FORTRAN_ENV"
+ PAC_PROG_FC_ISO_FORTRAN_ENV
+ ## Check KIND and size of native integer
+ PAC_FC_NATIVE_INTEGER
+
+ ## Find all available KINDs
+ PAC_FC_AVAIL_KINDS
+ ## Find all sizeofs for available KINDs
+ PAC_FC_SIZEOF_INT_KINDS
+ PAC_FC_SIZEOF_REAL_KINDS
+
+ AC_SUBST([PAC_FC_ALL_REAL_KINDS])
+ AC_SUBST([PAC_FC_MAX_REAL_PRECISION])
+ AC_SUBST([PAC_FC_ALL_INTEGER_KINDS])
+ AC_SUBST([PAC_FC_ALL_REAL_KINDS_SIZEOF])
+ AC_SUBST([PAC_FC_ALL_INTEGER_KINDS_SIZEOF])
+ AC_SUBST([PAC_FORTRAN_NATIVE_INTEGER_KIND])
+ AC_SUBST([PAC_FORTRAN_NATIVE_INTEGER_SIZEOF])
+ AC_SUBST([PAC_FORTRAN_NATIVE_REAL_KIND])
+ AC_SUBST([PAC_FORTRAN_NATIVE_REAL_SIZEOF])
+ AC_SUBST([PAC_FORTRAN_NATIVE_DOUBLE_KIND])
+ AC_SUBST([PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF])
+ AC_SUBST([HAVE_Fortran_INTEGER_SIZEOF_16])
+ AC_SUBST([FORTRAN_HAVE_C_LONG_DOUBLE])
+ AC_SUBST([FORTRAN_C_LONG_DOUBLE_IS_UNIQUE])
+ AC_SUBST([FORTRAN_SIZEOF_LONG_DOUBLE])
+ AC_SUBST([H5CONFIG_F_NUM_RKIND])
+ AC_SUBST([H5CONFIG_F_RKIND])
+ AC_SUBST([H5CONFIG_F_RKIND_SIZEOF])
+ AC_SUBST([H5CONFIG_F_NUM_IKIND])
+ AC_SUBST([H5CONFIG_F_IKIND])
+
+ ## Setting definition if there is a 16 byte fortran integer
+ if `echo $PAC_FC_ALL_INTEGER_KINDS_SIZEOF | grep '16' >/dev/null`; then
+ HAVE_Fortran_INTEGER_SIZEOF_16="1"
+ AC_DEFINE([HAVE_Fortran_INTEGER_SIZEOF_16], [1], [Determine if INTEGER*16 is available])
+ else
+ HAVE_Fortran_INTEGER_SIZEOF_16="0"
+ AC_DEFINE([HAVE_Fortran_INTEGER_SIZEOF_16], [0], [Determine if INTEGER*16 is available])
+ fi
- if test "X$HDF_FORTRAN2003" = "Xyes"; then
+ if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"; then
+ AC_DEFINE([FORTRAN_HAVE_STORAGE_SIZE], [1], [Define if we have Fortran intrinsic STORAGE_SIZE])
+ fi
- ## Checking if the compiler supports the required Fortran 2003 features and
- ## disable Fortran 2003 if it does not.
- PAC_PROG_FC_HAVE_F2003_REQUIREMENTS
-
- if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
- AC_MSG_ERROR([Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran2003])
+ if test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"; then
+ AC_DEFINE([FORTRAN_HAVE_C_SIZEOF], [1], [Define if we have Fortran intrinsic C_SIZEOF])
+ fi
+
+ if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"; then
+ AC_DEFINE([FORTRAN_HAVE_SIZEOF], [1], [Define if we have Fortran intrinsic SIZEOF])
+ fi
+
+ ## See if C_LONG_DOUBLE is available
+ PAC_PROG_FC_HAVE_C_LONG_DOUBLE
+
+ FORTRAN_HAVE_C_LONG_DOUBLE="0"
+ if test "X$HAVE_C_LONG_DOUBLE_FORTRAN" = "Xyes"; then
+ FORTRAN_HAVE_C_LONG_DOUBLE="1"
+ AC_DEFINE([FORTRAN_HAVE_C_LONG_DOUBLE], [1], [Define if we have Fortran C_LONG_DOUBLE])
+ fi
+
+ ## Is C_LONG_DOUBLE different from C_DOUBLE
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="0"
+ if test "X$FORTRAN_HAVE_C_LONG_DOUBLE"; then
+ PAC_PROG_FC_C_LONG_DOUBLE_EQ_C_DOUBLE
+ if test "X$C_LONG_DOUBLE_IS_UNIQUE_FORTRAN" = "Xyes"; then
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="1"
+ AC_DEFINE([FORTRAN_C_LONG_DOUBLE_IS_UNIQUE], [1], [Define if Fortran C_LONG_DOUBLE is different from C_DOUBLE])
else
- HAVE_FORTRAN_2003="yes"
+ FORTRAN_C_LONG_DOUBLE_IS_UNIQUE="0"
+ fi
+ fi
+
+ FORTRAN_SIZEOF_LONG_DOUBLE=${ac_cv_sizeof_long_double}
+ AC_DEFINE_UNQUOTED([FORTRAN_SIZEOF_LONG_DOUBLE], ["${ac_cv_sizeof_long_double}"], [Determine the size of C long double])
+
+
+ dnl get the largest sizeof for REAL kinds
+
+ max_real_fortran_sizeof="`echo \"[$]PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -ne '/,(\d+)\}/; print $1'`"
+ max_real_fortran_kind="`echo \"[$]PAC_FC_ALL_REAL_KINDS\" | perl -ne '/,(\d+)\}/; print $1'`"
+
+ dnl remove the invalid kind from the list
+ if test "$ac_cv_sizeof___float128" != 0;then
+ if test "$ac_cv_sizeof___float128" != "$max_real_fortran_sizeof" && test "${ac_cv_sizeof_long_double}" != "$max_real_fortran_sizeof"; then
+ AC_MSG_WARN([
+ Fortran REAL(KIND=$max_real_fortran_kind) is $max_real_fortran_sizeof Bytes, but no corresponding C float type exists of that size
+ !!! Fortran interfaces will not be generated for REAL(KIND=$max_real_fortran_kind) !!!
+ ])
+ PAC_FC_ALL_REAL_KINDS="`echo \"[$]PAC_FC_ALL_REAL_KINDS\" | perl -pe 's/,\d+}/}/g;'`"
+ PAC_FC_ALL_REAL_KINDS_SIZEOF="`echo \"[$]PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -pe 's/,\d+}/}/g;'`"
fi
fi
+ AC_MSG_CHECKING([for Fortran interoperable KINDS with C])
+ AC_MSG_RESULT([$PAC_FC_ALL_REAL_KINDS])
+
+ dnl count the number of real kinds
+ H5CONFIG_F_NUM_RKIND="INTEGER, PARAMETER :: num_rkinds = `echo \"[$]PAC_FC_ALL_REAL_KINDS\" | perl -e '$count = (<STDIN> =~ tr/,//);print $count+1'`"
+ H5CONFIG_F_RKIND="INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/`echo \"[$]PAC_FC_ALL_REAL_KINDS\" | perl -pe 's/{//g' | perl -pe 's/}//g' | perl -pe 's/ /,/g'`/)"
+ H5CONFIG_F_RKIND_SIZEOF="INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/`echo \"[$]PAC_FC_ALL_REAL_KINDS_SIZEOF\" | perl -pe 's/{//g' | perl -pe 's/}//g'| perl -pe 's/ /,/g'`/)"
+
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_NUM_RKIND], $H5CONFIG_F_NUM_RKIND, [Define number of valid Fortran REAL KINDs])
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_RKIND], $H5CONFIG_F_RKIND, [Define valid Fortran REAL KINDs])
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_RKIND_SIZEOF], $H5CONFIG_F_RKIND_SIZEOF, [Define valid Fortran REAL KINDs Sizeof])
+
+## Change back to the C language
+ AC_LANG_POP(Fortran)
else
FC="no"
fi
-## Change back to the C language
-AC_LANG_POP(Fortran)
-
-AM_CONDITIONAL([FORTRAN_HAVE_SIZEOF], [test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_HAVE_C_SIZEOF], [test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_HAVE_STORAGE_SIZE], [test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_2003_CONDITIONAL_F], [test "X$HAVE_FORTRAN_2003" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_DEFAULT_REALisDBLE_F], [test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"])
-
## ----------------------------------------------------------------------
## Check if they would like the C++ interface compiled
##
@@ -530,27 +672,12 @@ if test "X$HDF5_HL" = "Xyes"; then
HL="hl"
AC_DEFINE([INCLUDE_HL], [1],
[Define if HDF5's high-level library headers should be included in hdf5.h])
-
- ## If Fortran's default real is double precision and HL is being built then configure
- ## should fail due to bug HDFFV-889.
- if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
- AC_MSG_ERROR([Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl.])
- fi
else
echo "no"
fi
## ----------------------------------------------------------------------
-## Check if they have Perl installed on their system. We only need Perl
-## if they're using a GNU compiler.
-##
-AC_SUBST([PERL]) PERL=""
-if test "X$GCC" = "Xyes"; then
- AC_CHECK_PROGS([PERL], [perl],, [$PATH])
-fi
-
-## ----------------------------------------------------------------------
## Check which archiving tool to use. This needs to be done before
## the AM_PROG_LIBTOOL macro.
##
@@ -975,7 +1102,7 @@ case "$host_cpu-$host_vendor-$host_os" in
##
## POSIX feature information can be found in the gcc manual at:
## http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
- H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
+##SCOT H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
## Need to add this so that O_DIRECT is visible for the direct
## VFD on Linux systems.
@@ -1016,31 +1143,6 @@ AC_TRY_COMPILE([
[AC_CHECK_FUNCS([stat64 fstat64])],
[AC_MSG_RESULT([skipping test for stat64() and fstat64()])])
-## ----------------------------------------------------------------------
-## Data types and their sizes.
-##
-AC_TYPE_OFF_T
-AC_CHECK_TYPE([size_t], [],
- [AC_DEFINE_UNQUOTED([size_t], [unsigned long],
- [Define to `unsigned long' if <sys/types.h> does not define.])])
-AC_CHECK_TYPE([ssize_t], [],
- [AC_DEFINE_UNQUOTED([ssize_t], [long],
- [Define to `long' if <sys/types.h> does not define.])])
-AC_CHECK_TYPE([ptrdiff_t], [],
- [AC_DEFINE_UNQUOTED([ptrdiff_t], [long],
- [Define to `long' if <sys/types.h> does not define.])])
-AC_C_BIGENDIAN
-AC_CHECK_SIZEOF([char], [1])
-AC_CHECK_SIZEOF([short], [2])
-AC_CHECK_SIZEOF([int], [4])
-AC_CHECK_SIZEOF([unsigned], [4])
-AC_CHECK_SIZEOF([long], [4])
-AC_CHECK_SIZEOF([long long], [8])
-AC_CHECK_SIZEOF([__int64], [8])
-AC_CHECK_SIZEOF([float], [4])
-AC_CHECK_SIZEOF([double], [8])
-AC_CHECK_SIZEOF([long double], [8])
-
## Checkpoint the cache
AC_CACHE_SAVE
@@ -1804,18 +1906,18 @@ all_packages="ac,b,b2,d,e,f,g,hg,hl,i,mf,mm,o,p,s,t,v,z"
case "X-$DEBUG_PKG" in
X-yes)
DEBUG_PKG="d,e,f,g,hg,i,mm,o,p,s,t,v,z"
- H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
AC_MSG_RESULT([default ($DEBUG_PKG)])
;;
X-all)
DEBUG_PKG=$all_packages
- H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -UNDEBUG"
AC_MSG_RESULT([all ($DEBUG_PKG)])
;;
X-no|X-none)
AC_MSG_RESULT([none])
DEBUG_PKG=
- H5_CPPFLAGS="$H5_CPPFLAGS -DNDEBUG"
+## H5_CPPFLAGS="$H5_CPPFLAGS -DNDEBUG"
;;
*)
AC_MSG_RESULT([$DEBUG_PKG])
@@ -3040,6 +3142,7 @@ AC_CONFIG_FILES([src/libhdf5.settings
fortran/Makefile
fortran/src/h5fc
fortran/src/Makefile
+ fortran/src/H5fort_type_defines.h
fortran/test/Makefile
fortran/testpar/Makefile
fortran/examples/Makefile
diff --git a/examples/Makefile.in b/examples/Makefile.in
index 5d76be3..79232ae 100644
--- a/examples/Makefile.in
+++ b/examples/Makefile.in
@@ -112,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-c-ex.sh testh5cc.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -396,14 +397,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -413,13 +421,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -461,6 +468,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/fortran/Makefile.in b/fortran/Makefile.in
index 55ede05..8585623 100644
--- a/fortran/Makefile.in
+++ b/fortran/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -452,14 +453,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -469,13 +477,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -517,6 +524,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/fortran/doc/DevelGuide/masterindex.html b/fortran/doc/DevelGuide/masterindex.html
deleted file mode 100644
index 9765ea0..0000000
--- a/fortran/doc/DevelGuide/masterindex.html
+++ /dev/null
@@ -1,589 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Index</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h1>Index</h1>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-<a href="./src/H5Pff_F03_f90.html#robo80" class="indexitem" > h5pget_double</a>
-<a href="./src/H5Pff_f90.html#robo81" class="indexitem" > h5pget_hyper_vector_size_f</a>
-<a href="./src/H5Pff_f90.html#robo82" class="indexitem" > h5pset_family_offset_f</a>
-<a href="./src/H5Pff_f90.html#robo83" class="indexitem" > h5pset_fapl_family_f</a>
-<a href="./src/H5Pff_f90.html#robo84" class="indexitem" > h5pset_meta_block_size_f</a>
-<h2><a name="F"></a>F</h2><a href="./test/fflush1_f90.html#robo_top_of_doc" class="indexitem" >fflush1.f90</a>
-<a href="./test/fflush2_f90.html#robo_top_of_doc" class="indexitem" >fflush2.f90</a>
-<a href="./test/fflush1_f90.html#robo0" class="indexitem" >fortran/test/fflush1.f90</a>
-<a href="./test/fflush2_f90.html#robo1" class="indexitem" >fortran/test/fflush2.f90</a>
-<a href="./test/fortranlib_test_f90.html#robo2" class="indexitem" >fortran/test/fortranlib_test.f90</a>
-<a href="./test/fortranlib_test_1_8_f90.html#robo3" class="indexitem" >fortran/test/fortranlib_test_1_8.f90</a>
-<a href="./test/fortranlib_test_F03_f90.html#robo4" class="indexitem" >fortran/test/fortranlib_test_F03.f90</a>
-<a href="./test/t_c.html#robo5" class="indexitem" >fortran/test/tc.c</a>
-<a href="./test/tf_f90.html#robo6" class="indexitem" >fortran/test/tf.f90</a>
-<a href="./test/tH5A_f90.html#robo7" class="indexitem" >fortran/test/tH5A.f90</a>
-<a href="./test/tH5A_1_8_f90.html#robo8" class="indexitem" >fortran/test/tH5A_1_8.f90</a>
-<a href="./test/tH5D_f90.html#robo9" class="indexitem" >fortran/test/tH5D.f90</a>
-<a href="./test/tH5E_f90.html#robo10" class="indexitem" >fortran/test/tH5E.f90</a>
-<a href="./test/tH5E_F03_f90.html#robo11" class="indexitem" >fortran/test/tH5E_F03.f90</a>
-<a href="./test/tH5F_f90.html#robo12" class="indexitem" >fortran/test/tH5F.f90</a>
-<a href="./test/tH5G_f90.html#robo13" class="indexitem" >fortran/test/tH5G.f90</a>
-<a href="./test/tH5G_1_8_f90.html#robo14" class="indexitem" >fortran/test/tH5G_1_8.f90</a>
-<a href="./test/tH5I_f90.html#robo15" class="indexitem" >fortran/test/tH5I.f90</a>
-<a href="./test/tH5L_F03_f90.html#robo16" class="indexitem" >fortran/test/tH5L_F03.f90</a>
-<a href="./test/tH5O_f90.html#robo17" class="indexitem" >fortran/test/tH5O.f90</a>
-<a href="./test/tH5P_f90.html#robo18" class="indexitem" >fortran/test/tH5P.f90</a>
-<a href="./test/tH5P_F03_f90.html#robo19" class="indexitem" >fortran/test/tH5P_F03.f90</a>
-<a href="./test/tH5R_f90.html#robo20" class="indexitem" >fortran/test/tH5R.f90</a>
-<a href="./test/tH5S_f90.html#robo21" class="indexitem" >fortran/test/tH5S.f90</a>
-<a href="./test/tH5Sselect_f90.html#robo22" class="indexitem" >fortran/test/tH5Sselect.f90</a>
-<a href="./test/tH5T_f90.html#robo23" class="indexitem" >fortran/test/tH5T.f90</a>
-<a href="./test/tH5T_F03_f90.html#robo24" class="indexitem" >fortran/test/tH5T_F03.f90</a>
-<a href="./test/tH5VL_f90.html#robo25" class="indexitem" >fortran/test/tH5VL.f90</a>
-<a href="./test/tH5Z_f90.html#robo26" class="indexitem" >fortran/test/tH5Z.f90</a>
-<a href="./test/fortranlib_test_f90.html#robo_top_of_doc" class="indexitem" >fortranlib_test.f90</a>
-<a href="./test/fortranlib_test_1_8_f90.html#robo_top_of_doc" class="indexitem" >fortranlib_test_1_8.f90</a>
-<a href="./test/fortranlib_test_F03_f90.html#robo_top_of_doc" class="indexitem" >fortranlib_test_F03.f90</a>
-<h2><a name="H"></a>H</h2><a href="./src/H5_DBLE_InterfaceExclude_f90.html#robo_top_of_doc" class="indexitem" >H5_DBLE_InterfaceExclude.f90</a>
-<a href="./src/H5_DBLE_InterfaceInclude_f90.html#robo_top_of_doc" class="indexitem" >H5_DBLE_InterfaceInclude.f90</a>
-<a href="./src/H5_ff_f90.html#robo_top_of_doc" class="indexitem" >H5_ff.f90</a>
-<a href="./src/H5_ff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5_ff_F03.f90</a>
-<a href="./src/H5_ff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5_ff_F90.f90</a>
-<a href="./src/H5Aff_f90.html#robo27" class="indexitem" >H5A</a>
-<a href="./src/H5Aff_F03_f90.html#robo28" class="indexitem" >H5A (F03)</a>
-<a href="./src/H5Aff_F90_f90.html#robo29" class="indexitem" >H5A (F90)</a>
-<a href="./src/H5Aff_f90.html#robo85" class="indexitem" >h5aclose_f</a>
-<a href="./src/H5Aff_f90.html#robo86" class="indexitem" >h5acreate_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo87" class="indexitem" >h5acreate_f</a>
-<a href="./src/H5Aff_f90.html#robo88" class="indexitem" >h5adelete_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo89" class="indexitem" >h5adelete_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo90" class="indexitem" >h5adelete_f</a>
-<a href="./src/H5Aff_f90.html#robo91" class="indexitem" >H5Aexists_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo92" class="indexitem" >H5Aexists_f</a>
-<a href="./src/H5Af_c.html#robo30" class="indexitem" >H5Af</a>
-<a href="./src/H5Af_c.html#robo_top_of_doc" class="indexitem" >H5Af.c</a>
-<a href="./src/H5Aff_f90.html#robo_top_of_doc" class="indexitem" >H5Aff.f90</a>
-<a href="./src/H5Aff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Aff_F03.f90</a>
-<a href="./src/H5Aff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Aff_F90.f90</a>
-<a href="./src/H5Aff_f90.html#robo93" class="indexitem" >h5aget_create_plist_f</a>
-<a href="./src/H5Aff_f90.html#robo94" class="indexitem" >h5aget_info_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo95" class="indexitem" >h5aget_info_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo96" class="indexitem" >h5aget_info_f</a>
-<a href="./src/H5Aff_f90.html#robo97" class="indexitem" >h5aget_name_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo98" class="indexitem" >h5aget_name_f</a>
-<a href="./src/H5Aff_f90.html#robo99" class="indexitem" >h5aget_num_attrs_f</a>
-<a href="./src/H5Aff_f90.html#robo100" class="indexitem" >h5aget_space_f</a>
-<a href="./src/H5Aff_f90.html#robo101" class="indexitem" >h5aget_storage_size_f</a>
-<a href="./src/H5Aff_f90.html#robo102" class="indexitem" >h5aget_type_f</a>
-<a href="./src/H5Aff_f90.html#robo103" class="indexitem" >h5aopen_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo104" class="indexitem" >H5Aopen_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo105" class="indexitem" >h5aopen_f</a>
-<a href="./src/H5Aff_f90.html#robo106" class="indexitem" >h5aopen_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo107" class="indexitem" >h5aopen_name_f</a>
-<a href="./src/H5Aff_F03_f90.html#robo108" class="indexitem" >h5aread_f</a>
-<a href="./src/H5Aff_f90.html#robo109" class="indexitem" >h5arename_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo110" class="indexitem" >h5arename_f</a>
-<a href="./src/H5_ff_f90.html#robo111" class="indexitem" >h5check_version_f</a>
-<a href="./src/H5_ff_f90.html#robo112" class="indexitem" >h5close_f</a>
-<a href="./src/H5Dff_f90.html#robo31" class="indexitem" >H5D</a>
-<a href="./src/H5Dff_F03_f90.html#robo32" class="indexitem" >H5D (F03)</a>
-<a href="./src/H5Dff_F90_f90.html#robo33" class="indexitem" >H5D (F90)</a>
-<a href="./src/H5Dff_f90.html#robo113" class="indexitem" >h5dclose_f</a>
-<a href="./src/H5Dff_f90.html#robo114" class="indexitem" >h5dcreate_anon_f</a>
-<a href="./src/H5Dff_f90.html#robo115" class="indexitem" >h5dcreate_f</a>
-<a href="./src/H5Df_c.html#robo34" class="indexitem" >H5Df</a>
-<a href="./src/H5Df_c.html#robo_top_of_doc" class="indexitem" >H5Df.c</a>
-<a href="./src/H5Dff_f90.html#robo_top_of_doc" class="indexitem" >H5Dff.f90</a>
-<a href="./src/H5Dff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Dff_F03.f90</a>
-<a href="./src/H5Dff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Dff_F90.f90</a>
-<a href="./src/H5Dff_f90.html#robo116" class="indexitem" >h5dget_access_plist_f</a>
-<a href="./src/H5Dff_f90.html#robo117" class="indexitem" >h5dget_create_plist_f</a>
-<a href="./src/H5Dff_f90.html#robo118" class="indexitem" >h5dget_space_f</a>
-<a href="./src/H5Dff_f90.html#robo119" class="indexitem" >h5dget_space_status_f</a>
-<a href="./src/H5Dff_f90.html#robo120" class="indexitem" >h5dget_storage_size_f</a>
-<a href="./src/H5Dff_f90.html#robo121" class="indexitem" >h5dget_type_f</a>
-<a href="./src/H5_ff_f90.html#robo122" class="indexitem" >h5dont_atexit_f</a>
-<a href="./src/H5Dff_f90.html#robo123" class="indexitem" >h5dopen_f</a>
-<a href="./src/H5Dff_F90_f90.html#robo124" class="indexitem" >h5dread_f</a>
-<a href="./src/H5Dff_f90.html#robo125" class="indexitem" >h5dset_extent</a>
-<a href="./src/H5Dff_f90.html#robo126" class="indexitem" >h5dvlen_get_max_len_f</a>
-<a href="./src/H5Dff_F03_f90.html#robo127" class="indexitem" >h5dvlen_reclaim</a>
-<a href="./src/H5Eff_f90.html#robo35" class="indexitem" >H5E</a>
-<a href="./src/H5Eff_F03_f90.html#robo36" class="indexitem" >H5E (F03)</a>
-<a href="./src/H5Eff_F90_f90.html#robo37" class="indexitem" >H5E (F90)</a>
-<a href="./src/H5Eff_f90.html#robo128" class="indexitem" >h5eclear_f</a>
-<a href="./src/H5Ef_c.html#robo38" class="indexitem" >H5Ef</a>
-<a href="./src/H5Ef_c.html#robo_top_of_doc" class="indexitem" >H5Ef.c</a>
-<a href="./src/H5Eff_f90.html#robo_top_of_doc" class="indexitem" >H5Eff.f90</a>
-<a href="./src/H5Eff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Eff_F03.f90</a>
-<a href="./src/H5Eff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Eff_F90.f90</a>
-<a href="./src/H5Eff_F03_f90.html#robo129" class="indexitem" >h5eget_auto_f</a>
-<a href="./src/H5Eff_f90.html#robo130" class="indexitem" >h5eget_major_f</a>
-<a href="./src/H5Eff_f90.html#robo131" class="indexitem" >h5eget_minor_f</a>
-<a href="./src/H5Eff_f90.html#robo132" class="indexitem" >h5eprint_f</a>
-<a href="./src/H5Eff_F03_f90.html#robo133" class="indexitem" >h5eset_auto2_f</a>
-<a href="./src/H5Eff_F90_f90.html#robo134" class="indexitem" >h5eset_auto_f</a>
-<a href="./src/H5Fff_f90.html#robo39" class="indexitem" >H5F</a>
-<a href="./src/H5f90global_f90.html#robo_top_of_doc" class="indexitem" >H5f90global.f90</a>
-<a href="./src/H5f90kit_c.html#robo40" class="indexitem" >H5f90kit</a>
-<a href="./src/H5f90kit_c.html#robo_top_of_doc" class="indexitem" >H5f90kit.c</a>
-<a href="./src/H5Fff_f90.html#robo135" class="indexitem" >h5fclose_f</a>
-<a href="./src/H5Fff_f90.html#robo136" class="indexitem" >h5fcreate_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo41" class="indexitem" >H5FDMPIO</a>
-<a href="./src/H5FDmpiof_c.html#robo42" class="indexitem" >H5FDmpiof</a>
-<a href="./src/H5FDmpiof_c.html#robo_top_of_doc" class="indexitem" >H5FDmpiof.c</a>
-<a href="./src/H5FDmpioff_f90.html#robo_top_of_doc" class="indexitem" >H5FDmpioff.f90</a>
-<a href="./src/H5Ff_c.html#robo43" class="indexitem" >H5Ff</a>
-<a href="./src/H5Ff_c.html#robo_top_of_doc" class="indexitem" >H5Ff.c</a>
-<a href="./src/H5Fff_f90.html#robo_top_of_doc" class="indexitem" >H5Fff.f90</a>
-<a href="./src/H5Fff_f90.html#robo137" class="indexitem" >h5fflush_f</a>
-<a href="./src/H5Fff_f90.html#robo138" class="indexitem" >h5fget_access_plist_f</a>
-<a href="./src/H5Fff_f90.html#robo139" class="indexitem" >h5fget_create_plist_f</a>
-<a href="./src/H5Fff_f90.html#robo140" class="indexitem" >h5fget_filesize_f</a>
-<a href="./src/H5Fff_f90.html#robo141" class="indexitem" >h5fget_freespace_f</a>
-<a href="./src/H5Fff_f90.html#robo142" class="indexitem" >h5fget_name_f</a>
-<a href="./src/H5Fff_f90.html#robo143" class="indexitem" >h5fget_obj_count_f</a>
-<a href="./src/H5Fff_f90.html#robo144" class="indexitem" >h5fget_obj_ids_f</a>
-<a href="./src/H5Fff_f90.html#robo145" class="indexitem" >h5fis_hdf5_f</a>
-<a href="./src/H5Fff_f90.html#robo146" class="indexitem" >h5fmount_f</a>
-<a href="./src/H5Fff_f90.html#robo147" class="indexitem" >h5fopen_f</a>
-<a href="./src/H5Fff_f90.html#robo148" class="indexitem" >h5freopen_f</a>
-<a href="./src/H5Fff_f90.html#robo149" class="indexitem" >h5funmount_f</a>
-<a href="./src/H5Gff_f90.html#robo44" class="indexitem" >H5G</a>
-<a href="./src/H5_ff_f90.html#robo150" class="indexitem" >h5garbage_collect_f</a>
-<a href="./src/H5Gff_f90.html#robo151" class="indexitem" >h5gclose_f</a>
-<a href="./src/H5Gff_f90.html#robo152" class="indexitem" >H5Gcreate_anon_f</a>
-<a href="./src/H5Gff_f90.html#robo153" class="indexitem" >h5gcreate_f</a>
-<a href="./src/H5_ff_f90.html#robo154" class="indexitem" >h5get_libversion_f</a>
-<a href="./src/H5Gf_c.html#robo45" class="indexitem" >H5Gf</a>
-<a href="./src/H5Gf_c.html#robo_top_of_doc" class="indexitem" >H5Gf.c</a>
-<a href="./src/H5Gff_f90.html#robo_top_of_doc" class="indexitem" >H5Gff.f90</a>
-<a href="./src/H5Gff_f90.html#robo155" class="indexitem" >h5gget_comment_f</a>
-<a href="./src/H5Gff_f90.html#robo156" class="indexitem" >H5Gget_create_plist_f</a>
-<a href="./src/H5Gff_f90.html#robo157" class="indexitem" >h5gget_info_by_idx_f</a>
-<a href="./src/H5Gff_f90.html#robo158" class="indexitem" >h5gget_info_by_name_f</a>
-<a href="./src/H5Gff_f90.html#robo159" class="indexitem" >h5gget_info_f</a>
-<a href="./src/H5Gff_f90.html#robo160" class="indexitem" >h5gget_linkval_f</a>
-<a href="./src/H5Gff_f90.html#robo161" class="indexitem" >h5gget_obj_info_idx_f</a>
-<a href="./src/H5Gff_f90.html#robo162" class="indexitem" >h5glink2_f</a>
-<a href="./src/H5Gff_f90.html#robo163" class="indexitem" >h5glink_f</a>
-<a href="./src/H5f90global_f90.html#robo46" class="indexitem" >H5GLOBAL</a>
-<a href="./src/H5Gff_f90.html#robo164" class="indexitem" >h5gmove2_f</a>
-<a href="./src/H5Gff_f90.html#robo165" class="indexitem" >h5gmove_f</a>
-<a href="./src/H5Gff_f90.html#robo166" class="indexitem" >h5gn_members_f</a>
-<a href="./src/H5Gff_f90.html#robo167" class="indexitem" >h5gopen_f</a>
-<a href="./src/H5Gff_f90.html#robo168" class="indexitem" >h5gset_comment_f</a>
-<a href="./src/H5Gff_f90.html#robo169" class="indexitem" >h5gunlink_f</a>
-<a href="./src/H5Iff_f90.html#robo47" class="indexitem" >H5I</a>
-<a href="./src/H5Iff_f90.html#robo170" class="indexitem" >h5idec_ref_f</a>
-<a href="./src/H5If_c.html#robo48" class="indexitem" >H5If</a>
-<a href="./src/H5If_c.html#robo_top_of_doc" class="indexitem" >H5If.c</a>
-<a href="./src/H5Iff_f90.html#robo_top_of_doc" class="indexitem" >H5Iff.f90</a>
-<a href="./src/H5Iff_f90.html#robo171" class="indexitem" >h5iget_file_id_f</a>
-<a href="./src/H5Iff_f90.html#robo172" class="indexitem" >h5iget_name_f</a>
-<a href="./src/H5Iff_f90.html#robo173" class="indexitem" >h5iget_ref_f</a>
-<a href="./src/H5Iff_f90.html#robo174" class="indexitem" >h5iget_type_f</a>
-<a href="./src/H5Iff_f90.html#robo175" class="indexitem" >h5iinc_ref_f</a>
-<a href="./src/H5Iff_f90.html#robo176" class="indexitem" >h5iis_valid_f</a>
-<a href="./src/H5_ff_f90.html#robo177" class="indexitem" >h5kind_to_type</a>
-<a href="./src/H5Lff_f90.html#robo49" class="indexitem" >H5L</a>
-<a href="./src/H5Lff_F03_f90.html#robo50" class="indexitem" >H5L (F03)</a>
-<a href="./src/H5Lff_F90_f90.html#robo51" class="indexitem" >H5L (F90)</a>
-<a href="./src/H5Lff_f90.html#robo178" class="indexitem" >h5lcopy_f</a>
-<a href="./src/H5Lff_f90.html#robo179" class="indexitem" >H5Lcreate_external_f</a>
-<a href="./src/H5Lff_f90.html#robo180" class="indexitem" >H5Lcreate_hard_f</a>
-<a href="./src/H5Lff_f90.html#robo181" class="indexitem" >H5Lcreate_soft_f</a>
-<a href="./src/H5Lff_f90.html#robo182" class="indexitem" >h5ldelete_by_idx_f</a>
-<a href="./src/H5Lff_f90.html#robo183" class="indexitem" >h5ldelete_f</a>
-<a href="./src/H5Lff_f90.html#robo184" class="indexitem" >H5Lexists_f</a>
-<a href="./src/H5Lf_c.html#robo52" class="indexitem" >H5Lf</a>
-<a href="./src/H5Lf_c.html#robo_top_of_doc" class="indexitem" >H5Lf.c</a>
-<a href="./src/H5Lff_f90.html#robo_top_of_doc" class="indexitem" >H5Lff.f90</a>
-<a href="./src/H5Lff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Lff_F03.f90</a>
-<a href="./src/H5Lff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Lff_F90.f90</a>
-<a href="./src/H5Lff_f90.html#robo185" class="indexitem" >h5lget_info_by_idx_f</a>
-<a href="./src/H5Lff_f90.html#robo186" class="indexitem" >h5lget_info_f</a>
-<a href="./src/H5Lff_f90.html#robo187" class="indexitem" >h5lget_name_by_idx_f</a>
-<a href="./src/H5_ff_f90.html#robo53" class="indexitem" >H5LIB</a>
-<a href="./src/H5_ff_F03_f90.html#robo54" class="indexitem" >H5LIB_PROVISIONAL</a>
-<a href="./src/H5_ff_F90_f90.html#robo55" class="indexitem" >H5LIB_PROVISIONAL (F90)</a>
-<a href="./src/H5Lff_f90.html#robo188" class="indexitem" >h5lis_registered_f</a>
-<a href="./src/H5Lff_F03_f90.html#robo189" class="indexitem" >h5literate_by_name_f</a>
-<a href="./src/H5Lff_F03_f90.html#robo190" class="indexitem" >h5literate_f</a>
-<a href="./src/H5Lff_f90.html#robo191" class="indexitem" >h5lmove_f</a>
-<a href="./src/H5match_types_c.html#robo192" class="indexitem" >H5match_types</a>
-<a href="./src/H5match_types_c.html#robo_top_of_doc" class="indexitem" >H5match_types.c</a>
-<a href="./src/H5Off_f90.html#robo56" class="indexitem" >H5O</a>
-<a href="./src/H5Off_F03_f90.html#robo57" class="indexitem" >H5O (F03)</a>
-<a href="./src/H5Off_F90_f90.html#robo58" class="indexitem" >H5O (F90)</a>
-<a href="./src/H5Off_f90.html#robo193" class="indexitem" >h5oclose_f</a>
-<a href="./src/H5Of_c.html#robo59" class="indexitem" >H5Of</a>
-<a href="./src/H5Of_c.html#robo_top_of_doc" class="indexitem" >H5Of.c</a>
-<a href="./src/H5Off_f90.html#robo_top_of_doc" class="indexitem" >H5Off.f90</a>
-<a href="./src/H5Off_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Off_F03.f90</a>
-<a href="./src/H5Off_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Off_F90.f90</a>
-<a href="./src/H5_ff_F03_f90.html#robo194" class="indexitem" >h5offsetof</a>
-<a href="./src/H5Off_f90.html#robo195" class="indexitem" >h5olink_f</a>
-<a href="./src/H5Off_f90.html#robo196" class="indexitem" >h5oopen_f</a>
-<a href="./src/H5Off_f90.html#robo197" class="indexitem" >h5open_by_addr_f</a>
-<a href="./src/H5_ff_f90.html#robo198" class="indexitem" >h5open_f</a>
-<a href="./src/H5Off_F03_f90.html#robo199" class="indexitem" >h5ovisit_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo60" class="indexitem" >H5P (_F90)</a>
-<a href="./src/H5Pff_F03_f90.html#robo61" class="indexitem" >H5P (F03)</a>
-<a href="./src/H5Pff_f90.html#robo62" class="indexitem" >H5P (F90)</a>
-<a href="./src/H5Pff_f90.html#robo200" class="indexitem" >h5pall_filters_avail_f</a>
-<a href="./src/H5Pff_f90.html#robo201" class="indexitem" >h5pclose_class_f</a>
-<a href="./src/H5Pff_f90.html#robo202" class="indexitem" >h5pclose_f</a>
-<a href="./src/H5Pff_f90.html#robo203" class="indexitem" >h5pcopy_f</a>
-<a href="./src/H5Pff_f90.html#robo204" class="indexitem" >h5pcopy_prop_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo205" class="indexitem" >h5pcreate_class_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo206" class="indexitem" >h5pcreate_class_f</a>
-<a href="./src/H5Pff_f90.html#robo207" class="indexitem" >h5pcreate_f</a>
-<a href="./src/H5Pff_f90.html#robo208" class="indexitem" >h5pequal_f</a>
-<a href="./src/H5Pff_f90.html#robo209" class="indexitem" >h5pexist_f</a>
-<a href="./src/H5Pf_c.html#robo63" class="indexitem" >H5Pf</a>
-<a href="./src/H5Pf_c.html#robo_top_of_doc" class="indexitem" >H5Pf.c</a>
-<a href="./src/H5Pff_f90.html#robo_top_of_doc" class="indexitem" >H5Pff.f90</a>
-<a href="./src/H5Pff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Pff_F03.f90</a>
-<a href="./src/H5Pff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Pff_F90.f90</a>
-<a href="./src/H5Pff_f90.html#robo210" class="indexitem" >h5pfill_value_defined_f</a>
-<a href="./src/H5Pff_f90.html#robo211" class="indexitem" >h5pget_alignment_f</a>
-<a href="./src/H5Pff_f90.html#robo212" class="indexitem" >h5pget_alloc_time_f</a>
-<a href="./src/H5Pff_f90.html#robo213" class="indexitem" >H5Pget_attr_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo214" class="indexitem" >H5Pget_attr_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo215" class="indexitem" >h5pget_btree_ratios_f</a>
-<a href="./src/H5Pff_f90.html#robo216" class="indexitem" >h5pget_buffer_f</a>
-<a href="./src/H5Pff_f90.html#robo217" class="indexitem" >h5pget_cache_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo218" class="indexitem" >h5pget_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo219" class="indexitem" >h5pget_char</a>
-<a href="./src/H5Pff_f90.html#robo220" class="indexitem" >H5Pget_char_encoding_f</a>
-<a href="./src/H5Pff_f90.html#robo221" class="indexitem" >H5Pget_chunk_cache_f</a>
-<a href="./src/H5Pff_f90.html#robo222" class="indexitem" >h5pget_chunk_f</a>
-<a href="./src/H5Pff_f90.html#robo223" class="indexitem" >h5pget_class_f</a>
-<a href="./src/H5Pff_f90.html#robo224" class="indexitem" >h5pget_class_name_f</a>
-<a href="./src/H5Pff_f90.html#robo225" class="indexitem" >h5pget_class_parent_f</a>
-<a href="./src/H5Pff_f90.html#robo226" class="indexitem" >h5pget_copy_object_f</a>
-<a href="./src/H5Pff_f90.html#robo227" class="indexitem" >H5Pget_create_inter_group_f</a>
-<a href="./src/H5Pff_f90.html#robo228" class="indexitem" >h5pget_data_transform_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo229" class="indexitem" >h5pget_double</a>
-<a href="./src/H5Pff_f90.html#robo230" class="indexitem" >h5pget_driver_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo231" class="indexitem" >h5pget_dxpl_mpio_f</a>
-<a href="./src/H5Pff_f90.html#robo232" class="indexitem" >h5pget_edc_check_f</a>
-<a href="./src/H5Pff_f90.html#robo233" class="indexitem" >H5Pget_est_link_info_f</a>
-<a href="./src/H5Pff_f90.html#robo234" class="indexitem" >h5pget_external_count_f</a>
-<a href="./src/H5Pff_f90.html#robo235" class="indexitem" >h5pget_external_f</a>
-<a href="./src/H5Pff_f90.html#robo236" class="indexitem" >h5pget_fapl_core_f</a>
-<a href="./src/H5Pff_f90.html#robo237" class="indexitem" >h5pget_fapl_direct_f</a>
-<a href="./src/H5Pff_f90.html#robo238" class="indexitem" >h5pget_fapl_family_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo239" class="indexitem" >h5pget_fapl_mpio_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo240" class="indexitem" >h5pget_fapl_mpiposix_f</a>
-<a href="./src/H5Pff_f90.html#robo241" class="indexitem" >h5pget_fapl_multi_f</a>
-<a href="./src/H5Pff_f90.html#robo242" class="indexitem" >h5pget_fclose_degree_f</a>
-<a href="./src/H5Pff_f90.html#robo243" class="indexitem" >h5pget_fill_time_f</a>
-<a href="./src/H5Pff_f90.html#robo244" class="indexitem" >h5pget_filter_by_id_f</a>
-<a href="./src/H5Pff_f90.html#robo245" class="indexitem" >h5pget_filter_f</a>
-<a href="./src/H5Pff_f90.html#robo246" class="indexitem" >h5pget_gc_references_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo247" class="indexitem" >h5pget_integer</a>
-<a href="./src/H5Pff_F90_f90.html#robo248" class="indexitem" >h5pget_integer</a>
-<a href="./src/H5Pff_f90.html#robo249" class="indexitem" >h5pget_istore_k_f</a>
-<a href="./src/H5Pff_f90.html#robo250" class="indexitem" >h5pget_layout_f</a>
-<a href="./src/H5Pff_f90.html#robo251" class="indexitem" >H5Pget_link_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo252" class="indexitem" >H5Pget_link_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo253" class="indexitem" >H5Pget_local_heap_size_hint_f</a>
-<a href="./src/H5Pff_f90.html#robo254" class="indexitem" >h5pget_meta_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo255" class="indexitem" >h5pget_nfilters_f</a>
-<a href="./src/H5Pff_f90.html#robo256" class="indexitem" >h5pget_nlinks_f</a>
-<a href="./src/H5Pff_f90.html#robo257" class="indexitem" >h5pget_npros_f</a>
-<a href="./src/H5Pff_f90.html#robo258" class="indexitem" >H5Pget_obj_track_times_f</a>
-<a href="./src/H5Pff_f90.html#robo259" class="indexitem" >h5pget_preserve_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo260" class="indexitem" >h5pget_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo261" class="indexitem" >h5pget_real</a>
-<a href="./src/H5Pff_f90.html#robo262" class="indexitem" >h5pget_sec2_f</a>
-<a href="./src/H5Pff_f90.html#robo263" class="indexitem" >h5pget_sieve_buf_size_f</a>
-<a href="./src/H5Pff_f90.html#robo264" class="indexitem" >h5pget_size_f</a>
-<a href="./src/H5Pff_f90.html#robo265" class="indexitem" >h5pget_sizes_f</a>
-<a href="./src/H5Pff_f90.html#robo266" class="indexitem" >h5pget_small_data_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo267" class="indexitem" >h5pget_split_f</a>
-<a href="./src/H5Pff_f90.html#robo268" class="indexitem" >h5pget_stdio_f</a>
-<a href="./src/H5Pff_f90.html#robo269" class="indexitem" >h5pget_sym_k_f</a>
-<a href="./src/H5Pff_f90.html#robo270" class="indexitem" >h5pget_userblock_f</a>
-<a href="./src/H5Pff_f90.html#robo271" class="indexitem" >h5pget_version_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo273" class="indexitem" >h5pinsert_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo272" class="indexitem" >h5pinsert_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo275" class="indexitem" >h5pinsert_double</a>
-<a href="./src/H5Pff_F03_f90.html#robo274" class="indexitem" >h5pinsert_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo277" class="indexitem" >h5pinsert_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo276" class="indexitem" >h5pinsert_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo278" class="indexitem" >h5pinsert_ptr</a>
-<a href="./src/H5Pff_F90_f90.html#robo279" class="indexitem" >h5pinsert_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo280" class="indexitem" >h5pinsert_real</a>
-<a href="./src/H5Pff_f90.html#robo281" class="indexitem" >h5pisa_class_f</a>
-<a href="./src/H5Pff_f90.html#robo282" class="indexitem" >h5pmodify_filter_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo283" class="indexitem" >h5pregister_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo284" class="indexitem" >h5pregister_char</a>
-<a href="./src/H5Pff_F03_f90.html#robo286" class="indexitem" >h5pregister_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo285" class="indexitem" >h5pregister_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo288" class="indexitem" >h5pregister_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo287" class="indexitem" >h5pregister_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo289" class="indexitem" >h5pregister_ptr</a>
-<a href="./src/H5Pff_F90_f90.html#robo290" class="indexitem" >h5pregister_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo291" class="indexitem" >h5pregister_real</a>
-<a href="./src/H5Pff_f90.html#robo292" class="indexitem" >h5premove_f</a>
-<a href="./src/H5Pff_f90.html#robo293" class="indexitem" >h5premove_filter_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo295" class="indexitem" >h5pset(get)fill_value_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo294" class="indexitem" >h5pset(get)fill_value_f</a>
-<a href="./src/H5Pff_f90.html#robo296" class="indexitem" >h5pset_alignment_f</a>
-<a href="./src/H5Pff_f90.html#robo297" class="indexitem" >h5pset_alloc_time_f</a>
-<a href="./src/H5Pff_f90.html#robo298" class="indexitem" >H5Pset_attr_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo299" class="indexitem" >H5Pset_attr_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo300" class="indexitem" >h5pset_btree_ratios_f</a>
-<a href="./src/H5Pff_f90.html#robo301" class="indexitem" >h5pset_buffer_f</a>
-<a href="./src/H5Pff_f90.html#robo302" class="indexitem" >h5pset_cache_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo303" class="indexitem" >h5pset_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo304" class="indexitem" >h5pset_char</a>
-<a href="./src/H5Pff_f90.html#robo305" class="indexitem" >H5Pset_char_encoding_f</a>
-<a href="./src/H5Pff_f90.html#robo306" class="indexitem" >H5Pset_chunk_cache_f</a>
-<a href="./src/H5Pff_f90.html#robo307" class="indexitem" >h5pset_chunk_f</a>
-<a href="./src/H5Pff_f90.html#robo308" class="indexitem" >h5pset_copy_object_f</a>
-<a href="./src/H5Pff_f90.html#robo309" class="indexitem" >H5Pset_create_inter_group_f</a>
-<a href="./src/H5Pff_f90.html#robo310" class="indexitem" >h5pset_data_transform_f</a>
-<a href="./src/H5Pff_f90.html#robo311" class="indexitem" >h5pset_deflate_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo312" class="indexitem" >h5pset_double</a>
-<a href="./src/H5Pff_F03_f90.html#robo313" class="indexitem" >h5pset_double</a>
-<a href="./src/H5FDmpioff_f90.html#robo314" class="indexitem" >h5pset_dxpl_mpio_f</a>
-<a href="./src/H5Pff_f90.html#robo315" class="indexitem" >h5pset_edc_check_f</a>
-<a href="./src/H5Pff_f90.html#robo316" class="indexitem" >h5pset_est_link_info_f</a>
-<a href="./src/H5Pff_f90.html#robo317" class="indexitem" >h5pset_external_f</a>
-<a href="./src/H5Pff_f90.html#robo318" class="indexitem" >h5pset_fapl_core_f</a>
-<a href="./src/H5Pff_f90.html#robo319" class="indexitem" >h5pset_fapl_direct_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo320" class="indexitem" >h5pset_fapl_mpio_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo321" class="indexitem" >h5pset_fapl_mpiposix_f</a>
-<a href="./src/H5Pff_f90.html#robo322" class="indexitem" >h5pset_fapl_multi_l</a>
-<a href="./src/H5Pff_f90.html#robo323" class="indexitem" >h5pset_fapl_multi_s</a>
-<a href="./src/H5Pff_f90.html#robo324" class="indexitem" >h5pset_fapl_sec2_f</a>
-<a href="./src/H5Pff_f90.html#robo325" class="indexitem" >h5pset_fapl_split_f</a>
-<a href="./src/H5Pff_f90.html#robo326" class="indexitem" >h5pset_fapl_stdio_f</a>
-<a href="./src/H5Pff_f90.html#robo327" class="indexitem" >h5pset_fclose_degree_f</a>
-<a href="./src/H5Pff_f90.html#robo328" class="indexitem" >h5pset_fill_time_f</a>
-<a href="./src/H5Pff_f90.html#robo329" class="indexitem" >h5pset_filter_f</a>
-<a href="./src/H5Pff_f90.html#robo330" class="indexitem" >h5pset_fletcher32_f</a>
-<a href="./src/H5Pff_f90.html#robo331" class="indexitem" >h5pset_gc_references_f</a>
-<a href="./src/H5Pff_f90.html#robo332" class="indexitem" >h5pset_hyper_vector_size_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo334" class="indexitem" >h5pset_integer</a>
-<a href="./src/H5Pff_F90_f90.html#robo333" class="indexitem" >h5pset_integer</a>
-<a href="./src/H5Pff_f90.html#robo335" class="indexitem" >h5pset_istore_k_f</a>
-<a href="./src/H5Pff_f90.html#robo336" class="indexitem" >h5pset_layout_f</a>
-<a href="./src/H5Pff_f90.html#robo337" class="indexitem" >H5Pset_libver_bounds_f</a>
-<a href="./src/H5Pff_f90.html#robo338" class="indexitem" >H5Pset_link_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo339" class="indexitem" >h5pset_link_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo340" class="indexitem" >H5Pset_local_heap_size_hint_f</a>
-<a href="./src/H5Pff_f90.html#robo341" class="indexitem" >H5Pset_nbit_f</a>
-<a href="./src/H5Pff_f90.html#robo342" class="indexitem" >h5pset_nlinks_f</a>
-<a href="./src/H5Pff_f90.html#robo343" class="indexitem" >H5Pset_obj_track_times_f</a>
-<a href="./src/H5Pff_f90.html#robo344" class="indexitem" >h5pset_preserve_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo346" class="indexitem" >h5pset_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo345" class="indexitem" >h5pset_real</a>
-<a href="./src/H5Pff_f90.html#robo347" class="indexitem" >h5pset_scaleoffset_f</a>
-<a href="./src/H5Pff_f90.html#robo348" class="indexitem" >H5Pset_shared_mesg_index_f</a>
-<a href="./src/H5Pff_f90.html#robo349" class="indexitem" >H5Pset_shared_mesg_nindexes_f</a>
-<a href="./src/H5Pff_f90.html#robo350" class="indexitem" >h5pset_shuffle_f</a>
-<a href="./src/H5Pff_f90.html#robo351" class="indexitem" >h5pset_sieve_buf_size_f</a>
-<a href="./src/H5Pff_f90.html#robo352" class="indexitem" >h5pset_sizes_f</a>
-<a href="./src/H5Pff_f90.html#robo353" class="indexitem" >h5pset_small_data_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo354" class="indexitem" >h5pset_sym_k_f</a>
-<a href="./src/H5Pff_f90.html#robo355" class="indexitem" >h5pset_szip_f</a>
-<a href="./src/H5Pff_f90.html#robo356" class="indexitem" >h5pset_userblock_f</a>
-<a href="./src/H5Pff_f90.html#robo357" class="indexitem" >h5punregister_f</a>
-<a href="./src/H5Rff_f90.html#robo64" class="indexitem" >H5R</a>
-<a href="./src/H5Rff_F03_f90.html#robo65" class="indexitem" >H5R (F03)</a>
-<a href="./src/H5Rff_F90_f90.html#robo66" class="indexitem" >H5R (F90)</a>
-<a href="./src/H5Rff_F03_f90.html#robo358" class="indexitem" >h5rcreate_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo359" class="indexitem" >h5rcreate_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo360" class="indexitem" >h5rcreate_ptr_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo362" class="indexitem" >h5rcreate_region_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo361" class="indexitem" >h5rcreate_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo363" class="indexitem" >h5rdereference_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo364" class="indexitem" >h5rdereference_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo365" class="indexitem" >h5rdereference_ptr_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo367" class="indexitem" >h5rdereference_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo366" class="indexitem" >h5rdereference_region_f</a>
-<a href="./src/H5Rf_c.html#robo67" class="indexitem" >H5Rf</a>
-<a href="./src/H5Rf_c.html#robo_top_of_doc" class="indexitem" >H5Rf.c</a>
-<a href="./src/H5Rff_f90.html#robo_top_of_doc" class="indexitem" >H5Rff.f90</a>
-<a href="./src/H5Rff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Rff_F03.f90</a>
-<a href="./src/H5Rff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Rff_F90.f90</a>
-<a href="./src/H5Rff_F03_f90.html#robo369" class="indexitem" >h5rget_name_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo368" class="indexitem" >h5rget_name_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo370" class="indexitem" >h5rget_name_ptr_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo371" class="indexitem" >h5rget_name_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo372" class="indexitem" >h5rget_name_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo373" class="indexitem" >h5rget_obj_type_f</a>
-<a href="./src/H5Rff_f90.html#robo374" class="indexitem" >h5rget_object_type_obj_f</a>
-<a href="./src/H5Rff_f90.html#robo375" class="indexitem" >h5rget_region_region_f</a>
-<a href="./src/H5Sff_f90.html#robo68" class="indexitem" >H5S</a>
-<a href="./src/H5Sff_f90.html#robo376" class="indexitem" >h5sclose_f</a>
-<a href="./src/H5Sff_f90.html#robo377" class="indexitem" >h5scopy_f</a>
-<a href="./src/H5Sff_f90.html#robo378" class="indexitem" >h5screate_f</a>
-<a href="./src/H5Sff_f90.html#robo379" class="indexitem" >h5screate_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo380" class="indexitem" >H5Sdecode_f</a>
-<a href="./src/H5Sff_f90.html#robo381" class="indexitem" >H5Sencode_f</a>
-<a href="./src/H5Sff_f90.html#robo382" class="indexitem" >h5sextent_copy_f</a>
-<a href="./src/H5Sff_f90.html#robo383" class="indexitem" >h5sextent_equal_f</a>
-<a href="./src/H5Sf_c.html#robo69" class="indexitem" >H5Sf</a>
-<a href="./src/H5Sf_c.html#robo_top_of_doc" class="indexitem" >H5Sf.c</a>
-<a href="./src/H5Sff_f90.html#robo_top_of_doc" class="indexitem" >H5Sff.f90</a>
-<a href="./src/H5Sff_f90.html#robo384" class="indexitem" >h5sget_select_bounds_f</a>
-<a href="./src/H5Sff_f90.html#robo385" class="indexitem" >h5sget_select_elem_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo386" class="indexitem" >h5sget_select_elem_pointlist_f</a>
-<a href="./src/H5Sff_f90.html#robo387" class="indexitem" >h5sget_select_hyper_blocklist_f</a>
-<a href="./src/H5Sff_f90.html#robo388" class="indexitem" >h5sget_select_hyper_nblocks_f</a>
-<a href="./src/H5Sff_f90.html#robo389" class="indexitem" >h5sget_select_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo390" class="indexitem" >h5sget_select_type_f</a>
-<a href="./src/H5Sff_f90.html#robo391" class="indexitem" >h5sget_simple_extent_dims_f</a>
-<a href="./src/H5Sff_f90.html#robo392" class="indexitem" >h5sget_simple_extent_ndims_f</a>
-<a href="./src/H5Sff_f90.html#robo393" class="indexitem" >h5sget_simple_extent_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo394" class="indexitem" >h5sget_simple_extent_type_f</a>
-<a href="./src/H5Sff_f90.html#robo395" class="indexitem" >h5sis_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo396" class="indexitem" >h5soffset_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo397" class="indexitem" >h5sselect_all_f</a>
-<a href="./src/H5Sff_f90.html#robo398" class="indexitem" >h5sselect_elements_f</a>
-<a href="./src/H5Sff_f90.html#robo399" class="indexitem" >h5sselect_hyperslab_f</a>
-<a href="./src/H5Sff_f90.html#robo400" class="indexitem" >h5sselect_none_f</a>
-<a href="./src/H5Sff_f90.html#robo401" class="indexitem" >h5sselect_valid_f</a>
-<a href="./src/H5Sff_f90.html#robo402" class="indexitem" >h5sset_extent_none_f</a>
-<a href="./src/H5Sff_f90.html#robo403" class="indexitem" >h5sset_extent_simple_f</a>
-<a href="./src/H5Tff_f90.html#robo70" class="indexitem" >H5T</a>
-<a href="./src/H5Tff_F03_f90.html#robo71" class="indexitem" >H5T (F03)</a>
-<a href="./src/H5Tff_F90_f90.html#robo72" class="indexitem" >H5T (F90)</a>
-<a href="./src/H5Tff_f90.html#robo404" class="indexitem" >h5tarray_create_f</a>
-<a href="./src/H5Tff_f90.html#robo405" class="indexitem" >h5tclose_f</a>
-<a href="./src/H5Tff_f90.html#robo406" class="indexitem" >h5tcommit_anon_f</a>
-<a href="./src/H5Tff_f90.html#robo407" class="indexitem" >h5tcommit_f</a>
-<a href="./src/H5Tff_f90.html#robo408" class="indexitem" >h5tcommitted_f</a>
-<a href="./src/H5Tff_f90.html#robo409" class="indexitem" >h5tcompiler_conv_f</a>
-<a href="./src/H5Tff_F03_f90.html#robo410" class="indexitem" >H5Tconvert_f</a>
-<a href="./src/H5Tff_f90.html#robo411" class="indexitem" >h5tcopy_f</a>
-<a href="./src/H5Tff_f90.html#robo412" class="indexitem" >h5tcreate_f</a>
-<a href="./src/H5Tff_f90.html#robo413" class="indexitem" >H5Tdecode_f</a>
-<a href="./src/H5Tff_f90.html#robo414" class="indexitem" >h5tenaum_insert_f</a>
-<a href="./src/H5Tff_f90.html#robo415" class="indexitem" >H5Tencode_f</a>
-<a href="./src/H5Tff_f90.html#robo416" class="indexitem" >h5tenum_create_f</a>
-<a href="./src/H5Tff_f90.html#robo417" class="indexitem" >h5tenum_nameof_f</a>
-<a href="./src/H5Tff_f90.html#robo418" class="indexitem" >h5tenum_valuof_f</a>
-<a href="./src/H5Tff_f90.html#robo419" class="indexitem" >h5tequal_f</a>
-<a href="./src/H5test_kind_f90.html#robo420" class="indexitem" >H5test_kind</a>
-<a href="./src/H5test_kind_f90.html#robo_top_of_doc" class="indexitem" >H5test_kind.f90</a>
-<a href="./src/H5test_kind_SIZEOF_f90.html#robo421" class="indexitem" >H5test_kind_SIZEOF</a>
-<a href="./src/H5test_kind_SIZEOF_f90.html#robo_top_of_doc" class="indexitem" >H5test_kind_SIZEOF.f90</a>
-<a href="./src/H5Tf_c.html#robo73" class="indexitem" >H5Tf</a>
-<a href="./src/H5Tf_c.html#robo_top_of_doc" class="indexitem" >H5Tf.c</a>
-<a href="./src/H5Tff_f90.html#robo_top_of_doc" class="indexitem" >H5Tff.f90</a>
-<a href="./src/H5Tff_F03_f90.html#robo_top_of_doc" class="indexitem" >H5Tff_F03.f90</a>
-<a href="./src/H5Tff_F90_f90.html#robo_top_of_doc" class="indexitem" >H5Tff_F90.f90</a>
-<a href="./src/H5Tff_f90.html#robo422" class="indexitem" >h5tget_array_dims_f</a>
-<a href="./src/H5Tff_f90.html#robo423" class="indexitem" >h5tget_array_ndims_f</a>
-<a href="./src/H5Tff_f90.html#robo424" class="indexitem" >h5tget_class_f</a>
-<a href="./src/H5Tff_f90.html#robo425" class="indexitem" >h5tget_create_plist_f</a>
-<a href="./src/H5Tff_f90.html#robo426" class="indexitem" >h5tget_cset_f</a>
-<a href="./src/H5Tff_f90.html#robo427" class="indexitem" >h5tget_ebias_f</a>
-<a href="./src/H5Tff_f90.html#robo428" class="indexitem" >h5tget_fields_f</a>
-<a href="./src/H5Tff_f90.html#robo429" class="indexitem" >h5tget_inpad_f</a>
-<a href="./src/H5Tff_f90.html#robo430" class="indexitem" >h5tget_member_class_f</a>
-<a href="./src/H5Tff_f90.html#robo431" class="indexitem" >h5tget_member_index_f</a>
-<a href="./src/H5Tff_f90.html#robo432" class="indexitem" >h5tget_member_name_f</a>
-<a href="./src/H5Tff_f90.html#robo433" class="indexitem" >h5tget_member_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo434" class="indexitem" >h5tget_member_type_f</a>
-<a href="./src/H5Tff_f90.html#robo435" class="indexitem" >h5tget_member_value_f</a>
-<a href="./src/H5Tff_f90.html#robo436" class="indexitem" >h5tget_native_type_f</a>
-<a href="./src/H5Tff_f90.html#robo437" class="indexitem" >h5tget_nmembers_f</a>
-<a href="./src/H5Tff_f90.html#robo438" class="indexitem" >h5tget_norm_f</a>
-<a href="./src/H5Tff_f90.html#robo439" class="indexitem" >h5tget_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo440" class="indexitem" >h5tget_order_f</a>
-<a href="./src/H5Tff_f90.html#robo441" class="indexitem" >h5tget_pad_f</a>
-<a href="./src/H5Tff_f90.html#robo442" class="indexitem" >h5tget_precision_f</a>
-<a href="./src/H5Tff_f90.html#robo443" class="indexitem" >h5tget_sign_f</a>
-<a href="./src/H5Tff_f90.html#robo444" class="indexitem" >h5tget_size_f</a>
-<a href="./src/H5Tff_f90.html#robo445" class="indexitem" >h5tget_strpad_f</a>
-<a href="./src/H5Tff_f90.html#robo446" class="indexitem" >h5tget_super_f</a>
-<a href="./src/H5Tff_f90.html#robo447" class="indexitem" >h5tget_tag_f</a>
-<a href="./src/H5Tff_f90.html#robo448" class="indexitem" >h5tinsert_f</a>
-<a href="./src/H5Tff_f90.html#robo449" class="indexitem" >h5tis_variable_str_f</a>
-<a href="./src/H5Tff_f90.html#robo450" class="indexitem" >h5topen_f</a>
-<a href="./src/H5Tff_f90.html#robo451" class="indexitem" >h5tpack_f</a>
-<a href="./src/H5Tff_f90.html#robo452" class="indexitem" >h5tset_cset_f</a>
-<a href="./src/H5Tff_f90.html#robo453" class="indexitem" >h5tset_ebias_f</a>
-<a href="./src/H5Tff_f90.html#robo454" class="indexitem" >h5tset_fields_f</a>
-<a href="./src/H5Tff_f90.html#robo455" class="indexitem" >h5tset_inpad_f</a>
-<a href="./src/H5Tff_f90.html#robo456" class="indexitem" >h5tset_norm_f</a>
-<a href="./src/H5Tff_f90.html#robo457" class="indexitem" >h5tset_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo458" class="indexitem" >h5tset_order_f</a>
-<a href="./src/H5Tff_f90.html#robo459" class="indexitem" >h5tset_pad_f</a>
-<a href="./src/H5Tff_f90.html#robo460" class="indexitem" >h5tset_precision_f</a>
-<a href="./src/H5Tff_f90.html#robo461" class="indexitem" >h5tset_sign_f</a>
-<a href="./src/H5Tff_f90.html#robo462" class="indexitem" >h5tset_size_f</a>
-<a href="./src/H5Tff_f90.html#robo463" class="indexitem" >h5tset_strpad_f</a>
-<a href="./src/H5Tff_f90.html#robo464" class="indexitem" >h5tset_tag_f</a>
-<a href="./src/H5Tff_f90.html#robo465" class="indexitem" >h5tvlen_create_f</a>
-<a href="./src/H5Zff_f90.html#robo74" class="indexitem" >H5Z</a>
-<a href="./src/H5Zf_c.html#robo75" class="indexitem" >H5Zf</a>
-<a href="./src/H5Zf_c.html#robo_top_of_doc" class="indexitem" >H5Zf.c</a>
-<a href="./src/H5Zff_f90.html#robo_top_of_doc" class="indexitem" >H5Zff.f90</a>
-<a href="./src/H5Zff_f90.html#robo466" class="indexitem" >h5zfilter_avail_f</a>
-<a href="./src/H5Zff_f90.html#robo467" class="indexitem" >h5zget_filter_info_f</a>
-<a href="./src/H5Zff_f90.html#robo468" class="indexitem" >h5zunregister_f</a>
-<a href="./src/HDF5_f90.html#robo76" class="indexitem" >HDF5</a>
-<a href="./src/HDF5mpio_f90.html#robo77" class="indexitem" >HDF5 (mpio)</a>
-<a href="./src/HDF5_f90.html#robo_top_of_doc" class="indexitem" >HDF5.f90</a>
-<a href="./src/HDF5mpio_f90.html#robo_top_of_doc" class="indexitem" >HDF5mpio.f90</a>
-<h2><a name="S"></a>S</h2><a href="./src/H5_DBLE_InterfaceExclude_f90.html#robo78" class="indexitem" >src/H5_DBLE_InterfaceExclude.f90</a>
-<a href="./src/H5_DBLE_InterfaceInclude_f90.html#robo79" class="indexitem" >src/H5_DBLE_InterfaceInclude.f90</a>
-<h2><a name="T"></a>T</h2><a href="./test/t_c.html#robo_top_of_doc" class="indexitem" >t.c</a>
-<a href="./test/tf_f90.html#robo_top_of_doc" class="indexitem" >tf.f90</a>
-<a href="./test/tH5A_f90.html#robo_top_of_doc" class="indexitem" >tH5A.f90</a>
-<a href="./test/tH5A_1_8_f90.html#robo_top_of_doc" class="indexitem" >tH5A_1_8.f90</a>
-<a href="./test/tH5D_f90.html#robo_top_of_doc" class="indexitem" >tH5D.f90</a>
-<a href="./test/tH5E_f90.html#robo_top_of_doc" class="indexitem" >tH5E.f90</a>
-<a href="./test/tH5E_F03_f90.html#robo_top_of_doc" class="indexitem" >tH5E_F03.f90</a>
-<a href="./test/tH5F_f90.html#robo_top_of_doc" class="indexitem" >tH5F.f90</a>
-<a href="./test/tH5G_f90.html#robo_top_of_doc" class="indexitem" >tH5G.f90</a>
-<a href="./test/tH5G_1_8_f90.html#robo_top_of_doc" class="indexitem" >tH5G_1_8.f90</a>
-<a href="./test/tH5I_f90.html#robo_top_of_doc" class="indexitem" >tH5I.f90</a>
-<a href="./test/tH5L_F03_f90.html#robo_top_of_doc" class="indexitem" >tH5L_F03.f90</a>
-<a href="./test/tH5O_f90.html#robo_top_of_doc" class="indexitem" >tH5O.f90</a>
-<a href="./test/tH5P_f90.html#robo_top_of_doc" class="indexitem" >tH5P.f90</a>
-<a href="./test/tH5P_F03_f90.html#robo_top_of_doc" class="indexitem" >tH5P_F03.f90</a>
-<a href="./test/tH5R_f90.html#robo_top_of_doc" class="indexitem" >tH5R.f90</a>
-<a href="./test/tH5S_f90.html#robo_top_of_doc" class="indexitem" >tH5S.f90</a>
-<a href="./test/tH5Sselect_f90.html#robo_top_of_doc" class="indexitem" >tH5Sselect.f90</a>
-<a href="./test/tH5T_f90.html#robo_top_of_doc" class="indexitem" >tH5T.f90</a>
-<a href="./test/tH5T_F03_f90.html#robo_top_of_doc" class="indexitem" >tH5T_F03.f90</a>
-<a href="./test/tH5VL_f90.html#robo_top_of_doc" class="indexitem" >tH5VL.f90</a>
-<a href="./test/tH5Z_f90.html#robo_top_of_doc" class="indexitem" >tH5Z.f90</a>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robo_functions.html b/fortran/doc/DevelGuide/robo_functions.html
deleted file mode 100644
index e4f253a..0000000
--- a/fortran/doc/DevelGuide/robo_functions.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Functions</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h1>Functions</h1>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-<h2><a name="H"></a>H</h2><a href="./src/H5_ff_f90.html#robo177" class="indexitem" >h5kind_to_type</a>
-<a href="./src/H5_ff_F03_f90.html#robo194" class="indexitem" >h5offsetof</a>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robo_modules.html b/fortran/doc/DevelGuide/robo_modules.html
deleted file mode 100644
index 8e57f38..0000000
--- a/fortran/doc/DevelGuide/robo_modules.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Modules</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h1>Modules</h1>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-<h2><a name="F"></a>F</h2><a href="./test/fflush1_f90.html#robo0" class="indexitem" >fortran/test/fflush1.f90</a>
-<a href="./test/fflush2_f90.html#robo1" class="indexitem" >fortran/test/fflush2.f90</a>
-<a href="./test/fortranlib_test_f90.html#robo2" class="indexitem" >fortran/test/fortranlib_test.f90</a>
-<a href="./test/fortranlib_test_1_8_f90.html#robo3" class="indexitem" >fortran/test/fortranlib_test_1_8.f90</a>
-<a href="./test/fortranlib_test_F03_f90.html#robo4" class="indexitem" >fortran/test/fortranlib_test_F03.f90</a>
-<a href="./test/t_c.html#robo5" class="indexitem" >fortran/test/tc.c</a>
-<a href="./test/tf_f90.html#robo6" class="indexitem" >fortran/test/tf.f90</a>
-<a href="./test/tH5A_f90.html#robo7" class="indexitem" >fortran/test/tH5A.f90</a>
-<a href="./test/tH5A_1_8_f90.html#robo8" class="indexitem" >fortran/test/tH5A_1_8.f90</a>
-<a href="./test/tH5D_f90.html#robo9" class="indexitem" >fortran/test/tH5D.f90</a>
-<a href="./test/tH5E_f90.html#robo10" class="indexitem" >fortran/test/tH5E.f90</a>
-<a href="./test/tH5E_F03_f90.html#robo11" class="indexitem" >fortran/test/tH5E_F03.f90</a>
-<a href="./test/tH5F_f90.html#robo12" class="indexitem" >fortran/test/tH5F.f90</a>
-<a href="./test/tH5G_f90.html#robo13" class="indexitem" >fortran/test/tH5G.f90</a>
-<a href="./test/tH5G_1_8_f90.html#robo14" class="indexitem" >fortran/test/tH5G_1_8.f90</a>
-<a href="./test/tH5I_f90.html#robo15" class="indexitem" >fortran/test/tH5I.f90</a>
-<a href="./test/tH5L_F03_f90.html#robo16" class="indexitem" >fortran/test/tH5L_F03.f90</a>
-<a href="./test/tH5O_f90.html#robo17" class="indexitem" >fortran/test/tH5O.f90</a>
-<a href="./test/tH5P_f90.html#robo18" class="indexitem" >fortran/test/tH5P.f90</a>
-<a href="./test/tH5P_F03_f90.html#robo19" class="indexitem" >fortran/test/tH5P_F03.f90</a>
-<a href="./test/tH5R_f90.html#robo20" class="indexitem" >fortran/test/tH5R.f90</a>
-<a href="./test/tH5S_f90.html#robo21" class="indexitem" >fortran/test/tH5S.f90</a>
-<a href="./test/tH5Sselect_f90.html#robo22" class="indexitem" >fortran/test/tH5Sselect.f90</a>
-<a href="./test/tH5T_f90.html#robo23" class="indexitem" >fortran/test/tH5T.f90</a>
-<a href="./test/tH5T_F03_f90.html#robo24" class="indexitem" >fortran/test/tH5T_F03.f90</a>
-<a href="./test/tH5VL_f90.html#robo25" class="indexitem" >fortran/test/tH5VL.f90</a>
-<a href="./test/tH5Z_f90.html#robo26" class="indexitem" >fortran/test/tH5Z.f90</a>
-<h2><a name="H"></a>H</h2><a href="./src/H5Aff_f90.html#robo27" class="indexitem" >H5A</a>
-<a href="./src/H5Aff_F03_f90.html#robo28" class="indexitem" >H5A (F03)</a>
-<a href="./src/H5Aff_F90_f90.html#robo29" class="indexitem" >H5A (F90)</a>
-<a href="./src/H5Af_c.html#robo30" class="indexitem" >H5Af</a>
-<a href="./src/H5Dff_f90.html#robo31" class="indexitem" >H5D</a>
-<a href="./src/H5Dff_F03_f90.html#robo32" class="indexitem" >H5D (F03)</a>
-<a href="./src/H5Dff_F90_f90.html#robo33" class="indexitem" >H5D (F90)</a>
-<a href="./src/H5Df_c.html#robo34" class="indexitem" >H5Df</a>
-<a href="./src/H5Eff_f90.html#robo35" class="indexitem" >H5E</a>
-<a href="./src/H5Eff_F03_f90.html#robo36" class="indexitem" >H5E (F03)</a>
-<a href="./src/H5Eff_F90_f90.html#robo37" class="indexitem" >H5E (F90)</a>
-<a href="./src/H5Ef_c.html#robo38" class="indexitem" >H5Ef</a>
-<a href="./src/H5Fff_f90.html#robo39" class="indexitem" >H5F</a>
-<a href="./src/H5f90kit_c.html#robo40" class="indexitem" >H5f90kit</a>
-<a href="./src/H5FDmpioff_f90.html#robo41" class="indexitem" >H5FDMPIO</a>
-<a href="./src/H5FDmpiof_c.html#robo42" class="indexitem" >H5FDmpiof</a>
-<a href="./src/H5Ff_c.html#robo43" class="indexitem" >H5Ff</a>
-<a href="./src/H5Gff_f90.html#robo44" class="indexitem" >H5G</a>
-<a href="./src/H5Gf_c.html#robo45" class="indexitem" >H5Gf</a>
-<a href="./src/H5f90global_f90.html#robo46" class="indexitem" >H5GLOBAL</a>
-<a href="./src/H5Iff_f90.html#robo47" class="indexitem" >H5I</a>
-<a href="./src/H5If_c.html#robo48" class="indexitem" >H5If</a>
-<a href="./src/H5Lff_f90.html#robo49" class="indexitem" >H5L</a>
-<a href="./src/H5Lff_F03_f90.html#robo50" class="indexitem" >H5L (F03)</a>
-<a href="./src/H5Lff_F90_f90.html#robo51" class="indexitem" >H5L (F90)</a>
-<a href="./src/H5Lf_c.html#robo52" class="indexitem" >H5Lf</a>
-<a href="./src/H5_ff_f90.html#robo53" class="indexitem" >H5LIB</a>
-<a href="./src/H5_ff_F03_f90.html#robo54" class="indexitem" >H5LIB_PROVISIONAL</a>
-<a href="./src/H5_ff_F90_f90.html#robo55" class="indexitem" >H5LIB_PROVISIONAL (F90)</a>
-<a href="./src/H5Off_f90.html#robo56" class="indexitem" >H5O</a>
-<a href="./src/H5Off_F03_f90.html#robo57" class="indexitem" >H5O (F03)</a>
-<a href="./src/H5Off_F90_f90.html#robo58" class="indexitem" >H5O (F90)</a>
-<a href="./src/H5Of_c.html#robo59" class="indexitem" >H5Of</a>
-<a href="./src/H5Pff_F90_f90.html#robo60" class="indexitem" >H5P (_F90)</a>
-<a href="./src/H5Pff_F03_f90.html#robo61" class="indexitem" >H5P (F03)</a>
-<a href="./src/H5Pff_f90.html#robo62" class="indexitem" >H5P (F90)</a>
-<a href="./src/H5Pf_c.html#robo63" class="indexitem" >H5Pf</a>
-<a href="./src/H5Rff_f90.html#robo64" class="indexitem" >H5R</a>
-<a href="./src/H5Rff_F03_f90.html#robo65" class="indexitem" >H5R (F03)</a>
-<a href="./src/H5Rff_F90_f90.html#robo66" class="indexitem" >H5R (F90)</a>
-<a href="./src/H5Rf_c.html#robo67" class="indexitem" >H5Rf</a>
-<a href="./src/H5Sff_f90.html#robo68" class="indexitem" >H5S</a>
-<a href="./src/H5Sf_c.html#robo69" class="indexitem" >H5Sf</a>
-<a href="./src/H5Tff_f90.html#robo70" class="indexitem" >H5T</a>
-<a href="./src/H5Tff_F03_f90.html#robo71" class="indexitem" >H5T (F03)</a>
-<a href="./src/H5Tff_F90_f90.html#robo72" class="indexitem" >H5T (F90)</a>
-<a href="./src/H5Tf_c.html#robo73" class="indexitem" >H5Tf</a>
-<a href="./src/H5Zff_f90.html#robo74" class="indexitem" >H5Z</a>
-<a href="./src/H5Zf_c.html#robo75" class="indexitem" >H5Zf</a>
-<a href="./src/HDF5_f90.html#robo76" class="indexitem" >HDF5</a>
-<a href="./src/HDF5mpio_f90.html#robo77" class="indexitem" >HDF5 (mpio)</a>
-<h2><a name="S"></a>S</h2><a href="./src/H5_DBLE_InterfaceExclude_f90.html#robo78" class="indexitem" >src/H5_DBLE_InterfaceExclude.f90</a>
-<a href="./src/H5_DBLE_InterfaceInclude_f90.html#robo79" class="indexitem" >src/H5_DBLE_InterfaceInclude.f90</a>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robo_programs.html b/fortran/doc/DevelGuide/robo_programs.html
deleted file mode 100644
index 8c35230..0000000
--- a/fortran/doc/DevelGuide/robo_programs.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Programs</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="#top">Programs</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h1>Programs</h1>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-<h2><a name="H"></a>H</h2><a href="./src/H5test_kind_f90.html#robo132" class="indexitem" >H5test_kind</a>
-<a href="./src/H5test_kind_SIZEOF_f90.html#robo133" class="indexitem" >H5test_kind_SIZEOF</a>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Wed Oct 22 2008 15:34:43
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robo_sourcefiles.html b/fortran/doc/DevelGuide/robo_sourcefiles.html
deleted file mode 100644
index 63a8637..0000000
--- a/fortran/doc/DevelGuide/robo_sourcefiles.html
+++ /dev/null
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Sourcefiles</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<ul>
-<li>
-./<ul>
-<li>
-./doc/<ul>
-</ul>
-</li>
-<li>
-./examples/<ul>
-</ul>
-</li>
-<li>
-./src/<ul>
-<li>
-<a href="./src/H5_DBLE_InterfaceExclude_f90.html#robo_top_of_doc"><tt>
-H5_DBLE_InterfaceExclude.f90</tt></a></li>
-<li>
-<a href="./src/H5_DBLE_InterfaceInclude_f90.html#robo_top_of_doc"><tt>
-H5_DBLE_InterfaceInclude.f90</tt></a></li>
-<li>
-<a href="./src/H5_ff_f90.html#robo_top_of_doc"><tt>
-H5_ff.f90</tt></a></li>
-<li>
-<a href="./src/H5_ff_F03_f90.html#robo_top_of_doc"><tt>
-H5_ff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5_ff_F90_f90.html#robo_top_of_doc"><tt>
-H5_ff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Af_c.html#robo_top_of_doc"><tt>
-H5Af.c</tt></a></li>
-<li>
-<a href="./src/H5Aff_f90.html#robo_top_of_doc"><tt>
-H5Aff.f90</tt></a></li>
-<li>
-<a href="./src/H5Aff_F03_f90.html#robo_top_of_doc"><tt>
-H5Aff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Aff_F90_f90.html#robo_top_of_doc"><tt>
-H5Aff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Df_c.html#robo_top_of_doc"><tt>
-H5Df.c</tt></a></li>
-<li>
-<a href="./src/H5Dff_f90.html#robo_top_of_doc"><tt>
-H5Dff.f90</tt></a></li>
-<li>
-<a href="./src/H5Dff_F03_f90.html#robo_top_of_doc"><tt>
-H5Dff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Dff_F90_f90.html#robo_top_of_doc"><tt>
-H5Dff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Ef_c.html#robo_top_of_doc"><tt>
-H5Ef.c</tt></a></li>
-<li>
-<a href="./src/H5Eff_f90.html#robo_top_of_doc"><tt>
-H5Eff.f90</tt></a></li>
-<li>
-<a href="./src/H5Eff_F03_f90.html#robo_top_of_doc"><tt>
-H5Eff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Eff_F90_f90.html#robo_top_of_doc"><tt>
-H5Eff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5f90global_f90.html#robo_top_of_doc"><tt>
-H5f90global.f90</tt></a></li>
-<li>
-<a href="./src/H5f90kit_c.html#robo_top_of_doc"><tt>
-H5f90kit.c</tt></a></li>
-<li>
-<a href="./src/H5FDmpiof_c.html#robo_top_of_doc"><tt>
-H5FDmpiof.c</tt></a></li>
-<li>
-<a href="./src/H5FDmpioff_f90.html#robo_top_of_doc"><tt>
-H5FDmpioff.f90</tt></a></li>
-<li>
-<a href="./src/H5Ff_c.html#robo_top_of_doc"><tt>
-H5Ff.c</tt></a></li>
-<li>
-<a href="./src/H5Fff_f90.html#robo_top_of_doc"><tt>
-H5Fff.f90</tt></a></li>
-<li>
-<a href="./src/H5Gf_c.html#robo_top_of_doc"><tt>
-H5Gf.c</tt></a></li>
-<li>
-<a href="./src/H5Gff_f90.html#robo_top_of_doc"><tt>
-H5Gff.f90</tt></a></li>
-<li>
-<a href="./src/H5If_c.html#robo_top_of_doc"><tt>
-H5If.c</tt></a></li>
-<li>
-<a href="./src/H5Iff_f90.html#robo_top_of_doc"><tt>
-H5Iff.f90</tt></a></li>
-<li>
-<a href="./src/H5Lf_c.html#robo_top_of_doc"><tt>
-H5Lf.c</tt></a></li>
-<li>
-<a href="./src/H5Lff_f90.html#robo_top_of_doc"><tt>
-H5Lff.f90</tt></a></li>
-<li>
-<a href="./src/H5Lff_F03_f90.html#robo_top_of_doc"><tt>
-H5Lff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Lff_F90_f90.html#robo_top_of_doc"><tt>
-H5Lff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5match_types_c.html#robo_top_of_doc"><tt>
-H5match_types.c</tt></a></li>
-<li>
-<a href="./src/H5Of_c.html#robo_top_of_doc"><tt>
-H5Of.c</tt></a></li>
-<li>
-<a href="./src/H5Off_f90.html#robo_top_of_doc"><tt>
-H5Off.f90</tt></a></li>
-<li>
-<a href="./src/H5Off_F03_f90.html#robo_top_of_doc"><tt>
-H5Off_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Off_F90_f90.html#robo_top_of_doc"><tt>
-H5Off_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Pf_c.html#robo_top_of_doc"><tt>
-H5Pf.c</tt></a></li>
-<li>
-<a href="./src/H5Pff_f90.html#robo_top_of_doc"><tt>
-H5Pff.f90</tt></a></li>
-<li>
-<a href="./src/H5Pff_F03_f90.html#robo_top_of_doc"><tt>
-H5Pff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Pff_F90_f90.html#robo_top_of_doc"><tt>
-H5Pff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Rf_c.html#robo_top_of_doc"><tt>
-H5Rf.c</tt></a></li>
-<li>
-<a href="./src/H5Rff_f90.html#robo_top_of_doc"><tt>
-H5Rff.f90</tt></a></li>
-<li>
-<a href="./src/H5Rff_F03_f90.html#robo_top_of_doc"><tt>
-H5Rff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Rff_F90_f90.html#robo_top_of_doc"><tt>
-H5Rff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Sf_c.html#robo_top_of_doc"><tt>
-H5Sf.c</tt></a></li>
-<li>
-<a href="./src/H5Sff_f90.html#robo_top_of_doc"><tt>
-H5Sff.f90</tt></a></li>
-<li>
-<a href="./src/H5test_kind_f90.html#robo_top_of_doc"><tt>
-H5test_kind.f90</tt></a></li>
-<li>
-<a href="./src/H5test_kind_SIZEOF_f90.html#robo_top_of_doc"><tt>
-H5test_kind_SIZEOF.f90</tt></a></li>
-<li>
-<a href="./src/H5Tf_c.html#robo_top_of_doc"><tt>
-H5Tf.c</tt></a></li>
-<li>
-<a href="./src/H5Tff_f90.html#robo_top_of_doc"><tt>
-H5Tff.f90</tt></a></li>
-<li>
-<a href="./src/H5Tff_F03_f90.html#robo_top_of_doc"><tt>
-H5Tff_F03.f90</tt></a></li>
-<li>
-<a href="./src/H5Tff_F90_f90.html#robo_top_of_doc"><tt>
-H5Tff_F90.f90</tt></a></li>
-<li>
-<a href="./src/H5Zf_c.html#robo_top_of_doc"><tt>
-H5Zf.c</tt></a></li>
-<li>
-<a href="./src/H5Zff_f90.html#robo_top_of_doc"><tt>
-H5Zff.f90</tt></a></li>
-<li>
-<a href="./src/HDF5_f90.html#robo_top_of_doc"><tt>
-HDF5.f90</tt></a></li>
-<li>
-<a href="./src/HDF5mpio_f90.html#robo_top_of_doc"><tt>
-HDF5mpio.f90</tt></a></li>
-</ul>
-</li>
-<li>
-./test/<ul>
-<li>
-<a href="./test/fflush1_f90.html#robo_top_of_doc"><tt>
-fflush1.f90</tt></a></li>
-<li>
-<a href="./test/fflush2_f90.html#robo_top_of_doc"><tt>
-fflush2.f90</tt></a></li>
-<li>
-<a href="./test/fortranlib_test_f90.html#robo_top_of_doc"><tt>
-fortranlib_test.f90</tt></a></li>
-<li>
-<a href="./test/fortranlib_test_1_8_f90.html#robo_top_of_doc"><tt>
-fortranlib_test_1_8.f90</tt></a></li>
-<li>
-<a href="./test/fortranlib_test_F03_f90.html#robo_top_of_doc"><tt>
-fortranlib_test_F03.f90</tt></a></li>
-<li>
-<a href="./test/t_c.html#robo_top_of_doc"><tt>
-t.c</tt></a></li>
-<li>
-<a href="./test/tf_f90.html#robo_top_of_doc"><tt>
-tf.f90</tt></a></li>
-<li>
-<a href="./test/tH5A_f90.html#robo_top_of_doc"><tt>
-tH5A.f90</tt></a></li>
-<li>
-<a href="./test/tH5A_1_8_f90.html#robo_top_of_doc"><tt>
-tH5A_1_8.f90</tt></a></li>
-<li>
-<a href="./test/tH5D_f90.html#robo_top_of_doc"><tt>
-tH5D.f90</tt></a></li>
-<li>
-<a href="./test/tH5E_f90.html#robo_top_of_doc"><tt>
-tH5E.f90</tt></a></li>
-<li>
-<a href="./test/tH5E_F03_f90.html#robo_top_of_doc"><tt>
-tH5E_F03.f90</tt></a></li>
-<li>
-<a href="./test/tH5F_f90.html#robo_top_of_doc"><tt>
-tH5F.f90</tt></a></li>
-<li>
-<a href="./test/tH5G_f90.html#robo_top_of_doc"><tt>
-tH5G.f90</tt></a></li>
-<li>
-<a href="./test/tH5G_1_8_f90.html#robo_top_of_doc"><tt>
-tH5G_1_8.f90</tt></a></li>
-<li>
-<a href="./test/tH5I_f90.html#robo_top_of_doc"><tt>
-tH5I.f90</tt></a></li>
-<li>
-<a href="./test/tH5L_F03_f90.html#robo_top_of_doc"><tt>
-tH5L_F03.f90</tt></a></li>
-<li>
-<a href="./test/tH5O_f90.html#robo_top_of_doc"><tt>
-tH5O.f90</tt></a></li>
-<li>
-<a href="./test/tH5P_f90.html#robo_top_of_doc"><tt>
-tH5P.f90</tt></a></li>
-<li>
-<a href="./test/tH5P_F03_f90.html#robo_top_of_doc"><tt>
-tH5P_F03.f90</tt></a></li>
-<li>
-<a href="./test/tH5R_f90.html#robo_top_of_doc"><tt>
-tH5R.f90</tt></a></li>
-<li>
-<a href="./test/tH5S_f90.html#robo_top_of_doc"><tt>
-tH5S.f90</tt></a></li>
-<li>
-<a href="./test/tH5Sselect_f90.html#robo_top_of_doc"><tt>
-tH5Sselect.f90</tt></a></li>
-<li>
-<a href="./test/tH5T_f90.html#robo_top_of_doc"><tt>
-tH5T.f90</tt></a></li>
-<li>
-<a href="./test/tH5T_F03_f90.html#robo_top_of_doc"><tt>
-tH5T_F03.f90</tt></a></li>
-<li>
-<a href="./test/tH5VL_f90.html#robo_top_of_doc"><tt>
-tH5VL.f90</tt></a></li>
-<li>
-<a href="./test/tH5Z_f90.html#robo_top_of_doc"><tt>
-tH5Z.f90</tt></a></li>
-</ul>
-</li>
-<li>
-./testpar/<ul>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robo_subroutines.html b/fortran/doc/DevelGuide/robo_subroutines.html
deleted file mode 100644
index 0846c77..0000000
--- a/fortran/doc/DevelGuide/robo_subroutines.html
+++ /dev/null
@@ -1,421 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Subroutines</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="./toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h1>Subroutines</h1>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-<a href="./src/H5Pff_F03_f90.html#robo80" class="indexitem" > h5pget_double</a>
-<a href="./src/H5Pff_f90.html#robo81" class="indexitem" > h5pget_hyper_vector_size_f</a>
-<a href="./src/H5Pff_f90.html#robo82" class="indexitem" > h5pset_family_offset_f</a>
-<a href="./src/H5Pff_f90.html#robo83" class="indexitem" > h5pset_fapl_family_f</a>
-<a href="./src/H5Pff_f90.html#robo84" class="indexitem" > h5pset_meta_block_size_f</a>
-<h2><a name="H"></a>H</h2><a href="./src/H5Aff_f90.html#robo85" class="indexitem" >h5aclose_f</a>
-<a href="./src/H5Aff_f90.html#robo86" class="indexitem" >h5acreate_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo87" class="indexitem" >h5acreate_f</a>
-<a href="./src/H5Aff_f90.html#robo88" class="indexitem" >h5adelete_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo89" class="indexitem" >h5adelete_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo90" class="indexitem" >h5adelete_f</a>
-<a href="./src/H5Aff_f90.html#robo91" class="indexitem" >H5Aexists_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo92" class="indexitem" >H5Aexists_f</a>
-<a href="./src/H5Aff_f90.html#robo93" class="indexitem" >h5aget_create_plist_f</a>
-<a href="./src/H5Aff_f90.html#robo94" class="indexitem" >h5aget_info_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo95" class="indexitem" >h5aget_info_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo96" class="indexitem" >h5aget_info_f</a>
-<a href="./src/H5Aff_f90.html#robo97" class="indexitem" >h5aget_name_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo98" class="indexitem" >h5aget_name_f</a>
-<a href="./src/H5Aff_f90.html#robo99" class="indexitem" >h5aget_num_attrs_f</a>
-<a href="./src/H5Aff_f90.html#robo100" class="indexitem" >h5aget_space_f</a>
-<a href="./src/H5Aff_f90.html#robo101" class="indexitem" >h5aget_storage_size_f</a>
-<a href="./src/H5Aff_f90.html#robo102" class="indexitem" >h5aget_type_f</a>
-<a href="./src/H5Aff_f90.html#robo103" class="indexitem" >h5aopen_by_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo104" class="indexitem" >H5Aopen_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo105" class="indexitem" >h5aopen_f</a>
-<a href="./src/H5Aff_f90.html#robo106" class="indexitem" >h5aopen_idx_f</a>
-<a href="./src/H5Aff_f90.html#robo107" class="indexitem" >h5aopen_name_f</a>
-<a href="./src/H5Aff_F03_f90.html#robo108" class="indexitem" >h5aread_f</a>
-<a href="./src/H5Aff_f90.html#robo109" class="indexitem" >h5arename_by_name_f</a>
-<a href="./src/H5Aff_f90.html#robo110" class="indexitem" >h5arename_f</a>
-<a href="./src/H5_ff_f90.html#robo111" class="indexitem" >h5check_version_f</a>
-<a href="./src/H5_ff_f90.html#robo112" class="indexitem" >h5close_f</a>
-<a href="./src/H5Dff_f90.html#robo113" class="indexitem" >h5dclose_f</a>
-<a href="./src/H5Dff_f90.html#robo114" class="indexitem" >h5dcreate_anon_f</a>
-<a href="./src/H5Dff_f90.html#robo115" class="indexitem" >h5dcreate_f</a>
-<a href="./src/H5Dff_f90.html#robo116" class="indexitem" >h5dget_access_plist_f</a>
-<a href="./src/H5Dff_f90.html#robo117" class="indexitem" >h5dget_create_plist_f</a>
-<a href="./src/H5Dff_f90.html#robo118" class="indexitem" >h5dget_space_f</a>
-<a href="./src/H5Dff_f90.html#robo119" class="indexitem" >h5dget_space_status_f</a>
-<a href="./src/H5Dff_f90.html#robo120" class="indexitem" >h5dget_storage_size_f</a>
-<a href="./src/H5Dff_f90.html#robo121" class="indexitem" >h5dget_type_f</a>
-<a href="./src/H5_ff_f90.html#robo122" class="indexitem" >h5dont_atexit_f</a>
-<a href="./src/H5Dff_f90.html#robo123" class="indexitem" >h5dopen_f</a>
-<a href="./src/H5Dff_F90_f90.html#robo124" class="indexitem" >h5dread_f</a>
-<a href="./src/H5Dff_f90.html#robo125" class="indexitem" >h5dset_extent</a>
-<a href="./src/H5Dff_f90.html#robo126" class="indexitem" >h5dvlen_get_max_len_f</a>
-<a href="./src/H5Dff_F03_f90.html#robo127" class="indexitem" >h5dvlen_reclaim</a>
-<a href="./src/H5Eff_f90.html#robo128" class="indexitem" >h5eclear_f</a>
-<a href="./src/H5Eff_F03_f90.html#robo129" class="indexitem" >h5eget_auto_f</a>
-<a href="./src/H5Eff_f90.html#robo130" class="indexitem" >h5eget_major_f</a>
-<a href="./src/H5Eff_f90.html#robo131" class="indexitem" >h5eget_minor_f</a>
-<a href="./src/H5Eff_f90.html#robo132" class="indexitem" >h5eprint_f</a>
-<a href="./src/H5Eff_F03_f90.html#robo133" class="indexitem" >h5eset_auto2_f</a>
-<a href="./src/H5Eff_F90_f90.html#robo134" class="indexitem" >h5eset_auto_f</a>
-<a href="./src/H5Fff_f90.html#robo135" class="indexitem" >h5fclose_f</a>
-<a href="./src/H5Fff_f90.html#robo136" class="indexitem" >h5fcreate_f</a>
-<a href="./src/H5Fff_f90.html#robo137" class="indexitem" >h5fflush_f</a>
-<a href="./src/H5Fff_f90.html#robo138" class="indexitem" >h5fget_access_plist_f</a>
-<a href="./src/H5Fff_f90.html#robo139" class="indexitem" >h5fget_create_plist_f</a>
-<a href="./src/H5Fff_f90.html#robo140" class="indexitem" >h5fget_filesize_f</a>
-<a href="./src/H5Fff_f90.html#robo141" class="indexitem" >h5fget_freespace_f</a>
-<a href="./src/H5Fff_f90.html#robo142" class="indexitem" >h5fget_name_f</a>
-<a href="./src/H5Fff_f90.html#robo143" class="indexitem" >h5fget_obj_count_f</a>
-<a href="./src/H5Fff_f90.html#robo144" class="indexitem" >h5fget_obj_ids_f</a>
-<a href="./src/H5Fff_f90.html#robo145" class="indexitem" >h5fis_hdf5_f</a>
-<a href="./src/H5Fff_f90.html#robo146" class="indexitem" >h5fmount_f</a>
-<a href="./src/H5Fff_f90.html#robo147" class="indexitem" >h5fopen_f</a>
-<a href="./src/H5Fff_f90.html#robo148" class="indexitem" >h5freopen_f</a>
-<a href="./src/H5Fff_f90.html#robo149" class="indexitem" >h5funmount_f</a>
-<a href="./src/H5_ff_f90.html#robo150" class="indexitem" >h5garbage_collect_f</a>
-<a href="./src/H5Gff_f90.html#robo151" class="indexitem" >h5gclose_f</a>
-<a href="./src/H5Gff_f90.html#robo152" class="indexitem" >H5Gcreate_anon_f</a>
-<a href="./src/H5Gff_f90.html#robo153" class="indexitem" >h5gcreate_f</a>
-<a href="./src/H5_ff_f90.html#robo154" class="indexitem" >h5get_libversion_f</a>
-<a href="./src/H5Gff_f90.html#robo155" class="indexitem" >h5gget_comment_f</a>
-<a href="./src/H5Gff_f90.html#robo156" class="indexitem" >H5Gget_create_plist_f</a>
-<a href="./src/H5Gff_f90.html#robo157" class="indexitem" >h5gget_info_by_idx_f</a>
-<a href="./src/H5Gff_f90.html#robo158" class="indexitem" >h5gget_info_by_name_f</a>
-<a href="./src/H5Gff_f90.html#robo159" class="indexitem" >h5gget_info_f</a>
-<a href="./src/H5Gff_f90.html#robo160" class="indexitem" >h5gget_linkval_f</a>
-<a href="./src/H5Gff_f90.html#robo161" class="indexitem" >h5gget_obj_info_idx_f</a>
-<a href="./src/H5Gff_f90.html#robo162" class="indexitem" >h5glink2_f</a>
-<a href="./src/H5Gff_f90.html#robo163" class="indexitem" >h5glink_f</a>
-<a href="./src/H5Gff_f90.html#robo164" class="indexitem" >h5gmove2_f</a>
-<a href="./src/H5Gff_f90.html#robo165" class="indexitem" >h5gmove_f</a>
-<a href="./src/H5Gff_f90.html#robo166" class="indexitem" >h5gn_members_f</a>
-<a href="./src/H5Gff_f90.html#robo167" class="indexitem" >h5gopen_f</a>
-<a href="./src/H5Gff_f90.html#robo168" class="indexitem" >h5gset_comment_f</a>
-<a href="./src/H5Gff_f90.html#robo169" class="indexitem" >h5gunlink_f</a>
-<a href="./src/H5Iff_f90.html#robo170" class="indexitem" >h5idec_ref_f</a>
-<a href="./src/H5Iff_f90.html#robo171" class="indexitem" >h5iget_file_id_f</a>
-<a href="./src/H5Iff_f90.html#robo172" class="indexitem" >h5iget_name_f</a>
-<a href="./src/H5Iff_f90.html#robo173" class="indexitem" >h5iget_ref_f</a>
-<a href="./src/H5Iff_f90.html#robo174" class="indexitem" >h5iget_type_f</a>
-<a href="./src/H5Iff_f90.html#robo175" class="indexitem" >h5iinc_ref_f</a>
-<a href="./src/H5Iff_f90.html#robo176" class="indexitem" >h5iis_valid_f</a>
-<a href="./src/H5Lff_f90.html#robo178" class="indexitem" >h5lcopy_f</a>
-<a href="./src/H5Lff_f90.html#robo179" class="indexitem" >H5Lcreate_external_f</a>
-<a href="./src/H5Lff_f90.html#robo180" class="indexitem" >H5Lcreate_hard_f</a>
-<a href="./src/H5Lff_f90.html#robo181" class="indexitem" >H5Lcreate_soft_f</a>
-<a href="./src/H5Lff_f90.html#robo182" class="indexitem" >h5ldelete_by_idx_f</a>
-<a href="./src/H5Lff_f90.html#robo183" class="indexitem" >h5ldelete_f</a>
-<a href="./src/H5Lff_f90.html#robo184" class="indexitem" >H5Lexists_f</a>
-<a href="./src/H5Lff_f90.html#robo185" class="indexitem" >h5lget_info_by_idx_f</a>
-<a href="./src/H5Lff_f90.html#robo186" class="indexitem" >h5lget_info_f</a>
-<a href="./src/H5Lff_f90.html#robo187" class="indexitem" >h5lget_name_by_idx_f</a>
-<a href="./src/H5Lff_f90.html#robo188" class="indexitem" >h5lis_registered_f</a>
-<a href="./src/H5Lff_F03_f90.html#robo189" class="indexitem" >h5literate_by_name_f</a>
-<a href="./src/H5Lff_F03_f90.html#robo190" class="indexitem" >h5literate_f</a>
-<a href="./src/H5Lff_f90.html#robo191" class="indexitem" >h5lmove_f</a>
-<a href="./src/H5Off_f90.html#robo193" class="indexitem" >h5oclose_f</a>
-<a href="./src/H5Off_f90.html#robo195" class="indexitem" >h5olink_f</a>
-<a href="./src/H5Off_f90.html#robo196" class="indexitem" >h5oopen_f</a>
-<a href="./src/H5Off_f90.html#robo197" class="indexitem" >h5open_by_addr_f</a>
-<a href="./src/H5_ff_f90.html#robo198" class="indexitem" >h5open_f</a>
-<a href="./src/H5Off_F03_f90.html#robo199" class="indexitem" >h5ovisit_f</a>
-<a href="./src/H5Pff_f90.html#robo200" class="indexitem" >h5pall_filters_avail_f</a>
-<a href="./src/H5Pff_f90.html#robo201" class="indexitem" >h5pclose_class_f</a>
-<a href="./src/H5Pff_f90.html#robo202" class="indexitem" >h5pclose_f</a>
-<a href="./src/H5Pff_f90.html#robo203" class="indexitem" >h5pcopy_f</a>
-<a href="./src/H5Pff_f90.html#robo204" class="indexitem" >h5pcopy_prop_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo205" class="indexitem" >h5pcreate_class_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo206" class="indexitem" >h5pcreate_class_f</a>
-<a href="./src/H5Pff_f90.html#robo207" class="indexitem" >h5pcreate_f</a>
-<a href="./src/H5Pff_f90.html#robo208" class="indexitem" >h5pequal_f</a>
-<a href="./src/H5Pff_f90.html#robo209" class="indexitem" >h5pexist_f</a>
-<a href="./src/H5Pff_f90.html#robo210" class="indexitem" >h5pfill_value_defined_f</a>
-<a href="./src/H5Pff_f90.html#robo211" class="indexitem" >h5pget_alignment_f</a>
-<a href="./src/H5Pff_f90.html#robo212" class="indexitem" >h5pget_alloc_time_f</a>
-<a href="./src/H5Pff_f90.html#robo213" class="indexitem" >H5Pget_attr_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo214" class="indexitem" >H5Pget_attr_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo215" class="indexitem" >h5pget_btree_ratios_f</a>
-<a href="./src/H5Pff_f90.html#robo216" class="indexitem" >h5pget_buffer_f</a>
-<a href="./src/H5Pff_f90.html#robo217" class="indexitem" >h5pget_cache_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo218" class="indexitem" >h5pget_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo219" class="indexitem" >h5pget_char</a>
-<a href="./src/H5Pff_f90.html#robo220" class="indexitem" >H5Pget_char_encoding_f</a>
-<a href="./src/H5Pff_f90.html#robo221" class="indexitem" >H5Pget_chunk_cache_f</a>
-<a href="./src/H5Pff_f90.html#robo222" class="indexitem" >h5pget_chunk_f</a>
-<a href="./src/H5Pff_f90.html#robo223" class="indexitem" >h5pget_class_f</a>
-<a href="./src/H5Pff_f90.html#robo224" class="indexitem" >h5pget_class_name_f</a>
-<a href="./src/H5Pff_f90.html#robo225" class="indexitem" >h5pget_class_parent_f</a>
-<a href="./src/H5Pff_f90.html#robo226" class="indexitem" >h5pget_copy_object_f</a>
-<a href="./src/H5Pff_f90.html#robo227" class="indexitem" >H5Pget_create_inter_group_f</a>
-<a href="./src/H5Pff_f90.html#robo228" class="indexitem" >h5pget_data_transform_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo229" class="indexitem" >h5pget_double</a>
-<a href="./src/H5Pff_f90.html#robo230" class="indexitem" >h5pget_driver_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo231" class="indexitem" >h5pget_dxpl_mpio_f</a>
-<a href="./src/H5Pff_f90.html#robo232" class="indexitem" >h5pget_edc_check_f</a>
-<a href="./src/H5Pff_f90.html#robo233" class="indexitem" >H5Pget_est_link_info_f</a>
-<a href="./src/H5Pff_f90.html#robo234" class="indexitem" >h5pget_external_count_f</a>
-<a href="./src/H5Pff_f90.html#robo235" class="indexitem" >h5pget_external_f</a>
-<a href="./src/H5Pff_f90.html#robo236" class="indexitem" >h5pget_fapl_core_f</a>
-<a href="./src/H5Pff_f90.html#robo237" class="indexitem" >h5pget_fapl_direct_f</a>
-<a href="./src/H5Pff_f90.html#robo238" class="indexitem" >h5pget_fapl_family_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo239" class="indexitem" >h5pget_fapl_mpio_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo240" class="indexitem" >h5pget_fapl_mpiposix_f</a>
-<a href="./src/H5Pff_f90.html#robo241" class="indexitem" >h5pget_fapl_multi_f</a>
-<a href="./src/H5Pff_f90.html#robo242" class="indexitem" >h5pget_fclose_degree_f</a>
-<a href="./src/H5Pff_f90.html#robo243" class="indexitem" >h5pget_fill_time_f</a>
-<a href="./src/H5Pff_f90.html#robo244" class="indexitem" >h5pget_filter_by_id_f</a>
-<a href="./src/H5Pff_f90.html#robo245" class="indexitem" >h5pget_filter_f</a>
-<a href="./src/H5Pff_f90.html#robo246" class="indexitem" >h5pget_gc_references_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo247" class="indexitem" >h5pget_integer</a>
-<a href="./src/H5Pff_F90_f90.html#robo248" class="indexitem" >h5pget_integer</a>
-<a href="./src/H5Pff_f90.html#robo249" class="indexitem" >h5pget_istore_k_f</a>
-<a href="./src/H5Pff_f90.html#robo250" class="indexitem" >h5pget_layout_f</a>
-<a href="./src/H5Pff_f90.html#robo251" class="indexitem" >H5Pget_link_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo252" class="indexitem" >H5Pget_link_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo253" class="indexitem" >H5Pget_local_heap_size_hint_f</a>
-<a href="./src/H5Pff_f90.html#robo254" class="indexitem" >h5pget_meta_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo255" class="indexitem" >h5pget_nfilters_f</a>
-<a href="./src/H5Pff_f90.html#robo256" class="indexitem" >h5pget_nlinks_f</a>
-<a href="./src/H5Pff_f90.html#robo257" class="indexitem" >h5pget_npros_f</a>
-<a href="./src/H5Pff_f90.html#robo258" class="indexitem" >H5Pget_obj_track_times_f</a>
-<a href="./src/H5Pff_f90.html#robo259" class="indexitem" >h5pget_preserve_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo260" class="indexitem" >h5pget_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo261" class="indexitem" >h5pget_real</a>
-<a href="./src/H5Pff_f90.html#robo262" class="indexitem" >h5pget_sec2_f</a>
-<a href="./src/H5Pff_f90.html#robo263" class="indexitem" >h5pget_sieve_buf_size_f</a>
-<a href="./src/H5Pff_f90.html#robo264" class="indexitem" >h5pget_size_f</a>
-<a href="./src/H5Pff_f90.html#robo265" class="indexitem" >h5pget_sizes_f</a>
-<a href="./src/H5Pff_f90.html#robo266" class="indexitem" >h5pget_small_data_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo267" class="indexitem" >h5pget_split_f</a>
-<a href="./src/H5Pff_f90.html#robo268" class="indexitem" >h5pget_stdio_f</a>
-<a href="./src/H5Pff_f90.html#robo269" class="indexitem" >h5pget_sym_k_f</a>
-<a href="./src/H5Pff_f90.html#robo270" class="indexitem" >h5pget_userblock_f</a>
-<a href="./src/H5Pff_f90.html#robo271" class="indexitem" >h5pget_version_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo273" class="indexitem" >h5pinsert_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo272" class="indexitem" >h5pinsert_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo275" class="indexitem" >h5pinsert_double</a>
-<a href="./src/H5Pff_F03_f90.html#robo274" class="indexitem" >h5pinsert_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo277" class="indexitem" >h5pinsert_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo276" class="indexitem" >h5pinsert_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo278" class="indexitem" >h5pinsert_ptr</a>
-<a href="./src/H5Pff_F90_f90.html#robo279" class="indexitem" >h5pinsert_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo280" class="indexitem" >h5pinsert_real</a>
-<a href="./src/H5Pff_f90.html#robo281" class="indexitem" >h5pisa_class_f</a>
-<a href="./src/H5Pff_f90.html#robo282" class="indexitem" >h5pmodify_filter_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo283" class="indexitem" >h5pregister_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo284" class="indexitem" >h5pregister_char</a>
-<a href="./src/H5Pff_F03_f90.html#robo286" class="indexitem" >h5pregister_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo285" class="indexitem" >h5pregister_double</a>
-<a href="./src/H5Pff_F90_f90.html#robo288" class="indexitem" >h5pregister_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo287" class="indexitem" >h5pregister_integer</a>
-<a href="./src/H5Pff_F03_f90.html#robo289" class="indexitem" >h5pregister_ptr</a>
-<a href="./src/H5Pff_F90_f90.html#robo290" class="indexitem" >h5pregister_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo291" class="indexitem" >h5pregister_real</a>
-<a href="./src/H5Pff_f90.html#robo292" class="indexitem" >h5premove_f</a>
-<a href="./src/H5Pff_f90.html#robo293" class="indexitem" >h5premove_filter_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo295" class="indexitem" >h5pset(get)fill_value_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo294" class="indexitem" >h5pset(get)fill_value_f</a>
-<a href="./src/H5Pff_f90.html#robo296" class="indexitem" >h5pset_alignment_f</a>
-<a href="./src/H5Pff_f90.html#robo297" class="indexitem" >h5pset_alloc_time_f</a>
-<a href="./src/H5Pff_f90.html#robo298" class="indexitem" >H5Pset_attr_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo299" class="indexitem" >H5Pset_attr_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo300" class="indexitem" >h5pset_btree_ratios_f</a>
-<a href="./src/H5Pff_f90.html#robo301" class="indexitem" >h5pset_buffer_f</a>
-<a href="./src/H5Pff_f90.html#robo302" class="indexitem" >h5pset_cache_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo303" class="indexitem" >h5pset_char</a>
-<a href="./src/H5Pff_F90_f90.html#robo304" class="indexitem" >h5pset_char</a>
-<a href="./src/H5Pff_f90.html#robo305" class="indexitem" >H5Pset_char_encoding_f</a>
-<a href="./src/H5Pff_f90.html#robo306" class="indexitem" >H5Pset_chunk_cache_f</a>
-<a href="./src/H5Pff_f90.html#robo307" class="indexitem" >h5pset_chunk_f</a>
-<a href="./src/H5Pff_f90.html#robo308" class="indexitem" >h5pset_copy_object_f</a>
-<a href="./src/H5Pff_f90.html#robo309" class="indexitem" >H5Pset_create_inter_group_f</a>
-<a href="./src/H5Pff_f90.html#robo310" class="indexitem" >h5pset_data_transform_f</a>
-<a href="./src/H5Pff_f90.html#robo311" class="indexitem" >h5pset_deflate_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo312" class="indexitem" >h5pset_double</a>
-<a href="./src/H5Pff_F03_f90.html#robo313" class="indexitem" >h5pset_double</a>
-<a href="./src/H5FDmpioff_f90.html#robo314" class="indexitem" >h5pset_dxpl_mpio_f</a>
-<a href="./src/H5Pff_f90.html#robo315" class="indexitem" >h5pset_edc_check_f</a>
-<a href="./src/H5Pff_f90.html#robo316" class="indexitem" >h5pset_est_link_info_f</a>
-<a href="./src/H5Pff_f90.html#robo317" class="indexitem" >h5pset_external_f</a>
-<a href="./src/H5Pff_f90.html#robo318" class="indexitem" >h5pset_fapl_core_f</a>
-<a href="./src/H5Pff_f90.html#robo319" class="indexitem" >h5pset_fapl_direct_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo320" class="indexitem" >h5pset_fapl_mpio_f</a>
-<a href="./src/H5FDmpioff_f90.html#robo321" class="indexitem" >h5pset_fapl_mpiposix_f</a>
-<a href="./src/H5Pff_f90.html#robo322" class="indexitem" >h5pset_fapl_multi_l</a>
-<a href="./src/H5Pff_f90.html#robo323" class="indexitem" >h5pset_fapl_multi_s</a>
-<a href="./src/H5Pff_f90.html#robo324" class="indexitem" >h5pset_fapl_sec2_f</a>
-<a href="./src/H5Pff_f90.html#robo325" class="indexitem" >h5pset_fapl_split_f</a>
-<a href="./src/H5Pff_f90.html#robo326" class="indexitem" >h5pset_fapl_stdio_f</a>
-<a href="./src/H5Pff_f90.html#robo327" class="indexitem" >h5pset_fclose_degree_f</a>
-<a href="./src/H5Pff_f90.html#robo328" class="indexitem" >h5pset_fill_time_f</a>
-<a href="./src/H5Pff_f90.html#robo329" class="indexitem" >h5pset_filter_f</a>
-<a href="./src/H5Pff_f90.html#robo330" class="indexitem" >h5pset_fletcher32_f</a>
-<a href="./src/H5Pff_f90.html#robo331" class="indexitem" >h5pset_gc_references_f</a>
-<a href="./src/H5Pff_f90.html#robo332" class="indexitem" >h5pset_hyper_vector_size_f</a>
-<a href="./src/H5Pff_F03_f90.html#robo334" class="indexitem" >h5pset_integer</a>
-<a href="./src/H5Pff_F90_f90.html#robo333" class="indexitem" >h5pset_integer</a>
-<a href="./src/H5Pff_f90.html#robo335" class="indexitem" >h5pset_istore_k_f</a>
-<a href="./src/H5Pff_f90.html#robo336" class="indexitem" >h5pset_layout_f</a>
-<a href="./src/H5Pff_f90.html#robo337" class="indexitem" >H5Pset_libver_bounds_f</a>
-<a href="./src/H5Pff_f90.html#robo338" class="indexitem" >H5Pset_link_creation_order_f</a>
-<a href="./src/H5Pff_f90.html#robo339" class="indexitem" >h5pset_link_phase_change_f</a>
-<a href="./src/H5Pff_f90.html#robo340" class="indexitem" >H5Pset_local_heap_size_hint_f</a>
-<a href="./src/H5Pff_f90.html#robo341" class="indexitem" >H5Pset_nbit_f</a>
-<a href="./src/H5Pff_f90.html#robo342" class="indexitem" >h5pset_nlinks_f</a>
-<a href="./src/H5Pff_f90.html#robo343" class="indexitem" >H5Pset_obj_track_times_f</a>
-<a href="./src/H5Pff_f90.html#robo344" class="indexitem" >h5pset_preserve_f</a>
-<a href="./src/H5Pff_F90_f90.html#robo346" class="indexitem" >h5pset_real</a>
-<a href="./src/H5Pff_F03_f90.html#robo345" class="indexitem" >h5pset_real</a>
-<a href="./src/H5Pff_f90.html#robo347" class="indexitem" >h5pset_scaleoffset_f</a>
-<a href="./src/H5Pff_f90.html#robo348" class="indexitem" >H5Pset_shared_mesg_index_f</a>
-<a href="./src/H5Pff_f90.html#robo349" class="indexitem" >H5Pset_shared_mesg_nindexes_f</a>
-<a href="./src/H5Pff_f90.html#robo350" class="indexitem" >h5pset_shuffle_f</a>
-<a href="./src/H5Pff_f90.html#robo351" class="indexitem" >h5pset_sieve_buf_size_f</a>
-<a href="./src/H5Pff_f90.html#robo352" class="indexitem" >h5pset_sizes_f</a>
-<a href="./src/H5Pff_f90.html#robo353" class="indexitem" >h5pset_small_data_block_size_f</a>
-<a href="./src/H5Pff_f90.html#robo354" class="indexitem" >h5pset_sym_k_f</a>
-<a href="./src/H5Pff_f90.html#robo355" class="indexitem" >h5pset_szip_f</a>
-<a href="./src/H5Pff_f90.html#robo356" class="indexitem" >h5pset_userblock_f</a>
-<a href="./src/H5Pff_f90.html#robo357" class="indexitem" >h5punregister_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo358" class="indexitem" >h5rcreate_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo359" class="indexitem" >h5rcreate_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo360" class="indexitem" >h5rcreate_ptr_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo362" class="indexitem" >h5rcreate_region_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo361" class="indexitem" >h5rcreate_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo363" class="indexitem" >h5rdereference_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo364" class="indexitem" >h5rdereference_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo365" class="indexitem" >h5rdereference_ptr_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo367" class="indexitem" >h5rdereference_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo366" class="indexitem" >h5rdereference_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo369" class="indexitem" >h5rget_name_object_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo368" class="indexitem" >h5rget_name_object_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo370" class="indexitem" >h5rget_name_ptr_f</a>
-<a href="./src/H5Rff_F90_f90.html#robo371" class="indexitem" >h5rget_name_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo372" class="indexitem" >h5rget_name_region_f</a>
-<a href="./src/H5Rff_F03_f90.html#robo373" class="indexitem" >h5rget_obj_type_f</a>
-<a href="./src/H5Rff_f90.html#robo374" class="indexitem" >h5rget_object_type_obj_f</a>
-<a href="./src/H5Rff_f90.html#robo375" class="indexitem" >h5rget_region_region_f</a>
-<a href="./src/H5Sff_f90.html#robo376" class="indexitem" >h5sclose_f</a>
-<a href="./src/H5Sff_f90.html#robo377" class="indexitem" >h5scopy_f</a>
-<a href="./src/H5Sff_f90.html#robo378" class="indexitem" >h5screate_f</a>
-<a href="./src/H5Sff_f90.html#robo379" class="indexitem" >h5screate_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo380" class="indexitem" >H5Sdecode_f</a>
-<a href="./src/H5Sff_f90.html#robo381" class="indexitem" >H5Sencode_f</a>
-<a href="./src/H5Sff_f90.html#robo382" class="indexitem" >h5sextent_copy_f</a>
-<a href="./src/H5Sff_f90.html#robo383" class="indexitem" >h5sextent_equal_f</a>
-<a href="./src/H5Sff_f90.html#robo384" class="indexitem" >h5sget_select_bounds_f</a>
-<a href="./src/H5Sff_f90.html#robo385" class="indexitem" >h5sget_select_elem_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo386" class="indexitem" >h5sget_select_elem_pointlist_f</a>
-<a href="./src/H5Sff_f90.html#robo387" class="indexitem" >h5sget_select_hyper_blocklist_f</a>
-<a href="./src/H5Sff_f90.html#robo388" class="indexitem" >h5sget_select_hyper_nblocks_f</a>
-<a href="./src/H5Sff_f90.html#robo389" class="indexitem" >h5sget_select_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo390" class="indexitem" >h5sget_select_type_f</a>
-<a href="./src/H5Sff_f90.html#robo391" class="indexitem" >h5sget_simple_extent_dims_f</a>
-<a href="./src/H5Sff_f90.html#robo392" class="indexitem" >h5sget_simple_extent_ndims_f</a>
-<a href="./src/H5Sff_f90.html#robo393" class="indexitem" >h5sget_simple_extent_npoints_f</a>
-<a href="./src/H5Sff_f90.html#robo394" class="indexitem" >h5sget_simple_extent_type_f</a>
-<a href="./src/H5Sff_f90.html#robo395" class="indexitem" >h5sis_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo396" class="indexitem" >h5soffset_simple_f</a>
-<a href="./src/H5Sff_f90.html#robo397" class="indexitem" >h5sselect_all_f</a>
-<a href="./src/H5Sff_f90.html#robo398" class="indexitem" >h5sselect_elements_f</a>
-<a href="./src/H5Sff_f90.html#robo399" class="indexitem" >h5sselect_hyperslab_f</a>
-<a href="./src/H5Sff_f90.html#robo400" class="indexitem" >h5sselect_none_f</a>
-<a href="./src/H5Sff_f90.html#robo401" class="indexitem" >h5sselect_valid_f</a>
-<a href="./src/H5Sff_f90.html#robo402" class="indexitem" >h5sset_extent_none_f</a>
-<a href="./src/H5Sff_f90.html#robo403" class="indexitem" >h5sset_extent_simple_f</a>
-<a href="./src/H5Tff_f90.html#robo404" class="indexitem" >h5tarray_create_f</a>
-<a href="./src/H5Tff_f90.html#robo405" class="indexitem" >h5tclose_f</a>
-<a href="./src/H5Tff_f90.html#robo406" class="indexitem" >h5tcommit_anon_f</a>
-<a href="./src/H5Tff_f90.html#robo407" class="indexitem" >h5tcommit_f</a>
-<a href="./src/H5Tff_f90.html#robo408" class="indexitem" >h5tcommitted_f</a>
-<a href="./src/H5Tff_f90.html#robo409" class="indexitem" >h5tcompiler_conv_f</a>
-<a href="./src/H5Tff_F03_f90.html#robo410" class="indexitem" >H5Tconvert_f</a>
-<a href="./src/H5Tff_f90.html#robo411" class="indexitem" >h5tcopy_f</a>
-<a href="./src/H5Tff_f90.html#robo412" class="indexitem" >h5tcreate_f</a>
-<a href="./src/H5Tff_f90.html#robo413" class="indexitem" >H5Tdecode_f</a>
-<a href="./src/H5Tff_f90.html#robo414" class="indexitem" >h5tenaum_insert_f</a>
-<a href="./src/H5Tff_f90.html#robo415" class="indexitem" >H5Tencode_f</a>
-<a href="./src/H5Tff_f90.html#robo416" class="indexitem" >h5tenum_create_f</a>
-<a href="./src/H5Tff_f90.html#robo417" class="indexitem" >h5tenum_nameof_f</a>
-<a href="./src/H5Tff_f90.html#robo418" class="indexitem" >h5tenum_valuof_f</a>
-<a href="./src/H5Tff_f90.html#robo419" class="indexitem" >h5tequal_f</a>
-<a href="./src/H5Tff_f90.html#robo422" class="indexitem" >h5tget_array_dims_f</a>
-<a href="./src/H5Tff_f90.html#robo423" class="indexitem" >h5tget_array_ndims_f</a>
-<a href="./src/H5Tff_f90.html#robo424" class="indexitem" >h5tget_class_f</a>
-<a href="./src/H5Tff_f90.html#robo425" class="indexitem" >h5tget_create_plist_f</a>
-<a href="./src/H5Tff_f90.html#robo426" class="indexitem" >h5tget_cset_f</a>
-<a href="./src/H5Tff_f90.html#robo427" class="indexitem" >h5tget_ebias_f</a>
-<a href="./src/H5Tff_f90.html#robo428" class="indexitem" >h5tget_fields_f</a>
-<a href="./src/H5Tff_f90.html#robo429" class="indexitem" >h5tget_inpad_f</a>
-<a href="./src/H5Tff_f90.html#robo430" class="indexitem" >h5tget_member_class_f</a>
-<a href="./src/H5Tff_f90.html#robo431" class="indexitem" >h5tget_member_index_f</a>
-<a href="./src/H5Tff_f90.html#robo432" class="indexitem" >h5tget_member_name_f</a>
-<a href="./src/H5Tff_f90.html#robo433" class="indexitem" >h5tget_member_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo434" class="indexitem" >h5tget_member_type_f</a>
-<a href="./src/H5Tff_f90.html#robo435" class="indexitem" >h5tget_member_value_f</a>
-<a href="./src/H5Tff_f90.html#robo436" class="indexitem" >h5tget_native_type_f</a>
-<a href="./src/H5Tff_f90.html#robo437" class="indexitem" >h5tget_nmembers_f</a>
-<a href="./src/H5Tff_f90.html#robo438" class="indexitem" >h5tget_norm_f</a>
-<a href="./src/H5Tff_f90.html#robo439" class="indexitem" >h5tget_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo440" class="indexitem" >h5tget_order_f</a>
-<a href="./src/H5Tff_f90.html#robo441" class="indexitem" >h5tget_pad_f</a>
-<a href="./src/H5Tff_f90.html#robo442" class="indexitem" >h5tget_precision_f</a>
-<a href="./src/H5Tff_f90.html#robo443" class="indexitem" >h5tget_sign_f</a>
-<a href="./src/H5Tff_f90.html#robo444" class="indexitem" >h5tget_size_f</a>
-<a href="./src/H5Tff_f90.html#robo445" class="indexitem" >h5tget_strpad_f</a>
-<a href="./src/H5Tff_f90.html#robo446" class="indexitem" >h5tget_super_f</a>
-<a href="./src/H5Tff_f90.html#robo447" class="indexitem" >h5tget_tag_f</a>
-<a href="./src/H5Tff_f90.html#robo448" class="indexitem" >h5tinsert_f</a>
-<a href="./src/H5Tff_f90.html#robo449" class="indexitem" >h5tis_variable_str_f</a>
-<a href="./src/H5Tff_f90.html#robo450" class="indexitem" >h5topen_f</a>
-<a href="./src/H5Tff_f90.html#robo451" class="indexitem" >h5tpack_f</a>
-<a href="./src/H5Tff_f90.html#robo452" class="indexitem" >h5tset_cset_f</a>
-<a href="./src/H5Tff_f90.html#robo453" class="indexitem" >h5tset_ebias_f</a>
-<a href="./src/H5Tff_f90.html#robo454" class="indexitem" >h5tset_fields_f</a>
-<a href="./src/H5Tff_f90.html#robo455" class="indexitem" >h5tset_inpad_f</a>
-<a href="./src/H5Tff_f90.html#robo456" class="indexitem" >h5tset_norm_f</a>
-<a href="./src/H5Tff_f90.html#robo457" class="indexitem" >h5tset_offset_f</a>
-<a href="./src/H5Tff_f90.html#robo458" class="indexitem" >h5tset_order_f</a>
-<a href="./src/H5Tff_f90.html#robo459" class="indexitem" >h5tset_pad_f</a>
-<a href="./src/H5Tff_f90.html#robo460" class="indexitem" >h5tset_precision_f</a>
-<a href="./src/H5Tff_f90.html#robo461" class="indexitem" >h5tset_sign_f</a>
-<a href="./src/H5Tff_f90.html#robo462" class="indexitem" >h5tset_size_f</a>
-<a href="./src/H5Tff_f90.html#robo463" class="indexitem" >h5tset_strpad_f</a>
-<a href="./src/H5Tff_f90.html#robo464" class="indexitem" >h5tset_tag_f</a>
-<a href="./src/H5Tff_f90.html#robo465" class="indexitem" >h5tvlen_create_f</a>
-<a href="./src/H5Zff_f90.html#robo466" class="indexitem" >h5zfilter_avail_f</a>
-<a href="./src/H5Zff_f90.html#robo467" class="indexitem" >h5zget_filter_info_f</a>
-<a href="./src/H5Zff_f90.html#robo468" class="indexitem" >h5zunregister_f</a>
-<h2><a href="#A">A</a> - <a href="#B">B</a> - <a href="#C">C</a> - <a href="#D">D</a> - <a href="#E">E</a> - <a href="#F">F</a> - <a href="#G">G</a> - <a href="#H">H</a> - <a href="#I">I</a> - <a href="#J">J</a> - <a href="#K">K</a> - <a href="#L">L</a> - <a href="#M">M</a> - <a href="#N">N</a> - <a href="#O">O</a> - <a href="#P">P</a> - <a href="#Q">Q</a> - <a href="#R">R</a> - <a href="#S">S</a> - <a href="#T">T</a> - <a href="#U">U</a> - <a href="#V">V</a> - <a href="#W">W</a> - <a href="#X">X</a> - <a href="#Y">Y</a> - <a href="#Z">Z</a> - <a href="#0">0</a> - <a href="#1">1</a> - <a href="#2">2</a> - <a href="#3">3</a> - <a href="#4">4</a> - <a href="#5">5</a> - <a href="#6">6</a> - <a href="#7">7</a> - <a href="#8">8</a> - <a href="#9">9</a></h2>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/robodoc.css b/fortran/doc/DevelGuide/robodoc.css
deleted file mode 100644
index 207a172..0000000
--- a/fortran/doc/DevelGuide/robodoc.css
+++ /dev/null
@@ -1,302 +0,0 @@
-/****h* ROBODoc/ROBODoc Cascading Style Sheet
- * FUNCTION
- * This is the default cascading style sheet for documentation
- * generated with ROBODoc.
- * You can edit this file to your own liking and then use
- * it with the option
- * --css <filename>
- *
- * This style-sheet defines the following layout
- * +----------------------------------------+
- * | logo |
- * +----------------------------------------+
- * | extra |
- * +----------------------------------------+
- * | | navi- |
- * | | gation |
- * | content | |
- * | | |
- * +----------------------------------------+
- * | footer |
- * +----------------------------------------+
- *
- * This style-sheet is based on a style-sheet that was automatically
- * generated with the Strange Banana stylesheet generator.
- * See http://www.strangebanana.com/generator.aspx
- *
- ******
- * $Id: html_generator.c,v 1.94 2008/06/17 11:49:27 gumpu Exp $
- */
-
-body
-{
- background-color: rgb(255,255,255);
- color: rgb(98,84,55);
- font-family: Arial, serif;
- border-color: rgb(226,199,143);
-}
-
-pre
-{
- font-family: monospace;
- margin: 15px;
- padding: 5px;
- white-space: pre;
- color: #000;
-}
-
-pre.source
-{
- background-color: #ffe;
- border: dashed #aa9 1px;
-}
-
-p
-{
- margin:15px;
-}
-
-p.item_name
-{
- font-weight: bolder;
- margin:5px;
- font-size: 120%;
-}
-
-#content
-{
- font-size: 100%;
- color: rgb(0,0,0);
- background-color: rgb(255,255,255);
- border-left-width: 0px;
- border-right-width: 0px;
- border-top-width: 0px;
- border-bottom-width: 0px;
- border-left-style: none;
- border-right-style: none;
- border-top-style: none;
- border-bottom-style: none;
- padding: 40px 31px 14px 17px;
- border-color: rgb(0,0,0);
- text-align: justify;
-}
-
-#navigation
-{
- background-color: rgb(98,84,55);
- color: rgb(230,221,202);
- font-family: "Times New Roman", serif;
- font-style: normal;
- border-color: rgb(0,0,0);
-}
-
-a.menuitem
-{
- font-size: 120%;
- background-color: rgb(0,0,0);
- color: rgb(195,165,100);
- font-variant: normal;
- text-transform: none;
- font-weight: normal;
- padding: 1px 8px 3px 1px;
- margin-left: 5px;
- margin-right: 5px;
- margin-top: 5px;
- margin-bottom: 5px;
- border-color: rgb(159,126,57);
- text-align: right;
-}
-
-#logo, #logo a
-{
- font-size: 130%;
- background-color: rgb(198,178,135);
- color: rgb(98,84,55);
- font-family: Georgia, serif;
- font-style: normal;
- font-variant: normal;
- text-transform: none;
- font-weight: bold;
- padding: 20px 18px 20px 18px;
- border-color: rgb(255,255,255);
- text-align: right;
-}
-
-#extra, #extra a
-{
- font-size: 128%;
- background-color: rgb(0,0,0);
- color: rgb(230,221,202);
- font-style: normal;
- font-variant: normal;
- text-transform: none;
- font-weight: normal;
- border-left-width: 0px;
- border-right-width: 0px;
- border-top-width: 0px;
- border-bottom-width: 0px;
- border-left-style: none;
- border-right-style: none;
- border-top-style: none;
- border-bottom-style: none;
- padding: 12px 12px 12px 12px;
- border-color: rgb(195,165,100);
- text-align: center;
-}
-
-#content a
-{
- color: rgb(159,126,57);
- text-decoration: none;
-}
-
-#content a:hover, #content a:active
-{
- color: rgb(255,255,255);
- background-color: rgb(159,126,57);
-}
-
-a.indexitem
-{
- display: block;
-}
-
-h1, h2, h3, h4, h5, h6
-{
- background-color: rgb(221,221,221);
- font-family: Arial, serif;
- font-style: normal;
- font-variant: normal;
- text-transform: none;
- font-weight: normal;
-}
-
-h1
-{
- font-size: 151%;
-}
-
-h2
-{
- font-size: 142%;
-}
-
-h3
-{
- font-size: 133%;
-}
-
-h4
-{
- font-size: 124%;
-}
-
-h5
-{
- font-size: 115%;
-}
-
-h6
-{
- font-size: 106%;
-}
-
-#navigation a
-{
- text-decoration: none;
-}
-
-.menuitem:hover
-{
- background-color: rgb(195,165,100);
- color: rgb(0,0,0);
-}
-
-#extra a
-{
- text-decoration: none;
-}
-
-#logo a
-{
- text-decoration: none;
-}
-
-#extra a:hover
-{
-}
-
-/* layout */
-#navigation
-{
- width: 22%;
- position: relative;
- top: 0;
- right: 0;
- float: right;
- text-align: center;
- margin-left: 10px;
-}
-
-.menuitem {width: auto;}
-#content {width: auto;}
-.menuitem {display: block;}
-
-
-div#footer
-{
- background-color: rgb(198,178,135);
- color: rgb(98,84,55);
- clear: left;
- width: 100%;
- font-size: 71%;
-}
-
-div#footer a
-{
- background-color: rgb(198,178,135);
- color: rgb(98,84,55);
-}
-
-div#footer p
-{
- margin:0;
- padding:5px 10px
-}
-
-span.keyword
-{
- color: #00F;
-}
-
-span.comment
-{
- color: #080;
-}
-
-span.quote
-{
- color: #F00;
-}
-
-span.squote
-{
- color: #F0F;
-}
-
-span.sign
-{
- color: #008B8B;
-}
-
-span.line_number
-{
- color: #808080;
-}
-
-@media print
-{
- #navigation {display: none;}
- #content {padding: 0px;}
- #content a {text-decoration: underline;}
-}
diff --git a/fortran/doc/DevelGuide/src/H5Af_c.html b/fortran/doc/DevelGuide/src/H5Af_c.html
deleted file mode 100644
index 7fcecc1..0000000
--- a/fortran/doc/DevelGuide/src/H5Af_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Af.c</title>
-<!-- Source: ./src/H5Af.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Af2fH5Af"></a>
-<a name="robo30"></a><h2>H5Af</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Aff_f90.html#robo27">H5A</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Af.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Aff_F03_f90.html b/fortran/doc/DevelGuide/src/H5Aff_F03_f90.html
deleted file mode 100644
index 9e503f4..0000000
--- a/fortran/doc/DevelGuide/src/H5Aff_F03_f90.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Aff_F03.f90</title>
-<!-- Source: ./src/H5Aff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5A2028F0329"></a>
-<a name="robo28"></a><h2>H5A (F03)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5A_PROVISIONAL
-</pre>
-<p class="item_name">FILE</p>
-<pre> src/fortran/src/<a href="#robo_top_of_doc">H5Aff_F03.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 and Fortran 2003 interfaces for <a href="./H5Aff_f90.html#robo27">H5A</a> functions.
- It contains the same functions as <a href="./H5Aff_F90_f90.html#robo_top_of_doc">H5Aff_F90.f90</a> but includes the
- Fortran 2003 functions and the interface listings. This file will be compiled
- instead of <a href="./H5Aff_F90_f90.html#robo_top_of_doc">H5Aff_F90.f90</a> if Fortran 2003 functions are enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> (A) C_LOC and character strings according to the Fortran 2003 standard:
-
- 15.1.2.5 C_LOC(X)
-
- Argument. X shall either
-
- (1) have interoperable type and type parameters and be
- (a) a variable that has the TARGET attribute and is interoperable,
- (b) an allocated allocatable variable that has the TARGET attribute
- and is not an array of zero size, or
- (c) an associated scalar pointer, or
- (2) be a nonpolymorphic scalar, have no length type parameters, and be
- (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
- (b) an allocated allocatable variable that has the TARGET attribute, or
- (c) an associated pointer.
-
- - When X is a character, for interoperability the standard is:
-
- 15.2.1 Interoperability of intrinsic types
-
- ...if the type is character, interoperability also requires that the length type parameter
- be omitted or be specified by an initialization expression whose value is one.
-
- THEREFORE compilers that have not extended the standard require
-
- CHARACTER(LEN=1), TARGET :: chr
- or
- CHARACTER, TARGET :: chr
-
- (B)
- *** IMPORTANT ***
- If you add a new <a href="./H5Aff_f90.html#robo27">H5A</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5A2028F03292fh5aread5ff"></a>
-<a name="robo108"></a><h2>h5aread_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo28">H5A (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aread_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Reads an attribute.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
- memtype_id - attribute memory type identifier
- dims - 1D array of size 7, stores sizes of the
- - buf array dimensions.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to read attribute data in
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-
- dims parameter was added to make code portable;
- Aprile 4, 2001
-
- Changed buf intent to INOUT to be consistant
- with how the C functions handles it. The pg
- compiler will return 0 if a buf value is not set.
- February, 2008
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This function is overloaded to write INTEGER,
- REAL, DOUBLE PRECISION and CHARACTER buffers
- up to 7 dimensions.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Aff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Aff_F90_f90.html b/fortran/doc/DevelGuide/src/H5Aff_F90_f90.html
deleted file mode 100644
index aa01b49..0000000
--- a/fortran/doc/DevelGuide/src/H5Aff_F90_f90.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Aff_F90.f90</title>
-<!-- Source: ./src/H5Aff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5A2028F9029"></a>
-<a name="robo29"></a><h2>H5A (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5A_PROVISIONAL
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Aff_F90.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 interfaces for <a href="./H5Aff_f90.html#robo27">H5A</a> functions. It contains
- the same functions as <a href="./H5Aff_F03_f90.html#robo_top_of_doc">H5Aff_F03.f90</a> but excludes the Fortran 2003 functions
- and the interface listings. This file will be compiled instead of <a href="./H5Aff_F03_f90.html#robo_top_of_doc">H5Aff_F03.f90</a>
- if Fortran 2003 functions are not enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <a href="./H5Aff_f90.html#robo27">H5A</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Aff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Aff_f90.html b/fortran/doc/DevelGuide/src/H5Aff_f90.html
deleted file mode 100644
index 268c1db..0000000
--- a/fortran/doc/DevelGuide/src/H5Aff_f90.html
+++ /dev/null
@@ -1,1102 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Aff.f90</title>
-<!-- Source: ./src/H5Aff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5A"></a>
-<a name="robo27"></a><h2>H5A</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5A</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5A</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5A</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5A2fh5aclose5ff"></a>
-<a name="robo85"></a><h2>h5aclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes the specified attribute.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aclose_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5acreate5fby5fname5ff"></a>
-<a name="robo86"></a><h2>h5acreate_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5acreate_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates an attribute attached to a specified object
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location or object identifier; may be dataset or group
- obj_name - Name, relative to loc_id, of object that attribute is to be attached to
- attr_name - Attribute name
- type_id - Attribute datatype identifier
- space_id - Attribute dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr - an attribute identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> acpl_id - Attribute creation property list identifier (Currently not used.)
- aapl_id - Attribute access property list identifier (Currently not used.)
- lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5acreate_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> attr_name<span class="sign">,</span> type_id<span class="sign">,</span> space_id<span class="sign">,</span> attr<span class="sign">,</span> hdferr<span class="sign">,</span> <span class="sign">&amp;</span>
- acpl_id<span class="sign">,</span> aapl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> acpl_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> aapl_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> lapl_id
-</pre>
-
-<hr />
-<a name="H5A2fh5acreate5ff"></a>
-<a name="robo87"></a><h2>h5acreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5acreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a dataset as an attribute of a group, dataset, or named datatype
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - identifier of an object (group, dataset,
- or named datatype) attribute is attached to
- name - attribute name
- type_id - attribute datatype identifier
- space_id - attribute dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_id - attribute identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> acpl_id - Attribute creation property list identifier
- appl_id - Attribute access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5acreate_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> type_id<span class="sign">,</span> space_id<span class="sign">,</span> attr_id<span class="sign">,</span> <span class="sign">&amp;</span>
- hdferr<span class="sign">,</span> acpl_id<span class="sign">,</span> aapl_id <span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Attribute datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Attribute dataspace identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5A2fh5adelete5fby5fidx5ff"></a>
-<a name="robo88"></a><h2>h5adelete_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5adelete_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Deletes an attribute from an object according to index order
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location or object identifier; may be dataset or group
- obj_name - Name of object, relative to location, from which attribute is to be removed
- idx_type - Type of index; Possible values are:
- H5_INDEX_UNKNOWN_F = -1 - Unknown index type
- H5_INDEX_NAME_F - Index on names
- H5_INDEX_CRT_ORDER_F - Index on creation order
- H5_INDEX_N_F - Number of indices defined
-
- order - Order in which to iterate over index; Possible values are:
- H5_ITER_UNKNOWN_F - Unknown order
- H5_ITER_INC_F - Increasing order
- H5_ITER_DEC_F - Decreasing order
- H5_ITER_NATIVE_F - No particular order, whatever is fastest
- H5_ITER_N_F - Number of iteration orders
-
- n - Offset within index
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5adelete_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> idx_type<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifer <span class="keyword">for</span> object to which attribute is attached
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object<span class="sign">,</span> relative to location<span class="sign">,</span>
- <span class="sign">!</span> from which attribute is to be removed
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx_type <span class="sign">!</span> Type of index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
- <span class="sign">!</span> H5_ITER_N_F <span class="sign">-</span> Number of iteration orders
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Offset within index
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5A2fh5adelete5fby5fname5ff"></a>
-<a name="robo89"></a><h2>h5adelete_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5adelete_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes an attribute from a specified location
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifer for object to which attribute is attached
- obj_name - Name of attribute to open
- attr_name - Attribute access property list
- lapl_id - Link access property list
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5adelete_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> attr_name<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifer <span class="keyword">for</span> object to which attribute is attached
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object<span class="sign">,</span> relative to location<span class="sign">,</span>
- <span class="sign">!</span> from which attribute is to be removed
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Name of attribute to delete
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5A2fh5adelete5ff"></a>
-<a name="robo90"></a><h2>h5adelete_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5adelete_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Deletes an attribute of an object (group, dataset or
- named datatype)
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
- name - attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5adelete_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fH5Aexists5fby5fname5ff"></a>
-<a name="robo91"></a><h2>H5Aexists_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Aexists_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether an attribute with a given name exists on an object
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location identifier
- obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
- attr_name - Attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_exists - attribute exists status
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5aexists_by_name_f<span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> attr_name<span class="sign">,</span> attr_exists<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Object name either relative to loc_id<span class="sign">,</span>
- <span class="sign">!</span> absolute from the file<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s root group<span class="sign">,</span> or <span class="squote">'.'</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Attribute name
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_exists <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> exists<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> otherwise
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
-</pre>
-
-<hr />
-<a name="H5A2fH5Aexists5ff"></a>
-<a name="robo92"></a><h2>H5Aexists_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Aexists_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether an attribute with a given name exists on an object
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - Object identifier
- attr_name - Attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_exists - attribute exists status
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5aexists_f<span class="sign">(</span>obj_id<span class="sign">,</span> attr_name<span class="sign">,</span> attr_exists<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Attribute name
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_exists <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> exists<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> otherwise
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fcreate5fplist5ff"></a>
-<a name="robo93"></a><h2>h5aget_create_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_create_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets an attribute creation property list identifier
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - Identifier of the attribute
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> creation_prop_id - Identifier for the attribute’s creation property
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_create_plist_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> creation_prop_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Identifier of the attribute
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> creation_prop_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s creation property
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5finfo5fby5fidx5ff"></a>
-<a name="robo94"></a><h2>h5aget_info_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_info_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves attribute information, by attribute index position
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location of object to which attribute is attached
- obj_name - Name of object to which attribute is attached, relative to location
- idx_type - Type of index
- order - Index traversal order
- n - Attribute’s position in index
-
- OUTPUTS NOTE: In C it is defined as a structure: H5A_info_t
- corder_valid - indicates whether the creation order data is valid for this attribute
- corder - is a positive integer containing the creation order of the attribute
- cset - indicates the character set used for the attribute’s name
- data_size - indicates the size, in the number of characters, of the attribute
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_info_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> idx_type<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> <span class="sign">&amp;</span>
- f_corder_valid<span class="sign">,</span> corder<span class="sign">,</span> cset<span class="sign">,</span> data_size<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object to which attribute is attached
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx_type <span class="sign">!</span> Type of index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
-
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s position in index
-
-
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> f_corder_valid <span class="sign">!</span> Indicates whether the creation order data is valid <span class="keyword">for</span> this attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> corder <span class="sign">!</span> Is a positive integer containing the creation order of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> Indicates the character set used <span class="keyword">for</span> the attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s name
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> data_size <span class="sign">!</span> Indicates the size<span class="sign">,</span> in the number of characters<span class="sign">,</span> of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5finfo5fby5fname5ff"></a>
-<a name="robo95"></a><h2>h5aget_info_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_info_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves attribute information, by attribute name
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location of object to which attribute is attached
- obj_name - Name of object to which attribute is attached, relative to location
- attr_name - Attribute name
-
- OUTPUTS NOTE: In C it is defined as a structure: H5A_info_t
- corder_valid - indicates whether the creation order data is valid for this attribute
- corder - is a positive integer containing the creation order of the attribute
- cset - indicates the character set used for the attribute’s name
- data_size - indicates the size, in the number of characters, of the attribute
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_info_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> attr_name<span class="sign">,</span> <span class="sign">&amp;</span>
- f_corder_valid<span class="sign">,</span> corder<span class="sign">,</span> cset<span class="sign">,</span> data_size<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object to which attribute is attached
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Attribute name
-
-
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> f_corder_valid <span class="sign">!</span> Indicates whether the creation order data is valid <span class="keyword">for</span> this attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> corder <span class="sign">!</span> Is a positive integer containing the creation order of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> Indicates the character set used <span class="keyword">for</span> the attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s name
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> data_size <span class="sign">!</span> Indicates the size<span class="sign">,</span> in the number of characters<span class="sign">,</span> of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5finfo5ff"></a>
-<a name="robo96"></a><h2>h5aget_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves attribute information, by attribute identifier
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> NOTE: In C it is defined as a structure: H5A_info_t
-
- corder_valid - indicates whether the creation order data is valid for this attribute
- corder - is a positive integer containing the creation order of the attribute
- cset - indicates the character set used for the attribute’s name
- data_size - indicates the size, in the number of characters, of the attribute
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_info_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> f_corder_valid<span class="sign">,</span> corder<span class="sign">,</span> cset<span class="sign">,</span> data_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
-
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> f_corder_valid <span class="sign">!</span> Indicates whether the creation order data is valid <span class="keyword">for</span> this attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> corder <span class="sign">!</span> Is a positive integer containing the creation order of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> Indicates the character set used <span class="keyword">for</span> the attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s name
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> data_size <span class="sign">!</span> Indicates the size<span class="sign">,</span> in the number of characters<span class="sign">,</span> of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fname5fby5fidx5ff"></a>
-<a name="robo97"></a><h2>h5aget_name_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_name_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets an attribute name, by attribute index position.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location of object to which attribute is attached
- obj_name - Name of object to which attribute is attached, relative to location
- idx_type - Type of index; Possible values are:
- H5_INDEX_UNKNOWN_F = -1 - Unknown index type
- H5_INDEX_NAME_F - Index on names
- H5_INDEX_CRT_ORDER_F - Index on creation order
- H5_INDEX_N_F - Number of indices defined
-
- order - Order in which to iterate over index; Possible values are:
- H5_ITER_UNKNOWN_F - Unknown order
- H5_ITER_INC_F - Increasing order
- H5_ITER_DEC_F - Decreasing order
- H5_ITER_NATIVE_F - No particular order, whatever is fastest
- H5_ITER_N_F - Number of iteration orders
- order - Index traversal order
- n - Attribute’s position in index
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - Attribute name
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
- size - Size, in bytes, of attribute name
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_name_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> idx_type<span class="sign">,</span> order<span class="sign">,</span> <span class="sign">&amp;</span>
- n<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifer <span class="keyword">for</span> object to which attribute is attached
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object<span class="sign">,</span> relative to location<span class="sign">,</span>
- <span class="sign">!</span> from which attribute is to be removed <span class="sign">*</span>TEST<span class="sign">*</span> check NULL
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx_type <span class="sign">!</span> Type of index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
- <span class="sign">!</span> H5_ITER_N_F <span class="sign">-</span> Number of iteration orders
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s position in index
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> Returns attribute name size<span class="sign">,</span>
- <span class="sign">!</span> <span class="sign">-</span>1 <span class="keyword">if</span> fail
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Indicates the size<span class="sign">,</span> in the number of characters<span class="sign">,</span>
- <span class="sign">!</span> of the attribute
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fname5ff"></a>
-<a name="robo98"></a><h2>h5aget_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets an attribute name.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
- size - size of a buffer to read name in
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to read name in
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_name_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> size<span class="sign">,</span> buf<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Buffer size
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer to hold attribute name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> name length is successful<span class="sign">,</span> <span class="sign">-</span>1 <span class="keyword">if</span> fail
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fnum5fattrs5ff"></a>
-<a name="robo99"></a><h2>h5aget_num_attrs_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_num_attrs_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines the number of attributes attached to an object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object (group, dataset, or named datatype)
- identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_num - number of attributes attached to the object
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_num_attrs_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> attr_num<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_num <span class="sign">!</span> Number of attributes of the object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fspace5ff"></a>
-<a name="robo100"></a><h2>h5aget_space_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_space_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a copy of the dataspace for an attribute.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> space_id - attribite dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_space_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Attribute dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5fstorage5fsize5ff"></a>
-<a name="robo101"></a><h2>h5aget_storage_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_storage_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the amount of storage required for an attribute.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - attribute storage size
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_storage_size_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Attribute storage requirement
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5aget5ftype5ff"></a>
-<a name="robo102"></a><h2>h5aget_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aget_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets an attribute datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - attribute datatype identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aget_type_f</strong><span class="sign">(</span>attr_id<span class="sign">,</span> type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Attribute datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5aopen5fby5fidx5ff"></a>
-<a name="robo103"></a><h2>h5aopen_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aopen_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an existing attribute that is attached to an object specified by location and name
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location of object to which attribute is attached
- obj_name - Name of object to which attribute is attached, relative to location
- idx_type - Type of index
- order - Index traversal order
- n - Attribute’s position in index
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> aapl_id - Attribute access property list
- lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aopen_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> idx_type<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> attr_id<span class="sign">,</span> hdferr<span class="sign">,</span> aapl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object to which attribute is attached
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx_type <span class="sign">!</span> Type of index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
-
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s position in index
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> aapl_id <span class="sign">!</span> Attribute access property list
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5A2fH5Aopen5fby5fname5ff"></a>
-<a name="robo104"></a><h2>H5Aopen_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Aopen_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an attribute for an object by object name and attribute name.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location from which to find object to which attribute is attached
- obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
- attr_name - Attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_id - attribute identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> aapl_id - Attribute access property list (Currently unused; should be passed in as H5P_DEFAULT.)
- lapl_id - Link access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5aopen_by_name_f<span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> attr_name<span class="sign">,</span> attr_id<span class="sign">,</span> hdferr<span class="sign">,</span> aapl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Object name either relative to loc_id<span class="sign">,</span>
- <span class="sign">!</span> absolute from the file<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s root group<span class="sign">,</span> or <span class="squote">'.'</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> aapl_id <span class="sign">!</span> Attribute access property list
- <span class="sign">!</span> <span class="sign">(</span>Currently unused<span class="sign">;</span> should be passed in as H5P_DEFAULT_F<span class="sign">)</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
-</pre>
-
-<hr />
-<a name="H5A2fh5aopen5ff"></a>
-<a name="robo105"></a><h2>h5aopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an attribute for an object specified by object
- identifier and attribute name
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - Identifer for object to which attribute is attached
- attr_name - Name of attribute to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_id - attribute identifier
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> aapl_id - Attribute access property list
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aopen_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> attr_name<span class="sign">,</span> attr_id<span class="sign">,</span> hdferr<span class="sign">,</span> aapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> Success<span class="sign">:</span> 0
- <span class="sign">!</span> Failure<span class="sign">:</span> <span class="sign">-</span>1
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> aapl_id <span class="sign">!</span> Attribute access property list
-</pre>
-
-<hr />
-<a name="H5A2fh5aopen5fidx5ff"></a>
-<a name="robo106"></a><h2>h5aopen_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aopen_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the attribute specified by its index.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - identifier of a group, dataset, or named
- datatype an attribute to be attached to
- index - index of the attribute to open (zero-based)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_id - attribute identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aopen_idx_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> index<span class="sign">,</span> attr_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index <span class="sign">!</span> Attribute index
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5aopen5fname5ff"></a>
-<a name="robo107"></a><h2>h5aopen_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5aopen_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an attribute specified by name.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - identifier of a group, dataset, or named
- datatype atttribute to be attached to
- name - attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> attr_id - attribute identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces are added for
- called C functions (it is needed for Windows
- port). February 27, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5aopen_name_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> name<span class="sign">,</span> attr_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Attribute name
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> attr_id <span class="sign">!</span> Attribute identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5A2fh5arename5fby5fname5ff"></a>
-<a name="robo109"></a><h2>h5arename_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5arename_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Renames an attribute
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location or object identifier; may be dataset or group
- obj_name - Name of object, relative to location,
- whose attribute is to be renamed
- old_attr_name - Prior attribute name
- new_attr_name - New attribute name
- lapl_id - Link access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5arename_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> old_attr_name<span class="sign">,</span> new_attr_name<span class="sign">,</span> <span class="sign">&amp;</span>
- hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of object<span class="sign">,</span> relative to location<span class="sign">,</span>
- <span class="sign">!</span> whose attribute is to be renamed
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> old_attr_name <span class="sign">!</span> Prior attribute name
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_attr_name <span class="sign">!</span> New attribute name
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
-</pre>
-
-<hr />
-<a name="H5A2fh5arename5ff"></a>
-<a name="robo110"></a><h2>h5arename_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo27">H5A</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5arename_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Renames an attribute
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location or object identifier; may be dataset or group
- old_attr_name - Prior attribute name
- new_attr_name - New attribute name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> N/A
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5arename_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> old_attr_name<span class="sign">,</span> new_attr_name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> old_attr_name <span class="sign">!</span> Prior attribute name
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_attr_name <span class="sign">!</span> New attribute name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Aff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Df_c.html b/fortran/doc/DevelGuide/src/H5Df_c.html
deleted file mode 100644
index 1e163f2..0000000
--- a/fortran/doc/DevelGuide/src/H5Df_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Df.c</title>
-<!-- Source: ./src/H5Df.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Df2fH5Df"></a>
-<a name="robo34"></a><h2>H5Df</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Dff_f90.html#robo31">H5D</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Df.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Dff_F03_f90.html b/fortran/doc/DevelGuide/src/H5Dff_F03_f90.html
deleted file mode 100644
index 0bb4173..0000000
--- a/fortran/doc/DevelGuide/src/H5Dff_F03_f90.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Dff_F03.f90</title>
-<!-- Source: ./src/H5Dff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5D2028F0329"></a>
-<a name="robo32"></a><h2>H5D (F03)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5D_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 and Fortran 2003 interfaces for <a href="./H5Dff_f90.html#robo31">H5D</a> functions.
- It contains the same functions as H5Dff_DEPRECIATE.f90 but includes the
- Fortran 2003 functions and the interface listings. This file will be compiled
- instead of H5Dff_DEPRECIATE.f90 if Fortran 2003 functions are enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> (1) The maximum rank of an array allowed in Fortran is 7, therefore
- we only provide an interface for arrays up to and including rank 7.
-
- (2) Unfortunately we are using a generic interface and one of the factors
- used in determining the proper routine to select is that of the array
- rank being passed. Therefore, we can not create just one subroutine for
- each array type (integer, real, etc...) and use a
- rank 1 array of assumed size to handle multiple ranks, i.e.
- (i.e. integer, dimension(*) :: ... )
- (i.e. real , dimension(*) :: ... ) etc...
-
- (3) Could not place the USE ISO_C_BINDING in the module header because it may
- conflict with the USE ISO_C_BINDING included in the user's program. Moved
- the statement instead to each subroutine.
-
-
- (4) C_LOC and character strings according to the Fortran 2003 standard:
-
- 15.1.2.5 C_LOC(X)
-
- Argument. X shall either
-
- (A) have interoperable type and type parameters and be
- (a) a variable that has the TARGET attribute and is interoperable,
- (b) an allocated allocatable variable that has the TARGET attribute
- and is not an array of zero size, or
- (c) an associated scalar pointer, or
- (B) be a nonpolymorphic scalar, have no length type parameters, and be
- (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
- (b) an allocated allocatable variable that has the TARGET attribute, or
- (c) an associated pointer.
-
- - When X is a character, for interoperability the standard is:
-
- 15.2.1 Interoperability of intrinsic types
-
- ...if the type is character, interoperability also requires that the length type parameter
- be omitted or be specified by an initialization expression whose value is one.
-
- THEREFORE compilers that have not extended the standard require the
- argument in C_LOC to be of the variant:
-
- CHARACTER(LEN=1), TARGET :: chr
- or
- CHARACTER, TARGET :: chr
- (B)
- *** IMPORTANT ***
- If you add a new <a href="./H5Dff_f90.html#robo31">H5D</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5D2fh5dvlen5freclaim"></a>
-<a name="robo127"></a><h2>h5dvlen_reclaim</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Dff_f90.html#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dvlen_reclaim</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Reclaims VL datatype memory buffers.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - Identifier of the datatype.
- space_id - Identifier of the dataspace.
- plist_id - Identifier of the property list used to create the buffer.
- buf - Pointer to the buffer to be reclaimed.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January 11, 2011
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE H5Dvlen_reclaim_f<span class="sign">(</span>type_id<span class="sign">,</span> space_id<span class="sign">,</span> plist_id<span class="sign">,</span> buf<span class="sign">,</span> hdferr<span class="sign">)</span>
-
- USE ISO_C_BINDING
- IMPLICIT NONE
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Identifier of the datatype<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Identifier of the dataspace<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Identifier of the property list used to create the buffer<span class="sign">.</span>
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Pointer to the buffer to be reclaimed<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">.</span>
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Dff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Dff_F90_f90.html b/fortran/doc/DevelGuide/src/H5Dff_F90_f90.html
deleted file mode 100644
index afebdd8..0000000
--- a/fortran/doc/DevelGuide/src/H5Dff_F90_f90.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Dff_F90.f90</title>
-<!-- Source: ./src/H5Dff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5D2028F9029"></a>
-<a name="robo33"></a><h2>H5D (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5D_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 interfaces for <a href="./H5Dff_f90.html#robo31">H5D</a> functions. It contains
- the same functions as <a href="./H5Dff_F03_f90.html#robo_top_of_doc">H5Dff_F03.f90</a> but excludes the Fortran 2003 functions
- and the interface listings. This file will be compiled instead of <a href="./H5Dff_F03_f90.html#robo_top_of_doc">H5Dff_F03.f90</a>
- if Fortran 2003 functions are not enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> (1) The maximum rank of an array allowed in Fortran is 7, therefore
- we only provide an interface for arrays up to and including rank 7.
-
- (2) Unfortunately we are using a generic interface and one of the factors
- used in determining the proper routine to select is that of the array
- rank being passed, therefore we can not create just one subroutine for
- each array type (integer, real, etc...) of various ranks and then use a
- rank 1 array of assumed size in the just one subroutine,
- (i.e. integer, dimension(*) :: ... )
- (i.e. real , dimension(*) :: ... ) etc...
-
- (3)
- *** IMPORTANT ***
- If you add a new <a href="./H5Dff_f90.html#robo31">H5D</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5D2fh5dread5ff"></a>
-<a name="robo124"></a><h2>h5dread_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Dff_f90.html#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dread_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Reads raw data from the specified dataset into buf,
- converting from file datatype and dataspace to memory
- datatype and dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - dataset identifier
- mem_type_id - memory type identifier
- dims - 1-dim array of size 7; dims(k) has the size
- of k-th dimension of the buf array
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to read data in
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> mem_space_id - memory dataspace identifier
- file_space_id - file dataspace identifier
- xfer_prp - trasfer property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-
- dims parameter was added to make code portable;
- n parameter was replaced with dims parameter in
- the h5dwrite_reference_obj and h5dwrite_reference_dsetreg
- functions. April 2, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This function is overloaded to read INTEGER,
- REAL, DOUBLE PRECISION and CHARACTER buffers
- up to 7 dimensions, and one dimensional buffers
- of the TYPE(hobj_ref_t_f) and TYPE(hdset_reg_ref_t_f) types.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Dff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Dff_f90.html b/fortran/doc/DevelGuide/src/H5Dff_f90.html
deleted file mode 100644
index 5444a93..0000000
--- a/fortran/doc/DevelGuide/src/H5Dff_f90.html
+++ /dev/null
@@ -1,506 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Dff.f90</title>
-<!-- Source: ./src/H5Dff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5D"></a>
-<a name="robo31"></a><h2>H5D</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5D</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Dff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5D</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5D</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5D2fh5dclose5ff"></a>
-<a name="robo113"></a><h2>h5dclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes a dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dclose_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dcreate5fanon5ff"></a>
-<a name="robo114"></a><h2>h5dcreate_anon_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dcreate_anon_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a dataset in a file without linking it into the file structure
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier of the file or group within which to create the dataset.
- type_id - Identifier of the datatype to use when creating the dataset.
- space_id - Identifier of the dataspace to use when creating the dataset.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dset_id - dataset identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> dcpl_id - Dataset creation property list identifier.
- dapl_id - Dataset access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 11, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dcreate_anon_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> type_id<span class="sign">,</span> space_id<span class="sign">,</span> dset_id<span class="sign">,</span> hdferr<span class="sign">,</span> dcpl_id<span class="sign">,</span> dapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dcpl_id <span class="sign">!</span> Dataset creation property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dapl_id <span class="sign">!</span> Dataset access property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5D2fh5dcreate5ff"></a>
-<a name="robo115"></a><h2>h5dcreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dcreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a dataset at the specified location
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - file or group identifier
- name - dataset name
- type_id - dataset datatype identifier
- space_id - dataset dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dset_id - dataset identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> creation_prp - Dataset creation property list
- lcpl_id - Link creation property list
- dapl_id - Dataset access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> - Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-
- - Added version's 1.8 new optional parameters
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dcreate_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> type_id<span class="sign">,</span> space_id<span class="sign">,</span> dset_id<span class="sign">,</span> <span class="sign">&amp;</span>
- hdferr<span class="sign">,</span> dcpl_id<span class="sign">,</span> lcpl_id<span class="sign">,</span> dapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the dataset
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5faccess5fplist5ff"></a>
-<a name="robo116"></a><h2>h5dget_access_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_access_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a copy of the dataset creation property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - Dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> plist_id - Dataset access property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 13, 2009
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE <strong>h5dget_access_plist_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> plist_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id
- INTEGER <span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5fcreate5fplist5ff"></a>
-<a name="robo117"></a><h2>h5dget_create_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_create_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns an identifier for a copy of the dataset creation
- property list for a dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> plist_id - creation property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dget_create_plist_f</strong><span class="sign">(</span>dataset_id<span class="sign">,</span> plist_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation
- <span class="sign">!</span> property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5fspace5ff"></a>
-<a name="robo118"></a><h2>h5dget_space_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_space_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns an identifier for a copy of the dataspace for a
- dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dataspace_id - dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dget_space_f</strong><span class="sign">(</span>dataset_id<span class="sign">,</span> dataspace_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataspace_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5fspace5fstatus5ff"></a>
-<a name="robo119"></a><h2>h5dget_space_status_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_space_status_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the status of data space allocation.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - status; may have one of the following values:
- H5D_SPACE_STS_ERROR_F
- H5D_SPACE_STS_NOT_ALLOCATED_F
- H5D_SPACE_STS_PART_ALLOCATED_F
- H5D_SPACE_STS_ALLOCATED_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dget_space_status_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Memory buffer to fill in
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5fstorage5fsize5ff"></a>
-<a name="robo120"></a><h2>h5dget_storage_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_storage_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the amount of storage requires by a dataset
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - datastorage size
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 15, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dget_storage_size_f</strong><span class="sign">(</span>dataset_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Amount of storage
- <span class="sign">!</span> allocated <span class="keyword">for</span> dataset
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dget5ftype5ff"></a>
-<a name="robo121"></a><h2>h5dget_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dget_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns an identifier for a copy of the datatype for a
- dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> datatype_id - dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dget_type_f</strong><span class="sign">(</span>dataset_id<span class="sign">,</span> datatype_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> datatype_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dopen5ff"></a>
-<a name="robo123"></a><h2>h5dopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an existing dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - file or group identifier
- name - dataset name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dset_id - dataset identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> dapl_id - Dataset access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> -Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-
- -Added 1.8 (optional) parameter dapl_id
- February, 2008, M. Scot Breitenfeld
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dopen_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> dset_id<span class="sign">,</span> hdferr<span class="sign">,</span> dapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the dataset
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dapl_id <span class="sign">!</span> Dataset access property list
-</pre>
-
-<hr />
-<a name="H5D2fh5dset5fextent"></a>
-<a name="robo125"></a><h2>h5dset_extent</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dset_extent</strong> (instead of obsolete name: h5dextend_f)
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Extends a dataset with unlimited dimension.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
- size - array containing the new magnitude of
- each dimension
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-
- Changed name from the now obsolete h5dextend_f
- to h5dset_extent_f. Provided interface to old name
- for backward compatability. -MSB- March 14, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5dset_extent_f<span class="sign">(</span>dataset_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: size
- ! Array containing
- ! dimensions' sizes
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5D2fh5dvlen5fget5fmax5flen5ff"></a>
-<a name="robo126"></a><h2>h5dvlen_get_max_len_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo31">H5D</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dvlen_get_max_len_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns maximum length of the VL array elements
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dataset_id - dataset identifier
- type_id - datatype identifier
- space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - buffer size
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 15, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dvlen_get_max_len_f</strong><span class="sign">(</span>dataset_id<span class="sign">,</span> type_id<span class="sign">,</span> space_id<span class="sign">,</span> len<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dataset_id <span class="sign">!</span> Dataset identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> len <span class="sign">!</span> Maximum length of the element
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Dff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Ef_c.html b/fortran/doc/DevelGuide/src/H5Ef_c.html
deleted file mode 100644
index 79b7914..0000000
--- a/fortran/doc/DevelGuide/src/H5Ef_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Ef.c</title>
-<!-- Source: ./src/H5Ef.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Ef2fH5Ef"></a>
-<a name="robo38"></a><h2>H5Ef</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Eff_f90.html#robo35">H5E</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Ef.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Eff_f90.html b/fortran/doc/DevelGuide/src/H5Eff_f90.html
deleted file mode 100644
index 7eb95e6..0000000
--- a/fortran/doc/DevelGuide/src/H5Eff_f90.html
+++ /dev/null
@@ -1,197 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Eff.f90</title>
-<!-- Source: ./src/H5Eff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5E"></a>
-<a name="robo35"></a><h2>H5E</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5E</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Eff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This Module contains Fortran interfaces for <strong>H5E</strong> functions.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5E</strong> function to the module you must add the function name
- to the Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5E2fh5eclear5ff"></a>
-<a name="robo128"></a><h2>h5eclear_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo35">H5E</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5eclear_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Clears the error stack for the current thread.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> estack_id - Error Stack id
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). April 6, 2001
-
- Added optional error stack identifier in order to bring
- the function in line with the h5eclear2 routine.
- MSB, July 9, 2009
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5eclear_f</strong><span class="sign">(</span>hdferr<span class="sign">,</span> estack_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> estack_id
-</pre>
-
-<hr />
-<a name="H5E2fh5eget5fmajor5ff"></a>
-<a name="robo130"></a><h2>h5eget_major_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo35">H5E</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5eget_major_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a character string describing an error specified
- by a major error number.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> error_no - major error number
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - character string describing the error
- namelen - number of characters in the name buffer
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). April 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5eget_major_f</strong><span class="sign">(</span>error_no<span class="sign">,</span> name<span class="sign">,</span> namelen<span class="sign">,</span> hdferr<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error_no <span class="sign">!</span> Major error number
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Character string describing
- <span class="sign">!</span> the error<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> namelen <span class="sign">!</span> Anticipated number of characters
- <span class="sign">!</span> in name<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5E2fh5eget5fminor5ff"></a>
-<a name="robo131"></a><h2>h5eget_minor_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo35">H5E</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5eget_minor_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a character string describing an error specified
- by a minor error number.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> error_no - minor error number
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - character string describing the error
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). April 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5eget_minor_f</strong><span class="sign">(</span>error_no<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error_no <span class="sign">!</span> Major error number
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Character string describing
- <span class="sign">!</span> the error
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5E2fh5eprint5ff"></a>
-<a name="robo132"></a><h2>h5eprint_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo35">H5E</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5eprint_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Prints the error stack in a default manner.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> name - name of the file that contains print output
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). April 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5eprint_f</strong><span class="sign">(</span>hdferr<span class="sign">,</span> name<span class="sign">)</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> File name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Eff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5FDmpiof_c.html b/fortran/doc/DevelGuide/src/H5FDmpiof_c.html
deleted file mode 100644
index 74143d2..0000000
--- a/fortran/doc/DevelGuide/src/H5FDmpiof_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5FDmpiof.c</title>
-<!-- Source: ./src/H5FDmpiof.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5FDmpiof2fH5FDmpiof"></a>
-<a name="robo42"></a><h2>H5FDmpiof</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for Parallel Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5FDmpiof.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5FDmpioff_f90.html b/fortran/doc/DevelGuide/src/H5FDmpioff_f90.html
deleted file mode 100644
index 473b5db..0000000
--- a/fortran/doc/DevelGuide/src/H5FDmpioff_f90.html
+++ /dev/null
@@ -1,253 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5FDmpioff.f90</title>
-<!-- Source: ./src/H5FDmpioff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5FDMPIO"></a>
-<a name="robo41"></a><h2>H5FDMPIO</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5FDMPIO</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for H5P functions needed by
- parallel MPI programs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new H5P function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pget5fdxpl5fmpio5ff"></a>
-<a name="robo231"></a><h2>h5pget_dxpl_mpio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_dxpl_mpio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the data transfer mode.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data transfer property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> data_xfer_mode- transfer mode; possible values are:
- H5FD_MPIO_INDEPENDENT_F
- H5FD_MPIO_COLLECTIVE_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- November, 2000
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_dxpl_mpio_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> data_xfer_mode<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> data_xfer_mode <span class="sign">!</span> Data transfer mode<span class="sign">.</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5FD_MPIO_INDEPENDENT_F
- <span class="sign">!</span> H5FD_MPIO_COLLECTIVE_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pget5ffapl5fmpio5ff"></a>
-<a name="robo239"></a><h2>h5pget_fapl_mpio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_mpio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns MPI communicator information.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> comm - MPI-2 communicator
- info - MPI-2 info object
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- November, 2000
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_mpio_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> comm<span class="sign">,</span> info<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> comm <span class="sign">!</span> buffer to <span class="keyword">return</span> communicator
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> info <span class="sign">!</span> buffer to <span class="keyword">return</span> info object
- <span class="sign">!</span> as defined in MPI_FILE_OPEN of MPI<span class="sign">-</span>2
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pget5ffapl5fmpiposix5ff"></a>
-<a name="robo240"></a><h2>h5pget_fapl_mpiposix_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_mpiposix_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns MPI communicator information.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> comm - MPI-2 communicator
- use_gpfs - flag to use GPFS hints
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- May 6, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_mpiposix_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> comm<span class="sign">,</span> use_gpfs<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> comm <span class="sign">!</span> Buffer to <span class="keyword">return</span> communicator
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> use_gpfs
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pset5fdxpl5fmpio5ff"></a>
-<a name="robo314"></a><h2>h5pset_dxpl_mpio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_dxpl_mpio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets data transfer mode.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data transfer property list identifier
- data_xfer_mode - transfer mode; possible values are:
- H5FD_MPIO_INDEPENDENT_F
- H5FD_MPIO_COLLECTIVE_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- November, 2000
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_dxpl_mpio_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> data_xfer_mode<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> data_xfer_mode <span class="sign">!</span> Data transfer mode<span class="sign">.</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5FD_MPIO_INDEPENDENT_F
- <span class="sign">!</span> H5FD_MPIO_COLLECTIVE_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pset5ffapl5fmpio5ff"></a>
-<a name="robo320"></a><h2>h5pset_fapl_mpio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_mpio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Stores MPI IO communicator information to the file
- access property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- comm - MPI-2 communicator
- info - MPI-2 info object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- November, 2000
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_mpio_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> comm<span class="sign">,</span> info<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> comm <span class="sign">!</span> MPI communicator to be used <span class="keyword">for</span> file open
- <span class="sign">!</span> as defined in MPI_FILE_OPEN of MPI<span class="sign">-</span>2
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> info <span class="sign">!</span> MPI info object to be used <span class="keyword">for</span> file open
- <span class="sign">!</span> as defined in MPI_FILE_OPEN of MPI<span class="sign">-</span>2
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5FDMPIO2fh5pset5ffapl5fmpiposix5ff"></a>
-<a name="robo321"></a><h2>h5pset_fapl_mpiposix_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo41">H5FDMPIO</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_mpiposix_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Stores MPI IO communicator information to the file
- access property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- comm - MPI-2 communicator
- use_gpfs - logical flag to use the GPFS hints
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- May 6, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_mpiposix_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> comm<span class="sign">,</span> use_gpfs<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> comm <span class="sign">!</span> MPI communicator to be used <span class="keyword">for</span> file open
- <span class="sign">!</span> as defined in MPI_FILE_OPEN of MPI<span class="sign">-</span>2
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> use_gpfs
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5FDmpioff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Ff_c.html b/fortran/doc/DevelGuide/src/H5Ff_c.html
deleted file mode 100644
index c91a62d..0000000
--- a/fortran/doc/DevelGuide/src/H5Ff_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Ff.c</title>
-<!-- Source: ./src/H5Ff.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Ff2fH5Ff"></a>
-<a name="robo43"></a><h2>H5Ff</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Fff_f90.html#robo39">H5F</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Ff.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Fff_f90.html b/fortran/doc/DevelGuide/src/H5Fff_f90.html
deleted file mode 100644
index b0164c9..0000000
--- a/fortran/doc/DevelGuide/src/H5Fff_f90.html
+++ /dev/null
@@ -1,653 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Fff.f90</title>
-<!-- Source: ./src/H5Fff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5F"></a>
-<a name="robo39"></a><h2>H5F</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5F</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> <a href="#robo_top_of_doc">H5Fff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5F</strong> functions.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5F</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5F2fh5fclose5ff"></a>
-<a name="robo135"></a><h2>h5fclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - file identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fclose_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fcreate5ff"></a>
-<a name="robo136"></a><h2>h5fcreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fcreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates <a href="./HDF5_f90.html#robo76">HDF5</a> files.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> name - name of the file to create
- access_flags - File access flags. Allowable values are:
- H5F_ACC_TRUNC_F
- H5F_ACC_EXCL_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> file_id - file identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> creation_prp - file creation property list identifier
- access_prp - file access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fcreate_f</strong><span class="sign">(</span>name<span class="sign">,</span> access_flags<span class="sign">,</span> file_id<span class="sign">,</span> hdferr<span class="sign">,</span> <span class="sign">&amp;</span>
- creation_prp<span class="sign">,</span> access_prp<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_flags <span class="sign">!</span> File access flags
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> creation_prp
- <span class="sign">!</span> File creation propertly
- <span class="sign">!</span> list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_prp
- <span class="sign">!</span> File access property list
- <span class="sign">!</span> identifier
-</pre>
-
-<hr />
-<a name="H5F2fh5fflush5ff"></a>
-<a name="robo137"></a><h2>h5fflush_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fflush_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Flushes all buffers associated WITH a file to disk
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> object_id - identifier of object used to identify the file.
- scope - specifies the scope of the flushing action.
- Possible values are:
- H5F_SCOPE_GLOBAL_F
- H5F_SCOPE_LOCAL_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> creation_prp - file creation property list identifier
- access_prp - file access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fflush_f</strong><span class="sign">(</span>object_id<span class="sign">,</span> scope<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> object_id <span class="sign">!</span>identifier <span class="keyword">for</span> any object
- <span class="sign">!</span>associate with a file<span class="sign">,</span>
- <span class="sign">!</span>including the file itself<span class="sign">,</span>
- <span class="sign">!</span>a dataset<span class="sign">,</span> a group<span class="sign">,</span> an
- <span class="sign">!</span>attribute<span class="sign">,</span> or a named
- <span class="sign">!</span>data type
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> scope <span class="sign">!</span>scope of the flushing
- <span class="sign">!</span>action<span class="sign">,</span> possible values
- <span class="sign">!</span>are<span class="sign">:</span> H5F_SCOPE_GLOBAL_F
- <span class="sign">!</span> which flushes the entire
- <span class="sign">!</span>virtual file<span class="sign">,</span>
- <span class="sign">!</span>and H5F_SCOPE_LOCAL_F
- <span class="sign">!</span>which flushes only the
- <span class="sign">!</span>specified file<span class="sign">.</span>
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5faccess5fplist5ff"></a>
-<a name="robo138"></a><h2>h5fget_access_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_access_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a file access property list identifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - identifier of a file to creation property list of
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> access_id - access property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_access_plist_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> access_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_id <span class="sign">!</span> File access property
- <span class="sign">!</span> list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5fcreate5fplist5ff"></a>
-<a name="robo139"></a><h2>h5fget_create_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_create_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a file creation property list identifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - identifier of a file to creation property list of
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> prop_id - creation property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_create_plist_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> prop_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prop_id <span class="sign">!</span> File creation property
- <span class="sign">!</span> list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5ffilesize5ff"></a>
-<a name="robo140"></a><h2>h5fget_filesize_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_filesize_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the file size of the <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - file identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - file size
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- July 7, 2004
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_filesize_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> file identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span> 0 on success<span class="sign">,</span>
- <span class="sign">!</span> <span class="sign">-</span>1 <span class="keyword">if</span> fail
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5ffreespace5ff"></a>
-<a name="robo141"></a><h2>h5fget_freespace_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_freespace_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get amount of free space within a file
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - file identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> free_space - amount of free space in file
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Quincey Koziol
- October 7, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_freespace_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> free_space<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">(</span>HSSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> free_space
- <span class="sign">!</span> amount of free space in file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5fname5ff"></a>
-<a name="robo142"></a><h2>h5fget_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the name of the file from the object identifier
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to store the read name
- size - actual size of the name
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- July 6, 2004
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_name_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> buf<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf
- <span class="sign">!</span> Buffer to hold file name
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the file name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span> 0 on success<span class="sign">,</span>
- <span class="sign">!</span> <span class="sign">-</span>1 <span class="keyword">if</span> fail
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5fobj5fcount5ff"></a>
-<a name="robo143"></a><h2>h5fget_obj_count_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_obj_count_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets number of the objects open within a file
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - file identifier
- obj_type - type of the object; possible values are:
- H5F_OBJ_FILE_F
- H5F_OBJ_DATASET_F
- H5F_OBJ_GROUP_F
- H5F_OBJ_DATATYPE_F
- H5F_OBJ_ALL_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_count - number of open objects
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 30, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Changed the type of obj_count to INTEGER(SIZE_T)
- September 25, 2008 EIP
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_obj_count_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> obj_type<span class="sign">,</span> obj_count<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_type <span class="sign">!</span> Object type
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_count
- <span class="sign">!</span> Number of open objects
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fget5fobj5fids5ff"></a>
-<a name="robo144"></a><h2>h5fget_obj_ids_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fget_obj_ids_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get list of open objects identifiers within a file
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - file identifier
- obj_type - type of the object; possible values are:
- H5F_OBJ_FILE_F
- H5F_OBJ_DATASET_F
- H5F_OBJ_GROUP_F
- H5F_OBJ_DATATYPE_F
- H5F_OBJ_ALL_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_ids - array of open object identifiers
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> num_objs - number of open objects
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 30, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Added optional parameter num_objs for number of open objects
- of the specified type and changed type of max_obj to
- INTEGER(SIZE_T)
- September 25, 2008 EIP
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fget_obj_ids_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> obj_type<span class="sign">,</span> max_objs<span class="sign">,</span> obj_ids<span class="sign">,</span> hdferr<span class="sign">,</span> num_objs<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_type <span class="sign">!</span> Object type
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_objs <span class="sign">!</span> Maximum <span class="sign">#</span> of objects to retrieve
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(INOUT) :: obj_ids
- ! Array of open objects iidentifiers
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(SIZE_T), INTENT(OUT), OPTIONAL :: num_objs ! number of open objects
-</pre>
-
-<hr />
-<a name="H5F2fh5fis5fhdf55ff"></a>
-<a name="robo145"></a><h2>h5fis_hdf5_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fis_hdf5_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a file is in the <a href="./HDF5_f90.html#robo76">HDF5</a> format.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> name - name of the file to check
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> status - indicates if file is and <a href="./HDF5_f90.html#robo76">HDF5</a> file
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fis_hdf5_f</strong><span class="sign">(</span>name<span class="sign">,</span> status<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the file
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> status <span class="sign">!</span> Indicates <span class="keyword">if</span> file
- <span class="sign">!</span> is an <a href="./HDF5_f90.html#robo76">HDF5</a> file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5fmount5ff"></a>
-<a name="robo146"></a><h2>h5fmount_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fmount_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Mounts a file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - the identifier for of file or group in
- which name is defined
- name - the name of the group onto which the file
- specified by child_id is to be mounted.
- child_id - the identifier of the file to be mounted.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> access_prp - the identifier of the property list to be used
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fmount_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> child_id<span class="sign">,</span> hdferr<span class="sign">,</span> access_prp<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier <span class="keyword">for</span> file or group
- <span class="sign">!</span> in which dsetname is defined
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the group
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> child_id <span class="sign">!</span> File identifier <span class="keyword">for</span> the
- <span class="sign">!</span> file to be mounted
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_prp
- <span class="sign">!</span> File access property list
- <span class="sign">!</span> identifier
-</pre>
-
-<hr />
-<a name="H5F2fh5fopen5ff"></a>
-<a name="robo147"></a><h2>h5fopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5fopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> name - name of the file to acecss
- access_flags - File access flags. Allowable values are:
- H5F_ACC_RDWR_F
- H5F_ACC_RDONLY_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> file_id - file identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> access_prp - file access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5fopen_f</strong><span class="sign">(</span>name<span class="sign">,</span> access_flags<span class="sign">,</span> file_id<span class="sign">,</span> hdferr<span class="sign">,</span> access_prp<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_flags <span class="sign">!</span> File access flags
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> access_prp
- <span class="sign">!</span> File access property list
- <span class="sign">!</span> identifier
-</pre>
-
-<hr />
-<a name="H5F2fh5freopen5ff"></a>
-<a name="robo148"></a><h2>h5freopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5freopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Reopens <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_id - identifier of a file for which an
- additional identifier is required
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ret_file_id - new file identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5freopen_f</strong><span class="sign">(</span>file_id<span class="sign">,</span> ret_file_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ret_file_id <span class="sign">!</span> New File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5F2fh5funmount5ff"></a>
-<a name="robo149"></a><h2>h5funmount_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo39">H5F</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5funmount_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Unmounts a file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - the identifier for of file or group in
- which name is defined
- name - the name of the mount point
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5funmount_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier <span class="keyword">for</span> file or group
- <span class="sign">!</span> at which the specified file
- <span class="sign">!</span> is to be unmounted
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the mount point
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Fff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Gf_c.html b/fortran/doc/DevelGuide/src/H5Gf_c.html
deleted file mode 100644
index a71f0e8..0000000
--- a/fortran/doc/DevelGuide/src/H5Gf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Gf.c</title>
-<!-- Source: ./src/H5Gf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Gf2fH5Gf"></a>
-<a name="robo45"></a><h2>H5Gf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Gff_f90.html#robo44">H5G</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Gf.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Gff_f90.html b/fortran/doc/DevelGuide/src/H5Gff_f90.html
deleted file mode 100644
index 74ec2f4..0000000
--- a/fortran/doc/DevelGuide/src/H5Gff_f90.html
+++ /dev/null
@@ -1,840 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Gff.f90</title>
-<!-- Source: ./src/H5Gff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5G"></a>
-<a name="robo44"></a><h2>H5G</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5G</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Gff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5G</strong> functions.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5G</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5G2fh5gclose5ff"></a>
-<a name="robo151"></a><h2>h5gclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes the specified group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> grp_id - group identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gclose_f</strong><span class="sign">(</span>grp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> grp_id <span class="sign">!</span> Group identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fH5Gcreate5fanon5ff"></a>
-<a name="robo152"></a><h2>H5Gcreate_anon_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Gcreate_anon_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new empty group without linking it into the file structure.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Location identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> grp_id - group identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> gcpl_id - Group creation property list identifier
- gapl_id - Group access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 15, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5Gcreate_anon_f<span class="sign">(</span>loc_id<span class="sign">,</span> grp_id<span class="sign">,</span> hdferr<span class="sign">,</span> gcpl_id<span class="sign">,</span> gapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> grp_id <span class="sign">!</span> Group identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Property list <span class="keyword">for</span> group creation
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gapl_id <span class="sign">!</span> Property list <span class="keyword">for</span> group access
-</pre>
-
-<hr />
-<a name="H5G2fh5gcreate5ff"></a>
-<a name="robo153"></a><h2>h5gcreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gcreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - group name at the specified location
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> grp_id - group identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size_hint - a parameter indicating the number of bytes to
- reserve for the names that will appear in the group
- lcpl_id - Property list for link creation
- gcpl_id - Property list for group creation
- gapl_id - Property list for group access
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-
- Added additional optional paramaters in 1.8
- MSB - February 27, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gcreate_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> grp_id<span class="sign">,</span> hdferr<span class="sign">,</span> size_hint<span class="sign">,</span> lcpl_id<span class="sign">,</span> gcpl_id<span class="sign">,</span> gapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the group
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> grp_id <span class="sign">!</span> Group identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size_hint
- <span class="sign">!</span> Parameter indicating
- <span class="sign">!</span> the number of bytes
- <span class="sign">!</span> to reserve <span class="keyword">for</span> the
- <span class="sign">!</span> names that will appear
- <span class="sign">!</span> in the group<span class="sign">.</span> Set to OBJECT_NAMELEN_DEFAULT_F
- <span class="sign">!</span> <span class="keyword">if</span> using any of the optional
- <span class="sign">!</span> parameters lcpl_id<span class="sign">,</span> gcpl_id<span class="sign">,</span> and<span class="sign">/</span>or gapl_id when not
- <span class="sign">!</span> using keywords in specifying the optional parameters
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Property list <span class="keyword">for</span> link creation
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Property list <span class="keyword">for</span> group creation
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gapl_id <span class="sign">!</span> Property list <span class="keyword">for</span> group access
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5fcomment5ff"></a>
-<a name="robo155"></a><h2>h5gget_comment_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_comment_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves comment for specified object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the object at specified location
- size - size of the buffer required to hold comment
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buffer - buffer to hold object's comment
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_comment_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> buffer<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Current name of an object
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Maximum number of buffer
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span>size<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buffer
- <span class="sign">!</span> Buffer to hold a comment
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fH5Gget5fcreate5fplist5ff"></a>
-<a name="robo156"></a><h2>H5Gget_create_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Gget_create_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a group creation property list identifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> grp_id - group identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 15, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5gget_create_plist_f<span class="sign">(</span>grp_id<span class="sign">,</span> gcpl_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> grp_id <span class="sign">!</span> Group identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Property list <span class="keyword">for</span> group creation
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5finfo5fby5fidx5ff"></a>
-<a name="robo157"></a><h2>h5gget_info_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_info_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves information about a group, according to the group’s position within an index.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier
- group_name - Name of group containing group for which information is to be retrieved
- index_type - Index type
- order - Order of the count in the index
- n - Position in the index of the group for which information is retrieved
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> storage_type - Type of storage for links in group
- H5G_STORAGE_TYPE_COMPACT: Compact storage
- H5G_STORAGE_TYPE_DENSE: Indexed storage
- H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- nlinks - Number of links in group
- max_corder - Current maximum creation order value for group
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
- mounted - Whether group has a file mounted on it
-</pre>
-<p class="item_name">NOTES</p>
-<pre> In C the output is defined as a structure: H5G_info_t
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 18, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Added 'mounted' paramater
- M. Scot Breitenfeld
- July 16, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_info_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> index_type<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> <span class="sign">&amp;</span>
- storage_type<span class="sign">,</span> nlinks<span class="sign">,</span> max_corder<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">,</span> mounted<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of group containing group <span class="keyword">for</span> which information is to be retrieved
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_type <span class="sign">!</span> Index type
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order of the count in the index
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Position in the index of the group <span class="keyword">for</span> which information is retrieved
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> storage_type <span class="sign">!</span> Type of storage <span class="keyword">for</span> links in group<span class="sign">:</span>
- <span class="sign">!</span> H5G_STORAGE_TYPE_COMPACT_F<span class="sign">:</span> Compact storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_DENSE_F<span class="sign">:</span> Indexed storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_SYMBOL_TABLE_F<span class="sign">:</span> Symbol tables<span class="sign">,</span> the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nlinks <span class="sign">!</span> Number of links in group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_corder <span class="sign">!</span> Current maximum creation order value <span class="keyword">for</span> group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> mounted <span class="sign">!</span> Whether group has a file mounted on it
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5finfo5fby5fname5ff"></a>
-<a name="robo158"></a><h2>h5gget_info_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_info_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves information about a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier
- group_name - Name of group containing group for which information is to be retrieved
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> storage_type - Type of storage for links in group
- H5G_STORAGE_TYPE_COMPACT: Compact storage
- H5G_STORAGE_TYPE_DENSE: Indexed storage
- H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- nlinks - Number of links in group
- max_corder - Current maximum creation order value for group
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
- mounted - Whether group has a file mounted on it
-</pre>
-<p class="item_name">NOTES</p>
-<pre> In C the output is defined as a structure: H5G_info_t
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 18, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Added 'mounted' paramater
- M. Scot Breitenfeld
- July 16, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_info_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> <span class="sign">&amp;</span>
- storage_type<span class="sign">,</span> nlinks<span class="sign">,</span> max_corder<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">,</span> mounted<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of group containing group <span class="keyword">for</span> which information is to be retrieved
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> storage_type <span class="sign">!</span> Type of storage <span class="keyword">for</span> links in group<span class="sign">:</span>
- <span class="sign">!</span> H5G_STORAGE_TYPE_COMPACT_F<span class="sign">:</span> Compact storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_DENSE_F<span class="sign">:</span> Indexed storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_SYMBOL_TABLE_F<span class="sign">:</span> Symbol tables<span class="sign">,</span> the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nlinks <span class="sign">!</span> Number of links in group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_corder <span class="sign">!</span> Current maximum creation order value <span class="keyword">for</span> group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> mounted <span class="sign">!</span> Whether group has a file mounted on it
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5finfo5ff"></a>
-<a name="robo159"></a><h2>h5gget_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves information about a group
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> group_id - Group identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> storage_type - Type of storage for links in group
- H5G_STORAGE_TYPE_COMPACT: Compact storage
- H5G_STORAGE_TYPE_DENSE: Indexed storage
- H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- nlinks - Number of links in group
- max_corder - Current maximum creation order value for group
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> mounted - Whether group has a file mounted on it
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 15, 2008
-</pre>
-<p class="item_name">NOTES</p>
-<pre> In C the output is defined as a structure: H5G_info_t
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> - Added 'mounted' paramater
- M. Scot Breitenfeld
- July 16, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_info_f</strong><span class="sign">(</span>group_id<span class="sign">,</span> storage_type<span class="sign">,</span> nlinks<span class="sign">,</span> max_corder<span class="sign">,</span> hdferr<span class="sign">,</span> mounted<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_id <span class="sign">!</span> Group identifier
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> storage_type <span class="sign">!</span> Type of storage <span class="keyword">for</span> links in group<span class="sign">:</span>
- <span class="sign">!</span> H5G_STORAGE_TYPE_COMPACT_F<span class="sign">:</span> Compact storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_DENSE_F<span class="sign">:</span> Indexed storage
- <span class="sign">!</span> H5G_STORAGE_TYPE_SYMBOL_TABLE_F<span class="sign">:</span> Symbol tables<span class="sign">,</span> the original <a href="./HDF5_f90.html#robo76">HDF5</a> structure
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nlinks <span class="sign">!</span> Number of links in group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_corder <span class="sign">!</span> Current maximum creation order value <span class="keyword">for</span> group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> mounted <span class="sign">!</span> Whether group has a file mounted on it
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5flinkval5ff"></a>
-<a name="robo160"></a><h2>h5gget_linkval_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_linkval_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the name of the object that the symbolic link
- points to.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - symbolic link to the object whose name
- is to be returned.
- size - maximum number of characters to be returned
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buffer - a buffer to hold the name of the object
- being sought
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_linkval_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> buffer<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Current name of an object
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Maximum number of buffer
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span>size<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buffer
- <span class="sign">!</span> Buffer to hold a name of
- <span class="sign">!</span> the object symbolic link
- <span class="sign">!</span> points to
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gget5fobj5finfo5fidx5ff"></a>
-<a name="robo161"></a><h2>h5gget_obj_info_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gget_obj_info_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns name and type of the group member identified by
- its index.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the group at the specified location
- idx - object index (zero-based)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_name - object name
- obj_type - object type
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gget_obj_info_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> idx<span class="sign">,</span> <span class="sign">&amp;</span>
- obj_name<span class="sign">,</span> obj_type<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx <span class="sign">!</span> Index of member object
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of the object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_type <span class="sign">!</span> Object type
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5glink25ff"></a>
-<a name="robo162"></a><h2>h5glink2_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5glink2_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a link of the specified type from new_name
- to current_name. current_name and new_name are interpreted
- releative to current and new location identifiers.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> cur_loc_id - location identifier
- cur_name - name of the existing object if link is a
- hard link. Can be anything for the soft link.
- link_type - link type; possible values are:
- H5G_LINK_HARD_F (0)
- H5G_LINK_SOFT_F (1)
- new_loc_id - new location identifier
- new_name - new name for the object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 25, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5glink2_f</strong><span class="sign">(</span>cur_loc_id<span class="sign">,</span> cur_name<span class="sign">,</span> link_type<span class="sign">,</span> new_loc_id<span class="sign">,</span> <span class="sign">&amp;</span>
- new_name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cur_loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cur_name
- <span class="sign">!</span> Current name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_type <span class="sign">!</span> link type
- <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5G_LINK_HARD_F <span class="sign">(</span>0<span class="sign">)</span> or
- <span class="sign">!</span> H5G_LINK_SOFT_F <span class="sign">(</span>1<span class="sign">)</span>
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_name <span class="sign">!</span> New name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5glink5ff"></a>
-<a name="robo163"></a><h2>h5glink_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5glink_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a link of the specified type from new_name
- to current_name.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- link_type - link type; possible values are:
- H5G_LINK_HARD_F (0)
- H5G_LINK_SOFT_F (1)
- current_name - name of the existing object if link is a
- hard link. Can be anything for the soft link
- new_name - new name for the object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5glink_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> link_type<span class="sign">,</span> current_name<span class="sign">,</span> <span class="sign">&amp;</span>
- new_name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_type <span class="sign">!</span> link type
- <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5G_LINK_HARD_F <span class="sign">(</span>0<span class="sign">)</span> or
- <span class="sign">!</span> H5G_LINK_SOFT_F <span class="sign">(</span>1<span class="sign">)</span>
-
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> current_name
- <span class="sign">!</span> Current name of an object
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_name <span class="sign">!</span> New name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gmove25ff"></a>
-<a name="robo164"></a><h2>h5gmove2_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gmove2_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Renames an object within an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> src_loc_id - original location identifier
- src_name - object's name at specified original location
- dst_loc_id - original location identifier
- dst_name - object's new name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 25, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gmove2_f</strong><span class="sign">(</span>src_loc_id<span class="sign">,</span> src_name<span class="sign">,</span> dst_loc_id<span class="sign">,</span> dst_name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_name <span class="sign">!</span> Original name of an object
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dst_loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dst_name <span class="sign">!</span> New name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gmove5ff"></a>
-<a name="robo165"></a><h2>h5gmove_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gmove_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Renames an object within an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - object's name at specified location
- new_name - object's new name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gmove_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> new_name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Current name of an object
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_name <span class="sign">!</span> New name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gn5fmembers5ff"></a>
-<a name="robo166"></a><h2>h5gn_members_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gn_members_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the number of group members.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the group at the specified location
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> nmembers - number of group members
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gn_members_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> nmembers<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nmembers <span class="sign">!</span> Number of members in the
- <span class="sign">!</span> group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gopen5ff"></a>
-<a name="robo167"></a><h2>h5gopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an existing group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the group to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> grp_id - group identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> gapl_id - Group access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-
- Added 1.8 (optional) parameter gapl_id
- February, 2008 M. Scot Breitenfeld
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gopen_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> grp_id<span class="sign">,</span> hdferr<span class="sign">,</span> gapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the group
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> grp_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gapl_id <span class="sign">!</span> Group access property list identifier
-</pre>
-
-<hr />
-<a name="H5G2fh5gset5fcomment5ff"></a>
-<a name="robo168"></a><h2>h5gset_comment_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gset_comment_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets comment for specified object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the object
- comment - comment to set for the object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gset_comment_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> comment<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Current name of an object
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> comment <span class="sign">!</span> New name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5G2fh5gunlink5ff"></a>
-<a name="robo169"></a><h2>h5gunlink_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo44">H5G</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5gunlink_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes the specified name from the group graph and
- decrements the link count for the object to which name
- points
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the object to unlink
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5gunlink_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Gff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5If_c.html b/fortran/doc/DevelGuide/src/H5If_c.html
deleted file mode 100644
index 8dccce7..0000000
--- a/fortran/doc/DevelGuide/src/H5If_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5If.c</title>
-<!-- Source: ./src/H5If.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5If2fH5If"></a>
-<a name="robo48"></a><h2>H5If</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Iff_f90.html#robo47">H5I</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5If.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Iff_f90.html b/fortran/doc/DevelGuide/src/H5Iff_f90.html
deleted file mode 100644
index 5987581..0000000
--- a/fortran/doc/DevelGuide/src/H5Iff_f90.html
+++ /dev/null
@@ -1,304 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Iff.f90</title>
-<!-- Source: ./src/H5Iff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5I"></a>
-<a name="robo47"></a><h2>H5I</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5I</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Iff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5I</strong> functions.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5I</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5I2fh5idec5fref5ff"></a>
-<a name="robo170"></a><h2>h5idec_ref_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5idec_ref_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Decrements the reference count of an ID
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - Object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref_count - Current reference count of the ID
- hdferr: - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Quincey Koziol
- December 9, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5idec_ref_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref_count<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_count <span class="sign">!</span> Current reference count of ID
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5I2fh5iget5ffile5fid5ff"></a>
-<a name="robo171"></a><h2>h5iget_file_id_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5iget_file_id_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Obtains file identifier from the object identifier
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> file_id - file identifier
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 23, 2004
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iget_file_id_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> file_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_id <span class="sign">!</span> File identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5I2fh5iget5fname5ff"></a>
-<a name="robo172"></a><h2>h5iget_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5iget_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a name of an object specified by its idetifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - attribute identifier
- buf_size - size of a buffer to read name in
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to read name in, name will be truncated if
- buffer is not big enough
- name_size - name size
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iget_name_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> buf<span class="sign">,</span> buf_size<span class="sign">,</span> name_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf_size <span class="sign">!</span> Buffer size
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer to hold object name
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name_size <span class="sign">!</span> Actual name size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 <span class="keyword">if</span> successful<span class="sign">,</span>
- <span class="sign">!</span> <span class="sign">-</span>1 <span class="keyword">if</span> fail
-</pre>
-
-<hr />
-<a name="H5I2fh5iget5fref5ff"></a>
-<a name="robo173"></a><h2>h5iget_ref_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5iget_ref_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the reference count of an ID
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref_count - Current reference count of the ID
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Quincey Koziol
- December 9, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iget_ref_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref_count<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_count <span class="sign">!</span> Current reference count of ID
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5I2fh5iget5ftype5ff"></a>
-<a name="robo174"></a><h2>h5iget_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5iget_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the type of an object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type - type of the object, possible values:
- H5I_FILE_F
- H5I_GROUP_F
- H5I_DATATYPE_F
- H5I_DATASPACE_F
- H5I_DATASET_F
- H5I_ATTR_F
- H5I_BADID_F
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 5, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iget_type_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> TYPE<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> TYPE <span class="sign">!</span> type of an object<span class="sign">.</span>
- <span class="sign">!</span> possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5I_FILE_F
- <span class="sign">!</span> H5I_GROUP_F
- <span class="sign">!</span> H5I_DATATYPE_F
- <span class="sign">!</span> H5I_DATASPACE_F
- <span class="sign">!</span> H5I_DATASET_F
- <span class="sign">!</span> H5I_ATTR_F
- <span class="sign">!</span> H5I_BADID_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5I2fh5iinc5fref5ff"></a>
-<a name="robo175"></a><h2>h5iinc_ref_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5iinc_ref_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Increments the reference count of an ID
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref_count - Current reference count of the ID
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Quincey Koziol
- December 9, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iinc_ref_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref_count<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_count <span class="sign">!</span> Current reference count of ID
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5I2fh5iis5fvalid5ff"></a>
-<a name="robo176"></a><h2>h5iis_valid_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo47">H5I</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo171">h5iget_file_id_f</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Check if an ID is valid without producing an error message
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> id - identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> valid - status of id as a valid identifier
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 13, 2009
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5iis_valid_f</strong><span class="sign">(</span>id<span class="sign">,</span> valid<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> id <span class="sign">!</span> Identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> valid <span class="sign">!</span> Status of id as a valid identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Iff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Lf_c.html b/fortran/doc/DevelGuide/src/H5Lf_c.html
deleted file mode 100644
index 9adb759..0000000
--- a/fortran/doc/DevelGuide/src/H5Lf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Lf.c</title>
-<!-- Source: ./src/H5Lf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Lf2fH5Lf"></a>
-<a name="robo52"></a><h2>H5Lf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Lff_f90.html#robo49">H5L</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Lf.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Lff_F03_f90.html b/fortran/doc/DevelGuide/src/H5Lff_F03_f90.html
deleted file mode 100644
index 6b9640b..0000000
--- a/fortran/doc/DevelGuide/src/H5Lff_F03_f90.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Lff_F03.f90</title>
-<!-- Source: ./src/H5Lff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5L2028F0329"></a>
-<a name="robo50"></a><h2>H5L (F03)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5L_PROVISIONAL
-</pre>
-<p class="item_name">FILE</p>
-<pre> src/fortran/src/<a href="#robo_top_of_doc">H5Lff_F03.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 and Fortran 2003 interfaces for <a href="./H5Lff_f90.html#robo49">H5L</a> functions.
- It contains the same functions as H5Lff_DEPRECIATE.f90 but includes the
- Fortran 2003 functions and the interface listings. This file will be compiled
- instead of H5Lff_DEPRECIATE.f90 if Fortran 2003 functions are enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <a href="./H5Aff_f90.html#robo27">H5A</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5L2028F03292fh5literate5fby5fname5ff"></a>
-<a name="robo189"></a><h2>h5literate_by_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo50">H5L (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5literate_by_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Iterates through links in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier specifying location of subject group
- group_name - Name of subject group
- index_type - Type of index which determines the order
- order - Order within index
- idx - Iteration position at which to start
- op - Callback function passing data regarding the link to the calling application
- op_data - User-defined pointer to data required by the application for its processing of the link
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> idx - Position at which an interrupted iteration may be restarted
- hdferr - Error code:
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- Augest 18, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5literate_by_name_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> index_type<span class="sign">,</span> order<span class="sign">,</span> idx<span class="sign">,</span> op<span class="sign">,</span> op_data<span class="sign">,</span> return_value<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier specifying subject group
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of subject group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_type <span class="sign">!</span> Type of index which determines the order<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Alpha<span class="sign">-</span>numeric index on name
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order within index<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> Fastest available order
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx <span class="sign">!</span> IN <span class="sign">:</span> Iteration position at which to start
- <span class="sign">!</span> OUT<span class="sign">:</span> Position at which an interrupted iteration may be restarted
-
- TYPE<span class="sign">(</span>C_FUNPTR<span class="sign">)</span><span class="sign">:</span><span class="sign">:</span> op <span class="sign">!</span> Callback function passing data regarding the link to the calling application
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> op_data <span class="sign">!</span> User<span class="sign">-</span>defined pointer to data required by the application <span class="keyword">for</span> its processing of the link
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> return_value <span class="sign">!</span> Success<span class="sign">:</span> The <span class="keyword">return</span> value of the first operator that
- <span class="sign">!</span> returns non<span class="sign">-</span>zero<span class="sign">,</span> or zero <span class="keyword">if</span> all members were
- <span class="sign">!</span> processed with no operator returning non<span class="sign">-</span>zero<span class="sign">.</span>
-
- <span class="sign">!</span> Failure<span class="sign">:</span> Negative <span class="keyword">if</span> something goes wrong within the
- <span class="sign">!</span> library<span class="sign">,</span> or the negative value returned by one
- <span class="sign">!</span> of the operators<span class="sign">.</span>
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5L2028F03292fh5literate5ff"></a>
-<a name="robo190"></a><h2>h5literate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo50">H5L (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5literate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Iterates through links in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> group_id - Identifier specifying subject group
- index_type - Type of index which determines the order
- order - Order within index
- idx - Iteration position at which to start
- op - Callback function passing data regarding the link to the calling application
- op_data - User-defined pointer to data required by the application for its processing of the link
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> idx - Position at which an interrupted iteration may be restarted
- hdferr - Error code:
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- July 8, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5literate_f</strong><span class="sign">(</span>group_id<span class="sign">,</span> index_type<span class="sign">,</span> order<span class="sign">,</span> idx<span class="sign">,</span> op<span class="sign">,</span> op_data<span class="sign">,</span> return_value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_id <span class="sign">!</span> Identifier specifying subject group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_type <span class="sign">!</span> Type of index which determines the order<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Alpha<span class="sign">-</span>numeric index on name
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order within index<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> Fastest available order
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx <span class="sign">!</span> IN <span class="sign">:</span> Iteration position at which to start
- <span class="sign">!</span> OUT<span class="sign">:</span> Position at which an interrupted iteration may be restarted
-
- TYPE<span class="sign">(</span>C_FUNPTR<span class="sign">)</span><span class="sign">:</span><span class="sign">:</span> op <span class="sign">!</span> Callback function passing data regarding the link to the calling application
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> op_data <span class="sign">!</span> User<span class="sign">-</span>defined pointer to data required by the application <span class="keyword">for</span> its processing of the link
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> return_value <span class="sign">!</span> Success<span class="sign">:</span> The <span class="keyword">return</span> value of the first operator that
- <span class="sign">!</span> returns non<span class="sign">-</span>zero<span class="sign">,</span> or zero <span class="keyword">if</span> all members were
- <span class="sign">!</span> processed with no operator returning non<span class="sign">-</span>zero<span class="sign">.</span>
-
- <span class="sign">!</span> Failure<span class="sign">:</span> Negative <span class="keyword">if</span> something goes wrong within the
- <span class="sign">!</span> library<span class="sign">,</span> or the negative value returned by one
- <span class="sign">!</span> of the operators<span class="sign">.</span>
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Lff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Lff_F90_f90.html b/fortran/doc/DevelGuide/src/H5Lff_F90_f90.html
deleted file mode 100644
index 6d1a9bb..0000000
--- a/fortran/doc/DevelGuide/src/H5Lff_F90_f90.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Lff_F90.f90</title>
-<!-- Source: ./src/H5Lff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5L2028F9029"></a>
-<a name="robo51"></a><h2>H5L (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE H5L_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 interfaces for <a href="./H5Lff_f90.html#robo49">H5L</a> functions. It contains
- the same functions as <a href="./H5Lff_F03_f90.html#robo_top_of_doc">H5Lff_F03.f90</a> but excludes the Fortran 2003 functions
- and the interface listings. This file will be compiled instead of <a href="./H5Lff_F03_f90.html#robo_top_of_doc">H5Lff_F03.f90</a>
- if Fortran 2003 functions are not enabled.
-
- NOTE
- Currently contains no functions.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Lff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Lff_f90.html b/fortran/doc/DevelGuide/src/H5Lff_f90.html
deleted file mode 100644
index 1a209f2..0000000
--- a/fortran/doc/DevelGuide/src/H5Lff_f90.html
+++ /dev/null
@@ -1,637 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Lff.f90</title>
-<!-- Source: ./src/H5Lff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5L"></a>
-<a name="robo49"></a><h2>H5L</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5L</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5L</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5L</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5L2fh5lcopy5ff"></a>
-<a name="robo178"></a><h2>h5lcopy_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lcopy_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Copies a link from one location to another.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> src_loc_id - Location identifier of the source link
- src_name - Name of the link to be copied
- dest_loc_id - Location identifier specifying the destination of the copy
- dest_name - Name to be assigned to the NEW copy
- loc_id - Identifier of the file or group containing the object
- name - Name of the link to delete
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier
- lapl_id - Link access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 27, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lcopy_f</strong><span class="sign">(</span>src_loc_id<span class="sign">,</span> src_name<span class="sign">,</span> dest_loc_id<span class="sign">,</span> dest_name<span class="sign">,</span> hdferr<span class="sign">,</span> <span class="sign">&amp;</span>
- lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_loc_id <span class="sign">!</span> Location identifier of the source link
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_name <span class="sign">!</span> Name of the link to be copied
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dest_loc_id <span class="sign">!</span> Location identifier specifying the destination of the copy
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dest_name <span class="sign">!</span> Name to be assigned to the NEW copy
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
-</pre>
-
-<hr />
-<a name="H5L2fH5Lcreate5fexternal5ff"></a>
-<a name="robo179"></a><h2>H5Lcreate_external_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Lcreate_external_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a soft link to an object in a different file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> file_name - Name of the file containing the target object. Neither the file nor the target object is
- required to exist. May be the file the link is being created in.
- obj_name - Path within the target file to the target object.
- link_loc_id - The file or group identifier for the new link.
- link_name - The name of the new link.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier.
- lapl_id - Link access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 27, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5lcreate_external_f<span class="sign">(</span>file_name<span class="sign">,</span> obj_name<span class="sign">,</span> link_loc_id<span class="sign">,</span> link_name<span class="sign">,</span> hdferr<span class="sign">,</span> lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> file_name <span class="sign">!</span> Name of the file containing the target object<span class="sign">.</span> Neither
- <span class="sign">!</span> the file nor the target object is required to exist<span class="sign">.</span>
- <span class="sign">!</span> May be the file the link is being created in<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of the target object<span class="sign">,</span> which must already exist<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_loc_id <span class="sign">!</span> The file or group identifier <span class="keyword">for</span> the new link<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_name <span class="sign">!</span> The name of the new link<span class="sign">.</span>
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5L2fH5Lcreate5fhard5ff"></a>
-<a name="robo180"></a><h2>H5Lcreate_hard_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Lcreate_hard_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a hard link to an object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_loc_id - The file or group identifier for the target object.
- obj_name - Name of the target object, which must already exist.
- link_loc_id - The file or group identifier for the new link.
- link_name - The name of the new link.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier.
- lapl_id - Link access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 27, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5lcreate_hard_f<span class="sign">(</span>obj_loc_id<span class="sign">,</span> obj_name<span class="sign">,</span> link_loc_id<span class="sign">,</span> link_name<span class="sign">,</span> hdferr<span class="sign">,</span> lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_loc_id <span class="sign">!</span> The file or group identifier <span class="keyword">for</span> the target object<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_name <span class="sign">!</span> Name of the target object<span class="sign">,</span> which must already exist<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_loc_id <span class="sign">!</span> The file or group identifier <span class="keyword">for</span> the new link<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_name <span class="sign">!</span> The name of the new link<span class="sign">.</span>
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5L2fH5Lcreate5fsoft5ff"></a>
-<a name="robo181"></a><h2>H5Lcreate_soft_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Lcreate_soft_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a soft link to an object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> target_path - Path to the target object, which is not required to exist.
- link_loc_id - The file or group identifier for the new link.
- link_name - The name of the new link.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier.
- lapl_id - Link access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 20, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5lcreate_soft_f<span class="sign">(</span>target_path<span class="sign">,</span> link_loc_id<span class="sign">,</span> link_name<span class="sign">,</span> hdferr<span class="sign">,</span> lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> target_path <span class="sign">!</span> Path to the target object<span class="sign">,</span> which is not required to exist<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_loc_id <span class="sign">!</span> The file or group identifier <span class="keyword">for</span> the new link<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_name <span class="sign">!</span> The name of the new link<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5L2fh5ldelete5fby5fidx5ff"></a>
-<a name="robo182"></a><h2>h5ldelete_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5ldelete_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes the nth link in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier specifying location of subject group
- group_name - Name of subject group
- index_field - Type of index; Possible values are:
- H5_INDEX_UNKNOWN_F = -1 - Unknown index type
- H5_INDEX_NAME_F - Index on names
- H5_INDEX_CRT_ORDER_F - Index on creation order
- H5_INDEX_N_F - Number of indices defined
-
- order - Order within field or index; Possible values are:
- H5_ITER_UNKNOWN_F - Unknown order
- H5_ITER_INC_F - Increasing order
- H5_ITER_DEC_F - Decreasing order
- H5_ITER_NATIVE_F - No particular order, whatever is fastest
- H5_ITER_N_F - Number of iteration orders
-
- n - Link for which to retrieve information
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 29, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5ldelete_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> index_field<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifer <span class="keyword">for</span> object to which attribute is attached
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of object<span class="sign">,</span> relative to location<span class="sign">,</span>
- <span class="sign">!</span> from which attribute is to be removed
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_field <span class="sign">!</span> Type of index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
- <span class="sign">!</span> H5_ITER_N_F <span class="sign">-</span> Number of iteration orders
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Offset within index
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5L2fh5ldelete5ff"></a>
-<a name="robo183"></a><h2>h5ldelete_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5ldelete_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes a link from a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier of the file or group containing the object
- name - Name of the link to delete
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list identifier
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5ldelete_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier of the file or group containing the object
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the link to delete
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
-</pre>
-
-<hr />
-<a name="H5L2fH5Lexists5ff"></a>
-<a name="robo184"></a><h2>H5Lexists_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Lexists_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Check if a link with a particular name exists in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier of the file or group to query.
- name - Link name to check
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> link_exists - link exists status (.TRUE.,.FALSE.)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 29, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5lexists_f<span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> link_exists<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier of the file or group to query<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Link name to check<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_exists <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> exists<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> otherwise
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id
- <span class="sign">!</span> Link access property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5L2fh5lget5finfo5fby5fidx5ff"></a>
-<a name="robo185"></a><h2>h5lget_info_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lget_info_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves metadata for a link in a group, according to the order within a field or index.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier specifying location of subject group
- group_name - Name of subject group
- index_field - Index or field which determines the order
- order - Order within field or index
- n - Link for which to retrieve information
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> NOTE: In C these are defined as a structure: H5L_info_t
- corder_valid - Indicates whether the creation order data is valid for this attribute
- corder - Is a positive integer containing the creation order of the attribute
- cset - Indicates the character set used for the attribute’s name
- address - If the link is a hard link, address specifies the file address that the link points to
- val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g.,
- the length of the name of the pointed-to object with a null terminator.
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 29, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Changed the link_type names to match those in C (bug 1720) from,
- H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F
- to
- H5L_TYPE_HARD_F, H5L_TYPE_SOFT_F,H5L_TYPE_EXTERNAL_F,H5L_TYPE_ERROR_F
- MSB January 8, 2010.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lget_info_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> index_field<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> <span class="sign">&amp;</span>
- link_type<span class="sign">,</span> f_corder_valid<span class="sign">,</span> corder<span class="sign">,</span> cset<span class="sign">,</span> address<span class="sign">,</span> val_size<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier specifying location of subject group
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of subject group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_field <span class="sign">!</span> Index or field which determines the order
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s position in index
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_type <span class="sign">!</span> Specifies the link class<span class="sign">:</span>
- <span class="sign">!</span> H5L_TYPE_HARD_F <span class="sign">-</span> Hard link
- <span class="sign">!</span> H5L_TYPE_SOFT_F <span class="sign">-</span> Soft link
- <span class="sign">!</span> H5L_TYPE_EXTERNAL_F <span class="sign">-</span> External link
- <span class="sign">!</span> H5L_TYPE_ERROR _F <span class="sign">-</span> Error
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> f_corder_valid <span class="sign">!</span> Indicates whether the creation order data is valid <span class="keyword">for</span> this attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> corder <span class="sign">!</span> Is a positive integer containing the creation order of the attribute
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> Indicates the character set used <span class="keyword">for</span> the attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s name
- INTEGER<span class="sign">(</span>HADDR_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> address <span class="sign">!</span> If the link is a hard link<span class="sign">,</span> address specifies the file address that the link points to
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> val_size <span class="sign">!</span> If the link is a symbolic link<span class="sign">,</span> val_size will be the length of the link value<span class="sign">,</span> e<span class="sign">.</span>g<span class="sign">.</span><span class="sign">,</span>
- <span class="sign">!</span> the length of the name of the pointed<span class="sign">-</span>to object with a null terminator<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5L2fh5lget5finfo5ff"></a>
-<a name="robo186"></a><h2>h5lget_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lget_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns information about a link.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> link_loc_id - File or group identifier.
- link_name - Name of the link for which information is being sought
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> NOTE: In C these are contained in the structure H5L_info_t
-
- cset - indicates the character set used for link’s name.
- corder - specifies the link’s creation order position.
- corder_valid - indicates whether the value in corder is valid.
- link_type - specifies the link class:
- H5L_TYPE_HARD_F - Hard link
- H5L_TYPE_SOFT_F - Soft link
- H5L_TYPE_EXTERNAL_F - External link
- H5L_TYPE_ERROR_ F - Error
- address - If the link is a hard link, address specifies the file address that the link points to
- val_size - If the link is a symbolic link, val_size will be the length of the link value, e.g.,
- the length of the name of the pointed-to object with a null terminator.
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Link access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 29, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Changed the link_type names to match those in C (bug 1720) from,
- H5L_LINK_HARD_F, H5L_LINK_SOFT_F,H5L_LINK_EXTERNAL_F,H5L_LINK_ERROR_F
- to
- H5L_TYPE_HARD_F, H5L_TYPE_SOFT_F,H5L_TYPE_EXTERNAL_F,H5L_TYPE_ERROR_F
- MSB January 8, 2010.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lget_info_f</strong><span class="sign">(</span>link_loc_id<span class="sign">,</span> link_name<span class="sign">,</span> <span class="sign">&amp;</span>
- cset<span class="sign">,</span> corder<span class="sign">,</span> f_corder_valid<span class="sign">,</span> link_type<span class="sign">,</span> address<span class="sign">,</span> val_size<span class="sign">,</span> <span class="sign">&amp;</span>
- hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
-
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_loc_id <span class="sign">!</span> File or group identifier<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_name <span class="sign">!</span> Name of the link <span class="keyword">for</span> which information is being sought
-
-<span class="sign">!</span> OUTPUTS NOTE<span class="sign">:</span> In C these are contained in the structure H5L_info_t
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> Indicates the character set used <span class="keyword">for</span> the link<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s name<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> corder <span class="sign">!</span> Specifies the link<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s creation order position<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> f_corder_valid <span class="sign">!</span> Indicates whether the value in corder is valid<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_type <span class="sign">!</span> Specifies the link class<span class="sign">:</span>
- <span class="sign">!</span> H5L_TYPE_HARD_F <span class="sign">-</span> Hard link
- <span class="sign">!</span> H5L_TYPE_SOFT_F <span class="sign">-</span> Soft link
- <span class="sign">!</span> H5L_TYPE_EXTERNAL_F <span class="sign">-</span> External link
- <span class="sign">!</span> H5L_TYPE_ERROR _F <span class="sign">-</span> Error
- INTEGER<span class="sign">(</span>HADDR_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> address <span class="sign">!</span> If the link is a hard link<span class="sign">,</span> address specifies the file address that the link points to
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> val_size <span class="sign">!</span> If the link is a symbolic link<span class="sign">,</span> val_size will be the length of the link value<span class="sign">,</span> e<span class="sign">.</span>g<span class="sign">.</span><span class="sign">,</span>
- <span class="sign">!</span> the length of the name of the pointed<span class="sign">-</span>to object with a null terminator<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list
-</pre>
-
-<hr />
-<a name="H5L2fh5lget5fname5fby5fidx5ff"></a>
-<a name="robo187"></a><h2>h5lget_name_by_idx_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lget_name_by_idx_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves name of the nth link in a group, according to the order within a specified field or index.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier specifying location of subject group
- group_name - Name of subject group
- index_field - Index or field which determines the order
- order - Order within field or index
- n - Link for which to retrieve information
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - Buffer in which link value is returned
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - List access property list identifier.
- size - Maximum number of characters of link value to be returned.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 10, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lget_name_by_idx_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> group_name<span class="sign">,</span> index_field<span class="sign">,</span> order<span class="sign">,</span> n<span class="sign">,</span> <span class="sign">&amp;</span>
- name<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier specifying location of subject group
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> group_name <span class="sign">!</span> Name of subject group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_field <span class="sign">!</span> Index or field which determines the order
- <span class="sign">!</span> H5_INDEX_UNKNOWN_F <span class="sign">-</span> Unknown index type
- <span class="sign">!</span> H5_INDEX_NAME_F <span class="sign">-</span> Index on names
- <span class="sign">!</span> H5_INDEX_CRT_ORDER_F <span class="sign">-</span> Index on creation order
- <span class="sign">!</span> H5_INDEX_N_F <span class="sign">-</span> Number of indices defined
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Order in which to iterate over index<span class="sign">;</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5_ITER_UNKNOWN_F <span class="sign">-</span> Unknown order
- <span class="sign">!</span> H5_ITER_INC_F <span class="sign">-</span> Increasing order
- <span class="sign">!</span> H5_ITER_DEC_F <span class="sign">-</span> Decreasing order
- <span class="sign">!</span> H5_ITER_NATIVE_F <span class="sign">-</span> No particular order<span class="sign">,</span> whatever is fastest
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> n <span class="sign">!</span> Attribute<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s position in index
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Buffer in which link value is returned
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5L2fh5lis5fregistered5ff"></a>
-<a name="robo188"></a><h2>h5lis_registered_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lis_registered_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a class of user-defined links is registered.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> link_cls_id - User-defined link class identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> registered - .TRUE. - if the link class has been registered
- .FALSE. - if it is unregistered
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 29, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lis_registered_f</strong><span class="sign">(</span>link_cls_id<span class="sign">,</span> registered<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> link_cls_id <span class="sign">!</span> User<span class="sign">-</span>defined link class identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> registered <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="sign">-</span> <span class="keyword">if</span> the link class has been registered and
- <span class="sign">!</span> <span class="sign">.</span>FALSE<span class="sign">.</span> <span class="sign">-</span> <span class="keyword">if</span> it is unregistered
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5L2fh5lmove5ff"></a>
-<a name="robo191"></a><h2>h5lmove_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo49">H5L</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5lmove_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Renames a link within an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> src_loc_id - Original file or group identifier.
- src_name - Original link name.
- dest_loc_id - Destination file or group identifier.
- dest_name - NEW link name.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code:
- 0 on success and -1 on failure
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier to be associated WITH the NEW link.
- lapl_id - Link access property list identifier to be associated WITH the NEW link.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5lmove_f</strong><span class="sign">(</span>src_loc_id<span class="sign">,</span> src_name<span class="sign">,</span> dest_loc_id<span class="sign">,</span> dest_name<span class="sign">,</span> hdferr<span class="sign">,</span> lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_loc_id <span class="sign">!</span> Original file or group identifier<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_name <span class="sign">!</span> Original link name<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dest_loc_id <span class="sign">!</span> Destination file or group identifier<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dest_name <span class="sign">!</span> NEW link name<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier
- <span class="sign">!</span> to be associated WITH the NEW link<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link access property list identifier
- <span class="sign">!</span> to be associated WITH the NEW link<span class="sign">.</span>
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Lff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Of_c.html b/fortran/doc/DevelGuide/src/H5Of_c.html
deleted file mode 100644
index e4a97e9..0000000
--- a/fortran/doc/DevelGuide/src/H5Of_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Of.c</title>
-<!-- Source: ./src/H5Of.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Of2fH5Of"></a>
-<a name="robo59"></a><h2>H5Of</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Off_f90.html#robo56">H5O</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Of.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Off_f90.html b/fortran/doc/DevelGuide/src/H5Off_f90.html
deleted file mode 100644
index 790810e..0000000
--- a/fortran/doc/DevelGuide/src/H5Off_f90.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Off.f90</title>
-<!-- Source: ./src/H5Off.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5O"></a>
-<a name="robo56"></a><h2>H5O</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5O</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Off.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5O</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5O</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5O2fh5oclose5ff"></a>
-<a name="robo193"></a><h2>h5oclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo56">H5O</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5oclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes an object in an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> object_id - Object identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- December 17, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5oclose_f</strong><span class="sign">(</span>object_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> object_id
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr
-</pre>
-
-<hr />
-<a name="H5O2fh5olink5ff"></a>
-<a name="robo195"></a><h2>h5olink_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo56">H5O</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5olink_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a hard link to an object in an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> object_id - Object to be linked.
- new_loc_id - File or group identifier specifying location at which object is to be linked.
- new_link_name - Name of link to be created, relative to new_loc_id.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list identifier.
- lapl_id - Link access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5olink_f</strong><span class="sign">(</span>object_id<span class="sign">,</span> new_loc_id<span class="sign">,</span> new_link_name<span class="sign">,</span> hdferr<span class="sign">,</span> lcpl_id<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> object_id <span class="sign">!</span> Object to be linked
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_loc_id <span class="sign">!</span> File or group identifier specifying
- <span class="sign">!</span> location at which object is to be linked<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_link_name <span class="sign">!</span> Name of link to be created<span class="sign">,</span> relative to new_loc_id<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> Success<span class="sign">:</span> 0
- <span class="sign">!</span> Failure<span class="sign">:</span> <span class="sign">-</span>1
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Link creation property list identifier<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5O2fh5oopen5ff"></a>
-<a name="robo196"></a><h2>h5oopen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo56">H5O</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5oopen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an object in an <a href="./HDF5_f90.html#robo76">HDF5</a> file by location identifier and path name.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier
- name - Path to the object, relative to loc_id.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_id - Object identifier for the opened object
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lapl_id - Access property list identifier for the link pointing to the object
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 18, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5oopen_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">,</span> lapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Path to the object<span class="sign">,</span> relative to loc_id
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier <span class="keyword">for</span> the opened object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> Success<span class="sign">:</span> 0
- <span class="sign">!</span> Failure<span class="sign">:</span> <span class="sign">-</span>1
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> Attribute access property list
-</pre>
-
-<hr />
-<a name="H5O2fh5open5fby5faddr5ff"></a>
-<a name="robo197"></a><h2>h5open_by_addr_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo56">H5O</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> h5oopen_by_addr_f
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens an object using its address within an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - File or group identifier
- addr - Object’s address in the file
- OUTPUTS:
- obj_id - Object identifier for the opened object
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- September 14, 2009
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5oopen_by_addr_f<span class="sign">(</span>loc_id<span class="sign">,</span> addr<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- INTEGER<span class="sign">(</span>HADDR_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> addr <span class="sign">!</span> Object<span class="sign">â</span><span class="sign">€</span><span class="sign">™</span>s address in the file
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier <span class="keyword">for</span> the opened object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Off.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Pf_c.html b/fortran/doc/DevelGuide/src/H5Pf_c.html
deleted file mode 100644
index 6b8079a..0000000
--- a/fortran/doc/DevelGuide/src/H5Pf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Pf.c</title>
-<!-- Source: ./src/H5Pf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Pf2fH5Pf"></a>
-<a name="robo63"></a><h2>H5Pf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for H5P Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Pf.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Pff_F03_f90.html b/fortran/doc/DevelGuide/src/H5Pff_F03_f90.html
deleted file mode 100644
index 51882ba..0000000
--- a/fortran/doc/DevelGuide/src/H5Pff_F03_f90.html
+++ /dev/null
@@ -1,832 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Pff_F03.f90</title>
-<!-- Source: ./src/H5Pff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5P2028F0329"></a>
-<a name="robo61"></a><h2>H5P (F03)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5P_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 and Fortran 2003 interfaces for H5P functions.
- It contains the same functions as H5Pff_DEPRECIATE.f90 but includes the
- Fortran 2003 functions and the interface listings. This file will be compiled
- instead of H5Pff_DEPRECIATE.f90 if Fortran 2003 functions are enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new H5P function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5P2028F03292f20h5pget5fdouble"></a>
-<a name="robo80"></a><h2> h5pget_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="./H5Pff_F90_f90.html#robo229">h5pget_double</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <a href="./H5Pff_F90_f90.html#robo229">h5pget_double</a><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pcreate5fclass5ff"></a>
-<a name="robo205"></a><h2>h5pcreate_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pcreate_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Create a new property list class
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> parent - Property list identifier of the parent class
- Possible values include:
- H5P_ROOT_F
- H5P_FILE_CREATE_F
- H5P_FILE_ACCESS_F
- H5P_DATASET_CREATE_F
- H5P_DATASET_XFER_F
- H5P_FILE_MOUNT_F
- name - name of the class we are creating
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> class - porperty list class identifier
- hdferr: - error code
-
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> H5P_cls_create_func_t (create) - Callback routine called when a property list is created
- create_data - User pointer to any class creation information needed
- H5P_cls_copy_func_t (copy) - Callback routine called when a property list is copied
- copy_data - User pointer to any class copy information needed
- H5P_cls_close_func_t (close) - Callback routine called when a property list is being closed
- close_data - User pointer to any class close information needed
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Added callback arguments
- M. Scot Breitenfeld, July 3, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pcreate_class_f</strong><span class="sign">(</span>parent<span class="sign">,</span> name<span class="sign">,</span> class<span class="sign">,</span> hdferr<span class="sign">,</span> create<span class="sign">,</span> create_data<span class="sign">,</span> copy<span class="sign">,</span> copy_data<span class="sign">,</span> close<span class="sign">,</span> close_data<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> parent <span class="sign">!</span> parent property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> name of property tocreate
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> property list class identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> create_data<span class="sign">,</span> copy_data<span class="sign">,</span> close_data
- TYPE<span class="sign">(</span>C_FUNPTR<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> create<span class="sign">,</span> copy<span class="sign">,</span> close
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pget5fchar"></a>
-<a name="robo218"></a><h2>h5pget_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_char</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pget5finteger"></a>
-<a name="robo247"></a><h2>h5pget_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_integer</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pget5freal"></a>
-<a name="robo261"></a><h2>h5pget_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_real</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pinsert5fchar"></a>
-<a name="robo273"></a><h2>h5pinsert_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_char</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of property value
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pinsert5fdouble"></a>
-<a name="robo274"></a><h2>h5pinsert_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_double</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pinsert5finteger"></a>
-<a name="robo276"></a><h2>h5pinsert_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_integer</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pinsert5fptr"></a>
-<a name="robo278"></a><h2>h5pinsert_ptr</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_ptr</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- June 24, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_ptr</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of property value
- TYPE<span class="sign">(</span>c_ptr<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pinsert5freal"></a>
-<a name="robo280"></a><h2>h5pinsert_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_real</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pregister5fchar"></a>
-<a name="robo283"></a><h2>h5pregister_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_char</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> size of the property value
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pregister5fdouble"></a>
-<a name="robo286"></a><h2>h5pregister_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_double</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> size of the property value
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pregister5finteger"></a>
-<a name="robo287"></a><h2>h5pregister_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_integer</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pregister5fptr"></a>
-<a name="robo289"></a><h2>h5pregister_ptr</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_ptr</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- June 24, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_ptr</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pregister5freal"></a>
-<a name="robo291"></a><h2>h5pregister_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_real</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> size of the property value
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pset28get29fill5fvalue5ff"></a>
-<a name="robo294"></a><h2>h5pset(get)fill_value_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset(get)fill_value_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets(gets) fill value for a dataset creation property list
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
- type_id - datatype identifier for fill value
- fillvalue - fill value
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - datatype identifier for fill value
- fillvalue - fill value
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
- Added the recommended way of passing fillvalue
- and that is by passing the C address, all other
- ways are obsolete and should be avoided. June, 2008 MSB
-</pre>
-<p class="item_name">NOTES</p>
-<pre> <strong>h5pset(get)fill_value_f</strong> function is overloaded to support
- INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_fill_value_integer<span class="sign">(</span>prp_id<span class="sign">,</span> type_id<span class="sign">,</span> fillvalue<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier of
- <span class="sign">!</span> of fillvalue datatype
- <span class="sign">!</span> <span class="sign">(</span>in memory<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> fillvalue <span class="sign">!</span> Fillvalue
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pset5fchar"></a>
-<a name="robo303"></a><h2>h5pset_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_char</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pset5fdouble"></a>
-<a name="robo313"></a><h2>h5pset_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_double</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pset5finteger"></a>
-<a name="robo334"></a><h2>h5pset_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_integer</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F03292fh5pset5freal"></a>
-<a name="robo345"></a><h2>h5pset_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo61">H5P (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_real</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Pff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Pff_F90_f90.html b/fortran/doc/DevelGuide/src/H5Pff_F90_f90.html
deleted file mode 100644
index 5f8d579..0000000
--- a/fortran/doc/DevelGuide/src/H5Pff_F90_f90.html
+++ /dev/null
@@ -1,715 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Pff_F90.f90</title>
-<!-- Source: ./src/H5Pff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5P20285fF9029"></a>
-<a name="robo60"></a><h2>H5P (_F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5P_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 interfaces for H5P functions. It contains
- the same functions as <a href="./H5Pff_F03_f90.html#robo_top_of_doc">H5Pff_F03.f90</a> but excludes the Fortran 2003 functions
- and the interface listings. This file will be compiled instead of <a href="./H5Pff_F03_f90.html#robo_top_of_doc">H5Pff_F03.f90</a>
- if Fortran 2003 functions are not enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new H5P function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pcreate5fclass5ff"></a>
-<a name="robo206"></a><h2>h5pcreate_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pcreate_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Create a new property list class
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> parent - Property list identifier of the parent class
- Possible values include:
- H5P_ROOT_F
- H5P_FILE_CREATE_F
- H5P_FILE_ACCESS_F
- H5P_DATASET_CREATE_F
- H5P_DATASET_XFER_F
- H5P_FILE_MOUNT_F
- name - name of the class we are creating
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> class - property list class identifier
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pcreate_class_f</strong><span class="sign">(</span>parent<span class="sign">,</span> name<span class="sign">,</span> class<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> parent <span class="sign">!</span> parent property list class
- <span class="sign">!</span> identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> name of property tocreate
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> property list class identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pget5fchar"></a>
-<a name="robo219"></a><h2>h5pget_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_char</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pget5fdouble"></a>
-<a name="robo229"></a><h2>h5pget_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_double</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pget5finteger"></a>
-<a name="robo248"></a><h2>h5pget_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_integer</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pget5freal"></a>
-<a name="robo260"></a><h2>h5pget_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of property
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_real</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pinsert5fchar"></a>
-<a name="robo272"></a><h2>h5pinsert_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE <strong>h5pinsert_char</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of property value
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pinsert5fdouble"></a>
-<a name="robo275"></a><h2>h5pinsert_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_double</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pinsert5finteger"></a>
-<a name="robo277"></a><h2>h5pinsert_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_integer</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pinsert5freal"></a>
-<a name="robo279"></a><h2>h5pinsert_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pinsert_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a temporary property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- permanent property within
- name - name of property to insert
- size - size of property in bytes
- value - initial value for the property
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pinsert_real</strong><span class="sign">(</span>plist<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pregister5fchar"></a>
-<a name="robo284"></a><h2>h5pregister_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_char</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> size of the property value
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pregister5fdouble"></a>
-<a name="robo285"></a><h2>h5pregister_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_double</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pregister5finteger"></a>
-<a name="robo288"></a><h2>h5pregister_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_integer</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pregister5freal"></a>
-<a name="robo290"></a><h2>h5pregister_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pregister_real</strong>
-
- PURPOSE Registers a permanent property with a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - property list class to register
- permanent property within
- name - name of property to register
- size - size of property in bytes
- value - default value for property in newly
- created property lists
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 10, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pregister_real</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to <span class="keyword">register</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> size of the property value
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pset28get29fill5fvalue5ff"></a>
-<a name="robo295"></a><h2>h5pset(get)fill_value_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset(get)fill_value_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets(gets) fill value for a dataset creation property list
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
- type_id - datatype identifier for fill value
- fillvalue - fill value
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - datatype identifier for fill value
- fillvalue - fill value
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> <strong>h5pset(get)fill_value_f</strong> function is overloaded to support
- INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_fill_value_integer<span class="sign">(</span>prp_id<span class="sign">,</span> type_id<span class="sign">,</span> fillvalue<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier of
- <span class="sign">!</span> of fillvalue datatype
- <span class="sign">!</span> <span class="sign">(</span>in memory<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fillvalue <span class="sign">!</span> Fillvalue
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pset5fchar"></a>
-<a name="robo304"></a><h2>h5pset_char</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_char</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_char</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pset5fdouble"></a>
-<a name="robo312"></a><h2>h5pset_double</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_double</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_double</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- DOUBLE PRECISION<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pset5finteger"></a>
-<a name="robo333"></a><h2>h5pset_integer</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_integer</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_integer</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5P2028F90292fh5pset5freal"></a>
-<a name="robo346"></a><h2>h5pset_real</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="./H5Pff_f90.html#robo62">H5P (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_real</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a property list value
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to modify
- name - name of property to modify
- value - value to set property to
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_real</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span> Property value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Pff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Pff_f90.html b/fortran/doc/DevelGuide/src/H5Pff_f90.html
deleted file mode 100644
index 0e9ff5c..0000000
--- a/fortran/doc/DevelGuide/src/H5Pff_f90.html
+++ /dev/null
@@ -1,4752 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Pff.f90</title>
-<!-- Source: ./src/H5Pff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5P2028F9029"></a>
-<a name="robo62"></a><h2>H5P (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5P_PROVISIONAL
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for H5P functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new H5P function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5P2f20h5pget5fhyper5fvector5fsize5ff"></a>
-<a name="robo81"></a><h2> h5pget_hyper_vector_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> h5pget_hyper_vector_size_f
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get the number of "I/O" vectors (vector size)
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset transfer property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - vector size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_hyper_vector_size_f<span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset transfer property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Vector size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2f20h5pset5ffamily5foffset5ff"></a>
-<a name="robo82"></a><h2> h5pset_family_offset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> h5pset_family_offset_f
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets offset for family file driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- offset - file offset
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- 19 March 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_family_offset_f<span class="sign">(</span>prp_id<span class="sign">,</span> offset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span> Offset in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2f20h5pset5ffapl5ffamily5ff"></a>
-<a name="robo83"></a><h2> h5pset_fapl_family_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> h5pset_fapl_family_f
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the file access property list to use the family driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- memb_size - size in bytes of each file member
- memb_plist - identifier of the file access property
- list to be used for each family member
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_fapl_family_f<span class="sign">(</span>prp_id<span class="sign">,</span> memb_size<span class="sign">,</span> memb_plist <span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_size <span class="sign">!</span> Logical size<span class="sign">,</span> in bytes<span class="sign">,</span>
- <span class="sign">!</span> of each family member
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_plist <span class="sign">!</span> Identifier of the file
- <span class="sign">!</span> access property list <span class="keyword">for</span>
- <span class="sign">!</span> each member of the family
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2f20h5pset5fmeta5fblock5fsize5ff"></a>
-<a name="robo84"></a><h2> h5pset_meta_block_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> h5pset_meta_block_size_f
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the minimum size of metadata block allocations
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
- size - metatdata block size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_meta_block_size_f<span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Block size in bytes<span class="sign">;</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pall5ffilters5favail5ff"></a>
-<a name="robo200"></a><h2>h5pall_filters_avail_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pall_filters_avail_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Checks if all filters set in the dataset creation
- property list are available
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - .TRUE. if all filters are available
- .FALSE. otherwise
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- April 10 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pall_filters_avail_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Dataset creation property
- <span class="sign">!</span> list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> all filters are available
- <span class="sign">!</span> <span class="sign">.</span>FALSE<span class="sign">.</span> otherwise
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pclose5fclass5ff"></a>
-<a name="robo201"></a><h2>h5pclose_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pclose_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes an existing property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - Property list class identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pclose_class_f</strong><span class="sign">(</span>class<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Property list class identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pclose5ff"></a>
-<a name="robo202"></a><h2>h5pclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Terminates access to a property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - identifier of the property list to
- terminate access to.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pclose_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pcopy5ff"></a>
-<a name="robo203"></a><h2>h5pcopy_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pcopy_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Copies an existing property list to create a new
- property list
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> new_prp_id - new property list identifier
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pcopy_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> new_prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_prp_id <span class="sign">!</span> Identifier of property list
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pcopy5fprop5ff"></a>
-<a name="robo204"></a><h2>h5pcopy_prop_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pcopy_prop_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Copies a property from one list or class to another.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dst_id - Identifier of the destination property list
- src_id - Identifier of the source property list
- name - name of the property to copy
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pcopy_prop_f</strong><span class="sign">(</span>dst_id<span class="sign">,</span> src_id<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dst_id <span class="sign">!</span> Destination property list
- <span class="sign">!</span> identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_id <span class="sign">!</span> Source property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Property name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pcreate5ff"></a>
-<a name="robo207"></a><h2>h5pcreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pcreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new property as an instance of a property
- list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - type of the property class to be created.
- Possible values are:
- H5P_FILE_CREATE_F
- H5P_FILE_ACCESS_F
- H5P_DATASET_CREATE_F
- H5P_DATASET_XFER_F
- H5P_FILE_MOUNT_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> prp_id - property list identifier
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pcreate_f</strong><span class="sign">(</span>class<span class="sign">,</span> prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> The type of the property list
- <span class="sign">!</span> to be created<span class="sign">.</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5P_FILE_CREATE_F
- <span class="sign">!</span> H5P_FILE_ACCESS_F
- <span class="sign">!</span> H5P_DATASET_CREATE_F
- <span class="sign">!</span> H5P_DATASET_XFER_F
- <span class="sign">!</span> H5P_FILE_MOUNT_F
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pequal5ff"></a>
-<a name="robo208"></a><h2>h5pequal_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pequal_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Checks if two property lists are eqaul
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist1_id - property list identifier
- plist2_id - property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - flag, possible values
- .TRUE. or .FALSE.
- hdferr: - error code
- Success: 0
- Failure: -1, flag is set to .FALSE.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 30, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pequal_f</strong><span class="sign">(</span>plist1_id<span class="sign">,</span> plist2_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist1_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist2_id <span class="sign">!</span> Property list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Flag
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pexist5ff"></a>
-<a name="robo209"></a><h2>h5pexist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pexist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries whether a property name exists in a property list or class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier to query
- name - name of property to check for
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - logical flag
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pexist_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to modify
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> exists<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> otherwise
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pfill5fvalue5fdefined5ff"></a>
-<a name="robo210"></a><h2>h5pfill_value_defined_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pfill_value_defined_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Check if fill value is defined.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - fill value status flag
- Possible values are:
- H5D_FILL_VALUE_ERROR_F
- H5D_FILL_VALUE_UNDEFINED_F
- H5D_FILL_VALUE_DEFAULT_F
- H5D_FILL_VALUE_USER_DEFINED_F
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 4, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pfill_value_defined_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Fill value status flag
- <span class="sign">!</span> H5D_FILL_VALUE_ERROR_F
- <span class="sign">!</span> H5D_FILL_VALUE_UNDEFINED_F
- <span class="sign">!</span> H5D_FILL_VALUE_DEFAULT_F
- <span class="sign">!</span> H5D_FILL_VALUE_USER_DEFINED_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5falignment5ff"></a>
-<a name="robo211"></a><h2>h5pget_alignment_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_alignment_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the current settings for alignment
- properties from a file access property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> threshold - threshold value
- alignment - alignment value
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_alignment_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> threshold<span class="sign">,</span> alignment<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> threshold <span class="sign">!</span> Threshold value
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> alignment <span class="sign">!</span> alignment value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5falloc5ftime5ff"></a>
-<a name="robo212"></a><h2>h5pget_alloc_time_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_alloc_time_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get space allocation time for dataset during creation.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - allocation time flag:
- H5D_ALLOC_TIME_ERROR_F
- H5D_ALLOC_TIME_DEFAULT_F
- H5D_ALLOC_TIME_EARLY_F
- H5D_ALLOC_TIME_LATE_F
- H5D_ALLOC_TIME_INCR_F
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 4, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_alloc_time_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Allocation time flag<span class="sign">:</span>
- <span class="sign">!</span> H5D_ALLOC_TIME_ERROR_F
- <span class="sign">!</span> H5D_ALLOC_TIME_DEFAULT_F
- <span class="sign">!</span> H5D_ALLOC_TIME_EARLY_F
- <span class="sign">!</span> H5D_ALLOC_TIME_LATE_F
- <span class="sign">!</span> H5D_ALLOC_TIME_INCR_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fattr5fcreation5forder5ff"></a>
-<a name="robo213"></a><h2>H5Pget_attr_creation_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_attr_creation_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves tracking and indexing settings for attribute creation order
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocpl_id - Object (group or dataset) creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> crt_order_flags - Flags specifying whether to track and index attribute creation order
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_attr_creation_order_f<span class="sign">(</span>ocpl_id<span class="sign">,</span> crt_order_flags<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocpl_id <span class="sign">!</span> Object <span class="sign">(</span>group or dataset<span class="sign">)</span> creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_order_flags <span class="sign">!</span> Flags specifying whether to track and index attribute creation order
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fattr5fphase5fchange5ff"></a>
-<a name="robo214"></a><h2>H5Pget_attr_phase_change_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_attr_phase_change_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves attribute storage phase change thresholds
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocpl_id - Object (dataset or group) creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> max_compact - Maximum number of attributes to be stored in compact storage
- (Default: 8)
- min_dense - Minimum number of attributes to be stored in dense storage
- (Default: 6)
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_attr_phase_change_f<span class="sign">(</span>ocpl_id<span class="sign">,</span> max_compact<span class="sign">,</span> min_dense<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocpl_id <span class="sign">!</span> Object <span class="sign">(</span>dataset or group<span class="sign">)</span> creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_compact <span class="sign">!</span> Maximum number of attributes to be stored in compact storage
- <span class="sign">!</span> <span class="sign">(</span>Default<span class="sign">:</span> 8<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> min_dense <span class="sign">!</span> Minimum number of attributes to be stored in dense storage
- <span class="sign">!</span> <span class="sign">(</span>Default<span class="sign">:</span> 6<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fbtree5fratios5ff"></a>
-<a name="robo215"></a><h2>h5pget_btree_ratios_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_btree_ratios_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets B-tree split ratios for a dataset transfer property list
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - the dataset transfer property list
- identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> left - the B-tree split ratio for left-most nodes
- middle - the B-tree split ratio for all other nodes
- right - the B-tree split ratio for right-most nodes
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_btree_ratios_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> left<span class="sign">,</span> middle<span class="sign">,</span> right<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> left <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> left<span class="sign">-</span>most nodes<span class="sign">.</span>
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> middle <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> all other nodes
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> right <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> right<span class="sign">-</span>most
- <span class="sign">!</span> nodes and lone nodes<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fbuffer5ff"></a>
-<a name="robo216"></a><h2>h5pget_buffer_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_buffer_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets size for conversion buffer
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - data transfer property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - buffer size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 2, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_buffer_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Data transfer property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Buffer size in bytes<span class="sign">;</span>
- <span class="sign">!</span> buffer is allocated and freed by
- <span class="sign">!</span> the library<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fcache5ff"></a>
-<a name="robo217"></a><h2>h5pget_cache_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_cache_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the meta data cache and raw data chunk cache
- parameters.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> mdc_nelmts - number of elements (objects) in the meta
- data cache
- rdcc_nelmts - number of elements (objects) in the raw
- data chunk cache
- rdcc_nbytes - total size of the raw data chunk cache, in bytes
- rdcc_w0 - preemption policy (0 or 1)
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
- Bug fix: type of the rdcc_nelmts parameter should be INTEGER
- instead of INTEGER(SIZE_T) October 10, 2003
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_cache_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> mdc_nelmts<span class="sign">,</span> rdcc_nelmts<span class="sign">,</span> rdcc_nbytes<span class="sign">,</span> rdcc_w0<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> mdc_nelmts <span class="sign">!</span> Number of elements <span class="sign">(</span>objects<span class="sign">)</span>
- <span class="sign">!</span> in the meta data cache
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nelmts <span class="sign">!</span> Number of elements <span class="sign">(</span>objects<span class="sign">)</span>
- <span class="sign">!</span> in the meta data cache
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nbytes <span class="sign">!</span> Total size of the raw data
- <span class="sign">!</span> chunk cache<span class="sign">,</span> in bytes
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_w0 <span class="sign">!</span> Preemption policy
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fchar5fencoding5ff"></a>
-<a name="robo220"></a><h2>H5Pget_char_encoding_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_char_encoding_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the character encoding used to create a string
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> encoding - Valid values for encoding are:
- H5T_CSET_ASCII_F -&gt; US ASCII
- H5T_CSET_UTF8_F -&gt; UTF-8 Unicode encoding
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_char_encoding_f<span class="sign">(</span>plist_id<span class="sign">,</span> encoding<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Property list identifier
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> encoding <span class="sign">!</span> Valid values <span class="keyword">for</span> encoding are<span class="sign">:</span>
- <span class="sign">!</span> H5T_CSET_ASCII_F <span class="sign">-</span><span class="sign">&gt;</span> US ASCII
- <span class="sign">!</span> H5T_CSET_UTF8_F <span class="sign">-</span><span class="sign">&gt;</span> UTF<span class="sign">-</span>8 Unicode encoding
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fchunk5fcache5ff"></a>
-<a name="robo221"></a><h2>H5Pget_chunk_cache_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_chunk_cache_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the maximum possible number of elements in the meta
- data cache and the maximum possible number of elements and
- bytes and the RDCC_W0 value in the raw data chunk cache. Any
- (or all) arguments may be null pointers in which case the
- corresponding datum is not returned. If these properties have
- not been set on this property list, the default values for a
- file access property list are returned.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dapl_id - Dataset access property list identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> rdcc_nslots - Number of chunk slots in the raw data chunk cache hash table.
- rdcc_nbytes - Total size of the raw data chunk cache, in bytes.
- rdcc_w0 - Preemption policy.
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 13, 2009
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_chunk_cache_f<span class="sign">(</span>dapl_id<span class="sign">,</span> rdcc_nslots<span class="sign">,</span> rdcc_nbytes<span class="sign">,</span> rdcc_w0<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dapl_id <span class="sign">!</span> Dataset access property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nslots <span class="sign">!</span> Number of chunk slots in the raw data chunk cache hash table<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nbytes <span class="sign">!</span> Total size of the raw data chunk cache<span class="sign">,</span> in bytes<span class="sign">.</span>
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_w0 <span class="sign">!</span> Preemption policy<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fchunk5ff"></a>
-<a name="robo222"></a><h2>h5pget_chunk_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_chunk_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the size of chunks for the raw data of a
- chunked layout dataset
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
- ndims - size of dims array
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dims - array with dimension sizes for each chunk
- hdferr - error code
- Success: number of chunk dimensions
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_chunk_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> ndims<span class="sign">,</span> dims<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ndims <span class="sign">!</span> Number of chunk dimensions to
- <span class="sign">!</span> to <span class="keyword">return</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>ndims<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dims
- <span class="sign">!</span> Array containing sizes of
- <span class="sign">!</span> chunk dimensions
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> number of chunk dimensions on success<span class="sign">,</span>
- <span class="sign">!</span> <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fclass5ff"></a>
-<a name="robo223"></a><h2>h5pget_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the property list class for a property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> classtype - property list class
- Possible values are:
- H5P_ROOT_F
- H5P_FILE_CREATE_F
- H5P_FILE_ACCESS_F
- H5PE_DATASET_CREATE_F
- H5P_DATASET_XFER_F
- H5P_FILE_MOUNT_F
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_class_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> classtype<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> classtype <span class="sign">!</span> The type of the property list
- <span class="sign">!</span> to be created<span class="sign">.</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5P_ROOT_F
- <span class="sign">!</span> H5P_FILE_CREATE_F
- <span class="sign">!</span> H5P_FILE_ACCESS_F
- <span class="sign">!</span> H5PE_DATASET_CREATE_F
- <span class="sign">!</span> H5P_DATASET_XFER_F
- <span class="sign">!</span> H5P_FILE_MOUNT_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fclass5fname5ff"></a>
-<a name="robo224"></a><h2>h5pget_class_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_class_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the name of a class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier to query
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - name of a class
- size - Actual length of the class name
- NOTE: If provided buffer "name" is smaller,
- than name will be truncated to fit into
- provided user buffer
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Returned the size of name as an argument
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_class_name_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Buffer to retireve class name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Actual length of the class name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fclass5fparent5ff"></a>
-<a name="robo225"></a><h2>h5pget_class_parent_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_class_parent_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the parent class of a genric property class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier to query
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> parent_id - identifier of the parent class
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_class_parent_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> parent_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> parent_id <span class="sign">!</span> Parent class property list
- <span class="sign">!</span> identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fcopy5fobject5ff"></a>
-<a name="robo226"></a><h2>h5pget_copy_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_copy_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the properties to be used when an object is copied.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocp_plist_id - Object copy property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> copy_options - Copy option(s) to be get
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_copy_object_f</strong><span class="sign">(</span>ocp_plist_id<span class="sign">,</span> copy_options<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocp_plist_id <span class="sign">!</span> Object copy property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> copy_options <span class="sign">!</span> Valid copy options returned are<span class="sign">:</span>
- <span class="sign">!</span> H5O_COPY_SHALLOW_HIERARCHY_F
- <span class="sign">!</span> H5O_COPY_EXPAND_SOFT_LINK_F
- <span class="sign">!</span> H5O_COPY_EXPAND_EXT_LINK_F
- <span class="sign">!</span> H5O_COPY_EXPAND_REFERENCE_F
- <span class="sign">!</span> H5O_COPY_WITHOUT_ATTR_FLAG_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fcreate5finter5fgroup5ff"></a>
-<a name="robo227"></a><h2>H5Pget_create_inter_group_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_create_inter_group_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether property is set to enable creating missing intermediate groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> lcpl_id - Link creation property list identifier
- crt_intermed_group - Specifying whether to create intermediate groups upon
- the creation of an object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 4, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> The long subroutine name (&gt;31) on older f90 compilers causes problems
- so the name was shortened
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_create_inter_group_f<span class="sign">(</span>lcpl_id<span class="sign">,</span> crt_intermed_group<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_intermed_group <span class="sign">!</span> Flag specifying whether to create intermediate groups
- <span class="sign">!</span> upon creation of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fdata5ftransform5ff"></a>
-<a name="robo228"></a><h2>h5pget_data_transform_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_data_transform_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a data transform expression.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Identifier of the property list or class
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> expression - buffer to hold transform expression
- hdferr - Error code
- Success: Actual lenght of the expression
- If provided buffer "expression" is
- smaller, than expression will be
- truncated to fit into
- provided user buffer
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 19, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Should hdferr return just 0 or 1 and add another arguement for the size?
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE <strong>h5pget_data_transform_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> expression<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Identifier of the property list or class
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> expression <span class="sign">!</span> Buffer to hold transform expression
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Registered size of the transform expression
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fdriver5ff"></a>
-<a name="robo230"></a><h2>h5pget_driver_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_driver_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns low-lever driver identifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access or data transfer property
- list identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> driver - low-level driver identifier
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_driver_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> driver<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> driver <span class="sign">!</span> Low<span class="sign">-</span>level file driver identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fedc5fcheck5ff"></a>
-<a name="robo232"></a><h2>h5pget_edc_check_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_edc_check_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries error detecting
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 13, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_edc_check_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Dataset transfer property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Checksum filter flag
- <span class="sign">!</span> May have one of the following values<span class="sign">:</span>
- <span class="sign">!</span> H5Z_ERROR_EDC_F
- <span class="sign">!</span> H5Z_DISABLE_EDC_F
- <span class="sign">!</span> H5Z_ENABLE_EDC_F
- <span class="sign">!</span> H5Z_NO_EDC_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fest5flink5finfo5ff"></a>
-<a name="robo233"></a><h2>H5Pget_est_link_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_est_link_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries data required to estimate required local heap or object header size.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> est_num_entries - Estimated number of links to be inserted into group
- est_name_len - Estimated average length of link names
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_est_link_info_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> est_num_entries<span class="sign">,</span> est_name_len<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> est_num_entries <span class="sign">!</span> Estimated number of links to be inserted into group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> est_name_len <span class="sign">!</span> Estimated average length of link names
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fexternal5fcount5ff"></a>
-<a name="robo234"></a><h2>h5pget_external_count_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_external_count_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the number of external files for a dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> count - number of external files for the
- specified dataset
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_external_count_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> count<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> count <span class="sign">!</span> Number of external files <span class="keyword">for</span> the
- <span class="sign">!</span> Specified dataset
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fexternal5ff"></a>
-<a name="robo235"></a><h2>h5pget_external_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_external_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns information about an external file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> idx - external file index
- name_size - maximum size of name array
- name - name of the external file
- name - name of external file
- offset - offset in bytes from the beginning of the
- file to the location in the file
- where the data starts
- bytes - size of the external file data
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_external_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> idx<span class="sign">,</span> name_size<span class="sign">,</span> name<span class="sign">,</span> offset<span class="sign">,</span>bytes<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> idx <span class="sign">!</span> External file index<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name_size <span class="sign">!</span> Maximum length of name array
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of an external file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span> Offset<span class="sign">,</span> in bytes<span class="sign">,</span> from the beginning
- <span class="sign">!</span> of the file to the location in the file
- <span class="sign">!</span> where the data starts<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> bytes <span class="sign">!</span> Number of bytes reserved in the
- <span class="sign">!</span> file <span class="keyword">for</span> the data
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffapl5fcore5ff"></a>
-<a name="robo236"></a><h2>h5pget_fapl_core_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_core_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries core file driver properties.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> increment - size, in bytes, of memory increments
- backing_store - boolean flag indicating whether to write
- the file contents to disk when the file is closed.
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_core_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> increment<span class="sign">,</span> backing_store<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> increment <span class="sign">!</span> File block size in bytes<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> backing_store <span class="sign">!</span> Flag to indicate that
- <span class="sign">!</span> entire file contents are flushed to a file
- <span class="sign">!</span> with the same name as this core file<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffapl5fdirect5ff"></a>
-<a name="robo237"></a><h2>h5pget_fapl_direct_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_direct_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets up use of the direct I/O driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fapl_id - File access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> alignment - Required memory alignment boundary
- block_size - File system block size
- cbuf_size - Copy buffer size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_direct_f</strong><span class="sign">(</span>fapl_id<span class="sign">,</span> alignment<span class="sign">,</span> block_size<span class="sign">,</span> cbuf_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fapl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> alignment <span class="sign">!</span> Required memory alignment boundary<span class="sign">!</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> block_size <span class="sign">!</span> File system block size
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cbuf_size <span class="sign">!</span> Copy buffer size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffapl5ffamily5ff"></a>
-<a name="robo238"></a><h2>h5pget_fapl_family_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_family_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns file access property list information.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> memb_size - size in bytes of each file member
- memb_plist - identifier of the file access property
- list to be used for each family member
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_family_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> memb_size<span class="sign">,</span> memb_plist <span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_size <span class="sign">!</span> Logical size<span class="sign">,</span> in bytes<span class="sign">,</span>
- <span class="sign">!</span> of each family member
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_plist <span class="sign">!</span> Identifier of the file
- <span class="sign">!</span> access property list <span class="keyword">for</span>
- <span class="sign">!</span> each member of the family
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffapl5fmulti5ff"></a>
-<a name="robo241"></a><h2>h5pget_fapl_multi_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fapl_multi_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up use of the multi-file driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> mem_map - mapping array
- memb_fapl - property list for each memory usage type
- memb_name - names of member file
- relax - flag
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> maxlen_out - maximum length for memb_name array element
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- 24 March 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fapl_multi_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> memb_map<span class="sign">,</span> memb_fapl<span class="sign">,</span> memb_name<span class="sign">,</span> memb_addr<span class="sign">,</span> relax<span class="sign">,</span> hdferr<span class="sign">,</span> maxlen_out<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> File creation property list identifier
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_map
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_fapl
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_name
- <span class="sign">!</span>INTEGER<span class="sign">(</span>HADDR_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_addr
- REAL<span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_addr
- INTEGER<span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> maxlen_out
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> relax
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffclose5fdegree5ff"></a>
-<a name="robo242"></a><h2>h5pget_fclose_degree_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fclose_degree_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the degree for the file close behavior.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fapl_id - File access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> degree - Possible values are:
- H5F_CLOSE_DEFAULT_F
- H5F_CLOSE_WEAK_F
- H5F_CLOSE_SEMI_F
- H5F_CLOSE_STRONG_F
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 26, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fclose_degree_f</strong><span class="sign">(</span>fapl_id<span class="sign">,</span> degree<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fapl_id <span class="sign">!</span> File Access Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> degree <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5F_CLOSE_DEFAULT_F
- <span class="sign">!</span> H5F_CLOSE_WEAK_F
- <span class="sign">!</span> H5F_CLOSE_SEMI_F
- <span class="sign">!</span> H5F_CLOSE_STRONG_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffill5ftime5ff"></a>
-<a name="robo243"></a><h2>h5pget_fill_time_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_fill_time_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get fill value writing time for dataset
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> flag - fill time flag:
- H5D_FILL_TIME_ERROR_F
- H5D_FILL_TIME_ALLOC_F
- H5D_FILL_TIME_NEVER_F
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 4, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_fill_time_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Fill time flag<span class="sign">:</span>
- <span class="sign">!</span> H5D_FILL_TIME_ERROR_F
- <span class="sign">!</span> H5D_FILL_TIME_ALLOC_F
- <span class="sign">!</span> H5D_FILL_TIME_NEVER_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffilter5fby5fid5ff"></a>
-<a name="robo244"></a><h2>h5pget_filter_by_id_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_filter_by_id_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns information about a filter in a pipeline
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> filter_id - filter identifier
- flags - bit vector specifying certain general
- properties of the filter
- cd_nelmts - number of elements in cd_values
- cd_values - auxiliary data for the filter
- namelen - number of characters in the name buffer
- name - buffer to retrieve filter name
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- April 10 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_filter_by_id_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> filter_id<span class="sign">,</span> flags<span class="sign">,</span> cd_nelmts<span class="sign">,</span> cd_values<span class="sign">,</span> namelen<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter_id <span class="sign">!</span> Filter identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cd_nelmts <span class="sign">!</span> Number of elements in cd_values<span class="sign">.</span>
- INTEGER<span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: cd_values ! Auxiliary data for the filter.
- INTEGER, INTENT(OUT) :: flags ! Bit vector specifying certain general
- ! properties of the filter.
- INTEGER(SIZE_T), INTENT(IN) :: namelen ! Anticipated number of characters in name.
- CHARACTER(LEN=*)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the filter
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5ffilter5ff"></a>
-<a name="robo245"></a><h2>h5pget_filter_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_filter_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns information about a filter in a pipeline
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
- filter_number - sequence number within the filter
- pipeline of the filter for which
- information is sought
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> filter_id - filter identification number
- flags - bit vector specifying certain general
- properties of the filter
- cd_nelmts - number of elements in cd_values
- cd_values - auxiliary data for the filter
- namelen - number of characters in the name buffer
- name - buffer to retrieve filter name
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_filter_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> filter_number<span class="sign">,</span> flags<span class="sign">,</span> cd_nelmts<span class="sign">,</span> cd_values<span class="sign">,</span> namelen<span class="sign">,</span> name<span class="sign">,</span> filter_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter_number <span class="sign">!</span> Sequence number within the filter
- <span class="sign">!</span> pipeline of the filter <span class="keyword">for</span> which
- <span class="sign">!</span> information is sought
- INTEGER<span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: cd_values ! Auxiliary data for the filter.
- INTEGER, INTENT(OUT) :: flags ! Bit vector specifying certain general
- ! properties of the filter.
- INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts ! Number of elements in cd_values.
- INTEGER(SIZE_T), INTENT(IN) :: namelen ! Anticipated number of characters in name.
- CHARACTER(LEN=*)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the filter
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter_id <span class="sign">!</span> Filter identification number
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fgc5freferences5ff"></a>
-<a name="robo246"></a><h2>h5pget_gc_references_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_gc_references_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns garbage collecting references setting.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> gc_reference - flag for stting garbage collection on
- and off (1 or 0)
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_gc_references_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> gc_reference<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gc_reference <span class="sign">!</span> The flag <span class="keyword">for</span> garbage collecting
- <span class="sign">!</span> references <span class="keyword">for</span> the file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fistore5fk5ff"></a>
-<a name="robo249"></a><h2>h5pget_istore_k_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_istore_k_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the 1/2 rank of an indexed storage B-tree.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ik - 1/2 rank of chunked storage B-tree
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_istore_k_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> ik<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ik <span class="sign">!</span> 1<span class="sign">/</span>2 rank of chunked storage B<span class="sign">-</span>tree
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5flayout5ff"></a>
-<a name="robo250"></a><h2>h5pget_layout_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_layout_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the layout of the raw data for a dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> layout - type of storage layout for raw data
- possible values are:
- H5D_COMPACT_F
- H5D_CONTIGUOUS_F
- H5D_CHUNKED_F
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_layout_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> layout<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> layout <span class="sign">!</span> Type of storage layout <span class="keyword">for</span> raw data
- <span class="sign">!</span> possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5D_COMPACT_F<span class="sign">(</span>0<span class="sign">)</span>
- <span class="sign">!</span> H5D_CONTIGUOUS_F<span class="sign">(</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5D_CHUNKED_F<span class="sign">(</span>2<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5flink5fcreation5forder5ff"></a>
-<a name="robo251"></a><h2>H5Pget_link_creation_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_link_creation_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries whether link creation order is tracked and/or indexed in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> crt_order_flags - Creation order flag(s)
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_link_creation_order_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> crt_order_flags<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_order_flags <span class="sign">!</span> Creation order flag<span class="sign">(</span>s<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5flink5fphase5fchange5ff"></a>
-<a name="robo252"></a><h2>H5Pget_link_phase_change_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_link_phase_change_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the settings for conversion between compact and dense groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> max_compact - Maximum number of attributes to be stored in compact storage
- min_dense - Minimum number of attributes to be stored in dense storage
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 20, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_link_phase_change_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> max_compact<span class="sign">,</span> min_dense<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_compact <span class="sign">!</span> Maximum number of attributes to be stored in compact storage
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> min_dense <span class="sign">!</span> Minimum number of attributes to be stored in dense storage
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5flocal5fheap5fsize5fhint5ff"></a>
-<a name="robo253"></a><h2>H5Pget_local_heap_size_hint_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_local_heap_size_hint_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the local heap size hint for original-style groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size_hint - Hint for size of local heap
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_local_heap_size_hint_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> size_hint<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size_hint <span class="sign">!</span> Hint <span class="keyword">for</span> size of local heap
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fmeta5fblock5fsize5ff"></a>
-<a name="robo254"></a><h2>h5pget_meta_block_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_meta_block_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the minimum size of metadata block allocations
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - metatdata block size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_meta_block_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Block size in bytes<span class="sign">;</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fnfilters5ff"></a>
-<a name="robo255"></a><h2>h5pget_nfilters_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_nfilters_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the number of filters in the pipeline.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> nfilters - number of filters in the pipeline
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_nfilters_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> nfilters<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nfilters <span class="sign">!</span> The number of filters in the pipeline
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fnlinks5ff"></a>
-<a name="robo256"></a><h2>h5pget_nlinks_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_nlinks_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets maximum number of soft or user-defined link traversals.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> lapl_id - File access property list identifier
- nlinks - Maximum number of links to traverse
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 24, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_nlinks_f</strong><span class="sign">(</span>lapl_id<span class="sign">,</span> nlinks<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nlinks <span class="sign">!</span> Maximum number of links to traverse
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fnpros5ff"></a>
-<a name="robo257"></a><h2>h5pget_npros_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_npros_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries number of properties in property list or class
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - iproperty list identifier to query
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> nprops - number of properties in property object
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_nprops_f<span class="sign">(</span>prp_id<span class="sign">,</span> nprops<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nprops <span class="sign">!</span> Number of properties
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pget5fobj5ftrack5ftimes5ff"></a>
-<a name="robo258"></a><h2>H5Pget_obj_track_times_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pget_obj_track_times_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns whether times are tracked for an object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - property list id
- flag - object timestamp setting
- .TRUE.,.FALSE.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 22, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pget_obj_track_times_f<span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property
- <span class="sign">!</span> list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Object timestamp setting
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fpreserve5ff"></a>
-<a name="robo259"></a><h2>h5pget_preserve_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_preserve_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Checks status of the dataset transfer property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - status flag
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
- Datatype of the flag parameter is changed from
- INTEGER to LOGICAL
- June 4, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_preserve_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> TRUE<span class="sign">/</span>FALSE flag<span class="sign">.</span> Shows status of the dataset<span class="squote">'s
- ! transfer property for partial writing/reading
- ! compound datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! 0 on success and -1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsec25ff"></a>
-<a name="robo262"></a><h2>h5pget_sec2_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_sec2_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> NOT AVAILABLE
-</pre>
-<p class="item_name">INPUTS</p>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
- SOURCE! SUBROUTINE <strong>h5pget_sec2_f</strong> (prp_id, sec2, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER, INTENT(OUT) :: sec2 ! value indicates whether the file
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- 0 on success and -1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsieve5fbuf5fsize5ff"></a>
-<a name="robo263"></a><h2>h5pget_sieve_buf_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_sieve_buf_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the maximum size of the data sieve buffer
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - sieve buffer size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_sieve_buf_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Buffer size in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsize5ff"></a>
-<a name="robo264"></a><h2>h5pget_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries the size of a property value in bytes.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier to query
- name - name of property to query
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - size of property in bytes
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_size_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to query
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsizes5ff"></a>
-<a name="robo265"></a><h2>h5pget_sizes_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_sizes_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the size of the offsets and lengths used
- in an <a href="./HDF5_f90.html#robo76">HDF5</a> file
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> sizeof_addr - size of an object offset in bytes
- sizeof_size - size of an object length in bytes
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_sizes_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> sizeof_addr<span class="sign">,</span> sizeof_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sizeof_addr <span class="sign">!</span> Size of an object
- <span class="sign">!</span> offset in bytes
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sizeof_size <span class="sign">!</span> Size of an object
- <span class="sign">!</span> length in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsmall5fdata5fblock5fsize5ff"></a>
-<a name="robo266"></a><h2>h5pget_small_data_block_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_small_data_block_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the minimum size of "small" raw data block
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - small raw data block size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_small_data_block_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Small raw data block size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsplit5ff"></a>
-<a name="robo267"></a><h2>h5pget_split_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_split_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> NOT AVAILABLE
-</pre>
-<p class="item_name">INPUTS</p>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"><span class="sign">!</span> SUBROUTINE <strong>h5pget_split_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> meta_ext_size<span class="sign">,</span> meta_ext<span class="sign">,</span> meta_plist<span class="sign">,</span>raw_ext_size<span class="sign">,</span><span class="sign">&amp;</span>
-<span class="sign">!</span> raw_ext<span class="sign">,</span> raw_plist<span class="sign">,</span> hdferr<span class="sign">)</span>
-<span class="sign">!</span> IMPLICIT NONE
-<span class="sign">!</span> INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
-<span class="sign">!</span> INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> meta_ext_size <span class="sign">!</span> Number of characters of the meta
- <span class="sign">!</span> file extension to be copied to the
- <span class="sign">!</span> meta_ext buffer
-
-<span class="sign">!</span> CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> meta_ext <span class="sign">!</span>Name of the extension <span class="keyword">for</span>
- <span class="sign">!</span>the metafile filename
-<span class="sign">!</span> INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> meta_plist <span class="sign">!</span> Identifier of the meta file
- <span class="sign">!</span> access property list
-<span class="sign">!</span> INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> raw_ext_size <span class="sign">!</span> Number of characters of the raw
- <span class="sign">!</span> file extension to be copied to the
- <span class="sign">!</span> raw_ext buffer
-<span class="sign">!</span> CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> raw_ext <span class="sign">!</span>Name extension <span class="keyword">for</span> the raw file filename
-<span class="sign">!</span> INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> raw_plist <span class="sign">!</span>Identifier of the raw file
- <span class="sign">!</span>access property list
-<span class="sign">!</span> INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fstdio5ff"></a>
-<a name="robo268"></a><h2>h5pget_stdio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_stdio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> NOT AVAILABLE
-</pre>
-<p class="item_name">INPUTS</p>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"><span class="sign">!</span> SUBROUTINE <strong>h5pget_stdio_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> io<span class="sign">,</span> hdferr<span class="sign">)</span>
-<span class="sign">!</span>
-<span class="sign">!</span> IMPLICIT NONE
-<span class="sign">!</span> INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
-<span class="sign">!</span> INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> io <span class="sign">!</span> value indicates that the file
- <span class="sign">!</span>access property list is set to
- <span class="sign">!</span>the stdio driver
-<span class="sign">!</span> INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fsym5fk5ff"></a>
-<a name="robo269"></a><h2>h5pget_sym_k_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_sym_k_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the size of the symbol table B-tree 1/2 rank
- and the symbol table leaf node 1/2 size.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ik - symbol table tree 1/2 rank
- lk - symbol table node 1/2 size
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_sym_k_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> ik<span class="sign">,</span> lk<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ik <span class="sign">!</span> Symbol table tree rank
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lk <span class="sign">!</span> Symbol table node size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fuserblock5ff"></a>
-<a name="robo270"></a><h2>h5pget_userblock_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_userblock_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets user block size.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> block_size - size of the user block in bytes
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_userblock_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> block_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> block_size <span class="sign">!</span> Size of the
- <span class="sign">!</span> user<span class="sign">-</span>block in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pget5fversion5ff"></a>
-<a name="robo271"></a><h2>h5pget_version_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pget_version_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the version information of various objects
- for a file creation property list
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file createion property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> boot - super block version number
- freelist - global freelist version number
- stab - symbol table version number
- shhdr - shared object header version number
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pget_version_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> boot<span class="sign">,</span> freelist<span class="sign">,</span> <span class="sign">&amp;</span>
- stab<span class="sign">,</span> shhdr<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> boot <span class="sign">!</span> Array to put boot
- <span class="sign">!</span> block version number
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> freelist <span class="sign">!</span> Array to put global
- <span class="sign">!</span> Freelist version number
-
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> stab <span class="sign">!</span> Array to put symbol
- <span class="sign">!</span> table version number
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> shhdr <span class="sign">!</span> Array to put shared
- <span class="sign">!</span> object header version number
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pisa5fclass5ff"></a>
-<a name="robo281"></a><h2>h5pisa_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pisa_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a property list is a member of a class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist - property list identifier
- pclass - identifier of the property class
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - .TRUE. if a member, .FALSE. otherwise
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pisa_class_f</strong><span class="sign">(</span>plist<span class="sign">,</span> pclass<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> pclass <span class="sign">!</span> Class identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> logical flag
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pmodify5ffilter5ff"></a>
-<a name="robo282"></a><h2>h5pmodify_filter_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pmodify_filter_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Adds a filter to the filter pipeline.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
- filter - filter to be modified
- flags - bit vector specifying certain general
- properties of the filter
- cd_nelmts - number of elements in cd_values
- cd_values - auxiliary data for the filter
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- April 10 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pmodify_filter_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> filter<span class="sign">,</span> flags<span class="sign">,</span> cd_nelmts<span class="sign">,</span> cd_values<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter <span class="sign">!</span> Filter to be modified
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flags <span class="sign">!</span> Bit vector specifying certain general
- <span class="sign">!</span> properties of the filter
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cd_nelmts <span class="sign">!</span> Number of elements in cd_values
- INTEGER<span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: cd_values ! Auxiliary data for the filter
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! 0 on success and -1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5premove5ff"></a>
-<a name="robo292"></a><h2>h5premove_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5premove_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes a property from a property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plid - Property list identofoer
- name - name of the property to remove
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5premove_f</strong><span class="sign">(</span>plid<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plid <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of property to remove
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5premove5ffilter5ff"></a>
-<a name="robo293"></a><h2>h5premove_filter_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5premove_filter_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Delete one or more filters from the filter pipeline.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
- filter - filter to be removed
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Quincey Koziol
- January 27 2004
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5premove_filter_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> filter<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Dataset creation property list
- <span class="sign">!</span> identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter <span class="sign">!</span> Filter to be removed
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5falignment5ff"></a>
-<a name="robo296"></a><h2>h5pset_alignment_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_alignment_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets alignment properties of a file access property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- threshold - threshold value
- alignment - alignment value
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_alignment_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> threshold<span class="sign">,</span> alignment<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> threshold <span class="sign">!</span> Threshold value
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> alignment <span class="sign">!</span> alignment value
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5falloc5ftime5ff"></a>
-<a name="robo297"></a><h2>h5pset_alloc_time_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_alloc_time_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Set space allocation time for dataset during creation.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset creation property list identifier
- flag - allocation time flag:
- H5D_ALLOC_TIME_ERROR_F
- H5D_ALLOC_TIME_DEFAULT_F
- H5D_ALLOC_TIME_EARLY_F
- H5D_ALLOC_TIME_LATE_F
- H5D_ALLOC_TIME_INCR_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 4, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_alloc_time_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Allocation time flag<span class="sign">:</span>
- <span class="sign">!</span> H5D_ALLOC_TIME_ERROR_F
- <span class="sign">!</span> H5D_ALLOC_TIME_DEFAULT_F
- <span class="sign">!</span> H5D_ALLOC_TIME_EARLY_F
- <span class="sign">!</span> H5D_ALLOC_TIME_LATE_F
- <span class="sign">!</span> H5D_ALLOC_TIME_INCR_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fattr5fcreation5forder5ff"></a>
-<a name="robo298"></a><h2>H5Pset_attr_creation_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_attr_creation_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets tracking and indexing of attribute creation order
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocpl_id - Object creation property list identifier
- crt_order_flags - Flags specifying whether to track and index attribute creation order
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_attr_creation_order_f<span class="sign">(</span>ocpl_id<span class="sign">,</span> crt_order_flags <span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocpl_id <span class="sign">!</span> Object <span class="sign">(</span>dataset or group<span class="sign">)</span> creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_order_flags <span class="sign">!</span> Flags specifying whether to track and index attribute creation order
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fattr5fphase5fchange5ff"></a>
-<a name="robo299"></a><h2>H5Pset_attr_phase_change_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_attr_phase_change_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets attribute storage phase change thresholds.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocpl_id - Object (dataset or group) creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> max_compact - Maximum number of attributes to be stored in compact storage
- (Default: 8)
- min_dense - Minimum number of attributes to be stored in dense storage
- (Default: 6)
- hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE h5pset_attr_phase_change_f<span class="sign">(</span>ocpl_id<span class="sign">,</span> max_compact<span class="sign">,</span> min_dense<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocpl_id <span class="sign">!</span> Object <span class="sign">(</span>dataset or group<span class="sign">)</span> creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_compact <span class="sign">!</span> Maximum number of attributes to be stored in compact storage
- <span class="sign">!</span><span class="sign">(</span>Default<span class="sign">:</span> 8<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> min_dense <span class="sign">!</span> Minimum number of attributes to be stored in dense storage
- <span class="sign">!</span> <span class="sign">(</span>Default<span class="sign">:</span> 6<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fbtree5fratios5ff"></a>
-<a name="robo300"></a><h2>h5pset_btree_ratios_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_btree_ratios_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets B-tree split ratios for a dataset transfer
- property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - the dataset transfer property list
- identifier
- left - the B-tree split ratio for left-most nodes
- middle - the B-tree split ratio for all other nodes
- right - the B-tree split ratio for right-most nodes
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_btree_ratios_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> left<span class="sign">,</span> middle<span class="sign">,</span> right<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> left <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> left<span class="sign">-</span>most nodes<span class="sign">.</span>
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> middle <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> all other nodes
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> right <span class="sign">!</span> The B<span class="sign">-</span>tree split ratio <span class="keyword">for</span> right<span class="sign">-</span>most
- <span class="sign">!</span> nodes and lone nodes<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fbuffer5ff"></a>
-<a name="robo301"></a><h2>h5pset_buffer_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_buffer_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets sixe for conversion buffer
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - data transfer property list identifier
- size - buffer size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 2, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_buffer_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Data transfer property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Buffer size in bytes<span class="sign">;</span>
- <span class="sign">!</span> buffer is allocated and freed by
- <span class="sign">!</span> the library<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fcache5ff"></a>
-<a name="robo302"></a><h2>h5pset_cache_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_cache_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the meta data cache and raw data chunk
- cache parameters
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- mdc_nelmts - number of elements (objects) in the meta
- data cache
- rdcc_nelmts - number of elements (objects) in the raw
- data chunk cache
- rdcc_nbytes - total size of the raw data chunk cache, in bytes
- rdcc_w0 - preemption policy (0 or 1)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_cache_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> mdc_nelmts<span class="sign">,</span>rdcc_nelmts<span class="sign">,</span> rdcc_nbytes<span class="sign">,</span> rdcc_w0<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> mdc_nelmts <span class="sign">!</span> Number of elements <span class="sign">(</span>objects<span class="sign">)</span>
- <span class="sign">!</span> in the meta data cache
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nelmts <span class="sign">!</span> Number of elements <span class="sign">(</span>objects<span class="sign">)</span>
- <span class="sign">!</span> in the meta data cache
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nbytes <span class="sign">!</span> Total size of the raw data
- <span class="sign">!</span> chunk cache<span class="sign">,</span> in bytes
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_w0 <span class="sign">!</span> Preemption policy
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fchar5fencoding5ff"></a>
-<a name="robo305"></a><h2>H5Pset_char_encoding_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_char_encoding_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the character encoding used to encode a string.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Property list identifier
- encoding - Valid values for encoding are:
- H5T_CSET_ASCII_F -&gt; US ASCII
- H5T_CSET_UTF8_F -&gt; UTF-8 Unicode encoding
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_char_encoding_f<span class="sign">(</span>plist_id<span class="sign">,</span> encoding<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> encoding <span class="sign">!</span> String encoding character set<span class="sign">:</span>
- <span class="sign">!</span> H5T_CSET_ASCII_F <span class="sign">-</span><span class="sign">&gt;</span> US ASCII
- <span class="sign">!</span> H5T_CSET_UTF8_F <span class="sign">-</span><span class="sign">&gt;</span> UTF<span class="sign">-</span>8 Unicode encoding
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fchunk5fcache5ff"></a>
-<a name="robo306"></a><h2>H5Pset_chunk_cache_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_chunk_cache_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Set the number of objects in the meta data cache and the
- maximum number of chunks and bytes in the raw data chunk cache.
- Once set, these values will override the values in the file access
- property list. Each of these values can be individually unset
- (or not set at all) by passing the macros:
- H5D_CHUNK_CACHE_NSLOTS_DFLT_F,
- H5D_CHUNK_CACHE_NBYTES_DFLT_F, and/or
- H5D_CHUNK_CACHE_W0_DFLT_F
- as appropriate.
-
- The RDCC_W0 value should be between 0 and 1 inclusive and
- indicates how much chunks that have been fully read or fully
- written are favored for preemption. A value of zero means
- fully read or written chunks are treated no differently than
- other chunks (the preemption is strictly LRU) while a value
- of one means fully read chunks are always preempted before
- other chunks.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dapl_id - Dataset access property list identifier.
- rdcc_nslots - The number of chunk slots in the raw data chunk cache for this dataset.
- rdcc_nbytes - The total size of the raw data chunk cache for this dataset.
- rdcc_w0 - The chunk preemption policy for this dataset.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 13, 2009
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_chunk_cache_f<span class="sign">(</span>dapl_id<span class="sign">,</span> rdcc_nslots<span class="sign">,</span> rdcc_nbytes<span class="sign">,</span> rdcc_w0<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dapl_id <span class="sign">!</span> Dataset access property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nslots <span class="sign">!</span> The number of chunk slots in the raw data
- <span class="sign">!</span> chunk cache <span class="keyword">for</span> this dataset<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_nbytes <span class="sign">!</span> The total size of the raw data chunk cache
- <span class="sign">!</span> <span class="keyword">for</span> this dataset<span class="sign">.</span>
- REAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rdcc_w0 <span class="sign">!</span> The chunk preemption policy <span class="keyword">for</span> this dataset<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fchunk5ff"></a>
-<a name="robo307"></a><h2>h5pset_chunk_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_chunk_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the size of the chunks used to store
- a chunked layout dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - datatset creation property list identifier
- ndims - number of dimensions for each chunk
- dims - array with dimension sizes for each chunk
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_chunk_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> ndims<span class="sign">,</span> dims<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ndims <span class="sign">!</span> Number of chunk dimensions
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>ndims<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dims
- <span class="sign">!</span> Array containing sizes of
- <span class="sign">!</span> chunk dimensions
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fcopy5fobject5ff"></a>
-<a name="robo308"></a><h2>h5pset_copy_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_copy_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets properties to be used when an object is copied.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> ocp_plist_id - Object copy property list identifier
- copy_options - Copy option(s) to be set
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 3, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_copy_object_f</strong><span class="sign">(</span>ocp_plist_id<span class="sign">,</span> copy_options<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ocp_plist_id <span class="sign">!</span> Object copy property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> copy_options <span class="sign">!</span> Copy option<span class="sign">(</span>s<span class="sign">)</span> to be set<span class="sign">,</span> valid options are<span class="sign">:</span>
- <span class="sign">!</span> H5O_COPY_SHALLOW_HIERARCHY_F
- <span class="sign">!</span> H5O_COPY_EXPAND_SOFT_LINK_F
- <span class="sign">!</span> H5O_COPY_EXPAND_EXT_LINK_F
- <span class="sign">!</span> H5O_COPY_EXPAND_REFERENCE_F
- <span class="sign">!</span> H5O_COPY_WITHOUT_ATTR_FLAG_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fcreate5finter5fgroup5ff"></a>
-<a name="robo309"></a><h2>H5Pset_create_inter_group_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_create_inter_group_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Specifies in property list whether to create missing intermediate groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> lcpl_id - Link creation property list identifier
- crt_intermed_group - crt_intermed_group specifying whether
- to create intermediate groups upon the creation
- of an object
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 22, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> The long subroutine name (&gt;31) on older f90 compilers causes problems
- so had to shorten the name
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_create_inter_group_f<span class="sign">(</span>lcpl_id<span class="sign">,</span> crt_intermed_group<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_intermed_group <span class="sign">!</span> specifying whether to create intermediate groups
- <span class="sign">!</span> upon the creation of an object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fdata5ftransform5ff"></a>
-<a name="robo310"></a><h2>h5pset_data_transform_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_data_transform_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets a data transform expression.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Identifier of the property list or class
- expression - Buffer to hold transform expression
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 19, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_data_transform_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> expression<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Identifier of the property list or class
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> expression <span class="sign">!</span> Buffer to hold transform expression
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fdeflate5ff"></a>
-<a name="robo311"></a><h2>h5pset_deflate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_deflate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets compression method and compression level.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
- level - compression level
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_deflate_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> level<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> level <span class="sign">!</span> Compression level
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fedc5fcheck5ff"></a>
-<a name="robo315"></a><h2>h5pset_edc_check_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_edc_check_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Enables/disables error detecting
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
- flag - EDC flag; possible values:
- H5Z_DISABLE_EDC_F
- H5Z_ENABLE_EDC_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 13, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_edc_check_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Checksum filter flag
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fest5flink5finfo5ff"></a>
-<a name="robo316"></a><h2>h5pset_est_link_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_est_link_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets estimated number of links and length of link names in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
- est_num_entries - Estimated number of links to be inserted into group
- est_name_len - Estimated average length of link names
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_est_link_info_f</strong><span class="sign">(</span>gcpl_id<span class="sign">,</span> est_num_entries<span class="sign">,</span> est_name_len<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> est_num_entries <span class="sign">!</span> Estimated number of links to be inserted into group
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> est_name_len <span class="sign">!</span> Estimated average length of link names
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fexternal5ff"></a>
-<a name="robo317"></a><h2>h5pset_external_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_external_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Adds an external file to the list of external files.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
- name - name of external file
- offset - offset in bytes from the beginning of the
- file to the location in the file
- where the data starts
- bytes - size of the external file data.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_external_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> name<span class="sign">,</span> offset<span class="sign">,</span>bytes<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of an external file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span> Offset<span class="sign">,</span> in bytes<span class="sign">,</span> from the beginning
- <span class="sign">!</span> of the file to the location in the file
- <span class="sign">!</span> where the data starts<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> bytes <span class="sign">!</span> Number of bytes reserved in the
- <span class="sign">!</span> file <span class="keyword">for</span> the data
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fcore5ff"></a>
-<a name="robo318"></a><h2>h5pset_fapl_core_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_core_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Modifies the file access property list to use the
- H5FD_CORE driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- increment - size, in bytes, of memory increments
- backing_store - boolean flag indicating whether to write
- the file contents to disk when the file is closed.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_core_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> increment<span class="sign">,</span> backing_store<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> increment <span class="sign">!</span> File block size in bytes<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> backing_store <span class="sign">!</span> Flag to indicate that
- <span class="sign">!</span> entire file contents are flushed to a file
- <span class="sign">!</span> with the same name as this core file<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fdirect5ff"></a>
-<a name="robo319"></a><h2>h5pset_fapl_direct_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_direct_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up use of the direct I/O driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fapl_id - File access property list identifier
- alignment - Required memory alignment boundary
- block_size - File system block size
- cbuf_size - Copy buffer size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE <strong>h5pset_fapl_direct_f</strong><span class="sign">(</span>fapl_id<span class="sign">,</span> alignment<span class="sign">,</span> block_size<span class="sign">,</span> cbuf_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fapl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> alignment <span class="sign">!</span> Required memory alignment boundary<span class="sign">!</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> block_size <span class="sign">!</span> File system block size
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cbuf_size <span class="sign">!</span> Copy buffer size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fmulti5fl"></a>
-<a name="robo322"></a><h2>h5pset_fapl_multi_l</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_multi_l</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up use of the multi-file driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- mem_map - mapping array
- memb_fapl - property list for each memory usage type
- memb_name - names of member file
- relax - flag
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- 20 March 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_multi_l</strong><span class="sign">(</span>prp_id<span class="sign">,</span> memb_map<span class="sign">,</span> memb_fapl<span class="sign">,</span> memb_name<span class="sign">,</span> memb_addr<span class="sign">,</span> relax<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> File creation property list identifier
- INTEGER<span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_map <span class="sign">!</span> Mapping array
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_fapl <span class="sign">!</span> Property list <span class="keyword">for</span> each memory usage type
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_name <span class="sign">!</span> Names of member file
- REAL<span class="sign">,</span> DIMENSION<span class="sign">(</span>0<span class="sign">:</span>H5FD_MEM_NTYPES_F<span class="sign">-</span>1<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> memb_addr
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> relax <span class="sign">!</span> Flag
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fmulti5fs"></a>
-<a name="robo323"></a><h2>h5pset_fapl_multi_s</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_multi_s</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up use of the multi-file driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- relax - flag
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- 31 March 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_multi_s</strong><span class="sign">(</span>prp_id<span class="sign">,</span> relax<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> File creation property list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> relax
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fsec25ff"></a>
-<a name="robo324"></a><h2>h5pset_fapl_sec2_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_sec2_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the sec2 driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_sec2_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fsplit5ff"></a>
-<a name="robo325"></a><h2>h5pset_fapl_split_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_split_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Emulates the old split file driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- meta_ext - name of the extension for the metafile
- filename
- meta_plist - identifier of the meta file access property
- list
- raw_ext - name extension for the raw file filename
- raw_plist - identifier of the raw file access property list
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_split_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> meta_ext<span class="sign">,</span> meta_plist<span class="sign">,</span> raw_ext<span class="sign">,</span> raw_plist<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> meta_ext <span class="sign">!</span> Name of the extension <span class="keyword">for</span>
- <span class="sign">!</span> the metafile filename
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> meta_plist <span class="sign">!</span> Identifier of the meta file
- <span class="sign">!</span> access property list
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> raw_ext <span class="sign">!</span> Name extension <span class="keyword">for</span> the raw file filename
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> raw_plist <span class="sign">!</span> Identifier of the raw file
- <span class="sign">!</span> access property list
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffapl5fstdio5ff"></a>
-<a name="robo326"></a><h2>h5pset_fapl_stdio_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fapl_stdio_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the standard I/O driver.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fapl_stdio_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffclose5fdegree5ff"></a>
-<a name="robo327"></a><h2>h5pset_fclose_degree_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fclose_degree_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the degree for the file close behavior.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fapl_id - file access property list identifier
- degree - Possible values are:
- H5F_CLOSE_DEFAULT_F
- H5F_CLOSE_WEAK_F
- H5F_CLOSE_SEMI_F
- H5F_CLOSE_STRONG_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 26, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fclose_degree_f</strong><span class="sign">(</span>fapl_id<span class="sign">,</span> degree<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fapl_id <span class="sign">!</span> File Access Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> degree <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5F_CLOSE_DEFAULT_F
- <span class="sign">!</span> H5F_CLOSE_WEAK_F
- <span class="sign">!</span> H5F_CLOSE_SEMI_F
- <span class="sign">!</span> H5F_CLOSE_STRONG_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffill5ftime5ff"></a>
-<a name="robo328"></a><h2>h5pset_fill_time_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fill_time_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Set fill value writing time for dataset
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset creation property list identifier
- flag - fill time flag:
- H5D_FILL_TIME_ERROR_F
- H5D_FILL_TIME_ALLOC_F
- H5D_FILL_TIME_NEVER_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 4, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fill_time_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Fill time flag<span class="sign">:</span>
- <span class="sign">!</span> H5D_FILL_TIME_ERROR_F
- <span class="sign">!</span> H5D_FILL_TIME_ALLOC_F
- <span class="sign">!</span> H5D_FILL_TIME_NEVER_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffilter5ff"></a>
-<a name="robo329"></a><h2>h5pset_filter_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_filter_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Adds a filter to the filter pipeline.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation or transfer property list
- identifier
- filter - filter to be added to the pipeline
- flags - bit vector specifying certain general
- properties of the filter
- cd_nelmts - number of elements in cd_values
- cd_values - auxiliary data for the filter
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- February, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_filter_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> filter<span class="sign">,</span> flags<span class="sign">,</span> cd_nelmts<span class="sign">,</span> cd_values<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter <span class="sign">!</span> Filter to be added to the pipeline<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flags <span class="sign">!</span> Bit vector specifying certain general
- <span class="sign">!</span> properties of the filter<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cd_nelmts <span class="sign">!</span> Number of elements in cd_values<span class="sign">.</span>
- INTEGER<span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: cd_values ! Auxiliary data for the filter.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! 0 on success and -1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5ffletcher325ff"></a>
-<a name="robo330"></a><h2>h5pset_fletcher32_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_fletcher32_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets Fletcher32 checksum of EDC for a dataset creation
- property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 13, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_fletcher32_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fgc5freferences5ff"></a>
-<a name="robo331"></a><h2>h5pset_gc_references_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_gc_references_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets garbage collecting references flag.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file access property list identifier
- gc_reference - flag for stting garbage collection on
- and off (1 or 0)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_gc_references_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> gc_reference<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gc_reference <span class="sign">!</span> The flag <span class="keyword">for</span> garbage collecting
- <span class="sign">!</span> references <span class="keyword">for</span> the file
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fhyper5fvector5fsize5ff"></a>
-<a name="robo332"></a><h2>h5pset_hyper_vector_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_hyper_vector_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Set the number of "I/O" vectors (vector size)
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - dataset transfer property list identifier
- size - vector size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_hyper_vector_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset transfer property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Vector size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fistore5fk5ff"></a>
-<a name="robo335"></a><h2>h5pset_istore_k_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_istore_k_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the size of the parameter used to control the
- B-trees for indexing chunked datasets
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- ik - 1/2 rank of chunked storage B-tree
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_istore_k_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> ik<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ik <span class="sign">!</span> 1<span class="sign">/</span>2 rank of chunked storage B<span class="sign">-</span>tree
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5flayout5ff"></a>
-<a name="robo336"></a><h2>h5pset_layout_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_layout_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the type of storage used store the raw data
- for a dataset.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - data creation property list identifier
- layout - type of storage layout for raw data
- possible values are:
- H5D_COMPACT_F
- H5D_CONTIGUOUS_F
- H5D_CHUNKED_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_layout_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> layout<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> layout <span class="sign">!</span> Type of storage layout <span class="keyword">for</span> raw data
- <span class="sign">!</span> possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5D_COMPACT_F
- <span class="sign">!</span> H5D_CONTIGUOUS_F
- <span class="sign">!</span> H5D_CHUNKED_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5flibver5fbounds5ff"></a>
-<a name="robo337"></a><h2>H5Pset_libver_bounds_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_libver_bounds_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets bounds on library versions, and indirectly format versions, to be used when creating objects.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fapl_id - File access property list identifier
- low - The earliest version of the library that will be used for writing objects.
- high - The latest version of the library that will be used for writing objects.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 18, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_libver_bounds_f<span class="sign">(</span>fapl_id<span class="sign">,</span> low<span class="sign">,</span> high<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fapl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> low <span class="sign">!</span> The earliest version of the library that will be used <span class="keyword">for</span> writing objects<span class="sign">.</span>
- <span class="sign">!</span> Currently<span class="sign">,</span> low must be one of two pre<span class="sign">-</span>defined values<span class="sign">:</span>
- <span class="sign">!</span> HDF_LIBVER_EARLIEST_F
- <span class="sign">!</span> HDF_LIBVER_LATEST_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> high <span class="sign">!</span> The latest version of the library that will be used <span class="keyword">for</span> writing objects<span class="sign">.</span>
- <span class="sign">!</span> Currently<span class="sign">,</span> low must set to the pre<span class="sign">-</span>defined value<span class="sign">:</span>
- <span class="sign">!</span> HDF_LIBVER_LATEST_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5flink5fcreation5forder5ff"></a>
-<a name="robo338"></a><h2>H5Pset_link_creation_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_link_creation_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets creation order tracking and indexing for links in a group.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
- crt_order_flags - Creation order flag(s)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 18, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_link_creation_order_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> crt_order_flags<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> crt_order_flags <span class="sign">!</span> Creation order flag<span class="sign">(</span>s<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5flink5fphase5fchange5ff"></a>
-<a name="robo339"></a><h2>h5pset_link_phase_change_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_link_phase_change_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the parameters for conversion between compact and dense groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
- max_compact - Maximum number of attributes to be stored in compact storage
- min_dense - Minimum number of attributes to be stored in dense storage
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source">SUBROUTINE <strong>h5pset_link_phase_change_f</strong><span class="sign">(</span>gcpl_id<span class="sign">,</span> max_compact<span class="sign">,</span> min_dense<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> max_compact <span class="sign">!</span> Maximum number of attributes to be stored in compact storage
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> min_dense <span class="sign">!</span> Minimum number of attributes to be stored in dense storage
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5flocal5fheap5fsize5fhint5ff"></a>
-<a name="robo340"></a><h2>H5Pset_local_heap_size_hint_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_local_heap_size_hint_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the local heap size hint for original-style groups.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> gcpl_id - Group creation property list identifier
- size_hint - Hint for size of local heap
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_local_heap_size_hint_f<span class="sign">(</span>gcpl_id<span class="sign">,</span> size_hint<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> gcpl_id <span class="sign">!</span> Group creation property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size_hint <span class="sign">!</span> Hint <span class="keyword">for</span> size of local heap
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fnbit5ff"></a>
-<a name="robo341"></a><h2>H5Pset_nbit_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_nbit_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up the use of the N-Bit filter.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Dataset creation property list identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_nbit_f<span class="sign">(</span>plist_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fnlinks5ff"></a>
-<a name="robo342"></a><h2>h5pset_nlinks_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_nlinks_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets maximum number of soft or user-defined link traversals.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> lapl_id - File access property list identifier
- nlinks - Maximum number of links to traverse
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 24, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_nlinks_f</strong><span class="sign">(</span>lapl_id<span class="sign">,</span> nlinks<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lapl_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nlinks <span class="sign">!</span> Maximum number of links to traverse
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fobj5ftrack5ftimes5ff"></a>
-<a name="robo343"></a><h2>H5Pset_obj_track_times_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_obj_track_times_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Set whether the birth, access, modification &amp; change times for
- an object are stored.
-
- Birth time is the time the object was created. Access time is
- the last time that metadata or raw data was read from this
- object. Modification time is the last time the data for
- this object was changed (either writing raw data to a dataset
- or inserting/modifying/deleting a link in a group). Change
- time is the last time the metadata for this object was written
- (adding/modifying/deleting an attribute on an object, extending
- the size of a dataset, etc).
-
- If these times are not tracked, they will be reported as
- 12:00 AM UDT, Jan. 1, 1970 (i.e. 0 seconds past the UNIX
- epoch) when queried.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - property list id
- flag - object timestamp setting
- .TRUE.,.FALSE.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 22, 2008
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_obj_track_times_f<span class="sign">(</span>plist_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property
- <span class="sign">!</span> list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> Object timestamp setting
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fpreserve5ff"></a>
-<a name="robo344"></a><h2>h5pset_preserve_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_preserve_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the dataset transfer property list status to
- TRUE or FALSE for initializing compound datatype
- members during write/read operations.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - property list identifier
- flag - status flag
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
- Datatype of the flag parameter is changed from
- INTEGER to LOGICAL June 4, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_preserve_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> TRUE<span class="sign">/</span>FALSE flag to set the dataset
- <span class="sign">!</span> transfer property <span class="keyword">for</span> partila writing<span class="sign">/</span>reading
- <span class="sign">!</span> compound datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fscaleoffset5ff"></a>
-<a name="robo347"></a><h2>h5pset_scaleoffset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_scaleoffset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up the use of the Scale-Offset filter.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - Dataset creation property list identifier.
- scale_type - Flag indicating compression method.
- scale_factor - Parameter related to scale.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 21, 2008
-</pre>
-<p class="item_name">HISTORY</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_scaleoffset_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> scale_type<span class="sign">,</span> scale_factor<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> Dataset creation property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> scale_type <span class="sign">!</span> Flag indicating compression method<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> scale_factor <span class="sign">!</span> Parameter related to scale<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fshared5fmesg5findex5ff"></a>
-<a name="robo348"></a><h2>H5Pset_shared_mesg_index_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_shared_mesg_index_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Configures the specified shared object header message index
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> fcpl_id - File creation property list identifier.
- index_num - Index being configured.
- mesg_type_flags - Types of messages that should be stored in this index.
- min_mesg_size - Minimum message size.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_shared_mesg_index_f<span class="sign">(</span>fcpl_id<span class="sign">,</span> index_num<span class="sign">,</span> mesg_type_flags<span class="sign">,</span> min_mesg_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> fcpl_id <span class="sign">!</span> file creation property list
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index_num <span class="sign">!</span> Index being configured<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> mesg_type_flags <span class="sign">!</span> Types of messages that should be stored in this index<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> min_mesg_size <span class="sign">!</span> Minimum message size<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fH5Pset5fshared5fmesg5fnindexes5ff"></a>
-<a name="robo349"></a><h2>H5Pset_shared_mesg_nindexes_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Pset_shared_mesg_nindexes_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets number of shared object header message indexes
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file creation property list
- nindexes - Number of shared object header message indexes to be available in files created with this property list
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- January, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5pset_shared_mesg_nindexes_f<span class="sign">(</span> plist_id<span class="sign">,</span> nindexes<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File creation property list
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nindexes <span class="sign">!</span> Number of shared object header message indexes
- <span class="sign">!</span> available in files created WITH this property list
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fshuffle5ff"></a>
-<a name="robo350"></a><h2>h5pset_shuffle_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_shuffle_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets shuffling filter
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_shuffle_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fsieve5fbuf5fsize5ff"></a>
-<a name="robo351"></a><h2>h5pset_sieve_buf_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_sieve_buf_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the maximum size of the data sieve buffer
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
- size - sieve buffer size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_sieve_buf_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Buffer size in bytes<span class="sign">;</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fsizes5ff"></a>
-<a name="robo352"></a><h2>h5pset_sizes_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_sizes_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the byte size of the offsets and lengths used
- to address objects in an <a href="./HDF5_f90.html#robo76">HDF5</a> file.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- sizeof_addr - size of an object offset in bytes
- sizeof_size - size of an object length in bytes
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_sizes_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> sizeof_addr<span class="sign">,</span> sizeof_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sizeof_addr <span class="sign">!</span> Size of an object
- <span class="sign">!</span> offset in bytes
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sizeof_size <span class="sign">!</span> Size of an object
- <span class="sign">!</span> length in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fsmall5fdata5fblock5fsize5ff"></a>
-<a name="robo353"></a><h2>h5pset_small_data_block_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_small_data_block_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the minimum size of "small" raw data block
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> plist_id - file access property list identifier
- size - small raw data block size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_small_data_block_size_f</strong><span class="sign">(</span>plist_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> plist_id <span class="sign">!</span> File access property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Small raw data block size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fsym5fk5ff"></a>
-<a name="robo354"></a><h2>h5pset_sym_k_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_sym_k_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the size of parameters used to control the
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list identifier
- ik - symbol table tree rank
- lk - symbol table node size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_sym_k_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> ik<span class="sign">,</span> lk<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ik <span class="sign">!</span> Symbol table tree rank
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lk <span class="sign">!</span> Symbol table node size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fszip5ff"></a>
-<a name="robo355"></a><h2>h5pset_szip_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_szip_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets up use of szip compression
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - dataset creation property list identifier
- options_mask - A bit-mask conveying the desired SZIP options.
- Current valid values in Fortran are:
- H5_SZIP_EC_OM_F
- H5_SZIP_NN_OM_F
- pixels_per_block - szip parameters
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- April 10 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_szip_f</strong><span class="sign">(</span>prp_id<span class="sign">,</span> options_mask<span class="sign">,</span> pixels_per_block<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Dataset creation property
- <span class="sign">!</span> list identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> options_mask <span class="sign">!</span> A bit<span class="sign">-</span>mask conveying the desired
- <span class="sign">!</span> SZIP options
- <span class="sign">!</span> Current valid values in Fortran are<span class="sign">:</span>
- <span class="sign">!</span> H5_SZIP_EC_OM_F
- <span class="sign">!</span> H5_SZIP_NN_OM_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> pixels_per_block <span class="sign">!</span> The number of pixels or data elements
- <span class="sign">!</span> in each data block
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5pset5fuserblock5ff"></a>
-<a name="robo356"></a><h2>h5pset_userblock_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5pset_userblock_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets user block size
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> prp_id - file creation property list to modify
- size - size of the user-block in bytes
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 14, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5pset_userblock_f</strong> <span class="sign">(</span>prp_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> prp_id <span class="sign">!</span> Property list identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the user<span class="sign">-</span>block in bytes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5P2fh5punregister5ff"></a>
-<a name="robo357"></a><h2>h5punregister_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5punregister_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes a property from a property list class.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - Property list class identifier
- name - name of the property to remove
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 9, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5punregister_f</strong><span class="sign">(</span>class<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> property list class identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> name of property to remove
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Pff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Rf_c.html b/fortran/doc/DevelGuide/src/H5Rf_c.html
deleted file mode 100644
index bba197e..0000000
--- a/fortran/doc/DevelGuide/src/H5Rf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Rf.c</title>
-<!-- Source: ./src/H5Rf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Rf2fH5Rf"></a>
-<a name="robo67"></a><h2>H5Rf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Rff_f90.html#robo64">H5R</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Rf.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Rff_F03_f90.html b/fortran/doc/DevelGuide/src/H5Rff_F03_f90.html
deleted file mode 100644
index 3202540..0000000
--- a/fortran/doc/DevelGuide/src/H5Rff_F03_f90.html
+++ /dev/null
@@ -1,492 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Rff_F03.f90</title>
-<!-- Source: ./src/H5Rff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5R2028F0329"></a>
-<a name="robo65"></a><h2>H5R (F03)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE H5R_PROVISIONAL
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Rff_F03.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 and Fortran 2003 interfaces for <a href="./H5Rff_f90.html#robo64">H5R</a> functions.
- It contains the same functions as H5Rff_DEPRECIATE.f90 but includes the
- Fortran 2003 functions and the interface listings. This file will be compiled
- instead of H5Rff_DEPRECIATE.f90 if Fortran 2003 functions are enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <a href="./H5Rff_f90.html#robo64">H5R</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rcreate5fobject5ff"></a>
-<a name="robo358"></a><h2>h5rcreate_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rcreate_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates reference to the object
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the object at the specified location
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref - reference to the specified object
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rcreate_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rcreate_object_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> ref<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the object at location specified
- <span class="sign">!</span> by loc_id identifier
- TYPE<span class="sign">(</span>hobj_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rcreate5fptr5ff"></a>
-<a name="robo360"></a><h2>h5rcreate_ptr_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rcreate_ptr_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a reference.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the dataset at the specified location
- ref_type - type of reference:
- H5R_OBJECT
- H5T_STD_REF_DSETREG
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref - reference created by the function call.
- hdferr - error code
- Success: 0
- Failure: -1
- OPTIONAL
- space_id - dataspace identifier that describes selected region
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- June 20, 2008
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rcreate_f
- subroutine where the output is a pointer.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rcreate_ptr_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> ref_type<span class="sign">,</span> ref<span class="sign">,</span> hdferr<span class="sign">,</span> space_id<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the dataset at location specified
- <span class="sign">!</span> by loc_id identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_type <span class="sign">!</span> type of reference
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Reference created by the function call
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> OPTIONAL <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataset<span class="squote">'s dataspace identifier
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rcreate5fregion5ff"></a>
-<a name="robo362"></a><h2>h5rcreate_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rcreate_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates reference to the dataset region
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the dataset at the specified location
- space_id - dataspace identifier that describes selected region
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref - reference to the dataset region
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rcreate_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rcreate_region_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> space_id<span class="sign">,</span> ref<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the dataset at location specified
- <span class="sign">!</span> by loc_id identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataset<span class="squote">'s dataspace identifier
- TYPE(hdset_reg_ref_t_f), INTENT(INOUT), TARGET :: ref ! Dataset region reference
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rdereference5fobject5ff"></a>
-<a name="robo363"></a><h2>h5rdereference_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rdereference_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the <a href="./HDF5_f90.html#robo76">HDF5</a> object referenced
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing
- reference
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_id - object_identifier
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rdereference_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rdereference_object_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref<span class="sign">,</span> ref_obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hobj_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rdereference5fptr5ff"></a>
-<a name="robo365"></a><h2>h5rdereference_ptr_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rdereference_ptr_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the <a href="./HDF5_f90.html#robo76">HDF5</a> object referenced.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - valid identifier for the file containing the
- referenced object or any object in that file.
- ref_type - the reference type of ref.
- ref - Reference to open.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref_obj_id - identifier of referenced object
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- June 20, 2008
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rdereference_f
- subroutine using pointers.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rdereference_ptr_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref_type<span class="sign">,</span> ref<span class="sign">,</span> ref_obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Valid identifier <span class="keyword">for</span> the file containing the
- <span class="sign">!</span> referenced object or any object in that file<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_type <span class="sign">!</span> The reference type of ref<span class="sign">.</span>
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_obj_id
- <span class="sign">!</span> Identifier of referenced object
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rdereference5fregion5ff"></a>
-<a name="robo366"></a><h2>h5rdereference_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rdereference_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the dataset region
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing
- reference to teh regions
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_id - dataspace identifier
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rdereference_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rdereference_region_f</strong><span class="sign">(</span>obj_id<span class="sign">,</span> ref<span class="sign">,</span> ref_obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hdset_reg_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_obj_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rget5fname5fobject5ff"></a>
-<a name="robo369"></a><h2>h5rget_name_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_name_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a name of a referenced object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
- ref - An object or dataset region reference.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - A name associated with the referenced object or dataset region.
-
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size - The size of the name buffer.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 28, 2008
-
- SOURCES
- or for the group that dataset is in.
- returning 0 (zero) if no name is associated
- with the identifier
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rget5fname5fptr5ff"></a>
-<a name="robo370"></a><h2>h5rget_name_ptr_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_name_ptr_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a name of a referenced object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or
- for the group that dataset is in.
- ref_type - Type of reference.
- ref - An object or dataset region reference.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - A name associated with the referenced object or dataset ptr.
-
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size - The size of the name buffer.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 28, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_name_ptr_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> ref_type<span class="sign">,</span> ref<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the dataset containing the reference
- <span class="sign">!</span> or <span class="keyword">for</span> the group that dataset is in<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_type <span class="sign">!</span> Type of reference<span class="sign">.</span>
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> An object or dataset region reference<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> A name associated with the referenced object or dataset ptr<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> The size of the name buffer<span class="sign">,</span>
- <span class="sign">!</span> returning 0 <span class="sign">(</span>zero<span class="sign">)</span> <span class="keyword">if</span> no name is associated
- <span class="sign">!</span> with the identifier
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rget5fname5fregion5ff"></a>
-<a name="robo372"></a><h2>h5rget_name_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_name_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a name of a dataset region.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or
- for the group that dataset is in.
- ref - An object or dataset region reference.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - A name associated with the referenced object or dataset region.
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size - The size of the name buffer.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 28, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_name_region_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> ref<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the dataset containing the reference
- <span class="sign">!</span> or <span class="keyword">for</span> the group that dataset is in<span class="sign">.</span>
- TYPE<span class="sign">(</span>hdset_reg_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span><span class="sign">,</span> TARGET <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> The size of the name buffer<span class="sign">,</span>
- <span class="sign">!</span> returning 0 <span class="sign">(</span>zero<span class="sign">)</span> <span class="keyword">if</span> no name is associated with the identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> A name associated with the referenced object or dataset region<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F03292fh5rget5fobj5ftype5ff"></a>
-<a name="robo373"></a><h2>h5rget_obj_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo65">H5R (F03)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_obj_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the type of object that an object reference points to.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or
- for the group that dataset is in.
- ref_type - Type of reference to query.
- ref - Reference to query.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_type - Type of referenced object.
- H5G_UNKNOWN_F (-1)
- H5G_LINK_F 0
- H5G_GROUP_F 1
- H5G_DATASET_F 2
- H5G_TYPE_F 3
-
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- Decemeber 17, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_obj_type_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> ref_type<span class="sign">,</span> ref<span class="sign">,</span> obj_type<span class="sign">,</span> hdferr<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref_type
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_type
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Rff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Rff_F90_f90.html b/fortran/doc/DevelGuide/src/H5Rff_F90_f90.html
deleted file mode 100644
index 7d20d0c..0000000
--- a/fortran/doc/DevelGuide/src/H5Rff_F90_f90.html
+++ /dev/null
@@ -1,305 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Rff_F90.f90</title>
-<!-- Source: ./src/H5Rff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5R2028F9029"></a>
-<a name="robo66"></a><h2>H5R (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE H5R_PROVISIONAL
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Rff_F90.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran 90 interfaces for <a href="./H5Rff_f90.html#robo64">H5R</a> functions. It contains
- the same functions as <a href="./H5Rff_F03_f90.html#robo_top_of_doc">H5Rff_F03.f90</a> but excludes the Fortran 2003 functions
- and the interface listings. This file will be compiled instead of <a href="./H5Rff_F03_f90.html#robo_top_of_doc">H5Rff_F03.f90</a>
- if Fortran 2003 functions are not enabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <a href="./H5Rff_f90.html#robo64">H5R</a> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rcreate5fobject5ff"></a>
-<a name="robo359"></a><h2>h5rcreate_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rcreate_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates reference to the object
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the object at the specified location
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref - reference to the specified object
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rcreate_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rcreate_object_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> ref<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the object at location specified
- <span class="sign">!</span> by loc_id identifier
- TYPE<span class="sign">(</span>hobj_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rcreate5fregion5ff"></a>
-<a name="robo361"></a><h2>h5rcreate_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rcreate_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates reference to the dataset region
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the dataset at the specified location
- space_id - dataspace identifier that describes selected region
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ref - reference to the dataset region
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rcreate_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rcreate_region_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> space_id<span class="sign">,</span> ref<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Location identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Name of the dataset at location specified
- <span class="sign">!</span> by loc_id identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataset<span class="squote">'s dataspace identifier
- TYPE(hdset_reg_ref_t_f), INTENT(OUT) :: ref ! Dataset region reference
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rdereference5fobject5ff"></a>
-<a name="robo364"></a><h2>h5rdereference_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rdereference_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the <a href="./HDF5_f90.html#robo76">HDF5</a> object referenced
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing reference
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_id - object_identifier
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rdereference_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rdereference_object_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> ref<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hobj_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rdereference5fregion5ff"></a>
-<a name="robo367"></a><h2>h5rdereference_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rdereference_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens the dataset region
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing
- reference to teh regions
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_id - dataspace identifier
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rdereference_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rdereference_region_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> ref<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hdset_reg_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rget5fname5fobject5ff"></a>
-<a name="robo368"></a><h2>h5rget_name_object_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_name_object_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a name of a referenced object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
- ref - An object or dataset region reference.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - A name associated with the referenced object or dataset region.
-
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size - The size of the name buffer.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 28, 2008
-
- SOURCES
- or for the group that dataset is in.
- returning 0 (zero) if no name is associated with the identifier
-</pre>
-
-<hr />
-<a name="H5R2028F90292fh5rget5fname5fregion5ff"></a>
-<a name="robo371"></a><h2>h5rget_name_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo66">H5R (F90)</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_name_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a name of a dataset region.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - Identifier for the dataset containing the reference or
- for the group that dataset is in.
- ref - An object or dataset region reference.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - A name associated with the referenced object or dataset region.
- hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> size - The size of the name buffer.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 28, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_name_region_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> ref<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">,</span> size<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the dataset containing the reference
- <span class="sign">!</span> or <span class="keyword">for</span> the group that dataset is in<span class="sign">.</span>
- TYPE<span class="sign">(</span>hdset_reg_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> The size of the name buffer<span class="sign">,</span>
- <span class="sign">!</span> returning 0 <span class="sign">(</span>zero<span class="sign">)</span> <span class="keyword">if</span> no name is associated
- <span class="sign">!</span> with the identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> A name associated with the referenced object or dataset region<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Rff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Rff_f90.html b/fortran/doc/DevelGuide/src/H5Rff_f90.html
deleted file mode 100644
index 2b60b08..0000000
--- a/fortran/doc/DevelGuide/src/H5Rff_f90.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Rff.f90</title>
-<!-- Source: ./src/H5Rff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5R"></a>
-<a name="robo64"></a><h2>H5R</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5R</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Rff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5R</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5R</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5R2fh5rget5fobject5ftype5fobj5ff"></a>
-<a name="robo374"></a><h2>h5rget_object_type_obj_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo64">H5R</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_object_type_obj_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the type of object that an object reference points to.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing
- reference to the objects
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> obj_type - object_type, possible values:
- H5G_UNKNOWN_F (-1)
- H5G_GROUP_F 0
- H5G_DATASET_F 1
- H5G_TYPE_F 2
- H5G_LINK_F 3
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rget_object_type_f
- subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_object_type_obj_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> ref<span class="sign">,</span> obj_type<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hobj_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Object reference
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_type <span class="sign">!</span> Object type
- <span class="sign">!</span> H5G_UNKNOWN_F <span class="sign">(</span><span class="sign">-</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5G_GROUP_F 0
- <span class="sign">!</span> H5G_DATASET_F 1
- <span class="sign">!</span> H5G_TYPE_F 2
- <span class="sign">!</span> H5G_LINK_F 3
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5R2fh5rget5fregion5fregion5ff"></a>
-<a name="robo375"></a><h2>h5rget_region_region_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo64">H5R</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5rget_region_region_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves a dataspace with the specified region selected
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dset_id - identifier of the dataset containing
- reference to the regions
- ref - reference to open
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> space_id - dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This is a module procedure for the h5rget_region_f subroutine.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5rget_region_region_f</strong><span class="sign">(</span>dset_id<span class="sign">,</span> ref<span class="sign">,</span> space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dset_id <span class="sign">!</span> Dataset identifier
- TYPE<span class="sign">(</span>hdset_reg_ref_t_f<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ref <span class="sign">!</span> Dataset region reference
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Space identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Rff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Sf_c.html b/fortran/doc/DevelGuide/src/H5Sf_c.html
deleted file mode 100644
index ebdedf7..0000000
--- a/fortran/doc/DevelGuide/src/H5Sf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Sf.c</title>
-<!-- Source: ./src/H5Sf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Sf2fH5Sf"></a>
-<a name="robo69"></a><h2>H5Sf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Sff_f90.html#robo68">H5S</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Sf.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Sff_f90.html b/fortran/doc/DevelGuide/src/H5Sff_f90.html
deleted file mode 100644
index c26b191..0000000
--- a/fortran/doc/DevelGuide/src/H5Sff_f90.html
+++ /dev/null
@@ -1,1165 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Sff.f90</title>
-<!-- Source: ./src/H5Sff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5S"></a>
-<a name="robo68"></a><h2>H5S</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5S</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5Sff.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5S</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5S</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5S2fh5sclose5ff"></a>
-<a name="robo376"></a><h2>h5sclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Releases and terminates access to a dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - identifier of dataspace to release
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sclose_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5scopy5ff"></a>
-<a name="robo377"></a><h2>h5scopy_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5scopy_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates an exact copy of a dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> new_space_id - identifier of dataspace's copy
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5scopy_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> new_space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_space_id
- <span class="sign">!</span> Identifier of dataspace<span class="squote">'s copy
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5screate5ff"></a>
-<a name="robo378"></a><h2>h5screate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5screate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new dataspace of a specified type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> classtype - the type of the dataspace to be created
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> space_id - dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5screate_f</strong><span class="sign">(</span>classtype<span class="sign">,</span> space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> classtype <span class="sign">!</span> The type of the dataspace
- <span class="sign">!</span> to be created<span class="sign">.</span>
- <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5S_SCALAR_F <span class="sign">(</span>0<span class="sign">)</span>
- <span class="sign">!</span> H5S_SIMPLE_F<span class="sign">(</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5S_NULL_F<span class="sign">(</span>2<span class="sign">)</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5screate5fsimple5ff"></a>
-<a name="robo379"></a><h2>h5screate_simple_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5screate_simple_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new simple data space and opens it for access .
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> rank - number of dimensions
- dims - an array of the size of each dimension
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> space_id - dataspace identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> maxdims - an array of the maximum size of each dimension
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5screate_simple_f</strong><span class="sign">(</span>rank<span class="sign">,</span> dims<span class="sign">,</span> space_id<span class="sign">,</span> hdferr<span class="sign">,</span> maxdims<span class="sign">)</span>
-
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rank <span class="sign">!</span> Number of dataspace dimensions
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dims<span class="sign">(</span>rank<span class="sign">)</span>
- <span class="sign">!</span> Array with the dimension
- <span class="sign">!</span> sizes
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> maxdims<span class="sign">(</span>rank<span class="sign">)</span>
- <span class="sign">!</span> Array with the maximum
- <span class="sign">!</span> dimension sizes
-</pre>
-
-<hr />
-<a name="H5S2fH5Sdecode5ff"></a>
-<a name="robo380"></a><h2>H5Sdecode_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Sdecode_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Decode a binary object description of data space and return a new object handle.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> buf - Buffer for the data space object to be decoded.
- obj_id - Object ID
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 26, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5sdecode_f<span class="sign">(</span>buf<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer <span class="keyword">for</span> the data space object to be decoded<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object ID
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fH5Sencode5ff"></a>
-<a name="robo381"></a><h2>H5Sencode_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Sencode_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Encode a data space object description into a binary buffer.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - Identifier of the object to be encoded.
- buf - Buffer for the object to be encoded into.
- nalloc - The size of the allocated buffer.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> nalloc - The size of the buffer needed.
- hdferr - Returns 0 if successful and -1 if fails.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- March 26, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5sencode_f<span class="sign">(</span>obj_id<span class="sign">,</span> buf<span class="sign">,</span> nalloc<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Identifier of the object to be encoded<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer <span class="keyword">for</span> the object to be encoded into<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nalloc <span class="sign">!</span> The size of the allocated buffer<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sextent5fcopy5ff"></a>
-<a name="robo382"></a><h2>h5sextent_copy_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sextent_copy_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Copies the extent of a dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dest_space_id - the identifier for the dataspace to which
- the extent is copied
- source_space_id - the identifier for the dataspace from
- which the extent is copied
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">NOTES</p>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sextent_copy_f</strong><span class="sign">(</span>dest_space_id<span class="sign">,</span> source_space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dest_space_id <span class="sign">!</span> Identifier of destination
- <span class="sign">!</span> dataspace
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> source_space_id <span class="sign">!</span> Identifier of source
- <span class="sign">!</span> dataspace
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sextent5fequal5ff"></a>
-<a name="robo383"></a><h2>h5sextent_equal_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sextent_equal_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether two dataspace extents are equal.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space1_id - First dataspace identifier.
- space2_id - Second dataspace identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> Equal - .TRUE. if equal, .FALSE. if unequal.
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 2, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sextent_equal_f</strong><span class="sign">(</span>space1_id<span class="sign">,</span> space2_id<span class="sign">,</span> equal<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space1_id <span class="sign">!</span> First dataspace identifier<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space2_id <span class="sign">!</span> Second dataspace identifier<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> Equal <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">if</span> equal<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> <span class="keyword">if</span> unequal<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5fbounds5ff"></a>
-<a name="robo384"></a><h2>h5sget_select_bounds_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_bounds_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the bounding box containing the current selection.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> start - starting coordinates of bounding box
- end - ending coordinates of bounding box
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_bounds_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> start<span class="sign">,</span> END<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: start
- ! Starting coordinates of the bounding box.
- INTEGER(HSIZE_T), DIMENSION(*)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> END
- <span class="sign">!</span>Ending coordinates of the bounding box<span class="sign">,</span>
- <span class="sign">!</span>i<span class="sign">.</span>e<span class="sign">.</span><span class="sign">,</span> the coordinates of the diagonally
- <span class="sign">!</span>opposite corner
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5felem5fnpoints5ff"></a>
-<a name="robo385"></a><h2>h5sget_select_elem_npoints_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_elem_npoints_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the number of element points in the current selection
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> num_points - number of element points in the current
- dataspace selection
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_elem_npoints_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> num_points<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_points
- <span class="sign">!</span>number of element points
- <span class="sign">!</span>in the current dataspace
- <span class="sign">!</span>selection
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5felem5fpointlist5ff"></a>
-<a name="robo386"></a><h2>h5sget_select_elem_pointlist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_elem_pointlist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the list of element points currently selected.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- startpoint - element point to start with
- num_points - number of elemnt points to get
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer with element points selected
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_elem_pointlist_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> startpoint<span class="sign">,</span> <span class="sign">&amp;</span>
- num_points<span class="sign">,</span> buf<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> startpoint
- <span class="sign">!</span>Element point to start with<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_points
- <span class="sign">!</span>Number of element points to get
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: buf
- !List of element points selected
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5fhyper5fblocklist5ff"></a>
-<a name="robo387"></a><h2>h5sget_select_hyper_blocklist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_hyper_blocklist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the list of hyperslab blocks currently selected.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- startblock - hyperslab block to start with
- num_blocks - number of blocks to get
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> buf - buffer to hold block list
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_hyper_blocklist_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> startblock<span class="sign">,</span> <span class="sign">&amp;</span>
- num_blocks<span class="sign">,</span> buf<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> startblock
- <span class="sign">!</span>Hyperslab block to start with<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_blocks
- <span class="sign">!</span>number of hyperslab blocks
- <span class="sign">!</span>to get in the current dataspace
- <span class="sign">!</span>selection
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: buf
- !List of hyperslab blocks selected
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5fhyper5fnblocks5ff"></a>
-<a name="robo388"></a><h2>h5sget_select_hyper_nblocks_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_hyper_nblocks_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Get number of hyperslab blocks.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> num_blocks - number of hyperslab blocks in the current
- hyperslab selection
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_hyper_nblocks_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> num_blocks<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_blocks
- <span class="sign">!</span>number of hyperslab blocks
- <span class="sign">!</span>in the current dataspace
- <span class="sign">!</span>selection
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5fnpoints5ff"></a>
-<a name="robo389"></a><h2>h5sget_select_npoints_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_npoints_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines the number of elements in a dataspace selection.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> npoints - number of points in the dataspace selection
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_npoints_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> npoints<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> npoints <span class="sign">!</span> Number of elements in the
- <span class="sign">!</span> selection
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fselect5ftype5ff"></a>
-<a name="robo390"></a><h2>h5sget_select_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_select_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieve the type of selection
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace iidentifier with selection
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type - flag, valid values are:
- H5S_SEL_ERROR_F
- H5S_SEL_NONE_F
- H5S_SEL_POINTS_F
- H5S_SEL_HYPERSLABS_F
- H5S_SEL_ALL_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- October 7, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_select_type_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> type<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier to
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type <span class="sign">!</span> Selection type
- <span class="sign">!</span> H5S_SEL_ERROR_F
- <span class="sign">!</span> H5S_SEL_NONE_F
- <span class="sign">!</span> H5S_SEL_POINTS_F
- <span class="sign">!</span> H5S_SEL_HYPERSLABS_F
- <span class="sign">!</span> H5S_SEL_ALL_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fsimple5fextent5fdims5ff"></a>
-<a name="robo391"></a><h2>h5sget_simple_extent_dims_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_simple_extent_dims_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves dataspace dimension size and maximum size.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dims - array to store size of each dimension
- maxdims - array to store maximum size of each
- dimension
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_simple_extent_dims_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> dims<span class="sign">,</span> maxdims<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(OUT) :: dims
- ! Array to store dimension sizes
- INTEGER(HSIZE_T), DIMENSION(*)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> maxdims
- <span class="sign">!</span> Array to store max dimension
- <span class="sign">!</span> sizes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span> <span class="sign">-</span>1 on failure<span class="sign">,</span>
- <span class="sign">!</span> number of dimensions on
- <span class="sign">!</span> on success
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fsimple5fextent5fndims5ff"></a>
-<a name="robo392"></a><h2>h5sget_simple_extent_ndims_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_simple_extent_ndims_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines the dimensionality of a dataspace
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> rank - number of dataspace dimensions
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_simple_extent_ndims_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> rank<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rank <span class="sign">!</span> Number of dimensions
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fsimple5fextent5fnpoints5ff"></a>
-<a name="robo393"></a><h2>h5sget_simple_extent_npoints_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_simple_extent_npoints_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines the number of elements in a dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> npoints - number of elements in the dataspace
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_simple_extent_npoints_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> npoints<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> npoints <span class="sign">!</span> Number of elements in
- <span class="sign">!</span> dataspace
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sget5fsimple5fextent5ftype5ff"></a>
-<a name="robo394"></a><h2>h5sget_simple_extent_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sget_simple_extent_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determine the current class of a dataspace
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> classtype - class type, possible values are:
- H5S_NO_CLASS_F (-1)
- H5S_SCALAR_F (0)
- H5S_SIMPLE_F (1)
- H5S_NULL_F (2)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sget_simple_extent_type_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> classtype<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> classtype <span class="sign">!</span> Class type <span class="sign">,</span> possible values
- <span class="sign">!</span> are<span class="sign">:</span>
- <span class="sign">!</span> H5S_NO_CLASS_F <span class="sign">(</span><span class="sign">-</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5S_SCALAR_F <span class="sign">(</span>0<span class="sign">)</span>
- <span class="sign">!</span> H5S_SIMPLE_F <span class="sign">(</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5S_NULL_F <span class="sign">(</span>2<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sis5fsimple5ff"></a>
-<a name="robo395"></a><h2>h5sis_simple_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sis_simple_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a dataspace is a simple dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> status - flag to indicate if dataspace
- is simple or not
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sis_simple_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> status<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> status <span class="sign">!</span> Flag<span class="sign">,</span> idicates <span class="keyword">if</span> dataspace
- <span class="sign">!</span> is simple or not <span class="sign">(</span> TRUE or
- <span class="sign">!</span> FALSE<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5soffset5fsimple5ff"></a>
-<a name="robo396"></a><h2>h5soffset_simple_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5soffset_simple_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the offset of a simple dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- offset - the offset at which to position the
- selection
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> NONE
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5soffset_simple_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> offset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">(</span>HSSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: offset
- ! The offset at which to position
- ! the selection
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sselect5fall5ff"></a>
-<a name="robo397"></a><h2>h5sselect_all_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sselect_all_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Selects the entire dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - Identifier for the dataspace in which
- selection being made
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sselect_all_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sselect5felements5ff"></a>
-<a name="robo398"></a><h2>h5sselect_elements_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sselect_elements_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Selects elements to be included in the selection for
- a dataspace
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- operator - flag, valid values are:
- H5S_SELECT_SET_F
- H5S_SELECT_APPEND_F
- H5S_SELECT_PREPEND_F
- rank - number of dataspace dimensions
- num_elements - number of elements to be selected
- coord - 2D (rank x num_elements) array with the
- elements coordinates ( 1-based); in C the
- array is stored in 2D as (num_element x rank)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sselect_elements_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> OPERATOR<span class="sign">,</span> rank<span class="sign">,</span> <span class="sign">&amp;</span>
- num_elements<span class="sign">,</span> coord<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> OPERATOR
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rank
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_elements
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">,</span> DIMENSION<span class="sign">(</span>rank<span class="sign">,</span>num_elements<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> coord
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr
-</pre>
-
-<hr />
-<a name="H5S2fh5sselect5fhyperslab5ff"></a>
-<a name="robo399"></a><h2>h5sselect_hyperslab_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sselect_hyperslab_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Selects a hyperslab region to add to the current selected
- region
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- operator - flag, valid values are:
- H5S_SELECT_SET_F (0)
- H5S_SELECT_OR_F (1)
- start - array with hyperslab offsets
- count - number of blocks included in the
- hyperslab
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> stride - array with hyperslab strides
- block - array with hyperslab block sizes
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sselect_hyperslab_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> operator<span class="sign">,</span> start<span class="sign">,</span> count<span class="sign">,</span> <span class="sign">&amp;</span>
- hdferr<span class="sign">,</span> stride<span class="sign">,</span> block<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> operator <span class="sign">!</span> Flag<span class="sign">,</span> valid values are<span class="sign">:</span>
- <span class="sign">!</span> H5S_SELECT_SET_F <span class="sign">(</span>0<span class="sign">)</span>
- <span class="sign">!</span> H5S_SELECT_OR_F <span class="sign">(</span>1<span class="sign">)</span>
- <span class="sign">!</span>
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: start
- ! Starting coordinates of the hyperslab
- INTEGER(HSIZE_T), DIMENSION(*)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> count
- <span class="sign">!</span> Number of blocks to select
- <span class="sign">!</span> from dataspace
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> stride
- <span class="sign">!</span> Array of how many elements to move
- <span class="sign">!</span> in each direction
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span><span class="sign">:</span><span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> block
- <span class="sign">!</span> Sizes of element block
-</pre>
-
-<hr />
-<a name="H5S2fh5sselect5fnone5ff"></a>
-<a name="robo400"></a><h2>h5sselect_none_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sselect_none_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Resets the selection region to include no elements.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - the identifier for the dataspace in which
- the selection is being reset.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sselect_none_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sselect5fvalid5ff"></a>
-<a name="robo401"></a><h2>h5sselect_valid_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sselect_valid_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Verifies that the selection is within the extent of
- the dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - identifier for the dataspace for which
- selection is verified
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sselect_valid_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> status<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> status <span class="sign">!</span> TRUE <span class="keyword">if</span> the selection is
- <span class="sign">!</span> contained within the extent<span class="sign">,</span>
- <span class="sign">!</span> FALSE otherwise<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sset5fextent5fnone5ff"></a>
-<a name="robo402"></a><h2>h5sset_extent_none_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sset_extent_none_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Removes the extent from a dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sset_extent_none_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5S2fh5sset5fextent5fsimple5ff"></a>
-<a name="robo403"></a><h2>h5sset_extent_simple_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo68">H5S</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5sset_extent_simple_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets or resets the size of an existing dataspace.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> space_id - dataspace identifier
- rank - dataspace number of dimensions
- current_size - array with the new sizes of dimensions
- maximum_size - array with the new maximum sizes of
- dimensions
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 6, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5sset_extent_simple_f</strong><span class="sign">(</span>space_id<span class="sign">,</span> rank<span class="sign">,</span> current_size<span class="sign">,</span> <span class="sign">&amp;</span>
- maximum_size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> space_id <span class="sign">!</span> Dataspace identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rank <span class="sign">!</span> Dataspace rank
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>rank<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> current_size
- <span class="sign">!</span> Array with the new sizes
- <span class="sign">!</span> of dimensions
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="sign">(</span>rank<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> maximum_size
- <span class="sign">!</span> Array with the new maximum
- <span class="sign">!</span> sizes of dimensions
- <span class="sign">!</span> sizes
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Sff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Tf_c.html b/fortran/doc/DevelGuide/src/H5Tf_c.html
deleted file mode 100644
index b36c2a5..0000000
--- a/fortran/doc/DevelGuide/src/H5Tf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Tf.c</title>
-<!-- Source: ./src/H5Tf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Tf2fH5Tf"></a>
-<a name="robo73"></a><h2>H5Tf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Tff_f90.html#robo70">H5T</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Tf.c on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Tff_f90.html b/fortran/doc/DevelGuide/src/H5Tff_f90.html
deleted file mode 100644
index 3b7dfe8..0000000
--- a/fortran/doc/DevelGuide/src/H5Tff_f90.html
+++ /dev/null
@@ -1,2378 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Tff.f90</title>
-<!-- Source: ./src/H5Tff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5T"></a>
-<a name="robo70"></a><h2>H5T</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5T</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5T</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5T</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5T2fh5tarray5fcreate5ff"></a>
-<a name="robo404"></a><h2>h5tarray_create_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tarray_create_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates an array datatype object.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> base_id - datatype identifier for the array
- base datatype
- rank - rank of the array
- dims - array dimension sizes
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - array datatype identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tarray_create_f</strong><span class="sign">(</span>base_id<span class="sign">,</span> rank<span class="sign">,</span> dims<span class="sign">,</span> type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> base_id <span class="sign">!</span> identifier of array base datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> rank <span class="sign">!</span> Rank of the array
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span> DIMENSION<span class="comment">(*), INTENT(IN) :: dims !Sizes of each array dimension
- INTEGER(HID_T), INTENT(OUT) :: type_id ! identifier of the array datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tclose5ff"></a>
-<a name="robo405"></a><h2>h5tclose_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tclose_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Releases a datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tclose_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tcommit5fanon5ff"></a>
-<a name="robo406"></a><h2>h5tcommit_anon_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcommit_anon_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Commits a transient datatype to a file,
- creating a new named datatype,
- but does not link it into the file structure.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - A file or group identifier specifying the file
- in which the new named datatype is to be created.
- dtype_id - A datatype identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> tcpl_id - A datatype creation property list identifier.
- (H5P_DEFAULT_F for the default property list.)
- tapl_id - A datatype access property list identifier.
- should always be passed as the value H5P_DEFAULT_F.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 25, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcommit_anon_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> dtype_id<span class="sign">,</span> hdferr<span class="sign">,</span> tcpl_id<span class="sign">,</span> tapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> A file or group identifier specifying
- <span class="sign">!</span> the file in which the new named datatype
- <span class="sign">!</span> is to be created<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dtype_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tcpl_id <span class="sign">!</span> A datatype creation property
- <span class="sign">!</span> list identifier<span class="sign">.</span>
- <span class="sign">!</span> <span class="sign">(</span>H5P_DEFAULT_F <span class="keyword">for</span> the <span class="keyword">default</span> property list<span class="sign">.</span><span class="sign">)</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tapl_id <span class="sign">!</span> A datatype access property list identifier<span class="sign">.</span>
- <span class="sign">!</span> should always be passed as the value H5P_DEFAULT_F<span class="sign">.</span>
-</pre>
-
-<hr />
-<a name="H5T2fh5tcommit5ff"></a>
-<a name="robo407"></a><h2>h5tcommit_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcommit_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Commits a transient datatype to a file, creating a
- new named datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - name of the datatype to be stored
- at the specified location
- type_id - identifier of a datatype to be stored
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> lcpl_id - Link creation property list
- tcpl_id - Datatype creation property list
- tapl_id - Datatype access property list
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> - Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-
- - Added optional parameters introduced in version 1.8
- M. Scot Breitenfeld
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcommit_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> type_id<span class="sign">,</span> hdferr<span class="sign">,</span> <span class="sign">&amp;</span>
- lcpl_id<span class="sign">,</span> tcpl_id<span class="sign">,</span> tapl_id <span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name
- <span class="sign">!</span> Datatype name within file or group
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lcpl_id <span class="sign">!</span> Link creation property list
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tcpl_id <span class="sign">!</span> Datatype creation property list
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tapl_id <span class="sign">!</span> Datatype access property list
-</pre>
-
-<hr />
-<a name="H5T2fh5tcommitted5ff"></a>
-<a name="robo408"></a><h2>h5tcommitted_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcommitted_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a datatype is a named type or a transient type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dtype_id - A datatype identifier.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> committed - .TRUE., if the datatype has been committed
- .FALSE., if the datatype has not been committed.
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- February 25, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcommitted_f</strong><span class="sign">(</span>dtype_id<span class="sign">,</span> committed<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dtype_id <span class="sign">!</span> A datatype identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> committed <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span><span class="sign">,</span> <span class="keyword">if</span> the datatype has been committed
- <span class="sign">!</span><span class="sign">.</span>FALSE<span class="sign">.</span><span class="sign">,</span> <span class="keyword">if</span> the datatype has not been committed<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
-<span class="sign">!</span> Success<span class="sign">:</span> 0
-<span class="sign">!</span> Failure<span class="sign">:</span> <span class="sign">-</span>1
-</pre>
-
-<hr />
-<a name="H5T2fh5tcompiler5fconv5ff"></a>
-<a name="robo409"></a><h2>h5tcompiler_conv_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcompiler_conv_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Check whether the library’s default conversion is hard conversion.R
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> src_id - Identifier for the source datatype.
- dst_id - Identifier for the destination datatype.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - TRUE for compiler conversion, FALSE for library conversion
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 9, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcompiler_conv_f</strong><span class="sign">(</span> src_id<span class="sign">,</span> dst_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> src_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the source datatype<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dst_id <span class="sign">!</span> Identifier <span class="keyword">for</span> the destination datatype<span class="sign">.</span>
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> <span class="sign">.</span>TRUE<span class="sign">.</span> <span class="keyword">for</span> compiler conversion<span class="sign">,</span> <span class="sign">.</span>FALSE<span class="sign">.</span> <span class="keyword">for</span> library conversion
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5T2fh5tcopy5ff"></a>
-<a name="robo411"></a><h2>h5tcopy_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcopy_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a copy of exisiting datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> new_type_id - identifier of datatype's copy
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcopy_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> new_type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_type_id
- <span class="sign">!</span> Identifier of datatype<span class="squote">'s copy
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tcreate5ff"></a>
-<a name="robo412"></a><h2>h5tcreate_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tcreate_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new dataype
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> class - datatype class, possible values are:
- H5T_COMPOUND_F
- H5T_ENUM_F
- H5T_OPAQUE_F
- size - datattype size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - datatype identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tcreate_f</strong><span class="sign">(</span>class<span class="sign">,</span> size<span class="sign">,</span> type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Datatype class can be one of
- <span class="sign">!</span> H5T_COMPOUND_F
- <span class="sign">!</span> H5T_ENUM_F
- <span class="sign">!</span> H5T_OPAQUE_F
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Size of the datatype
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fH5Tdecode5ff"></a>
-<a name="robo413"></a><h2>H5Tdecode_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Tdecode_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Decode a binary object description of data type and return a new object handle.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> buf - Buffer for the data space object to be decoded.
- obj_id - Object ID
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 9, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5tdecode_f<span class="sign">(</span>buf<span class="sign">,</span> obj_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer <span class="keyword">for</span> the data space object to be decoded<span class="sign">.</span>
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Object ID
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tenaum5finsert5ff"></a>
-<a name="robo414"></a><h2>h5tenaum_insert_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tenaum_insert_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Inserts a new enumeration datatype member.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5tenum_insert_f<span class="sign">(</span>type_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span>Name of the new member
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span>value of the new member
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fH5Tencode5ff"></a>
-<a name="robo415"></a><h2>H5Tencode_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>H5Tencode_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Encode a data type object description into a binary buffer.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> obj_id - Identifier of the object to be encoded.
- buf - Buffer for the object to be encoded into.
- nalloc - The size of the allocated buffer.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> nalloc - The size of the buffer needed.
- hdferr - Returns 0 if successful and -1 if fails.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 9, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5tencode_f<span class="sign">(</span>obj_id<span class="sign">,</span> buf<span class="sign">,</span> nalloc<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> obj_id <span class="sign">!</span> Identifier of the object to be encoded<span class="sign">.</span>
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> buf <span class="sign">!</span> Buffer <span class="keyword">for</span> the object to be encoded into<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>INOUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> nalloc <span class="sign">!</span> The size of the allocated buffer<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tenum5fcreate5ff"></a>
-<a name="robo416"></a><h2>h5tenum_create_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tenum_create_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new enumeration datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> parent_id - datatype identifier for base datatype
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> new_type_id - datatype identifier for the enumeration datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tenum_create_f</strong><span class="sign">(</span>parent_id<span class="sign">,</span> new_type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> parent_id <span class="sign">!</span> Datatype identifier <span class="keyword">for</span>
- <span class="sign">!</span> the base datatype
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> new_type_id
- <span class="sign">!</span>datatype identifier <span class="keyword">for</span> the
- <span class="sign">!</span> new enumeration datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tenum5fnameof5ff"></a>
-<a name="robo417"></a><h2>h5tenum_nameof_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tenum_nameof_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the symbol name corresponding to a specified
- member of an enumeration datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- value - value of the enumeration datatype
- namelen - name buffer size
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> name - buffer to hold symbol name
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-
- NOTE
- According to the standard: Because an INTENT(OUT) variable is considered undefined
- on entry to the procedure, any default initialization specified for its type will
- be applied. So we need to blank out the "name" to be portable and eliminate any
- characters the "name' may contain upon entry, depending on compiler implementation.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tenum_nameof_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> value<span class="sign">,</span> namelen<span class="sign">,</span> name<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span>Name of the enumeration datatype<span class="sign">.</span>
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> namelen <span class="sign">!</span>length of the name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span>value of the enumeration datatype<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tenum5fvaluof5ff"></a>
-<a name="robo418"></a><h2>h5tenum_valuof_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tenum_valuof_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the value corresponding to a specified
- member of an enumeration datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- name - symbol name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of the enumeration datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE h5tenum_valueof_f<span class="sign">(</span>type_id<span class="sign">,</span> name<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span>Name of the enumeration datatype<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span>value of the enumeration datatype<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tequal5ff"></a>
-<a name="robo419"></a><h2>h5tequal_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tequal_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether two datatype identifiers refer
- to the same datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type1_id - datatype identifier
- type2_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> flag - TRUE/FALSE flag to indicate
- if two datatypes are equal
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tequal_f</strong><span class="sign">(</span>type1_id<span class="sign">,</span> type2_id<span class="sign">,</span> flag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type1_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type2_id <span class="sign">!</span> Datatype identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag <span class="sign">!</span> TRUE<span class="sign">/</span>FALSE flag to indicate <span class="keyword">if</span> two
- <span class="sign">!</span> datatypes are equal
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5farray5fdims5ff"></a>
-<a name="robo422"></a><h2>h5tget_array_dims_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_array_dims_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns sizes of array dimensions.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - array datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dims - buffer to store array datatype dimensions
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_array_dims_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> dims<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Array datatype identifier
- INTEGER<span class="sign">(</span>HSIZE_T<span class="sign">)</span><span class="sign">,</span>DIMENSION<span class="comment">(*), INTENT(OUT) :: dims !buffer to store array datatype
- ! dimensions
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5farray5fndims5ff"></a>
-<a name="robo423"></a><h2>h5tget_array_ndims_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_array_ndims_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the rank of an array datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - array datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ndims - number of array dimensions
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_array_ndims_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> ndims<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Array datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ndims <span class="sign">!</span> number of array dimensions
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fclass5ff"></a>
-<a name="robo424"></a><h2>h5tget_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the datatype class identifier.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> class - class, possible values are:
- H5T_NO_CLASS_F (-1)
- H5T_INTEGER_F (0)
- H5T_FLOAT_F (1)
- H5T_TIME_F (2)
- H5T_STRING_F (3)
- H5T_BITFIELD_F (4)
- H5T_OPAQUE_F (5)
- H5T_COMPOUND_F (6)
- H5T_REFERENCE_F (7)
- H5T_ENUM_F (8)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_class_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> class<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class
- <span class="sign">!</span> Datatype class<span class="sign">,</span> possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5T_NO_CLASS_F <span class="sign">(</span><span class="sign">-</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5T_INTEGER_F <span class="sign">(</span>0<span class="sign">)</span>
- <span class="sign">!</span> H5T_FLOAT_F <span class="sign">(</span>1<span class="sign">)</span>
- <span class="sign">!</span> H5T_TIME_F <span class="sign">(</span>2<span class="sign">)</span>
- <span class="sign">!</span> H5T_STRING_F <span class="sign">(</span>3<span class="sign">)</span>
- <span class="sign">!</span> H5T_BITFIELD_F <span class="sign">(</span>4<span class="sign">)</span>
- <span class="sign">!</span> H5T_OPAQUE_F <span class="sign">(</span>5<span class="sign">)</span>
- <span class="sign">!</span> H5T_COMPOUND_F <span class="sign">(</span>6<span class="sign">)</span>
- <span class="sign">!</span> H5T_REFERENCE_F <span class="sign">(</span>7<span class="sign">)</span>
- <span class="sign">!</span> H5T_ENUM_F <span class="sign">(</span>8<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fcreate5fplist5ff"></a>
-<a name="robo425"></a><h2>h5tget_create_plist_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_create_plist_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns a copy of a datatype creation property list.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dtype_id - Datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> dtpl_id - Datatype property list identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- April 9, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_create_plist_f</strong><span class="sign">(</span>dtype_id<span class="sign">,</span> dtpl_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dtype_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dtpl_id <span class="sign">!</span> Datatype property list identifier<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fcset5ff"></a>
-<a name="robo426"></a><h2>h5tget_cset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_cset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the character set type of a string datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - Datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> cset - Character set type of a string datatype
- Possible values are:
- H5T_CSET_ASCII_F = 0
- H5T_CSET_UTF8_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_cset_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> cset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span> character set type of a string datatype
- <span class="sign">!</span> Possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5T_CSET_ASCII_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T_CSET_UTF8_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5febias5ff"></a>
-<a name="robo427"></a><h2>h5tget_ebias_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_ebias_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the exponent bias of a floating-point type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> ebias - datatype exponent bias
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_ebias_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> ebias<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ebias <span class="sign">!</span> Datatype exponent bias of a floating<span class="sign">-</span>point type
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5ffields5ff"></a>
-<a name="robo428"></a><h2>h5tget_fields_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_fields_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves floating point datatype bit field information.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> spos - sign bit-position
- epos - exponent bit-position
- esize - size of exponent in bits
- mpos - mantissa position
- msize - size of mantissa in bits
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_fields_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> spos<span class="sign">,</span> epos<span class="sign">,</span> esize<span class="sign">,</span> mpos<span class="sign">,</span> msize<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> spos <span class="sign">!</span> sign bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> epos <span class="sign">!</span> exponent bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> esize <span class="sign">!</span> size of exponent in bits
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> mpos <span class="sign">!</span> mantissa bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> msize <span class="sign">!</span> size of mantissa in bits
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5finpad5ff"></a>
-<a name="robo429"></a><h2>h5tget_inpad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_inpad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the internal padding type for unused bits
- in floating-point datatypes.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> padtype - padding type for unused bits
- Possible values of padding type are:
- H5T_PAD_ZERO_F = 0
- H5T_PAD_ONE_F = 1
- H5T_PAD_BACKGROUND_F = 2
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_inpad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> padtype<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> padtype <span class="sign">!</span> padding type <span class="keyword">for</span> unused bits
- <span class="sign">!</span> in floating<span class="sign">-</span>point datatypes<span class="sign">.</span>
- <span class="sign">!</span> Possible values of padding type are<span class="sign">:</span>
- <span class="sign">!</span> H5T__PAD_ZERO_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T__PAD_ONE_F <span class="sign">=</span> 1
- <span class="sign">!</span> H5T__PAD_BACKGROUND_F <span class="sign">=</span> 2
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5fclass5ff"></a>
-<a name="robo430"></a><h2>h5tget_member_class_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_class_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns datatype class of compound datatype member.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datartpe identifier
- member_no - index of compound datatype member
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> class - class type for compound dadtype member
- Valid classes:
- H5T_NO_CLASS_F (error)
- H5T_INTEGER_F
- H5T_FLOAT_F
- H5T_TIME_F
- H5T_STRING_F
- H5T_BITFIELD_F
- H5T_OPAQUE_F
- H5T_COMPOUND_F
- H5T_REFERENCE_F
- H5T_ENUM_F
- H5T_VLEN_F
- H5T_ARRAY_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- April 6, 2005
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_class_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> member_no<span class="sign">,</span> class<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> member_no <span class="sign">!</span> Member number
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> class <span class="sign">!</span> Member class
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5findex5ff"></a>
-<a name="robo431"></a><h2>h5tget_member_index_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_index_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the index of a compound or enumeration datatype member.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- name - name of the field or member whose index to
- to be retrieved from the datatype.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> index - 0-based index of the filed or member (0 to N-1)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 26, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_index_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> name<span class="sign">,</span> index<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Field or member name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index <span class="sign">!</span> Field or member index
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5fname5ff"></a>
-<a name="robo432"></a><h2>h5tget_member_name_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_name_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the name of a field of a compound datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- index - filed index (0-based)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> member_name - buffer to hold member's name
- namelen - name length
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_name_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> index<span class="sign">,</span> member_name<span class="sign">,</span> namelen<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> index <span class="sign">!</span>Field index <span class="sign">(</span>0<span class="sign">-</span>based<span class="sign">)</span> of the field name to retrieve
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> member_name <span class="sign">!</span>name of a field of
- <span class="sign">!</span>a compound datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> namelen <span class="sign">!</span> Length of the name
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5foffset5ff"></a>
-<a name="robo433"></a><h2>h5tget_member_offset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_offset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the offset of a field of a compound datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- member_no - number of the field
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> offset - byte offset of the requested field
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_offset_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> member_no<span class="sign">,</span> offset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> member_no <span class="sign">!</span>Number of the field
- <span class="sign">!</span>whose offset is requested
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span>byte offset of the beginning of the field
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5ftype5ff"></a>
-<a name="robo434"></a><h2>h5tget_member_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the datatype of the specified member.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - compound datatype identifier
- field_idx - field index (0-based)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> datatype - idnetifier of the member's datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_type_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> field_idx<span class="sign">,</span> datatype<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> field_idx <span class="sign">!</span>Field index <span class="sign">(</span>0<span class="sign">-</span>based<span class="sign">)</span> of the field type to retrieve
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> datatype <span class="sign">!</span>identifier of a copy of
- <span class="sign">!</span>the datatype of the field
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fmember5fvalue5ff"></a>
-<a name="robo435"></a><h2>h5tget_member_value_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_member_value_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the value of an enumeration datatype member.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- member_no - number of the enumeration datatype member
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> value - value of the enumeration datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_member_value_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> member_no<span class="sign">,</span> value<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> member_no <span class="sign">!</span>Number of the enumeration datatype member
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> value <span class="sign">!</span>value of the enumeration datatype<span class="sign">.</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fnative5ftype5ff"></a>
-<a name="robo436"></a><h2>h5tget_native_type_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_native_type_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the native datatype of a specified datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> dtype_id - Datatype identifier for the dataset datatype.
-
- direction - Direction of search:
- H5T_DIR_DEFAULT = 0, /*default direction is inscendent */
- H5T_DIR_ASCEND = 1, /*in inscendent order */
- H5T_DIR_DESCEND = 2 /*in descendent order */
- * NOTE: In C it is defined as a structure: H5T_direction_t
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> native_dtype_id - The native datatype identifier for the specified dataset datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- June 18, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_native_type_f</strong><span class="sign">(</span>dtype_id<span class="sign">,</span> direction<span class="sign">,</span> native_dtype_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> dtype_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> direction <span class="sign">!</span> Direction of search<span class="sign">:</span>
- <span class="sign">!</span> H5T_DIR_ASCEND_F <span class="sign">=</span> 1 in inscendent order
- <span class="sign">!</span> H5T_DIR_DESCEND_F <span class="sign">=</span> 2 in descendent order
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> native_dtype_id <span class="sign">!</span> The native datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code<span class="sign">:</span>
- <span class="sign">!</span> 0 on success and <span class="sign">-</span>1 on failure
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fnmembers5ff"></a>
-<a name="robo437"></a><h2>h5tget_nmembers_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_nmembers_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the number of fields in a compound datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> num_members - number of members
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_nmembers_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> num_members<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> num_members <span class="sign">!</span>number of fields in a compound datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fnorm5ff"></a>
-<a name="robo438"></a><h2>h5tget_norm_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_norm_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves mantissa normalization of a floating-point
- datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> norm - normalization types, valid values are:
- H5T_NORM_IMPLIED_F(0)
- H5T_NORM_MSBSET_F(1)
- H5T_NORM_NONE_F(2)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_norm_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> norm<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> norm <span class="sign">!</span>mantissa normalization of a floating<span class="sign">-</span>point datatype
- <span class="sign">!</span>Valid normalization types are<span class="sign">:</span>
- <span class="sign">!</span>H5T_NORM_IMPLIED_F<span class="sign">(</span>0<span class="sign">)</span><span class="sign">,</span>MSB of mantissa is not
- <span class="sign">!</span>stored<span class="sign">,</span> always 1<span class="sign">,</span> H5T_NORM_MSBSET_F<span class="sign">(</span>1<span class="sign">)</span><span class="sign">,</span> MSB of
- <span class="sign">!</span>mantissa is always 1<span class="sign">,</span> H5T_NORM_NONE_F<span class="sign">(</span>2<span class="sign">)</span>
- <span class="sign">!</span>Mantissa is not normalize
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5foffset5ff"></a>
-<a name="robo439"></a><h2>h5tget_offset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_offset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the bit offset of the first significant bit.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> offset - offset value
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_offset_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> offset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span> Datatype bit offset of the
- <span class="sign">!</span> first significant bit
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5forder5ff"></a>
-<a name="robo440"></a><h2>h5tget_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the byte order of an atomic datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> order - byte order for the datatype, possible
- values are:
- H5T_ORDER_LE_F
- H5T_ORDER_BE_F
- H5T_ORDER_VAX_F (not implemented yet)
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_order_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> order<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order
- <span class="sign">!</span> Datatype byte order<span class="sign">,</span> possible values are<span class="sign">:</span>
- <span class="sign">!</span> H5T_ORDER_LE_F
- <span class="sign">!</span> H5T_ORDER_BE_F
- <span class="sign">!</span> H5T_ORDER_VAX_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fpad5ff"></a>
-<a name="robo441"></a><h2>h5tget_pad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_pad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the padding type of the least and
- most -significant bit padding.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> lsbpad - least-significant bit padding type
- msbpad - most-significant bit padding type
- Possible values of padding type are:
- H5T_PAD_ERROR_F = -1
- H5T_PAD_ZERO_F = 0
- H5T_PAD_ONE_F = 1
- H5T_PAD_BACKGROUND_F = 2
- H5T_PAD_NPAD_F = 3
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_pad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> lsbpad<span class="sign">,</span> msbpad<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lsbpad <span class="sign">!</span> padding type of the
- <span class="sign">!</span> least significant bit
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> msbpad <span class="sign">!</span> padding type of the
- <span class="sign">!</span> most significant bit
- <span class="sign">!</span> Possible values of padding type are<span class="sign">:</span>
- <span class="sign">!</span> H5T__PAD_ZERO_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T__PAD_ONE_F <span class="sign">=</span> 1
- <span class="sign">!</span> H5T__PAD_BACKGROUND_F <span class="sign">=</span> 2
- <span class="sign">!</span> H5T_PAD_ERROR_F <span class="sign">=</span> <span class="sign">-</span>1
- <span class="sign">!</span> H5T_PAD_NPAD_F <span class="sign">=</span> 3
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fprecision5ff"></a>
-<a name="robo442"></a><h2>h5tget_precision_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_precision_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the precision of an atomic datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> precision - precision of the datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_precision_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> precision<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> precision <span class="sign">!</span> Datatype precision
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fsign5ff"></a>
-<a name="robo443"></a><h2>h5tget_sign_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_sign_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the sign type for an integer type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> sign - sign type
- Possible values are:
- - Unsigned integer type
- H5T_SGN_NONE_F = 0
- - Two's complement signed integer type
- H5T_SGN_2_F = 1
- - error value: H5T_SGN_ERROR_F=-1
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_sign_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> sign<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sign <span class="sign">!</span> sign type <span class="keyword">for</span> an integer type
- <span class="sign">!</span>possible values are<span class="sign">:</span>
- <span class="sign">!</span>Unsigned integer type H5T_SGN_NONE_F <span class="sign">=</span> 0
- <span class="sign">!</span>Two<span class="squote">'s complement signed integer type
- !H5T_SGN_2_F = 1
- !or error value: H5T_SGN_ERROR_F=-1
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fsize5ff"></a>
-<a name="robo444"></a><h2>h5tget_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the size of a datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> size - datatype size
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_size_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Datatype size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fstrpad5ff"></a>
-<a name="robo445"></a><h2>h5tget_strpad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_strpad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Retrieves the storage mechanism for a string datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> strpad - storage method for a string datatype
- Possible values are:
- H5T_STR_NULLTERM_F,
- H5T_STR_NULLPAD_F,
- H5T_STR_SPACEPAD_F
- H5T_STR_ERROR_F
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_strpad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> strpad<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> strpad
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5fsuper5ff"></a>
-<a name="robo446"></a><h2>h5tget_super_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_super_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the base datatype from which a datatype is derived.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> base_type_id - identifier of the base type
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_super_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> base_type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> base_type_id <span class="sign">!</span> identifier of the datatype
- <span class="sign">!</span> from which datatype <span class="sign">(</span>type_id<span class="sign">)</span> was derived
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tget5ftag5ff"></a>
-<a name="robo447"></a><h2>h5tget_tag_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tget_tag_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Gets the tag associated with an opaque datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - identifier for opaque datatype
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> tag - unique ASCII string associated with opaque
- datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tget_tag_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> tag<span class="sign">,</span>taglen<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tag <span class="sign">!</span> Unique ASCII string with which
- <span class="sign">!</span> the opaque datatype is to be tagged
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> taglen <span class="sign">!</span> Length of tag
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tag_size <span class="sign">!</span> Declared character length of tab
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tinsert5ff"></a>
-<a name="robo448"></a><h2>h5tinsert_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tinsert_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Adds a new member to a compound datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - compound dattype identifier
- name - name of the field to insert
- offset - start of the member in an instance of
- the compound datatype
- field_id - datatype identifier of the field to insert
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tinsert_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> name<span class="sign">,</span> offset<span class="sign">,</span> field_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span>Name of the field to insert
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span>start of the member in an instance of
- <span class="sign">!</span>the compound datatype
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> field_id <span class="sign">!</span>datatype identifier of the new member
-
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tis5fvariable5fstr5ff"></a>
-<a name="robo449"></a><h2>h5tis_variable_str_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tis_variable_str_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Determines whether a dattype is a variable string.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datartpe identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> status - flag to indicate if datatype
- is a variable string
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tis_variable_str_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> status<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> status <span class="sign">!</span> Flag<span class="sign">,</span> idicates <span class="keyword">if</span> datatype
- <span class="sign">!</span> is a variable string or not <span class="sign">(</span> TRUE or
- <span class="sign">!</span> FALSE<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5topen5ff"></a>
-<a name="robo450"></a><h2>h5topen_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5topen_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Opens named datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> loc_id - location identifier
- name - a datatype name
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> type_id - datatype identifier
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">OPTIONAL PARAMETERS</p>
-<pre> tapl_id - datatype access property list identifier.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-
- Added optional parameter 'tapl_id' for compatability
- with H5Topen2. April 9, 2009.
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5topen_f</strong><span class="sign">(</span>loc_id<span class="sign">,</span> name<span class="sign">,</span> type_id<span class="sign">,</span> hdferr<span class="sign">,</span> tapl_id<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> loc_id <span class="sign">!</span> File or group identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> name <span class="sign">!</span> Datatype name within file or group
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> OPTIONAL<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tapl_id <span class="sign">!</span> datatype access property list identifier
-</pre>
-
-<hr />
-<a name="H5T2fh5tpack5ff"></a>
-<a name="robo451"></a><h2>h5tpack_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tpack_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Recursively removes padding from within a compound datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - compound datatype identifier
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tpack_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fcset5ff"></a>
-<a name="robo452"></a><h2>h5tset_cset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_cset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets character set to be used.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- cset - character set type of a string datatype
- Possible values are:
- H5T_CSET_ASCII_F = 0
- H5T_CSET_UTF8_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_cset_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> cset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> cset <span class="sign">!</span>character set type of a string datatype
- <span class="sign">!</span> Possible values of padding type are<span class="sign">:</span>
- <span class="sign">!</span> H5T_CSET_ASCII_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T_CSET_UTF8_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5febias5ff"></a>
-<a name="robo453"></a><h2>h5tset_ebias_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_ebias_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the exponent bias of a floating-point type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- ebias - datatype exponent bias
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_ebias_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> ebias<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> ebias <span class="sign">!</span>Datatype exponent bias of a floating<span class="sign">-</span>point type
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5ffields5ff"></a>
-<a name="robo454"></a><h2>h5tset_fields_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_fields_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets locations and sizes of floating point bit fields.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- spos - sign bit-position
- epos - exponent bit-position
- esize - size of exponent in bits
- mpos - mantissa position
- msize - size of mantissa in bits
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_fields_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> spos<span class="sign">,</span> epos<span class="sign">,</span> esize<span class="sign">,</span> mpos<span class="sign">,</span> msize<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> spos <span class="sign">!</span> sign bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> epos <span class="sign">!</span> exponent bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> esize <span class="sign">!</span> size of exponent in bits
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> mpos <span class="sign">!</span> mantissa bit<span class="sign">-</span>position
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> msize <span class="sign">!</span> size of mantissa in bits
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5finpad5ff"></a>
-<a name="robo455"></a><h2>h5tset_inpad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_inpad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Fills unused internal floating point bits.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- padtype - padding type for unused bits
- Possible values of padding type are:
- H5T_PAD_ZERO_F = 0
- H5T_PAD_ONE_F = 1
- H5T_PAD_BACKGROUND_F = 2
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_inpad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> padtype<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> padtype <span class="sign">!</span> padding type <span class="keyword">for</span> unused bits
- <span class="sign">!</span> in floating<span class="sign">-</span>point datatypes<span class="sign">.</span>
- <span class="sign">!</span> Possible values of padding type are<span class="sign">:</span>
- <span class="sign">!</span> H5T__PAD_ZERO_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T__PAD_ONE_F <span class="sign">=</span> 1
- <span class="sign">!</span> H5T__PAD_BACKGROUND_F <span class="sign">=</span> 2
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fnorm5ff"></a>
-<a name="robo456"></a><h2>h5tset_norm_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_norm_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the mantissa normalization of a floating-point datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- norm - normalization types, valid values are:
- H5T_NORM_IMPLIED_F(0)
- H5T_NORM_MSBSET_F(1)
- H5T_NORM_NONE_F(2)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_norm_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> norm<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> norm <span class="sign">!</span>mantissa normalization of a floating<span class="sign">-</span>point datatype
- <span class="sign">!</span>Valid normalization types are<span class="sign">:</span>
- <span class="sign">!</span>H5T_NORM_IMPLIED_F<span class="sign">(</span>0<span class="sign">)</span><span class="sign">,</span>MSB of mantissa is not
- <span class="sign">!</span>stored<span class="sign">,</span> always 1<span class="sign">,</span> H5T_NORM_MSBSET_F<span class="sign">(</span>1<span class="sign">)</span><span class="sign">,</span> MSB of
- <span class="sign">!</span>mantissa is always 1<span class="sign">,</span> H5T_NORM_NONE_F<span class="sign">(</span>2<span class="sign">)</span>
- <span class="sign">!</span>Mantissa is not normalize
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5foffset5ff"></a>
-<a name="robo457"></a><h2>h5tset_offset_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_offset_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the bit offset of the first significant bit.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- offset - offset value
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_offset_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> offset<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset <span class="sign">!</span> Datatype bit offset of the
- <span class="sign">!</span> first significant bit
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5forder5ff"></a>
-<a name="robo458"></a><h2>h5tset_order_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_order_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the byte ordering of an atomic datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- order - datatype byte order Possible values are:
- H5T_ORDER_LE_F
- H5T_ORDER_BE_F
- H5T_ORDER_VAX_F (not implemented yet)
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_order_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> order<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> order <span class="sign">!</span> Datatype byte order<span class="sign">,</span> possible values
- <span class="sign">!</span> are<span class="sign">:</span>
- <span class="sign">!</span> H5T_ORDER_LE_F
- <span class="sign">!</span> H5T_ORDER_BE_F
- <span class="sign">!</span> H5T_ORDER_VAX_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fpad5ff"></a>
-<a name="robo459"></a><h2>h5tset_pad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_pad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the least and most-significant bits padding types.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- lsbpad - least-significant bit padding type
- msbpad - most-significant bit padding type
- Possible values of padding type are:
- H5T_PAD_ERROR_F = -1
- H5T_PAD_ZERO_F = 0
- H5T_PAD_ONE_F = 1
- H5T_PAD_BACKGROUND_F = 2
- H5T_PAD_NPAD_F = 3
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_pad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> lsbpad<span class="sign">,</span> msbpad<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> lsbpad <span class="sign">!</span> padding type of the
- <span class="sign">!</span> least significant bit
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> msbpad <span class="sign">!</span> padding type of the
- <span class="sign">!</span> most significant bit
- <span class="sign">!</span> Possible values of padding type are<span class="sign">:</span>
- <span class="sign">!</span> H5T_PAD_ZERO_F <span class="sign">=</span> 0
- <span class="sign">!</span> H5T_PAD_ONE_F <span class="sign">=</span> 1
- <span class="sign">!</span> H5T_PAD_BACKGROUND_F <span class="sign">=</span> 2
- <span class="sign">!</span> H5T_PAD_ERROR_F <span class="sign">=</span> <span class="sign">-</span>1
- <span class="sign">!</span> H5T_PAD_NPAD_F <span class="sign">=</span> 3
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fprecision5ff"></a>
-<a name="robo460"></a><h2>h5tset_precision_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_precision_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the precision of an atomic datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- precision - datatype precision
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_precision_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> precision<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> precision <span class="sign">!</span> Datatype precision
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fsign5ff"></a>
-<a name="robo461"></a><h2>h5tset_sign_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_sign_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the sign proprety for an integer type.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- sign - sign type
- Possible values are:
- - Unsigned integer type
- H5T_SGN_NONE_F = 0
- - Two's complement signed integer type
- H5T_SGN_2_F = 1
- - error value: H5T_SGN_ERROR_F=-1
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_sign_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> sign<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> sign <span class="sign">!</span>sign type <span class="keyword">for</span> an integer type
- <span class="sign">!</span>possible values are<span class="sign">:</span>
- <span class="sign">!</span>Unsigned integer type H5T_SGN_NONE_F <span class="sign">=</span> 0
- <span class="sign">!</span>Two<span class="squote">'s complement signed integer type
- !H5T_SGN_2_F = 1
- !or error value: H5T_SGN_ERROR_F=-1
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fsize5ff"></a>
-<a name="robo462"></a><h2>h5tset_size_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_size_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Sets the total size for an atomic datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- size - size of the datatype
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_size_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> size<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> size <span class="sign">!</span> Datatype size
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5fstrpad5ff"></a>
-<a name="robo463"></a><h2>h5tset_strpad_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_strpad_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Defines the storage mechanism for character strings.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - datatype identifier
- strpad - storage method for a string datatype
- Possible values are:
- H5T_STR_NULLTERM_F,
- H5T_STR_NULLPAD_F,
- H5T_STR_SPACEPAD_F
- H5T_STR_ERROR_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_strpad_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> strpad<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> strpad <span class="sign">!</span> string padding method <span class="keyword">for</span> a string datatype
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tset5ftag5ff"></a>
-<a name="robo464"></a><h2>h5tset_tag_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tset_tag_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Tags an opaque datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - identifier for opaque datatype
- tag - unique ASCII string with which the opaque
- datatype is to be tagged.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). March 7, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tset_tag_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> tag<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- CHARACTER<span class="sign">(</span>LEN<span class="sign">=</span><span class="sign">*</span><span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> tag <span class="sign">!</span>Unique ASCII string with which
- <span class="sign">!</span>the opaque datatype is to be tagged
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5T2fh5tvlen5fcreate5ff"></a>
-<a name="robo465"></a><h2>h5tvlen_create_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo70">H5T</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5tvlen_create_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Creates a new variable-length datatype.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> type_id - identifier iof base datatype
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> vltype_id - identifier for VL datatype
- hdferr - Returns 0 if successful and -1 if fails
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- Wednesday, October 23, 2002
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Only basic Fortran base datatypes are supported
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5tvlen_create_f</strong><span class="sign">(</span>type_id<span class="sign">,</span> vltype_id<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> type_id <span class="sign">!</span> Datatype identifier
- INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span><span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> vltype_id <span class="sign">!</span> VL datatype identifier
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Tff.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Zf_c.html b/fortran/doc/DevelGuide/src/H5Zf_c.html
deleted file mode 100644
index 2973548..0000000
--- a/fortran/doc/DevelGuide/src/H5Zf_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Zf.c</title>
-<!-- Source: ./src/H5Zf.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5Zf2fH5Zf"></a>
-<a name="robo75"></a><h2>H5Zf</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains C stubs for <a href="./H5Zff_f90.html#robo74">H5Z</a> Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Zf.c on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5Zff_f90.html b/fortran/doc/DevelGuide/src/H5Zff_f90.html
deleted file mode 100644
index 8ccd0ae..0000000
--- a/fortran/doc/DevelGuide/src/H5Zff_f90.html
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5Zff.f90</title>
-<!-- Source: ./src/H5Zff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5Z"></a>
-<a name="robo74"></a><h2>H5Z</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5Z</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains Fortran interfaces for <strong>H5Z</strong> functions. It includes
- all the functions that are independent on whether the Fortran 2003 functions
- are enabled or disabled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new <strong>H5Z</strong> function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5Z2fh5zfilter5favail5ff"></a>
-<a name="robo466"></a><h2>h5zfilter_avail_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo74">H5Z</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5zfilter_avail_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries if filter is available
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> filter - filter
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> status - status; .TRUE. if filter is available,
- .FALSE. otherwise
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5zfilter_avail_f</strong><span class="sign">(</span>filter<span class="sign">,</span> status<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter <span class="sign">!</span> Filter<span class="sign">;</span> may be one of the following<span class="sign">:</span>
- <span class="sign">!</span> H5Z_FILTER_DEFLATE_F
- <span class="sign">!</span> H5Z_FILTER_SZIP_F
- <span class="sign">!</span> H5Z_FILTER_NBIT_F
- <span class="sign">!</span> H5Z_FILTER_SCALEOFFSET_F
- <span class="sign">!</span> H5Z_FILTER_SHUFFLE_F
- <span class="sign">!</span> H5Z_FILTER_FLETCHER32_F
- LOGICAL<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> status <span class="sign">!</span> Flag<span class="sign">,</span> idicates <span class="keyword">if</span> filter
- <span class="sign">!</span> is availble not <span class="sign">(</span> TRUE or
- <span class="sign">!</span> FALSE<span class="sign">)</span>
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5Z2fh5zget5ffilter5finfo5ff"></a>
-<a name="robo467"></a><h2>h5zget_filter_info_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo74">H5Z</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5zget_filter_info_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Queries if filter has its encoder and/or decoder
- available
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> filter - filter
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> config_flags - Bit vector possibly containing the
- following values:
- H5Z_FILTER_ENCODE_ENABLED_F
- H5Z_FILTER_DECODE_ENABLED_F
- hdferr: - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Nat Furrer and James Laird
- June 16, 2004
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5zget_filter_info_f</strong><span class="sign">(</span>filter<span class="sign">,</span> config_flags<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter <span class="sign">!</span> Filter<span class="sign">;</span> may be one of the following<span class="sign">:</span>
- <span class="sign">!</span> H5Z_FILTER_DEFLATE_F
- <span class="sign">!</span> H5Z_FILTER_SZIP_F
- <span class="sign">!</span> H5Z_FILTER_NBIT_F
- <span class="sign">!</span> H5Z_FILTER_SCALEOFFSET_F
- <span class="sign">!</span> H5Z_FILTER_SHUFFLE_F
- <span class="sign">!</span> H5Z_FILTER_FLETCHER32_F
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> config_flags<span class="sign">!</span> Flag<span class="sign">,</span> indicates <span class="keyword">if</span> filter
- <span class="sign">!</span> has its encoder and<span class="sign">/</span>or decoder
- <span class="sign">!</span> available
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-<hr />
-<a name="H5Z2fh5zunregister5ff"></a>
-<a name="robo468"></a><h2>h5zunregister_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo74">H5Z</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5zunregister_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Unregisters specified filetr
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> filter - filter; may have one of the following values:
- H5Z_FILTER_DEFLATE_F
- H5Z_FILTER_SZIP_F
- H5Z_FILTER_NBIT_F
- H5Z_FILTER_SCALEOFFSET_F
- H5Z_FILTER_SHUFFLE_F
- H5Z_FILTER_FLETCHER32_F
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> hdferr - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- March 12, 2003
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5zunregister_f</strong><span class="sign">(</span>filter<span class="sign">,</span> hdferr<span class="sign">)</span>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> filter
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> hdferr <span class="sign">!</span> Error code
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5Zff.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceExclude_f90.html b/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceExclude_f90.html
deleted file mode 100644
index 4e51e7f..0000000
--- a/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceExclude_f90.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_DBLE_InterfaceExclude.f90</title>
-<!-- Source: ./src/H5_DBLE_InterfaceExclude.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="fortran2fsrc2fH55fDBLE5fInterfaceExclude2ef90"></a>
-<a name="robo78"></a><h2>src/H5_DBLE_InterfaceExclude.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5_DBLE_INTERFACE
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> This module is used for when the default REAL is of type DOUBLE PRECISION.
- We do not include the double precision interfaces if the defaut REAL is
- DOUBLE PRECISION since this would lead to a non-unique conflict with the
- generic interfaces declared as REAL and those declared as DOUBLE PRECISION.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Empty module.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_DBLE_InterfaceExclude.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceInclude_f90.html b/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceInclude_f90.html
deleted file mode 100644
index 5a71d52..0000000
--- a/fortran/doc/DevelGuide/src/H5_DBLE_InterfaceInclude_f90.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_DBLE_InterfaceInclude.f90</title>
-<!-- Source: ./src/H5_DBLE_InterfaceInclude.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="fortran2fsrc2fH55fDBLE5fInterfaceInclude2ef90"></a>
-<a name="robo79"></a><h2>src/H5_DBLE_InterfaceInclude.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> H5_DBLE_INTERFACE
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> This module is used for when the default REAL is not of the type DOUBLE PRECISION.
- We only do not include the double precision interfaces if the defaut REAL is
- DOUBLE PRECISION since this would lead to a non-unique conflict with the
- generic interfaces declared as REAL. Otherwise it is okay to include the interfaces.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This module contains all the DOUBLE PRECISION interfaces and corresponding subroutines
- from the HDF function catagory <a href="./H5Aff_f90.html#robo27">H5A</a>, <a href="./H5Dff_f90.html#robo31">H5D</a> and H5P.
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_DBLE_InterfaceInclude.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_f_c.html b/fortran/doc/DevelGuide/src/H5_f_c.html
deleted file mode 100644
index 2bdbce1..0000000
--- a/fortran/doc/DevelGuide/src/H5_f_c.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_f.c</title>
-<!-- Source: ./src/H5_f.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_programs.html#top">Programs</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2fsrc2fH55ff2ec"></a>
-<a name="robo0"></a><h2>fortran/src/H5_f.c</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">FUNCTION</p>
-<pre> This file contains C stubs for H5 Fortran APIs
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_f.c on Wed Oct 22 2008 15:34:43
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_ff_F03_f90.html b/fortran/doc/DevelGuide/src/H5_ff_F03_f90.html
deleted file mode 100644
index 17f07c1..0000000
--- a/fortran/doc/DevelGuide/src/H5_ff_F03_f90.html
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_ff_F03.f90</title>
-<!-- Source: ./src/H5_ff_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5LIB5fPROVISIONAL"></a>
-<a name="robo54"></a><h2>H5LIB_PROVISIONAL</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5LIB_PROVISIONAL</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file contains helper functions for Fortran 2003 features and is
- only compiled when Fortran 2003 features are enabled, otherwise
- the file <a href="./H5_ff_F90_f90.html#robo_top_of_doc">H5_ff_F90.f90</a> is compiled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5LIB5fPROVISIONAL2fh5offsetof"></a>
-<a name="robo194"></a><h2>h5offsetof</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo54">H5LIB_PROVISIONAL</a> ] [ <a href="../robo_functions.html#robo_top_of_doc">Functions</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5offsetof</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Computes the offset in memory
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> start - starting pointer address
- end - ending pointer address
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> offset - offset
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- Augest 25, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> FUNCTION <strong>h5offsetof</strong><span class="sign">(</span>start<span class="sign">,</span>end<span class="sign">)</span> RESULT<span class="sign">(</span>offset<span class="sign">)</span>
- USE<span class="sign">,</span> INTRINSIC <span class="sign">:</span><span class="sign">:</span> ISO_C_BINDING
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">(</span>SIZE_T<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> offset
- TYPE<span class="sign">(</span>C_PTR<span class="sign">)</span><span class="sign">,</span> VALUE<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> start<span class="sign">,</span> end
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_ff_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_ff_F90_f90.html b/fortran/doc/DevelGuide/src/H5_ff_F90_f90.html
deleted file mode 100644
index c310ef2..0000000
--- a/fortran/doc/DevelGuide/src/H5_ff_F90_f90.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_ff_F90.f90</title>
-<!-- Source: ./src/H5_ff_F90.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5LIB5fPROVISIONAL2028F9029"></a>
-<a name="robo55"></a><h2>H5LIB_PROVISIONAL (F90)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <a href="./H5_ff_F03_f90.html#robo54">H5LIB_PROVISIONAL</a>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5_ff_F90.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This file is a dummy module for when Fortran 2003 features are not enabled.
- It is compiled in place of <a href="./H5_ff_F03_f90.html#robo_top_of_doc">H5_ff_F03.f90</a> and is empty.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_ff_F90.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5_ff_f90.html b/fortran/doc/DevelGuide/src/H5_ff_f90.html
deleted file mode 100644
index 021c7c5..0000000
--- a/fortran/doc/DevelGuide/src/H5_ff_f90.html
+++ /dev/null
@@ -1,269 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5_ff.f90</title>
-<!-- Source: ./src/H5_ff.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5LIB"></a>
-<a name="robo53"></a><h2>H5LIB</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5LIB</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This module provides fortran specific helper functions for the HDF library
-</pre>
-<p class="item_name">USES</p>
-<pre> <a href="./H5_ff_F03_f90.html#robo54">H5LIB_PROVISIONAL</a> - This module provides helper functions for Fortran 2003
- only features. If Fortran 2003 functions are enabled then
- <a href="./H5_ff_F03_f90.html#robo_top_of_doc">H5_ff_F03.f90</a> is compiled, else <a href="./H5_ff_F90_f90.html#robo_top_of_doc">H5_ff_F90.f90</a>,
- which is just a place holder blank module, is compiled.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> *** IMPORTANT ***
- If you add a new function you must add the function name to the
- Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
- This is needed for Windows based operating systems.
-</pre>
-
-<hr />
-<a name="H5LIB2fh5check5fversion5ff"></a>
-<a name="robo111"></a><h2>h5check_version_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5check_version_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Verifies that library versions are consistent.
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> majnum - major version of the library
- minum - minor version of the library
- relnum - release version of the library
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> error - error code
- Success: 0
- Failure: application aborts
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 24, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5check_version_f</strong><span class="sign">(</span>majnum<span class="sign">,</span> minnum<span class="sign">,</span> relnum<span class="sign">,</span> error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> majnum<span class="sign">,</span> minnum<span class="sign">,</span> relnum
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error
-</pre>
-
-<hr />
-<a name="H5LIB2fh5close5ff"></a>
-<a name="robo112"></a><h2>h5close_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5close_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Closes the <a href="./HDF5_f90.html#robo76">HDF5</a> library and Fortran90 interface.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> error - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5close_f</strong><span class="sign">(</span>error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error
-</pre>
-
-<hr />
-<a name="H5LIB2fh5dont5fatexit5ff"></a>
-<a name="robo122"></a><h2>h5dont_atexit_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5dont_atexit_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Instructs library not to install atexit cleanup routine.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> error - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 24, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5dont_atexit_f</strong><span class="sign">(</span>error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error
-</pre>
-
-<hr />
-<a name="H5LIB2fh5garbage5fcollect5ff"></a>
-<a name="robo150"></a><h2>h5garbage_collect_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5garbage_collect_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Garbage collects on all free-lists of all types.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> error - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 24, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5garbage_collect_f</strong><span class="sign">(</span>error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error
-</pre>
-
-<hr />
-<a name="H5LIB2fh5get5flibversion5ff"></a>
-<a name="robo154"></a><h2>h5get_libversion_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5get_libversion_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Returns the <a href="./HDF5_f90.html#robo76">HDF5</a> LIbrary release number
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> majnum - major version of the library
- minum - minor version of the library
- relnum - release version of the library
- error - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- September 24, 2002
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5get_libversion_f</strong><span class="sign">(</span>majnum<span class="sign">,</span> minnum<span class="sign">,</span> relnum<span class="sign">,</span> error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> majnum<span class="sign">,</span> minnum<span class="sign">,</span> relnum<span class="sign">,</span> error
-</pre>
-
-<hr />
-<a name="H5LIB2fh5kind5fto5ftype"></a>
-<a name="robo177"></a><h2>h5kind_to_type</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_functions.html#robo_top_of_doc">Functions</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5kind_to_type</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Converts the KIND to the correct HDF type
-</pre>
-<p class="item_name">INPUTS</p>
-<pre> kind - Fortran KIND parameter
- flag - whether KIND is of type INTEGER or REAL:
- H5_INTEGER_KIND - integer
- H5_REAL_KIND - real
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> h5_type - returns the type
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
- Augest 25, 2008
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> INTEGER<span class="sign">(</span>HID_T<span class="sign">)</span> FUNCTION <strong>h5kind_to_type</strong><span class="sign">(</span>kind<span class="sign">,</span> flag<span class="sign">)</span> RESULT<span class="sign">(</span>h5_type<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> kind
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>IN<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> flag
-</pre>
-
-<hr />
-<a name="H5LIB2fh5open5ff"></a>
-<a name="robo198"></a><h2>h5open_f</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="#robo53">H5LIB</a> ] [ <a href="../robo_subroutines.html#robo_top_of_doc">Subroutines</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <strong>h5open_f</strong>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> Initializes the <a href="./HDF5_f90.html#robo76">HDF5</a> library and Fortran90 interface.
-</pre>
-<p class="item_name">OUTPUTS</p>
-<pre> error - error code
- Success: 0
- Failure: -1
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
- August 12, 1999
-</pre>
-<p class="item_name">HISTORY</p>
-<pre> Explicit Fortran interfaces were added for
- called C functions (it is needed for Windows
- port). February 28, 2001
-</pre>
-<p class="item_name">SOURCE</p>
-<pre class="source"> SUBROUTINE <strong>h5open_f</strong><span class="sign">(</span>error<span class="sign">)</span>
- USE <a href="./H5f90global_f90.html#robo46">H5GLOBAL</a>
- IMPLICIT NONE
- INTEGER<span class="sign">,</span> INTENT<span class="sign">(</span>OUT<span class="sign">)</span> <span class="sign">:</span><span class="sign">:</span> error
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5_ff.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5f90global_f90.html b/fortran/doc/DevelGuide/src/H5f90global_f90.html
deleted file mode 100644
index 587b6d0..0000000
--- a/fortran/doc/DevelGuide/src/H5f90global_f90.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5f90global.f90</title>
-<!-- Source: ./src/H5f90global.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fH5GLOBAL"></a>
-<a name="robo46"></a><h2>H5GLOBAL</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>H5GLOBAL</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> src/fortran/<a href="#robo_top_of_doc">H5f90global.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This module is used to pass C stubs for H5 Fortran APIs. The C stubs are
- packed into arrays in H5_f.c and these arrays are then passed to Fortran.
- This module then uses EQUIVALENCE to assign elements of the arrays to
- Fortran equivalent C stubs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> The size of the C arrays in H5_f.c has to match the values of the variables
- declared as PARAMETER, hence if the size of an array in H5_f.c is changed
- then the PARAMETER of that corresponding array in Fortran must also be changed.
-</pre>
-<p class="item_name">USES</p>
-<pre> H5FORTRAN_TYPES - This module is generated at run time. See
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourmal
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5f90global.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5f90kit_c.html b/fortran/doc/DevelGuide/src/H5f90kit_c.html
deleted file mode 100644
index 1329a87..0000000
--- a/fortran/doc/DevelGuide/src/H5f90kit_c.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5f90kit.c</title>
-<!-- Source: ./src/H5f90kit.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="H5f90kit2fH5f90kit"></a>
-<a name="robo40"></a><h2>H5f90kit</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">PURPOSE</p>
-<pre> Routines from HDF4 to deal with C-FORTRAN issues:
-
- HD5f2cstring -- convert a Fortran string to a C string
- HD5packFstring -- convert a C string into a Fortran string
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5f90kit.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5match_types_c.html b/fortran/doc/DevelGuide/src/H5match_types_c.html
deleted file mode 100644
index 083319a..0000000
--- a/fortran/doc/DevelGuide/src/H5match_types_c.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5match_types.c</title>
-<!-- Source: ./src/H5match_types.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="Program2fH5match5ftypes"></a>
-<a name="robo192"></a><h2>H5match_types</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_procedures.html#robo_top_of_doc">Procedures</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> Executable: <strong>H5match_types</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5match_types.c</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> C Program to match C types to Fortran types.
- Creates the files H5f90i_gen.h for the C code and
- H5fortran_types.f90 for the Fortran code.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5match_types.c on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5test_kind_SIZEOF_f90.html b/fortran/doc/DevelGuide/src/H5test_kind_SIZEOF_f90.html
deleted file mode 100644
index 3494db0..0000000
--- a/fortran/doc/DevelGuide/src/H5test_kind_SIZEOF_f90.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5test_kind_SIZEOF.f90</title>
-<!-- Source: ./src/H5test_kind_SIZEOF.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="Program2fH5test5fkind5fSIZEOF"></a>
-<a name="robo421"></a><h2>H5test_kind_SIZEOF</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_procedures.html#robo_top_of_doc">Procedures</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> Executable: <a href="./H5test_kind_f90.html#robo420">H5test_kind</a>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5test_kind_SIZEOF.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This stand alone program is used at build time to generate the program
- H5fortran_detect.f90. It cycles through all the available KIND parameters for
- integers and reals. The appropriate program and subroutines are then generated
- depending on which of the KIND values are found.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This program is used in place of <a href="./H5test_kind_f90.html#robo_top_of_doc">H5test_kind.f90</a> when the Fortran intrinsic
- function SIZEOF is available. It generates code that makes use of SIZEOF in
- H5fortran_detect.f90 which is a portable solution.
-
- The availability of SIZEOF is checked at configure time and the TRUE/FALSE
- condition is set in the configure variable "FORTRAN_HAVE_SIZEOF".
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> M. Scot Breitenfeld
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5test_kind_SIZEOF.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/H5test_kind_f90.html b/fortran/doc/DevelGuide/src/H5test_kind_f90.html
deleted file mode 100644
index c08e488..0000000
--- a/fortran/doc/DevelGuide/src/H5test_kind_f90.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/H5test_kind.f90</title>
-<!-- Source: ./src/H5test_kind.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="Program2fH5test5fkind"></a>
-<a name="robo420"></a><h2>H5test_kind</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_procedures.html#robo_top_of_doc">Procedures</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> Executable: <strong>H5test_kind</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> fortran/src/<a href="#robo_top_of_doc">H5test_kind.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This stand alone program is used at build time to generate the program
- H5fortran_detect.f90. It cycles through all the available KIND parameters for
- integers and reals. The appropriate program and subroutines are then generated
- depending on which of the KIND values are found.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> This program is depreciated in favor of <a href="./H5test_kind_SIZEOF_f90.html#robo_top_of_doc">H5test_kind_SIZEOF.f90</a> and is only
- used when the Fortran intrinsic function SIZEOF is not available. It generates
- code that does not make use of SIZEOF in H5fortran_detect.f90 which is less
- portable in comparison to using SIZEOF.
-
- The availability of SIZEOF is checked at configure time and the TRUE/FALSE
- condition is set in the configure variable "FORTRAN_HAVE_SIZEOF".
-</pre>
-<p class="item_name">AUTHOR</p>
-<pre> Elena Pourma
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/H5test_kind.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/HDF5_f90.html b/fortran/doc/DevelGuide/src/HDF5_f90.html
deleted file mode 100644
index 1490c7c..0000000
--- a/fortran/doc/DevelGuide/src/HDF5_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/HDF5.f90</title>
-<!-- Source: ./src/HDF5.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fHDF5"></a>
-<a name="robo76"></a><h2>HDF5</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> MODULE <strong>HDF5</strong>
-</pre>
-<p class="item_name">FILE</p>
-<pre> src/fortran/src/<a href="#robo_top_of_doc">HDF5.f90</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This is the main module used for linking to the Fortran HDF library.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/HDF5.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/src/HDF5mpio_f90.html b/fortran/doc/DevelGuide/src/HDF5mpio_f90.html
deleted file mode 100644
index 9ef5f32..0000000
--- a/fortran/doc/DevelGuide/src/HDF5mpio_f90.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./src/HDF5mpio.f90</title>
-<!-- Source: ./src/HDF5mpio.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="ROBODoc2fHDF52028mpio29"></a>
-<a name="robo77"></a><h2>HDF5 (mpio)</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="./HDF5_f90.html#robo76">HDF5</a>
-</pre>
-<p class="item_name">PURPOSE</p>
-<pre> This is the main module used for linking to the Fortran parallel HDF library.
- This file replaces <a href="./HDF5_f90.html#robo_top_of_doc">HDF5.f90</a> when compiling the parallel library.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./src/HDF5mpio.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/fflush1_f90.html b/fortran/doc/DevelGuide/test/fflush1_f90.html
deleted file mode 100644
index eaab841..0000000
--- a/fortran/doc/DevelGuide/test/fflush1_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/fflush1.f90</title>
-<!-- Source: ./test/fflush1.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ffflush12ef90"></a>
-<a name="robo0"></a><h2>fortran/test/fflush1.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> FFLUSH1EXAMPLE
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> This is the first half of a two-part test that makes sure
- that a file can be read after an application crashes as long
- as the file was flushed first. We simulate by exit the
- the program using stop statement
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/fflush1.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/fflush2_f90.html b/fortran/doc/DevelGuide/test/fflush2_f90.html
deleted file mode 100644
index 23b7797..0000000
--- a/fortran/doc/DevelGuide/test/fflush2_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/fflush2.f90</title>
-<!-- Source: ./test/fflush2.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ffflush22ef90"></a>
-<a name="robo1"></a><h2>fortran/test/fflush2.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">fflush2.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> This is the second half of a two-part test that makes sure
- that a file can be read after an application crashes as long
- as the file was flushed first. This half tries to read the
- file created by the first half.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/fflush2.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/fortranlib_test_1_8_f90.html b/fortran/doc/DevelGuide/test/fortranlib_test_1_8_f90.html
deleted file mode 100644
index 3ce387d..0000000
--- a/fortran/doc/DevelGuide/test/fortranlib_test_1_8_f90.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/fortranlib_test_1_8.f90</title>
-<!-- Source: ./test/fortranlib_test_1_8.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ffortranlib5ftest5f15f82ef90"></a>
-<a name="robo3"></a><h2>fortran/test/fortranlib_test_1_8.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">fortranlib_test_1_8.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran API's introduced in 1.8 release.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/fortranlib_test_1_8.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/fortranlib_test_F03_f90.html b/fortran/doc/DevelGuide/test/fortranlib_test_F03_f90.html
deleted file mode 100644
index 1a0c7be..0000000
--- a/fortran/doc/DevelGuide/test/fortranlib_test_F03_f90.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/fortranlib_test_F03.f90</title>
-<!-- Source: ./test/fortranlib_test_F03.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ffortranlib5ftest5fF032ef90"></a>
-<a name="robo4"></a><h2>fortran/test/fortranlib_test_F03.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">fortranlib_test_F03.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran API's requiring Fortran 2003
- compliance.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/fortranlib_test_F03.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/fortranlib_test_f90.html b/fortran/doc/DevelGuide/test/fortranlib_test_f90.html
deleted file mode 100644
index 29fb2f1..0000000
--- a/fortran/doc/DevelGuide/test/fortranlib_test_f90.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/fortranlib_test.f90</title>
-<!-- Source: ./test/fortranlib_test.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ffortranlib5ftest2ef90"></a>
-<a name="robo2"></a><h2>fortran/test/fortranlib_test.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">fortranlib_test.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran API's functionality.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/fortranlib_test.f90 on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tF2003_f90.html b/fortran/doc/DevelGuide/test/tF2003_f90.html
deleted file mode 100644
index 8101411..0000000
--- a/fortran/doc/DevelGuide/test/tF2003_f90.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tF2003.f90</title>
-<!-- Source: ./test/tF2003.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftF20032ef90"></a>
-<a name="robo7"></a><h2>fortran/test/tF2003.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tF2003.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Test FORTRAN <a href="../src/HDF5_f90.html#robo75">HDF5</a> APIs which are dependent on the FORTRAN 2003
- features. Tests <a href="../src/H5Lff_f90.html#robo48">H5L</a>, H5P, <a href="../src/H5Tff_f90.html#robo69">H5T</a> APIs.
-</pre>
-<p class="item_name">USES</p>
-<pre> liter_cb_mod, test_genprop_cls_cb1_mod
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> test_iter_group, test_create, test_genprop_class_callback,
- test_array_compound_atomic, test_array_compound_array,
- test_array_bkg
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tF2003.f90 on Tue Sep 14 2010 23:17:29
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5A_1_8_f90.html b/fortran/doc/DevelGuide/test/tH5A_1_8_f90.html
deleted file mode 100644
index c217d99..0000000
--- a/fortran/doc/DevelGuide/test/tH5A_1_8_f90.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5A_1_8.f90</title>
-<!-- Source: ./test/tH5A_1_8.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5A5f15f82ef90"></a>
-<a name="robo8"></a><h2>fortran/test/tH5A_1_8.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5A_1_8.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Aff_f90.html#robo27">H5A</a> APIs introduced in 1.8.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> attribute_test_1_8, test_attr_corder_create_compact, test_attr_null_space,
- test_attr_create_by_name, test_attr_info_by_idx, attr_info_by_idx_check,
- test_attr_shared_rename, test_attr_delete_by_idx, test_attr_shared_delete,
- test_attr_dense_open, test_attr_dense_verify, test_attr_corder_create_basic,
- test_attr_basic_write, test_attr_many, attr_open_check,
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5A_1_8.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5A_f90.html b/fortran/doc/DevelGuide/test/tH5A_f90.html
deleted file mode 100644
index 87c5a45..0000000
--- a/fortran/doc/DevelGuide/test/tH5A_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5A.f90</title>
-<!-- Source: ./test/tH5A.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5A2ef90"></a>
-<a name="robo7"></a><h2>fortran/test/tH5A.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5A.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Aff_f90.html#robo27">H5A</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> attribute_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5A.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5D_f90.html b/fortran/doc/DevelGuide/test/tH5D_f90.html
deleted file mode 100644
index c840425..0000000
--- a/fortran/doc/DevelGuide/test/tH5D_f90.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5D.f90</title>
-<!-- Source: ./test/tH5D.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5D2ef90"></a>
-<a name="robo9"></a><h2>fortran/test/tH5D.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5D.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Dff_f90.html#robo31">H5D</a> APIs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Tests the <a href="../src/H5Dff_f90.html#robo31">H5D</a> APIs functionalities of:
- <a href="../src/H5Dff_f90.html#robo115">h5dcreate_f</a>, <a href="../src/H5Dff_f90.html#robo123">h5dopen_f</a>, <a href="../src/H5Dff_f90.html#robo113">h5dclose_f</a>, <a href="../src/H5Dff_f90.html#robo118">h5dget_space_f</a>, <a href="../src/H5Dff_f90.html#robo121">h5dget_type_f</a>,
- <a href="../src/H5Dff_F90_f90.html#robo124">h5dread_f</a>, and h5dwrite_f
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> datasettest, extenddsettest
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5D.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5E_f90.html b/fortran/doc/DevelGuide/test/tH5E_f90.html
deleted file mode 100644
index 6a1ef56..0000000
--- a/fortran/doc/DevelGuide/test/tH5E_f90.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5E.f90</title>
-<!-- Source: ./test/tH5E.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5E2ef90"></a>
-<a name="robo10"></a><h2>fortran/test/tH5E.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5E.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Eff_f90.html#robo35">H5E</a> APIs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Tests the <a href="../src/H5Dff_f90.html#robo31">H5D</a> APIs functionalities of:
- <a href="../src/H5Eff_f90.html#robo132">h5eprint_f</a>
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> error_report_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5E.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5F_f90.html b/fortran/doc/DevelGuide/test/tH5F_f90.html
deleted file mode 100644
index d1aff59..0000000
--- a/fortran/doc/DevelGuide/test/tH5F_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5F.f90</title>
-<!-- Source: ./test/tH5F.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5F2ef90"></a>
-<a name="robo12"></a><h2>fortran/test/tH5F.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5F.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Fff_f90.html#robo39">H5F</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> mountingtest, reopentest, plisttest, file_close, file_space
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5F.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5G_1_8_f90.html b/fortran/doc/DevelGuide/test/tH5G_1_8_f90.html
deleted file mode 100644
index 81fdd3c..0000000
--- a/fortran/doc/DevelGuide/test/tH5G_1_8_f90.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5G_1_8.f90</title>
-<!-- Source: ./test/tH5G_1_8.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5G5f15f82ef90"></a>
-<a name="robo14"></a><h2>fortran/test/tH5G_1_8.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5G_1_8.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Gff_f90.html#robo44">H5G</a> APIs introduced in 1.8.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> group_test, group_info, timestamps, mklinks, test_move_preserves, lifecycle
- cklinks, delete_by_idx, link_info_by_idx_check, test_lcpl, objcopy,
- lapl_nlinks
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5G_1_8.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5G_f90.html b/fortran/doc/DevelGuide/test/tH5G_f90.html
deleted file mode 100644
index 6c60a3c..0000000
--- a/fortran/doc/DevelGuide/test/tH5G_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5G.f90</title>
-<!-- Source: ./test/tH5G.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5G2ef90"></a>
-<a name="robo13"></a><h2>fortran/test/tH5G.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5G.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Gff_f90.html#robo44">H5G</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> group_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5G.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5I_f90.html b/fortran/doc/DevelGuide/test/tH5I_f90.html
deleted file mode 100644
index 52e21fc..0000000
--- a/fortran/doc/DevelGuide/test/tH5I_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5I.f90</title>
-<!-- Source: ./test/tH5I.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5I2ef90"></a>
-<a name="robo15"></a><h2>fortran/test/tH5I.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5I.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Iff_f90.html#robo47">H5I</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> identifier_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5I.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5O_f90.html b/fortran/doc/DevelGuide/test/tH5O_f90.html
deleted file mode 100644
index a128da5..0000000
--- a/fortran/doc/DevelGuide/test/tH5O_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5O.f90</title>
-<!-- Source: ./test/tH5O.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5O2ef90"></a>
-<a name="robo17"></a><h2>fortran/test/tH5O.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5O.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Off_f90.html#robo56">H5O</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> test_h5o, test_h5o_link, test_h5o_plist
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5O.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5P_f90.html b/fortran/doc/DevelGuide/test/tH5P_f90.html
deleted file mode 100644
index edc0787..0000000
--- a/fortran/doc/DevelGuide/test/tH5P_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5P.f90</title>
-<!-- Source: ./test/tH5P.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5P2ef90"></a>
-<a name="robo18"></a><h2>fortran/test/tH5P.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5P.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran H5P APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> external_test, multi_file_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5P.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5R_f90.html b/fortran/doc/DevelGuide/test/tH5R_f90.html
deleted file mode 100644
index fd44062..0000000
--- a/fortran/doc/DevelGuide/test/tH5R_f90.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5R.f90</title>
-<!-- Source: ./test/tH5R.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5R2ef90"></a>
-<a name="robo20"></a><h2>fortran/test/tH5R.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5R.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Rff_f90.html#robo64">H5R</a>, Reference Interface, APIs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Tests h5rcreate_f, h5rdereference_f, h5rget_name_f
- and H5Rget_object_type functions
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> refobjtest, refregtest
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5R.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5S_f90.html b/fortran/doc/DevelGuide/test/tH5S_f90.html
deleted file mode 100644
index 5879d28..0000000
--- a/fortran/doc/DevelGuide/test/tH5S_f90.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5S.f90</title>
-<!-- Source: ./test/tH5S.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5S2ef90"></a>
-<a name="robo21"></a><h2>fortran/test/tH5S.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5S.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Sff_f90.html#robo68">H5S</a>, Dataspace Interface, APIs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Tests the following functionalities:
- <a href="../src/H5Sff_f90.html#robo378">h5screate_f</a>, <a href="../src/H5Sff_f90.html#robo377">h5scopy_f</a>, <a href="../src/H5Sff_f90.html#robo379">h5screate_simple_f</a>, <a href="../src/H5Sff_f90.html#robo395">h5sis_simple_f</a>,
- <a href="../src/H5Sff_f90.html#robo391">h5sget_simple_extent_dims_f</a>,<a href="../src/H5Sff_f90.html#robo392">h5sget_simple_extent_ndims_f</a>
- <a href="../src/H5Sff_f90.html#robo393">h5sget_simple_extent_npoints_f</a>, <a href="../src/H5Sff_f90.html#robo394">h5sget_simple_extent_type_f</a>,
- <a href="../src/H5Sff_f90.html#robo382">h5sextent_copy_f</a>, <a href="../src/H5Sff_f90.html#robo403">h5sset_extent_simple_f</a>, <a href="../src/H5Sff_f90.html#robo402">h5sset_extent_none_f</a>
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> dataspace_basic_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5S.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5Sselect_f90.html b/fortran/doc/DevelGuide/test/tH5Sselect_f90.html
deleted file mode 100644
index e8eaa73..0000000
--- a/fortran/doc/DevelGuide/test/tH5Sselect_f90.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5Sselect.f90</title>
-<!-- Source: ./test/tH5Sselect.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5Sselect2ef90"></a>
-<a name="robo22"></a><h2>fortran/test/tH5Sselect.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5Sselect.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Sff_f90.html#robo68">H5S</a>, Selection-related Dataspace Interface, APIs.
-</pre>
-<p class="item_name">NOTES</p>
-<pre> Tests the following functionalities:
- <a href="../src/H5Sff_f90.html#robo389">h5sget_select_npoints_f</a>, <a href="../src/H5Sff_f90.html#robo398">h5sselect_elements_f</a>, <a href="../src/H5Sff_f90.html#robo397">h5sselect_all_f</a>,
- <a href="../src/H5Sff_f90.html#robo400">h5sselect_none_f</a>, <a href="../src/H5Sff_f90.html#robo401">h5sselect_valid_f</a>, <a href="../src/H5Sff_f90.html#robo399">h5sselect_hyperslab_f</a>,
- <a href="../src/H5Sff_f90.html#robo384">h5sget_select_bounds_f</a>, <a href="../src/H5Sff_f90.html#robo386">h5sget_select_elem_pointlist_f</a>,
- <a href="../src/H5Sff_f90.html#robo385">h5sget_select_elem_npoints_f</a>, <a href="../src/H5Sff_f90.html#robo387">h5sget_select_hyper_blocklist_f</a>,
- <a href="../src/H5Sff_f90.html#robo388">h5sget_select_hyper_nblocks_f</a>, <a href="../src/H5Sff_f90.html#robo389">h5sget_select_npoints_f</a>
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> test_select_hyperslab, test_select_element, test_basic_select,
- test_select_point, test_select_combine, test_select_bounds
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5Sselect.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5T_f90.html b/fortran/doc/DevelGuide/test/tH5T_f90.html
deleted file mode 100644
index 35006b3..0000000
--- a/fortran/doc/DevelGuide/test/tH5T_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5T.f90</title>
-<!-- Source: ./test/tH5T.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5T2ef90"></a>
-<a name="robo23"></a><h2>fortran/test/tH5T.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5T.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Tff_f90.html#robo70">H5T</a> APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> compoundtest, basic_data_type_test, enumtest, test_derived_flt
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5T.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5VL_f90.html b/fortran/doc/DevelGuide/test/tH5VL_f90.html
deleted file mode 100644
index a34a01d..0000000
--- a/fortran/doc/DevelGuide/test/tH5VL_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5VL.f90</title>
-<!-- Source: ./test/tH5VL.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5VL2ef90"></a>
-<a name="robo25"></a><h2>fortran/test/tH5VL.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5VL.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran Variable_length datatypes APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> vl_test_integer, vl_test_real, vl_test_string
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5VL.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tH5Z_f90.html b/fortran/doc/DevelGuide/test/tH5Z_f90.html
deleted file mode 100644
index 94325b9..0000000
--- a/fortran/doc/DevelGuide/test/tH5Z_f90.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tH5Z.f90</title>
-<!-- Source: ./test/tH5Z.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftH5Z2ef90"></a>
-<a name="robo26"></a><h2>fortran/test/tH5Z.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tH5Z.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Basic testing of Fortran <a href="../src/H5Zff_f90.html#robo74">H5Z</a> szip APIs.
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> filters_test, szip_test
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tH5Z.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/t_c.html b/fortran/doc/DevelGuide/test/t_c.html
deleted file mode 100644
index c9512a7..0000000
--- a/fortran/doc/DevelGuide/test/t_c.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/t.c</title>
-<!-- Source: ./test/t.c -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftc2ec"></a>
-<a name="robo5"></a><h2>fortran/test/tc.c</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> tc.c
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> This file contains C routines needed for the test programs.
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/t.c on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/test/tf_f90.html b/fortran/doc/DevelGuide/test/tf_f90.html
deleted file mode 100644
index e3c51f4..0000000
--- a/fortran/doc/DevelGuide/test/tf_f90.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="../robodoc.css" type="text/css" />
-<title>./test/tf.f90</title>
-<!-- Source: ./test/tf.f90 -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="navigation">
-<a class="menuitem" href="../toc_index.html#top">Table of Contents</a>
-<a class="menuitem" href="../robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="../masterindex.html#top">Index</a>
-<a class="menuitem" href="../robo_functions.html#top">Functions</a>
-<a class="menuitem" href="../robo_modules.html#top">Modules</a>
-<a class="menuitem" href="../robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="../robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<hr />
-<a name="root2ffortran2ftest2ftf2ef90"></a>
-<a name="robo6"></a><h2>fortran/test/tf.f90</h2>
-
-<p>[ <a href="#robo_top_of_doc">Top</a> ] [ <a href="../robo_modules.html#robo_top_of_doc">Modules</a> ]</p>
-<p class="item_name">NAME</p>
-<pre> <a href="#robo_top_of_doc">tf.f90</a>
-</pre>
-<p class="item_name">FUNCTION</p>
-<pre> Contains subroutines which are needed in all the hdf5 fortran tests
-</pre>
-<p class="item_name">CONTAINS SUBROUTINES</p>
-<pre> write_test_status, check, verify, verifyLogical, verifyString, h5_fixname_f,
- h5_cleanup_f, h5_exit_f, h5_env_nocleanup_f
-</pre>
-
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./test/tf.f90 on Sun Aug 14 2011 22:49:37
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/doc/DevelGuide/toc_index.html b/fortran/doc/DevelGuide/toc_index.html
deleted file mode 100644
index 94a2792..0000000
--- a/fortran/doc/DevelGuide/toc_index.html
+++ /dev/null
@@ -1,552 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Style-Type" content="text/css" />
-<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
-<link rel="stylesheet" href="./robodoc.css" type="text/css" />
-<title>Table of Contents</title>
-<!-- Source: ./ -->
-</head>
-<body>
-<div id="logo">
-<a name="robo_top_of_doc">HDF5 FORTRAN Developer's Guide</a>
-</div> <!-- logo -->
-<div id="extra">
-</div> <!-- extra -->
-<div id="navigation">
-<a class="menuitem" href="#top">Table of Contents</a>
-<a class="menuitem" href="./robo_sourcefiles.html#top">Sourcefiles</a>
-<a class="menuitem" href="./masterindex.html#top">Index</a>
-<a class="menuitem" href="./robo_functions.html#top">Functions</a>
-<a class="menuitem" href="./robo_modules.html#top">Modules</a>
-<a class="menuitem" href="./robo_procedures.html#top">Procedures</a>
-<a class="menuitem" href="./robo_subroutines.html#top">Subroutines</a>
-</div> <!-- navigation -->
-<div id="content">
-<h3>TABLE OF CONTENTS</h3>
-<ul>
-<li><a href="./test/fflush1_f90.html#robo0">fortran/test/fflush1.f90</a></li>
-<li><a href="./test/fflush2_f90.html#robo1">fortran/test/fflush2.f90</a></li>
-<li><a href="./test/fortranlib_test_f90.html#robo2">fortran/test/fortranlib_test.f90</a></li>
-<li><a href="./test/fortranlib_test_1_8_f90.html#robo3">fortran/test/fortranlib_test_1_8.f90</a></li>
-<li><a href="./test/fortranlib_test_F03_f90.html#robo4">fortran/test/fortranlib_test_F03.f90</a></li>
-<li><a href="./test/t_c.html#robo5">fortran/test/tc.c</a></li>
-<li><a href="./test/tf_f90.html#robo6">fortran/test/tf.f90</a></li>
-<li><a href="./test/tH5A_f90.html#robo7">fortran/test/tH5A.f90</a></li>
-<li><a href="./test/tH5A_1_8_f90.html#robo8">fortran/test/tH5A_1_8.f90</a></li>
-<li><a href="./test/tH5D_f90.html#robo9">fortran/test/tH5D.f90</a></li>
-<li><a href="./test/tH5E_f90.html#robo10">fortran/test/tH5E.f90</a></li>
-<li><a href="./test/tH5E_F03_f90.html#robo11">fortran/test/tH5E_F03.f90</a></li>
-<li><a href="./test/tH5F_f90.html#robo12">fortran/test/tH5F.f90</a></li>
-<li><a href="./test/tH5G_f90.html#robo13">fortran/test/tH5G.f90</a></li>
-<li><a href="./test/tH5G_1_8_f90.html#robo14">fortran/test/tH5G_1_8.f90</a></li>
-<li><a href="./test/tH5I_f90.html#robo15">fortran/test/tH5I.f90</a></li>
-<li><a href="./test/tH5L_F03_f90.html#robo16">fortran/test/tH5L_F03.f90</a></li>
-<li><a href="./test/tH5O_f90.html#robo17">fortran/test/tH5O.f90</a></li>
-<li><a href="./test/tH5P_f90.html#robo18">fortran/test/tH5P.f90</a></li>
-<li><a href="./test/tH5P_F03_f90.html#robo19">fortran/test/tH5P_F03.f90</a></li>
-<li><a href="./test/tH5R_f90.html#robo20">fortran/test/tH5R.f90</a></li>
-<li><a href="./test/tH5S_f90.html#robo21">fortran/test/tH5S.f90</a></li>
-<li><a href="./test/tH5Sselect_f90.html#robo22">fortran/test/tH5Sselect.f90</a></li>
-<li><a href="./test/tH5T_f90.html#robo23">fortran/test/tH5T.f90</a></li>
-<li><a href="./test/tH5T_F03_f90.html#robo24">fortran/test/tH5T_F03.f90</a></li>
-<li><a href="./test/tH5VL_f90.html#robo25">fortran/test/tH5VL.f90</a></li>
-<li><a href="./test/tH5Z_f90.html#robo26">fortran/test/tH5Z.f90</a></li>
-<li><a href="./src/H5Aff_f90.html#robo27">H5A</a></li>
-<ul>
-<li><a href="./src/H5Aff_f90.html#robo85">h5aclose_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo86">h5acreate_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo87">h5acreate_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo88">h5adelete_by_idx_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo89">h5adelete_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo90">h5adelete_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo91">H5Aexists_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo92">H5Aexists_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo93">h5aget_create_plist_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo94">h5aget_info_by_idx_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo95">h5aget_info_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo96">h5aget_info_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo97">h5aget_name_by_idx_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo98">h5aget_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo99">h5aget_num_attrs_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo100">h5aget_space_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo101">h5aget_storage_size_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo102">h5aget_type_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo103">h5aopen_by_idx_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo104">H5Aopen_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo105">h5aopen_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo106">h5aopen_idx_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo107">h5aopen_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo109">h5arename_by_name_f</a></li>
-<li><a href="./src/H5Aff_f90.html#robo110">h5arename_f</a></li>
-</ul>
-<li><a href="./src/H5Aff_F03_f90.html#robo28">H5A (F03)</a></li>
-<ul>
-<li><a href="./src/H5Aff_F03_f90.html#robo108">h5aread_f</a></li>
-</ul>
-<li><a href="./src/H5Aff_F90_f90.html#robo29">H5A (F90)</a></li>
-<li><a href="./src/H5Af_c.html#robo30">H5Af</a></li>
-<li><a href="./src/H5Dff_f90.html#robo31">H5D</a></li>
-<ul>
-<li><a href="./src/H5Dff_f90.html#robo113">h5dclose_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo114">h5dcreate_anon_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo115">h5dcreate_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo116">h5dget_access_plist_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo117">h5dget_create_plist_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo118">h5dget_space_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo119">h5dget_space_status_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo120">h5dget_storage_size_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo121">h5dget_type_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo123">h5dopen_f</a></li>
-<li><a href="./src/H5Dff_F90_f90.html#robo124">h5dread_f</a></li>
-<li><a href="./src/H5Dff_f90.html#robo125">h5dset_extent</a></li>
-<li><a href="./src/H5Dff_f90.html#robo126">h5dvlen_get_max_len_f</a></li>
-<li><a href="./src/H5Dff_F03_f90.html#robo127">h5dvlen_reclaim</a></li>
-</ul>
-<li><a href="./src/H5Dff_F03_f90.html#robo32">H5D (F03)</a></li>
-<li><a href="./src/H5Dff_F90_f90.html#robo33">H5D (F90)</a></li>
-<li><a href="./src/H5Df_c.html#robo34">H5Df</a></li>
-<li><a href="./src/H5Eff_f90.html#robo35">H5E</a></li>
-<ul>
-<li><a href="./src/H5Eff_f90.html#robo128">h5eclear_f</a></li>
-<li><a href="./src/H5Eff_F03_f90.html#robo129">h5eget_auto_f</a></li>
-<li><a href="./src/H5Eff_f90.html#robo130">h5eget_major_f</a></li>
-<li><a href="./src/H5Eff_f90.html#robo131">h5eget_minor_f</a></li>
-<li><a href="./src/H5Eff_f90.html#robo132">h5eprint_f</a></li>
-<li><a href="./src/H5Eff_F03_f90.html#robo133">h5eset_auto2_f</a></li>
-<li><a href="./src/H5Eff_F90_f90.html#robo134">h5eset_auto_f</a></li>
-</ul>
-<li><a href="./src/H5Eff_F03_f90.html#robo36">H5E (F03)</a></li>
-<li><a href="./src/H5Eff_F90_f90.html#robo37">H5E (F90)</a></li>
-<li><a href="./src/H5Ef_c.html#robo38">H5Ef</a></li>
-<li><a href="./src/H5Fff_f90.html#robo39">H5F</a></li>
-<ul>
-<li><a href="./src/H5Fff_f90.html#robo135">h5fclose_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo136">h5fcreate_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo137">h5fflush_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo138">h5fget_access_plist_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo139">h5fget_create_plist_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo140">h5fget_filesize_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo141">h5fget_freespace_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo142">h5fget_name_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo143">h5fget_obj_count_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo144">h5fget_obj_ids_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo145">h5fis_hdf5_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo146">h5fmount_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo147">h5fopen_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo148">h5freopen_f</a></li>
-<li><a href="./src/H5Fff_f90.html#robo149">h5funmount_f</a></li>
-</ul>
-<li><a href="./src/H5f90kit_c.html#robo40">H5f90kit</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo41">H5FDMPIO</a></li>
-<ul>
-<li><a href="./src/H5FDmpioff_f90.html#robo231">h5pget_dxpl_mpio_f</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo239">h5pget_fapl_mpio_f</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo240">h5pget_fapl_mpiposix_f</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo314">h5pset_dxpl_mpio_f</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo320">h5pset_fapl_mpio_f</a></li>
-<li><a href="./src/H5FDmpioff_f90.html#robo321">h5pset_fapl_mpiposix_f</a></li>
-</ul>
-<li><a href="./src/H5FDmpiof_c.html#robo42">H5FDmpiof</a></li>
-<li><a href="./src/H5Ff_c.html#robo43">H5Ff</a></li>
-<li><a href="./src/H5Gff_f90.html#robo44">H5G</a></li>
-<ul>
-<li><a href="./src/H5Gff_f90.html#robo151">h5gclose_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo152">H5Gcreate_anon_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo153">h5gcreate_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo155">h5gget_comment_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo156">H5Gget_create_plist_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo157">h5gget_info_by_idx_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo158">h5gget_info_by_name_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo159">h5gget_info_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo160">h5gget_linkval_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo161">h5gget_obj_info_idx_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo162">h5glink2_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo163">h5glink_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo164">h5gmove2_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo165">h5gmove_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo166">h5gn_members_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo167">h5gopen_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo168">h5gset_comment_f</a></li>
-<li><a href="./src/H5Gff_f90.html#robo169">h5gunlink_f</a></li>
-</ul>
-<li><a href="./src/H5Gf_c.html#robo45">H5Gf</a></li>
-<li><a href="./src/H5f90global_f90.html#robo46">H5GLOBAL</a></li>
-<li><a href="./src/H5Iff_f90.html#robo47">H5I</a></li>
-<ul>
-<li><a href="./src/H5Iff_f90.html#robo170">h5idec_ref_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo171">h5iget_file_id_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo172">h5iget_name_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo173">h5iget_ref_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo174">h5iget_type_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo175">h5iinc_ref_f</a></li>
-<li><a href="./src/H5Iff_f90.html#robo176">h5iis_valid_f</a></li>
-</ul>
-<li><a href="./src/H5If_c.html#robo48">H5If</a></li>
-<li><a href="./src/H5Lff_f90.html#robo49">H5L</a></li>
-<ul>
-<li><a href="./src/H5Lff_f90.html#robo178">h5lcopy_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo179">H5Lcreate_external_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo180">H5Lcreate_hard_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo181">H5Lcreate_soft_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo182">h5ldelete_by_idx_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo183">h5ldelete_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo184">H5Lexists_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo185">h5lget_info_by_idx_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo186">h5lget_info_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo187">h5lget_name_by_idx_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo188">h5lis_registered_f</a></li>
-<li><a href="./src/H5Lff_f90.html#robo191">h5lmove_f</a></li>
-</ul>
-<li><a href="./src/H5Lff_F03_f90.html#robo50">H5L (F03)</a></li>
-<ul>
-<li><a href="./src/H5Lff_F03_f90.html#robo189">h5literate_by_name_f</a></li>
-<li><a href="./src/H5Lff_F03_f90.html#robo190">h5literate_f</a></li>
-</ul>
-<li><a href="./src/H5Lff_F90_f90.html#robo51">H5L (F90)</a></li>
-<li><a href="./src/H5Lf_c.html#robo52">H5Lf</a></li>
-<li><a href="./src/H5_ff_f90.html#robo53">H5LIB</a></li>
-<ul>
-<li><a href="./src/H5_ff_f90.html#robo111">h5check_version_f</a></li>
-<li><a href="./src/H5_ff_f90.html#robo112">h5close_f</a></li>
-<li><a href="./src/H5_ff_f90.html#robo122">h5dont_atexit_f</a></li>
-<li><a href="./src/H5_ff_f90.html#robo150">h5garbage_collect_f</a></li>
-<li><a href="./src/H5_ff_f90.html#robo154">h5get_libversion_f</a></li>
-<li><a href="./src/H5_ff_f90.html#robo177">h5kind_to_type</a></li>
-<li><a href="./src/H5_ff_f90.html#robo198">h5open_f</a></li>
-</ul>
-<li><a href="./src/H5_ff_F03_f90.html#robo54">H5LIB_PROVISIONAL</a></li>
-<ul>
-<li><a href="./src/H5_ff_F03_f90.html#robo194">h5offsetof</a></li>
-</ul>
-<li><a href="./src/H5_ff_F90_f90.html#robo55">H5LIB_PROVISIONAL (F90)</a></li>
-<li><a href="./src/H5Off_f90.html#robo56">H5O</a></li>
-<ul>
-<li><a href="./src/H5Off_f90.html#robo193">h5oclose_f</a></li>
-<li><a href="./src/H5Off_f90.html#robo195">h5olink_f</a></li>
-<li><a href="./src/H5Off_f90.html#robo196">h5oopen_f</a></li>
-<li><a href="./src/H5Off_f90.html#robo197">h5open_by_addr_f</a></li>
-</ul>
-<li><a href="./src/H5Off_F03_f90.html#robo57">H5O (F03)</a></li>
-<ul>
-<li><a href="./src/H5Off_F03_f90.html#robo199">h5ovisit_f</a></li>
-</ul>
-<li><a href="./src/H5Off_F90_f90.html#robo58">H5O (F90)</a></li>
-<li><a href="./src/H5Of_c.html#robo59">H5Of</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo60">H5P (_F90)</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo61">H5P (F03)</a></li>
-<ul>
-<li><a href="./src/H5Pff_F03_f90.html#robo80"> h5pget_double</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo205">h5pcreate_class_f</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo218">h5pget_char</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo247">h5pget_integer</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo261">h5pget_real</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo273">h5pinsert_char</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo274">h5pinsert_double</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo276">h5pinsert_integer</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo278">h5pinsert_ptr</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo280">h5pinsert_real</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo283">h5pregister_char</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo286">h5pregister_double</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo287">h5pregister_integer</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo289">h5pregister_ptr</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo291">h5pregister_real</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo294">h5pset(get)fill_value_f</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo303">h5pset_char</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo313">h5pset_double</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo334">h5pset_integer</a></li>
-<li><a href="./src/H5Pff_F03_f90.html#robo345">h5pset_real</a></li>
-</ul>
-<li><a href="./src/H5Pff_f90.html#robo62">H5P (F90)</a></li>
-<ul>
-<li><a href="./src/H5Pff_F90_f90.html#robo206">h5pcreate_class_f</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo219">h5pget_char</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo229">h5pget_double</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo248">h5pget_integer</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo260">h5pget_real</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo272">h5pinsert_char</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo275">h5pinsert_double</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo277">h5pinsert_integer</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo279">h5pinsert_real</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo284">h5pregister_char</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo285">h5pregister_double</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo288">h5pregister_integer</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo290">h5pregister_real</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo295">h5pset(get)fill_value_f</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo304">h5pset_char</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo312">h5pset_double</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo333">h5pset_integer</a></li>
-<li><a href="./src/H5Pff_F90_f90.html#robo346">h5pset_real</a></li>
-</ul>
-<li><a href="./src/H5Pf_c.html#robo63">H5Pf</a></li>
-<li><a href="./src/H5Rff_f90.html#robo64">H5R</a></li>
-<ul>
-<li><a href="./src/H5Rff_f90.html#robo374">h5rget_object_type_obj_f</a></li>
-<li><a href="./src/H5Rff_f90.html#robo375">h5rget_region_region_f</a></li>
-</ul>
-<li><a href="./src/H5Rff_F03_f90.html#robo65">H5R (F03)</a></li>
-<ul>
-<li><a href="./src/H5Rff_F03_f90.html#robo358">h5rcreate_object_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo360">h5rcreate_ptr_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo362">h5rcreate_region_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo363">h5rdereference_object_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo365">h5rdereference_ptr_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo366">h5rdereference_region_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo369">h5rget_name_object_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo370">h5rget_name_ptr_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo372">h5rget_name_region_f</a></li>
-<li><a href="./src/H5Rff_F03_f90.html#robo373">h5rget_obj_type_f</a></li>
-</ul>
-<li><a href="./src/H5Rff_F90_f90.html#robo66">H5R (F90)</a></li>
-<ul>
-<li><a href="./src/H5Rff_F90_f90.html#robo359">h5rcreate_object_f</a></li>
-<li><a href="./src/H5Rff_F90_f90.html#robo361">h5rcreate_region_f</a></li>
-<li><a href="./src/H5Rff_F90_f90.html#robo364">h5rdereference_object_f</a></li>
-<li><a href="./src/H5Rff_F90_f90.html#robo367">h5rdereference_region_f</a></li>
-<li><a href="./src/H5Rff_F90_f90.html#robo368">h5rget_name_object_f</a></li>
-<li><a href="./src/H5Rff_F90_f90.html#robo371">h5rget_name_region_f</a></li>
-</ul>
-<li><a href="./src/H5Rf_c.html#robo67">H5Rf</a></li>
-<li><a href="./src/H5Sff_f90.html#robo68">H5S</a></li>
-<ul>
-<li><a href="./src/H5Sff_f90.html#robo376">h5sclose_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo377">h5scopy_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo378">h5screate_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo379">h5screate_simple_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo380">H5Sdecode_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo381">H5Sencode_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo382">h5sextent_copy_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo383">h5sextent_equal_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo384">h5sget_select_bounds_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo385">h5sget_select_elem_npoints_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo386">h5sget_select_elem_pointlist_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo387">h5sget_select_hyper_blocklist_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo388">h5sget_select_hyper_nblocks_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo389">h5sget_select_npoints_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo390">h5sget_select_type_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo391">h5sget_simple_extent_dims_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo392">h5sget_simple_extent_ndims_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo393">h5sget_simple_extent_npoints_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo394">h5sget_simple_extent_type_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo395">h5sis_simple_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo396">h5soffset_simple_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo397">h5sselect_all_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo398">h5sselect_elements_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo399">h5sselect_hyperslab_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo400">h5sselect_none_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo401">h5sselect_valid_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo402">h5sset_extent_none_f</a></li>
-<li><a href="./src/H5Sff_f90.html#robo403">h5sset_extent_simple_f</a></li>
-</ul>
-<li><a href="./src/H5Sf_c.html#robo69">H5Sf</a></li>
-<li><a href="./src/H5Tff_f90.html#robo70">H5T</a></li>
-<ul>
-<li><a href="./src/H5Tff_f90.html#robo404">h5tarray_create_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo405">h5tclose_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo406">h5tcommit_anon_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo407">h5tcommit_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo408">h5tcommitted_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo409">h5tcompiler_conv_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo411">h5tcopy_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo412">h5tcreate_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo413">H5Tdecode_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo414">h5tenaum_insert_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo415">H5Tencode_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo416">h5tenum_create_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo417">h5tenum_nameof_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo418">h5tenum_valuof_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo419">h5tequal_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo422">h5tget_array_dims_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo423">h5tget_array_ndims_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo424">h5tget_class_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo425">h5tget_create_plist_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo426">h5tget_cset_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo427">h5tget_ebias_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo428">h5tget_fields_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo429">h5tget_inpad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo430">h5tget_member_class_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo431">h5tget_member_index_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo432">h5tget_member_name_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo433">h5tget_member_offset_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo434">h5tget_member_type_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo435">h5tget_member_value_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo436">h5tget_native_type_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo437">h5tget_nmembers_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo438">h5tget_norm_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo439">h5tget_offset_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo440">h5tget_order_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo441">h5tget_pad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo442">h5tget_precision_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo443">h5tget_sign_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo444">h5tget_size_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo445">h5tget_strpad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo446">h5tget_super_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo447">h5tget_tag_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo448">h5tinsert_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo449">h5tis_variable_str_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo450">h5topen_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo451">h5tpack_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo452">h5tset_cset_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo453">h5tset_ebias_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo454">h5tset_fields_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo455">h5tset_inpad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo456">h5tset_norm_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo457">h5tset_offset_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo458">h5tset_order_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo459">h5tset_pad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo460">h5tset_precision_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo461">h5tset_sign_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo462">h5tset_size_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo463">h5tset_strpad_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo464">h5tset_tag_f</a></li>
-<li><a href="./src/H5Tff_f90.html#robo465">h5tvlen_create_f</a></li>
-</ul>
-<li><a href="./src/H5Tff_F03_f90.html#robo71">H5T (F03)</a></li>
-<ul>
-<li><a href="./src/H5Tff_F03_f90.html#robo410">H5Tconvert_f</a></li>
-</ul>
-<li><a href="./src/H5Tff_F90_f90.html#robo72">H5T (F90)</a></li>
-<li><a href="./src/H5Tf_c.html#robo73">H5Tf</a></li>
-<li><a href="./src/H5Zff_f90.html#robo74">H5Z</a></li>
-<ul>
-<li><a href="./src/H5Zff_f90.html#robo466">h5zfilter_avail_f</a></li>
-<li><a href="./src/H5Zff_f90.html#robo467">h5zget_filter_info_f</a></li>
-<li><a href="./src/H5Zff_f90.html#robo468">h5zunregister_f</a></li>
-</ul>
-<li><a href="./src/H5Zf_c.html#robo75">H5Zf</a></li>
-<li><a href="./src/HDF5_f90.html#robo76">HDF5</a></li>
-<li><a href="./src/HDF5mpio_f90.html#robo77">HDF5 (mpio)</a></li>
-<li><a href="./src/H5_DBLE_InterfaceExclude_f90.html#robo78">src/H5_DBLE_InterfaceExclude.f90</a></li>
-<li><a href="./src/H5_DBLE_InterfaceInclude_f90.html#robo79">src/H5_DBLE_InterfaceInclude.f90</a></li>
-<li><a href="./src/H5Pff_f90.html#robo81"> h5pget_hyper_vector_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo82"> h5pset_family_offset_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo83"> h5pset_fapl_family_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo84"> h5pset_meta_block_size_f</a></li>
-<li><a href="./src/H5match_types_c.html#robo192">H5match_types</a></li>
-<li><a href="./src/H5Pff_f90.html#robo200">h5pall_filters_avail_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo201">h5pclose_class_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo202">h5pclose_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo203">h5pcopy_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo204">h5pcopy_prop_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo207">h5pcreate_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo208">h5pequal_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo209">h5pexist_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo210">h5pfill_value_defined_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo211">h5pget_alignment_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo212">h5pget_alloc_time_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo213">H5Pget_attr_creation_order_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo214">H5Pget_attr_phase_change_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo215">h5pget_btree_ratios_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo216">h5pget_buffer_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo217">h5pget_cache_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo220">H5Pget_char_encoding_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo221">H5Pget_chunk_cache_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo222">h5pget_chunk_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo223">h5pget_class_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo224">h5pget_class_name_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo225">h5pget_class_parent_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo226">h5pget_copy_object_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo227">H5Pget_create_inter_group_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo228">h5pget_data_transform_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo230">h5pget_driver_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo232">h5pget_edc_check_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo233">H5Pget_est_link_info_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo234">h5pget_external_count_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo235">h5pget_external_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo236">h5pget_fapl_core_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo237">h5pget_fapl_direct_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo238">h5pget_fapl_family_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo241">h5pget_fapl_multi_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo242">h5pget_fclose_degree_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo243">h5pget_fill_time_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo244">h5pget_filter_by_id_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo245">h5pget_filter_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo246">h5pget_gc_references_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo249">h5pget_istore_k_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo250">h5pget_layout_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo251">H5Pget_link_creation_order_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo252">H5Pget_link_phase_change_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo253">H5Pget_local_heap_size_hint_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo254">h5pget_meta_block_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo255">h5pget_nfilters_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo256">h5pget_nlinks_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo257">h5pget_npros_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo258">H5Pget_obj_track_times_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo259">h5pget_preserve_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo262">h5pget_sec2_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo263">h5pget_sieve_buf_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo264">h5pget_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo265">h5pget_sizes_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo266">h5pget_small_data_block_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo267">h5pget_split_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo268">h5pget_stdio_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo269">h5pget_sym_k_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo270">h5pget_userblock_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo271">h5pget_version_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo281">h5pisa_class_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo282">h5pmodify_filter_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo292">h5premove_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo293">h5premove_filter_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo296">h5pset_alignment_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo297">h5pset_alloc_time_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo298">H5Pset_attr_creation_order_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo299">H5Pset_attr_phase_change_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo300">h5pset_btree_ratios_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo301">h5pset_buffer_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo302">h5pset_cache_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo305">H5Pset_char_encoding_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo306">H5Pset_chunk_cache_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo307">h5pset_chunk_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo308">h5pset_copy_object_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo309">H5Pset_create_inter_group_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo310">h5pset_data_transform_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo311">h5pset_deflate_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo315">h5pset_edc_check_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo316">h5pset_est_link_info_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo317">h5pset_external_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo318">h5pset_fapl_core_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo319">h5pset_fapl_direct_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo322">h5pset_fapl_multi_l</a></li>
-<li><a href="./src/H5Pff_f90.html#robo323">h5pset_fapl_multi_s</a></li>
-<li><a href="./src/H5Pff_f90.html#robo324">h5pset_fapl_sec2_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo325">h5pset_fapl_split_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo326">h5pset_fapl_stdio_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo327">h5pset_fclose_degree_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo328">h5pset_fill_time_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo329">h5pset_filter_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo330">h5pset_fletcher32_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo331">h5pset_gc_references_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo332">h5pset_hyper_vector_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo335">h5pset_istore_k_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo336">h5pset_layout_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo337">H5Pset_libver_bounds_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo338">H5Pset_link_creation_order_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo339">h5pset_link_phase_change_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo340">H5Pset_local_heap_size_hint_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo341">H5Pset_nbit_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo342">h5pset_nlinks_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo343">H5Pset_obj_track_times_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo344">h5pset_preserve_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo347">h5pset_scaleoffset_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo348">H5Pset_shared_mesg_index_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo349">H5Pset_shared_mesg_nindexes_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo350">h5pset_shuffle_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo351">h5pset_sieve_buf_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo352">h5pset_sizes_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo353">h5pset_small_data_block_size_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo354">h5pset_sym_k_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo355">h5pset_szip_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo356">h5pset_userblock_f</a></li>
-<li><a href="./src/H5Pff_f90.html#robo357">h5punregister_f</a></li>
-<li><a href="./src/H5test_kind_f90.html#robo420">H5test_kind</a></li>
-<li><a href="./src/H5test_kind_SIZEOF_f90.html#robo421">H5test_kind_SIZEOF</a></li>
-</ul>
-</div> <!-- content -->
-<div id="footer">
-<p>Generated from ./ on Sun Aug 14 2011 22:49:38
-</p>
-</div> <!-- footer -->
-</body>
-</html>
diff --git a/fortran/examples/CMakeLists.txt b/fortran/examples/CMakeLists.txt
index fabc5cd..f2dc896 100644
--- a/fortran/examples/CMakeLists.txt
+++ b/fortran/examples/CMakeLists.txt
@@ -69,38 +69,36 @@ foreach (example ${examples})
endif (BUILD_SHARED_LIBS)
endforeach (example ${examples})
-if (HDF5_ENABLE_F2003)
- foreach (example ${F2003_examples})
- add_executable (f03_ex_${example} ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
- TARGET_NAMING (f03_ex_${example} STATIC)
- TARGET_FORTRAN_PROPERTIES (f03_ex_${example} STATIC " " " ")
- target_link_libraries (f03_ex_${example}
- ${HDF5_F90_LIB_TARGET}
- ${HDF5_LIB_TARGET}
+foreach (example ${F2003_examples})
+ add_executable (f03_ex_${example} ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
+ TARGET_NAMING (f03_ex_${example} STATIC)
+ TARGET_FORTRAN_PROPERTIES (f03_ex_${example} STATIC " " " ")
+ target_link_libraries (f03_ex_${example}
+ ${HDF5_F90_LIB_TARGET}
+ ${HDF5_LIB_TARGET}
+ )
+ target_include_directories (f03_ex_${example} PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
+ set_target_properties (f03_ex_${example} PROPERTIES
+ LINKER_LANGUAGE Fortran
+ FOLDER examples/fortran03
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
+ )
+ if (BUILD_SHARED_LIBS)
+ add_executable (f03_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
+ TARGET_NAMING (f03_ex_${example}-shared SHARED)
+ TARGET_FORTRAN_PROPERTIES (f03_ex_${example}-shared SHARED " " " ")
+ target_link_libraries (f03_ex_${example}-shared
+ ${HDF5_F90_LIBSH_TARGET}
+ ${HDF5_LIBSH_TARGET}
)
- target_include_directories (f03_ex_${example} PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
- set_target_properties (f03_ex_${example} PROPERTIES
+ target_include_directories (f03_ex_${example}-shared PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
+ set_target_properties (f03_ex_${example}-shared PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER examples/fortran03
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
)
- if (BUILD_SHARED_LIBS)
- add_executable (f03_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
- TARGET_NAMING (f03_ex_${example}-shared SHARED)
- TARGET_FORTRAN_PROPERTIES (f03_ex_${example}-shared SHARED " " " ")
- target_link_libraries (f03_ex_${example}-shared
- ${HDF5_F90_LIBSH_TARGET}
- ${HDF5_LIBSH_TARGET}
- )
- target_include_directories (f03_ex_${example}-shared PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
- set_target_properties (f03_ex_${example}-shared PROPERTIES
- LINKER_LANGUAGE Fortran
- FOLDER examples/fortran03
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
- )
- endif (BUILD_SHARED_LIBS)
- endforeach (example ${F2003_examples})
-endif (HDF5_ENABLE_F2003)
+ endif (BUILD_SHARED_LIBS)
+endforeach (example ${F2003_examples})
if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
add_executable (f90_ex_ph5example ${HDF5_F90_EXAMPLES_SOURCE_DIR}/ph5example.f90)
diff --git a/fortran/examples/Makefile.am b/fortran/examples/Makefile.am
index caaa08c..cdd9317 100644
--- a/fortran/examples/Makefile.am
+++ b/fortran/examples/Makefile.am
@@ -46,12 +46,10 @@ INSTALL_FILES=h5_crtdat.f90 h5_rdwt.f90 \
# Add attention tests for Fortran 2003 features
-if FORTRAN_2003_CONDITIONAL_F
- EXAMPLE_PROG += rwdset_fortran2003 nested_derived_type \
- compound_fortran2003 compound_complex_fortran2003
- INSTALL_FILES += rwdset_fortran2003.f90 nested_derived_type.f90 \
- compound_fortran2003.f90 compound_complex_fortran2003.f90
-endif
+EXAMPLE_PROG += rwdset_fortran2003 nested_derived_type \
+ compound_fortran2003 compound_complex_fortran2003
+INSTALL_FILES += rwdset_fortran2003.f90 nested_derived_type.f90 \
+ compound_fortran2003.f90 compound_complex_fortran2003.f90
TEST_SCRIPT=testh5fc.sh
TEST_EXAMPLES_SCRIPT=$(INSTALL_SCRIPT_FILES)
@@ -103,12 +101,10 @@ refregexample: refregexample.f90
mountexample: mountexample.f90
compound: compound.f90
ph5example: ph5example.f90
-if FORTRAN_2003_CONDITIONAL_F
rwdset_fortran2003: rwdset_fortran2003.f90
nested_derived_type: nested_derived_type.f90
compound_fortran2003: compound_fortran2003.f90
compound_complex_fortran2003: compound_complex_fortran2003.f90
-endif
include $(top_srcdir)/config/examples.am
include $(top_srcdir)/config/conclude.am
diff --git a/fortran/examples/Makefile.in b/fortran/examples/Makefile.in
index c894b75..f97fdc8 100644
--- a/fortran/examples/Makefile.in
+++ b/fortran/examples/Makefile.in
@@ -104,14 +104,6 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
$(srcdir)/Makefile.am $(top_srcdir)/bin/mkinstalldirs \
$(srcdir)/run-fortran-ex.sh.in $(srcdir)/testh5fc.sh.in \
$(top_srcdir)/bin/test-driver
-
-# Add attention tests for Fortran 2003 features
-@FORTRAN_2003_CONDITIONAL_F_TRUE@am__append_1 = rwdset_fortran2003 nested_derived_type \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ compound_fortran2003 compound_complex_fortran2003
-
-@FORTRAN_2003_CONDITIONAL_F_TRUE@am__append_2 = rwdset_fortran2003.f90 nested_derived_type.f90 \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ compound_fortran2003.f90 compound_complex_fortran2003.f90
-
TESTS = $(TEST_SCRIPT)
subdir = fortran/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -120,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-fortran-ex.sh testh5fc.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -404,14 +397,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -421,13 +421,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -469,6 +468,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
@@ -619,17 +630,21 @@ INSTALL_SCRIPT_FILES = run-fortran-ex.sh
# be run.
# We don't tell automake about these programs so that it doesn't try to
# compile them with the regular fortran compiler.
+
+# Add attention tests for Fortran 2003 features
EXAMPLE_PROG = h5_crtdat h5_rdwt h5_crtatt h5_crtgrp h5_crtgrpar \
h5_crtgrpd h5_extend h5_subset h5_cmprss hyperslab selectele \
refobjexample refregexample mountexample compound \
- $(am__append_1)
+ rwdset_fortran2003 nested_derived_type compound_fortran2003 \
+ compound_complex_fortran2003
# List files to be installed here
INSTALL_FILES = h5_crtdat.f90 h5_rdwt.f90 h5_crtatt.f90 h5_crtgrp.f90 \
h5_crtgrpar.f90 h5_crtgrpd.f90 h5_extend.f90 h5_subset.f90 \
h5_cmprss.f90 hyperslab.f90 selectele.f90 refobjexample.f90 \
refregexample.f90 mountexample.f90 compound.f90 ph5example.f90 \
- $(am__append_2)
+ rwdset_fortran2003.f90 nested_derived_type.f90 \
+ compound_fortran2003.f90 compound_complex_fortran2003.f90
TEST_SCRIPT = testh5fc.sh
TEST_EXAMPLES_SCRIPT = $(INSTALL_SCRIPT_FILES)
@@ -1067,10 +1082,10 @@ refregexample: refregexample.f90
mountexample: mountexample.f90
compound: compound.f90
ph5example: ph5example.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@rwdset_fortran2003: rwdset_fortran2003.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@nested_derived_type: nested_derived_type.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@compound_fortran2003: compound_fortran2003.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@compound_complex_fortran2003: compound_complex_fortran2003.f90
+rwdset_fortran2003: rwdset_fortran2003.f90
+nested_derived_type: nested_derived_type.f90
+compound_fortran2003: compound_fortran2003.f90
+compound_complex_fortran2003: compound_complex_fortran2003.f90
# How to create EXAMPLEDIR if it doesn't already exist
$(EXAMPLEDIR):
diff --git a/fortran/examples/nested_derived_type.f90 b/fortran/examples/nested_derived_type.f90
index f806110..65e7e75 100644
--- a/fortran/examples/nested_derived_type.f90
+++ b/fortran/examples/nested_derived_type.f90
@@ -23,13 +23,13 @@ PROGRAM main
IMPLICIT NONE
! KIND parameters
- INTEGER, PARAMETER :: int_k1 = SELECTED_INT_KIND(Fortran_INTEGER_1) ! This should map to INTEGER*1 on most modern processors
- INTEGER, PARAMETER :: int_k4 = SELECTED_INT_KIND(Fortran_INTEGER_2) ! This should map to INTEGER*2 on most modern processors
- INTEGER, PARAMETER :: int_k8 = SELECTED_INT_KIND(Fortran_INTEGER_4) ! This should map to INTEGER*4 on most modern processors
- INTEGER, PARAMETER :: int_k16 = SELECTED_INT_KIND(Fortran_INTEGER_8) ! This should map to INTEGER*8 on most modern processors
+ INTEGER, PARAMETER :: int_k1 = SELECTED_INT_KIND(2) ! This should map to INTEGER*1 on most modern processors
+ INTEGER, PARAMETER :: int_k4 = SELECTED_INT_KIND(4) ! This should map to INTEGER*2 on most modern processors
+ INTEGER, PARAMETER :: int_k8 = SELECTED_INT_KIND(9) ! This should map to INTEGER*4 on most modern processors
+ INTEGER, PARAMETER :: int_k16 = SELECTED_INT_KIND(18) ! This should map to INTEGER*8 on most modern processors
- INTEGER, PARAMETER :: r_k4 = SELECTED_REAL_KIND(Fortran_REAL_4) ! This should map to REAL*4 on most modern processors
- INTEGER, PARAMETER :: r_k8 = SELECTED_REAL_KIND(Fortran_REAL_8) ! This should map to REAL*8 on most modern processors
+ INTEGER, PARAMETER :: r_k4 = SELECTED_REAL_KIND(6,37) ! This should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: r_k8 = SELECTED_REAL_KIND(15,307) ! This should map to REAL*8 on most modern processors
! FILES
diff --git a/fortran/examples/rwdset_fortran2003.f90 b/fortran/examples/rwdset_fortran2003.f90
index d65db9e..682676f 100644
--- a/fortran/examples/rwdset_fortran2003.f90
+++ b/fortran/examples/rwdset_fortran2003.f90
@@ -28,13 +28,13 @@ PROGRAM RWDSET_FORTRAN2003
IMPLICIT NONE
- INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(Fortran_INTEGER_1) !should map to INTEGER*1 on most modern processors
- INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(Fortran_INTEGER_2) !should map to INTEGER*2 on most modern processors
- INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(Fortran_INTEGER_4) !should map to INTEGER*4 on most modern processors
- INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(Fortran_INTEGER_8) !should map to INTEGER*8 on most modern processors
+ INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(2) !should map to INTEGER*1 on most modern processors
+ INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(4) !should map to INTEGER*2 on most modern processors
+ INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
+ INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
- INTEGER, PARAMETER :: real_kind_7 = SELECTED_REAL_KIND(Fortran_REAL_4) !should map to REAL*4 on most modern processors
- INTEGER, PARAMETER :: real_kind_15 = SELECTED_REAL_KIND(Fortran_REAL_8) !should map to REAL*8 on most modern processors
+ INTEGER, PARAMETER :: real_kind_7 = SELECTED_REAL_KIND(6,37) !should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: real_kind_15 = SELECTED_REAL_KIND(15,307) !should map to REAL*8 on most modern processors
CHARACTER(LEN=8), PARAMETER :: filename = "dsetf.h5" ! File name
CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
@@ -148,12 +148,12 @@ PROGRAM RWDSET_FORTRAN2003
CALL h5dread_f(dset_idr8, h5kind_to_type(real_kind_15,H5_REAL_KIND), f_ptr, error)
! memory type
- WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(Fortran_INTEGER_1): ',data_out_i8a
- WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(Fortran_INTEGER_4): ',data_out_i4
- WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(Fortran_INTEGER_8): ',data_out_i8
- WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(Fortran_INTEGER_16): ',data_out_i16
- WRITE(*,'(A,4(1x,f9.4))' )'SELECTED_REAL_KIND(Fortran_REAL_7): ',data_out_r7
- WRITE(*,'(A,4(1x,f16.10))' )'SELECTED_REAL_KIND(Fortran_REAL_15): ',data_out_r15
+ WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(2): ',data_out_i8a
+ WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(4): ',data_out_i4
+ WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(9): ',data_out_i8
+ WRITE(*,'(A,4i8)' )'SELECTED_INT_KIND(18): ',data_out_i16
+ WRITE(*,'(A,4(1x,f9.4))' )'SELECTED_REAL_KIND(6,37): ',data_out_r7
+ WRITE(*,'(A,4(1x,f16.10))' )'SELECTED_REAL_KIND(15,307): ',data_out_r15
!
! Close the dataset.
!
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
index bb171d4..8f63b3c 100644
--- a/fortran/src/CMakeLists.txt
+++ b/fortran/src/CMakeLists.txt
@@ -19,100 +19,47 @@ if (WIN32)
endif (BUILD_SHARED_LIBS)
endif (WIN32)
+# configure for Fortran preprocessor
+
+# Define Parallel variable for passing to H5config_f.inc.cmake
+set (CMAKE_H5_HAVE_PARALLEL 0)
+if (H5_HAVE_PARALLEL)
+ set (CMAKE_H5_HAVE_PARALLEL 1)
+endif (H5_HAVE_PARALLEL)
+
+set (CMAKE_H5_HAVE_FLOAT128 0)
+if (HAVE_FLOAT128)
+ set (CMAKE_H5_HAVE_FLOAT128 1)
+endif(HAVE_FLOAT128)
+
+configure_file (${HDF5_F90_SRC_SOURCE_DIR}/H5config_f.inc.cmake ${CMAKE_BINARY_DIR}/H5config_f.inc @ONLY)
+configure_file (${HDF5_F90_SRC_SOURCE_DIR}/H5fort_type_defines.h.in ${HDF5_F90_BINARY_DIR}/H5fort_type_defines.h @ONLY)
+
#-----------------------------------------------------------------------------
# Setup the Fortran auto-detection utilities
-# H5test_kind(_SIZEOF,_STORAGE_SIZE).f90 used to generate H5fortran_detect.f90
-# H5fortran_detect.f90 used to generate H5fort_type_defines.h
-# H5fort_type_defines.h used to generate H5f90i_gen.h + H5fortran_types.f90
+# H5_buildiface.F90 used to generate various KIND interfaces
+# H5fort_type_defines.h used to generate H5f90i_gen.h + H5fortran_types.F90
#-----------------------------------------------------------------------------
-if (FORTRAN_HAVE_STORAGE_SIZE)
- add_executable (H5test_FortranHavekind
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind_STORAGE_SIZE.f90
- )
- if (BUILD_SHARED_LIBS)
- add_executable (H5test_FortranHavekind-shared
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind_STORAGE_SIZE.f90
- )
- endif (BUILD_SHARED_LIBS)
- set (H5_TEST_KIND_NAME "h5test_kind_storage_size_mod")
-else (FORTRAN_HAVE_STORAGE_SIZE)
- if (FORTRAN_HAVE_SIZEOF)
- add_executable (H5test_FortranHavekind
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind_SIZEOF.f90
- )
- if (BUILD_SHARED_LIBS)
- add_executable (H5test_FortranHavekind-shared
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind_SIZEOF.f90
- )
- endif (BUILD_SHARED_LIBS)
- set (H5_TEST_KIND_NAME "h5test_kind_sizeof_mod")
- else (FORTRAN_HAVE_SIZEOF)
- add_executable (H5test_FortranHavekind
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind.f90
- )
- if (BUILD_SHARED_LIBS)
- add_executable (H5test_FortranHavekind-shared
- ${HDF5_F90_SRC_SOURCE_DIR}/H5test_kind.f90
- )
- endif (BUILD_SHARED_LIBS)
- endif (FORTRAN_HAVE_SIZEOF)
-endif (FORTRAN_HAVE_STORAGE_SIZE)
-if (WIN32 AND MSVC)
- if (BUILD_SHARED_LIBS)
- set_target_properties (H5test_FortranHavekind-shared
- PROPERTIES
- COMPILE_FLAGS "/MT"
- )
- endif (BUILD_SHARED_LIBS)
- set_target_properties (H5test_FortranHavekind
- PROPERTIES
- LINK_FLAGS "/SUBSYSTEM:CONSOLE"
- )
-endif (WIN32 AND MSVC)
-set_target_properties (H5test_FortranHavekind PROPERTIES
- LINKER_LANGUAGE Fortran
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
-)
-if (BUILD_SHARED_LIBS)
- set_target_properties (H5test_FortranHavekind-shared PROPERTIES
- LINKER_LANGUAGE Fortran
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
+
+add_executable (H5_buildiface
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5_buildiface.F90
)
-endif (BUILD_SHARED_LIBS)
-set (CMD $<TARGET_FILE:H5test_FortranHavekind>)
-add_custom_command (
- OUTPUT ${HDF5_F90_BINARY_DIR}/H5fortran_detect.f90
- COMMAND ${CMD}
- ARGS > ${HDF5_F90_BINARY_DIR}/H5fortran_detect.f90
- WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}
- DEPENDS H5test_FortranHavekind
-)
-#-----------------------------------------------------------------------------
-add_executable (H5fortran_detect
- ${HDF5_F90_BINARY_DIR}/H5fortran_detect.f90
-)
if (WIN32 AND MSVC)
if (BUILD_SHARED_LIBS)
- set_target_properties (H5fortran_detect
+ set_target_properties (H5_buildiface
PROPERTIES
COMPILE_FLAGS "/MT"
)
endif (BUILD_SHARED_LIBS)
- set_target_properties (H5fortran_detect
+ set_target_properties (H5_buildiface
PROPERTIES
LINK_FLAGS "/SUBSYSTEM:CONSOLE"
)
endif (WIN32 AND MSVC)
-set_target_properties (H5fortran_detect PROPERTIES LINKER_LANGUAGE Fortran)
-
-set (CMD $<TARGET_FILE:H5fortran_detect>)
-add_custom_command (
- OUTPUT ${HDF5_F90_BINARY_DIR}/H5fort_type_defines.h
- COMMAND ${CMD}
- ARGS > ${HDF5_F90_BINARY_DIR}/H5fort_type_defines.h
- WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}
- DEPENDS H5fortran_detect
+set_target_properties (H5_buildiface PROPERTIES
+ LINKER_LANGUAGE Fortran
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
)
INCLUDE_DIRECTORIES (${HDF5_F90_BINARY_DIR} ${CMAKE_Fortran_MODULE_DIRECTORY})
@@ -124,7 +71,7 @@ add_executable (H5match_types
set (CMD $<TARGET_FILE:H5match_types>)
add_custom_command (
OUTPUT ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h
- ${HDF5_F90_BINARY_DIR}/H5fortran_types.f90
+ ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90
COMMAND ${CMD}
WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}
DEPENDS H5match_types
@@ -152,12 +99,6 @@ set (f90CStub_C_SRCS
${HDF5_F90_SRC_SOURCE_DIR}/H5Zf.c
)
-if (H5_HAVE_PARALLEL)
- set (f90CStub_C_SRCS
- ${f90CStub_C_SRCS}
- ${HDF5_F90_SRC_SOURCE_DIR}/H5FDmpiof.c
- )
-endif (H5_HAVE_PARALLEL)
set_source_files_properties (${f90CStub_C_SRCS} PROPERTIES LANGUAGE C)
set (f90CStub_C_HDRS
@@ -193,79 +134,51 @@ if (BUILD_SHARED_LIBS)
set (install_targets ${install_targets} ${HDF5_F90_C_LIBSH_TARGET})
endif (BUILD_SHARED_LIBS)
-#-----------------------------------------------------------------------------
-# Fortran 2003 standard
-#-----------------------------------------------------------------------------
-if (HDF5_ENABLE_F2003)
- # F2003 features are enabled
- set (F_STATUS "_F03")
-else (HDF5_ENABLE_F2003)
- # F2003 features are not enabled
- set (F_STATUS "_F90")
-endif (HDF5_ENABLE_F2003)
-
-#-----------------------------------------------------------------------------
-# Fortran Real Size
-#-----------------------------------------------------------------------------
-if (FORTRAN_DEFAULT_REAL_NOT_DOUBLE)
- # default real is 4 bytes, so include double signatures
- set (F_DBLE "Include")
-else (FORTRAN_DEFAULT_REAL_NOT_DOUBLE)
- # default real is 8 bytes, so exclude double signatures
- set (F_DBLE "Exclude")
-endif (FORTRAN_DEFAULT_REAL_NOT_DOUBLE)
+set_source_files_properties (${HDF5_F90_BINARY_DIR}/H5_gen.F90 PROPERTIES GENERATED TRUE)
#-----------------------------------------------------------------------------
# Fortran Modules
#-----------------------------------------------------------------------------
-set (f90_F_SRCS
+set (f90_F_BASE_SRCS
# generated files
- ${HDF5_F90_BINARY_DIR}/H5fortran_types.f90
+ ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90
# normal distribution
- ${HDF5_F90_SRC_SOURCE_DIR}/H5f90global.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5_ff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5_ff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Aff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Dff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Eff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Fff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Gff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Iff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Lff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Off.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Pff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Rff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Sff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Tff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Zff.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Aff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Dff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Eff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Fff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Lff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Off${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Pff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Rff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5Tff${F_STATUS}.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5_DBLE_Interface${F_DBLE}.f90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5f90global.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5_ff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Aff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Dff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Eff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Fff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Gff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Iff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Lff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Off.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Pff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Rff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Sff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Tff.F90
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5Zff.F90
+)
+
+set (f90_F_SRCS
+ ${f90_F_BASE_SRCS}
+
+ # generated file
+ ${HDF5_F90_BINARY_DIR}/H5_gen.F90
+
+ # normal distribution
+ ${HDF5_F90_SRC_SOURCE_DIR}/HDF5.F90
+)
+
+set (CMD $<TARGET_FILE:H5_buildiface>)
+add_custom_target (H5gen ALL
+ COMMAND ${CMD}
+#v3.2 BYPRODUCT ${HDF5_F90_BINARY_DIR}/H5_gen.F90
+ WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}
+ DEPENDS ${f90_F_BASE_SRCS}
)
-#-----------------------------------------------------------------------------
-# Add H5FDMPIO if parallel
-#-----------------------------------------------------------------------------
-if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
- set (f90_F_SRCS
- ${f90_F_SRCS}
- ${HDF5_F90_SRC_SOURCE_DIR}/HDF5mpio.f90
- ${HDF5_F90_SRC_SOURCE_DIR}/H5FDmpioff.f90
- )
-else (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
- set (f90_F_SRCS
- ${f90_F_SRCS}
- ${HDF5_F90_SRC_SOURCE_DIR}/HDF5.f90
- )
-endif (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
set_source_files_properties (${f90_F_SRCS} PROPERTIES LANGUAGE Fortran)
#-----------------------------------------------------------------------------
@@ -326,15 +239,15 @@ endif (BUILD_SHARED_LIBS)
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
install (
- FILES
- ${HDF5_F90_SRC_SOURCE_DIR}/H5f90.h
- ${HDF5_F90_SRC_SOURCE_DIR}/H5f90i.h
- ${HDF5_F90_SRC_SOURCE_DIR}/H5f90proto.h
+ FILES
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5f90.h
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5f90i.h
+ ${HDF5_F90_SRC_SOURCE_DIR}/H5f90proto.h
${HDF5_F90_BINARY_DIR}/H5f90i_gen.h
- ${HDF5_F90_BINARY_DIR}/H5fortran_types.f90
- DESTINATION
+ ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90
+ DESTINATION
${HDF5_INSTALL_INCLUDE_DIR}
- COMPONENT
+ COMPONENT
fortheaders
)
@@ -370,17 +283,7 @@ set (mod_files
${MOD_BUILD_DIR}/h5s.mod
${MOD_BUILD_DIR}/h5t.mod
${MOD_BUILD_DIR}/h5z.mod
- ${MOD_BUILD_DIR}/h5a_provisional.mod
- ${MOD_BUILD_DIR}/h5d_provisional.mod
- ${MOD_BUILD_DIR}/h5e_provisional.mod
- ${MOD_BUILD_DIR}/h5f_provisional.mod
- ${MOD_BUILD_DIR}/h5l_provisional.mod
- ${MOD_BUILD_DIR}/h5lib_provisional.mod
- ${MOD_BUILD_DIR}/h5o_provisional.mod
- ${MOD_BUILD_DIR}/h5p_provisional.mod
- ${MOD_BUILD_DIR}/h5r_provisional.mod
- ${MOD_BUILD_DIR}/h5t_provisional.mod
- ${MOD_BUILD_DIR}/h5_dble_interface.mod
+ ${MOD_BUILD_DIR}/h5_gen.mod
)
install (
FILES
diff --git a/fortran/src/H5Af.c b/fortran/src/H5Af.c
index bc2e9f1..8f012cf 100644
--- a/fortran/src/H5Af.c
+++ b/fortran/src/H5Af.c
@@ -1,6 +1,6 @@
/****h* H5Af/H5Af
* PURPOSE
- * This file contains C stubs for H5A Fortran APIs
+ * This file contains C stubs for H5A Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,29 +26,29 @@
/****if* H5Af/h5acreate_c
* NAME
- * h5acreate_c
+ * h5acreate_c
* PURPOSE
- * Call H5Acreate2 to create an attribute
+ * Call H5Acreate2 to create an attribute
* INPUTS
- * obj_id - object identifier
- * name - name of the attribute
- * namelen - name length
- * type_id - datatype identifier
- * space_id - dataspace identifier
- * crt_pr - identifier of creation property list
+ * obj_id - object identifier
+ * name - name of the attribute
+ * namelen - name length
+ * type_id - datatype identifier
+ * space_id - dataspace identifier
+ * crt_pr - identifier of creation property list
* OUTPUTS
- * attr_id - attribute identifier
+ * attr_id - attribute identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 12, 1999
+ * Thursday, August 12, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5acreate_c(hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *type_id,
+h5acreate_c(hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *type_id,
hid_t_f *space_id, hid_t_f *crt_prp, hid_t_f *aapl, hid_t_f *attr_id)
/*******/
{
@@ -73,894 +73,26 @@ done:
return ret_value;
}
-/****if* H5Af/h5aopen_name_c
- * NAME
- * h5aopen_name_c
- * PURPOSE
- * Call H5Aopen to open an attribute
- * INPUTS
- * obj_id - object identifier
- * name - name of the attribute
- * namelen - name length
- * OUTPUTS
- * attr_id - dataset identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5aopen_name_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_id)
-/*******/
-{
- char *c_name = NULL; /* Buffer to hold C string */
- int_f ret_value = 0; /* Return value */
-
- /*
- * Convert FORTRAN name to C name
- */
- if((c_name = HD5f2cstring(name, (size_t)*namelen)) == NULL)
- HGOTO_DONE(FAIL);
-
- /*
- * Call H5Aopen function.
- */
- if((*attr_id = (hid_t_f)H5Aopen((hid_t)*obj_id, c_name, H5P_DEFAULT)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- if(c_name)
- HDfree(c_name);
- return ret_value;
-}
-
-/****if* H5Af/h5awritec_c
- * NAME
- * h5awritec_c
- * PURPOSE
- * Call h5awrite_c to write a character attribute
- * INPUTS
- * attr_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * buf - character data buffer
- * dims - array to store dimensions sizes of buf; used only
- * by Fortran routine.
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday , August 12, 1999
- * HISTORY
- * dims paramete added.
- * April 4, 2001
- * SOURCE
-*/
-int_f
-nh5awritec_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-int_f
-nh5awritec_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5awritec_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-
-
-/****if* H5Af/h5awrite_c
- * NAME
- * h5awrite_c
- * PURPOSE
- * Call H5Awrite to write a attribute
- * INPUTS
- * attr_id - attribute identifier
- * mem_type_id - memory datatype identifier
- * buf - data buffer
- * dims - array to store dimensions sizes of buf; used only
- * by Fortran routine.
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- * dims parameter added
- * April 4, 2001
- * Added nh5awrite_integer(real,double)_s,1-7 functions to eliminate
- * complains about wrong parameters types in h5awrite_c function
- * called by Fortran routines.
- * October 9, 2006 EIP
- * SOURCE
-*/
-int_f
-nh5awrite_integer_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_integer_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_real_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_double_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- /*
- * Call h5awrite_c function.
- */
- return nh5awrite_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5awrite_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED *dims)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- /*
- * Call H5Awrite function.
- */
- if (H5Awrite((hid_t)*attr_id, (hid_t)*mem_type_id, buf) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
-
-/****if* H5Af/h5areadc_c
- * NAME
- * h5areadc_c
- * PURPOSE
- * Call h5aread_c to read character attribute
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * dims - array to store dimensions sizes of buf; used only
- * by Fortran routine.
- * OUTPUTS
- * buf - character data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- * dims parameter added.
- * April 4, 2001
- * Added nh5areadc_s,1-7 functions to eliminate
- * complains about wrong parameters types in h5awrite_c function
- * called by Fortran routines.
- * October 9, 2006 EIP
- * SOURCE
-*/
-int_f
-nh5areadc_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-int_f
-nh5areadc_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-int_f
-nh5areadc_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-int_f
-nh5areadc_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, _fcdtocp(buf), dims);
-}
-
-
-
-/****if* H5Af/h5aread_c
- * NAME
- * h5aread_c
- * PURPOSE
- * Call H5Aread to read an attribute
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * dims - array to store dimensions sizes of buf; used only
- * by Fortran routine.
- * OUTPUTS
- * buf - data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- * dims paramete added.
- * April 4, 2001
- * Added nh5aread_integer(real,double)_s,1-7 functions to eliminate
- * complains about wrong parameters types in h5awrite_c function
- * called by Fortran routines.
- * October 9, 2006 EIP
- * SOURCE
-*/
-int_f
-nh5aread_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- /*
- * Call H5Aread function.
- */
- if (H5Aread((hid_t)*attr_id, (hid_t)*mem_type_id, buf) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
-int_f
-nh5aread_integer_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_integer_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_real_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-int_f
-nh5aread_double_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void H5_ATTR_UNUSED * dims)
-/******/
-{
- /*
- * Call h5aread_c function.
- */
- return nh5aread_c(attr_id, mem_type_id, buf, dims);
-}
-
-
-/****if* H5Af/h5aclose_c
- * NAME
- * h5aclose_c
- * PURPOSE
- * Call H5Aclose to close an attribute
- * INPUTS
- * attr_id - identifier of an attribute to be closed
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- *
- * SOURCE
-*/
-
-int_f
-nh5aclose_c ( hid_t_f *attr_id )
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- if (H5Aclose((hid_t)*attr_id) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
/****if* H5Af/h5adelete_c
* NAME
- * h5adelete_c
+ * h5adelete_c
* PURPOSE
- * Call H5Adelete to delete an attribute
+ * Call H5Adelete to delete an attribute
* INPUTS
- * obj_id - object identifier
- * name - name of the attribute
- * namelen - name length
+ * obj_id - object identifier
+ * name - name of the attribute
+ * namelen - name length
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 12, 1999
+ * Thursday, August 12, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5adelete_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen)
+h5adelete_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen)
/******/
{
char *c_name = NULL; /* Buffer to hold C string */
@@ -985,131 +117,26 @@ done:
return ret_value;
}
-
-/****if* H5Af/h5aopen_idx_c
- * NAME
- * h5aopen_idx_c
- * PURPOSE
- * Call H5Aopen_by_idx to open an attribute
- * INPUTS
- * obj_id - object identifier
- * idx - attribute index ( zero based)
- * OUTPUTS
- * attr_id - attribute identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5aopen_idx_c (hid_t_f *obj_id, int_f *idx, hid_t_f *attr_id)
-/******/
-{
- int_f ret_value = 0; /* Return value */
-
- /*
- * Call H5Aopen_by_idx function.
- */
- if((*attr_id = (hid_t_f)H5Aopen_by_idx((hid_t)*obj_id, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)*idx, H5P_DEFAULT, H5P_DEFAULT)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
-
-/****if* H5Af/h5aget_space_c
- * NAME
- * h5aget_space_c
- * PURPOSE
- * Call H5Aget_space to get attribute's dataspace
- * INPUTS
- * attr_id - attribute identifier
- * OUTPUTS
- * space_id - dataspace identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5aget_space_c (hid_t_f *attr_id, hid_t_f *space_id)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- /*
- * Call H5Aget_space function.
- */
- if ((*space_id = (hid_t_f)H5Aget_space((hid_t)*attr_id)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
-/****if* H5Af/h5aget_type_c
- * NAME
- * h5aget_type_c
- * PURPOSE
- * Call H5Aget_space to get attribute's datatype
- * INPUTS
- * attr_id - attribute identifier
- * OUTPUTS
- * type_id - datatype identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, August 12, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5aget_type_c (hid_t_f *attr_id, hid_t_f *type_id)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- /*
- * Call H5Aget_type function.
- */
- if ((*type_id = (hid_t_f)H5Aget_type((hid_t)*attr_id)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
/****if* H5Af/h5aget_num_attrs_c
* NAME
- * h5aget_num_attrs_c
+ * h5aget_num_attrs_c
* PURPOSE
- * Call H5Oget_info to determine number of
- * attributes of an object
+ * Call H5Oget_info to determine number of
+ * attributes of an object
* INPUTS
- * obj_id - object identifier
- * attr_num - number of attributes
+ * obj_id - object identifier
+ * attr_num - number of attributes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 12, 1999
+ * Thursday, August 12, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5aget_num_attrs_c (hid_t_f *obj_id, int_f *attr_num)
+h5aget_num_attrs_c (hid_t_f *obj_id, int_f *attr_num)
/******/
{
H5O_info_t oinfo; /* Object info */
@@ -1130,25 +157,25 @@ done:
/****if* H5Af/h5aget_name_c
* NAME
- * h5aget_name_c
+ * h5aget_name_c
* PURPOSE
- * Call H5Aget_name to get attribute's name
+ * Call H5Aget_name to get attribute's name
* INPUTS
- * attr_id - attribute identifier
- * bufsize - size of the buffer
+ * attr_id - attribute identifier
+ * bufsize - size of the buffer
* OUTPUTS
- * buf - buffer to hold the name
+ * buf - buffer to hold the name
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 12, 1999
+ * Thursday, August 12, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5aget_name_c(hid_t_f *attr_id, size_t_f *bufsize, _fcd buf)
+h5aget_name_c(hid_t_f *attr_id, size_t_f *bufsize, _fcd buf)
/******/
{
size_t c_bufsize;
@@ -1179,99 +206,36 @@ done:
return ret_value;
}
-/****if* H5Af/h5aget_storage_size_c
- * NAME
- * h5aget_storage_size_c
- * PURPOSE
- * Call H5Aget_storage_size
- * INPUTS
- * attr_id - identifier of an attribute
- * OUTPUTS
- * size - attributes storage requirements
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * M. Scot Breitenfeld
- * January, 2008
- * HISTORY
- * N/A
- * SOURCE
-*/
-
-int_f
-nh5aget_storage_size_c ( hid_t_f *attr_id, hsize_t_f *size)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- if ((*size = (hsize_t_f)H5Aget_storage_size((hid_t)*attr_id)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
-
-/****if* H5Af/h5aget_create_plist_c
- * NAME
- * h5aget_create_plist_c
- * PURPOSE
- * Call H5Aget_create_plist
- * INPUTS
- * attr_id - identifier of an attribute
- * OUTPUTS
- * creation_prop_id - Identifier for the attribute’s creation property
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * M. Scot Breitenfeld
- * January, 2008
- * HISTORY
- * N/A
- * SOURCE
-*/
-
-int_f
-nh5aget_create_plist_c ( hid_t_f *attr_id, hid_t_f *creation_prop_id)
-/******/
-{
- int_f ret_value=0; /* Return value */
-
- if ((*creation_prop_id = (hid_t_f)H5Aget_create_plist((hid_t)*attr_id)) < 0)
- HGOTO_DONE(FAIL);
-
-done:
- return ret_value;
-}
/****if* H5Af/h5arename_by_name_c
* NAME
- * h5arename_by_name_c
+ * h5arename_by_name_c
* PURPOSE
- * Calls H5Arename_by_name
+ * Calls H5Arename_by_name
* INPUTS
- * loc_id - Object identifier
- * obj_name - Name of object, relative to location,
- * whose attribute is to be renamed
- * obj_name_len - Object name length
- * old_attr_name - Prior attribute name
- * old_attr_name_len - Prior attribute name length
- * new_attr_name - New attribute name
- * new_attr_name_len - New attribute name length
- * lapl_id - Link access property list identifier
+ * loc_id - Object identifier
+ * obj_name - Name of object, relative to location,
+ * whose attribute is to be renamed
+ * obj_name_len - Object name length
+ * old_attr_name - Prior attribute name
+ * old_attr_name_len - Prior attribute name length
+ * new_attr_name - New attribute name
+ * new_attr_name_len - New attribute name length
+ * lapl_id - Link access property list identifier
* OUTPUTS
* N/A
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5arename_by_name_c( hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5arename_by_name_c( hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd old_attr_name, size_t_f *old_attr_namelen,
_fcd new_attr_name, size_t_f *new_attr_namelen,
hid_t_f *lapl_id )
@@ -1306,27 +270,27 @@ done:
/****if* H5Af/h5aopen_c
* NAME
- * h5aopen_c
+ * h5aopen_c
* PURPOSE
- * Call H5Aopen to open an attribute
+ * Call H5Aopen to open an attribute
* INPUTS
- * obj_id - Identifer for object to which attribute is attached
+ * obj_id - Identifer for object to which attribute is attached
* attr_name - Attribute access property list
- * attr_namelen - size of attr_name
- * aapl_id - Link access property list
+ * attr_namelen - size of attr_name
+ * aapl_id - Link access property list
* OUTPUTS
- * attr_id - dataset identifier
+ * attr_id - dataset identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5aopen_c (hid_t_f *obj_id, _fcd attr_name, size_t_f *attr_namelen, hid_t_f *aapl_id, hid_t_f *attr_id)
+h5aopen_c (hid_t_f *obj_id, _fcd attr_name, size_t_f *attr_namelen, hid_t_f *aapl_id, hid_t_f *attr_id)
/******/
{
char *c_attr_name = NULL; /* Buffer to hold C string */
@@ -1351,30 +315,30 @@ done:
}
/****if* H5Af/h5adelete_by_name_c
* NAME
- * h5adelete_by_name_c
+ * h5adelete_by_name_c
* PURPOSE
- * Call h5adelete_by_name to remove an attribute from a specified location
+ * Call h5adelete_by_name to remove an attribute from a specified location
* INPUTS
- * loc_id - identifer for object to which attribute is attached
- * obj_name - object identifier
- * obj_namelen - name length
- * attr_name - name of the attribute
- * attr_namelen - name length
- * lapl_id - link access property list
+ * loc_id - identifer for object to which attribute is attached
+ * obj_name - object identifier
+ * obj_namelen - name length
+ * attr_name - name of the attribute
+ * attr_namelen - name length
+ * lapl_id - link access property list
*
* OUTPUTS
* N/A
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5adelete_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen, hid_t_f *lapl_id)
+h5adelete_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen, hid_t_f *lapl_id)
/******/
{
char *c_obj_name = NULL; /* Buffer to hold C string */
@@ -1404,30 +368,30 @@ done:
}
/****if* H5Af/h5adelete_by_idx_c
* NAME
- * h5adelete_by_idx_c
+ * h5adelete_by_idx_c
* PURPOSE
- * Call h5adelete_by_idx
+ * Call h5adelete_by_idx
* INPUTS
- * loc_id - Location or object identifier; may be dataset or group
- * obj_name - object identifier
- * obj_namelen - name length
- * attr_name - name of the attribute
- * attr_namelen - name length
- * lapl_id - link access property list
+ * loc_id - Location or object identifier; may be dataset or group
+ * obj_name - object identifier
+ * obj_namelen - name length
+ * attr_name - name of the attribute
+ * attr_namelen - name length
+ * lapl_id - link access property list
*
* OUTPUTS
* N/A
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5adelete_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5adelete_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id)
/******/
{
@@ -1454,50 +418,50 @@ done:
}
/****if* H5Af/h5aget_name_by_idx_c
* NAME
- * h5aget_name_by_idx_c
+ * h5aget_name_by_idx_c
* PURPOSE
- * Call h5aget_name_by_idx
+ * Call h5aget_name_by_idx
* INPUTS
*
*
- * loc_id - Identifer for object to which attribute is attached
- * obj_name - Name of object, relative to location,
- * from which attribute is to be removed *TEST* check NULL
- * idx_type - Type of index; Possible values are:
+ * loc_id - Identifer for object to which attribute is attached
+ * obj_name - Name of object, relative to location,
+ * from which attribute is to be removed *TEST* check NULL
+ * idx_type - Type of index; Possible values are:
* H5_INDEX_UNKNOWN - Unknown index type
* H5_INDEX_NAME - Index on names
* H5_INDEX_CRT_ORDER - Index on creation order
* H5_INDEX_N - Number of indices defined
*
- * order - Order in which to iterate over index; Possible values are:
+ * order - Order in which to iterate over index; Possible values are:
* H5_ITER_UNKNOWN - Unknown order
* H5_ITER_INC - Increasing order
* H5_ITER_DEC - Decreasing order
* H5_ITER_NATIVE - No particular order, whatever is fastest
* H5_ITER_N - Number of iteration orders
*
- * n - Attribute’s position in index
- * attr_id - Attribute identifier
- * size - Buffer size ! *TEST* check for 0 value *CHECK* should this return the correct value
+ * n - Attribute’s position in index
+ * attr_id - Attribute identifier
+ * size - Buffer size ! *TEST* check for 0 value *CHECK* should this return the correct value
*
- * lapl_id - Link access property list
- * hdferr - Error code:
- * Returns attribute name size, -1 if fail
+ * lapl_id - Link access property list
+ * hdferr - Error code:
+ * Returns attribute name size, -1 if fail
*
* OUTPUTS
- * name - Attribute name
+ * name - Attribute name
*
* RETURNS
- * Size of buffer on success, -1 on failure
+ * Size of buffer on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5aget_name_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5aget_name_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, _fcd name,
size_t_f *size, hid_t_f *lapl_id)
/******/
@@ -1545,42 +509,42 @@ done:
/****if* H5Af/h5aopen_by_idx_c
* NAME
- * h5aopen_by_idx_c
+ * h5aopen_by_idx_c
* PURPOSE
- * Call H5Aopen_by_idx
+ * Call H5Aopen_by_idx
* INPUTS
- * loc_id - Object identifier
- * obj_name - Name of object to which attribute is attached
- * obj_namelen - name length
- * idx_type - Type of index; Possible values are:
+ * loc_id - Object identifier
+ * obj_name - Name of object to which attribute is attached
+ * obj_namelen - name length
+ * idx_type - Type of index; Possible values are:
* H5_INDEX_UNKNOWN - Unknown index type
* H5_INDEX_NAME - Index on names
* H5_INDEX_CRT_ORDER - Index on creation order
* H5_INDEX_N - Number of indices defined
*
- * order - Order in which to iterate over index; Possible values are:
+ * order - Order in which to iterate over index; Possible values are:
* H5_ITER_UNKNOWN - Unknown order
* H5_ITER_INC - Increasing order
* H5_ITER_DEC - Decreasing order
* H5_ITER_NATIVE - No particular order, whatever is fastest
* H5_ITER_N - Number of iteration orders
*
- * n - Attribute’s position in index
- * aapl_id - Attribute access property list
- * lapl_id - Link access property list
+ * n - Attribute’s position in index
+ * aapl_id - Attribute access property list
+ * lapl_id - Link access property list
* OUTPUTS
- * attr_id - attribute identifer
+ * attr_id - attribute identifer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5aopen_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5aopen_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *aapl_id, hid_t_f *lapl_id, hid_t_f *attr_id )
/******/
{
@@ -1608,29 +572,29 @@ done:
/****if* H5Af/h5aget_info_c
* NAME
- * h5aget_info_c
+ * h5aget_info_c
* PURPOSE
- * Call H5Aget_info
+ * Call H5Aget_info
* INPUTS
- * loc_id - Object identifier
+ * loc_id - Object identifier
* OUTPUTS
*
- * corder_valid - Indicates whether the the creation order data is valid for this attribute
- * corder - Is a positive integer containing the creation order of the attribute
- * cset - Indicates the character set used for the attribute’s name
- * data_size - indicates the size, in the number of characters, of the attribute
+ * corder_valid - Indicates whether the the creation order data is valid for this attribute
+ * corder - Is a positive integer containing the creation order of the attribute
+ * cset - Indicates the character set used for the attribute’s name
+ * data_size - indicates the size, in the number of characters, of the attribute
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5aget_info_c (hid_t_f *loc_id, int_f *corder_valid, int_f *corder,
+h5aget_info_c (hid_t_f *loc_id, int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size )
/******/
{
@@ -1660,46 +624,46 @@ done:
/****if* H5Af/h5aget_info_by_idx_c
* NAME
- * h5aget_info_by_idx_c
+ * h5aget_info_by_idx_c
* PURPOSE
- * Call H5Aget_info_by_idx
+ * Call H5Aget_info_by_idx
* INPUTS
- * loc_id - Object identifier
- * obj_name - Name of object to which attribute is attached
- * obj_namelen - name length
- * idx_type - Type of index; Possible values are:
+ * loc_id - Object identifier
+ * obj_name - Name of object to which attribute is attached
+ * obj_namelen - name length
+ * idx_type - Type of index; Possible values are:
* H5_INDEX_UNKNOWN - Unknown index type
* H5_INDEX_NAME - Index on names
* H5_INDEX_CRT_ORDER - Index on creation order
* H5_INDEX_N - Number of indices defined
*
- * order - Order in which to iterate over index; Possible values are:
+ * order - Order in which to iterate over index; Possible values are:
* H5_ITER_UNKNOWN - Unknown order
* H5_ITER_INC - Increasing order
* H5_ITER_DEC - Decreasing order
* H5_ITER_NATIVE - No particular order, whatever is fastest
* H5_ITER_N - Number of iteration orders
*
- * n - Attribute’s position in index
- * lapl_id - Link access property list
+ * n - Attribute’s position in index
+ * lapl_id - Link access property list
* OUTPUTS
*
- * corder_valid - Indicates whether the the creation order data is valid for this attribute
- * corder - Is a positive integer containing the creation order of the attribute
- * cset - Indicates the character set used for the attribute’s name
- * data_size - indicates the size, in the number of characters, of the attribute
+ * corder_valid - Indicates whether the the creation order data is valid for this attribute
+ * corder - Is a positive integer containing the creation order of the attribute
+ * cset - Indicates the character set used for the attribute’s name
+ * data_size - indicates the size, in the number of characters, of the attribute
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5aget_info_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5aget_info_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id,
int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size )
@@ -1739,34 +703,34 @@ done:
/****if* H5Af/h5aget_info_by_name_c
* NAME
- * h5aget_info_by_name_c
+ * h5aget_info_by_name_c
* PURPOSE
- * Call H5Aget_info_by_name
+ * Call H5Aget_info_by_name
* INPUTS
- * loc_id - Object identifier
- * obj_name - Name of object to which attribute is attached
- * obj_namelen - name length
- * attr_name - Attribute name
- * attr_namelen - attribute name length
- * lapl_id - Link access property list
+ * loc_id - Object identifier
+ * obj_name - Name of object to which attribute is attached
+ * obj_namelen - name length
+ * attr_name - Attribute name
+ * attr_namelen - attribute name length
+ * lapl_id - Link access property list
* OUTPUTS
*
- * corder_valid - Indicates whether the the creation order data is valid for this attribute
- * corder - Is a positive integer containing the creation order of the attribute
- * cset - Indicates the character set used for the attribute’s name
- * data_size - indicates the size, in the number of characters, of the attribute
+ * corder_valid - Indicates whether the the creation order data is valid for this attribute
+ * corder - Is a positive integer containing the creation order of the attribute
+ * cset - Indicates the character set used for the attribute’s name
+ * data_size - indicates the size, in the number of characters, of the attribute
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5aget_info_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5aget_info_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd attr_name, size_t_f *attr_namelen, hid_t_f *lapl_id,
int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size )
@@ -1810,38 +774,38 @@ done:
/****if* H5Af/h5acreate_by_name_c
* NAME
- * h5acreate_by_name_c
+ * h5acreate_by_name_c
* PURPOSE
- * Call h5acreate_by_name
+ * Call h5acreate_by_name
* INPUTS
*
- * loc_id - Object identifier
- * obj_name - Name of object to which attribute is attached
- * obj_namelen - name length
- * attr_name - Attribute name
- * attr_namelen - attribute name length
- * type_id - Attribute datatype identifier
- * space_id - Attribute dataspace identifier
- * acpl_id - Attribute creation property list identifier (Currently not used.)
- * aapl_id - Attribute access property list identifier (Currently not used.)
- * lapl_id - Link access property list
+ * loc_id - Object identifier
+ * obj_name - Name of object to which attribute is attached
+ * obj_namelen - name length
+ * attr_name - Attribute name
+ * attr_namelen - attribute name length
+ * type_id - Attribute datatype identifier
+ * space_id - Attribute dataspace identifier
+ * acpl_id - Attribute creation property list identifier (Currently not used.)
+ * aapl_id - Attribute access property list identifier (Currently not used.)
+ * lapl_id - Link access property list
*
* OUTPUTS
*
- * attr - an attribute identifier
+ * attr - an attribute identifier
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5acreate_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5acreate_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd attr_name, size_t_f *attr_namelen, hid_t_f *type_id,
hid_t_f *space_id, hid_t_f *acpl_id, hid_t_f *aapl_id,
hid_t_f *lapl_id, hid_t_f *attr_id )
@@ -1876,27 +840,27 @@ done:
/****if* H5Af/h5aexists_c
* NAME
- * h5aexists_c
+ * h5aexists_c
* PURPOSE
* CAll h5aexists
* INPUTS
*
- * obj_id - Object identifier
- * attr_name - Attribute name
+ * obj_id - Object identifier
+ * attr_name - Attribute name
* OUTPUTS
*
- * attr_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
+ * attr_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5aexists_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_exists)
+h5aexists_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_exists)
/******/
{
char *c_name = NULL; /* Buffer to hold C string */
@@ -1922,29 +886,29 @@ done:
/****if* H5Af/h5aexists_by_name_c
* NAME
- * h5aexists_by_name_c
+ * h5aexists_by_name_c
* PURPOSE
* CAll H5Aexists_by_name
* INPUTS
*
- * loc_id - Location identifier
- * obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
+ * loc_id - Location identifier
+ * obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
* attr_name - Attribute name
- * lapl_id - Link access property list identifier
+ * lapl_id - Link access property list identifier
* OUTPUTS
*
- * attr_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
+ * attr_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5aexists_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
+h5aexists_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
hid_t_f *lapl_id, int_f *attr_exists)
/******/
{
@@ -1976,30 +940,30 @@ done:
/****if* H5Af/h5aopen_by_name_c
* NAME
- * h5aopen_by_name_c
+ * h5aopen_by_name_c
* PURPOSE
- * Call H5Aopen_by_name
+ * Call H5Aopen_by_name
* INPUTS
*
- * loc_id - Location identifier
- * obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
+ * loc_id - Location identifier
+ * obj_name - Object name either relative to loc_id, absolute from the file’s root group, or '.' (a dot)
* attr_name - Attribute name
- * aapl_id - Attribute access property list (Currently unused; should be passed in as H5P_DEFAULT.)
- * lapl_id - Link access property list identifier
+ * aapl_id - Attribute access property list (Currently unused; should be passed in as H5P_DEFAULT.)
+ * lapl_id - Link access property list identifier
* OUTPUTS
*
- * attr_id - attribute identifier
+ * attr_id - attribute identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5aopen_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
+h5aopen_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
hid_t_f *aapl_id, hid_t_f *lapl_id, hid_t_f *attr_id)
/******/
{
@@ -2031,29 +995,29 @@ nh5aopen_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd
/****if* H5Af/h5arename_c
* NAME
- * h5arename_c
+ * h5arename_c
* PURPOSE
- * Calls H5Arename
+ * Calls H5Arename
* INPUTS
- * loc_id - Object identifier
- * old_attr_name - Prior attribute name
- * old_attr_name_len - Prior attribute name length
- * new_attr_name - New attribute name
- * new_attr_name_len - New attribute name length
+ * loc_id - Object identifier
+ * old_attr_name - Prior attribute name
+ * old_attr_name_len - Prior attribute name length
+ * new_attr_name - New attribute name
+ * new_attr_name_len - New attribute name length
* OUTPUTS
* N/A
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5arename_c( hid_t_f *loc_id,
+h5arename_c( hid_t_f *loc_id,
_fcd old_attr_name, size_t_f *old_attr_namelen,
_fcd new_attr_name, size_t_f *new_attr_namelen)
/******/
diff --git a/fortran/src/H5Aff.f90 b/fortran/src/H5Aff.F90
index 25f7fa7..132bf41 100644
--- a/fortran/src/H5Aff.f90
+++ b/fortran/src/H5Aff.F90
@@ -26,22 +26,97 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+!
+! (A) C_LOC and character strings according to the Fortran 2003 standard:
+!
+! 15.1.2.5 C_LOC(X)
+!
+! Argument. X shall either
+!
+! (1) have interoperable type and type parameters and be
+! (a) a variable that has the TARGET attribute and is interoperable,
+! (b) an allocated allocatable variable that has the TARGET attribute
+! and is not an array of zero size, or
+! (c) an associated scalar pointer, or
+! (2) be a nonpolymorphic scalar, have no length type parameters, and be
+! (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
+! (b) an allocated allocatable variable that has the TARGET attribute, or
+! (c) an associated pointer.
+!
+! - When X is a character, for interoperability the standard is:
+!
+! 15.2.1 Interoperability of intrinsic types
+!
+! ...if the type is character, interoperability also requires that the length type parameter
+! be omitted or be specified by an initialization expression whose value is one.
+!
+! THEREFORE compilers that have not extended the standard require
+!
+! CHARACTER(LEN=1), TARGET :: chr
+! or
+! CHARACTER, TARGET :: chr
+!
+! (B)
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5A function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
!
!*****
+#include <H5config_f.inc>
+
MODULE H5A
+ USE, INTRINSIC :: ISO_C_BINDING
+
USE H5GLOBAL
-!
-! On Windows there are no big (integer*8) integers, so overloading
-! for bug #670 does not work. I have to use DEC compilation directives to make
-! Windows DEC Visual Fortran and OSF compilers happy and do right things.
-! 05/01/02 EP
-!
+
+ INTERFACE h5awrite_f
+ MODULE PROCEDURE h5awrite_char_scalar
+ ! This is the preferred way to call h5awrite
+ ! by passing an address
+ MODULE PROCEDURE h5awrite_ptr
+ END INTERFACE
+
+ INTERFACE h5aread_f
+ MODULE PROCEDURE h5aread_char_scalar
+ ! This is the preferred way to call h5aread
+ ! by passing an address
+ MODULE PROCEDURE h5aread_ptr
+ END INTERFACE
+
+! Interface for the function used to pass the C pointer of the buffer
+! to the C H5Awrite routine
+ INTERFACE
+ INTEGER FUNCTION h5awrite_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5awrite_f_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ TYPE(C_PTR), VALUE :: buf
+ END FUNCTION h5awrite_f_c
+ END INTERFACE
+
+! Interface for the function used to pass the C pointer of the buffer
+! to the C H5Aread routine
+ INTERFACE
+ INTEGER FUNCTION h5aread_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5aread_f_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ TYPE(C_PTR), VALUE :: buf
+ END FUNCTION h5aread_f_c
+ END INTERFACE
CONTAINS
@@ -80,7 +155,7 @@ CONTAINS
!
! SOURCE
SUBROUTINE h5acreate_f(loc_id, name, type_id, space_id, attr_id, &
- hdferr, acpl_id, aapl_id )
+ hdferr, acpl_id, aapl_id )
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name
@@ -95,37 +170,34 @@ CONTAINS
INTEGER(HID_T) :: acpl_id_default
INTEGER(HID_T) :: aapl_id_default
- INTEGER(SIZE_T) :: namelen
+ CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name
INTERFACE
- INTEGER FUNCTION h5acreate_c(loc_id, name, namelen, type_id, &
- space_id, acpl_id_default, aapl_id_default, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ACREATE_C'::h5acreate_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(SIZE_T) :: namelen
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HID_T) :: acpl_id_default
- INTEGER(HID_T) :: aapl_id_default
- INTEGER(HID_T), INTENT(OUT) :: attr_id
- END FUNCTION h5acreate_c
+ INTEGER(HID_T) FUNCTION H5Acreate2(loc_id, name, type_id, &
+ space_id, acpl_id_default, aapl_id_default) BIND(C,NAME='H5Acreate2')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN), VALUE :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER(HID_T), INTENT(IN), VALUE :: type_id
+ INTEGER(HID_T), INTENT(IN), VALUE :: space_id
+ INTEGER(HID_T), INTENT(IN), VALUE :: acpl_id_default
+ INTEGER(HID_T), INTENT(IN), VALUE :: aapl_id_default
+ END FUNCTION H5Acreate2
END INTERFACE
acpl_id_default = H5P_DEFAULT_F
aapl_id_default = H5P_DEFAULT_F
- namelen = LEN(name)
IF (PRESENT(acpl_id)) acpl_id_default = acpl_id
IF (PRESENT(aapl_id)) aapl_id_default = aapl_id
- hdferr = h5acreate_c(loc_id, name, namelen, type_id, space_id, &
- acpl_id_default, aapl_id_default, attr_id)
+ c_name = TRIM(name)//C_NULL_CHAR
+ attr_id = h5acreate2(loc_id, c_name, type_id, space_id, &
+ acpl_id_default, aapl_id_default)
- END SUBROUTINE h5acreate_f
+ hdferr = 0
+ IF(attr_id.LT.0) hdferr = -1
+ END SUBROUTINE h5acreate_f
!
!****s* H5A/h5aopen_name_f
@@ -154,37 +226,38 @@ CONTAINS
! port). February 27, 2001
!
! SOURCE
- SUBROUTINE h5aopen_name_f(obj_id, name, attr_id, hdferr)
+ SUBROUTINE H5Aopen_name_f(obj_id, name, attr_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name
INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
- INTEGER(SIZE_T) :: namelen
+ CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name
+! H5Aopen_name is deprecated
INTERFACE
- INTEGER FUNCTION h5aopen_name_c(obj_id, name, namelen, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_NAME_C'::h5aopen_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(SIZE_T) :: namelen
- INTEGER(HID_T), INTENT(OUT) :: attr_id
- END FUNCTION h5aopen_name_c
+ INTEGER(HID_T) FUNCTION H5Aopen(obj_id, name, aapl_id) BIND(C,NAME='H5Aopen')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN), VALUE :: obj_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER(HID_T), INTENT(IN), VALUE :: aapl_id
+ END FUNCTION H5Aopen
END INTERFACE
- namelen = LEN(name)
- hdferr = h5aopen_name_c(obj_id, name, namelen, attr_id)
- END SUBROUTINE h5aopen_name_f
+ c_name = TRIM(name)//C_NULL_CHAR
+ attr_id = H5Aopen(obj_id, c_name, H5P_DEFAULT_F)
+
+ hdferr = 0
+ IF(attr_id.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aopen_name_f
!
-!****s* H5A/h5aopen_idx_f
+!****s* H5A/H5Aopen_idx_f
!
! NAME
-! h5aopen_idx_f
+! H5Aopen_idx_f
!
! PURPOSE
! Opens the attribute specified by its index.
@@ -207,33 +280,34 @@ CONTAINS
! port). February 27, 2001
!
! SOURCE
- SUBROUTINE h5aopen_idx_f(obj_id, index, attr_id, hdferr)
+ SUBROUTINE H5Aopen_idx_f(obj_id, index, attr_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
INTEGER, INTENT(IN) :: index ! Attribute index
INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
-
+! H5Aopen_idx is deprecated in favor of the function H5Aopen_by_idx.
INTERFACE
- INTEGER FUNCTION h5aopen_idx_c(obj_id, index, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_IDX_C'::h5aopen_idx_c
- !DEC$ENDIF
+ INTEGER(HID_T) FUNCTION H5Aopen_by_idx(obj_id, index) BIND(C,NAME='H5Aopen_by_idx')
+ IMPORT :: HID_T
+ IMPORT :: C_INT
INTEGER(HID_T), INTENT(IN) :: obj_id
- INTEGER, INTENT(IN) :: index
- INTEGER(HID_T), INTENT(OUT) :: attr_id
- END FUNCTION h5aopen_idx_c
+ INTEGER(C_INT), INTENT(IN) :: index
+ END FUNCTION H5Aopen_by_idx
END INTERFACE
- hdferr = h5aopen_idx_c(obj_id, index, attr_id)
- END SUBROUTINE h5aopen_idx_f
+ attr_id = H5Aopen_by_idx(obj_id, INT(index, C_INT))
+
+ hdferr = 0
+ IF(attr_id.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aopen_idx_f
!
-!****s* H5A/h5aget_space_f
+!****s* H5A/H5Aget_space_f
!
! NAME
-! h5aget_space_f
+! H5Aget_space_f
!
! PURPOSE
! Gets a copy of the dataspace for an attribute.
@@ -256,30 +330,31 @@ CONTAINS
!
!
! SOURCE
- SUBROUTINE h5aget_space_f(attr_id, space_id, hdferr)
+ SUBROUTINE H5Aget_space_f(attr_id, space_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
INTEGER(HID_T), INTENT(OUT) :: space_id ! Attribute dataspace identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5aget_space_c(attr_id, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_SPACE_C'::h5aget_space_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(OUT) :: space_id
- END FUNCTION h5aget_space_c
+ INTEGER(HID_T) FUNCTION H5Aget_space(attr_id) BIND(C,NAME='H5Aget_space')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN), VALUE :: attr_id
+ END FUNCTION H5Aget_space
END INTERFACE
- hdferr = h5aget_space_c(attr_id, space_id)
- END SUBROUTINE h5aget_space_f
+ space_id = H5Aget_space(attr_id)
+
+ hdferr = 0
+ IF(space_id.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aget_space_f
!
-!****s* H5A/h5aget_type_f
+!****s* H5A/H5Aget_type_f
!
! NAME
-! h5aget_type_f
+! H5Aget_type_f
!
! PURPOSE
! Gets an attribute datatype.
@@ -300,30 +375,31 @@ CONTAINS
! port). February 27, 2001
!
! SOURCE
- SUBROUTINE h5aget_type_f(attr_id, type_id, hdferr)
+ SUBROUTINE H5Aget_type_f(attr_id, type_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
INTEGER(HID_T), INTENT(OUT) :: type_id ! Attribute datatype identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5aget_type_c(attr_id, type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_TYPE_C'::h5aget_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(OUT) :: type_id
- END FUNCTION h5aget_type_c
+ INTEGER(HID_T) FUNCTION H5Aget_type(attr_id) BIND(C,NAME='H5Aget_type')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN), VALUE :: attr_id
+ END FUNCTION H5Aget_type
END INTERFACE
- hdferr = h5aget_type_c(attr_id, type_id)
- END SUBROUTINE h5aget_type_f
+ type_id = H5Aget_type(attr_id)
+
+ hdferr = 0
+ IF(type_id.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aget_type_f
!
-!****s* H5A/h5aget_name_f
+!****s* H5A/H5Aget_name_f
!
! NAME
-! h5aget_name_f
+! H5Aget_name_f
!
! PURPOSE
! Gets an attribute name.
@@ -355,26 +431,23 @@ CONTAINS
! name length is successful, -1 if fail
!*****
INTERFACE
- INTEGER FUNCTION h5aget_name_c(attr_id, size, buf)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_NAME_C'::h5aget_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
+ INTEGER FUNCTION h5aget_name_c(attr_id, size, buf) &
+ BIND(C,NAME='h5aget_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: attr_id
INTEGER(SIZE_T), INTENT(IN) :: size
- CHARACTER(LEN=*), INTENT(OUT) :: buf
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buf
END FUNCTION h5aget_name_c
END INTERFACE
hdferr = h5aget_name_c(attr_id, size, buf)
END SUBROUTINE h5aget_name_f
-
!
-!****s* H5A/h5aget_name_by_idx_f
+!****s* H5A/H5Aget_name_by_idx_f
!
! NAME
-! h5aget_name_by_idx_f
+! H5Aget_name_by_idx_f
!
! PURPOSE
! Gets an attribute name, by attribute index position.
@@ -443,19 +516,16 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5aget_name_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, &
- n, name, size_default, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_NAME_BY_IDX_C'::h5aget_name_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, name
+ n, name, size_default, lapl_id_default) BIND(C,NAME='h5aget_name_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER, INTENT(IN) :: idx_type
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
-
- CHARACTER(LEN=*), INTENT(OUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
INTEGER(SIZE_T) :: size_default
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: obj_namelen
@@ -476,10 +546,10 @@ CONTAINS
END SUBROUTINE h5aget_name_by_idx_f
!
-!****s* H5A/h5aget_num_attrs_f
+!****s* H5A/H5Aget_num_attrs_f
!
! NAME
-! h5aget_num_attrs_f
+! H5Aget_num_attrs_f
!
! PURPOSE
! Determines the number of attributes attached to an object.
@@ -509,11 +579,8 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5aget_num_attrs_c(obj_id, attr_num)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_NUM_ATTRS_C'::h5aget_num_attrs_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5aget_num_attrs_c(obj_id, attr_num) BIND(C,name='h5aget_num_attrs_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(OUT) :: attr_num
END FUNCTION h5aget_num_attrs_c
@@ -523,10 +590,10 @@ CONTAINS
END SUBROUTINE h5aget_num_attrs_f
!
-!****s* H5A/h5adelete_f
+!****s* H5A/H5Adelete_f
!
! NAME
-! h5adelete_f
+! H5Adelete_f
!
! PURPOSE
! Deletes an attribute of an object (group, dataset or
@@ -548,7 +615,7 @@ CONTAINS
! port). February 27, 2001
!
! SOURCE
- SUBROUTINE h5adelete_f(obj_id, name, hdferr)
+ SUBROUTINE H5Adelete_f(obj_id, name, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name
@@ -557,27 +624,24 @@ CONTAINS
INTEGER(SIZE_T) :: namelen
INTERFACE
- INTEGER FUNCTION h5adelete_c(obj_id, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ADELETE_C'::h5adelete_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION H5Adelete_c(obj_id, name, namelen) BIND(C,NAME='h5adelete_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(SIZE_T) :: namelen
- END FUNCTION h5adelete_c
+ END FUNCTION H5Adelete_c
END INTERFACE
namelen = LEN(name)
- hdferr = h5adelete_c(obj_id, name, namelen)
- END SUBROUTINE h5adelete_f
+ hdferr = H5Adelete_c(obj_id, name, namelen)
+ END SUBROUTINE H5Adelete_f
!
-!****s* H5A/h5aclose_f
+!****s* H5A/H5Aclose_f
!
! NAME
-! h5aclose_f
+! H5Aclose_f
!
! PURPOSE
! Closes the specified attribute.
@@ -597,30 +661,28 @@ CONTAINS
! called C functions (it is needed for Windows
! port). February 27, 2001
! SOURCE
- SUBROUTINE h5aclose_f(attr_id, hdferr)
+
+ SUBROUTINE H5Aclose_f(attr_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5aclose_c(attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ACLOSE_C'::h5aclose_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: attr_id
- END FUNCTION h5aclose_c
+ INTEGER FUNCTION H5Aclose(attr_id) BIND(C, NAME='H5Aclose')
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN), VALUE :: attr_id
+ END FUNCTION H5Aclose
END INTERFACE
- hdferr = h5aclose_c(attr_id)
- END SUBROUTINE h5aclose_f
+ hdferr = INT(H5Aclose(attr_id))
+ END SUBROUTINE H5Aclose_f
!
-!****s* H5A/h5aget_storage_size_f
+!****s* H5A/H5Aget_storage_size_f
!
! NAME
-! h5aget_storage_size_f
+! H5Aget_storage_size_f
!
! PURPOSE
! Returns the amount of storage required for an attribute.
@@ -635,7 +697,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aget_storage_size_f(attr_id, size, hdferr)
+ SUBROUTINE H5Aget_storage_size_f(attr_id, size, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
INTEGER(HSIZE_T), INTENT(OUT) :: size ! Attribute storage requirement
@@ -643,24 +705,24 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5aget_storage_size_c(attr_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_STORAGE_SIZE_C'::h5aget_storage_size_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HSIZE_T), INTENT(OUT) :: size
- END FUNCTION h5aget_storage_size_c
+ INTEGER(HSIZE_T) FUNCTION H5Aget_storage_size(attr_id) BIND(C,NAME='H5Aget_storage_size')
+ IMPORT :: HID_T, HSIZE_T
+ INTEGER(HID_T), INTENT(IN), VALUE :: attr_id
+ END FUNCTION H5Aget_storage_size
END INTERFACE
- hdferr = h5aget_storage_size_c(attr_id, size)
- END SUBROUTINE h5aget_storage_size_f
+ size = H5Aget_storage_size(attr_id)
+
+ hdferr = 0
+ IF(size.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aget_storage_size_f
!
-!****s* H5A/h5aget_create_plist_f
+!****s* H5A/H5Aget_create_plist_f
!
! NAME
-! h5aget_create_plist_f
+! H5Aget_create_plist_f
!
! PURPOSE
! Gets an attribute creation property list identifier
@@ -676,33 +738,32 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aget_create_plist_f(attr_id, creation_prop_id, hdferr)
+ SUBROUTINE H5Aget_create_plist_f(attr_id, creation_prop_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Identifier of the attribute
INTEGER(HID_T), INTENT(OUT) :: creation_prop_id ! Identifier for the attribute’s creation property
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5aget_create_plist_c(attr_id, creation_prop_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_CREATE_PLIST_C'::h5aget_create_plist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(OUT) :: creation_prop_id
- END FUNCTION h5aget_create_plist_c
+ INTEGER(HID_T) FUNCTION H5Aget_create_plist(attr_id) BIND(C,NAME='H5Aget_create_plist')
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN), VALUE :: attr_id
+ END FUNCTION H5Aget_create_plist
END INTERFACE
- hdferr = h5aget_create_plist_c(attr_id, creation_prop_id)
- END SUBROUTINE h5aget_create_plist_f
+ creation_prop_id = H5Aget_create_plist(attr_id)
+
+ hdferr = 0
+ IF(creation_prop_id.LT.0) hdferr = -1
+
+ END SUBROUTINE H5Aget_create_plist_f
!
-!****s* H5A/h5arename_by_name_f
+!****s* H5A/H5Arename_by_name_f
!
! NAME
-! h5arename_by_name_f
+! H5Arename_by_name_f
!
! PURPOSE
! Renames an attribute
@@ -723,7 +784,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5arename_by_name_f(loc_id, obj_name, old_attr_name, new_attr_name, &
+ SUBROUTINE H5Arename_by_name_f(loc_id, obj_name, old_attr_name, new_attr_name, &
hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
@@ -742,24 +803,22 @@ CONTAINS
INTEGER(SIZE_T) :: new_attr_namelen
INTERFACE
- INTEGER FUNCTION h5arename_by_name_c(loc_id, obj_name, obj_namelen, &
+ INTEGER FUNCTION H5Arename_by_name_c(loc_id, obj_name, obj_namelen, &
old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen, &
- lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ARENAME_BY_NAME_C'::h5arename_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, old_attr_name, new_attr_name
+ lapl_id_default) BIND(C,NAME='h5arename_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(SIZE_T) :: obj_namelen
- CHARACTER(LEN=*), INTENT(IN) :: old_attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: old_attr_name
INTEGER(SIZE_T) :: old_attr_namelen
- CHARACTER(LEN=*), INTENT(IN) :: new_attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_attr_name
INTEGER(SIZE_T) :: new_attr_namelen
INTEGER(HID_T) :: lapl_id_default
- END FUNCTION h5arename_by_name_c
+ END FUNCTION H5Arename_by_name_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -769,17 +828,17 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default=lapl_id
- hdferr = h5arename_by_name_c(loc_id, obj_name, obj_namelen, &
+ hdferr = H5Arename_by_name_c(loc_id, obj_name, obj_namelen, &
old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen, &
lapl_id_default)
- END SUBROUTINE h5arename_by_name_f
+ END SUBROUTINE H5Arename_by_name_f
!
-!****s* H5A/h5aopen_f
+!****s* H5A/H5Aopen_f
!
! NAME
-! h5aopen_f
+! H5Aopen_f
!
! PURPOSE
! Opens an attribute for an object specified by object
@@ -800,7 +859,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aopen_f(obj_id, attr_name, attr_id, hdferr, aapl_id)
+ SUBROUTINE H5Aopen_f(obj_id, attr_name, attr_id, hdferr, aapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name
@@ -815,18 +874,16 @@ CONTAINS
INTEGER(SIZE_T) :: attr_namelen
INTERFACE
- INTEGER FUNCTION h5aopen_c(obj_id, attr_name, attr_namelen, aapl_id_default, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_C'::h5aopen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER FUNCTION H5Aopen_c(obj_id, attr_name, attr_namelen, aapl_id_default, attr_id) &
+ BIND(C,NAME='h5aopen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(HID_T) :: aapl_id_default
INTEGER(SIZE_T) :: attr_namelen
INTEGER(HID_T), INTENT(OUT) :: attr_id
- END FUNCTION h5aopen_c
+ END FUNCTION H5Aopen_c
END INTERFACE
attr_namelen = LEN(attr_name)
@@ -834,15 +891,15 @@ CONTAINS
aapl_id_default = H5P_DEFAULT_F
IF(PRESENT(aapl_id)) aapl_id_default = aapl_id
- hdferr = h5aopen_c(obj_id, attr_name, attr_namelen, aapl_id_default, attr_id)
+ hdferr = H5Aopen_c(obj_id, attr_name, attr_namelen, aapl_id_default, attr_id)
- END SUBROUTINE h5aopen_f
+ END SUBROUTINE H5Aopen_f
!
-!****s* H5A/h5adelete_by_idx_f
+!****s* H5A/H5Adelete_by_idx_f
!
! NAME
-! h5adelete_by_idx_f
+! H5Adelete_by_idx_f
!
! PURPOSE
! Deletes an attribute from an object according to index order
@@ -874,7 +931,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5adelete_by_idx_f(loc_id, obj_name, idx_type, order, n, hdferr, lapl_id)
+ SUBROUTINE H5Adelete_by_idx_f(loc_id, obj_name, idx_type, order, n, hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifer for object to which attribute is attached
CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location,
@@ -900,35 +957,34 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5adelete_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ADELETE_BY_IDX_C'::h5adelete_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name
+ INTEGER FUNCTION H5Adelete_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default) &
+ BIND(C,NAME='h5adelete_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER, INTENT(IN) :: idx_type
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: obj_namelen
- END FUNCTION h5adelete_by_idx_c
+ END FUNCTION H5Adelete_by_idx_c
END INTERFACE
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
obj_namelen = LEN(obj_name)
- hdferr = h5adelete_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default)
+ hdferr = H5Adelete_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default)
- END SUBROUTINE h5adelete_by_idx_f
+ END SUBROUTINE H5Adelete_by_idx_f
!
-!****s* H5A/h5adelete_by_name_f
+!****s* H5A/H5Adelete_by_name_f
!
! NAME
-! h5adelete_by_name_f
+! H5Adelete_by_name_f
!
! PURPOSE
! Removes an attribute from a specified location
@@ -946,7 +1002,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5adelete_by_name_f(loc_id, obj_name, attr_name, hdferr, lapl_id)
+ SUBROUTINE H5Adelete_by_name_f(loc_id, obj_name, attr_name, hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifer for object to which attribute is attached
CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object, relative to location,
@@ -962,19 +1018,17 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5adelete_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ADELETE_BY_NAME_C'::h5adelete_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, attr_name
+ INTEGER FUNCTION H5Adelete_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default) &
+ BIND(C,NAME='h5adelete_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: attr_namelen
INTEGER(SIZE_T) :: obj_namelen
- END FUNCTION h5adelete_by_name_c
+ END FUNCTION H5Adelete_by_name_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -983,15 +1037,15 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5adelete_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default)
+ hdferr = H5Adelete_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default)
- END SUBROUTINE h5adelete_by_name_f
+ END SUBROUTINE H5Adelete_by_name_f
!
-!****s* H5A/h5aopen_by_idx_f
+!****s* H5A/H5Aopen_by_idx_f
!
! NAME
-! h5aopen_by_idx_f
+! H5Aopen_by_idx_f
!
! PURPOSE
! Opens an existing attribute that is attached to an object specified by location and name
@@ -1013,7 +1067,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aopen_by_idx_f(loc_id, obj_name, idx_type, order, n, attr_id, hdferr, aapl_id, lapl_id)
+ SUBROUTINE H5Aopen_by_idx_f(loc_id, obj_name, idx_type, order, n, attr_id, hdferr, aapl_id, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Name of object to which attribute is attached
@@ -1041,15 +1095,12 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5aopen_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, &
- aapl_id_default, lapl_id_default, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_BY_IDX_C'::h5aopen_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name
+ INTEGER FUNCTION H5Aopen_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, &
+ aapl_id_default, lapl_id_default, attr_id) BIND(C,NAME='h5aopen_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER, INTENT(IN) :: idx_type
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
@@ -1057,7 +1108,7 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: obj_namelen
INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier
- END FUNCTION h5aopen_by_idx_c
+ END FUNCTION H5Aopen_by_idx_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -1067,16 +1118,16 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5aopen_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, &
+ hdferr = H5Aopen_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, &
aapl_id_default, lapl_id_default, attr_id)
- END SUBROUTINE h5aopen_by_idx_f
+ END SUBROUTINE H5Aopen_by_idx_f
!
-!****s* H5A/h5aget_info_f
+!****s* H5A/H5Aget_info_f
!
! NAME
-! h5aget_info_f
+! H5Aget_info_f
!
! PURPOSE
! Retrieves attribute information, by attribute identifier
@@ -1096,7 +1147,7 @@ CONTAINS
! M. Scot Breitenfeld
! January, 2008
! SOURCE
- SUBROUTINE h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, hdferr)
+ SUBROUTINE H5Aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
@@ -1110,33 +1161,31 @@ CONTAINS
INTEGER :: corder_valid
INTERFACE
- INTEGER FUNCTION h5aget_info_c(attr_id, corder_valid, corder, cset, data_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_INFO_C'::h5aget_info_c
- !DEC$ENDIF
+ INTEGER FUNCTION H5Aget_info_c(attr_id, corder_valid, corder, cset, data_size) BIND(C,NAME='h5aget_info_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: attr_id
INTEGER, INTENT(OUT) :: corder_valid
INTEGER, INTENT(OUT) :: corder
INTEGER, INTENT(OUT) :: cset
INTEGER(HSIZE_T), INTENT(OUT) :: data_size
- END FUNCTION h5aget_info_c
+ END FUNCTION H5Aget_info_c
END INTERFACE
- hdferr = h5aget_info_c(attr_id, corder_valid, corder, cset, data_size)
+ hdferr = H5Aget_info_c(attr_id, corder_valid, corder, cset, data_size)
f_corder_valid =.FALSE.
IF (corder_valid .EQ. 1) f_corder_valid =.TRUE.
- END SUBROUTINE h5aget_info_f
+ END SUBROUTINE H5Aget_info_f
!
-!****s* H5A/h5aget_info_by_idx_f
+!****s* H5A/H5Aget_info_by_idx_f
!
! NAME
-! h5aget_info_by_idx_f
+! H5Aget_info_by_idx_f
!
! PURPOSE
! Retrieves attribute information, by attribute index position
@@ -1162,7 +1211,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aget_info_by_idx_f(loc_id, obj_name, idx_type, order, n, &
+ SUBROUTINE H5Aget_info_by_idx_f(loc_id, obj_name, idx_type, order, n, &
f_corder_valid, corder, cset, data_size, hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
@@ -1195,14 +1244,11 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5aget_info_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default, &
- corder_valid, corder, cset, data_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_INFO_BY_IDX_C'::h5aget_info_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name
+ corder_valid, corder, cset, data_size) BIND(C,NAME='h5aget_info_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER, INTENT(IN) :: idx_type
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
@@ -1213,7 +1259,7 @@ CONTAINS
INTEGER(HSIZE_T), INTENT(OUT) :: data_size
INTEGER(SIZE_T) :: obj_namelen
- END FUNCTION h5aget_info_by_idx_c
+ END FUNCTION H5Aget_info_by_idx_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -1221,19 +1267,19 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(present(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5aget_info_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default, &
+ hdferr = H5Aget_info_by_idx_c(loc_id, obj_name, obj_namelen, idx_type, order, n, lapl_id_default, &
corder_valid, corder, cset, data_size)
f_corder_valid =.FALSE.
IF (corder_valid .EQ. 1) f_corder_valid =.TRUE.
- END SUBROUTINE h5aget_info_by_idx_f
+ END SUBROUTINE H5Aget_info_by_idx_f
!
-!****s* H5A/h5aget_info_by_name_f
+!****s* H5A/H5Aget_info_by_name_f
!
! NAME
-! h5aget_info_by_name_f
+! H5Aget_info_by_name_f
!
! PURPOSE
! Retrieves attribute information, by attribute name
@@ -1257,7 +1303,7 @@ CONTAINS
! January, 2008
!
! SOURCE
- SUBROUTINE h5aget_info_by_name_f(loc_id, obj_name, attr_name, &
+ SUBROUTINE H5Aget_info_by_name_f(loc_id, obj_name, attr_name, &
f_corder_valid, corder, cset, data_size, hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
@@ -1279,17 +1325,15 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5aget_info_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, &
- corder_valid, corder, cset, data_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AGET_INFO_BY_NAME_C'::h5aget_info_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, attr_name
+ INTEGER FUNCTION H5Aget_info_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, &
+ corder_valid, corder, cset, data_size) BIND(C,NAME='h5aget_info_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(SIZE_T), INTENT(IN) :: obj_namelen
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(SIZE_T), INTENT(IN) :: attr_namelen
INTEGER(HID_T) :: lapl_id_default
INTEGER, INTENT(OUT) :: corder_valid
@@ -1297,7 +1341,7 @@ CONTAINS
INTEGER, INTENT(OUT) :: cset
INTEGER(HSIZE_T), INTENT(OUT) :: data_size
- END FUNCTION h5aget_info_by_name_c
+ END FUNCTION H5Aget_info_by_name_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -1306,19 +1350,19 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5aget_info_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, &
+ hdferr = H5Aget_info_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, &
corder_valid, corder, cset, data_size)
f_corder_valid =.FALSE.
IF (corder_valid .EQ. 1) f_corder_valid =.TRUE.
- END SUBROUTINE h5aget_info_by_name_f
+ END SUBROUTINE H5Aget_info_by_name_f
!
-!****s* H5A/h5acreate_by_name_f
+!****s* H5A/H5Acreate_by_name_f
!
! NAME
-! h5acreate_by_name_f
+! H5Acreate_by_name_f
!
! PURPOSE
! Creates an attribute attached to a specified object
@@ -1342,7 +1386,7 @@ CONTAINS
! M. Scot Breitenfeld
! February, 2008
! SOURCE
- SUBROUTINE h5acreate_by_name_f(loc_id, obj_name, attr_name, type_id, space_id, attr, hdferr, &
+ SUBROUTINE H5Acreate_by_name_f(loc_id, obj_name, attr_name, type_id, space_id, attr, hdferr, &
acpl_id, aapl_id, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
@@ -1365,17 +1409,16 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5acreate_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
- type_id, space_id, acpl_id_default, aapl_id_default, lapl_id_default, attr)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ACREATE_BY_NAME_C'::h5acreate_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, attr_name
+ INTEGER FUNCTION H5Acreate_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
+ type_id, space_id, acpl_id_default, aapl_id_default, lapl_id_default, attr) &
+ BIND(C,NAME='h5acreate_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(SIZE_T), INTENT(IN) :: obj_namelen
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(SIZE_T), INTENT(IN) :: attr_namelen
INTEGER(HID_T), INTENT(IN) :: type_id
INTEGER(HID_T), INTENT(IN) :: space_id
@@ -1384,7 +1427,7 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTEGER(HID_T), INTENT(OUT) :: attr
- END FUNCTION h5acreate_by_name_c
+ END FUNCTION H5Acreate_by_name_c
END INTERFACE
obj_namelen = LEN(obj_name)
@@ -1398,9 +1441,9 @@ CONTAINS
IF(PRESENT(aapl_id)) aapl_id_default = aapl_id
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5acreate_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
+ hdferr = H5Acreate_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
type_id, space_id, acpl_id_default, aapl_id_default, lapl_id_default, attr)
- END SUBROUTINE h5acreate_by_name_f
+ END SUBROUTINE H5Acreate_by_name_f
!
!****s* H5A/H5Aexists_f
@@ -1424,7 +1467,7 @@ CONTAINS
! February, 2008
!
! SOURCE
- SUBROUTINE h5aexists_f(obj_id, attr_name, attr_exists, hdferr)
+ SUBROUTINE H5Aexists_f(obj_id, attr_name, attr_exists, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: attr_name ! Attribute name
@@ -1436,27 +1479,25 @@ CONTAINS
INTEGER(SIZE_T) :: attr_namelen
INTERFACE
- INTEGER FUNCTION h5aexists_c(obj_id, attr_name, attr_namelen, attr_exists_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AEXISTS_C'::h5aexists_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: attr_name
+ INTEGER FUNCTION H5Aexists_c(obj_id, attr_name, attr_namelen, attr_exists_c) BIND(C,NAME='h5aexists_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(SIZE_T) :: attr_namelen
INTEGER(HID_T) :: attr_exists_c
- END FUNCTION h5aexists_c
+ END FUNCTION H5Aexists_c
END INTERFACE
attr_namelen = LEN(attr_name)
- hdferr = h5aexists_c(obj_id, attr_name, attr_namelen, attr_exists_c)
+ hdferr = H5Aexists_c(obj_id, attr_name, attr_namelen, attr_exists_c)
attr_exists = .FALSE.
IF(attr_exists_c.GT.0) attr_exists = .TRUE.
- END SUBROUTINE h5aexists_f
+ END SUBROUTINE H5Aexists_f
!
!****s* H5A/H5Aexists_by_name_f
@@ -1483,7 +1524,7 @@ CONTAINS
! February, 2008
!
! SOURCE
- SUBROUTINE h5aexists_by_name_f(loc_id, obj_name, attr_name, attr_exists, hdferr, lapl_id)
+ SUBROUTINE H5Aexists_by_name_f(loc_id, obj_name, attr_name, attr_exists, hdferr, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier
CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id,
@@ -1501,20 +1542,19 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5aexists_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, attr_exists_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AEXISTS_BY_NAME_C'::h5aexists_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, attr_name
+ INTEGER FUNCTION H5Aexists_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
+ lapl_id_default, attr_exists_c) BIND(C,NAME='h5aexists_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(SIZE_T), INTENT(IN) :: obj_namelen
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(SIZE_T), INTENT(IN) :: attr_namelen
INTEGER(HID_T), INTENT(IN) :: lapl_id_default
INTEGER, INTENT(OUT) :: attr_exists_c
- END FUNCTION h5aexists_by_name_c
+ END FUNCTION H5Aexists_by_name_c
END INTERFACE
attr_namelen = LEN(attr_name)
@@ -1523,12 +1563,12 @@ CONTAINS
lapl_id_default = H5P_DEFAULT_F
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5aexists_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, attr_exists_c)
+ hdferr = H5Aexists_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, lapl_id_default, attr_exists_c)
attr_exists = .FALSE.
IF(attr_exists_c.GT.0) attr_exists = .TRUE.
- END SUBROUTINE h5aexists_by_name_f
+ END SUBROUTINE H5Aexists_by_name_f
!
!****s* H5A/H5Aopen_by_name_f
!
@@ -1554,7 +1594,7 @@ CONTAINS
! M. Scot Breitenfeld
! February, 2008
! SOURCE
- SUBROUTINE h5aopen_by_name_f(loc_id, obj_name, attr_name, attr_id, hdferr, aapl_id, lapl_id)
+ SUBROUTINE H5Aopen_by_name_f(loc_id, obj_name, attr_name, attr_id, hdferr, aapl_id, lapl_id)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier
CHARACTER(LEN=*), INTENT(IN) :: obj_name ! Object name either relative to loc_id,
@@ -1574,22 +1614,20 @@ CONTAINS
INTEGER(SIZE_T) :: attr_namelen
INTERFACE
- INTEGER FUNCTION h5aopen_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
- aapl_id_default, lapl_id_default, attr_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_BY_NAME_C'::h5aopen_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, attr_name
+ INTEGER FUNCTION H5Aopen_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
+ aapl_id_default, lapl_id_default, attr_id) BIND(C,NAME='h5aopen_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(SIZE_T), INTENT(IN) :: obj_namelen
- CHARACTER(LEN=*), INTENT(IN) :: attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: attr_name
INTEGER(SIZE_T), INTENT(IN) :: attr_namelen
INTEGER(HID_T) :: aapl_id_default
INTEGER(HID_T) :: lapl_id_default
INTEGER(HID_T), INTENT(OUT) :: attr_id
- END FUNCTION h5aopen_by_name_c
+ END FUNCTION H5Aopen_by_name_c
END INTERFACE
attr_namelen = LEN(attr_name)
@@ -1600,16 +1638,16 @@ CONTAINS
IF(PRESENT(aapl_id)) aapl_id_default = aapl_id
IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
- hdferr = h5aopen_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
+ hdferr = H5Aopen_by_name_c(loc_id, obj_name, obj_namelen, attr_name, attr_namelen, &
aapl_id_default, lapl_id_default, attr_id)
- END SUBROUTINE h5aopen_by_name_f
+ END SUBROUTINE H5Aopen_by_name_f
!
-!****s* H5A/h5arename_f
+!****s* H5A/H5Arename_f
!
! NAME
-! h5arename_f
+! H5Arename_f
!
! PURPOSE
! Renames an attribute
@@ -1632,7 +1670,7 @@ CONTAINS
!
! SOURCE
- SUBROUTINE h5arename_f(loc_id, old_attr_name, new_attr_name, hdferr)
+ SUBROUTINE H5Arename_f(loc_id, old_attr_name, new_attr_name, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: old_attr_name ! Prior attribute name
@@ -1644,29 +1682,191 @@ CONTAINS
INTEGER(SIZE_T) :: new_attr_namelen
INTERFACE
- INTEGER FUNCTION h5arename_c(loc_id, &
- old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ARENAME_C'::h5arename_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: old_attr_name, new_attr_name
+ INTEGER FUNCTION H5Arename_c(loc_id, &
+ old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen) BIND(C,NAME='h5arename_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: old_attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: old_attr_name
INTEGER(SIZE_T) :: old_attr_namelen
- CHARACTER(LEN=*), INTENT(IN) :: new_attr_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_attr_name
INTEGER(SIZE_T) :: new_attr_namelen
-
- END FUNCTION h5arename_c
+ END FUNCTION H5Arename_c
END INTERFACE
old_attr_namelen = LEN(old_attr_name)
new_attr_namelen = LEN(new_attr_name)
- hdferr = h5arename_c(loc_id, &
+ hdferr = H5Arename_c(loc_id, &
old_attr_name, old_attr_namelen, new_attr_name, new_attr_namelen)
- END SUBROUTINE h5arename_f
+ END SUBROUTINE H5Arename_f
+
+ SUBROUTINE H5Awrite_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
+ ! identifier (in memory)
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
+ CHARACTER(LEN=*), INTENT(IN) :: buf ! Attribute data
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ CALL H5Awrite_char_scalar_fix(attr_id, memtype_id, buf, LEN(buf), dims, hdferr)
+
+ END SUBROUTINE H5Awrite_char_scalar
+
+ SUBROUTINE H5Awrite_char_scalar_fix(attr_id, memtype_id, buf, buf_len, dims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
+ ! identifier (in memory)
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
+ INTEGER, INTENT(IN) :: buf_len
+ CHARACTER(LEN=buf_len), INTENT(IN), TARGET :: buf ! Attribute data
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1:1))
+
+ hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr)
+
+ END SUBROUTINE H5Awrite_char_scalar_fix
+
+
+!****s* H5A (F03)/H5Awrite_f_F03
+!
+! NAME
+! H5Awrite_f_F03
+!
+! PURPOSE
+! Writes an attribute.
+!
+! Inputs:
+! attr_id - Attribute identifier
+! memtype_id - Attribute datatype identifier (in memory)
+! buf - Data buffer; may be a scalar or an array
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces are added for
+! called C functions (it is needed for Windows
+! port). February 27, 2001
+!
+! NOTES
+! This function is overloaded to write INTEGER,
+! REAL, REAL(KIND=C_DOUBLE) and CHARACTER buffers
+! up to 7 dimensions.
+!
+! Fortran2003 Interface:
+!! SUBROUTINE H5Awrite_f(attr_id, memtype_id, buf, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: attr_id
+!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
+!! TYPE(C_PTR) , INTENT(IN) :: buf
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE H5Awrite_ptr(attr_id, mem_type_id, buf, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ TYPE(C_PTR), INTENT(IN), TARGET :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ hdferr = H5Awrite_f_c(attr_id, mem_type_id, buf)
+
+ END SUBROUTINE H5Awrite_ptr
+
+ SUBROUTINE H5Aread_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
+ ! identifier (in memory)
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
+ CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Attribute data
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ CALL H5Aread_char_scalar_fix(attr_id, memtype_id, buf, LEN(buf), hdferr)
+
+ END SUBROUTINE H5Aread_char_scalar
+
+ SUBROUTINE H5Aread_char_scalar_fix(attr_id, memtype_id, buf, buf_len, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
+ ! identifier (in memory)
+ INTEGER, INTENT(IN) :: buf_len
+ CHARACTER(LEN=buf_len), INTENT(INOUT), TARGET :: buf ! Attribute data
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1:1))
+
+ hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr)
+
+ END SUBROUTINE H5Aread_char_scalar_fix
+
+!****s* H5A (F03)/H5Aread_f_F03
+!
+! NAME
+! H5Aread_f_F03
+!
+! PURPOSE
+! Reads an attribute.
+!
+! Inputs:
+! attr_id - Attribute identifier
+! memtype_id - Attribute datatype identifier (in memory)
+!
+! Outputs:
+! buf - Data buffer; may be a scalar or an array
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces are added for
+! called C functions (it is needed for Windows
+! port). February 27, 2001
+!
+! dims parameter was added to make code portable;
+! Aprile 4, 2001
+!
+! Changed buf intent to INOUT to be consistant
+! with how the C functions handles it. The pg
+! compiler will return 0 if a buf value is not set.
+! February, 2008
+!
+! NOTES
+! This function is overloaded to write INTEGER,
+! REAL, REAL(KIND=C_DOUBLE) and CHARACTER buffers
+! up to 7 dimensions.
+! Fortran2003 Interface:
+!! SUBROUTINE H5Aread_f(attr_id, memtype_id, buf, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: attr_id
+!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
+!! TYPE(C_PTR) , INTENT(INOUT) :: buf
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE H5Aread_ptr(attr_id, mem_type_id, buf, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ TYPE(C_PTR), INTENT(INOUT), TARGET :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ hdferr = H5Aread_f_c(attr_id, mem_type_id, buf)
+
+ END SUBROUTINE H5Aread_ptr
END MODULE H5A
diff --git a/fortran/src/H5Aff_F03.f90 b/fortran/src/H5Aff_F03.f90
deleted file mode 100644
index 5278280..0000000
--- a/fortran/src/H5Aff_F03.f90
+++ /dev/null
@@ -1,1267 +0,0 @@
-!****h* ROBODoc/H5A (F03)
-! NAME
-! H5A_PROVISIONAL
-!
-! FILE
-! src/fortran/src/H5Aff_F03.f90
-!
-! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5A functions.
-! It contains the same functions as H5Aff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Aff_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-!
-! (A) C_LOC and character strings according to the Fortran 2003 standard:
-!
-! 15.1.2.5 C_LOC(X)
-!
-! Argument. X shall either
-!
-! (1) have interoperable type and type parameters and be
-! (a) a variable that has the TARGET attribute and is interoperable,
-! (b) an allocated allocatable variable that has the TARGET attribute
-! and is not an array of zero size, or
-! (c) an associated scalar pointer, or
-! (2) be a nonpolymorphic scalar, have no length type parameters, and be
-! (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
-! (b) an allocated allocatable variable that has the TARGET attribute, or
-! (c) an associated pointer.
-!
-! - When X is a character, for interoperability the standard is:
-!
-! 15.2.1 Interoperability of intrinsic types
-!
-! ...if the type is character, interoperability also requires that the length type parameter
-! be omitted or be specified by an initialization expression whose value is one.
-!
-! THEREFORE compilers that have not extended the standard require
-!
-! CHARACTER(LEN=1), TARGET :: chr
-! or
-! CHARACTER, TARGET :: chr
-!
-! (B)
-! *** IMPORTANT ***
-! If you add a new H5A function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5A_PROVISIONAL
-
- USE H5GLOBAL
-!
-! On Windows there are no big (integer*8) integers, so overloading
-! for bug #670 does not work. I have to use DEC compilation directives to make
-! Windows DEC Visual Fortran and OSF compilers happy and do right things.
-! 05/01/02 EP
-!
- INTERFACE h5awrite_f
- MODULE PROCEDURE h5awrite_integer_scalar
- MODULE PROCEDURE h5awrite_integer_1
- MODULE PROCEDURE h5awrite_integer_2
- MODULE PROCEDURE h5awrite_integer_3
- MODULE PROCEDURE h5awrite_integer_4
- MODULE PROCEDURE h5awrite_integer_5
- MODULE PROCEDURE h5awrite_integer_6
- MODULE PROCEDURE h5awrite_integer_7
- MODULE PROCEDURE h5awrite_char_scalar
- MODULE PROCEDURE h5awrite_char_1
- MODULE PROCEDURE h5awrite_char_2
- MODULE PROCEDURE h5awrite_char_3
- MODULE PROCEDURE h5awrite_char_4
- MODULE PROCEDURE h5awrite_char_5
- MODULE PROCEDURE h5awrite_char_6
- MODULE PROCEDURE h5awrite_char_7
- MODULE PROCEDURE h5awrite_real_scalar
- MODULE PROCEDURE h5awrite_real_1
- MODULE PROCEDURE h5awrite_real_2
- MODULE PROCEDURE h5awrite_real_3
- MODULE PROCEDURE h5awrite_real_4
- MODULE PROCEDURE h5awrite_real_5
- MODULE PROCEDURE h5awrite_real_6
- MODULE PROCEDURE h5awrite_real_7
- ! This is the preferred way to call h5awrite
- ! by passing an address
- MODULE PROCEDURE h5awrite_ptr
-
- END INTERFACE
-
- INTERFACE h5aread_f
-
- MODULE PROCEDURE h5aread_integer_scalar
- MODULE PROCEDURE h5aread_integer_1
- MODULE PROCEDURE h5aread_integer_2
- MODULE PROCEDURE h5aread_integer_3
- MODULE PROCEDURE h5aread_integer_4
- MODULE PROCEDURE h5aread_integer_5
- MODULE PROCEDURE h5aread_integer_6
- MODULE PROCEDURE h5aread_integer_7
- MODULE PROCEDURE h5aread_char_scalar
- MODULE PROCEDURE h5aread_char_1
- MODULE PROCEDURE h5aread_char_2
- MODULE PROCEDURE h5aread_char_3
- MODULE PROCEDURE h5aread_char_4
- MODULE PROCEDURE h5aread_char_5
- MODULE PROCEDURE h5aread_char_6
- MODULE PROCEDURE h5aread_char_7
- MODULE PROCEDURE h5aread_real_scalar
- MODULE PROCEDURE h5aread_real_1
- MODULE PROCEDURE h5aread_real_2
- MODULE PROCEDURE h5aread_real_3
- MODULE PROCEDURE h5aread_real_4
- MODULE PROCEDURE h5aread_real_5
- MODULE PROCEDURE h5aread_real_6
- MODULE PROCEDURE h5aread_real_7
-
- ! This is the preferred way to call h5aread
- ! by passing an address
- MODULE PROCEDURE h5aread_ptr
-
- END INTERFACE
-
-! Interface for the function used to pass the C pointer of the buffer
-! to the C H5Awrite routine
-
- INTERFACE
- INTEGER FUNCTION h5awrite_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5awrite_f_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- TYPE(C_PTR), VALUE :: buf
- END FUNCTION h5awrite_f_c
- END INTERFACE
-
-! Interface for the function used to pass the C pointer of the buffer
-! to the C H5Aread routine
-
- INTERFACE
- INTEGER FUNCTION h5aread_f_c(attr_id, mem_type_id, buf) BIND(C, NAME='h5aread_f_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- TYPE(C_PTR), VALUE :: buf
- END FUNCTION h5aread_f_c
- END INTERFACE
-
-CONTAINS
-
-!****s* H5A (F03)/h5awrite_f_F90
-!
-! NAME
-! h5awrite_f_F90
-!
-! PURPOSE
-! Writes an attribute.
-!
-! Inputs:
-! attr_id - Attribute identifier
-! memtype_id - Attribute datatype identifier (in memory)
-! dims - Array to hold corresponding dimension sizes of data buffer buf;
-! dim(k) has value of the k-th dimension of buffer buf;
-! values are ignored if buf is a scalar
-! buf - Data buffer; may be a scalar or an array
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces are added for
-! called C functions (it is needed for Windows
-! port). February 27, 2001
-!
-! dims parameter was added to make code portable;
-! Aprile 4, 2001
-!
-! Changed buf intent to INOUT to be consistant
-! with how the C functions handles it. The pg
-! compiler will return 0 if a buf value is not set.
-! February, 2008
-!
-! NOTES
-! This function is overloaded to write INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions.
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5awrite_f(attr_id, memtype_id, buf, dims, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: attr_id
-!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
-!! TYPE , INTENT(IN) :: buf
-!! INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
-
- SUBROUTINE h5awrite_integer_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf)
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_scalar
-
- SUBROUTINE h5awrite_integer_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) , &
- DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_integer_1
-
-
- SUBROUTINE h5awrite_integer_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) , &
- DIMENSION(dims(1),dims(2)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_2
-
- SUBROUTINE h5awrite_integer_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_3
-
-
- SUBROUTINE h5awrite_integer_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_4
-
-
- SUBROUTINE h5awrite_integer_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_5
-
-
- SUBROUTINE h5awrite_integer_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_integer_6
-
-
- SUBROUTINE h5awrite_integer_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), &
- TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_integer_7
-
-
- SUBROUTINE h5awrite_real_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf)
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_scalar
-
- SUBROUTINE h5awrite_real_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_real_1
-
-
- SUBROUTINE h5awrite_real_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_real_2
-
-
- SUBROUTINE h5awrite_real_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_3
-
-
- SUBROUTINE h5awrite_real_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_4
-
-
- SUBROUTINE h5awrite_real_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf)
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_5
-
-
- SUBROUTINE h5awrite_real_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_6
-
-
- SUBROUTINE h5awrite_real_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5awrite_real_7
-
- SUBROUTINE h5awrite_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- CALL h5awrite_char_scalar_fix(attr_id, memtype_id, buf, LEN(buf), dims, hdferr)
-
- END SUBROUTINE h5awrite_char_scalar
-
- SUBROUTINE h5awrite_char_scalar_fix(attr_id, memtype_id, buf, buf_len, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) :: buf_len
- CHARACTER(LEN=buf_len), INTENT(IN), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_scalar_fix
-
- SUBROUTINE h5awrite_char_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1)(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_1
-
- SUBROUTINE h5awrite_char_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1)(1:1))
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_2
-
- SUBROUTINE h5awrite_char_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1)(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_3
-
- SUBROUTINE h5awrite_char_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1)(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_4
-
- SUBROUTINE h5awrite_char_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1)(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_5
-
-
- SUBROUTINE h5awrite_char_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1))
-
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_6
-
- SUBROUTINE h5awrite_char_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1))
- hdferr = h5awrite_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5awrite_char_7
-
-!****s* H5A (F03)/h5awrite_f_F03
-!
-! NAME
-! h5awrite_f_F03
-!
-! PURPOSE
-! Writes an attribute.
-!
-! Inputs:
-! attr_id - Attribute identifier
-! memtype_id - Attribute datatype identifier (in memory)
-! buf - Data buffer; may be a scalar or an array
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces are added for
-! called C functions (it is needed for Windows
-! port). February 27, 2001
-!
-! NOTES
-! This function is overloaded to write INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions.
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5awrite_f(attr_id, memtype_id, buf, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: attr_id
-!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
-!! TYPE(C_PTR) , INTENT(IN) :: buf
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5awrite_ptr(attr_id, mem_type_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- TYPE(C_PTR), INTENT(IN), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- hdferr = h5awrite_f_c(attr_id, mem_type_id, buf)
-
- END SUBROUTINE h5awrite_ptr
-
-!****s* H5A (F03)/h5aread_f_F90
-!
-! NAME
-! h5aread_f_F90
-!
-! PURPOSE
-! Reads an attribute.
-!
-! Inputs:
-! attr_id - Attribute identifier
-! memtype_id - Attribute datatype identifier (in memory)
-! dims - Array to hold corresponding dimension sizes of data buffer buf;
-! dim(k) has value of the k-th dimension of buffer buf;
-! values are ignored if buf is a scalar
-!
-! Outputs:
-! buf - Data buffer; may be a scalar or an array
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces are added for
-! called C functions (it is needed for Windows
-! port). February 27, 2001
-!
-! dims parameter was added to make code portable;
-! Aprile 4, 2001
-!
-! Changed buf intent to INOUT to be consistant
-! with how the C functions handles it. The pg
-! compiler will return 0 if a buf value is not set.
-! February, 2008
-!
-! NOTES
-! This function is overloaded to write INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions.
-! Fortran90 Interface:
-!! SUBROUTINE h5aread_f(attr_id, memtype_id, buf, dims, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: attr_id
-!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
-!! TYPE , INTENT(INOUT) :: buf
-!! INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5aread_integer_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf)
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_scalar
-
- SUBROUTINE h5aread_integer_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_1
-
-
- SUBROUTINE h5aread_integer_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT),DIMENSION(dims(1),dims(2)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_2
-
-
- SUBROUTINE h5aread_integer_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_3
-
-
- SUBROUTINE h5aread_integer_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_4
-
-
- SUBROUTINE h5aread_integer_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_5
-
-
- SUBROUTINE h5aread_integer_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_6
-
-
- SUBROUTINE h5aread_integer_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_integer_7
-
-
- SUBROUTINE h5aread_real_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf)
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_scalar
-
- SUBROUTINE h5aread_real_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_1
-
-
- SUBROUTINE h5aread_real_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_2
-
-
- SUBROUTINE h5aread_real_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_3
-
-
- SUBROUTINE h5aread_real_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_4
-
-
- SUBROUTINE h5aread_real_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_5
-
-
- SUBROUTINE h5aread_real_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_6
-
-
- SUBROUTINE h5aread_real_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
- END SUBROUTINE h5aread_real_7
-
- SUBROUTINE h5aread_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- CALL h5aread_char_scalar_fix(attr_id, memtype_id, buf, LEN(buf), hdferr)
-
- END SUBROUTINE h5aread_char_scalar
-
- SUBROUTINE h5aread_char_scalar_fix(attr_id, memtype_id, buf, buf_len, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER, INTENT(IN) :: buf_len
- CHARACTER(LEN=buf_len), INTENT(INOUT), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1:1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_scalar_fix
-
- SUBROUTINE h5aread_char_1(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_1
-
-
- SUBROUTINE h5aread_char_2(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_2
-
-
- SUBROUTINE h5aread_char_3(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_3
-
- SUBROUTINE h5aread_char_4(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1)(1:1))
-
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_4
-
- SUBROUTINE h5aread_char_5(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_5
-
-
- SUBROUTINE h5aread_char_6(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_6
-
-
- SUBROUTINE h5aread_char_7(attr_id, memtype_id, buf, dims, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1))
- hdferr = h5aread_f_c(attr_id, memtype_id, f_ptr)
-
- END SUBROUTINE h5aread_char_7
-
-
-!****s* H5A (F03)/h5aread_f_F03
-!
-! NAME
-! h5aread_f_F03
-!
-! PURPOSE
-! Reads an attribute.
-!
-! Inputs:
-! attr_id - Attribute identifier
-! memtype_id - Attribute datatype identifier (in memory)
-!
-! Outputs:
-! buf - Data buffer; may be a scalar or an array
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces are added for
-! called C functions (it is needed for Windows
-! port). February 27, 2001
-!
-! dims parameter was added to make code portable;
-! Aprile 4, 2001
-!
-! Changed buf intent to INOUT to be consistant
-! with how the C functions handles it. The pg
-! compiler will return 0 if a buf value is not set.
-! February, 2008
-!
-! NOTES
-! This function is overloaded to write INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions.
-! Fortran2003 Interface:
-!! SUBROUTINE h5aread_f(attr_id, memtype_id, buf, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: attr_id
-!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
-!! TYPE(C_PTR) , INTENT(INOUT) :: buf
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5aread_ptr(attr_id, mem_type_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- TYPE(C_PTR), INTENT(INOUT), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- hdferr = h5aread_f_c(attr_id, mem_type_id, buf)
-
- END SUBROUTINE h5aread_ptr
-
-END MODULE H5A_PROVISIONAL
-
-
diff --git a/fortran/src/H5Aff_F90.f90 b/fortran/src/H5Aff_F90.f90
deleted file mode 100644
index 974b023..0000000
--- a/fortran/src/H5Aff_F90.f90
+++ /dev/null
@@ -1,1618 +0,0 @@
-!****h* ROBODoc/H5A (F90)
-!
-! NAME
-! H5A_PROVISIONAL
-!
-! FILE
-! fortran/src/H5Aff_F90.f90
-!
-! PURPOSE
-!
-! This file contains Fortran 90 interfaces for H5A functions. It contains
-! the same functions as H5Aff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Aff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5A function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5A_PROVISIONAL
-
- USE H5GLOBAL
- !
- !On Windows there are no big (integer*8) integers, so overloading
- !for bug #670 does not work. I have to use DEC compilation directives to make
- !Windows DEC Visual Fortran and OSF compilers happy and do right things.
- ! 05/01/02 EP
- !
- INTERFACE h5awrite_f
-
- MODULE PROCEDURE h5awrite_integer_scalar
- MODULE PROCEDURE h5awrite_integer_1
- MODULE PROCEDURE h5awrite_integer_2
- MODULE PROCEDURE h5awrite_integer_3
- MODULE PROCEDURE h5awrite_integer_4
- MODULE PROCEDURE h5awrite_integer_5
- MODULE PROCEDURE h5awrite_integer_6
- MODULE PROCEDURE h5awrite_integer_7
- MODULE PROCEDURE h5awrite_char_scalar
- MODULE PROCEDURE h5awrite_char_1
- MODULE PROCEDURE h5awrite_char_2
- MODULE PROCEDURE h5awrite_char_3
- MODULE PROCEDURE h5awrite_char_4
- MODULE PROCEDURE h5awrite_char_5
- MODULE PROCEDURE h5awrite_char_6
- MODULE PROCEDURE h5awrite_char_7
- MODULE PROCEDURE h5awrite_real_scalar
- MODULE PROCEDURE h5awrite_real_1
- MODULE PROCEDURE h5awrite_real_2
- MODULE PROCEDURE h5awrite_real_3
- MODULE PROCEDURE h5awrite_real_4
- MODULE PROCEDURE h5awrite_real_5
- MODULE PROCEDURE h5awrite_real_6
- MODULE PROCEDURE h5awrite_real_7
-
- END INTERFACE
-
- INTERFACE h5aread_f
-
- MODULE PROCEDURE h5aread_integer_scalar
- MODULE PROCEDURE h5aread_integer_1
- MODULE PROCEDURE h5aread_integer_2
- MODULE PROCEDURE h5aread_integer_3
- MODULE PROCEDURE h5aread_integer_4
- MODULE PROCEDURE h5aread_integer_5
- MODULE PROCEDURE h5aread_integer_6
- MODULE PROCEDURE h5aread_integer_7
- MODULE PROCEDURE h5aread_char_scalar
- MODULE PROCEDURE h5aread_char_1
- MODULE PROCEDURE h5aread_char_2
- MODULE PROCEDURE h5aread_char_3
- MODULE PROCEDURE h5aread_char_4
- MODULE PROCEDURE h5aread_char_5
- MODULE PROCEDURE h5aread_char_6
- MODULE PROCEDURE h5aread_char_7
- MODULE PROCEDURE h5aread_real_scalar
- MODULE PROCEDURE h5aread_real_1
- MODULE PROCEDURE h5aread_real_2
- MODULE PROCEDURE h5aread_real_3
- MODULE PROCEDURE h5aread_real_4
- MODULE PROCEDURE h5aread_real_5
- MODULE PROCEDURE h5aread_real_6
- MODULE PROCEDURE h5aread_real_7
- END INTERFACE
-
-CONTAINS
-
- SUBROUTINE h5awrite_integer_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_S_C'::h5awrite_integer_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN)::buf
- END FUNCTION h5awrite_integer_s_c
- END INTERFACE
-
- hdferr = h5awrite_integer_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_scalar
-
- SUBROUTINE h5awrite_integer_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) , &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awrite_integer_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_1_C'::h5awrite_integer_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), DIMENSION(dims(1)) :: buf
- END FUNCTION h5awrite_integer_1_c
- END INTERFACE
-
- hdferr = h5awrite_integer_1_c(attr_id, memtype_id, buf, dims)
-
- END SUBROUTINE h5awrite_integer_1
-
-
- SUBROUTINE h5awrite_integer_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN) , &
- DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_2_C'::h5awrite_integer_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5awrite_integer_2_c
- END INTERFACE
-
- hdferr = h5awrite_integer_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_2
-
-
- SUBROUTINE h5awrite_integer_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_3_C'::h5awrite_integer_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5awrite_integer_3_c
- END INTERFACE
-
- hdferr = h5awrite_integer_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_3
-
-
- SUBROUTINE h5awrite_integer_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_4_C'::h5awrite_integer_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5awrite_integer_4_c
- END INTERFACE
-
- hdferr = h5awrite_integer_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_4
-
-
- SUBROUTINE h5awrite_integer_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_5_C'::h5awrite_integer_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5awrite_integer_5_c
- END INTERFACE
-
- hdferr = h5awrite_integer_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_5
-
-
- SUBROUTINE h5awrite_integer_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_6_C'::h5awrite_integer_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5awrite_integer_6_c
- END INTERFACE
-
- hdferr = h5awrite_integer_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_6
-
-
- SUBROUTINE h5awrite_integer_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_integer_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_integer_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_INTEGER_7_C'::h5awrite_integer_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5awrite_integer_7_c
- END INTERFACE
-
- hdferr = h5awrite_integer_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_integer_7
-
-
- SUBROUTINE h5awrite_real_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_S_C'::h5awrite_real_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN)::buf
- END FUNCTION h5awrite_real_s_c
- END INTERFACE
-
- hdferr = h5awrite_real_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_scalar
-
- SUBROUTINE h5awrite_real_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_1_C'::h5awrite_real_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5awrite_real_1_c
- END INTERFACE
-
- hdferr = h5awrite_real_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_1
-
-
- SUBROUTINE h5awrite_real_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_2_C'::h5awrite_real_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5awrite_real_2_c
- END INTERFACE
-
- hdferr = h5awrite_real_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_2
-
-
- SUBROUTINE h5awrite_real_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_3_C'::h5awrite_real_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5awrite_real_3_c
- END INTERFACE
-
- hdferr = h5awrite_real_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_3
-
-
- SUBROUTINE h5awrite_real_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_4_C'::h5awrite_real_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5awrite_real_4_c
- END INTERFACE
-
- hdferr = h5awrite_real_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_4
-
-
- SUBROUTINE h5awrite_real_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_5_C'::h5awrite_real_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5awrite_real_5_c
- END INTERFACE
-
- hdferr = h5awrite_real_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_5
-
-
- SUBROUTINE h5awrite_real_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_6_C'::h5awrite_real_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5awrite_real_6_c
- END INTERFACE
-
- hdferr = h5awrite_real_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_6
-
-
- SUBROUTINE h5awrite_real_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_real_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_real_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_REAL_7_C'::h5awrite_real_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5awrite_real_7_c
- END INTERFACE
-
- hdferr = h5awrite_real_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_real_7
-
- SUBROUTINE h5awrite_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*),INTENT(IN) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_S_C'::h5awritec_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN)::buf
- END FUNCTION h5awritec_s_c
- END INTERFACE
-
- hdferr = h5awritec_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_scalar
-
- SUBROUTINE h5awrite_char_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_1_C'::h5awritec_1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1))::buf
- END FUNCTION h5awritec_1_c
- END INTERFACE
-
- hdferr = h5awritec_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_1
-
-
- SUBROUTINE h5awrite_char_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awritec_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_2_C'::h5awritec_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5awritec_2_c
- END INTERFACE
-
- hdferr = h5awritec_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_2
-
-
- SUBROUTINE h5awrite_char_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_3_C'::h5awritec_3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5awritec_3_c
- END INTERFACE
-
- hdferr = h5awritec_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_3
-
-
- SUBROUTINE h5awrite_char_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_4_C'::h5awritec_4_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5awritec_4_c
- END INTERFACE
-
- hdferr = h5awritec_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_4
-
-
- SUBROUTINE h5awrite_char_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_5_C'::h5awritec_5_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5awritec_5_c
- END INTERFACE
-
- hdferr = h5awritec_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_5
-
-
- SUBROUTINE h5awrite_char_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_6_C'::h5awritec_6_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5awritec_6_c
- END INTERFACE
-
- hdferr = h5awritec_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_6
-
-
- SUBROUTINE h5awrite_char_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! INTEGER, EXTERNAL :: h5awritec_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awritec_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITEC_7_C'::h5awritec_7_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5awritec_7_c
- END INTERFACE
-
- hdferr = h5awritec_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_char_7
-
-!
-! NAME
-! h5aread_f
-!
-! PURPOSE
-! Reads an attribute.
-!
-! INPUTS
-! attr_id - attribute identifier
-! memtype_id - attribute memory type identifier
-! dims - 1D array of size 7, stores sizes of the
-! - buf array dimensions.
-! OUTPUTS
-! buf - buffer to read attribute data in
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! Explicit Fortran interfaces are added for
-! called C functions (it is needed for Windows
-! port). February 27, 2001
-!
-! dims parameter was added to make code portable;
-! April 4, 2001
-!
-! Changed buf intent to INOUT to be consistant
-! with how the C functions handles it. The pg
-! compiler will return 0 if a buf value is not set.
-! February, 2008
-!
-! NOTES
-! This function is overloaded to write INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions.
-!
-
- SUBROUTINE h5aread_integer_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_S_C'::h5aread_integer_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT)::buf
- END FUNCTION h5aread_integer_s_c
- END INTERFACE
- hdferr = h5aread_integer_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_scalar
-
- SUBROUTINE h5aread_integer_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_1_C'::h5aread_integer_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), DIMENSION(dims(1)) :: buf
- END FUNCTION h5aread_integer_1_c
- END INTERFACE
-
- hdferr = h5aread_integer_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_1
-
-
- SUBROUTINE h5aread_integer_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT),DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_2_C'::h5aread_integer_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5aread_integer_2_c
- END INTERFACE
-
- hdferr = h5aread_integer_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_2
-
-
- SUBROUTINE h5aread_integer_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_3_C'::h5aread_integer_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5aread_integer_3_c
- END INTERFACE
-
- hdferr = h5aread_integer_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_3
-
-
- SUBROUTINE h5aread_integer_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_4_C'::h5aread_integer_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5aread_integer_4_c
- END INTERFACE
-
- hdferr = h5aread_integer_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_4
-
-
- SUBROUTINE h5aread_integer_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_5_C'::h5aread_integer_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5aread_integer_5_c
- END INTERFACE
-
- hdferr = h5aread_integer_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_5
-
-
- SUBROUTINE h5aread_integer_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_6_C'::h5aread_integer_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5aread_integer_6_c
- END INTERFACE
-
- hdferr = h5aread_integer_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_6
-
-
- SUBROUTINE h5aread_integer_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_integer_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_integer_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_INTEGER_7_C'::h5aread_integer_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5aread_integer_7_c
- END INTERFACE
-
- hdferr = h5aread_integer_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_integer_7
-
-
- SUBROUTINE h5aread_real_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_S_C'::h5aread_real_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT)::buf
- END FUNCTION h5aread_real_s_c
- END INTERFACE
-
- hdferr = h5aread_real_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_scalar
-
- SUBROUTINE h5aread_real_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_1_C'::h5aread_real_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5aread_real_1_c
- END INTERFACE
-
- hdferr = h5aread_real_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_1
-
-
- SUBROUTINE h5aread_real_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_2_C'::h5aread_real_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5aread_real_2_c
- END INTERFACE
-
- hdferr = h5aread_real_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_2
-
-
- SUBROUTINE h5aread_real_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_3_C'::h5aread_real_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5aread_real_3_c
- END INTERFACE
-
- hdferr = h5aread_real_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_3
-
-
- SUBROUTINE h5aread_real_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_4_C'::h5aread_real_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5aread_real_4_c
- END INTERFACE
-
- hdferr = h5aread_real_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_4
-
-
- SUBROUTINE h5aread_real_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_5_C'::h5aread_real_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5aread_real_5_c
- END INTERFACE
-
- hdferr = h5aread_real_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_5
-
-
- SUBROUTINE h5aread_real_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_6_C'::h5aread_real_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5aread_real_6_c
- END INTERFACE
-
- hdferr = h5aread_real_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_6
-
-
- SUBROUTINE h5aread_real_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_real_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_real_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_REAL_7_C'::h5aread_real_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5aread_real_7_c
- END INTERFACE
-
- hdferr = h5aread_real_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_real_7
-
- SUBROUTINE h5aread_char_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_S_C'::h5areadc_s_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT) :: buf
- END FUNCTION h5areadc_s_c
- END INTERFACE
-
- hdferr = h5areadc_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_scalar
-
- SUBROUTINE h5aread_char_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_1_C'::h5areadc_1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5areadc_1_c
- END INTERFACE
-
- hdferr = h5areadc_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_1
-
-
- SUBROUTINE h5aread_char_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_2_C'::h5areadc_2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5areadc_2_c
- END INTERFACE
-
- hdferr = h5areadc_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_2
-
-
- SUBROUTINE h5aread_char_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_3_C'::h5areadc_3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5areadc_3_c
- END INTERFACE
-
- hdferr = h5areadc_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_3
-
-
- SUBROUTINE h5aread_char_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_4_C'::h5areadc_4_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5areadc_4_c
- END INTERFACE
-
- hdferr = h5areadc_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_4
-
-
- SUBROUTINE h5aread_char_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_5_C'::h5areadc_5_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5areadc_5_c
- END INTERFACE
-
- hdferr = h5areadc_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_5
-
-
- SUBROUTINE h5aread_char_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_6_C'::h5areadc_6_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5areadc_6_c
- END INTERFACE
-
- hdferr = h5areadc_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_6
-
-
- SUBROUTINE h5aread_char_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5areadc_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5areadc_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREADC_7_C'::h5areadc_7_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5areadc_7_c
- END INTERFACE
-
- hdferr = h5areadc_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_char_7
-
-END MODULE H5A_PROVISIONAL
-
-
diff --git a/fortran/src/H5Df.c b/fortran/src/H5Df.c
index 0d32dac..57b4d4d 100644
--- a/fortran/src/H5Df.c
+++ b/fortran/src/H5Df.c
@@ -1,6 +1,6 @@
/****h* H5Df/H5Df
* PURPOSE
- * This file contains C stubs for H5D Fortran APIs
+ * This file contains C stubs for H5D Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -48,7 +48,7 @@
* SOURCE
*/
int_f
-nh5dcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *space_id,
+h5dcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *space_id,
hid_t_f *lcpl_id, hid_t_f *dcpl_id, hid_t_f *dapl_id, hid_t_f *dset_id)
/******/
{
@@ -84,23 +84,23 @@ DONE:
* PURPOSE
* Call H5Dopen2 to open a dataset
* INPUTS
- * loc_id - file or group identifier
- * name - name of the dataset
- * namelen - name length
- * dapl_id - Dataset access property list
+ * loc_id - file or group identifier
+ * name - name of the dataset
+ * namelen - name length
+ * dapl_id - Dataset access property list
* OUTPUTS
- * dset_id - dataset identifier
+ * dset_id - dataset identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 4, 1999
+ * Wednesday, August 4, 1999
* HISTORY
- * Added 1.8 parameter: dapl_id
+ * Added 1.8 parameter: dapl_id
* SOURCE
*/
int_f
-nh5dopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *dapl_id, hid_t_f *dset_id)
+h5dopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *dapl_id, hid_t_f *dset_id)
/******/
{
char *c_name = NULL;
@@ -128,531 +128,6 @@ DONE:
return ret_value;
}
-
-/****if* H5Df/h5dwritec_c
- * NAME
- * h5dwritec_c
- * PURPOSE
- * Call h5dwrite_c to write a dataset of characters
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * buf - character data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Tuesday, May 14, 2002
- * HISTORY
- * This function is added to accomodate oveloaded h5dwrite_f
- * with the dims argument being of INTEGER(HSIZE_T) type
-
- * SOURCE
-*/
-int_f
-nh5dwritec_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dwritec_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dwrite_c function.
- */
- ret_value = nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-/****if* H5Df/h5dwrite_c
- * NAME
- * h5dwrite_c
- * PURPOSE
- * Call H5Dwrite to write a dataset
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * buf - data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Tuesday, May 14, 2002
- * HISTORY
- * This function is added to accomodate oveloaded h5dwrite_f
- * with the dims argument being of INTEGER(HSIZE_T) type
- *
- * Added nh5dwrite_integer(real,double)_s,1-7_c functions to eliminate
- * complains about wrong parameter types in h5dwrite_c function
- * called by Fortran rouitnes
- * October 10, 2006 EIP
- *
- * SOURCE
-*/
-int_f
-nh5dwrite_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f H5_ATTR_UNUSED *dims)
-/******/
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_dset_id;
- hid_t c_mem_type_id;
- hid_t c_mem_space_id;
- hid_t c_file_space_id;
- hid_t c_xfer_prp;
-
- /*
- * Define transfer property
- */
- c_xfer_prp = (hid_t)*xfer_prp;
-
- /*
- * Call H5Dwrite function.
- */
- c_dset_id = (hid_t)*dset_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_mem_space_id = (hid_t)*mem_space_id;
- c_file_space_id = (hid_t)*file_space_id;
- ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf);
-
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
-int_f
-nh5dwrite_integer_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_integer_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-int_f
-nh5dwrite_real_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_real_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dwrite_double_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dwrite_c function.
- */
- return nh5dwrite_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-
-/****if* H5Df/h5dwrite_ref_obj_c
- * NAME
- * h5dwrite_ref_obj_c
- * PURPOSE
- * Call H5Dwrite to write a dataset of object references
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * buf - data buffer with references to the objects.
- * n - number of references to be stored.
- * RETURNS
- * 0 on success,e-1 on failure
- * AUTHOR
- * Elena Pourmal
- * Tuesday, May 14, 2002
- * HISTORY
- * This function was added to accomodate h5dwrite_f with the
- * dims argumnet being of INTEGER(HSIZE_T) type.
- * SOURCE
-*/
-int_f
-nh5dwrite_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, haddr_t_f *buf, hsize_t_f *dims)
-/******/
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_dset_id;
- hid_t c_mem_type_id;
- hid_t c_mem_space_id;
- hid_t c_file_space_id;
- hid_t c_xfer_prp;
- hobj_ref_t *buf_c;
- unsigned int i, n;
-
- /*
- * Define transfer property
- */
- c_xfer_prp = (hid_t)*xfer_prp;
-
- /*
- * Allocate temporary buffer and copy references from Fortran.
- */
- n = (unsigned int)*dims;
- buf_c = (hobj_ref_t*)HDmalloc(sizeof(hobj_ref_t)*n);
- if ( buf_c != NULL ) {
- for (i = 0; i < n; i++)
- HDmemcpy(&buf_c[i], &buf[i], sizeof(haddr_t));
- }
- else return ret_value;
-
- /*
- * Call H5Dwrite function.
- */
- c_dset_id = (hid_t)*dset_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_mem_space_id = (hid_t)*mem_space_id;
- c_file_space_id = (hid_t)*file_space_id;
- ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c);
- HDfree(buf_c);
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
/****if* H5Df/h5dwrite_ref_reg_c
* NAME
* h5dwrite_ref_reg_c
@@ -677,7 +152,7 @@ nh5dwrite_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_
* SOURCE
*/
int_f
-nh5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims)
+h5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims)
/******/
{
int ret_value = -1;
@@ -723,549 +198,31 @@ nh5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_
return ret_value;
}
-
-
-/****if* H5Df/h5dreadc_c
- * NAME
- * h5dreadc_c
- * PURPOSE
- * Call h5dread_c to read a dataset of characters
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * OUTPUTS
- * buf - character data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, May 15, 2002
- * HISTORY
- * This function was added to accomodate h5dread_f subroutine
- * with the dims parameter being of INTEGER(HSIZE_T_F) size.
- * SOURCE
-*/
-int_f
-nh5dreadc_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-int_f
-nh5dreadc_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims)
-
-{
- int ret_value = -1;
-
- /*
- * Call h5dread_c function.
- */
- ret_value = nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims);
-
- return ret_value;
-}
-
-/****if* H5Df/h5dread_c
- * NAME
- * h5dread_c
- * PURPOSE
- * Call H5Draed to read a dataset
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * OUTPUTS
- * buf - data buffer
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, May 15, 2002
- * HISTORY
- * This function was added to accomodate h5dread_f subroutine
- * with the dims parameter being of INTEGER(HSIZE_T_F) size.
- *
- * Added nh5dread_integer(real,double)_s,1-7_c functions to eliminate
- * complains about wrong parameter types in h5dwrite_c function
- * called by Fortran rouitnes
- * October 10, 2006 EIP
- *
- * SOURCE
-*/
-int_f
-nh5dread_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f H5_ATTR_UNUSED *dims)
-/******/
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_dset_id;
- hid_t c_mem_type_id;
- hid_t c_mem_space_id;
- hid_t c_file_space_id;
- hid_t c_xfer_prp;
-
- /*
- * Define transfer property
- */
- c_xfer_prp = (hid_t)*xfer_prp;
-
- /*
- * Call H5Dread function.
- */
- c_dset_id = (hid_t)*dset_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_mem_space_id = (hid_t)*mem_space_id;
- c_file_space_id = (hid_t)*file_space_id;
- ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf);
-
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
-int_f
-nh5dread_integer_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_integer_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_real_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-int_f
-nh5dread_double_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims)
-
-{
- /*
- * Call h5dread_c function.
- */
- return nh5dread_c(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, buf, dims);
-}
-
-/****if* H5Df/h5dread_ref_obj_c
- * NAME
- * h5dread_ref_obj_c
- * PURPOSE
- * Call H5Dread to read a dataset of object references
- * INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * buf - data buffer to store references to the objects.
- * n - number of references to be stored.
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, May 15, 2002
- * HISTORY
- * This function was added to accomodate h5dread_f subroutine
- * with the dims parameter being of INTEGER(HSIZE_T_F) size.
- * SOURCE
-*/
-int_f
-nh5dread_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, haddr_t_f * buf, hsize_t_f *dims)
-/******/
-{
- int ret_value = -1;
- herr_t ret = -1;
- hid_t c_dset_id;
- hid_t c_mem_type_id;
- hid_t c_mem_space_id;
- hid_t c_file_space_id;
- hid_t c_xfer_prp;
- hobj_ref_t *buf_c = NULL;
- hsize_t i,n;
-
- /*
- * Define transfer property
- */
- c_xfer_prp = (hid_t)*xfer_prp;
-
- /*
- * Allocate temporary buffer.
- */
- n = (hsize_t)*dims;
- buf_c = (hobj_ref_t*)HDmalloc(sizeof(hobj_ref_t)*(size_t)n);
- if ( buf_c != NULL ) {
- /*
- * Call H5Dread function.
- */
- c_dset_id = (hid_t)*dset_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_mem_space_id = (hid_t)*mem_space_id;
- c_file_space_id = (hid_t)*file_space_id;
- ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c);
- if (ret >=0) {
- for (i = 0; i < n; i++)
- HDmemcpy(&buf[i], &buf_c[i], sizeof(haddr_t));
- }
- if ( buf_c != NULL ) HDfree(buf_c);
- }
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
/****if* H5Df/h5dread_ref_reg_c
* NAME
* h5dread_ref_reg_c
* PURPOSE
* Call H5Dread to read a dataset of dataset region references
* INPUTS
- * dset_id - dataset identifier
- * mem_type_id - memory datatype identifier
- * mem_space_id - memory dataspace identifier
- * file_space_id - memory dataspace identifier
- * xfer_pr - identifier of transfer property list
- * buf - data buffer to store references to the objects.
- * n - number of references to be stored.
+ * dset_id - dataset identifier
+ * mem_type_id - memory datatype identifier
+ * mem_space_id - memory dataspace identifier
+ * file_space_id - memory dataspace identifier
+ * xfer_pr - identifier of transfer property list
+ * buf - data buffer to store references to the objects.
+ * n - number of references to be stored.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, May 15, 2002
+ * Wednesday, May 15, 2002
* HISTORY
- * This function was added to accomodate h5dread_f subroutine
- * with the dims parameter being of INTEGER(HSIZE_T_F) size.
+ * This function was added to accomodate h5dread_f subroutine
+ * with the dims parameter being of INTEGER(HSIZE_T_F) size.
* SOURCE
*/
int_f
-nh5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims)
+h5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims)
/******/
{
int ret_value = -1;
@@ -1317,19 +274,19 @@ nh5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_i
* PURPOSE
* Call H5Dclose to close a dataset
* INPUTS
- * dset_id - identifier of the dataset to be closed
+ * dset_id - identifier of the dataset to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 4, 1999
+ * Wednesday, August 4, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5dclose_c ( hid_t_f *dset_id )
+h5dclose_c ( hid_t_f *dset_id )
/******/
{
int ret_value = 0;
@@ -1345,21 +302,21 @@ nh5dclose_c ( hid_t_f *dset_id )
* PURPOSE
* Call H5Dget_space to obtain dataspace of a dataset
* INPUTS
- * dset_id - identifier of the dataset
+ * dset_id - identifier of the dataset
* OUTPUTS
- * space_id - identifier of the dataset's dataspace
+ * space_id - identifier of the dataset's dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 19, 1999
+ * Thursday, August 19, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5dget_space_c ( hid_t_f *dset_id , hid_t_f *space_id)
+h5dget_space_c ( hid_t_f *dset_id , hid_t_f *space_id)
/******/
{
int ret_value = -1;
@@ -1380,21 +337,21 @@ nh5dget_space_c ( hid_t_f *dset_id , hid_t_f *space_id)
* PURPOSE
* Call H5Dget_type to obtain datatype of a dataset
* INPUTS
- * dset_id - identifier of the dataset
+ * dset_id - identifier of the dataset
* OUTPUTS
- * type_id - identifier of the dataset's datatype
+ * type_id - identifier of the dataset's datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 19, 1999
+ * Thursday, August 19, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5dget_type_c ( hid_t_f *dset_id , hid_t_f *type_id)
+h5dget_type_c ( hid_t_f *dset_id , hid_t_f *type_id)
/******/
{
int ret_value = -1;
@@ -1416,23 +373,23 @@ nh5dget_type_c ( hid_t_f *dset_id , hid_t_f *type_id)
* h5dget_create_plist_c
* PURPOSE
* Call H5Dget_create_plist to obtain creation property list
- * of a dataset
+ * of a dataset
* INPUTS
- * dset_id - identifier of the dataset
+ * dset_id - identifier of the dataset
* OUTPUTS
- * plist_id - identifier of he dataset creation property list
+ * plist_id - identifier of he dataset creation property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 19, 1999
+ * Thursday, August 19, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5dget_create_plist_c ( hid_t_f *dset_id , hid_t_f *plist_id)
+h5dget_create_plist_c ( hid_t_f *dset_id , hid_t_f *plist_id)
/******/
{
int ret_value = -1;
@@ -1456,24 +413,24 @@ nh5dget_create_plist_c ( hid_t_f *dset_id , hid_t_f *plist_id)
* PURPOSE
* Call H5Dset_extent to extend dataset with unlimited dimensions
* INPUTS
- * dset_id - identifier of the dataset
+ * dset_id - identifier of the dataset
* OUTPUTS
- * dims - array with the dimension sizes
+ * dims - array with the dimension sizes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, August 19, 1999
+ * Thursday, August 19, 1999
*
* HISTORY
- * Changed name from the now obsolete h5dextend
- * to h5dset_extent in order to match new fortran interface.
+ * Changed name from the now obsolete h5dextend
+ * to h5dset_extent in order to match new fortran interface.
* -MSB- March 14, 2008
* SOURCE
*/
int_f
-nh5dset_extent_c ( hid_t_f *dset_id , hsize_t_f *dims)
+h5dset_extent_c ( hid_t_f *dset_id , hsize_t_f *dims)
/******/
{
hid_t c_space_id;
@@ -1503,28 +460,28 @@ nh5dset_extent_c ( hid_t_f *dset_id , hsize_t_f *dims)
return ret_value;
}
-/****if* H5Df/nh5dget_storage_size_c
+/****if* H5Df/h5dget_storage_size_c
* NAME
- * nh5dget_storage_size_c
+ * h5dget_storage_size_c
* PURPOSE
* Call H5Dget_storage_size to return the amount of storage
- * required for a dataset
+ * required for a dataset
* INPUTS
- * dset_id - identifier of the dataset
+ * dset_id - identifier of the dataset
* OUTPUTS
- * size - the amount of storage required for a dataset
+ * size - the amount of storage required for a dataset
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, October 22, 2002
+ * Tuesday, October 22, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dget_storage_size_c ( hid_t_f *dset_id , hsize_t_f *size)
+h5dget_storage_size_c ( hid_t_f *dset_id , hsize_t_f *size)
/******/
{
int ret_value = -1;
@@ -1539,29 +496,29 @@ nh5dget_storage_size_c ( hid_t_f *dset_id , hsize_t_f *size)
return ret_value;
}
-/****if* H5Df/nh5dvlen_get_max_len_c
+/****if* H5Df/h5dvlen_get_max_len_c
* NAME
- * nh5dvlen_get_max_len_c
+ * h5dvlen_get_max_len_c
* PURPOSE
* Get the maximum size of the VL dataset element
* INPUTS
- * dset_id - identifier of the dataset
- * type_id - datatype identifier
- * space_id - dataspace identifier
+ * dset_id - identifier of the dataset
+ * type_id - datatype identifier
+ * space_id - dataspace identifier
* OUTPUTS
- * len - maximum length of the VL dataset element
+ * len - maximum length of the VL dataset element
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, October 22, 2002
+ * Tuesday, October 22, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dvlen_get_max_len_c ( hid_t_f *dset_id , hid_t_f *type_id, hid_t_f *space_id, size_t_f *len)
+h5dvlen_get_max_len_c ( hid_t_f *dset_id , hid_t_f *type_id, hid_t_f *space_id, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1597,34 +554,34 @@ DONE:
HDfree(c_buf);
return ret_value;
}
-/****if* H5Df/nh5dwrite_vl_integer_c
+/****if* H5Df/h5dwrite_vl_integer_c
* NAME
- * nh5dwrite_vl_integer_c
+ * h5dwrite_vl_integer_c
* PURPOSE
* Write variable length dataset
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * buf - data buffer
- * dims - one-demnsional array of size 2
- * dims[0] = MAXLENGTH
- * dims[1] = number of elements of VL type
- * len - array element lenghts
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * buf - data buffer
+ * dims - one-demnsional array of size 2
+ * dims[0] = MAXLENGTH
+ * dims[1] = number of elements of VL type
+ * len - array element lenghts
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, October 23, 2002
+ * Wednesday, October 23, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dwrite_vl_integer_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len)
+h5dwrite_vl_integer_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1670,35 +627,35 @@ DONE:
return ret_value;
}
-/****if* H5Df/nh5dread_vl_integer_c
+/****if* H5Df/h5dread_vl_integer_c
* NAME
- * nh5dread_vl_integer_c
+ * h5dread_vl_integer_c
* PURPOSE
* Read variable length dataset
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * dims - one-demnsional array of size 2
- * dims[0] = MAXLENGTH
- * dims[1] = number of elements of VL type
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * dims - one-demnsional array of size 2
+ * dims[0] = MAXLENGTH
+ * dims[1] = number of elements of VL type
* OUTPUTS
- * buf - data buffer
- * len - array element lenghts
+ * buf - data buffer
+ * len - array element lenghts
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, October 24, 2002
+ * Wednesday, October 24, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dread_vl_integer_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len)
+h5dread_vl_integer_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1742,33 +699,33 @@ DONE:
return ret_value;
}
-/****if* H5Df/nh5dwrite_vl_string_c
+/****if* H5Df/h5dwrite_vl_string_c
* NAME
- * nh5dwrite_vl_string_c
+ * h5dwrite_vl_string_c
* PURPOSE
* Write variable length strings from Fortran program
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * buf - data buffer
- * dims - one-demnsional array of size 2
- * dims[0] = number of strings of size max_len
- * len - array of strings lengths
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * buf - data buffer
+ * dims - one-demnsional array of size 2
+ * dims[0] = number of strings of size max_len
+ * len - array of strings lengths
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 28, 2002
+ * Monday, October 28, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dwrite_vl_string_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len)
+h5dwrite_vl_string_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1829,33 +786,33 @@ DONE:
HDfree(tmp);
return ret_value;
}
-/****if* H5Df/nh5dread_vl_string_c
+/****if* H5Df/h5dread_vl_string_c
* NAME
- * nh5dread_vl_string_c
+ * h5dread_vl_string_c
* PURPOSE
* Read variable length strings from Fortran program
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * dims - one-demnsional array of size 2
- * dims[0] = number of strings of size max_len
- * Output: buf - data buffer
- * len - array of strings lengths
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * dims - one-demnsional array of size 2
+ * dims[0] = number of strings of size max_len
+ * Output: buf - data buffer
+ * len - array of strings lengths
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, November 1, 2002
+ * Friday, November 1, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dread_vl_string_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len)
+h5dread_vl_string_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1912,34 +869,34 @@ nh5dread_vl_string_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_spa
return ret_value;
}
-/****if* H5Df/nh5dwrite_vl_real_c
+/****if* H5Df/h5dwrite_vl_real_c
* NAME
- * nh5dwrite_vl_real_c
+ * h5dwrite_vl_real_c
* PURPOSE
* Write variable length dataset
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * buf - data buffer
- * dims - one-demnsional array of size 2
- * dims[0] = MAXLENGTH
- * dims[1] = number of elements of VL type
- * len - array element lenghts
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * buf - data buffer
+ * dims - one-demnsional array of size 2
+ * dims[0] = MAXLENGTH
+ * dims[1] = number of elements of VL type
+ * len - array element lenghts
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, November 11, 2002
+ * Monday, November 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dwrite_vl_real_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len)
+h5dwrite_vl_real_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -1985,35 +942,35 @@ DONE:
return ret_value;
}
-/****if* H5Df/nh5dread_vl_real_c
+/****if* H5Df/h5dread_vl_real_c
* NAME
- * nh5dread_vl_real_c
+ * h5dread_vl_real_c
* PURPOSE
* Read variable length dataset
* INPUTS
- * dset_id - identifier of the dataset
- * mem_type_id - datatype identifier
- * mem_space_id - dataspace identifier
- * file_space_id - file dataspace identifier
- * xfer - file transfer property
- * dims - one-demnsional array of size 2
- * dims[0] = MAXLENGTH
- * dims[1] = number of elements of VL type
+ * dset_id - identifier of the dataset
+ * mem_type_id - datatype identifier
+ * mem_space_id - dataspace identifier
+ * file_space_id - file dataspace identifier
+ * xfer - file transfer property
+ * dims - one-demnsional array of size 2
+ * dims[0] = MAXLENGTH
+ * dims[1] = number of elements of VL type
* OUTPUTS
- * buf - data buffer
- * len - array element lenghts
+ * buf - data buffer
+ * len - array element lenghts
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, November 11, 2002
+ * Monday, November 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5dread_vl_real_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len)
+h5dread_vl_real_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len)
/******/
{
int ret_value = -1;
@@ -2058,39 +1015,6 @@ DONE:
return ret_value;
}
-/****if* H5Df/h5dfillc_c
- * NAME
- * h5dfillc_c
- * PURPOSE
- * Call h5fill_c to fill memory buffer with a fill value
- * INPUTS
- * fill_value - fill value
- * fill_type_id - fill value datatype identifier
- * space_id - memory space selection identifier
- * buf - memory buffer to fill
- * mem_type_id - memory buffer dtatype identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, March 12, 2003
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5dfillc_c (_fcd fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, _fcd buf, hid_t_f *mem_type_id)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5dfill_c function.
- */
- ret_value = h5dfill_c(_fcdtocp(fill_value), fill_type_id, space_id, _fcdtocp(buf), mem_type_id);
-
- return ret_value;
-}
/****if* H5Df/h5dfill_c
* NAME
* h5dfill_c
@@ -2135,98 +1059,26 @@ h5dfill_c (void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * b
return ret_value;
}
-int_f
-nh5dfill_integer_c (void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id)
-
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_fill_type_id;
- hid_t c_mem_type_id;
- hid_t c_space_id;
-
- c_fill_type_id = (hid_t)*fill_type_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_space_id = (hid_t)*space_id;
-
- /*
- * Call H5Dfill function.
- */
- ret = H5Dfill(fill_value, c_fill_type_id, buf, c_mem_type_id, c_space_id);
-
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
-int_f
-nh5dfill_real_c (void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id)
-
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_fill_type_id;
- hid_t c_mem_type_id;
- hid_t c_space_id;
-
- c_fill_type_id = (hid_t)*fill_type_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_space_id = (hid_t)*space_id;
-
- /*
- * Call H5Dfill function.
- */
- ret = H5Dfill(fill_value, c_fill_type_id, buf, c_mem_type_id, c_space_id);
-
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
-int_f
-nh5dfill_double_c (void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id)
-
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_fill_type_id;
- hid_t c_mem_type_id;
- hid_t c_space_id;
-
- c_fill_type_id = (hid_t)*fill_type_id;
- c_mem_type_id = (hid_t)*mem_type_id;
- c_space_id = (hid_t)*space_id;
-
- /*
- * Call H5Dfill function.
- */
- ret = H5Dfill(fill_value, c_fill_type_id, buf, c_mem_type_id, c_space_id);
-
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
/****if* H5Df/h5dget_space_status_c
* NAME
* h5dget_space_status_c
* PURPOSE
* Call H5Dget_space_status to request dataspace allocation status
* INPUTS
- * dset_id - dataset identifier
+ * dset_id - dataset identifier
* OUTPUTS
- * flag - status flag
+ * flag - status flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12, 2003
+ * Wednesday, March 12, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5dget_space_status_c ( hid_t_f *dset_id, int_f *flag)
+h5dget_space_status_c ( hid_t_f *dset_id, int_f *flag)
/******/
{
int ret_value = -1;
@@ -2256,21 +1108,21 @@ nh5dget_space_status_c ( hid_t_f *dset_id, int_f *flag)
* loc_id - Identifier of the file or group within which to create the dataset.
* type_id - Identifier of the datatype to use when creating the dataset.
* space_id - Identifier of the dataspace to use when creating the dataset.
- * dcpl_id - Dataset creation property list identifier.
- * dapl_id - Dataset access property list identifier.
+ * dcpl_id - Dataset creation property list identifier.
+ * dapl_id - Dataset access property list identifier.
* OUTPUTS
*
- * dset_id - dataset identifier
+ * dset_id - dataset identifier
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* SOURCE
*/
int_f
-nh5dcreate_anon_c (hid_t_f *loc_id, hid_t_f *type_id, hid_t_f *space_id,
+h5dcreate_anon_c (hid_t_f *loc_id, hid_t_f *type_id, hid_t_f *space_id,
hid_t_f *dcpl_id, hid_t_f *dapl_id, hid_t_f *dset_id)
/******/
{
@@ -2355,8 +1207,8 @@ h5dwrite_f_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id,
* file_space_id - file dataspace identifier
* xfer - file transfer property
* dims - one-demnsional array of size 2
- * dims[0] = MAXLENGTH
- * dims[1] = number of elements of VL type
+ * dims[0] = MAXLENGTH
+ * dims[1] = number of elements of VL type
* OUTPUTS
* buf - data buffer
* len - array element lenghts
@@ -2396,9 +1248,9 @@ h5dread_f_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id,
ret_value = 0;
return ret_value;
}
-/****if* H5Df/nh5dget_access_plist_c
+/****if* H5Df/h5dget_access_plist_c
* NAME
- * nh5dget_access_plist_c
+ * h5dget_access_plist_c
* PURPOSE
* Call H5Dget_access_plist
* INPUTS
@@ -2414,7 +1266,7 @@ h5dread_f_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id,
* SOURCE
*/
int_f
-nh5dget_access_plist_c (hid_t_f *dset_id, hid_t_f *plist_id)
+h5dget_access_plist_c (hid_t_f *dset_id, hid_t_f *plist_id)
/******/
{
int ret_value = -1;
@@ -2430,22 +1282,22 @@ nh5dget_access_plist_c (hid_t_f *dset_id, hid_t_f *plist_id)
return ret_value;
}
-/****if* H5Df/nh5dvlen_reclaim_c
+/****if* H5Df/h5dvlen_reclaim_c
* NAME
* h5dvlen_reclaim_c
* PURPOSE
* Call H5Dvlen_reclaim
* INPUTS
- * type_id - Identifier of the datatype.
- * space_id - Identifier of the dataspace.
- * plist_id - Identifier of the property list used to create the buffer.
- * buf - Pointer to the buffer to be reclaimed.
+ * type_id - Identifier of the datatype.
+ * space_id - Identifier of the dataspace.
+ * plist_id - Identifier of the property list used to create the buffer.
+ * buf - Pointer to the buffer to be reclaimed.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January 15, 2011
+ * January 15, 2011
*
* SOURCE
*/
diff --git a/fortran/src/H5Dff.F90 b/fortran/src/H5Dff.F90
new file mode 100644
index 0000000..afdb5ba
--- /dev/null
+++ b/fortran/src/H5Dff.F90
@@ -0,0 +1,1878 @@
+!****h* ROBODoc/H5D
+!
+! NAME
+! MODULE H5D
+!
+! FILE
+! fortran/src/H5Dff.f90
+!
+! PURPOSE
+! This file contains Fortran interfaces for H5D functions.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! NOTES
+! (1) The maximum rank of an array allowed in Fortran is 7, therefore
+! we only provide an interface for arrays up to and including rank 7.
+!
+! (2) Unfortunately we are using a generic interface and one of the factors
+! used in determining the proper routine to select is that of the array
+! rank being passed. Therefore, we can not create just one subroutine for
+! each array type (integer, real, etc...) and use a
+! rank 1 array of assumed size to handle multiple ranks, i.e.
+! (i.e. integer, dimension(*) :: ... )
+! (i.e. real , dimension(*) :: ... ) etc...
+!
+! (3) Could not place the USE, INTRINSIC :: ISO_C_BINDING in the module header because it may
+! conflict with the USE, INTRINSIC :: ISO_C_BINDING included in the user's program. Moved
+! the statement instead to each subroutine.
+!
+!
+! (4) C_LOC and character strings according to the Fortran 2003 standard:
+!
+! 15.1.2.5 C_LOC(X)
+!
+! Argument. X shall either
+!
+! (A) have interoperable type and type parameters and be
+! (a) a variable that has the TARGET attribute and is interoperable,
+! (b) an allocated allocatable variable that has the TARGET attribute
+! and is not an array of zero size, or
+! (c) an associated scalar pointer, or
+! (B) be a nonpolymorphic scalar, have no length type parameters, and be
+! (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
+! (b) an allocated allocatable variable that has the TARGET attribute, or
+! (c) an associated pointer.
+!
+! - When X is a character, for interoperability the standard is:
+!
+! 15.2.1 Interoperability of intrinsic types
+!
+! ...if the type is character, interoperability also requires that the length type parameter
+! be omitted or be specified by an initialization expression whose value is one.
+!
+! THEREFORE compilers that have not extended the standard require the
+! argument in C_LOC to be of the variant:
+!
+! CHARACTER(LEN=1), TARGET :: chr
+! or
+! CHARACTER, TARGET :: chr
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new H5D function you must add the function name to the
+! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+!*****
+
+#include <H5config_f.inc>
+
+MODULE H5D
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ USE H5GLOBAL
+
+ INTERFACE h5dextend_f
+ MODULE PROCEDURE h5dset_extent_f
+ END INTERFACE
+
+ INTERFACE h5dread_vl_f
+ MODULE PROCEDURE h5dread_vl_integer
+ MODULE PROCEDURE h5dread_vl_real
+ MODULE PROCEDURE h5dread_vl_string
+ END INTERFACE
+
+ INTERFACE h5dwrite_vl_f
+ MODULE PROCEDURE h5dwrite_vl_integer
+ MODULE PROCEDURE h5dwrite_vl_real
+ MODULE PROCEDURE h5dwrite_vl_string
+ END INTERFACE
+
+ INTERFACE h5dwrite_f
+ MODULE PROCEDURE h5dwrite_reference_obj
+ MODULE PROCEDURE h5dwrite_reference_dsetreg
+ MODULE PROCEDURE h5dwrite_char_scalar
+ ! This is the preferred way to call h5dwrite
+ ! by passing an address
+ MODULE PROCEDURE h5dwrite_ptr
+ END INTERFACE
+
+ INTERFACE h5dread_f
+ MODULE PROCEDURE h5dread_reference_obj
+ MODULE PROCEDURE h5dread_reference_dsetreg
+ MODULE PROCEDURE h5dread_char_scalar
+ ! This is the preferred way to call h5dread
+ ! by passing an address
+ MODULE PROCEDURE h5dread_ptr
+
+ END INTERFACE
+
+
+! Interface for the function used to pass the C pointer of the buffer
+! to the C H5Dwrite routine
+
+ INTERFACE
+ INTEGER FUNCTION h5dwrite_f_c(dset_id, mem_type_id, &
+ mem_space_id_default , &
+ file_space_id_default, &
+ xfer_prp_default, buf ) BIND(C, NAME='h5dwrite_f_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ TYPE(C_PTR), VALUE :: buf
+ END FUNCTION h5dwrite_f_c
+ END INTERFACE
+
+! Interface for the function used to pass the C pointer of the buffer
+! to the C H5Dread routine
+
+ INTERFACE
+ INTEGER FUNCTION h5dread_f_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf) BIND(C, NAME='h5dread_f_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ TYPE(C_PTR), VALUE :: buf
+ END FUNCTION h5dread_f_c
+ END INTERFACE
+
+ INTERFACE h5dfill_f
+ MODULE PROCEDURE h5dfill_integer
+ MODULE PROCEDURE h5dfill_c_float
+ MODULE PROCEDURE h5dfill_c_double
+#ifdef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+ MODULE PROCEDURE h5dfill_c_long_double
+#endif
+ MODULE PROCEDURE h5dfill_char
+ END INTERFACE
+
+! Interface for the function used to pass the C pointer of the buffer
+! to the C H5Dfill routine
+
+ INTERFACE
+ INTEGER FUNCTION h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id) BIND(C, NAME='h5dfill_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ TYPE(C_PTR), VALUE :: f_ptr_fill_value
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ TYPE(C_PTR), VALUE :: f_ptr_buf
+ INTEGER(HID_T) :: mem_type_id
+ END FUNCTION h5dfill_c
+ END INTERFACE
+
+CONTAINS
+
+!
+!****s* H5D/h5dcreate_f
+!
+! NAME
+! h5dcreate_f
+!
+! PURPOSE
+! Creates a dataset at the specified location
+!
+! INPUTS
+! loc_id - file or group identifier
+! name - dataset name
+! type_id - dataset datatype identifier
+! space_id - dataset dataspace identifier
+! OUTPUTS
+! dset_id - dataset identifier
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! creation_prp - Dataset creation property list
+! lcpl_id - Link creation property list
+! dapl_id - Dataset access property list
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+!
+! - Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! - Added version's 1.8 new optional parameters
+! February, 2008
+!
+! SOURCE
+ SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id, &
+ hdferr, dcpl_id, lcpl_id, dapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
+ INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list
+
+ INTEGER(HID_T) :: lcpl_id_default
+ INTEGER(HID_T) :: dcpl_id_default
+ INTEGER(HID_T) :: dapl_id_default
+
+ INTEGER :: namelen ! Name length
+
+ INTERFACE
+ INTEGER FUNCTION h5dcreate_c(loc_id, name, namelen, type_id, &
+ space_id, lcpl_id_default, dcpl_id_default, dapl_id_default, dset_id) &
+ BIND(C,NAME='h5dcreate_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(IN) :: space_id
+
+ INTEGER(HID_T) :: lcpl_id_default
+ INTEGER(HID_T) :: dcpl_id_default
+ INTEGER(HID_T) :: dapl_id_default
+
+ INTEGER(HID_T), INTENT(OUT) :: dset_id
+ END FUNCTION h5dcreate_c
+ END INTERFACE
+
+ lcpl_id_default = H5P_DEFAULT_F
+ dcpl_id_default = H5P_DEFAULT_F
+ dapl_id_default = H5P_DEFAULT_F
+
+ IF(PRESENT(lcpl_id)) lcpl_id_default = lcpl_id
+ IF(PRESENT(dcpl_id)) dcpl_id_default = dcpl_id
+ IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
+
+ namelen = LEN(name)
+ hdferr = h5dcreate_c(loc_id, name, namelen, type_id, space_id, &
+ lcpl_id_default, dcpl_id_default, dapl_id_default, dset_id)
+
+ END SUBROUTINE h5dcreate_f
+
+!
+!****s* H5D/h5dopen_f
+!
+! NAME
+! h5dopen_f
+!
+! PURPOSE
+! Opens an existing dataset.
+!
+! INPUTS
+! loc_id - file or group identifier
+! name - dataset name
+! OUTPUTS
+! dset_id - dataset identifier
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! dapl_id - Dataset access property list
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! -Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! -Added 1.8 (optional) parameter dapl_id
+! February, 2008, M. Scot Breitenfeld
+!
+! SOURCE
+ SUBROUTINE h5dopen_f(loc_id, name, dset_id, hdferr, dapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset
+ INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list
+!*****
+ INTEGER :: namelen ! Name length
+
+ INTEGER(HID_T) :: dapl_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id) &
+ BIND(C,NAME='h5dopen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ INTEGER(HID_T), INTENT(IN) :: dapl_id_default
+ INTEGER(HID_T), INTENT(OUT) :: dset_id
+ END FUNCTION h5dopen_c
+ END INTERFACE
+
+ dapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
+
+ namelen = LEN(name)
+ hdferr = h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id)
+
+ END SUBROUTINE h5dopen_f
+
+!
+!****s* H5D/h5dclose_f
+!
+! NAME
+! h5dclose_f
+!
+! PURPOSE
+! Closes a dataset.
+!
+! INPUTS
+! dset_id - dataset identifier
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! SOURCE
+ SUBROUTINE h5dclose_f(dset_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dclose_c(dset_id) &
+ BIND(C,NAME='h5dclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ END FUNCTION h5dclose_c
+ END INTERFACE
+
+ hdferr = h5dclose_c(dset_id)
+
+ END SUBROUTINE h5dclose_f
+
+!
+!****s* H5D/h5dget_type_f
+!
+! NAME
+! h5dget_type_f
+!
+! PURPOSE
+! Returns an identifier for a copy of the datatype for a
+! dataset.
+!
+! INPUTS
+! dataset_id - dataset identifier
+! OUTPUTS
+! datatype_id - dataspace identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! NOTES
+!
+! SOURCE
+ SUBROUTINE h5dget_type_f(dataset_id, datatype_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(OUT) :: datatype_id ! Datatype identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_type_c(dataset_id, datatype_id) &
+ BIND(C,NAME='h5dget_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HID_T), INTENT(OUT) :: datatype_id
+ END FUNCTION h5dget_type_c
+ END INTERFACE
+
+ hdferr = h5dget_type_c (dataset_id, datatype_id)
+ END SUBROUTINE h5dget_type_f
+
+!
+!****s* H5D/h5dset_extent
+!
+! NAME
+! h5dset_extent (instead of obsolete name: h5dextend_f)
+!
+! PURPOSE
+! Extends a dataset with unlimited dimension.
+!
+! INPUTS
+! dataset_id - dataset identifier
+! size - array containing the new magnitude of
+! each dimension
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! Changed name from the now obsolete h5dextend_f
+! to h5dset_extent_f. Provided interface to old name
+! for backward compatability. -MSB- March 14, 2008
+!
+! SOURCE
+ SUBROUTINE h5dset_extent_f(dataset_id, size, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size
+ ! Array containing
+ ! dimensions' sizes
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dset_extent_c(dataset_id, size) &
+ BIND(C,NAME='h5dset_extent_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size
+ END FUNCTION h5dset_extent_c
+ END INTERFACE
+
+ hdferr = H5Dset_extent_c(dataset_id, size)
+ END SUBROUTINE h5dset_extent_f
+
+!****s* H5D/h5dget_create_plist_f
+!
+! NAME
+! h5dget_create_plist_f
+!
+! PURPOSE
+! Returns an identifier for a copy of the dataset creation
+! property list for a dataset.
+!
+! INPUTS
+! dataset_id - dataset identifier
+! OUTPUTS
+! plist_id - creation property list identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+! SOURCE
+ SUBROUTINE h5dget_create_plist_f(dataset_id, plist_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(OUT) :: plist_id ! Dataset creation
+ ! property list identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_create_plist_c(dataset_id, plist_id) &
+ BIND(C,NAME='h5dget_create_plist_c')
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HID_T), INTENT(OUT) :: plist_id
+ END FUNCTION h5dget_create_plist_c
+ END INTERFACE
+
+ hdferr = h5dget_create_plist_c(dataset_id, plist_id)
+ END SUBROUTINE h5dget_create_plist_f
+
+!
+!****s* H5D/h5dget_storage_size_f
+!
+! NAME
+! h5dget_storage_size_f
+!
+! PURPOSE
+! Returns the amount of storage requires by a dataset
+!
+! INPUTS
+! dataset_id - dataset identifier
+! OUTPUTS
+! size - datastorage size
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 15, 2002
+! SOURCE
+ SUBROUTINE h5dget_storage_size_f(dataset_id, size, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HSIZE_T), INTENT(OUT) :: size ! Amount of storage
+ ! allocated for dataset
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_storage_size_c(dataset_id, size) &
+ BIND(C,NAME='h5dget_storage_size_c')
+ IMPORT :: HID_T, HSIZE_T
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HSIZE_T), INTENT(OUT) :: size
+ END FUNCTION h5dget_storage_size_c
+ END INTERFACE
+
+ hdferr = h5dget_storage_size_c(dataset_id, size)
+ END SUBROUTINE h5dget_storage_size_f
+
+!
+!****s* H5D/h5dvlen_get_max_len_f
+!
+! NAME
+! h5dvlen_get_max_len_f
+!
+! PURPOSE
+! Returns maximum length of the VL array elements
+!
+! INPUTS
+! dataset_id - dataset identifier
+! type_id - datatype identifier
+! space_id - dataspace identifier
+! OUTPUTS
+! size - buffer size
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! NONE
+!
+! AUTHOR
+! Elena Pourmal
+! October 15, 2002
+!
+! SOURCE
+ SUBROUTINE h5dvlen_get_max_len_f(dataset_id, type_id, space_id, len, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
+ INTEGER(SIZE_T), INTENT(OUT) :: len ! Maximum length of the element
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len) &
+ BIND(C,NAME='h5dvlen_get_max_len_c')
+ IMPORT :: HID_T, SIZE_T
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(SIZE_T), INTENT(OUT) :: len
+ END FUNCTION h5dvlen_get_max_len_c
+ END INTERFACE
+
+ hdferr = h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len)
+ END SUBROUTINE h5dvlen_get_max_len_f
+
+!
+!****s* H5D/h5dget_space_status_f
+!
+! NAME
+! h5dget_space_status_f
+!
+! PURPOSE
+! Returns the status of data space allocation.
+!
+! INPUTS
+! dset_id - dataset identifier
+! OUTPUTS
+! flag - status; may have one of the following values:
+! H5D_SPACE_STS_ERROR_F
+! H5D_SPACE_STS_NOT_ALLOCATED_F
+! H5D_SPACE_STS_PART_ALLOCATED_F
+! H5D_SPACE_STS_ALLOCATED_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! March 12, 2003
+!
+! SOURCE
+ SUBROUTINE h5dget_space_status_f(dset_id, flag, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataspace identifier
+ INTEGER, INTENT(OUT) :: flag ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ !*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_space_status_c(dset_id, flag) &
+ BIND(C,NAME='h5dget_space_status_c')
+ IMPORT :: HID_T
+ INTEGER(HID_T) :: dset_id
+ INTEGER :: flag
+ END FUNCTION h5dget_space_status_c
+ END INTERFACE
+
+ hdferr = h5dget_space_status_c(dset_id, flag)
+ END SUBROUTINE h5dget_space_status_f
+
+!
+!****s* H5D/h5dcreate_anon_f
+!
+! NAME
+! h5dcreate_anon_f
+!
+! PURPOSE
+! Creates a dataset in a file without linking it into the file structure
+!
+! INPUTS
+! loc_id - Identifier of the file or group within which to create the dataset.
+! type_id - Identifier of the datatype to use when creating the dataset.
+! space_id - Identifier of the dataspace to use when creating the dataset.
+! OUTPUTS
+! dset_id - dataset identifier
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! dcpl_id - Dataset creation property list identifier.
+! dapl_id - Dataset access property list identifier.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 11, 2008
+!
+! SOURCE
+ SUBROUTINE h5dcreate_anon_f(loc_id, type_id, space_id, dset_id, hdferr, dcpl_id, dapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier.
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier.
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier.
+ INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier.
+ INTEGER, INTENT(OUT) :: hdferr ! Error code.
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list identifier.
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list identifier.
+!*****
+ INTEGER(HID_T) :: dcpl_id_default
+ INTEGER(HID_T) :: dapl_id_default
+
+ !
+ ! MS FORTRAN needs explicit interface for C functions called here.
+ !
+ INTERFACE
+ INTEGER FUNCTION h5dcreate_anon_c(loc_id, type_id, space_id, dcpl_id_default, dapl_id_default, dset_id) &
+ BIND(C,NAME='h5dcreate_anon_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HID_T) :: dcpl_id_default
+ INTEGER(HID_T) :: dapl_id_default
+ INTEGER(HID_T), INTENT(OUT) :: dset_id
+ END FUNCTION h5dcreate_anon_c
+ END INTERFACE
+
+ dcpl_id_default = H5P_DEFAULT_F
+ dapl_id_default = H5P_DEFAULT_F
+
+ IF(PRESENT(dcpl_id)) dcpl_id_default = dcpl_id
+ IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
+
+ hdferr = h5dcreate_anon_c(loc_id, type_id, space_id, dcpl_id_default, dapl_id_default, dset_id)
+
+ END SUBROUTINE h5dcreate_anon_f
+
+ SUBROUTINE h5dwrite_vl_integer(dset_id, mem_type_id, buf, dims, len, &
+ hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store
+ ! the length of each
+ ! element
+ INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5dwrite_vl_integer_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf, dims, len) &
+ BIND(C,NAME='h5dwrite_vl_integer_c')
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len
+ INTEGER, INTENT(IN), DIMENSION(dims(1),dims(2)) :: buf
+ END FUNCTION h5dwrite_vl_integer_c
+ END INTERFACE
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dwrite_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, len)
+
+ END SUBROUTINE h5dwrite_vl_integer
+
+ SUBROUTINE h5dread_vl_integer(dset_id, mem_type_id, buf, dims, len, &
+ hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
+ INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store
+ ! the length of each
+ ! element
+ INTEGER, INTENT(INOUT), &
+ DIMENSION(dims(1),dims(2)), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ ! -1 if failed, 0 otherwise
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: tmp
+ INTEGER :: error
+
+ INTERFACE
+ INTEGER FUNCTION h5dread_vl_integer_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf, dims, len) &
+ BIND(C,NAME='h5dread_vl_integer_c')
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len
+ INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2)) :: buf
+ END FUNCTION h5dread_vl_integer_c
+ END INTERFACE
+
+ CALL h5dget_space_f(dset_id, tmp, error)
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = tmp
+ file_space_id_default = tmp
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dread_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, len)
+
+ END SUBROUTINE h5dread_vl_integer
+
+ SUBROUTINE h5dwrite_vl_real(dset_id, mem_type_id, buf, dims, len, &
+ hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store
+ ! the length of each
+ ! element
+ REAL, INTENT(IN), &
+ DIMENSION(dims(1),dims(2)) :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5dwrite_vl_real_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf, dims, len) &
+ BIND(C,NAME='h5dwrite_vl_real_c')
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len
+ REAL, INTENT(IN), &
+ DIMENSION(dims(1),dims(2)) :: buf
+ END FUNCTION h5dwrite_vl_real_c
+ END INTERFACE
+
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dwrite_vl_real_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, len)
+
+ END SUBROUTINE h5dwrite_vl_real
+
+ SUBROUTINE h5dread_vl_real(dset_id, mem_type_id, buf, dims, len, &
+ hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
+ INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store the length of each element
+ REAL, INTENT(INOUT), &
+ DIMENSION(dims(1),dims(2)) :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ ! -1 if failed, 0 otherwise
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: tmp
+ INTEGER :: error
+
+ INTERFACE
+ INTEGER FUNCTION h5dread_vl_real_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf, dims, len) &
+ BIND(C,NAME='h5dread_vl_real_c')
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len
+ REAL, INTENT(INOUT), &
+ DIMENSION(dims(1),dims(2)) :: buf
+ END FUNCTION h5dread_vl_real_c
+ END INTERFACE
+
+ CALL h5dget_space_f(dset_id, tmp, error)
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = tmp
+ file_space_id_default = tmp
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dread_vl_real_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, len)
+
+ END SUBROUTINE h5dread_vl_real
+
+ SUBROUTINE h5dwrite_vl_string(dset_id, mem_type_id, buf, dims, str_len, &
+ hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! Number of strings
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len ! Array to store the length of each element
+ CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(2)) :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5dwrite_vl_string_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ ! xfer_prp_default, tmp_buf, dims, str_len)
+ xfer_prp_default, buf, dims, str_len) &
+ BIND(C,NAME='h5dwrite_vl_string_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims
+ INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len
+ CHARACTER(KIND=C_CHAR), DIMENSION(dims(2)) :: buf
+ END FUNCTION
+ END INTERFACE
+
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dwrite_vl_string_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, str_len)
+
+ END SUBROUTINE h5dwrite_vl_string
+
+ SUBROUTINE h5dread_vl_string(dset_id, mem_type_id, buf, dims, str_len, &
+ hdferr, mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! number of strings
+ INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len ! Array to store
+ ! the length of each
+ ! element
+ CHARACTER(LEN=*), INTENT(OUT), &
+ DIMENSION(dims(2)) :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5dread_vl_string_c(dset_id, mem_type_id, &
+ mem_space_id_default, &
+ file_space_id_default, &
+ xfer_prp_default, buf, dims, str_len) &
+ BIND(C,NAME='h5dread_vl_string_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims
+ INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len
+ CHARACTER(KIND=C_CHAR), DIMENSION(dims(2)) :: buf
+ END FUNCTION h5dread_vl_string_c
+ END INTERFACE
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dread_vl_string_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, &
+ buf, dims, str_len)
+ RETURN
+ END SUBROUTINE h5dread_vl_string
+
+!
+!****s* H5D/h5dget_offset_f
+!
+! NAME
+! h5dget_offset_f
+!
+! PURPOSE
+! Returns dataset address in file.
+!
+! INPUTS
+! dataset_id - Dataset identifier.
+! OUTPUTS
+! offset - The offset in bytes.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 16, 2015
+!
+! SOURCE
+ SUBROUTINE h5dget_offset_f(dset_id, offset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HADDR_T), INTENT(OUT) :: offset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER(HADDR_T) FUNCTION h5dget_offset(dset_id) BIND(C,NAME='H5Dget_offset')
+ IMPORT :: HID_T, HADDR_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN), VALUE :: dset_id
+ END FUNCTION h5dget_offset
+ END INTERFACE
+
+ offset = h5dget_offset(dset_id)
+
+ hdferr = 0
+ IF(offset .LT. 0) hdferr = -1
+
+ END SUBROUTINE h5dget_offset_f
+
+!
+!****s* H5D/h5dget_space_f
+!
+! NAME
+! h5dget_space_f
+!
+! PURPOSE
+! Returns an identifier for a copy of the dataspace for a
+! dataset.
+!
+! INPUTS
+! dataset_id - dataset identifier
+! OUTPUTS
+! dataspace_id - dataspace identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! SOURCE
+ SUBROUTINE h5dget_space_f(dataset_id, dataspace_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(OUT) :: dataspace_id ! Dataspace identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_space_c(dataset_id, dataspace_id) BIND(C,NAME='h5dget_space_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dataset_id
+ INTEGER(HID_T), INTENT(OUT) :: dataspace_id
+ END FUNCTION h5dget_space_c
+ END INTERFACE
+
+ hdferr = h5dget_space_c(dataset_id, dataspace_id)
+ END SUBROUTINE h5dget_space_f
+
+!****s* H5D/h5dget_access_plist_f
+!
+! NAME
+! h5dget_access_plist_f
+!
+! PURPOSE
+! Returns a copy of the dataset creation property list.
+!
+! INPUTS
+! dset_id - Dataset identifier
+!
+! OUTPUTS
+! plist_id - Dataset access property list identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 13, 2009
+!
+! SOURCE
+ SUBROUTINE h5dget_access_plist_f(dset_id, plist_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(OUT) :: plist_id
+ INTEGER , INTENT(OUT) :: hdferr
+ !*****
+ INTERFACE
+ INTEGER FUNCTION h5dget_access_plist_c(dset_id, plist_id) BIND(C,NAME='h5dget_access_plist_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(OUT) :: plist_id
+ END FUNCTION h5dget_access_plist_c
+ END INTERFACE
+
+ hdferr = h5dget_access_plist_c(dset_id, plist_id)
+
+ END SUBROUTINE h5dget_access_plist_f
+
+
+ SUBROUTINE h5dwrite_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
+ TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(IN), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ TYPE(C_PTR) :: f_ptr
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+ f_ptr = C_LOC(buf(1))
+
+ hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, f_ptr)
+
+ END SUBROUTINE h5dwrite_reference_obj
+
+ SUBROUTINE h5dwrite_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
+ TYPE(hdset_reg_ref_t_f), DIMENSION(dims(1)), INTENT(IN), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
+ INTEGER :: i
+ INTEGER(HSIZE_T) :: j
+ TYPE(C_PTR) :: f_ptr
+ INTERFACE
+ INTEGER FUNCTION h5dwrite_ref_reg_c(dset_id, mem_type_id,&
+ mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, ref_buf, dims) &
+ BIND(C,NAME='h5dwrite_ref_reg_c')
+ IMPORT :: HID_T, HSIZE_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER, DIMENSION(*) :: ref_buf
+ INTEGER(HSIZE_T), DIMENSION(*) :: dims
+ END FUNCTION h5dwrite_ref_reg_c
+ END INTERFACE
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+ f_ptr = C_LOC(buf(1))
+
+ ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
+ IF (hdferr .NE. 0 ) THEN
+ hdferr = -1
+ RETURN
+ ELSE
+ DO j = 1, dims(1)
+ DO i = 1, REF_REG_BUF_LEN
+ ref_buf(REF_REG_BUF_LEN*(j-1) + i) = buf(j)%ref(i)
+ ENDDO
+ ENDDO
+ ENDIF
+ hdferr = h5dwrite_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, ref_buf, dims)
+ DEALLOCATE(ref_buf)
+
+ END SUBROUTINE h5dwrite_reference_dsetreg
+
+ SUBROUTINE h5dwrite_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ CHARACTER(*), INTENT(IN), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ CALL h5dwrite_char_scalar_fix(dset_id, mem_type_id, buf, LEN(buf), dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+
+ END SUBROUTINE h5dwrite_char_scalar
+
+ SUBROUTINE h5dwrite_char_scalar_fix(dset_id, mem_type_id, buf, buf_len, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER, INTENT(IN) :: buf_len
+ CHARACTER(LEN=buf_len), INTENT(IN), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ TYPE(C_PTR) :: f_ptr
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ f_ptr = C_LOC(buf(1:1))
+
+ hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, f_ptr)
+
+ END SUBROUTINE h5dwrite_char_scalar_fix
+
+ SUBROUTINE h5dread_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ TYPE(hobj_ref_t_f), INTENT(INOUT) , &
+ DIMENSION(dims(1)), TARGET :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ TYPE(C_PTR) :: f_ptr
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+ f_ptr = C_LOC(buf(1))
+
+ hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, f_ptr)
+
+ END SUBROUTINE h5dread_reference_obj
+
+ SUBROUTINE h5dread_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ TYPE(hdset_reg_ref_t_f), INTENT(INOUT), &
+ DIMENSION(dims(1)), TARGET :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
+ INTEGER :: i
+ INTEGER(HSIZE_T) :: j
+ INTERFACE
+ INTEGER FUNCTION h5dread_ref_reg_c(dset_id, mem_type_id,&
+ mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, ref_buf, dims) &
+ BIND(C,NAME='h5dread_ref_reg_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ INTEGER, DIMENSION(*) :: ref_buf
+ END FUNCTION h5dread_ref_reg_c
+ END INTERFACE
+
+ ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dread_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, ref_buf, dims)
+
+ DO j = 1, dims(1)
+ DO i = 1, REF_REG_BUF_LEN
+ buf(j)%ref(i) = ref_buf(REF_REG_BUF_LEN*(j-1) + i)
+ ENDDO
+ ENDDO
+ DEALLOCATE(ref_buf)
+
+ END SUBROUTINE h5dread_reference_dsetreg
+
+ SUBROUTINE h5dread_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+ CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ CALL h5dread_char_scalar_fix(dset_id, mem_type_id, buf, LEN(buf), hdferr, &
+ mem_space_id_default, file_space_id_default, xfer_prp_default)
+
+ END SUBROUTINE h5dread_char_scalar
+
+ SUBROUTINE h5dread_char_scalar_fix(dset_id, mem_type_id, buf, buf_len, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ INTEGER, INTENT(IN) :: buf_len
+ CHARACTER(LEN=buf_len), INTENT(INOUT), TARGET :: buf ! Data buffer
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1:1))
+
+ hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id, &
+ file_space_id, xfer_prp, f_ptr)
+
+ END SUBROUTINE h5dread_char_scalar_fix
+
+!****s* H5D (F03)/h5dwrite_f_F03
+!
+! NAME
+! h5dwrite_f_F03
+!
+! PURPOSE
+! Writes raw data from a dataset into a buffer.
+!
+! Inputs:
+! dset_id - Identifier of the dataset to write to.
+! mem_type_id - Identifier of the memory datatype.
+! buf - Buffer with data to be written to the file.
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! mem_space_id - Identifier of the memory dataspace.
+! file_space_id - Identifier of the dataset's dataspace in the file.
+! xfer_prp - Identifier of a transfer property list for this I/O operation.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! September 17, 2011
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5dwrite_f(dset_id, mem_type_id, buf, hdferr, &
+!! mem_space_id, file_space_id, xfer_prp)
+!! INTEGER(HID_T), INTENT(IN) :: dset_id
+!! INTEGER(HID_T), INTENT(IN) :: mem_type_id
+!! TYPE(C_PTR) , INTENT(IN) :: buf
+!! INTEGER , INTENT(OUT) :: hdferr
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: mem_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: file_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: xfer_prp
+!*****
+ SUBROUTINE h5dwrite_ptr(dset_id, mem_type_id, buf, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ TYPE(C_PTR), INTENT(IN) :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, buf)
+
+ END SUBROUTINE h5dwrite_ptr
+
+!****s* H5D (F03)/h5dread_f_F03
+!
+! NAME
+! h5dread_f_F03
+!
+! PURPOSE
+! Reads raw data from a dataset into a buffer.
+!
+! Inputs:
+! dset_id - Identifier of the dataset read from.
+! mem_type_id - Identifier of the memory datatype.
+!
+! Outputs:
+! buf - Buffer to receive data read from file.
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! mem_space_id - Identifier of the memory dataspace.
+! file_space_id - Identifier of the dataset's dataspace in the file.
+! xfer_prp - Identifier of a transfer property list for this I/O operation.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! September 17, 2011
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5dread_f(dset_id, mem_type_id, buf, hdferr, &
+!! mem_space_id, file_space_id, xfer_prp)
+!! INTEGER(HID_T), INTENT(IN) :: dset_id
+!! INTEGER(HID_T), INTENT(IN) :: mem_type_id
+!! TYPE(C_PTR) , INTENT(INOUT) :: buf
+!! INTEGER , INTENT(OUT) :: hdferr
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: mem_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: file_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: xfer_prp
+!*****
+ SUBROUTINE h5dread_ptr(dset_id, mem_type_id, buf, hdferr, &
+ mem_space_id, file_space_id, xfer_prp)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
+ TYPE(C_PTR), INTENT(INOUT) :: buf
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
+
+ INTEGER(HID_T) :: xfer_prp_default
+ INTEGER(HID_T) :: mem_space_id_default
+ INTEGER(HID_T) :: file_space_id_default
+
+ xfer_prp_default = H5P_DEFAULT_F
+ mem_space_id_default = H5S_ALL_F
+ file_space_id_default = H5S_ALL_F
+
+ IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
+ IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
+ IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
+
+ hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
+ file_space_id_default, xfer_prp_default, buf)
+
+ END SUBROUTINE h5dread_ptr
+
+!
+! NAME
+! h5dfill_integer
+!
+! PURPOSE
+! Fills dataspace elements with a fill value in a memory buffer.
+! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
+! of the fillvalues and buffers are supported. Buffer and fillvalue
+! are assumed to have the same datatype.
+! Only one-dimesional buffers are supported.
+!
+! Inputs:
+! fill_value - fill value
+! space_id - memory space selection identifier
+! buf - data buffer iin memory ro apply selection to
+! - of k-th dimension of the buf array
+! Outputs:
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+! AUTHOR
+! Elena Pourmal
+! March 12, 2003
+!
+!
+
+ SUBROUTINE h5dfill_integer(fill_value, space_id, buf, hdferr)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER, INTENT(IN), TARGET :: fill_value ! Fill value
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ INTEGER, INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
+
+ TYPE(C_PTR) :: f_ptr_fill_value ! C pointer to fill_value
+ TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
+
+ f_ptr_fill_value = C_LOC(fill_value)
+ f_ptr_buf = C_LOC(buf(1))
+
+ fill_type_id = H5T_NATIVE_INTEGER
+ mem_type_id = H5T_NATIVE_INTEGER
+
+ hdferr = h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id)
+
+ END SUBROUTINE h5dfill_integer
+
+!
+! NAME
+! h5dfill_c_float
+!
+! PURPOSE
+! Fills dataspace elements with a fill value in a memory buffer.
+! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
+! of the fillvalues and buffers are supported. Buffer and fillvalue
+! are assumed to have the same datatype.
+! Only one-dimesional buffers are supported.
+!
+! Inputs:
+! fill_value - fill value
+! space_id - memory space selection identifier
+! buf - data buffer iin memory ro apply selection to
+! - of k-th dimension of the buf array
+! Outputs:
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+!
+! AUTHOR
+! Elena Pourmal
+! March 12, 2003
+!
+ SUBROUTINE h5dfill_c_float(fill_valuer, space_id, buf, hdferr)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ REAL(KIND=C_FLOAT), INTENT(IN), TARGET :: fill_valuer ! Fill value
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ REAL(KIND=C_FLOAT), INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
+
+ TYPE(C_PTR) :: f_ptr_fill_valuer ! C pointer to fill_value
+ TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
+
+ f_ptr_fill_valuer = C_LOC(fill_valuer)
+ f_ptr_buf = C_LOC(buf(1))
+
+ fill_type_id = H5T_NATIVE_REAL
+ mem_type_id = H5T_NATIVE_REAL
+
+ hdferr = h5dfill_c(f_ptr_fill_valuer, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id)
+
+ END SUBROUTINE h5dfill_c_float
+
+ !----------------------------------------------------------------------
+ ! Name: h5dfill_c_double
+ !
+ ! Purpose: Fills dataspace elements with a fill value in a memory buffer.
+ ! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
+ ! of the fillvalues and buffers are supported. Buffer and fillvalue
+ ! are assumed to have the same datatype.
+ ! Only one-dimesional buffers are supported.
+ !
+ ! Inputs:
+ ! fill_value - fill value
+ ! space_id - memory space selection identifier
+ ! buf - data buffer iin memory ro apply selection to
+ ! - of k-th dimension of the buf array
+ ! Outputs:
+ ! hdferr: - error code
+ ! Success: 0
+ ! Failure: -1
+ !
+ ! Programmer: Elena Pourmal
+ ! March 12, 2003
+ !
+ !----------------------------------------------------------------------
+
+ SUBROUTINE h5dfill_c_double(fill_value, space_id, buf, hdferr)
+ IMPLICIT NONE
+ REAL(KIND=C_DOUBLE), INTENT(IN), TARGET :: fill_value ! Fill value
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ REAL(KIND=C_DOUBLE), INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
+
+ TYPE(C_PTR) :: f_ptr_fill_valuer ! C pointer to fill_value
+ TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
+
+ f_ptr_fill_valuer = C_LOC(fill_value)
+ f_ptr_buf = C_LOC(buf(1))
+
+ fill_type_id = H5T_NATIVE_DOUBLE
+ mem_type_id = H5T_NATIVE_DOUBLE
+
+ hdferr = h5dfill_c(f_ptr_fill_valuer, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id)
+
+ END SUBROUTINE h5dfill_c_double
+
+#ifdef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+ SUBROUTINE h5dfill_c_long_double(fill_value, space_id, buf, hdferr)
+ IMPLICIT NONE
+ REAL(KIND=C_LONG_DOUBLE), INTENT(IN), TARGET :: fill_value ! Fill value
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ REAL(KIND=C_LONG_DOUBLE), INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
+
+ TYPE(C_PTR) :: f_ptr_fill_valuer ! C pointer to fill_value
+ TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
+
+ f_ptr_fill_valuer = C_LOC(fill_value)
+ f_ptr_buf = C_LOC(buf(1))
+
+ fill_type_id = H5T_NATIVE_DOUBLE
+ mem_type_id = H5T_NATIVE_DOUBLE
+
+ hdferr = h5dfill_c(f_ptr_fill_valuer, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id)
+
+ END SUBROUTINE h5dfill_c_long_double
+#endif
+!
+! NAME
+! h5dfill_char
+!
+! PURPOSE
+! Fills dataspace elements with a fill value in a memory buffer.
+! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
+! of the fillvalues and buffers are supported. Buffer and fillvalue
+! are assumed to have the same datatype.
+! Only one-dimesional buffers are supported.
+!
+! Inputs:
+! fill_value - fill value
+! space_id - memory space selection identifier
+! buf - data buffer iin memory ro apply selection to
+! - of k-th dimension of the buf array
+! Outputs:
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+! AUTHOR
+! Elena Pourmal
+! March 12, 2003
+!
+ SUBROUTINE h5dfill_char(fill_value, space_id, buf, hdferr)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ CHARACTER, INTENT(IN), TARGET :: fill_value ! Fill value
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
+ CHARACTER, INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
+ INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
+
+ TYPE(C_PTR) :: f_ptr_fill_value ! C pointer to fill_value
+ TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
+
+ f_ptr_fill_value = C_LOC(fill_value)
+ f_ptr_buf = C_LOC(buf(1))
+
+ hdferr = h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
+ f_ptr_buf, mem_type_id)
+
+ END SUBROUTINE h5dfill_char
+!
+!****s* H5D (F03)/h5dvlen_reclaim_f
+! NAME
+! h5dvlen_reclaim_f
+!
+! PURPOSE
+! Reclaims VL datatype memory buffers.
+!
+! Inputs:
+!
+! type_id - Identifier of the datatype.
+! space_id - Identifier of the dataspace.
+! plist_id - Identifier of the property list used to create the buffer.
+! buf - Pointer to the buffer to be reclaimed.
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! January 11, 2011
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5dvlen_reclaim_f(type_id, space_id, plist_id, buf, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HID_T), INTENT(IN) :: plist_id
+ TYPE(C_PTR) , INTENT(INOUT) :: buf
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5dvlen_reclaim_c(type_id, space_id, plist_id, buf) BIND(C, NAME='h5dvlen_reclaim_c')
+ IMPORT :: C_PTR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T) :: type_id
+ INTEGER(HID_T) :: space_id
+ INTEGER(HID_T) :: plist_id
+ TYPE(C_PTR), VALUE :: buf
+ END FUNCTION h5dvlen_reclaim_c
+ END INTERFACE
+
+ hdferr = H5Dvlen_reclaim_c(type_id, space_id, plist_id, buf)
+
+ END SUBROUTINE H5Dvlen_reclaim_f
+
+
+END MODULE H5D
+
+
diff --git a/fortran/src/H5Dff.f90 b/fortran/src/H5Dff.f90
deleted file mode 100644
index 3ad868c..0000000
--- a/fortran/src/H5Dff.f90
+++ /dev/null
@@ -1,1035 +0,0 @@
-!****h* ROBODoc/H5D
-!
-! NAME
-! MODULE H5D
-!
-! FILE
-! fortran/src/H5Dff.f90
-!
-! PURPOSE
-! This file contains Fortran interfaces for H5D functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5D
- USE H5GLOBAL
-
- INTERFACE h5dextend_f
- MODULE PROCEDURE h5dset_extent_f
- END INTERFACE
-
- INTERFACE h5dread_vl_f
- MODULE PROCEDURE h5dread_vl_integer
- MODULE PROCEDURE h5dread_vl_real
- MODULE PROCEDURE h5dread_vl_string
- END INTERFACE
-
- INTERFACE h5dwrite_vl_f
- MODULE PROCEDURE h5dwrite_vl_integer
- MODULE PROCEDURE h5dwrite_vl_real
- MODULE PROCEDURE h5dwrite_vl_string
- END INTERFACE
-
-CONTAINS
-
-!
-!****s* H5D/h5dcreate_f
-!
-! NAME
-! h5dcreate_f
-!
-! PURPOSE
-! Creates a dataset at the specified location
-!
-! INPUTS
-! loc_id - file or group identifier
-! name - dataset name
-! type_id - dataset datatype identifier
-! space_id - dataset dataspace identifier
-! OUTPUTS
-! dset_id - dataset identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! creation_prp - Dataset creation property list
-! lcpl_id - Link creation property list
-! dapl_id - Dataset access property list
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! - Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! - Added version's 1.8 new optional parameters
-! February, 2008
-!
-! SOURCE
- SUBROUTINE h5dcreate_f(loc_id, name, type_id, space_id, dset_id, &
- hdferr, dcpl_id, lcpl_id, dapl_id)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list
-
- INTEGER(HID_T) :: lcpl_id_default
- INTEGER(HID_T) :: dcpl_id_default
- INTEGER(HID_T) :: dapl_id_default
-
- INTEGER :: namelen ! Name length
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
- INTERFACE
- INTEGER FUNCTION h5dcreate_c(loc_id, name, namelen, type_id, &
- space_id, lcpl_id_default, dcpl_id_default, dapl_id_default, dset_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DCREATE_C'::h5dcreate_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(IN) :: space_id
-
- INTEGER(HID_T) :: lcpl_id_default
- INTEGER(HID_T) :: dcpl_id_default
- INTEGER(HID_T) :: dapl_id_default
-
- INTEGER(HID_T), INTENT(OUT) :: dset_id
- END FUNCTION h5dcreate_c
- END INTERFACE
-
- lcpl_id_default = H5P_DEFAULT_F
- dcpl_id_default = H5P_DEFAULT_F
- dapl_id_default = H5P_DEFAULT_F
-
- IF(PRESENT(lcpl_id)) lcpl_id_default = lcpl_id
- IF(PRESENT(dcpl_id)) dcpl_id_default = dcpl_id
- IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
-
- namelen = LEN(name)
- hdferr = h5dcreate_c(loc_id, name, namelen, type_id, space_id, &
- lcpl_id_default, dcpl_id_default, dapl_id_default, dset_id)
-
- END SUBROUTINE h5dcreate_f
-
-!
-!****s* H5D/h5dopen_f
-!
-! NAME
-! h5dopen_f
-!
-! PURPOSE
-! Opens an existing dataset.
-!
-! INPUTS
-! loc_id - file or group identifier
-! name - dataset name
-! OUTPUTS
-! dset_id - dataset identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! dapl_id - Dataset access property list
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! -Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! -Added 1.8 (optional) parameter dapl_id
-! February, 2008, M. Scot Breitenfeld
-!
-! SOURCE
- SUBROUTINE h5dopen_f(loc_id, name, dset_id, hdferr, dapl_id)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset
- INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list
-!*****
- INTEGER :: namelen ! Name length
-
- INTEGER(HID_T) :: dapl_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DOPEN_C'::h5dopen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER(HID_T), INTENT(IN) :: dapl_id_default
- INTEGER(HID_T), INTENT(OUT) :: dset_id
- END FUNCTION h5dopen_c
- END INTERFACE
-
- dapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
-
- namelen = LEN(name)
- hdferr = h5dopen_c(loc_id, name, namelen, dapl_id_default, dset_id)
-
- END SUBROUTINE h5dopen_f
-
-!
-!****s* H5D/h5dclose_f
-!
-! NAME
-! h5dclose_f
-!
-! PURPOSE
-! Closes a dataset.
-!
-! INPUTS
-! dset_id - dataset identifier
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! SOURCE
- SUBROUTINE h5dclose_f(dset_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dclose_c(dset_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DCLOSE_C'::h5dclose_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- END FUNCTION h5dclose_c
- END INTERFACE
-
- hdferr = h5dclose_c(dset_id)
-
- END SUBROUTINE h5dclose_f
-
-!
-!****s* H5D/h5dget_type_f
-!
-! NAME
-! h5dget_type_f
-!
-! PURPOSE
-! Returns an identifier for a copy of the datatype for a
-! dataset.
-!
-! INPUTS
-! dataset_id - dataset identifier
-! OUTPUTS
-! datatype_id - dataspace identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-!
-! SOURCE
- SUBROUTINE h5dget_type_f(dataset_id, datatype_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(OUT) :: datatype_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dget_type_c (dataset_id, datatype_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_TYPE_C'::h5dget_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HID_T), INTENT(OUT) :: datatype_id
- END FUNCTION h5dget_type_c
- END INTERFACE
-
- hdferr = h5dget_type_c (dataset_id, datatype_id)
- END SUBROUTINE h5dget_type_f
-
-!
-!****s* H5D/h5dset_extent
-!
-! NAME
-! h5dset_extent (instead of obsolete name: h5dextend_f)
-!
-! PURPOSE
-! Extends a dataset with unlimited dimension.
-!
-! INPUTS
-! dataset_id - dataset identifier
-! size - array containing the new magnitude of
-! each dimension
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! Changed name from the now obsolete h5dextend_f
-! to h5dset_extent_f. Provided interface to old name
-! for backward compatability. -MSB- March 14, 2008
-!
-! SOURCE
- SUBROUTINE h5dset_extent_f(dataset_id, size, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size
- ! Array containing
- ! dimensions' sizes
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dset_extent_c(dataset_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSET_EXTENT_C'::h5dset_extent_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: size
- END FUNCTION h5dset_extent_c
- END INTERFACE
-
- hdferr = H5Dset_extent_c(dataset_id, size)
- END SUBROUTINE h5dset_extent_f
-
-!****s* H5D/h5dget_create_plist_f
-!
-! NAME
-! h5dget_create_plist_f
-!
-! PURPOSE
-! Returns an identifier for a copy of the dataset creation
-! property list for a dataset.
-!
-! INPUTS
-! dataset_id - dataset identifier
-! OUTPUTS
-! plist_id - creation property list identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-! SOURCE
- SUBROUTINE h5dget_create_plist_f(dataset_id, plist_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(OUT) :: plist_id ! Dataset creation
- ! property list identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dget_create_plist_c(dataset_id, plist_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_CREATE_PLIST_C'::h5dget_create_plist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HID_T), INTENT(OUT) :: plist_id
- END FUNCTION h5dget_create_plist_c
- END INTERFACE
-
- hdferr = h5dget_create_plist_c(dataset_id, plist_id)
- END SUBROUTINE h5dget_create_plist_f
-
-!
-!****s* H5D/h5dget_storage_size_f
-!
-! NAME
-! h5dget_storage_size_f
-!
-! PURPOSE
-! Returns the amount of storage requires by a dataset
-!
-! INPUTS
-! dataset_id - dataset identifier
-! OUTPUTS
-! size - datastorage size
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 15, 2002
-! SOURCE
- SUBROUTINE h5dget_storage_size_f(dataset_id, size, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HSIZE_T), INTENT(OUT) :: size ! Amount of storage
- ! allocated for dataset
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dget_storage_size_c(dataset_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_STORAGE_SIZE_C'::h5dget_storage_size_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HSIZE_T), INTENT(OUT) :: size
- END FUNCTION h5dget_storage_size_c
- END INTERFACE
-
- hdferr = h5dget_storage_size_c(dataset_id, size)
- END SUBROUTINE h5dget_storage_size_f
-
-!
-!****s* H5D/h5dvlen_get_max_len_f
-!
-! NAME
-! h5dvlen_get_max_len_f
-!
-! PURPOSE
-! Returns maximum length of the VL array elements
-!
-! INPUTS
-! dataset_id - dataset identifier
-! type_id - datatype identifier
-! space_id - dataspace identifier
-! OUTPUTS
-! size - buffer size
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! October 15, 2002
-!
-! SOURCE
- SUBROUTINE h5dvlen_get_max_len_f(dataset_id, type_id, space_id, len, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(SIZE_T), INTENT(OUT) :: len ! Maximum length of the element
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DVLEN_GET_MAX_LEN_C'::h5dvlen_get_max_len_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(SIZE_T), INTENT(OUT) :: len
- END FUNCTION h5dvlen_get_max_len_c
- END INTERFACE
-
- hdferr = h5dvlen_get_max_len_c(dataset_id, type_id, space_id, len)
- END SUBROUTINE h5dvlen_get_max_len_f
-
-!
-!****s* H5D/h5dget_space_status_f
-!
-! NAME
-! h5dget_space_status_f
-!
-! PURPOSE
-! Returns the status of data space allocation.
-!
-! INPUTS
-! dset_id - dataset identifier
-! OUTPUTS
-! flag - status; may have one of the following values:
-! H5D_SPACE_STS_ERROR_F
-! H5D_SPACE_STS_NOT_ALLOCATED_F
-! H5D_SPACE_STS_PART_ALLOCATED_F
-! H5D_SPACE_STS_ALLOCATED_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-! SOURCE
- SUBROUTINE h5dget_space_status_f(dset_id, flag, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: flag ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- !*****
- INTERFACE
- INTEGER FUNCTION h5dget_space_status_c(dset_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_SPACE_STATUS_C'::h5dget_space_status_c
- !DEC$ENDIF
- INTEGER(HID_T) :: dset_id
- INTEGER :: flag
- END FUNCTION h5dget_space_status_c
- END INTERFACE
-
- hdferr = h5dget_space_status_c(dset_id, flag)
- END SUBROUTINE h5dget_space_status_f
-
-!
-!****s* H5D/h5dcreate_anon_f
-!
-! NAME
-! h5dcreate_anon_f
-!
-! PURPOSE
-! Creates a dataset in a file without linking it into the file structure
-!
-! INPUTS
-! loc_id - Identifier of the file or group within which to create the dataset.
-! type_id - Identifier of the datatype to use when creating the dataset.
-! space_id - Identifier of the dataspace to use when creating the dataset.
-! OUTPUTS
-! dset_id - dataset identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! dcpl_id - Dataset creation property list identifier.
-! dapl_id - Dataset access property list identifier.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! February 11, 2008
-!
-! SOURCE
- SUBROUTINE h5dcreate_anon_f(loc_id, type_id, space_id, dset_id, hdferr, dcpl_id, dapl_id)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier.
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier.
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier.
- INTEGER(HID_T), INTENT(OUT) :: dset_id ! Dataset identifier.
- INTEGER, INTENT(OUT) :: hdferr ! Error code.
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dcpl_id ! Dataset creation property list identifier.
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: dapl_id ! Dataset access property list identifier.
-!*****
- INTEGER(HID_T) :: dcpl_id_default
- INTEGER(HID_T) :: dapl_id_default
-
- !
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dcreate_anon_c(loc_id, type_id, space_id, dcpl_id_default, dapl_id_default, dset_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DCREATE_ANON_C'::h5dcreate_anon_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: loc_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HID_T) :: dcpl_id_default
- INTEGER(HID_T) :: dapl_id_default
- INTEGER(HID_T), INTENT(OUT) :: dset_id
- END FUNCTION h5dcreate_anon_c
- END INTERFACE
-
- dcpl_id_default = H5P_DEFAULT_F
- dapl_id_default = H5P_DEFAULT_F
-
- IF(PRESENT(dcpl_id)) dcpl_id_default = dcpl_id
- IF(PRESENT(dapl_id)) dapl_id_default = dapl_id
-
- hdferr = h5dcreate_anon_c(loc_id, type_id, space_id, dcpl_id_default, dapl_id_default, dset_id)
-
- END SUBROUTINE h5dcreate_anon_f
-
- SUBROUTINE h5dwrite_vl_integer(dset_id, mem_type_id, buf, dims, len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store
- ! the length of each
- ! element
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_vl_integer_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims, len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_VL_INTEGER_C'::h5dwrite_vl_integer_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwrite_vl_integer_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, len)
-
- END SUBROUTINE h5dwrite_vl_integer
-
- SUBROUTINE h5dread_vl_integer(dset_id, mem_type_id, buf, dims, len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
- INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store
- ! the length of each
- ! element
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! -1 if failed, 0 otherwise
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: tmp
- INTEGER :: error
-
- INTERFACE
- INTEGER FUNCTION h5dread_vl_integer_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims, len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_VL_INTEGER_C'::h5dread_vl_integer_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dread_vl_integer_c
- END INTERFACE
-
- CALL h5dget_space_f(dset_id, tmp, error)
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = tmp
- file_space_id_default = tmp
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_vl_integer_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, len)
-
- END SUBROUTINE h5dread_vl_integer
-
- SUBROUTINE h5dwrite_vl_real(dset_id, mem_type_id, buf, dims, len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len ! Array to store
- ! the length of each
- ! element
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_vl_real_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims, len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_VL_REAL_C'::h5dwrite_vl_real_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: len
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwrite_vl_real_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_vl_real_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, len)
-
- END SUBROUTINE h5dwrite_vl_real
-
- SUBROUTINE h5dread_vl_real(dset_id, mem_type_id, buf, dims, len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! MAX len x num_elem
- INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len ! Array to store the length of each element
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- ! -1 if failed, 0 otherwise
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: tmp
- INTEGER :: error
-
- INTERFACE
- INTEGER FUNCTION h5dread_vl_real_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims, len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_VL_REAL_C'::h5dread_vl_real_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER(SIZE_T), INTENT(INOUT), DIMENSION(*) :: len
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dread_vl_real_c
- END INTERFACE
-
- CALL h5dget_space_f(dset_id, tmp, error)
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = tmp
- file_space_id_default = tmp
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_vl_real_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, len)
-
- END SUBROUTINE h5dread_vl_real
-
- SUBROUTINE h5dwrite_vl_string(dset_id, mem_type_id, buf, dims, str_len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! Number of strings
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len ! Array to store the length of each element
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(2)) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_vl_string_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- ! xfer_prp_default, tmp_buf, dims, str_len)
- xfer_prp_default, buf, dims, str_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_VL_STRING_C'::h5dwrite_vl_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims
- INTEGER(SIZE_T), INTENT(IN), DIMENSION(*) :: str_len
- CHARACTER(LEN=*), DIMENSION(dims(2)) :: buf
- END FUNCTION
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_vl_string_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, str_len)
-
- END SUBROUTINE h5dwrite_vl_string
-
- SUBROUTINE h5dread_vl_string(dset_id, mem_type_id, buf, dims, str_len, &
- hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims ! number of strings
- INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len ! Array to store
- ! the length of each
- ! element
- CHARACTER(LEN=*), INTENT(OUT), &
- DIMENSION(dims(2)) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_vl_string_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims, str_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_VL_STRING_C'::h5dread_vl_string_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(2) :: dims
- INTEGER(SIZE_T), INTENT(OUT), DIMENSION(*) :: str_len
- CHARACTER(LEN=*), DIMENSION(dims(2)) :: buf
- END FUNCTION h5dread_vl_string_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_vl_string_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims, str_len)
- RETURN
- END SUBROUTINE h5dread_vl_string
-
-!
-!****s* H5D/h5dget_space_f
-!
-! NAME
-! h5dget_space_f
-!
-! PURPOSE
-! Returns an identifier for a copy of the dataspace for a
-! dataset.
-!
-! INPUTS
-! dataset_id - dataset identifier
-! OUTPUTS
-! dataspace_id - dataspace identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! SOURCE
- SUBROUTINE h5dget_space_f(dataset_id, dataspace_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dataset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(OUT) :: dataspace_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5dget_space_c(dataset_id, dataspace_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_SPACE_C'::h5dget_space_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dataset_id
- INTEGER(HID_T), INTENT(OUT) :: dataspace_id
- END FUNCTION h5dget_space_c
- END INTERFACE
-
- hdferr = h5dget_space_c(dataset_id, dataspace_id)
-END SUBROUTINE h5dget_space_f
-
-!****s* H5D/h5dget_access_plist_f
-!
-! NAME
-! h5dget_access_plist_f
-!
-! PURPOSE
-! Returns a copy of the dataset creation property list.
-!
-! INPUTS
-! dset_id - Dataset identifier
-!
-! OUTPUTS
-! plist_id - Dataset access property list identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! April 13, 2009
-!
-! SOURCE
-SUBROUTINE h5dget_access_plist_f(dset_id, plist_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(OUT) :: plist_id
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5dget_access_plist_c(dset_id, plist_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DGET_ACCESS_PLIST_C'::h5dget_access_plist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(OUT) :: plist_id
- END FUNCTION h5dget_access_plist_c
- END INTERFACE
-
- hdferr = h5dget_access_plist_c(dset_id, plist_id)
-
-END SUBROUTINE h5dget_access_plist_f
-
-END MODULE H5D
-
-
diff --git a/fortran/src/H5Dff_F03.f90 b/fortran/src/H5Dff_F03.f90
deleted file mode 100644
index 7026ae3..0000000
--- a/fortran/src/H5Dff_F03.f90
+++ /dev/null
@@ -1,2389 +0,0 @@
-!****h* ROBODoc/H5D (F03)
-!
-! NAME
-! H5D_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5D functions.
-! It contains the same functions as H5Dff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Dff_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! (1) The maximum rank of an array allowed in Fortran is 7, therefore
-! we only provide an interface for arrays up to and including rank 7.
-!
-! (2) Unfortunately we are using a generic interface and one of the factors
-! used in determining the proper routine to select is that of the array
-! rank being passed. Therefore, we can not create just one subroutine for
-! each array type (integer, real, etc...) and use a
-! rank 1 array of assumed size to handle multiple ranks, i.e.
-! (i.e. integer, dimension(*) :: ... )
-! (i.e. real , dimension(*) :: ... ) etc...
-!
-! (3) Could not place the USE, INTRINSIC :: ISO_C_BINDING in the module header because it may
-! conflict with the USE, INTRINSIC :: ISO_C_BINDING included in the user's program. Moved
-! the statement instead to each subroutine.
-!
-!
-! (4) C_LOC and character strings according to the Fortran 2003 standard:
-!
-! 15.1.2.5 C_LOC(X)
-!
-! Argument. X shall either
-!
-! (A) have interoperable type and type parameters and be
-! (a) a variable that has the TARGET attribute and is interoperable,
-! (b) an allocated allocatable variable that has the TARGET attribute
-! and is not an array of zero size, or
-! (c) an associated scalar pointer, or
-! (B) be a nonpolymorphic scalar, have no length type parameters, and be
-! (a) a nonallocatable, nonpointer variable that has the TARGET attribute,
-! (b) an allocated allocatable variable that has the TARGET attribute, or
-! (c) an associated pointer.
-!
-! - When X is a character, for interoperability the standard is:
-!
-! 15.2.1 Interoperability of intrinsic types
-!
-! ...if the type is character, interoperability also requires that the length type parameter
-! be omitted or be specified by an initialization expression whose value is one.
-!
-! THEREFORE compilers that have not extended the standard require the
-! argument in C_LOC to be of the variant:
-!
-! CHARACTER(LEN=1), TARGET :: chr
-! or
-! CHARACTER, TARGET :: chr
-!
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5D_PROVISIONAL
- USE H5GLOBAL
-
- INTERFACE h5dwrite_f
-
- MODULE PROCEDURE h5dwrite_reference_obj
- MODULE PROCEDURE h5dwrite_reference_dsetreg
- MODULE PROCEDURE h5dwrite_integer_scalar
- MODULE PROCEDURE h5dwrite_integer_1
- MODULE PROCEDURE h5dwrite_integer_2
- MODULE PROCEDURE h5dwrite_integer_3
- MODULE PROCEDURE h5dwrite_integer_4
- MODULE PROCEDURE h5dwrite_integer_5
- MODULE PROCEDURE h5dwrite_integer_6
- MODULE PROCEDURE h5dwrite_integer_7
- MODULE PROCEDURE h5dwrite_char_scalar
- MODULE PROCEDURE h5dwrite_char_1
- MODULE PROCEDURE h5dwrite_char_2
- MODULE PROCEDURE h5dwrite_char_3
- MODULE PROCEDURE h5dwrite_char_4
- MODULE PROCEDURE h5dwrite_char_5
- MODULE PROCEDURE h5dwrite_char_6
- MODULE PROCEDURE h5dwrite_char_7
- MODULE PROCEDURE h5dwrite_real_scalar
- MODULE PROCEDURE h5dwrite_real_1
- MODULE PROCEDURE h5dwrite_real_2
- MODULE PROCEDURE h5dwrite_real_3
- MODULE PROCEDURE h5dwrite_real_4
- MODULE PROCEDURE h5dwrite_real_5
- MODULE PROCEDURE h5dwrite_real_6
- MODULE PROCEDURE h5dwrite_real_7
-
- ! This is the preferred way to call h5dwrite
- ! by passing an address
- MODULE PROCEDURE h5dwrite_ptr
-
- END INTERFACE
-
- INTERFACE h5dread_f
-
- MODULE PROCEDURE h5dread_reference_obj
- MODULE PROCEDURE h5dread_reference_dsetreg
- MODULE PROCEDURE h5dread_integer_scalar
- MODULE PROCEDURE h5dread_integer_1
- MODULE PROCEDURE h5dread_integer_2
- MODULE PROCEDURE h5dread_integer_3
- MODULE PROCEDURE h5dread_integer_4
- MODULE PROCEDURE h5dread_integer_5
- MODULE PROCEDURE h5dread_integer_6
- MODULE PROCEDURE h5dread_integer_7
- MODULE PROCEDURE h5dread_char_scalar
- MODULE PROCEDURE h5dread_char_1
- MODULE PROCEDURE h5dread_char_2
- MODULE PROCEDURE h5dread_char_3
- MODULE PROCEDURE h5dread_char_4
- MODULE PROCEDURE h5dread_char_5
- MODULE PROCEDURE h5dread_char_6
- MODULE PROCEDURE h5dread_char_7
- MODULE PROCEDURE h5dread_real_scalar
- MODULE PROCEDURE h5dread_real_1
- MODULE PROCEDURE h5dread_real_2
- MODULE PROCEDURE h5dread_real_3
- MODULE PROCEDURE h5dread_real_4
- MODULE PROCEDURE h5dread_real_5
- MODULE PROCEDURE h5dread_real_6
- MODULE PROCEDURE h5dread_real_7
-
- ! This is the preferred way to call h5dread
- ! by passing an address
- MODULE PROCEDURE h5dread_ptr
-
- END INTERFACE
-
-! Interface for the function used to pass the C pointer of the buffer
-! to the C H5Dwrite routine
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_f_c(dset_id, mem_type_id, &
- mem_space_id_default , &
- file_space_id_default, &
- xfer_prp_default, buf ) BIND(C, NAME='h5dwrite_f_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- TYPE(C_PTR), VALUE :: buf
- END FUNCTION h5dwrite_f_c
- END INTERFACE
-
-! Interface for the function used to pass the C pointer of the buffer
-! to the C H5Dread routine
-
- INTERFACE
- INTEGER FUNCTION h5dread_f_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf) BIND(C, NAME='h5dread_f_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- TYPE(C_PTR), VALUE :: buf
- END FUNCTION h5dread_f_c
- END INTERFACE
-
- INTERFACE h5dfill_f
- MODULE PROCEDURE h5dfill_integer
- MODULE PROCEDURE h5dfill_real
- MODULE PROCEDURE h5dfill_char
- END INTERFACE
-
-! Interface for the function used to pass the C pointer of the buffer
-! to the C H5Dfill routine
-
- INTERFACE
- INTEGER FUNCTION h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
- f_ptr_buf, mem_type_id) BIND(C, NAME='h5dfill_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- TYPE(C_PTR), VALUE :: f_ptr_fill_value
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- TYPE(C_PTR), VALUE :: f_ptr_buf
- INTEGER(HID_T) :: mem_type_id
- END FUNCTION h5dfill_c
- END INTERFACE
-
-CONTAINS
-
- SUBROUTINE h5dwrite_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
- TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
-
- END SUBROUTINE h5dwrite_reference_obj
-
- SUBROUTINE h5dwrite_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
- TYPE(hdset_reg_ref_t_f), DIMENSION(dims(1)), INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER :: i
- INTEGER(HSIZE_T) :: j
- TYPE(C_PTR) :: f_ptr
- INTERFACE
- INTEGER FUNCTION h5dwrite_ref_reg_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_REG_C'::h5dwrite_ref_reg_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER, DIMENSION(*) :: ref_buf
- INTEGER(HSIZE_T), DIMENSION(*) :: dims
- END FUNCTION h5dwrite_ref_reg_c
- END INTERFACE
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
- IF (hdferr .NE. 0 ) THEN
- hdferr = -1
- RETURN
- ELSE
- DO j = 1, dims(1)
- DO i = 1, REF_REG_BUF_LEN
- ref_buf(REF_REG_BUF_LEN*(j-1) + i) = buf(j)%ref(i)
- ENDDO
- ENDDO
- ENDIF
- hdferr = h5dwrite_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- DEALLOCATE(ref_buf)
-
- END SUBROUTINE h5dwrite_reference_dsetreg
-
-
- SUBROUTINE h5dwrite_integer_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER, INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf)
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_scalar
-
- SUBROUTINE h5dwrite_integer_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_1
-
- SUBROUTINE h5dwrite_integer_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2)),TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_2
-
- SUBROUTINE h5dwrite_integer_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_3
-
- SUBROUTINE h5dwrite_integer_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_4
-
- SUBROUTINE h5dwrite_integer_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_5
-
- SUBROUTINE h5dwrite_integer_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_6
-
- SUBROUTINE h5dwrite_integer_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_integer_7
-
- SUBROUTINE h5dwrite_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(*), INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- CALL h5dwrite_char_scalar_fix(dset_id, mem_type_id, buf, LEN(buf), dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
-
- END SUBROUTINE h5dwrite_char_scalar
-
- SUBROUTINE h5dwrite_char_scalar_fix(dset_id, mem_type_id, buf, buf_len, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN) :: buf_len
- CHARACTER(LEN=buf_len), INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_scalar_fix
-
- SUBROUTINE h5dwrite_char_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_1
-
- SUBROUTINE h5dwrite_char_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_2
-
- SUBROUTINE h5dwrite_char_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_3
-
- SUBROUTINE h5dwrite_char_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_4
-
- SUBROUTINE h5dwrite_char_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1)(1:1))
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_5
-
- SUBROUTINE h5dwrite_char_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_6
-
- SUBROUTINE h5dwrite_char_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_char_7
-
-
- SUBROUTINE h5dwrite_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf)
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_scalar
-
-
- SUBROUTINE h5dwrite_real_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_1
-
- SUBROUTINE h5dwrite_real_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_2
-
- SUBROUTINE h5dwrite_real_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_3
-
- SUBROUTINE h5dwrite_real_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_4
-
- SUBROUTINE h5dwrite_real_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_5
-
- SUBROUTINE h5dwrite_real_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_6
-
- SUBROUTINE h5dwrite_real_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dwrite_real_7
-
-!
-! NAME
-! h5dread_f
-!
-! PURPOSE
-! Reads raw data from the specified dataset into buf,
-! converting from file datatype and dataspace to memory
-! datatype and dataspace.
-!
-! Inputs:
-! dset_id - dataset identifier
-! mem_type_id - memory type identifier
-! dims - 1-dim array of size 7; dims(k) has the size
-! - of k-th dimension of the buf array
-! Outputs:
-! buf - buffer to read data in
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! Optional parameters:
-! mem_space_id - memory dataspace identifier
-! file_space_id - file dataspace identifier
-! xfer_prp - trasfer property list identifier
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! dims parameter was added to make code portable;
-! n parameter was replaced with dims parameter in
-! the h5dwrite_reference_obj and h5dwrite_reference_dsetreg
-! functions. April 2, 2001
-!
-! NOTES
-! This function is overloaded to read INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions, and one dimensional buffers
-! of the TYPE(hobj_ref_t_f) and TYPE(hdset_reg_ref_t_f)
-! types.
-!
- SUBROUTINE h5dread_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- TYPE(hobj_ref_t_f), INTENT(INOUT) , &
- DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_reference_obj
-
- SUBROUTINE h5dread_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- TYPE(hdset_reg_ref_t_f), INTENT(INOUT), &
- DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER :: i
- INTEGER(HSIZE_T) :: j
- INTERFACE
- INTEGER FUNCTION h5dread_ref_reg_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_REG_C'::h5dread_ref_reg_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, DIMENSION(*) :: ref_buf
- END FUNCTION h5dread_ref_reg_c
- END INTERFACE
-
- ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
-
- DO j = 1, dims(1)
- DO i = 1, REF_REG_BUF_LEN
- buf(j)%ref(i) = ref_buf(REF_REG_BUF_LEN*(j-1) + i)
- ENDDO
- ENDDO
- DEALLOCATE(ref_buf)
-
- END SUBROUTINE h5dread_reference_dsetreg
-
-
- SUBROUTINE h5dread_integer_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT) , TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf)
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
-
- END SUBROUTINE h5dread_integer_scalar
-
- SUBROUTINE h5dread_integer_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_1
-
- SUBROUTINE h5dread_integer_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_2
-
- SUBROUTINE h5dread_integer_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_3
-
- SUBROUTINE h5dread_integer_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_4
-
- SUBROUTINE h5dread_integer_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_5
-
- SUBROUTINE h5dread_integer_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_6
-
- SUBROUTINE h5dread_integer_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_integer_7
-
- SUBROUTINE h5dread_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- CALL h5dread_char_scalar_fix(dset_id, mem_type_id, buf, LEN(buf), hdferr, &
- mem_space_id_default, file_space_id_default, xfer_prp_default)
-
- END SUBROUTINE h5dread_char_scalar
-
- SUBROUTINE h5dread_char_scalar_fix(dset_id, mem_type_id, buf, buf_len, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER, INTENT(IN) :: buf_len
- CHARACTER(LEN=buf_len), INTENT(INOUT), TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(buf(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id, &
- file_space_id, xfer_prp, f_ptr)
-
- END SUBROUTINE h5dread_char_scalar_fix
-
- SUBROUTINE h5dread_char_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1)(1:1))
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_1
-
- SUBROUTINE h5dread_char_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1)(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_2
-
- SUBROUTINE h5dread_char_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1)(1:1))
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_3
-
- SUBROUTINE h5dread_char_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1)(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_4
-
- SUBROUTINE h5dread_char_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1)(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_5
-
- SUBROUTINE h5dread_char_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_6
-
- SUBROUTINE h5dread_char_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_char_7
-
- SUBROUTINE h5dread_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT) , TARGET :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf)
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_scalar
-
- SUBROUTINE h5dread_real_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_1
-
- SUBROUTINE h5dread_real_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_2
-
- SUBROUTINE h5dread_real_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_3
-
- SUBROUTINE h5dread_real_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3), dims(4)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_4
-
- SUBROUTINE h5dread_real_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_5
-
- SUBROUTINE h5dread_real_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_6
-
- SUBROUTINE h5dread_real_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) , TARGET :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- TYPE(C_PTR) :: f_ptr
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF(PRESENT(file_space_id)) file_space_id_default = file_space_id
- f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, f_ptr)
-
- END SUBROUTINE h5dread_real_7
-
-!****s* H5D (F03)/h5dwrite_f_F03
-!
-! NAME
-! h5dwrite_f_F03
-!
-! PURPOSE
-! Writes raw data from a dataset into a buffer.
-!
-! Inputs:
-! dset_id - Identifier of the dataset to write to.
-! mem_type_id - Identifier of the memory datatype.
-! buf - Buffer with data to be written to the file.
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! Optional parameters:
-! mem_space_id - Identifier of the memory dataspace.
-! file_space_id - Identifier of the dataset's dataspace in the file.
-! xfer_prp - Identifier of a transfer property list for this I/O operation.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! September 17, 2011
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5dwrite_f(dset_id, mem_type_id, buf, hdferr, &
-!! mem_space_id, file_space_id, xfer_prp)
-!! INTEGER(HID_T), INTENT(IN) :: dset_id
-!! INTEGER(HID_T), INTENT(IN) :: mem_type_id
-!! TYPE(C_PTR) , INTENT(IN) :: buf
-!! INTEGER , INTENT(OUT) :: hdferr
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: mem_space_id
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: file_space_id
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: xfer_prp
-!*****
- SUBROUTINE h5dwrite_ptr(dset_id, mem_type_id, buf, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- TYPE(C_PTR), INTENT(IN) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf)
-
- END SUBROUTINE h5dwrite_ptr
-!****s* H5D (F03)/h5dread_f_F03
-!
-! NAME
-! h5dread_f_F03
-!
-! PURPOSE
-! Reads raw data from a dataset into a buffer.
-!
-! Inputs:
-! dset_id - Identifier of the dataset read from.
-! mem_type_id - Identifier of the memory datatype.
-!
-! Outputs:
-! buf - Buffer to receive data read from file.
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! Optional parameters:
-! mem_space_id - Identifier of the memory dataspace.
-! file_space_id - Identifier of the dataset's dataspace in the file.
-! xfer_prp - Identifier of a transfer property list for this I/O operation.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! September 17, 2011
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5dread_f(dset_id, mem_type_id, buf, hdferr, &
-!! mem_space_id, file_space_id, xfer_prp)
-!! INTEGER(HID_T), INTENT(IN) :: dset_id
-!! INTEGER(HID_T), INTENT(IN) :: mem_type_id
-!! TYPE(C_PTR) , INTENT(INOUT) :: buf
-!! INTEGER , INTENT(OUT) :: hdferr
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: mem_space_id
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: file_space_id
-!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: xfer_prp
-!*****
- SUBROUTINE h5dread_ptr(dset_id, mem_type_id, buf, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- TYPE(C_PTR), INTENT(INOUT) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf)
-
- END SUBROUTINE h5dread_ptr
-
-!
-! NAME
-! h5dfill_integer
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! Inputs:
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! Outputs:
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-!
-
- SUBROUTINE h5dfill_integer(fill_value, space_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER, INTENT(IN), TARGET :: fill_value ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- INTEGER, INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- TYPE(C_PTR) :: f_ptr_fill_value ! C pointer to fill_value
- TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
-
- f_ptr_fill_value = C_LOC(fill_value)
- f_ptr_buf = C_LOC(buf(1))
-
- fill_type_id = H5T_NATIVE_INTEGER
- mem_type_id = H5T_NATIVE_INTEGER
-
- hdferr = h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
- f_ptr_buf, mem_type_id)
-
- END SUBROUTINE h5dfill_integer
-
-!
-! NAME
-! h5dfill_real
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! Inputs:
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! Outputs:
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
- SUBROUTINE h5dfill_real(fill_valuer, space_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- REAL, INTENT(IN), TARGET :: fill_valuer ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- REAL, INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- TYPE(C_PTR) :: f_ptr_fill_valuer ! C pointer to fill_value
- TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
-
- f_ptr_fill_valuer = C_LOC(fill_valuer)
- f_ptr_buf = C_LOC(buf(1))
-
- fill_type_id = H5T_NATIVE_REAL
- mem_type_id = H5T_NATIVE_REAL
-
- hdferr = h5dfill_c(f_ptr_fill_valuer, fill_type_id, space_id, &
- f_ptr_buf, mem_type_id)
-
- END SUBROUTINE h5dfill_real
-
-!
-! NAME
-! h5dfill_char
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! Inputs:
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! Outputs:
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
- SUBROUTINE h5dfill_char(fill_value, space_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- CHARACTER, INTENT(IN), TARGET :: fill_value ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- CHARACTER, INTENT(IN), DIMENSION(*), TARGET :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- TYPE(C_PTR) :: f_ptr_fill_value ! C pointer to fill_value
- TYPE(C_PTR) :: f_ptr_buf ! C pointer to buf
-
- f_ptr_fill_value = C_LOC(fill_value)
- f_ptr_buf = C_LOC(buf(1))
-
- hdferr = h5dfill_c(f_ptr_fill_value, fill_type_id, space_id, &
- f_ptr_buf, mem_type_id)
-
- END SUBROUTINE h5dfill_char
-!
-!****s* H5D (F03)/h5dvlen_reclaim_f
-! NAME
-! h5dvlen_reclaim_f
-!
-! PURPOSE
-! Reclaims VL datatype memory buffers.
-!
-! Inputs:
-!
-! type_id - Identifier of the datatype.
-! space_id - Identifier of the dataspace.
-! plist_id - Identifier of the property list used to create the buffer.
-! buf - Pointer to the buffer to be reclaimed.
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! January 11, 2011
-!
-! Fortran2003 Interface:
- SUBROUTINE h5dvlen_reclaim_f(type_id, space_id, plist_id, buf, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HID_T), INTENT(IN) :: plist_id
- TYPE(C_PTR) , INTENT(INOUT) :: buf
- INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5dvlen_reclaim_c(type_id, space_id, plist_id, buf) BIND(C, NAME='h5dvlen_reclaim_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
- INTEGER(HID_T) :: type_id
- INTEGER(HID_T) :: space_id
- INTEGER(HID_T) :: plist_id
- TYPE(C_PTR), VALUE :: buf
- END FUNCTION h5dvlen_reclaim_c
- END INTERFACE
-
- hdferr = H5Dvlen_reclaim_c(type_id, space_id, plist_id, buf)
-
- END SUBROUTINE H5Dvlen_reclaim_f
-
-END MODULE H5D_PROVISIONAL
-
-
diff --git a/fortran/src/H5Dff_F90.f90 b/fortran/src/H5Dff_F90.f90
deleted file mode 100644
index 66cfe62..0000000
--- a/fortran/src/H5Dff_F90.f90
+++ /dev/null
@@ -1,3004 +0,0 @@
-!****h* ROBODoc/H5D (F90)
-!
-! NAME
-!
-! H5D_PROVISIONAL
-!
-! PURPOSE
-!
-! This file contains Fortran 90 interfaces for H5D functions. It contains
-! the same functions as H5Dff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Dff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! (1) The maximum rank of an array allowed in Fortran is 7, therefore
-! we only provide an interface for arrays up to and including rank 7.
-!
-! (2) Unfortunately we are using a generic interface and one of the factors
-! used in determining the proper routine to select is that of the array
-! rank being passed, therefore we can not create just one subroutine for
-! each array type (integer, real, etc...) of various ranks and then use a
-! rank 1 array of assumed size in the just one subroutine,
-! (i.e. integer, dimension(*) :: ... )
-! (i.e. real , dimension(*) :: ... ) etc...
-!
-! (3)
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5D_PROVISIONAL
- USE H5GLOBAL
-
- INTERFACE h5dwrite_f
-
- MODULE PROCEDURE h5dwrite_reference_obj
- MODULE PROCEDURE h5dwrite_reference_dsetreg
- MODULE PROCEDURE h5dwrite_integer_scalar
- MODULE PROCEDURE h5dwrite_integer_1
- MODULE PROCEDURE h5dwrite_integer_2
- MODULE PROCEDURE h5dwrite_integer_3
- MODULE PROCEDURE h5dwrite_integer_4
- MODULE PROCEDURE h5dwrite_integer_5
- MODULE PROCEDURE h5dwrite_integer_6
- MODULE PROCEDURE h5dwrite_integer_7
- MODULE PROCEDURE h5dwrite_char_scalar
- MODULE PROCEDURE h5dwrite_char_1
- MODULE PROCEDURE h5dwrite_char_2
- MODULE PROCEDURE h5dwrite_char_3
- MODULE PROCEDURE h5dwrite_char_4
- MODULE PROCEDURE h5dwrite_char_5
- MODULE PROCEDURE h5dwrite_char_6
- MODULE PROCEDURE h5dwrite_char_7
- MODULE PROCEDURE h5dwrite_real_scalar
- MODULE PROCEDURE h5dwrite_real_1
- MODULE PROCEDURE h5dwrite_real_2
- MODULE PROCEDURE h5dwrite_real_3
- MODULE PROCEDURE h5dwrite_real_4
- MODULE PROCEDURE h5dwrite_real_5
- MODULE PROCEDURE h5dwrite_real_6
- MODULE PROCEDURE h5dwrite_real_7
-
- END INTERFACE
-
- INTERFACE h5dread_f
-
- MODULE PROCEDURE h5dread_reference_obj
- MODULE PROCEDURE h5dread_reference_dsetreg
- MODULE PROCEDURE h5dread_integer_scalar
- MODULE PROCEDURE h5dread_integer_1
- MODULE PROCEDURE h5dread_integer_2
- MODULE PROCEDURE h5dread_integer_3
- MODULE PROCEDURE h5dread_integer_4
- MODULE PROCEDURE h5dread_integer_5
- MODULE PROCEDURE h5dread_integer_6
- MODULE PROCEDURE h5dread_integer_7
- MODULE PROCEDURE h5dread_char_scalar
- MODULE PROCEDURE h5dread_char_1
- MODULE PROCEDURE h5dread_char_2
- MODULE PROCEDURE h5dread_char_3
- MODULE PROCEDURE h5dread_char_4
- MODULE PROCEDURE h5dread_char_5
- MODULE PROCEDURE h5dread_char_6
- MODULE PROCEDURE h5dread_char_7
- MODULE PROCEDURE h5dread_real_scalar
- MODULE PROCEDURE h5dread_real_1
- MODULE PROCEDURE h5dread_real_2
- MODULE PROCEDURE h5dread_real_3
- MODULE PROCEDURE h5dread_real_4
- MODULE PROCEDURE h5dread_real_5
- MODULE PROCEDURE h5dread_real_6
- MODULE PROCEDURE h5dread_real_7
- END INTERFACE
-
- INTERFACE h5dfill_f
- MODULE PROCEDURE h5dfill_integer
- MODULE PROCEDURE h5dfill_real
- MODULE PROCEDURE h5dfill_char
- END INTERFACE
-
-CONTAINS
-
-!****s* H5D/h5dread_f
-!
-! NAME
-! h5dread_f
-!
-! PURPOSE
-! Reads raw data from the specified dataset into buf,
-! converting from file datatype and dataspace to memory
-! datatype and dataspace.
-!
-! INPUTS
-! dset_id - dataset identifier
-! mem_type_id - memory type identifier
-! dims - 1-dim array of size 7; dims(k) has the size
-! of k-th dimension of the buf array
-! OUTPUTS
-! buf - buffer to read data in
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-!
-! OPTIONAL PARAMETERS
-! mem_space_id - memory dataspace identifier
-! file_space_id - file dataspace identifier
-! xfer_prp - trasfer property list identifier
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! dims parameter was added to make code portable;
-! n parameter was replaced with dims parameter in
-! the h5dwrite_reference_obj and h5dwrite_reference_dsetreg
-! functions. April 2, 2001
-!
-! NOTES
-! This function is overloaded to read INTEGER,
-! REAL, DOUBLE PRECISION and CHARACTER buffers
-! up to 7 dimensions, and one dimensional buffers
-! of the TYPE(hobj_ref_t_f) and TYPE(hdset_reg_ref_t_f) types.
-!*****
- SUBROUTINE h5dread_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- TYPE(hobj_ref_t_f), INTENT(INOUT) , &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HADDR_T), ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER(HSIZE_T) :: j
-
- INTERFACE
- INTEGER FUNCTION h5dread_ref_obj_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_OBJ_C'::h5dread_ref_obj_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER(HADDR_T), DIMENSION(*) :: ref_buf
- END FUNCTION h5dread_ref_obj_c
- END INTERFACE
-
- ALLOCATE(ref_buf(dims(1)), stat=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_ref_obj_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- DO j = 1, dims(1)
- buf(j)%ref = ref_buf(j)
- ENDDO
- DEALLOCATE(ref_buf)
- END SUBROUTINE h5dread_reference_obj
-
- SUBROUTINE h5dread_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- TYPE(hdset_reg_ref_t_f), INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER :: i
- INTEGER(HSIZE_T) :: j
-
- INTERFACE
- INTEGER FUNCTION h5dread_ref_reg_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REF_REG_C'::h5dread_ref_reg_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, DIMENSION(*) :: ref_buf
- END FUNCTION h5dread_ref_reg_c
- END INTERFACE
-
- ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
-
- DO j = 1, dims(1)
- DO i = 1, REF_REG_BUF_LEN
- buf(j)%ref(i) = ref_buf(REF_REG_BUF_LEN*(j-1) + i)
- ENDDO
- ENDDO
- DEALLOCATE(ref_buf)
- END SUBROUTINE h5dread_reference_dsetreg
-
- SUBROUTINE h5dread_integer_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_integer_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_S_C'::h5dread_integer_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT) :: buf
- END FUNCTION h5dread_integer_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_integer_scalar
-
- SUBROUTINE h5dread_integer_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_integer_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_1_C'::h5dread_integer_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT), DIMENSION(dims(1)) :: buf
- END FUNCTION h5dread_integer_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_integer_1
-
- SUBROUTINE h5dread_integer_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_integer_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_2_C'::h5dread_integer_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT), DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dread_integer_2_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_2
-
- SUBROUTINE h5dread_integer_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- !
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_integer_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_3_C'::h5dread_integer_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT), DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dread_integer_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_3
-
- SUBROUTINE h5dread_integer_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- !
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_integer_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_4_C'::h5dread_integer_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dread_integer_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_4
-
- SUBROUTINE h5dread_integer_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- !
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_integer_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_5_C'::h5dread_integer_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dread_integer_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_5
-
- SUBROUTINE h5dread_integer_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
-
- INTERFACE
- INTEGER FUNCTION h5dread_integer_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_6_C'::h5dread_integer_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dread_integer_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_6
-
- SUBROUTINE h5dread_integer_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_integer_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_INTEGER_7_C'::h5dread_integer_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dread_integer_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_integer_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dread_integer_7
-
- SUBROUTINE h5dread_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_S_C'::h5dreadc_s_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(OUT) :: buf
- END FUNCTION h5dreadc_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_scalar
-
- SUBROUTINE h5dread_char_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_1_C'::h5dreadc_1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dreadc_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_1
-
- SUBROUTINE h5dread_char_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_2_C'::h5dreadc_2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dreadc_2_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_2
-
- SUBROUTINE h5dread_char_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_3_C'::h5dreadc_3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dreadc_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_3
-
- SUBROUTINE h5dread_char_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_4_C'::h5dreadc_4_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dreadc_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_4
-
- SUBROUTINE h5dread_char_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_5_C'::h5dreadc_5_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dreadc_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_5
-
- SUBROUTINE h5dread_char_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_6_C'::h5dreadc_6_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dreadc_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_6
-
- SUBROUTINE h5dread_char_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dreadc_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREADC_7_C'::h5dreadc_7_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dreadc_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dreadc_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_char_7
-
- SUBROUTINE h5dread_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_S_C'::h5dread_real_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(OUT) :: buf
- END FUNCTION h5dread_real_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_scalar
-
- SUBROUTINE h5dread_real_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_real_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_real_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_1_C'::h5dread_real_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dread_real_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_1
-
- SUBROUTINE h5dread_real_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_2_C'::h5dread_real_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dread_real_2_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_2
-
- SUBROUTINE h5dread_real_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_3_C'::h5dread_real_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dread_real_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_3
-
- SUBROUTINE h5dread_real_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_4_C'::h5dread_real_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf
- END FUNCTION h5dread_real_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_4
-
- SUBROUTINE h5dread_real_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_5_C'::h5dread_real_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dread_real_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_5
-
- SUBROUTINE h5dread_real_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_6_C'::h5dread_real_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dread_real_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_6
-
- SUBROUTINE h5dread_real_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dread_real_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_REAL_7_C'::h5dread_real_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dread_real_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_real_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_real_7
-
- SUBROUTINE h5dwrite_reference_obj(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
- TYPE(hobj_ref_t_f), DIMENSION(dims(1)), INTENT(IN) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HADDR_T), ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER(HSIZE_T) :: j
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_ref_obj_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_OBJ_C'::h5dwrite_ref_obj_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HADDR_T), DIMENSION(*) :: ref_buf
- INTEGER(HSIZE_T), DIMENSION(*) :: dims
- END FUNCTION h5dwrite_ref_obj_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- ALLOCATE(ref_buf(dims(1)), stat=hdferr)
- IF (hdferr .NE. 0 ) THEN
- hdferr = -1
- RETURN
- ELSE
- DO j = 1, dims(1)
- ref_buf(j) = buf(j)%ref
- ENDDO
- ENDIF
- hdferr = h5dwrite_ref_obj_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims(1))
- DEALLOCATE(ref_buf)
-
- END SUBROUTINE h5dwrite_reference_obj
-
- SUBROUTINE h5dwrite_reference_dsetreg(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf
- TYPE(hdset_reg_ref_t_f), DIMENSION(dims(1)), INTENT(IN) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER, ALLOCATABLE, DIMENSION(:) :: ref_buf
- INTEGER :: i
- INTEGER(HSIZE_T) :: j
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_ref_reg_c(dset_id, mem_type_id,&
- mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REF_REG_C'::h5dwrite_ref_reg_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER, DIMENSION(*) :: ref_buf
- INTEGER(HSIZE_T), DIMENSION(*) :: dims
- END FUNCTION h5dwrite_ref_reg_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- ALLOCATE(ref_buf(REF_REG_BUF_LEN*dims(1)), stat=hdferr)
- IF (hdferr .NE. 0 ) THEN
- hdferr = -1
- RETURN
- ELSE
- DO j = 1, dims(1)
- DO i = 1, REF_REG_BUF_LEN
- ref_buf(REF_REG_BUF_LEN*(j-1) + i) = buf(j)%ref(i)
- ENDDO
- ENDDO
- ENDIF
- hdferr = h5dwrite_ref_reg_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, ref_buf, dims)
- DEALLOCATE(ref_buf)
-
- END SUBROUTINE h5dwrite_reference_dsetreg
-
- SUBROUTINE h5dwrite_integer_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER, INTENT(IN) :: buf ! Data buffer
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_S_C'::h5dwrite_integer_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN) :: buf
- END FUNCTION h5dwrite_integer_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_integer_scalar
-
- SUBROUTINE h5dwrite_integer_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_1_C'::h5dwrite_integer_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dwrite_integer_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_integer_1
-
- SUBROUTINE h5dwrite_integer_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_2_C'::h5dwrite_integer_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwrite_integer_2_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
- hdferr = h5dwrite_integer_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_2
-
- SUBROUTINE h5dwrite_integer_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_3_C'::h5dwrite_integer_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dwrite_integer_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_3
-
- SUBROUTINE h5dwrite_integer_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_4_C'::h5dwrite_integer_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dwrite_integer_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_4
-
- SUBROUTINE h5dwrite_integer_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_5_C'::h5dwrite_integer_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dwrite_integer_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_5
-
- SUBROUTINE h5dwrite_integer_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_6_C'::h5dwrite_integer_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dwrite_integer_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_6
-
- SUBROUTINE h5dwrite_integer_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_integer_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_INTEGER_7_C'::h5dwrite_integer_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- INTEGER, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dwrite_integer_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_integer_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, &
- buf, dims)
-
- END SUBROUTINE h5dwrite_integer_7
-
-
- SUBROUTINE h5dwrite_char_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_S_C'::h5dwritec_s_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN) :: buf
- END FUNCTION h5dwritec_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_scalar
-
- SUBROUTINE h5dwrite_char_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_1_C'::h5dwritec_1_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dwritec_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_1
-
- SUBROUTINE h5dwrite_char_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_2_C'::h5dwritec_2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwritec_2_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_2
-
- SUBROUTINE h5dwrite_char_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_3_C'::h5dwritec_3_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dwritec_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_3
-
- SUBROUTINE h5dwrite_char_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_4_C'::h5dwritec_4_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dwritec_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_4
-
- SUBROUTINE h5dwrite_char_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_5_C'::h5dwritec_5_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dwritec_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_5
-
- SUBROUTINE h5dwrite_char_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_6_C'::h5dwritec_6_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dwritec_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_6
-
- SUBROUTINE h5dwrite_char_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwritec_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITEC_7_C'::h5dwritec_7_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- CHARACTER(LEN=*), INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dwritec_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwritec_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_char_7
-
- SUBROUTINE h5dwrite_real_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_S_C'::h5dwrite_real_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN) :: buf
- END FUNCTION h5dwrite_real_s_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_scalar
-
- SUBROUTINE h5dwrite_real_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_1_C'::h5dwrite_real_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dwrite_real_1_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_1
-
- SUBROUTINE h5dwrite_real_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_2_C'::h5dwrite_real_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwrite_real_2_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_2
-
- SUBROUTINE h5dwrite_real_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_3_C'::h5dwrite_real_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dwrite_real_3_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_3
-
- SUBROUTINE h5dwrite_real_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_4_C'::h5dwrite_real_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dwrite_real_4_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_4
-
- SUBROUTINE h5dwrite_real_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_5_C'::h5dwrite_real_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dwrite_real_5_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_5
-
- SUBROUTINE h5dwrite_real_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_6_C'::h5dwrite_real_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dwrite_real_6_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_6
-
- SUBROUTINE h5dwrite_real_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp ! Transfer property list identifier
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- INTERFACE
- INTEGER FUNCTION h5dwrite_real_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_REAL_7_C'::h5dwrite_real_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- REAL, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dwrite_real_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- IF (PRESENT(xfer_prp)) xfer_prp_default = xfer_prp
- IF (PRESENT(mem_space_id)) mem_space_id_default = mem_space_id
- IF (PRESENT(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_real_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_real_7
-
-!
-! NAME
-! h5dfill_integer
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! INPUTS
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-!
-
- SUBROUTINE h5dfill_integer(fill_value, space_id, buf, hdferr)
- IMPLICIT NONE
- INTEGER, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- INTEGER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- ! INTEGER, EXTERNAL :: h5dfill_integer_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dfill_integer_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_INTEGER_C'::h5dfill_integer_c
- !DEC$ENDIF
- INTEGER, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- INTEGER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
- END FUNCTION h5dfill_integer_c
- END INTERFACE
- fill_type_id = H5T_NATIVE_INTEGER
- mem_type_id = H5T_NATIVE_INTEGER
-
- hdferr = h5dfill_integer_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
-
- END SUBROUTINE h5dfill_integer
-
-!
-! NAME
-! h5dfill_real
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! INPUTS
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-!
-
- SUBROUTINE h5dfill_real(fill_valuer, space_id, buf, hdferr)
- IMPLICIT NONE
- REAL, INTENT(IN) :: fill_valuer ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- REAL, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- ! INTEGER, EXTERNAL :: h5dfill_real_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dfill_real_c(fill_valuer, fill_type_id, space_id, &
- buf, mem_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_REAL_C'::h5dfill_real_c
- !DEC$ENDIF
- REAL, INTENT(IN) :: fill_valuer ! Fill value
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- REAL, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
- END FUNCTION h5dfill_real_c
- END INTERFACE
- fill_type_id = H5T_NATIVE_REAL
- mem_type_id = H5T_NATIVE_REAL
-
- hdferr = h5dfill_real_c(fill_valuer, fill_type_id, space_id, &
- buf, mem_type_id)
- END SUBROUTINE h5dfill_real
-
-!
-! NAME
-! h5dfill_char
-!
-! PURPOSE
-! Fills dataspace elements with a fill value in a memory buffer.
-! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
-! of the fillvalues and buffers are supported. Buffer and fillvalue
-! are assumed to have the same datatype.
-! Only one-dimesional buffers are supported.
-!
-! INPUTS
-! fill_value - fill value
-! space_id - memory space selection identifier
-! buf - data buffer iin memory ro apply selection to
-! - of k-th dimension of the buf array
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-!
-
- SUBROUTINE h5dfill_char(fill_value, space_id, buf, hdferr)
- IMPLICIT NONE
- CHARACTER, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- CHARACTER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- ! INTEGER, EXTERNAL :: h5dfillc_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dfillc_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILLC_C'::h5dfillc_c
- !DEC$ENDIF
- CHARACTER, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- CHARACTER, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
- END FUNCTION h5dfillc_c
- END INTERFACE
- fill_type_id = H5T_NATIVE_CHARACTER
- mem_type_id = H5T_NATIVE_CHARACTER
-
- hdferr = h5dfillc_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
-
- END SUBROUTINE h5dfill_char
-
-
-END MODULE H5D_PROVISIONAL
diff --git a/fortran/src/H5Ef.c b/fortran/src/H5Ef.c
index f5c0c45..4b1d4c9 100644
--- a/fortran/src/H5Ef.c
+++ b/fortran/src/H5Ef.c
@@ -1,6 +1,6 @@
/****h* H5Ef/H5Ef
* PURPOSE
- * This file contains C stubs for H5E Fortran APIs
+ * This file contains C stubs for H5E Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -42,7 +42,7 @@
* SOURCE
*/
int_f
-nh5eclear_c(hid_t_f *estack_id )
+h5eclear_c(hid_t_f *estack_id )
/******/
{
int_f ret_value = 0;
@@ -78,7 +78,7 @@ done:
* SOURCE
*/
int_f
-nh5eprint_c1(_fcd name, int_f* namelen)
+h5eprint_c1(_fcd name, int_f* namelen)
/******/
{
FILE *file = NULL;
@@ -124,7 +124,7 @@ done:
* SOURCE
*/
int_f
-nh5eprint_c2(void)
+h5eprint_c2(void)
/******/
{
int_f ret_value = 0;
@@ -159,7 +159,7 @@ done:
* SOURCE
*/
int_f
-nh5eget_major_c(int_f* error_no, _fcd name, size_t_f* namelen)
+h5eget_major_c(int_f* error_no, _fcd name, size_t_f* namelen)
/******/
{
char *c_name = NULL;
@@ -207,7 +207,7 @@ done:
* SOURCE
*/
int_f
-nh5eget_minor_c(int_f* error_no, _fcd name, size_t_f* namelen)
+h5eget_minor_c(int_f* error_no, _fcd name, size_t_f* namelen)
/******/
{
char *c_name = NULL;
@@ -235,62 +235,25 @@ done:
return ret_value;
}
-/****if* H5Ef/h5eset_auto_c
- * NAME
- * h5eset_auto_c
- * PURPOSE
- * Call H5Eset_auto to turn automatic error printing on or off.
- * INPUTS
- * printflag - flag to turn automatic error printing on or off.
- * OUTPUTS
- *
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Friday, November 17, 2000
- * HISTORY
- * Major bug fix: Function never disabled printing.
- * SOURCE
-*/
-int_f
-nh5eset_auto_c(int_f* printflag)
-/******/
-{
- herr_t status = -1;
- int_f ret_value = 0;
-
- if(*printflag == 1)
- status = H5Eset_auto2(H5E_DEFAULT, (H5E_auto2_t)H5Eprint2, stderr);
- else if(*printflag == 0)
- status = H5Eset_auto2(H5E_DEFAULT, NULL, NULL);
- if(status < 0)
- HGOTO_DONE(FAIL)
-
-done:
- return ret_value;
-}
-
-
/****if* H5Ef/h5eset_auto2_c
* NAME
- * h5eset_auto2_c
+ * h5eset_auto2_c
* PURPOSE
- * Calls H5Eset_auto2
+ * Calls H5Eset_auto2
* INPUTS
- * estack_id - Error stack identifier.
- * func - Function to be called upon an error condition.
- * client_data - Data passed to the error function.
+ * estack_id - Error stack identifier.
+ * func - Function to be called upon an error condition.
+ * client_data - Data passed to the error function.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * July 22, 2009
+ * July 22, 2009
* SOURCE
*/
/* int_f */
-/* nh5eset_auto2_c(hid_t_f *estack_id, H5E_auto2_t *func, void *client_data) */
+/* h5eset_auto2_c(hid_t_f *estack_id, H5E_auto2_t *func, void *client_data) */
/* /\******\/ */
/* { */
/* int ret_val = -1; */
diff --git a/fortran/src/H5Eff.f90 b/fortran/src/H5Eff.F90
index 7b56376..a2efe61 100644
--- a/fortran/src/H5Eff.f90
+++ b/fortran/src/H5Eff.F90
@@ -26,7 +26,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5E function to the module you must add the function name
! to the Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -35,6 +41,7 @@
MODULE H5E
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_FUNPTR, C_CHAR
USE H5GLOBAL
!Turn on automatic printing of errors
@@ -79,11 +86,9 @@ CONTAINS
INTEGER(HID_T) :: estack_id_default
INTERFACE
- INTEGER FUNCTION h5eclear_c(estack_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ECLEAR_C'::h5eclear_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5eclear_c(estack_id_default) BIND(C,NAME='h5eclear_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T) :: estack_id_default
END FUNCTION h5eclear_c
END INTERFACE
@@ -118,29 +123,22 @@ CONTAINS
!
! SOURCE
SUBROUTINE h5eprint_f(hdferr, name)
- CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: name ! File name
- INTEGER, INTENT(OUT) :: hdferr ! Error code
+ CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: name
+ INTEGER, INTENT(OUT) :: hdferr
!*****
INTEGER :: namelen
INTERFACE
- INTEGER FUNCTION h5eprint_c1(name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5EPRINT_C1'::h5eprint_c1
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5eprint_c1(name, namelen) BIND(C,NAME='h5eprint_c1')
+ IMPORT :: C_CHAR
+ IMPLICIT NONE
INTEGER :: namelen
- CHARACTER(LEN=*),INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
END FUNCTION h5eprint_c1
END INTERFACE
INTERFACE
- INTEGER FUNCTION h5eprint_c2()
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5EPRINT_C2'::h5eprint_c2
- !DEC$ENDIF
+ INTEGER FUNCTION h5eprint_c2() BIND(C,NAME='h5eprint_c2')
END FUNCTION h5eprint_c2
END INTERFACE
namelen = LEN(NAME)
@@ -186,14 +184,12 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5eget_major_c(error_no, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5EGET_MAJOR_C'::h5eget_major_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5eget_major_c(error_no, name, namelen) BIND(C,NAME='h5eget_major_c')
+ IMPORT :: C_CHAR
+ IMPORT :: SIZE_T
+ IMPLICIT NONE
INTEGER :: error_no
- CHARACTER(LEN=*) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*) :: name
INTEGER(SIZE_T), INTENT(IN) :: namelen
END FUNCTION h5eget_major_c
END INTERFACE
@@ -233,19 +229,74 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5eget_minor_c(error_no, name)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5EGET_MINOR_C'::h5eget_minor_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5eget_minor_c(error_no, name) BIND(C,NAME='h5eget_minor_c')
+ IMPORT :: C_CHAR
INTEGER :: error_no
- CHARACTER(LEN=*) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
END FUNCTION h5eget_minor_c
END INTERFACE
hdferr = h5eget_minor_c(error_no, name)
END SUBROUTINE h5eget_minor_f
+!****s* H5E/h5eset_auto_f
+!
+! NAME
+! h5eset_auto_f
+!
+! PURPOSE
+! Returns settings for automatic error stack traversal function and its data.
+!
+! Inputs:
+! printflag - Flag to turn automatic error printing on or off;
+! possible values are:
+! printon (1)
+! printoff(0)
+! estack_id - Error stack identifier.
+! func - Function to be called upon an error condition.
+! client_data - Data passed to the error function
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! July 10, 2009
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5eset_auto_f(printflag, hdferr, estack_id, func, client_data)
+ USE, INTRINSIC :: ISO_C_BINDING
+ INTEGER , INTENT(IN) :: printflag
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(HID_T), INTENT(IN) , OPTIONAL :: estack_id
+ TYPE(C_FUNPTR), INTENT(IN) , OPTIONAL :: func
+ TYPE(C_PTR) , INTENT(IN) , OPTIONAL :: client_data
+!*****
+ INTEGER(HID_T) :: estack_id_default
+ TYPE(C_FUNPTR) :: func_default
+ TYPE(C_PTR) :: client_data_default
+ INTERFACE
+ INTEGER FUNCTION h5eset_auto2_c(printflag, estack_id, func, client_data) &
+ BIND(C, NAME='h5eset_auto2_c')
+ IMPORT :: c_ptr, c_funptr
+ IMPORT :: HID_T
+ INTEGER :: printflag
+ INTEGER(HID_T) :: estack_id
+ TYPE(C_FUNPTR), VALUE :: func
+ TYPE(C_PTR), VALUE :: client_data
+ END FUNCTION h5eset_auto2_c
+ END INTERFACE
+
+ estack_id_default = -1
+ func_default = C_NULL_FUNPTR
+ client_data_default = C_NULL_PTR
+
+ IF(PRESENT(estack_id)) estack_id_default = estack_id
+ IF(PRESENT(func)) func_default = func
+ IF(PRESENT(client_data)) client_data_default = client_data
+
+ hdferr = h5eset_auto2_c(printflag, estack_id_default, func_default, client_data_default)
+ END SUBROUTINE h5eset_auto_f
+
END MODULE H5E
diff --git a/fortran/src/H5Eff_F03.f90 b/fortran/src/H5Eff_F03.f90
deleted file mode 100644
index ff8d11c..0000000
--- a/fortran/src/H5Eff_F03.f90
+++ /dev/null
@@ -1,108 +0,0 @@
-!****h* ROBODoc/H5E (F03)
-!
-! NAME
-! H5E_PROVISIONAL
-!
-! FILE
-! src/fortran/src/H5Eff_F03.f90
-!
-! PURPOSE
-!
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5E functions.
-! It contains the same functions as H5Eff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Eff_F90.f90 if Fortran 2003 functions are enabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5E function to the module you must add the function name
-! to the Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5E_PROVISIONAL
-
- USE H5GLOBAL
-
-CONTAINS
-
-!****s* H5E/h5eset_auto_f
-!
-! NAME
-! h5eset_auto_f
-!
-! PURPOSE
-! Returns settings for automatic error stack traversal function and its data.
-!
-! Inputs:
-! printflag - Flag to turn automatic error printing on or off;
-! possible values are:
-! printon (1)
-! printoff(0)
-! estack_id - Error stack identifier.
-! func - Function to be called upon an error condition.
-! client_data - Data passed to the error function
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! July 10, 2009
-!
-! Fortran2003 Interface:
- SUBROUTINE h5eset_auto_f(printflag, hdferr, estack_id, func, client_data)
- USE, INTRINSIC :: ISO_C_BINDING
- INTEGER , INTENT(IN) :: printflag
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(HID_T), INTENT(IN) , OPTIONAL :: estack_id
- TYPE(C_FUNPTR), INTENT(IN) , OPTIONAL :: func
- TYPE(C_PTR) , INTENT(IN) , OPTIONAL :: client_data
-!*****
- INTEGER(HID_T) :: estack_id_default
- TYPE(C_FUNPTR) :: func_default
- TYPE(C_PTR) :: client_data_default
- INTERFACE
- INTEGER FUNCTION h5eset_auto2_c(printflag, estack_id, func, client_data) &
- BIND(C, NAME='h5eset_auto2_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_funptr
- USE H5GLOBAL
- INTEGER :: printflag
- INTEGER(HID_T) :: estack_id
-!!$ TYPE(C_FUNPTR) :: func
-!!$ TYPE(C_PTR), VALUE :: client_data
- TYPE(C_FUNPTR), VALUE :: func
- TYPE(C_PTR), VALUE :: client_data
- END FUNCTION h5eset_auto2_c
- END INTERFACE
-
- estack_id_default = -1
- func_default = C_NULL_FUNPTR
- client_data_default = C_NULL_PTR
-
- IF(PRESENT(estack_id)) estack_id_default = estack_id
- IF(PRESENT(func)) func_default = func
- IF(PRESENT(client_data)) client_data_default = client_data
-
- hdferr = h5eset_auto2_c(printflag, estack_id_default, func_default, client_data_default)
- END SUBROUTINE h5eset_auto_f
-
-END MODULE H5E_PROVISIONAL
diff --git a/fortran/src/H5Eff_F90.f90 b/fortran/src/H5Eff_F90.f90
deleted file mode 100644
index 158ec12..0000000
--- a/fortran/src/H5Eff_F90.f90
+++ /dev/null
@@ -1,89 +0,0 @@
-!****h* ROBODoc/H5E (F90)
-!
-! NAME
-! MODULE H5E_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5E functions. It contains
-! the same functions as H5Eff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Eff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5E_PROVISIONAL
-
- USE H5GLOBAL
-
-CONTAINS
-
-!****s* H5E/h5eset_auto_f
-!
-! NAME
-! h5eset_auto_f
-!
-! PURPOSE
-! Turns automatic error printing on or off.
-!
-! INPUTS
-! printflag - Flag to turn automatic error printing on or off;
-! possible values are:
-! printon (1)
-! printoff(0)
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). April 6, 2001
-!
-! SOURCE
- SUBROUTINE h5eset_auto_f(printflag, hdferr)
- INTEGER, INTENT(IN) :: printflag ! flag to turn automatic error
- ! printing on or off
- ! possible values are:
- ! printon (1)
- ! printoff(0)
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5eset_auto_c(printflag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ESET_AUTO_C'::h5eset_auto_c
- !DEC$ENDIF
- INTEGER :: printflag
- END FUNCTION h5eset_auto_c
- END INTERFACE
-
- hdferr = h5eset_auto_c(printflag)
- END SUBROUTINE h5eset_auto_f
-
-
-END MODULE H5E_PROVISIONAL
diff --git a/fortran/src/H5FDmpiof.c b/fortran/src/H5FDmpiof.c
deleted file mode 100644
index bbdb170..0000000
--- a/fortran/src/H5FDmpiof.c
+++ /dev/null
@@ -1,258 +0,0 @@
-/****h* H5FDmpiof/H5FDmpiof
- *
- * PURPOSE
- * This file contains C stubs for Parallel Fortran APIs
- *
- * COPYRIGHT
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
- * All rights reserved. *
- * *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
- * terms governing use, modification, and redistribution, is contained in *
- * the files COPYING and Copyright.html. COPYING can be found at the root *
- * of the source code distribution tree; Copyright.html can be found at the *
- * root level of an installed copy of the electronic HDF5 document set and *
- * is linked from the top-level documents page. It can also be found at *
- * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
- * access to either file, you may request a copy from help@hdfgroup.org. *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- ******
-*/
-
-#include "H5f90.h"
-#include <mpi.h>
-#include "H5public.h"
-
-
-/* Support for C to Fortran translation in MPI */
-#ifndef H5_HAVE_MPI_MULTI_LANG_Comm
-#define MPI_Comm_c2f(comm) (int_f)(comm)
-#define MPI_Comm_f2c(comm) (MPI_Comm)(comm)
-#endif /*MPI Comm*/
-#ifndef H5_HAVE_MPI_MULTI_LANG_Info
-#define MPI_Info_c2f(info) (int_f)(info)
-#define MPI_Info_f2c(info) (MPI_Info)(info)
-#endif /*MPI Info*/
-
-/****if* H5FDmpiof/h5pset_fapl_mpio_c
- * NAME
- * h5pset_fapl_mpio_c
- * PURPOSE
- * Call H5Pset_fapl_mpio to set mode for parallel I/O and the user
- * supplied communicator and info object
- * INPUTS
- * prp_id - property list identifier
- * comm - MPI communicator
- * info - MPI info object
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, October 26, 2000
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pset_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info)
-/******/
-{
- int ret_value = -1;
- hid_t c_prp_id;
- herr_t ret;
- MPI_Comm c_comm;
- MPI_Info c_info;
- c_comm = MPI_Comm_f2c(*comm);
- c_info = MPI_Info_f2c(*info);
-
- /*
- * Call H5Pset_mpi function.
- */
- c_prp_id = *prp_id;
- ret = H5Pset_fapl_mpio(c_prp_id, c_comm, c_info);
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-/****if* H5FDmpiof/h5pget_fapl_mpio_c
- * NAME
- * h5pget_fapl_mpio_c
- * PURPOSE
- * Call H5Pget_fapl_mpio to retrieve communicator and info object
- * INPUTS
- * prp_id - property list identifier
- * comm - buffer to return MPI communicator
- * info - buffer to return MPI info object
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, October 26, 2000
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pget_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info)
-/******/
-{
- int ret_value = -1;
- hid_t c_prp_id;
- herr_t ret;
- MPI_Comm c_comm;
- MPI_Info c_info;
-
- /*
- * Call H5Pget_mpi function.
- */
- c_prp_id = *prp_id;
- ret = H5Pget_fapl_mpio(c_prp_id, &c_comm, &c_info);
- if (ret < 0) return ret_value;
- *comm = (int_f) MPI_Comm_c2f(c_comm);
- *info = (int_f) MPI_Info_c2f(c_info);
- ret_value = 0;
- return ret_value;
-}
-/****if* H5FDmpiof/h5pset_dxpl_mpio_c
- * NAME
- * h5pset_dxpl_mpio_c
- * PURPOSE
- * Call H5Pset_dxpl_mpio to set transfer mode of the dataset
- * trasfer property list
- * INPUTS
- * prp_id - property list identifier
- * data_xfer_mode - transfer mode
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, October 26, 2000
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pset_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode)
-/******/
-{
- int ret_value = -1;
- hid_t c_prp_id;
- herr_t ret;
- H5FD_mpio_xfer_t c_data_xfer_mode;
-/*
- switch (*data_xfer_mode) {
-
- case H5FD_MPIO_INDEPENDENT_F:
- c_data_xfer_mode = H5FD_MPIO_INDEPENDENT;
- break;
-
- case H5FD_MPIO_COLLECTIVE_F:
- c_data_xfer_mode = H5FD_MPIO_COLLECTIVE;
- break;
- default:
- return ret_value;
- }
-*/
- c_data_xfer_mode = (H5FD_mpio_xfer_t)*data_xfer_mode;
- /*
- * Call H5Pset_dxpl_mpio function.
- */
- c_prp_id = *prp_id;
- ret = H5Pset_dxpl_mpio(c_prp_id, c_data_xfer_mode);
- if (ret < 0) return ret_value;
- ret_value = 0;
- return ret_value;
-}
-
-/****if* H5FDmpiof/h5pget_dxpl_mpio_c
- * NAME
- * h5pget_dxpl_mpio_c
- * PURPOSE
- * Call H5Pget_dxpl_mpio to get transfer mode of the dataset
- * trasfer property list
- * INPUTS
- * prp_id - property list identifier
- * data_xfer_mode - buffer to retrieve transfer mode
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Thursday, June 15, 2000
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pget_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode)
-/******/
-{
- int ret_value = -1;
- hid_t c_prp_id;
- herr_t ret;
- H5FD_mpio_xfer_t c_data_xfer_mode;
-
- /*
- * Call H5Pget_xfer function.
- */
- c_prp_id = *prp_id;
- ret = H5Pget_dxpl_mpio(c_prp_id, &c_data_xfer_mode);
- if (ret < 0) return ret_value;
- *data_xfer_mode = (int_f)c_data_xfer_mode;
-/*
- switch (c_data_xfer_mode) {
-
- case H5FD_MPIO_INDEPENDENT:
- *data_xfer_mode = H5FD_MPIO_INDEPENDENT_F;
- break;
-
- case H5FD_MPIO_COLLECTIVE:
- *data_xfer_mode = H5FD_MPIO_COLLECTIVE_F;
- break;
-
- default:
- return ret_value;
- }
-*/
- ret_value = 0;
- return ret_value;
-}
-
-/****if* H5Pf/h5pget_mpio_actual_io_mode_c
- * NAME
- * h5pget_mpio_actual_io_mode_c
- * PURPOSE
- * Calls H5Pget_mpio_actual_io_mode
- *
- * INPUTS
- * dxpl_id - Dataset transfer property list identifier.
- * OUTPUTS
- * actual_io_mode - The type of I/O performed by this process.
- *
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * M. Scot Breitenfeld
- * July 27, 2012
- * SOURCE
-*/
-int_f
-nh5pget_mpio_actual_io_mode_c(hid_t_f *dxpl_id, int_f *actual_io_mode)
-/******/
-{
- int ret_value = -1;
- H5D_mpio_actual_io_mode_t c_actual_io_mode;
-
- /*
- * Call H5Pget_mpio_actual_io_mode_f function.
- */
- if( (H5Pget_mpio_actual_io_mode((hid_t)*dxpl_id, &c_actual_io_mode)) <0 )
- return ret_value; /* error occurred */
-
- *actual_io_mode =(int_f)c_actual_io_mode;
-
- ret_value = 0;
- return ret_value;
-}
diff --git a/fortran/src/H5FDmpioff.f90 b/fortran/src/H5FDmpioff.f90
deleted file mode 100644
index 50a77d9..0000000
--- a/fortran/src/H5FDmpioff.f90
+++ /dev/null
@@ -1,212 +0,0 @@
-!****h* ROBODoc/H5FDMPIO
-!
-! NAME
-! MODULE H5FDMPIO
-!
-! PURPOSE
-! This file contains Fortran interfaces for H5P functions needed by
-! parallel MPI programs.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5P function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5FDMPIO
- USE H5GLOBAL
-CONTAINS
-
-!****s* H5FDMPIO/h5pset_fapl_mpio_f
-!
-! NAME
-! h5pset_fapl_mpio_f
-!
-! PURPOSE
-! Stores MPI IO communicator information to the file
-! access property list.
-!
-! INPUTS
-! prp_id - file access property list identifier
-! comm - MPI-2 communicator
-! info - MPI-2 info object
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! November, 2000
-!
-! SOURCE
- SUBROUTINE h5pset_fapl_mpio_f(prp_id, comm, info, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER, INTENT(IN) :: comm ! MPI communicator to be used for file open
- ! as defined in MPI_FILE_OPEN of MPI-2
- INTEGER, INTENT(IN) :: info ! MPI info object to be used for file open
- ! as defined in MPI_FILE_OPEN of MPI-2
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER, EXTERNAL :: h5pset_fapl_mpio_c
- hdferr = h5pset_fapl_mpio_c(prp_id, comm, info)
- END SUBROUTINE h5pset_fapl_mpio_f
-
-!****s* H5FDMPIO/h5pget_fapl_mpio_f
-!
-! NAME
-! h5pget_fapl_mpio_f
-!
-! PURPOSE
-! Returns MPI communicator information.
-!
-! INPUTS
-! prp_id - file access property list identifier
-! OUTPUTS
-! comm - MPI-2 communicator
-! info - MPI-2 info object
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! November, 2000
-!
-! SOURCE
- SUBROUTINE h5pget_fapl_mpio_f(prp_id, comm, info, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER, INTENT(OUT) :: comm ! buffer to return communicator
- INTEGER, INTENT(OUT) :: info ! buffer to return info object
- ! as defined in MPI_FILE_OPEN of MPI-2
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER, EXTERNAL :: h5pget_fapl_mpio_c
- hdferr = h5pget_fapl_mpio_c(prp_id, comm, info)
- END SUBROUTINE h5pget_fapl_mpio_f
-
-!****s* H5FDMPIO/h5pset_dxpl_mpio_f
-!
-! NAME
-! h5pset_dxpl_mpio_f
-!
-! PURPOSE
-! Sets data transfer mode.
-!
-! INPUTS
-! prp_id - data transfer property list identifier
-! data_xfer_mode - transfer mode; possible values are:
-! H5FD_MPIO_INDEPENDENT_F
-! H5FD_MPIO_COLLECTIVE_F
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! November, 2000
-!
-! SOURCE
- SUBROUTINE h5pset_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER, INTENT(IN) :: data_xfer_mode ! Data transfer mode. Possible values are:
- ! H5FD_MPIO_INDEPENDENT_F
- ! H5FD_MPIO_COLLECTIVE_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER, EXTERNAL :: h5pset_dxpl_mpio_c
- hdferr = h5pset_dxpl_mpio_c(prp_id, data_xfer_mode)
- END SUBROUTINE h5pset_dxpl_mpio_f
-
-!****s* H5FDMPIO/h5pget_dxpl_mpio_f
-!
-! NAME
-! h5pget_dxpl_mpio_f
-!
-! PURPOSE
-! Returns the data transfer mode.
-!
-! INPUTS
-! prp_id - data transfer property list identifier
-! OUTPUTS
-! data_xfer_mode- transfer mode; possible values are:
-! H5FD_MPIO_INDEPENDENT_F
-! H5FD_MPIO_COLLECTIVE_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! November, 2000
-!
-! SOURCE
- SUBROUTINE h5pget_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER, INTENT(OUT) :: data_xfer_mode ! Data transfer mode. Possible values are:
- ! H5FD_MPIO_INDEPENDENT_F
- ! H5FD_MPIO_COLLECTIVE_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER, EXTERNAL :: h5pget_dxpl_mpio_c
- hdferr = h5pget_dxpl_mpio_c(prp_id, data_xfer_mode)
- END SUBROUTINE h5pget_dxpl_mpio_f
-
-!****s* H5P/h5pget_mpio_actual_io_mode_f
-! NAME
-! h5pget_mpio_actual_io_mode_f
-!
-! PURPOSE
-! Retrieves the type of I/O that HDF5 actually performed on the last
-! parallel I/O call. This is not necessarily the type of I/O requested.
-!
-! INPUTS
-! dxpl_id - Dataset transfer property list identifier.
-! OUTPUTS
-! actual_io_mode - The type of I/O performed by this process.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! July 27, 2012
-!
-! HISTORY
-!
-! Fortran90 Interface:
- SUBROUTINE h5pget_mpio_actual_io_mode_f(dxpl_id, actual_io_mode, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dxpl_id
- INTEGER , INTENT(OUT) :: actual_io_mode
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5pget_mpio_actual_io_mode_c(dxpl_id, actual_io_mode)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_MPIO_ACTUAL_IO_MODE_C'::h5pget_mpio_actual_io_mode_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dxpl_id
- INTEGER , INTENT(OUT) :: actual_io_mode
- END FUNCTION h5pget_mpio_actual_io_mode_c
- END INTERFACE
-
- actual_io_mode = -1
-
- hdferr = h5pget_mpio_actual_io_mode_c(dxpl_id, actual_io_mode)
-
- END SUBROUTINE h5pget_mpio_actual_io_mode_f
-
-END MODULE H5FDMPIO
diff --git a/fortran/src/H5Ff.c b/fortran/src/H5Ff.c
index 1696672..c1cdb91 100644
--- a/fortran/src/H5Ff.c
+++ b/fortran/src/H5Ff.c
@@ -1,6 +1,6 @@
/****h* H5Ff/H5Ff
* PURPOSE
- * This file contains C stubs for H5F Fortran APIs
+ * This file contains C stubs for H5F Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,26 +26,26 @@
/****if* H5Ff/h5fcreate_c
* NAME
- * h5fcreate_c
+ * h5fcreate_c
* PURPOSE
- * Call H5Fcreate to create the file
+ * Call H5Fcreate to create the file
* INPUTS
- * name - name of the file
- * namelen - name length
- * access_flags - file access flags
- * crt_pr - identifier of creation property list
- * acc_prp - identifier of access property list
+ * name - name of the file
+ * namelen - name length
+ * access_flags - file access flags
+ * crt_pr - identifier of creation property list
+ * acc_prp - identifier of access property list
* OUTPUTS
- * file_id - file identifier
+ * file_id - file identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, July 26, 1999
+ * Monday, July 26, 1999
* SOURCE
*/
int_f
-nh5fcreate_c(_fcd name, int_f *namelen, int_f *access_flags, hid_t_f* crt_prp, hid_t_f *acc_prp, hid_t_f *file_id)
+h5fcreate_c(_fcd name, int_f *namelen, int_f *access_flags, hid_t_f* crt_prp, hid_t_f *acc_prp, hid_t_f *file_id)
/******/
{
int ret_value = -1;
@@ -95,23 +95,23 @@ nh5fcreate_c(_fcd name, int_f *namelen, int_f *access_flags, hid_t_f* crt_prp, h
/****if* H5Ff/h5fflush_c
* NAME
- * h5fflush_c
+ * h5fflush_c
* PURPOSE
- * Call H5Fflush to flush the object
+ * Call H5Fflush to flush the object
* INPUTS
- * object_id - identifier of either a file, a dataset,
- * a group, an attribute or a named data type
- * scope - integer to specify the flushing action, either
+ * object_id - identifier of either a file, a dataset,
+ * a group, an attribute or a named data type
+ * scope - integer to specify the flushing action, either
* H5F_SCOPE_GLOBAL or H5F_SCOPE_LOCAL
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, November 5, 1999
+ * Friday, November 5, 1999
* SOURCE
*/
int_f
-nh5fflush_c (hid_t_f *object_id, int_f *scope)
+h5fflush_c (hid_t_f *object_id, int_f *scope)
/******/
{
int ret_value = -1;
@@ -136,24 +136,24 @@ nh5fflush_c (hid_t_f *object_id, int_f *scope)
/****if* H5Ff/h5fmount_c
* NAME
- * h5fmount_c
+ * h5fmount_c
* PURPOSE
- * Call H5Fmount to mount the file
+ * Call H5Fmount to mount the file
* INPUTS
- * loc_id - Identifier for file or group
- * dsetname - name of dataset
- * namelen - dsetname length
- * file_id - file identifier for the file to be mounted
- * acc_prp - identifier of access property list
+ * loc_id - Identifier for file or group
+ * dsetname - name of dataset
+ * namelen - dsetname length
+ * file_id - file identifier for the file to be mounted
+ * acc_prp - identifier of access property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Monday, October 25, 1999
+ * Monday, October 25, 1999
* HISTORY
*/
int_f
-nh5fmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen, hid_t_f *file_id, hid_t_f *acc_prp)
+h5fmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen, hid_t_f *file_id, hid_t_f *acc_prp)
/******/
{
int ret_value = -1;
@@ -194,22 +194,22 @@ nh5fmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen, hid_t_f *file_id, h
/****if* H5Ff/h5funmount_c
* NAME
- * h5funmount_c
+ * h5funmount_c
* PURPOSE
- * Call H5Funmount to unmount the file
+ * Call H5Funmount to unmount the file
* INPUTS
- * loc_id - Identifier for file or group
- * dsetname - name of dataset
- * namelen - dsetname length
+ * loc_id - Identifier for file or group
+ * dsetname - name of dataset
+ * namelen - dsetname length
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Monday, October 25, 1999
+ * Monday, October 25, 1999
* SOURCE
*/
int_f
-nh5funmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen)
+h5funmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen)
/******/
{
int ret_value = -1;
@@ -242,25 +242,25 @@ nh5funmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen)
/****if* H5Ff/h5fopen_c
* NAME
- * h5fopen_c
+ * h5fopen_c
* PURPOSE
- * Call H5Fopen to open the file
+ * Call H5Fopen to open the file
* INPUTS
- * name - name of the file
- * namelen - name length
- * access_flags - file access flags
- * acc_prp - identifier of access property list
+ * name - name of the file
+ * namelen - name length
+ * access_flags - file access flags
+ * acc_prp - identifier of access property list
* OUTPUTS
- * file_id - file identifier
+ * file_id - file identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 3, 1999
+ * Tuesday, August 3, 1999
* SOURCE
*/
int_f
-nh5fopen_c (_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *acc_prp, hid_t_f *file_id)
+h5fopen_c (_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *acc_prp, hid_t_f *file_id)
/******/
{
int ret_value = -1;
@@ -305,22 +305,22 @@ nh5fopen_c (_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *acc_prp, hi
/****if* H5Ff/h5freopen_c
* NAME
- * h5freopen_c
+ * h5freopen_c
* PURPOSE
- * Call H5Freopen to open the file
+ * Call H5Freopen to open the file
* INPUTS
- * file_id1 - file identifier
+ * file_id1 - file identifier
* OUTPUTS
- * file_id2 - file identifier
+ * file_id2 - file identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, November 3, 1999
+ * Wednesday, November 3, 1999
* SOURCE
*/
int_f
-nh5freopen_c (hid_t_f *file_id1, hid_t_f *file_id2)
+h5freopen_c (hid_t_f *file_id1, hid_t_f *file_id2)
/******/
{
int ret_value = -1;
@@ -338,22 +338,22 @@ nh5freopen_c (hid_t_f *file_id1, hid_t_f *file_id2)
/****if* H5Ff/h5fget_create_plist_c
* NAME
- * h5fget_create_plist_c
+ * h5fget_create_plist_c
* PURPOSE
- * Call H5Fget_create_plist to get the file creation property list
+ * Call H5Fget_create_plist to get the file creation property list
* INPUTS
- * file_id - file identifier
+ * file_id - file identifier
* OUTPUTS
- * prop_id - creation property list identifier
+ * prop_id - creation property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal, Xiangyang Su
- * Wednesday, November 3, 1999
+ * Wednesday, November 3, 1999
* SOURCE
*/
int_f
-nh5fget_create_plist_c (hid_t_f *file_id, hid_t_f *prop_id)
+h5fget_create_plist_c (hid_t_f *file_id, hid_t_f *prop_id)
/******/
{
int ret_value = -1;
@@ -371,24 +371,24 @@ nh5fget_create_plist_c (hid_t_f *file_id, hid_t_f *prop_id)
/****if* H5Ff/h5fget_access_plist_c
* NAME
- * h5fget_access_plist_c
+ * h5fget_access_plist_c
* PURPOSE
- * Call H5Fget_access_plist to get the file access property list
+ * Call H5Fget_access_plist to get the file access property list
* INPUTS
- * file_id - file identifier
+ * file_id - file identifier
* OUTPUTS
- * access_id - access property list identifier
+ * access_id - access property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, September 30, 2002
+ * Monday, September 30, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5fget_access_plist_c (hid_t_f *file_id, hid_t_f *access_id)
+h5fget_access_plist_c (hid_t_f *file_id, hid_t_f *access_id)
/******/
{
int ret_value = -1;
@@ -406,26 +406,26 @@ nh5fget_access_plist_c (hid_t_f *file_id, hid_t_f *access_id)
/****if* H5Ff/h5fis_hdf5_c
* NAME
- * h5fis_hdf5_c
+ * h5fis_hdf5_c
* PURPOSE
- * Call H5Fis_hdf5 to determone if the file is an HDF5 file
+ * Call H5Fis_hdf5 to determone if the file is an HDF5 file
* INPUTS
- * name - name of the file
- * namelen - name length
+ * name - name of the file
+ * namelen - name length
* OUTPUTS
- * flag - 0 if file is not HDF5 file , positive if a file
- * is an HDF5 file, and negative on failure.
+ * flag - 0 if file is not HDF5 file , positive if a file
+ * is an HDF5 file, and negative on failure.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 3, 1999
+ * Tuesday, August 3, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5fis_hdf5_c (_fcd name, int_f *namelen, int_f *flag)
+h5fis_hdf5_c (_fcd name, int_f *namelen, int_f *flag)
/******/
{
int ret_value = -1;
@@ -452,23 +452,23 @@ nh5fis_hdf5_c (_fcd name, int_f *namelen, int_f *flag)
}
/****if* H5Ff/h5fclose_c
* NAME
- * h5fclose_c
+ * h5fclose_c
* PURPOSE
- * Call H5Fclose to close the file
+ * Call H5Fclose to close the file
* INPUTS
- * file_id - identifier of the file to be closed
+ * file_id - identifier of the file to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, July 26, 1999
+ * Monday, July 26, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5fclose_c ( hid_t_f *file_id )
+h5fclose_c ( hid_t_f *file_id )
/******/
{
int ret_value = 0;
@@ -480,27 +480,27 @@ nh5fclose_c ( hid_t_f *file_id )
}
/****if* H5Ff/h5fget_obj_count_c
* NAME
- * h5fget_obj_count_c
+ * h5fget_obj_count_c
* PURPOSE
- * Call H5Fget_obj_count to get number of open objects within a file
+ * Call H5Fget_obj_count to get number of open objects within a file
* INPUTS
- * file_id - identifier of the file to be closed
- * obj_type - type of the object
+ * file_id - identifier of the file to be closed
+ * obj_type - type of the object
* RETURNS
- * obj_count - number of objects
- * 0 on success, -1 on failure
+ * obj_count - number of objects
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, September 30, 2002
+ * Monday, September 30, 2002
* HISTORY
*
- * Changed type of obj_count to size_t_f
- * Thursday, September 25, 2008
+ * Changed type of obj_count to size_t_f
+ * Thursday, September 25, 2008
* SOURCE
*/
int_f
-nh5fget_obj_count_c ( hid_t_f *file_id , int_f *obj_type, size_t_f * obj_count)
+h5fget_obj_count_c ( hid_t_f *file_id , int_f *obj_type, size_t_f * obj_count)
/******/
{
int ret_value = 0;
@@ -525,7 +525,7 @@ nh5fget_obj_count_c ( hid_t_f *file_id , int_f *obj_type, size_t_f * obj_count)
* obj_type - type of the object
* RETURNS
* obj_ids - iarray of open objects identifiers
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Monday, September 30, 2002
@@ -538,7 +538,7 @@ nh5fget_obj_count_c ( hid_t_f *file_id , int_f *obj_type, size_t_f * obj_count)
* SOURCE
*/
int_f
-nh5fget_obj_ids_c ( hid_t_f *file_id , int_f *obj_type, size_t_f *max_objs,
+h5fget_obj_ids_c ( hid_t_f *file_id , int_f *obj_type, size_t_f *max_objs,
hid_t_f *obj_ids, size_t_f *num_objs)
/******/
{
@@ -569,22 +569,22 @@ nh5fget_obj_ids_c ( hid_t_f *file_id , int_f *obj_type, size_t_f *max_objs,
/****if* H5Ff/h5fget_freespace_c
* NAME
- * h5fget_freespace_c
+ * h5fget_freespace_c
* PURPOSE
- * Call H5Fget_freespace to get amount of free space within a file
+ * Call H5Fget_freespace to get amount of free space within a file
* INPUTS
- * file_id - identifier of the file to query
+ * file_id - identifier of the file to query
* RETURNS
- * free_space - amount of free space in file
- * 0 on success, -1 on failure
+ * free_space - amount of free space in file
+ * 0 on success, -1 on failure
* AUTHOR
* Quincey Koziol
- * Tuesday, October 7, 2003
+ * Tuesday, October 7, 2003
* SOURCE
*/
int_f
-nh5fget_freespace_c ( hid_t_f *file_id , hssize_t_f *free_space)
+h5fget_freespace_c ( hid_t_f *file_id , hssize_t_f *free_space)
/******/
{
int ret_value = 0;
@@ -599,24 +599,24 @@ nh5fget_freespace_c ( hid_t_f *file_id , hssize_t_f *free_space)
/****if* H5Ff/h5fget_name_c
* NAME
- * h5fget_name_c
+ * h5fget_name_c
* PURPOSE
- * Call H5Fget_name to get file's name
+ * Call H5Fget_name to get file's name
* INPUTS
- * obj_id - object identifier
- * buflen -size of the buffer
+ * obj_id - object identifier
+ * buflen -size of the buffer
* OUTPUTS
- * buf - buffer to hold the name
- * size - size of the file's name
+ * buf - buffer to hold the name
+ * size - size of the file's name
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, July 6, 2004
+ * Tuesday, July 6, 2004
* SOURCE
*/
int_f
-nh5fget_name_c(hid_t_f *obj_id, size_t_f *size, _fcd buf, size_t_f *buflen)
+h5fget_name_c(hid_t_f *obj_id, size_t_f *size, _fcd buf, size_t_f *buflen)
/******/
{
char *c_buf = NULL; /* Buffer to hold C string */
@@ -648,22 +648,22 @@ done:
/****if* H5Ff/h5fget_filesize_c
* NAME
- * h5fget_filesize_c
+ * h5fget_filesize_c
* PURPOSE
- * Call H5Fget_filesize to get file size
+ * Call H5Fget_filesize to get file size
* INPUTS
- * file_id - file identifier
+ * file_id - file identifier
* OUTPUTS
- * size - size of the file
+ * size - size of the file
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, July 7, 2004
+ * Wednesday, July 7, 2004
* SOURCE
*/
int_f
-nh5fget_filesize_c(hid_t_f *file_id, hsize_t_f *size)
+h5fget_filesize_c(hid_t_f *file_id, hsize_t_f *size)
/******/
{
hsize_t size_c;
diff --git a/fortran/src/H5Fff.f90 b/fortran/src/H5Fff.F90
index faa1967..c69ad82 100644
--- a/fortran/src/H5Fff.f90
+++ b/fortran/src/H5Fff.F90
@@ -26,7 +26,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5F function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -34,7 +40,9 @@
!*****
MODULE H5F
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR, C_NULL_PTR
USE H5GLOBAL
+ IMPLICIT NONE
CONTAINS
!****s* H5F/h5fcreate_f
@@ -88,13 +96,10 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5fcreate_c(name, namelen, access_flags, &
- creation_prp_default, access_prp_default, file_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FCREATE_C':: h5fcreate_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- CHARACTER(LEN=*), INTENT(IN) :: name
+ creation_prp_default, access_prp_default, file_id) BIND(C,NAME='h5fcreate_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: access_flags
INTEGER(HID_T), INTENT(OUT) :: file_id
INTEGER(HID_T), INTENT(IN) :: creation_prp_default
@@ -165,11 +170,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5fflush_c(object_id, scope)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FFLUSH_C':: h5fflush_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fflush_c(object_id, scope) BIND(C,NAME='h5fflush_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: object_id
INTEGER, INTENT(IN) :: scope
END FUNCTION h5fflush_c
@@ -224,14 +227,12 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5fmount_c(loc_id, name, namelen, &
- child_id, access_prp_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FMOUNT_C':: h5fmount_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ child_id, access_prp_default) BIND(C,NAME='h5fmount_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(HID_T), INTENT(IN) :: child_id
INTEGER(HID_T), INTENT(IN) :: access_prp_default
INTEGER :: namelen
@@ -280,14 +281,12 @@ CONTAINS
INTEGER :: namelen ! Length of the name character string
INTERFACE
- INTEGER FUNCTION h5funmount_c(loc_id, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FUNMOUNT_C':: h5funmount_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5funmount_c(loc_id, name, namelen) BIND(C,NAME='h5funmount_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
END FUNCTION h5funmount_c
END INTERFACE
@@ -340,13 +339,11 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5fopen_c(name, namelen, access_flags, &
- access_prp_default, file_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FOPEN_C':: h5fopen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- CHARACTER(LEN=*), INTENT(IN) :: name
+ access_prp_default, file_id) BIND(C,NAME='h5fopen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER, INTENT(IN) :: access_flags
INTEGER(HID_T), INTENT(IN) :: access_prp_default
@@ -391,11 +388,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5freopen_c(file_id, ret_file_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FREOPEN_C':: h5freopen_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5freopen_c(file_id, ret_file_id) BIND(C,NAME='h5freopen_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER(HID_T), INTENT(OUT) :: ret_file_id
END FUNCTION h5freopen_c
@@ -436,11 +431,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5fget_create_plist_c(file_id, prop_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_CREATE_PLIST_C':: h5fget_create_plist_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_create_plist_c(file_id, prop_id) BIND(C,NAME='h5fget_create_plist_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER(HID_T), INTENT(OUT) :: prop_id
END FUNCTION h5fget_create_plist_c
@@ -480,11 +473,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5fget_access_plist_c(file_id, access_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_CREATE_PLIST_C':: h5fget_access_plist_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_access_plist_c(file_id, access_id) BIND(C,NAME='h5fget_access_plist_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER(HID_T), INTENT(OUT) :: access_id
END FUNCTION h5fget_access_plist_c
@@ -529,13 +520,10 @@ CONTAINS
! to define status value.
INTERFACE
- INTEGER FUNCTION h5fis_hdf5_c(name, namelen, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FIS_HDF5_C':: h5fis_hdf5_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER FUNCTION h5fis_hdf5_c(name, namelen, flag) BIND(C,NAME='h5fis_hdf5_c')
+ IMPORT :: C_CHAR
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER :: flag
END FUNCTION h5fis_hdf5_c
@@ -575,11 +563,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5fclose_c(file_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FCLOSE_C':: h5fclose_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fclose_c(file_id) BIND(C,NAME='h5fclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
END FUNCTION h5fclose_c
END INTERFACE
@@ -618,22 +604,18 @@ CONTAINS
! SOURCE
SUBROUTINE h5fget_obj_count_f(file_id, obj_type, obj_count, hdferr)
IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: file_id ! File identifier
- INTEGER, INTENT(IN) :: obj_type ! Object type
+ INTEGER(HID_T), INTENT(IN) :: file_id
+ INTEGER, INTENT(IN) :: obj_type
INTEGER(SIZE_T), INTENT(OUT) :: obj_count
- ! Number of open objects
- INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER, INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION h5fget_obj_count_c(file_id, obj_type, obj_count)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_OBJ_COUNT_C':: h5fget_obj_count_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_obj_count_c(file_id, obj_type, obj_count) BIND(C,NAME='h5fget_obj_count_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
- INTEGER, INTENT(IN) :: obj_type ! Object type
+ INTEGER, INTENT(IN) :: obj_type
INTEGER(SIZE_T), INTENT(OUT) :: obj_count
- ! Number of open objects
END FUNCTION h5fget_obj_count_c
END INTERFACE
@@ -688,11 +670,10 @@ CONTAINS
INTEGER(SIZE_T) :: c_num_objs ! Number of open objects of the specified type
INTERFACE
- INTEGER FUNCTION h5fget_obj_ids_c(file_id, obj_type, max_objs, obj_ids, c_num_objs)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_OBJ_IDS_C':: h5fget_obj_ids_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_obj_ids_c(file_id, obj_type, max_objs, obj_ids, c_num_objs) &
+ BIND(C,NAME='h5fget_obj_ids_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER, INTENT(IN) :: obj_type
INTEGER(SIZE_T), INTENT(IN) :: max_objs
@@ -732,11 +713,10 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5fget_freespace_c(file_id, free_space)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_FREESPACE_C':: h5fget_freespace_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_freespace_c(file_id, free_space) &
+ BIND(C,NAME='h5fget_freespace_c')
+ IMPORT :: HID_T, HSSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER(HSSIZE_T), INTENT(OUT) :: free_space
END FUNCTION h5fget_freespace_c
@@ -776,16 +756,15 @@ CONTAINS
INTEGER(SIZE_T) :: buflen
INTERFACE
- INTEGER FUNCTION h5fget_name_c(obj_id, size, buf, buflen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_NAME_C'::h5fget_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
+ INTEGER FUNCTION h5fget_name_c(obj_id, size, buf, buflen) &
+ BIND(C,NAME='h5fget_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER(SIZE_T), INTENT(OUT) :: size
INTEGER(SIZE_T) :: buflen
- CHARACTER(LEN=*), INTENT(OUT) :: buf
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buf
END FUNCTION h5fget_name_c
END INTERFACE
buflen = LEN_TRIM(buf)
@@ -818,11 +797,10 @@ CONTAINS
! -1 if fail
!*****
INTERFACE
- INTEGER FUNCTION h5fget_filesize_c(file_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5FGET_FILESIZE_C'::h5fget_filesize_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5fget_filesize_c(file_id, size) &
+ BIND(C,NAME='h5fget_filesize_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: file_id
INTEGER(HSIZE_T), INTENT(OUT) :: size
END FUNCTION h5fget_filesize_c
@@ -830,5 +808,64 @@ CONTAINS
hdferr = h5fget_filesize_c(file_id, size)
END SUBROUTINE h5fget_filesize_f
+!****s* H5F (F03)/h5fget_file_image_f_F03
+!
+! NAME
+! h5fget_file_image_f
+!
+! PURPOSE
+! Retrieves a copy of the image of an existing, open file.
+!
+! INPUTS
+! file_id - Target file identifier.
+! buf_ptr - Pointer to the buffer into which the image of the HDF5 file is to be copied.
+! buf_len - Size of the supplied buffer.
+!
+! OUTPUTS
+! hdferr - error code:
+! 0 on success and -1 on failure
+! OPTIONAL PARAMETERS
+! buf_size - Returns the size in bytes of the buffer required to store the file image,
+! no data will be copied.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! November 26, 2012
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5fget_file_image_f(file_id, buf_ptr, buf_len, hdferr, buf_size)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: file_id
+ TYPE(C_PTR) , INTENT(INOUT) :: buf_ptr
+ INTEGER(SIZE_T), INTENT(IN) :: buf_len
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(SIZE_T), INTENT(OUT) , OPTIONAL :: buf_size
+!*****
+
+ INTEGER(SIZE_T) :: buf_size_default
+
+ INTERFACE
+ INTEGER FUNCTION h5fget_file_image_c(file_id, buf_ptr, buf_len, buf_size) BIND(C, NAME='h5fget_file_image_c')
+ IMPORT :: C_PTR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: file_id
+ TYPE(C_PTR) , VALUE :: buf_ptr
+ INTEGER(SIZE_T), INTENT(IN) :: buf_len
+ INTEGER(SIZE_T), INTENT(IN) :: buf_size
+ END FUNCTION h5fget_file_image_c
+ END INTERFACE
+
+ IF(PRESENT(buf_size))THEN
+ buf_ptr = C_NULL_PTR
+ ENDIF
+
+ hdferr = h5fget_file_image_c(file_id, buf_ptr, buf_len, buf_size_default)
+
+ IF(PRESENT(buf_size))THEN
+ buf_size = buf_size_default
+ ENDIF
+
+ END SUBROUTINE h5fget_file_image_f
END MODULE H5F
diff --git a/fortran/src/H5Fff_F03.f90 b/fortran/src/H5Fff_F03.f90
deleted file mode 100644
index 8544870..0000000
--- a/fortran/src/H5Fff_F03.f90
+++ /dev/null
@@ -1,99 +0,0 @@
-!****h* ROBODoc/H5F (F03)
-!
-! NAME
-! H5F_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 2003 interfaces for H5F functions.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5T function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5F_PROVISIONAL
-
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING
-
-CONTAINS
-!****s* H5F (F03)/h5fget_file_image_f_F03
-!
-! NAME
-! h5fget_file_image_f
-!
-! PURPOSE
-! Retrieves a copy of the image of an existing, open file.
-!
-! INPUTS
-! file_id - Target file identifier.
-! buf_ptr - Pointer to the buffer into which the image of the HDF5 file is to be copied.
-! buf_len - Size of the supplied buffer.
-!
-! OUTPUTS
-! hdferr - error code:
-! 0 on success and -1 on failure
-! OPTIONAL PARAMETERS
-! buf_size - Returns the size in bytes of the buffer required to store the file image,
-! no data will be copied.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! November 26, 2012
-!
-! Fortran2003 Interface:
- SUBROUTINE h5fget_file_image_f(file_id, buf_ptr, buf_len, hdferr, buf_size)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: file_id
- TYPE(C_PTR) , INTENT(INOUT) :: buf_ptr
- INTEGER(SIZE_T), INTENT(IN) :: buf_len
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(SIZE_T), INTENT(OUT) , OPTIONAL :: buf_size
-!*****
-
- INTEGER(SIZE_T) :: buf_size_default
-
- INTERFACE
- INTEGER FUNCTION h5fget_file_image_c(file_id, buf_ptr, buf_len, buf_size) BIND(C, NAME='h5fget_file_image_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
- USE H5GLOBAL
- INTEGER(HID_T) , INTENT(IN) :: file_id
- TYPE(C_PTR) , VALUE :: buf_ptr
- INTEGER(SIZE_T), INTENT(IN) :: buf_len
- INTEGER(SIZE_T), INTENT(IN) :: buf_size
- END FUNCTION h5fget_file_image_c
- END INTERFACE
-
- IF(PRESENT(buf_size))THEN
- buf_ptr = C_NULL_PTR
- ENDIF
-
- hdferr = h5fget_file_image_c(file_id, buf_ptr, buf_len, buf_size_default)
-
- IF(PRESENT(buf_size))THEN
- buf_size = buf_size_default
- ENDIF
-
- END SUBROUTINE h5fget_file_image_f
-
-END MODULE H5F_PROVISIONAL
diff --git a/fortran/src/H5Fff_F90.f90 b/fortran/src/H5Fff_F90.f90
deleted file mode 100644
index b6e659b..0000000
--- a/fortran/src/H5Fff_F90.f90
+++ /dev/null
@@ -1,43 +0,0 @@
-!****h* ROBODoc/H5F (F90)
-!
-! NAME
-! H5F_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5F functions. It
-! containsthe same functions as H5Fff_F03.f90, when applicable,
-! but excludes the Fortran 2003 functions and the interface listings.
-! This file will be compiled instead of H5Fff_F03.f90 if Fortran 2003
-! functions are not enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5F function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-
-MODULE H5F_PROVISIONAL
-
- USE H5GLOBAL
- IMPLICIT NONE
-
-END MODULE H5F_PROVISIONAL
diff --git a/fortran/src/H5Gf.c b/fortran/src/H5Gf.c
index 7f755b3..b9c44bb 100644
--- a/fortran/src/H5Gf.c
+++ b/fortran/src/H5Gf.c
@@ -1,6 +1,6 @@
/****h* H5Gf/H5Gf
* PURPOSE
- * This file contains C stubs for H5G Fortran APIs
+ * This file contains C stubs for H5G Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,30 +26,29 @@
/****if* H5Gf/h5gcreate_c
* NAME
- * h5gcreate_c
+ * h5gcreate_c
* PURPOSE
- * Call H5Gcreate to create a group
+ * Call H5Gcreate to create a group
* INPUTS
- * loc_id - file or group identifier
- * name - name of the group
- * namelen - name length
- * size_hint - length of names in the group
+ * loc_id - file or group identifier
+ * name - name of the group
+ * namelen - name length
+ * size_hint - length of names in the group
* OUTPUTS
- * grp_id - group identifier
+ * grp_id - group identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 5, 1999
+ * Wednesday, August 5, 1999
* HISTORY
- *
- * Changed to call H5Gcreate2 because H5Gcreate flip-flops and
- * H5Gcreate1 can be compiled out of the library
- * QAK - 2007/08/23
+ * Changed to call H5Gcreate2 because H5Gcreate flip-flops and
+ * H5Gcreate1 can be compiled out of the library
+ * QAK - 2007/08/23
* SOURCE
*/
int_f
-nh5gcreate_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size_hint,
+h5gcreate_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size_hint,
hid_t_f *grp_id, hid_t_f *lcpl_id, hid_t_f *gcpl_id, hid_t_f *gapl_id )
/******/
{
@@ -98,26 +97,26 @@ DONE:
/****if* H5Gf/h5gopen_c
* NAME
- * h5gopen_c
+ * h5gopen_c
* PURPOSE
- * Call H5Gopen to open a dataset
+ * Call H5Gopen to open a dataset
* INPUTS
- * loc_id - file or group identifier
- * name - name of the group
- * namelen - name length
- * gapl_id - Group access property list identifier
+ * loc_id - file or group identifier
+ * name - name of the group
+ * namelen - name length
+ * gapl_id - Group access property list identifier
* OUTPUTS
- * grp_id - group identifier
+ * grp_id - group identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 5, 1999
+ * Wednesday, August 5, 1999
*
* SOURCE
*/
int_f
-nh5gopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *gapl_id, hid_t_f *grp_id)
+h5gopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *gapl_id, hid_t_f *grp_id)
/******/
{
char *c_name = NULL;
@@ -148,28 +147,28 @@ DONE:
/****if* H5Gf/h5gget_obj_info_idx_c
* NAME
- * h5gget_obj_info_idx_c
+ * h5gget_obj_info_idx_c
* PURPOSE
- * Call H5Gget_obj_info to return name and the type of group
- * member
+ * Call H5Gget_obj_info to return name and the type of group
+ * member
* INPUTS
- * loc_id - file or group identifier
- * name - name of the group
- * namelen - name length
- * idx - index of the group member
+ * loc_id - file or group identifier
+ * name - name of the group
+ * namelen - name length
+ * idx - index of the group member
* OUTPUTS
- * obj_name - buffer to store member's name
- * obj_namelen - length of the buffer
- * obj_type - type of the object
+ * obj_name - buffer to store member's name
+ * obj_namelen - length of the buffer
+ * obj_type - type of the object
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 5, 1999
+ * Wednesday, August 5, 1999
* SOURCE
*/
int_f
-nh5gget_obj_info_idx_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *idx,
+h5gget_obj_info_idx_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *idx,
_fcd obj_name, int_f *obj_namelen, int_f *obj_type)
/******/
{
@@ -207,7 +206,7 @@ nh5gget_obj_info_idx_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *idx,
goto DONE;
/* XXX: Switch from using H5Gget_objtype_by_idx() means that this routine won't
- * work on non-hard links - QAK
+ * work on non-hard links - QAK
*/
*obj_type = oinfo.type;
@@ -231,24 +230,24 @@ DONE:
/****if* H5Gf/h5gn_members_c
* NAME
- * h5gn_members_c
+ * h5gn_members_c
* PURPOSE
- * Call H5Gget_info_by_name to find number of objects in the group
+ * Call H5Gget_info_by_name to find number of objects in the group
* INPUTS
- * loc_id - file or group identifier
- * name - name of the group
- * namelen - name length
+ * loc_id - file or group identifier
+ * name - name of the group
+ * namelen - name length
* OUTPUTS
- * nmemebers - number of members
+ * nmemebers - number of members
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 5, 1999
+ * Wednesday, August 5, 1999
* SOURCE
*/
int_f
-nh5gn_members_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *nmembers)
+h5gn_members_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *nmembers)
/******/
{
char *c_name = NULL;
@@ -276,21 +275,21 @@ DONE:
/****if* H5Gf/h5gclose_c
* NAME
- * h5gclose_c
+ * h5gclose_c
* PURPOSE
- * Call H5Gclose to close the group
+ * Call H5Gclose to close the group
* INPUTS
- * grp_id - identifier of the group to be closed
+ * grp_id - identifier of the group to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 5, 1999
+ * Wednesday, August 5, 1999
* SOURCE
*/
int_f
-nh5gclose_c(hid_t_f *grp_id)
+h5gclose_c(hid_t_f *grp_id)
/******/
{
int ret_value = 0;
@@ -303,19 +302,19 @@ nh5gclose_c(hid_t_f *grp_id)
/****if* H5Gf/h5glink_c
* NAME
- * h5glink_c
+ * h5glink_c
* PURPOSE
- * Call H5Glink to link the specified type
+ * Call H5Glink to link the specified type
* INPUTS
- * loc_id - identifier of file or group
- * link_type - link type
- * current_name - name of the existing object for hard link,
- * anything for the soft link
- * current_namelen - current name lenghth
- * new_name - new name for the object
- * new_namelen - new_name lenghth
+ * loc_id - identifier of file or group
+ * link_type - link type
+ * current_name - name of the existing object for hard link,
+ * anything for the soft link
+ * current_namelen - current name lenghth
+ * new_name - new name for the object
+ * new_namelen - new_name lenghth
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
* Friday, August 6, 1999
@@ -323,7 +322,7 @@ nh5gclose_c(hid_t_f *grp_id)
*/
int_f
-nh5glink_c(hid_t_f *loc_id, int_f *link_type, _fcd current_name,
+h5glink_c(hid_t_f *loc_id, int_f *link_type, _fcd current_name,
int_f *current_namelen, _fcd new_name, int_f *new_namelen)
/******/
{
@@ -385,32 +384,32 @@ DONE:
/****if* H5Gf/h5glink2_c
* NAME
- * h5glink2_c
+ * h5glink2_c
* PURPOSE
- * Call H5Glink2 to link the specified type
+ * Call H5Glink2 to link the specified type
* INPUTS
- * cur_loc_id - identifier of file or group
- * cur_name - name of the existing object for hard link releative
- * to cur_loc_id location,
- * anything for the soft link
- * current_namelen - current name lenghth
- * link_type - link type
- * new_loc_id - location identifier
- * new_name - new name for the object releative to the new_loc_id
- * location
- * new_namelen - new_name lenghth
+ * cur_loc_id - identifier of file or group
+ * cur_name - name of the existing object for hard link releative
+ * to cur_loc_id location,
+ * anything for the soft link
+ * current_namelen - current name lenghth
+ * link_type - link type
+ * new_loc_id - location identifier
+ * new_name - new name for the object releative to the new_loc_id
+ * location
+ * new_namelen - new_name lenghth
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, September 25, 2002
+ * Wednesday, September 25, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5glink2_c(hid_t_f *cur_loc_id, _fcd cur_name, int_f *cur_namelen,
+h5glink2_c(hid_t_f *cur_loc_id, _fcd cur_name, int_f *cur_namelen,
int_f *link_type, hid_t_f *new_loc_id, _fcd new_name, int_f *new_namelen)
/******/
{
@@ -470,14 +469,14 @@ DONE:
/****if* H5Gf/h5gunlink_c
* NAME
- * h5gunlink_c
+ * h5gunlink_c
* PURPOSE
- * Call H5Gunlink to remove the specified name
+ * Call H5Gunlink to remove the specified name
* INPUTS
- * loc_id - identifier of file or group
- * name - name of the object to unlink
+ * loc_id - identifier of file or group
+ * name - name of the object to unlink
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
* Friday, August 6, 1999
@@ -485,7 +484,7 @@ DONE:
*/
int_f
-nh5gunlink_c(hid_t_f *loc_id, _fcd name, int_f *namelen)
+h5gunlink_c(hid_t_f *loc_id, _fcd name, int_f *namelen)
/******/
{
char *c_name = NULL;
@@ -512,17 +511,17 @@ DONE:
/****if* H5Gf/h5gmove_c
* NAME
- * h5gmove_c
+ * h5gmove_c
* PURPOSE
- * Call H5Gmove to rename an object within an HDF5 file
+ * Call H5Gmove to rename an object within an HDF5 file
* INPUTS
- * loc_id - identifier of file or group
- * src_name - name of the original object
- * src_namelen - original name lenghth
- * dst_name - new name for the object
- * dst_namelen - new name lenghth
+ * loc_id - identifier of file or group
+ * src_name - name of the original object
+ * src_namelen - original name lenghth
+ * dst_name - new name for the object
+ * dst_namelen - new name lenghth
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
* Friday, August 6, 1999
@@ -530,7 +529,7 @@ DONE:
*/
int_f
-nh5gmove_c(hid_t_f *loc_id, _fcd src_name, int_f *src_namelen, _fcd dst_name, int_f*dst_namelen)
+h5gmove_c(hid_t_f *loc_id, _fcd src_name, int_f *src_namelen, _fcd dst_name, int_f*dst_namelen)
/******/
{
char *c_src_name = NULL, *c_dst_name = NULL;
@@ -562,18 +561,18 @@ DONE:
/****if* H5Gf/h5gmove2_c
* NAME
- * h5gmove2_c
+ * h5gmove2_c
* PURPOSE
- * Call H5Gmove2 to rename an object within an HDF5 file
+ * Call H5Gmove2 to rename an object within an HDF5 file
* INPUTS
- * src_loc_id - identifier of file or group
- * src_name - name of the original object relative to src_loc_id
- * src_namelen - original name lenghth
- * dst_loc_id - new location identifier
- * dst_name - new name for the object relative to dst_loc_id
- * dst_namelen - new name lenghth
+ * src_loc_id - identifier of file or group
+ * src_name - name of the original object relative to src_loc_id
+ * src_namelen - original name lenghth
+ * dst_loc_id - new location identifier
+ * dst_name - new name for the object relative to dst_loc_id
+ * dst_namelen - new name lenghth
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Wednesday, September 25, 2002
@@ -582,7 +581,7 @@ DONE:
*/
int_f
-nh5gmove2_c(hid_t_f *src_loc_id, _fcd src_name, int_f *src_namelen, hid_t_f *dst_loc_id, _fcd dst_name, int_f*dst_namelen)
+h5gmove2_c(hid_t_f *src_loc_id, _fcd src_name, int_f *src_namelen, hid_t_f *dst_loc_id, _fcd dst_name, int_f*dst_namelen)
/******/
{
char *c_src_name = NULL, *c_dst_name = NULL;
@@ -614,18 +613,18 @@ DONE:
/****if* H5Gf/h5gget_linkval_c
* NAME
- * h5gget_linkval_c
+ * h5gget_linkval_c
* PURPOSE
- * Call H5Gget_linkval to return the name of object
+ * Call H5Gget_linkval to return the name of object
* INPUTS
- * loc_id - identifier of file or group
- * name - name of the object that symbolic link points to
- * namelen - the name lenghth
- * size - lenghth of retrurned value
+ * loc_id - identifier of file or group
+ * name - name of the object that symbolic link points to
+ * namelen - the name lenghth
+ * size - lenghth of retrurned value
* OUTPUTS
- * value - name to be returned
+ * value - name to be returned
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
* Friday, August 6, 1999
@@ -633,7 +632,7 @@ DONE:
*/
int_f
-nh5gget_linkval_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size,
+h5gget_linkval_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size,
_fcd value)
/******/
{
@@ -678,26 +677,26 @@ DONE:
/****if* H5Gf/h5gset_comment_c
* NAME
- * h5gset_comment_c
+ * h5gset_comment_c
* PURPOSE
- * Call H5Oset_comment_by_name to set comments for the specified object
+ * Call H5Oset_comment_by_name to set comments for the specified object
* INPUTS
- * loc_id - identifier of file or group
- * name - name of object whose comment is to be set or reset
- * namelen - the name lenghth
- * comment - the new comment
- * commentlen - new comment lenghth
+ * loc_id - identifier of file or group
+ * name - name of object whose comment is to be set or reset
+ * namelen - the name lenghth
+ * comment - the new comment
+ * commentlen - new comment lenghth
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
- * Friday, August 6, 1999
+ * Friday, August 6, 1999
* HISTORY
- * Elena Pourmal
+ * Elena Pourmal
* SOURCE
*/
int_f
-nh5gset_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, _fcd comment,
+h5gset_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, _fcd comment,
int_f *commentlen)
/******/
{
@@ -729,24 +728,24 @@ DONE:
/****if* H5Gf/h5gget_comment_c
* NAME
- * h5gget_comment_c
+ * h5gget_comment_c
* PURPOSE
- * Call H5Oget_comment_by_name to retrieve comments for the specified object
+ * Call H5Oget_comment_by_name to retrieve comments for the specified object
* INPUTS
- * loc_id - identifier of file or group
- * name - name of object whose comment is to be set or reset
- * namelen - the name lenghth
- * bufsize - at most bufsize characters
- * comment - the new comment
+ * loc_id - identifier of file or group
+ * name - name of object whose comment is to be set or reset
+ * namelen - the name lenghth
+ * bufsize - at most bufsize characters
+ * comment - the new comment
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Mingshi Chen
- * Friday, August 6, 1999
+ * Friday, August 6, 1999
* SOURCE
*/
int_f
-nh5gget_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *bufsize,
+h5gget_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *bufsize,
_fcd comment)
/******/
{
@@ -791,26 +790,26 @@ DONE:
/****if* H5Gf/h5gcreate_anon_c
* NAME
- * h5gcreate_anon_c
+ * h5gcreate_anon_c
* PURPOSE
- * Call H5Gcreate_anon
+ * Call H5Gcreate_anon
* INPUTS
*
- * loc_id - Location identifier
- * gcpl_id - Group creation property list identifier
- * gapl_id - Group access property list identifier
+ * loc_id - Location identifier
+ * gcpl_id - Group creation property list identifier
+ * gapl_id - Group access property list identifier
*
* OUTPUTS
- * grp_id - group identifier
+ * grp_id - group identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* February 15, 2008
* SOURCE
*/
int_f
-nh5gcreate_anon_c(hid_t_f *loc_id, hid_t_f *gcpl_id, hid_t_f *gapl_id, hid_t_f *grp_id)
+h5gcreate_anon_c(hid_t_f *loc_id, hid_t_f *gcpl_id, hid_t_f *gapl_id, hid_t_f *grp_id)
/******/
{
@@ -825,24 +824,24 @@ done:
/****if* H5Gf/h5gget_create_plist_c
* NAME
- * h5gget_create_plist_c
+ * h5gget_create_plist_c
* PURPOSE
- * Call H5Gget_create_plist
+ * Call H5Gget_create_plist
* INPUTS
*
- * grp_id - group identifier
+ * grp_id - group identifier
*
* OUTPUTS
- * gcpl_id - Group creation property list identifier
+ * gcpl_id - Group creation property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* February 15, 2008
* SOURCE
*/
int_f
-nh5gget_create_plist_c(hid_t_f *grp_id, hid_t_f *gcpl_id )
+h5gget_create_plist_c(hid_t_f *grp_id, hid_t_f *gcpl_id )
/******/
{
int_f ret_value=0; /* Return value */
@@ -857,36 +856,36 @@ done:
/****if* H5Gf/h5gget_info_c
* NAME
- * h5gget_info_c
+ * h5gget_info_c
* PURPOSE
- * Call H5Gget_info
+ * Call H5Gget_info
* INPUTS
- * group_id - Group identifier
+ * group_id - Group identifier
* OUTPUTS
*
- * storage_type - Type of storage for links in group:
+ * storage_type - Type of storage for links in group:
* H5G_STORAGE_TYPE_COMPACT: Compact storage
* H5G_STORAGE_TYPE_DENSE: Indexed storage
* H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure
*
- * nlinks - Number of links in group
- * max_corder - Current maximum creation order value for group
- * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
+ * nlinks - Number of links in group
+ * max_corder - Current maximum creation order value for group
+ * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 15, 2008
+ * February 15, 2008
* HISTORY
*
- * - Added 'mounted' paramater
- * M. Scot Breitenfeld
- * July 16, 2008
+ * - Added 'mounted' paramater
+ * M. Scot Breitenfeld
+ * July 16, 2008
* SOURCE
*/
int_f
-nh5gget_info_c (hid_t_f *group_id, int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted )
+h5gget_info_c (hid_t_f *group_id, int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted )
/******/
{
@@ -914,43 +913,43 @@ done:
/****if* H5Gf/h5gget_info_by_idx_c
* NAME
- * h5gget_info_by_idx_c
+ * h5gget_info_by_idx_c
* PURPOSE
- * Call H5Gget_info_by_idx
+ * Call H5Gget_info_by_idx
* INPUTS
*
- * loc_id - File or group identifier
- * group_name - Name of group containing group for which information is to be retrieved
- * group_namelen - name length
- * index_type - Index type
- * order - Order of the count in the index
- * n - Position in the index of the group for which information is retrieved
- * lapl_id - Link access property list
+ * loc_id - File or group identifier
+ * group_name - Name of group containing group for which information is to be retrieved
+ * group_namelen - name length
+ * index_type - Index type
+ * order - Order of the count in the index
+ * n - Position in the index of the group for which information is retrieved
+ * lapl_id - Link access property list
* OUTPUTS
*
- * storage_type - Type of storage for links in group:
+ * storage_type - Type of storage for links in group:
* H5G_STORAGE_TYPE_COMPACT: Compact storage
* H5G_STORAGE_TYPE_DENSE: Indexed storage
* H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure
*
- * nlinks - Number of links in group
- * max_corder - Current maximum creation order value for group
- * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
+ * nlinks - Number of links in group
+ * max_corder - Current maximum creation order value for group
+ * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 18, 2008
+ * February 18, 2008
* HISTORY
*
- * - Added 'mounted' paramater
- * M. Scot Breitenfeld
- * July 16, 2008
+ * - Added 'mounted' parameter
+ * M. Scot Breitenfeld
+ * July 16, 2008
* SOURCE
*/
int_f
-nh5gget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+h5gget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id,
int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted )
/******/
@@ -987,40 +986,40 @@ nh5gget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
/****if* H5Gf/h5gget_info_by_name_c
* NAME
- * h5gget_info_by_name_c
+ * h5gget_info_by_name_c
* PURPOSE
- * Call H5Gget_info_by_name
+ * Call H5Gget_info_by_name
* INPUTS
*
- * loc_id - File or group identifier
- * group_name - Name of group containing group for which information is to be retrieved
- * group_namelen - name length
- * lapl_id - Link access property list
+ * loc_id - File or group identifier
+ * group_name - Name of group containing group for which information is to be retrieved
+ * group_namelen - name length
+ * lapl_id - Link access property list
* OUTPUTS
*
- * storage_type - Type of storage for links in group:
+ * storage_type - Type of storage for links in group:
* H5G_STORAGE_TYPE_COMPACT: Compact storage
* H5G_STORAGE_TYPE_DENSE: Indexed storage
* H5G_STORAGE_TYPE_SYMBOL_TABLE: Symbol tables, the original HDF5 structure
*
- * nlinks - Number of links in group
- * max_corder - Current maximum creation order value for group
- * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
+ * nlinks - Number of links in group
+ * max_corder - Current maximum creation order value for group
+ * mounted - Whether group has a file mounted on it (0 = false, 1 = true)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 18, 2008
+ * February 18, 2008
* HISTORY
*
- * - Added 'mounted' paramater
- * M. Scot Breitenfeld
- * July 16, 2008
+ * - Added 'mounted' paramater
+ * M. Scot Breitenfeld
+ * July 16, 2008
* SOURCE
*/
int_f
-nh5gget_info_by_name_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen, hid_t_f *lapl_id,
+h5gget_info_by_name_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen, hid_t_f *lapl_id,
int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted)
/******/
{
diff --git a/fortran/src/H5Gff.f90 b/fortran/src/H5Gff.F90
index d4d7496..2e002b5 100644
--- a/fortran/src/H5Gff.f90
+++ b/fortran/src/H5Gff.F90
@@ -26,7 +26,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5G function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -34,16 +40,9 @@
!*****
MODULE H5G
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_CHAR
USE H5GLOBAL
-! PRIVATE :: h5gcreate1_f
-! PRIVATE :: h5gcreate2_f
-
-! INTERFACE h5gcreate_f
-! MODULE PROCEDURE h5gcreate1_f
-! MODULE PROCEDURE h5gcreate2_f
-! END INTERFACE
-
CONTAINS
!****s* H5G/h5gcreate_f
@@ -108,14 +107,12 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gcreate_c(loc_id, name, namelen, &
- size_hint_default, grp_id, lcpl_id_default, gcpl_id_default, gapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GCREATE_C'::h5gcreate_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ size_hint_default, grp_id, lcpl_id_default, gcpl_id_default, gapl_id_default) &
+ BIND(C,NAME='h5gcreate_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(SIZE_T) :: size_hint_default
INTEGER(HID_T), INTENT(OUT) :: grp_id
@@ -176,7 +173,7 @@ CONTAINS
!!$ SUBROUTINE h5gcreate2_f(name, loc_id, grp_id, hdferr, &
!!$ lcpl_id, gcpl_id, gapl_id)
!!$ IMPLICIT NONE
-!!$ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name ! Name of the group
!!$ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
!!$ INTEGER, INTENT(OUT) :: hdferr ! Error code
!!$ INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier
@@ -205,7 +202,7 @@ CONTAINS
!!$ !DEC$ENDIF
!!$ !DEC$ATTRIBUTES reference :: name
!!$ INTEGER(HID_T), INTENT(IN) :: loc_id
-!!$ CHARACTER(LEN=*), INTENT(IN) :: name
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
!!$ INTEGER :: namelen
!!$ INTEGER(SIZE_T) :: OBJECT_NAME
! LEN_DEFAULT
@@ -278,14 +275,12 @@ CONTAINS
INTEGER :: namelen ! Length of the name character string
INTERFACE
- INTEGER FUNCTION h5gopen_c(loc_id, name, namelen, gapl_id_default, grp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GOPEN_C'::h5gopen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5gopen_c(loc_id, name, namelen, gapl_id_default, grp_id) &
+ BIND(C,NAME='h5gopen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(HID_T), INTENT(IN) :: gapl_id_default
INTEGER(HID_T), INTENT(OUT) :: grp_id
@@ -328,11 +323,8 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5gclose_c(grp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GCLOSE_C'::h5gclose_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5gclose_c(grp_id) BIND(C,NAME='h5gclose_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: grp_id
END FUNCTION h5gclose_c
END INTERFACE
@@ -384,18 +376,14 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gget_obj_info_idx_c(loc_id, name, &
namelen, idx, &
- obj_name, obj_namelen, obj_type)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_OBJ_INFO_IDX_C'::h5gget_obj_info_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: obj_name
+ obj_name, obj_namelen, obj_type) BIND(C,NAME='h5gget_obj_info_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER, INTENT(IN) :: idx
- CHARACTER(LEN=*), INTENT(OUT) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: obj_name
INTEGER :: obj_namelen
INTEGER, INTENT(OUT) :: obj_type
END FUNCTION h5gget_obj_info_idx_c
@@ -444,17 +432,15 @@ CONTAINS
INTEGER :: namelen ! Length of the name character string
INTERFACE
- INTEGER FUNCTION h5gn_members_c(loc_id, name, namelen, nmembers)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GN_MEMBERS_C'::h5gn_members_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER, INTENT(OUT) :: nmembers
- END FUNCTION h5gn_members_c
+ INTEGER FUNCTION h5gn_members_c(loc_id, name, namelen, nmembers) &
+ BIND(C,NAME='h5gn_members_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ INTEGER, INTENT(OUT) :: nmembers
+ END FUNCTION h5gn_members_c
END INTERFACE
namelen = LEN(name)
@@ -512,19 +498,15 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5glink_c(loc_id, link_type, current_name, &
- current_namelen, new_name, new_namelen)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GLINK_C'::h5glink_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: current_name
- !DEC$ATTRIBUTES reference :: new_name
+ current_namelen, new_name, new_namelen) &
+ BIND(C,NAME='h5glink_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
INTEGER, INTENT(IN) :: link_type
- CHARACTER(LEN=*), INTENT(IN) :: current_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: current_name
INTEGER :: current_namelen
- CHARACTER(LEN=*), INTENT(IN) :: new_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_name
INTEGER :: new_namelen
END FUNCTION h5glink_c
END INTERFACE
@@ -585,19 +567,14 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5glink2_c(cur_loc_id, cur_name, cur_namelen, &
link_type, new_loc_id, &
- new_name, new_namelen)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GLINK2_C'::h5glink2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: cur_name
- !DEC$ATTRIBUTES reference :: new_name
+ new_name, new_namelen) BIND(C,NAME='h5glink2_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: cur_loc_id
INTEGER(HID_T), INTENT(IN) :: new_loc_id
INTEGER, INTENT(IN) :: link_type
- CHARACTER(LEN=*), INTENT(IN) :: cur_name
- CHARACTER(LEN=*), INTENT(IN) :: new_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: cur_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_name
INTEGER :: cur_namelen
INTEGER :: new_namelen
END FUNCTION h5glink2_c
@@ -621,10 +598,10 @@ CONTAINS
! points
!
! INPUTS
-! loc_id - location identifier
-! name - name of the object to unlink
+! loc_id - location identifier
+! name - name of the object to unlink
! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
+! hdferr - Returns 0 if successful and -1 if fails
!
! AUTHOR
! Elena Pourmal
@@ -645,14 +622,11 @@ CONTAINS
INTEGER :: namelen ! Lenghth of the name character string
INTERFACE
- INTEGER FUNCTION h5gunlink_c(loc_id, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GUNLINK_C'::h5gunlink_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5gunlink_c(loc_id, name, namelen) BIND(C,NAME='h5gunlink_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
END FUNCTION h5gunlink_c
END INTERFACE
@@ -698,17 +672,13 @@ CONTAINS
INTEGER :: new_namelen ! Lenghth of the new_name string
INTERFACE
- INTEGER FUNCTION h5gmove_c(loc_id, name, namelen, new_name, new_namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GMOVE_C'::h5gmove_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: new_name
+ INTEGER FUNCTION h5gmove_c(loc_id, name, namelen, new_name, new_namelen) BIND(C,NAME='h5gmove_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
- CHARACTER(LEN=*), INTENT(IN) :: new_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_name
INTEGER :: new_namelen
END FUNCTION h5gmove_c
END INTERFACE
@@ -751,17 +721,13 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gmove2_c(src_loc_id, src_name, src_namelen, &
- dst_loc_id, dst_name, dst_namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GMOVE2_C'::h5gmove2_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: src_name
- !DEC$ATTRIBUTES reference :: dst_name
+ dst_loc_id, dst_name, dst_namelen) BIND(C,NAME='h5gmove2_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: src_loc_id
INTEGER(HID_T), INTENT(IN) :: dst_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: src_name
- CHARACTER(LEN=*), INTENT(IN) :: dst_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: src_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: dst_name
INTEGER :: src_namelen
INTEGER :: dst_namelen
END FUNCTION h5gmove2_c
@@ -815,18 +781,14 @@ CONTAINS
INTEGER :: namelen ! Lenghth of the current_name string
INTERFACE
- INTEGER FUNCTION h5gget_linkval_c(loc_id, name, namelen, size, buffer)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_LINKVAL_C'::h5gget_linkval_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: buffer
+ INTEGER FUNCTION h5gget_linkval_c(loc_id, name, namelen, size, buffer) BIND(C,NAME='h5gget_linkval_c')
+ IMPORT :: C_CHAR, SIZE_T
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(SIZE_T), INTENT(IN) :: size
- CHARACTER(LEN=*), INTENT(OUT) :: buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buffer
END FUNCTION h5gget_linkval_c
END INTERFACE
@@ -872,17 +834,13 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gset_comment_c(loc_id, name, namelen, &
- comment, commentlen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GSET_COMMENT_C'::h5gset_comment_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: comment
+ comment, commentlen) BIND(C,NAME='h5gset_comment_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
- CHARACTER(LEN=*), INTENT(IN) :: comment
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: comment
INTEGER :: commentlen
END FUNCTION h5gset_comment_c
END INTERFACE
@@ -930,17 +888,14 @@ CONTAINS
INTEGER :: namelen ! Length of the current_name string
INTERFACE
- INTEGER FUNCTION h5gget_comment_c(loc_id, name, namelen, size, buffer)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_COMMENT_C'::h5gget_comment_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name, buffer
+ INTEGER FUNCTION h5gget_comment_c(loc_id, name, namelen, size, buffer) BIND(C,NAME='h5gget_comment_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(SIZE_T), INTENT(IN) :: size
- CHARACTER(LEN=*), INTENT(OUT) :: buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buffer
END FUNCTION h5gget_comment_c
END INTERFACE
@@ -983,11 +938,9 @@ CONTAINS
INTEGER(HID_T) :: gapl_id_default
INTERFACE
- INTEGER FUNCTION h5gcreate_anon_c(loc_id, gcpl_id_default, gapl_id_default, grp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GCREATE_ANON_C'::h5gcreate_anon_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5gcreate_anon_c(loc_id, gcpl_id_default, gapl_id_default, grp_id) &
+ BIND(C,NAME='h5gcreate_anon_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
INTEGER(HID_T), INTENT(IN) :: gcpl_id_default ! Property list for group creation
INTEGER(HID_T), INTENT(IN) :: gapl_id_default ! Property list for group access
@@ -1030,11 +983,8 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5gget_create_plist_c(grp_id, gcpl_id )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_CREATE_PLIST_C'::h5gget_create_plist_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5gget_create_plist_c(grp_id, gcpl_id ) BIND(C,NAME='h5gget_create_plist_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: grp_id
INTEGER(HID_T), INTENT(OUT) :: gcpl_id
END FUNCTION h5gget_create_plist_c
@@ -1098,11 +1048,9 @@ CONTAINS
INTEGER :: mounted_c
INTERFACE
- INTEGER FUNCTION h5gget_info_c(group_id, storage_type, nlinks, max_corder, mounted_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_C'::h5gget_info_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5gget_info_c(group_id, storage_type, nlinks, max_corder, mounted_c) &
+ BIND(C,NAME='h5gget_info_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: group_id
INTEGER, INTENT(OUT) :: storage_type
INTEGER, INTENT(OUT) :: nlinks
@@ -1189,15 +1137,11 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gget_info_by_idx_c(loc_id, group_name, group_name_len, index_type, order, n, lapl_id_default, &
- storage_type, nlinks, max_corder, mounted_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_BY_IDX_C'::h5gget_info_by_idx_c
- !DEC$ENDIF
-
- !DEC$ATTRIBUTES reference :: group_name
+ storage_type, nlinks, max_corder, mounted_c) BIND(C,NAME='h5gget_info_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER, INTENT(IN) :: index_type
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
@@ -1291,14 +1235,11 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5gget_info_by_name_c(loc_id, group_name, group_name_len, lapl_id_default, &
- storage_type, nlinks, max_corder, mounted_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_BY_NAME_C'::h5gget_info_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: group_name
+ storage_type, nlinks, max_corder, mounted_c) BIND(C,NAME='h5gget_info_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER(HID_T), INTENT(IN) :: lapl_id_default
INTEGER, INTENT(OUT) :: storage_type
INTEGER, INTENT(OUT) :: nlinks
diff --git a/fortran/src/H5If.c b/fortran/src/H5If.c
index 55868dd..fdab0b6 100644
--- a/fortran/src/H5If.c
+++ b/fortran/src/H5If.c
@@ -1,6 +1,6 @@
/****h* H5If/H5If
* PURPOSE
- * This file contains C stubs for H5I Fortran APIs
+ * This file contains C stubs for H5I Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,15 +25,15 @@
/****if* H5If/h5iget_type_c
* NAME
- * h5iget_type_c
+ * h5iget_type_c
* PURPOSE
- * Call H5Iget_type to get the type of an object
+ * Call H5Iget_type to get the type of an object
* INPUTS
- * obj_id - object identifier
+ * obj_id - object identifier
* OUTPUTS
- * type - object type
+ * type - object type
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
* Thursday, March 24, 2000
@@ -42,7 +42,7 @@
* SOURCE
*/
int_f
-nh5iget_type_c (hid_t_f *obj_id, int_f *type)
+h5iget_type_c (hid_t_f *obj_id, int_f *type)
/******/
{
int ret_value = -1;
@@ -61,29 +61,29 @@ nh5iget_type_c (hid_t_f *obj_id, int_f *type)
}
/****if* H5If/h5iget_name_c
* NAME
- * h5iget_name_c
+ * h5iget_name_c
* PURPOSE
- * Call H5Iget_name to get object's name
+ * Call H5Iget_name to get object's name
* INPUTS
- * obj_id - object identifier
- * buf_size - size of the buffer
+ * obj_id - object identifier
+ * buf_size - size of the buffer
* OUTPUTS
- * buf - buffer to hold the name
+ * buf - buffer to hold the name
* RETURNS
- * length of the name on success, -1 on failure
+ * length of the name on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12, 2003
+ * Wednesday, March 12, 2003
* HISTORY
*
- * Changed the size of c_buf_size to c_buf_size + 1, which
- * fixes the problem of truncating the string by 1 if the
- * exact size of the string (buf_size) is passed in.
+ * Changed the size of c_buf_size to c_buf_size + 1, which
+ * fixes the problem of truncating the string by 1 if the
+ * exact size of the string (buf_size) is passed in.
* M. Scot Breitenfeld, April 21, 2008
* SOURCE
*/
int_f
-nh5iget_name_c(hid_t_f *obj_id, _fcd buf, size_t_f *buf_size, size_t_f *name_size)
+h5iget_name_c(hid_t_f *obj_id, _fcd buf, size_t_f *buf_size, size_t_f *name_size)
/******/
{
int ret_value = -1;
@@ -120,22 +120,22 @@ DONE:
/****if* H5If/h5iinc_ref_c
* NAME
- * h5iinc_ref_c
+ * h5iinc_ref_c
* PURPOSE
- * Call H5Iinc_ref to increment object's reference count
+ * Call H5Iinc_ref to increment object's reference count
* INPUTS
- * obj_id - object identifier
+ * obj_id - object identifier
* OUTPUTS
- * ref_count - Reference count of ID
+ * ref_count - Reference count of ID
* RETURNS
- * current reference count on success, -1 on failure
+ * current reference count on success, -1 on failure
* AUTHOR
* Quincey Koziol
* Tuesday, December 9, 2003
* SOURCE
*/
int_f
-nh5iinc_ref_c(hid_t_f *obj_id, int_f *ref_count)
+h5iinc_ref_c(hid_t_f *obj_id, int_f *ref_count)
/******/
{
int ret_value;
@@ -156,22 +156,22 @@ done:
/****if* H5If/h5idec_ref_c
* NAME
- * h5idec_ref_c
+ * h5idec_ref_c
* PURPOSE
- * Call H5Idec_ref to decrement object's reference count
+ * Call H5Idec_ref to decrement object's reference count
* INPUTS
- * obj_id - object identifier
+ * obj_id - object identifier
* OUTPUTS
- * ref_count - Reference count of ID
+ * ref_count - Reference count of ID
* RETURNS
- * current reference count on success, -1 on failure
+ * current reference count on success, -1 on failure
* AUTHOR
* Quincey Koziol
- * Tuesday, December 9, 2003
+ * Tuesday, December 9, 2003
* SOURCE
*/
int_f
-nh5idec_ref_c(hid_t_f *obj_id, int_f *ref_count)
+h5idec_ref_c(hid_t_f *obj_id, int_f *ref_count)
/******/
{
int ret_value;
@@ -192,15 +192,15 @@ done:
/****if* H5If/h5iget_ref_c
* NAME
- * h5iget_ref_c
+ * h5iget_ref_c
* PURPOSE
- * Call H5Iget_ref to retrieve object's reference count
+ * Call H5Iget_ref to retrieve object's reference count
* INPUTS
- * obj_id - object identifier
+ * obj_id - object identifier
* OUTPUTS
- * ref_count - Reference count of ID
+ * ref_count - Reference count of ID
* RETURNS
- * current reference count on success, -1 on failure
+ * current reference count on success, -1 on failure
* AUTHOR
* Quincey Koziol
* Tuesday, December 9, 2003
@@ -208,7 +208,7 @@ done:
* SOURCE
*/
int_f
-nh5iget_ref_c(hid_t_f *obj_id, int_f *ref_count)
+h5iget_ref_c(hid_t_f *obj_id, int_f *ref_count)
/******/
{
int ret_value;
@@ -229,15 +229,15 @@ done:
/****if* H5If/h5iget_file_id_c
* NAME
- * h5iget_file_id_c
+ * h5iget_file_id_c
* PURPOSE
- * Call H5Iget_file_id to obtain file identifier from object identifier
+ * Call H5Iget_file_id to obtain file identifier from object identifier
* INPUTS
- * obj_id - object identifier
+ * obj_id - object identifier
* OUTPUTS
- * file_id - file identifier
+ * file_id - file identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Tuesday, August 24, 2004
@@ -245,7 +245,7 @@ done:
* SOURCE
*/
int_f
-nh5iget_file_id_c(hid_t_f *obj_id, hid_t_f *file_id)
+h5iget_file_id_c(hid_t_f *obj_id, hid_t_f *file_id)
/******/
{
int ret_value;
@@ -266,17 +266,17 @@ done:
}
/*----------------------------------------------------------------------------
- * Name: h5iis_valid_c
- * Purpose: Calls H5Iis_valid
- * Inputs: obj_id - object identifier
- * Outputs: 0 = false, 1 = true
- * Returns: 0 on success, -1 on failure
- * Programmer: Elena Pourmal
- * Tuesday, August 24, 2004
- * Modifications:
+ * Name: h5iis_valid_c
+ * Purpose: Calls H5Iis_valid
+ * Inputs: obj_id - object identifier
+ * Outputs: 0 = false, 1 = true
+ * Returns: 0 on success, -1 on failure
+ * Programmer: Elena Pourmal
+ * Tuesday, August 24, 2004
+ * Modifications:
*---------------------------------------------------------------------------*/
int_f
-nh5iis_valid_c(hid_t_f *obj_id, int_f *c_valid)
+h5iis_valid_c(hid_t_f *obj_id, int_f *c_valid)
{
int ret_value;
htri_t c_ret_value;
diff --git a/fortran/src/H5Iff.f90 b/fortran/src/H5Iff.F90
index 7c9a843..c91a8aa 100644
--- a/fortran/src/H5Iff.f90
+++ b/fortran/src/H5Iff.F90
@@ -4,7 +4,7 @@
! MODULE H5I
!
! FILE
-! fortran/src/H5Iff.f90
+! fortran/src/H5Iff.F90
!
! PURPOSE
! This file contains Fortran interfaces for H5I functions.
@@ -26,7 +26,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5I function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -34,7 +40,8 @@
!*****
MODULE H5I
-
+
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR
USE H5GLOBAL
CONTAINS
@@ -87,11 +94,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5iget_type_c(obj_id, TYPE)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_TYPE_C':: h5iget_type_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5iget_type_c(obj_id, TYPE) BIND(C, NAME='h5iget_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(OUT) :: TYPE
END FUNCTION h5iget_type_c
@@ -133,14 +138,12 @@ CONTAINS
! -1 if fail
!*****
INTERFACE
- INTEGER FUNCTION h5iget_name_c(obj_id, buf, buf_size, name_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_NAME_C'::h5iget_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
+ INTEGER FUNCTION h5iget_name_c(obj_id, buf, buf_size, name_size) BIND(C, NAME='h5iget_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(OUT) :: buf
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buf
INTEGER(SIZE_T), INTENT(IN) :: buf_size
INTEGER(SIZE_T), INTENT(OUT) :: name_size
END FUNCTION h5iget_name_c
@@ -176,11 +179,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5iinc_ref_c(obj_id, ref_count)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IINC_REF_C':: h5iinc_ref_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5iinc_ref_c(obj_id, ref_count) BIND(C, NAME='h5iinc_ref_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(OUT) :: ref_count
END FUNCTION h5iinc_ref_c
@@ -215,11 +216,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5idec_ref_c(obj_id, ref_count)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IDEC_REF_C':: h5idec_ref_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5idec_ref_c(obj_id, ref_count) BIND(C, NAME='h5idec_ref_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(OUT) :: ref_count
END FUNCTION h5idec_ref_c
@@ -254,11 +253,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5iget_ref_c(obj_id, ref_count)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_REF_C':: h5iget_ref_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5iget_ref_c(obj_id, ref_count) BIND(C, NAME='h5iget_ref_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(OUT) :: ref_count
END FUNCTION h5iget_ref_c
@@ -292,11 +289,9 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
!*****
INTERFACE
- INTEGER FUNCTION h5iget_file_id_c(obj_id, file_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IGET_FILE_ID_C':: h5iget_file_id_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5iget_file_id_c(obj_id, file_id) BIND(C, NAME='h5iget_file_id_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER(HID_T), INTENT(OUT) :: file_id
END FUNCTION h5iget_file_id_c
@@ -332,11 +327,9 @@ CONTAINS
INTEGER :: c_valid ! 0 = .false, 1 = .true.
INTERFACE
- INTEGER FUNCTION h5iis_valid_c(id, c_valid)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IIS_VALID_C':: h5iis_valid_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5iis_valid_c(id, c_valid) BIND(C, NAME='h5iis_valid_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: id ! Identifier
INTEGER :: c_valid
END FUNCTION h5iis_valid_c
diff --git a/fortran/src/H5Lf.c b/fortran/src/H5Lf.c
index 6523ab4..0d3aac2 100644
--- a/fortran/src/H5Lf.c
+++ b/fortran/src/H5Lf.c
@@ -1,6 +1,6 @@
/****h* H5Lf/H5Lf
* PURPOSE
- * This file contains C stubs for H5L Fortran APIs
+ * This file contains C stubs for H5L Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,34 +26,34 @@
/****if* H5Lf/h5lcopy_c
* NAME
- * h5lcopy_c
+ * h5lcopy_c
* PURPOSE
- * Call H5Lcopy
+ * Call H5Lcopy
* INPUTS
*
- * src_loc_id - Location identifier of the source link
- * src_name - Name of the link to be copied
- * src_namelen - length of the name
- * dest_loc_id - Location identifier specifying the destination of the copy
- * dest_name - Name to be assigned to the NEW copy
- * dest_namelen - Length of the name
- * loc_id - Identifier of the file or group containing the object
- * name - Name of the link to delete
- * lcpl_id - Link creation property list identifier
- * lapl_id - Link access property list identifier
+ * src_loc_id - Location identifier of the source link
+ * src_name - Name of the link to be copied
+ * src_namelen - length of the name
+ * dest_loc_id - Location identifier specifying the destination of the copy
+ * dest_name - Name to be assigned to the NEW copy
+ * dest_namelen - Length of the name
+ * loc_id - Identifier of the file or group containing the object
+ * name - Name of the link to delete
+ * lcpl_id - Link creation property list identifier
+ * lapl_id - Link access property list identifier
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5lcopy_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
+h5lcopy_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
_fcd dest_name, size_t_f *dest_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id)
/******/
@@ -88,21 +88,21 @@ done:
/****if* H5Lf/h5lcreate_external_c
* NAME
- * h5lcreate_external_c
+ * h5lcreate_external_c
* PURPOSE
- * Call H5Lcreate_external_c
+ * Call H5Lcreate_external_c
* INPUTS
*
- * file_name - Name of the file containing the target object. Neither the file nor the target object is
- * required to exist. May be the file the link is being created in.
- * obj_name - Path within the target file to the target object.
+ * file_name - Name of the file containing the target object. Neither the file nor the target object is
+ * required to exist. May be the file the link is being created in.
+ * obj_name - Path within the target file to the target object.
* link_loc_id - The file or group identifier for the new link.
- * link_name - The name of the new link.
- * lcpl_id - Link creation property list identifier.
- * lapl_id - Link access property list identifier.
+ * link_name - The name of the new link.
+ * lcpl_id - Link creation property list identifier.
+ * lapl_id - Link access property list identifier.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* February 29, 2008
@@ -110,7 +110,7 @@ done:
*/
int_f
-nh5lcreate_external_c(_fcd file_name, size_t_f *file_namelen, _fcd obj_name, size_t_f *obj_namelen,
+h5lcreate_external_c(_fcd file_name, size_t_f *file_namelen, _fcd obj_name, size_t_f *obj_namelen,
hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id)
/******/
@@ -150,27 +150,27 @@ done:
/****if* H5Lf/h5ldelete_c
* NAME
- * h5ldelete_c
+ * h5ldelete_c
* PURPOSE
- * Call H5Ldelete
+ * Call H5Ldelete
* INPUTS
*
*
- * loc_id - Identifier of the file or group containing the object
- * name - Name of the link to delete
- * lapl_id - Link access property list identifier
- * namelen - length of name
+ * loc_id - Identifier of the file or group containing the object
+ * name - Name of the link to delete
+ * lapl_id - Link access property list identifier
+ * namelen - length of name
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* SOURCE
*/
int_f
-nh5ldelete_c ( hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id )
+h5ldelete_c ( hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id )
/******/
{
char *c_name = NULL;
@@ -197,28 +197,28 @@ done:
/****if* H5Lf/h5lcreate_soft_c
* NAME
- * h5lcreate_soft_c
+ * h5lcreate_soft_c
* PURPOSE
- * Call H5Lcreate_soft
+ * Call H5Lcreate_soft
* INPUTS
*
*
- * target_path - Path to the target object, which is not required to exist.
- * link_loc_id - The file or group identifier for the new link.
- * link_name - The name of the new link.
- * lcpl_id - Link creation property list identifier.
- * lapl_id - Link access property list identifier.
+ * target_path - Path to the target object, which is not required to exist.
+ * link_loc_id - The file or group identifier for the new link.
+ * link_name - The name of the new link.
+ * lcpl_id - Link creation property list identifier.
+ * lapl_id - Link access property list identifier.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 20, 2008
+ * February 20, 2008
* SOURCE
*/
int_f
-nh5lcreate_soft_c(_fcd target_path, size_t_f *target_path_len,
+h5lcreate_soft_c(_fcd target_path, size_t_f *target_path_len,
hid_t_f *link_loc_id,
_fcd link_name, size_t_f *link_name_len,
hid_t_f *lcpl_id, hid_t_f *lapl_id )
@@ -253,29 +253,29 @@ nh5lcreate_soft_c(_fcd target_path, size_t_f *target_path_len,
/****if* H5Lf/h5lcreate_hard_c
* NAME
- * h5lcreate_hard_c
+ * h5lcreate_hard_c
* PURPOSE
- * Call H5Lcreate_hard
+ * Call H5Lcreate_hard
* INPUTS
*
- * obj_loc_id - The file or group identifier for the target object.
- * obj_name - Name of the target object, which must already exist.
- * obj_namelen - Name length
- * link_loc_id - The file or group identifier for the new link.
- * link_name - The name of the new link.
- * link_namelen- Name length
- * lcpl_id - Link creation property list identifier.
- * lapl_id - Link access property list identifier.
+ * obj_loc_id - The file or group identifier for the target object.
+ * obj_name - Name of the target object, which must already exist.
+ * obj_namelen - Name length
+ * link_loc_id - The file or group identifier for the new link.
+ * link_name - The name of the new link.
+ * link_namelen- Name length
+ * lcpl_id - Link creation property list identifier.
+ * lapl_id - Link access property list identifier.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* February 27, 2008
* SOURCE
*/
int_f
-nh5lcreate_hard_c(hid_t_f *obj_loc_id, _fcd obj_name, size_t_f *obj_namelen,
+h5lcreate_hard_c(hid_t_f *obj_loc_id, _fcd obj_name, size_t_f *obj_namelen,
hid_t_f *link_loc_id,
_fcd link_name, size_t_f *link_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id )
@@ -310,41 +310,41 @@ nh5lcreate_hard_c(hid_t_f *obj_loc_id, _fcd obj_name, size_t_f *obj_namelen,
/****if* H5Lf/h5ldelete_by_idx_c
* NAME
- * h5ldelete_by_idx_c
+ * h5ldelete_by_idx_c
* PURPOSE
- * Calls h5ldelete_by_idx
+ * Calls h5ldelete_by_idx
* INPUTS
*
- * loc_id - File or group identifier specifying location of subject group
- * group_name - Name of subject group
- * group_namelen - Name length
- * index_field - Type of index; Possible values are:
+ * loc_id - File or group identifier specifying location of subject group
+ * group_name - Name of subject group
+ * group_namelen - Name length
+ * index_field - Type of index; Possible values are:
* H5_INDEX_UNKNOWN_F = -1 - Unknown index type
* H5_INDEX_NAME_F - Index on names
* H5_INDEX_CRT_ORDER_F - Index on creation order
* H5_INDEX_N_F - Number of indices defined
- * order - Order within field or index; Possible values are:
+ * order - Order within field or index; Possible values are:
* H5_ITER_UNKNOWN_F - Unknown order
* H5_ITER_INC_F - Increasing order
* H5_ITER_DEC_F - Decreasing order
* H5_ITER_NATIVE_F - No particular order, whatever is fastest
* H5_ITER_N_F - Number of iteration orders
- * n - Link for which to retrieve information
- * lapl_id - Link access property list
+ * n - Link for which to retrieve information
+ * lapl_id - Link access property list
*
* OUTPUTS
* N/A
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 29, 2008
+ * February 29, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5ldelete_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+h5ldelete_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n, hid_t_f *lapl_id)
/******/
{
@@ -376,28 +376,28 @@ done:
/****if* H5Lf/h5lexists_c
* NAME
- * h5lexists_c
+ * h5lexists_c
* PURPOSE
- * Calls H5Lexists
+ * Calls H5Lexists
* INPUTS
*
- * loc_id - Identifier of the file or group to query.
- * name - Link name to check
- * lapl_id - Link access property list identifier.
+ * loc_id - Identifier of the file or group to query.
+ * name - Link name to check
+ * lapl_id - Link access property list identifier.
* OUTPUTS
*
- * link_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
+ * link_exists_c - returns a positive value, for TRUE, or 0 (zero), for FALSE.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 29, 2008
+ * February 29, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5lexists_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, int_f *link_exists)
+h5lexists_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, int_f *link_exists)
/******/
{
char *c_name = NULL; /* Buffer to hold C string */
@@ -423,40 +423,40 @@ done:
/****if* H5Lf/h5lget_info_c
* NAME
- * h5lget_info_c
+ * h5lget_info_c
* PURPOSE
- * Call H5Lget_info
+ * Call H5Lget_info
* INPUTS
*
* link_loc_id - File or group identifier.
- * link_name - Name of the link for which information is being sought
- * link_namelen - Name length
- * lapl_id - Link access property list
+ * link_name - Name of the link for which information is being sought
+ * link_namelen - Name length
+ * lapl_id - Link access property list
* OUTPUTS
*
*
- * cset - indicates the character set used for link’s name.
- * corder - specifies the link’s creation order position.
- * corder_valid - indicates whether the value in corder is valid.
- * link_type - specifies the link class:
+ * cset - indicates the character set used for link’s name.
+ * corder - specifies the link’s creation order position.
+ * corder_valid - indicates whether the value in corder is valid.
+ * link_type - specifies the link class:
* H5L_LINK_HARD_F - Hard link
* H5L_LINK_SOFT_F - Soft link
* H5L_LINK_EXTERNAL_F - External link
* H5L_LINK_ERROR_F - Error
- * address - If the link is a hard link, address specifies the file address that the link points to
- * val_size - If the link is a symbolic link, val_size will be the length of the link value
+ * address - If the link is a hard link, address specifies the file address that the link points to
+ * val_size - If the link is a symbolic link, val_size will be the length of the link value
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5lget_info_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
+h5lget_info_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
int_f *cset, int_f *corder, int_f *corder_valid, int_f *link_type,
haddr_t_f *address, size_t_f *val_size,
hid_t_f *lapl_id)
@@ -496,36 +496,36 @@ done:
/****if* H5Lf/h5lget_info_by_idx_c
* NAME
- * h5lget_info_by_idx_c
+ * h5lget_info_by_idx_c
* PURPOSE
- * Call H5Lget_info_by_idx
+ * Call H5Lget_info_by_idx
* INPUTS
*
* loc_id - File or group identifier specifying location of subject group
- * group_name - Name of subject group
- *group_namelen - Name length
+ * group_name - Name of subject group
+ * group_namelen - Name length
* index_field - Index or field which determines the order
- * order - Order within field or index
- * n - Link for which to retrieve information
- * lapl_id - Link access property list
+ * order - Order within field or index
+ * n - Link for which to retrieve information
+ * lapl_id - Link access property list
* OUTPUTS
*
- * corder_valid - Indicates whether the the creation order data is valid for this attribute
- * corder - Is a positive integer containing the creation order of the attribute
- * cset - Indicates the character set used for the attribute’s name
- * data_size - indicates the size, in the number of characters, of the attribute
+ * corder_valid - Indicates whether the the creation order data is valid for this attribute
+ * corder - Is a positive integer containing the creation order of the attribute
+ * cset - Indicates the character set used for the attribute’s name
+ * data_size - indicates the size, in the number of characters, of the attribute
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+h5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n,
int_f *link_type, int_f *corder_valid, int_f *corder, int_f *cset, haddr_t_f *address, size_t_f *val_size, hid_t_f *lapl_id)
/******/
@@ -570,7 +570,7 @@ done:
* NAME
* H5Lis_registered_c
* PURPOSE
- * Call H5Lis_registered
+ * Call H5Lis_registered
* INPUTS
*
* link_cls_id - User-defined link class identifier
@@ -578,17 +578,17 @@ done:
* NONE
*
* RETURNS
- * Returns a positive value if the link class has been registered
- * and zero if it is unregistered. Otherwise returns a negative value
+ * Returns a positive value if the link class has been registered
+ * and zero if it is unregistered. Otherwise returns a negative value
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
* N/A
* SOURCE
*/
int_f
-nh5lis_registered_c(int_f *link_cls_id)
+h5lis_registered_c(int_f *link_cls_id)
/******/
{
int_f ret_value; /* Return value */
@@ -621,29 +621,29 @@ nh5lis_registered_c(int_f *link_cls_id)
/****if* H5Lf/h5lmove_c
* NAME
- * h5lmove_c
+ * h5lmove_c
* PURPOSE
- * Call H5Lmove
+ * Call H5Lmove
* INPUTS
*
- * src_loc_id - Original file or group identifier.
- * src_name - Original link name.
- * src_namelen - name length
- * dest_loc_id - Destination file or group identifier.
- * dest_name - NEW link name.
- * dest_namelen - name length
+ * src_loc_id - Original file or group identifier.
+ * src_name - Original link name.
+ * src_namelen - name length
+ * dest_loc_id - Destination file or group identifier.
+ * dest_name - NEW link name.
+ * dest_namelen - name length
* OUTPUTS
*
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* SOURCE
*/
int_f
-nh5lmove_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
+h5lmove_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
_fcd dest_name, size_t_f *dest_namelen, hid_t_f *lcpl_id, hid_t_f *lapl_id)
/******/
{
@@ -682,17 +682,17 @@ done:
* Call H5Lget_name_by_idx
* INPUTS
*
- * loc_id - File or group identifier specifying location of subject group
- * group_name - Name of subject group
- * index_field - Index or field which determines the order
- * order - Order within field or index
- * n - Link for which to retrieve information
- * size - Maximum number of characters of link value to be returned.
- * lapl_id - Link access property list
+ * loc_id - File or group identifier specifying location of subject group
+ * group_name - Name of subject group
+ * index_field - Index or field which determines the order
+ * order - Order within field or index
+ * n - Link for which to retrieve information
+ * size - Maximum number of characters of link value to be returned.
+ * lapl_id - Link access property list
* OUTPUTS
*
- * name - Buffer in which link value is returned
- * size - The size of the link name on success
+ * name - Buffer in which link value is returned
+ * size - The size of the link name on success
* RETURNS
* 0 on success, -1 on failure
* AUTHOR
@@ -701,7 +701,7 @@ done:
* SOURCE
*/
int_f
-nh5lget_name_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+h5lget_name_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n,
size_t_f *size, _fcd name, hid_t_f *lapl_id)
/******/
@@ -774,7 +774,7 @@ done:
/* * SOURCE */
/* *\/ */
/* int_f */
-/* nh5lget_val_c (hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, */
+/* h5lget_val_c (hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, */
/* size_t_f *size, _fcd linkval_buff, */
/* hid_t_f *lapl_id) */
/* { */
@@ -842,7 +842,7 @@ done:
/* int_f */
-/* nh5lregistered_c(int_f *version, int_f *class_id, */
+/* h5lregistered_c(int_f *version, int_f *class_id, */
/* _fcd comment, size_t_f *comment_len, */
/* _fcd create_func, size_t_f *create_func_len, */
/* _fcd move_func, size_t_f *move_func_len, */
@@ -916,29 +916,29 @@ done:
/****if* H5Lf/h5lget_val_c
* NAME
- * h5lget_val_c
+ * h5lget_val_c
* PURPOSE
- * Call H5Lget_val
+ * Call H5Lget_val
* INPUTS
*
- * link_loc_id - File or group identifier.
- * link_name - Link whose value is to be returned.
- * link_name_len - length of link_name
- * size - Maximum number of characters of link value to be returned.
- * lapl_id - List access property list identifier
+ * link_loc_id - File or group identifier.
+ * link_name - Link whose value is to be returned.
+ * link_name_len - length of link_name
+ * size - Maximum number of characters of link value to be returned.
+ * lapl_id - List access property list identifier
* OUTPUTS
*
- * linkval_buff - The buffer to hold the returned link value.
+ * linkval_buff - The buffer to hold the returned link value.
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * April 11, 2008
+ * April 11, 2008
* SOURCE
*/
int_f
-nh5lget_val_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, size_t_f *size,
+h5lget_val_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, size_t_f *size,
void *linkval_buff, hid_t_f *lapl_id)
/******/
{
@@ -971,16 +971,16 @@ done:
* Calls H5Literate
* INPUTS
*
- * group_id - Identifier specifying subject group
- * index_type - Type of index which determines the order
- * order - Order within index
- * idx - Iteration position at which to start
- * op - Callback function passing data regarding the link to the calling application
- * op_data - User-defined pointer to data required by the application for its processing of the link
+ * group_id - Identifier specifying subject group
+ * index_type - Type of index which determines the order
+ * order - Order within index
+ * idx - Iteration position at which to start
+ * op - Callback function passing data regarding the link to the calling application
+ * op_data - User-defined pointer to data required by the application for its processing of the link
*
* OUTPUTS
*
- * idx - Position at which an interrupted iteration may be restarted
+ * idx - Position at which an interrupted iteration may be restarted
*
* RETURNS
* >0 on success, 0< on failure
@@ -1018,19 +1018,19 @@ h5literate_c(hid_t_f *group_id, int_f *index_type, int_f *order, hsize_t_f *idx,
* Call H5Literate_by_name
* INPUTS
*
- * loc_id - Identifier specifying subject group
- * name - Name of subject group
- * namelen - Name length
- * index_type - Type of index which determines the order
- * order - Order within index
- * idx - Iteration position at which to start
- * op - Callback function passing data regarding the link to the calling application
- * op_data - User-defined pointer to data required by the application for its processing of the link
- * lapl_id - List access property list identifier
+ * loc_id - Identifier specifying subject group
+ * name - Name of subject group
+ * namelen - Name length
+ * index_type - Type of index which determines the order
+ * order - Order within index
+ * idx - Iteration position at which to start
+ * op - Callback function passing data regarding the link to the calling application
+ * op_data - User-defined pointer to data required by the application for its processing of the link
+ * lapl_id - List access property list identifier
*
* OUTPUTS
*
- * idx - Position at which an interrupted iteration may be restarted
+ * idx - Position at which an interrupted iteration may be restarted
*
* RETURNS
* >0 on success, 0< on failure
diff --git a/fortran/src/H5Lff.f90 b/fortran/src/H5Lff.F90
index 4660e52..bc91072 100644
--- a/fortran/src/H5Lff.f90
+++ b/fortran/src/H5Lff.F90
@@ -4,9 +4,7 @@
! MODULE H5L
!
! PURPOSE
-! This file contains Fortran interfaces for H5L functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
+! This file contains Fortran interfaces for H5L functions.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,7 +23,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5L function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -34,8 +38,39 @@
MODULE H5L
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_FUNPTR, C_CHAR, C_INT64_T, C_INT
USE H5GLOBAL
+ IMPLICIT NONE
+
+!****t* H5L (F03)/h5l_info_t
+!
+! Fortran2003 Derived Type:
+!
+ TYPE, bind(c) :: union_t
+ INTEGER(haddr_t) :: address
+ INTEGER(size_t) :: val_size
+ END TYPE union_t
+
+ TYPE, bind(c) :: h5l_info_t
+ INTEGER(c_int) :: type ! H5L_type_t type
+! LOGICAL(c_bool) :: corder_valid ! hbool_t corder_valid
+ INTEGER(c_int64_t) :: corder ! int64_t corder;
+ INTEGER(c_int) :: cset ! H5T_cset_t cset;
+ TYPE(union_t) :: u
+ END TYPE h5l_info_t
+
+!*****
+
+!type specifies the link class. Valid values include the following:
+! H5L_TYPE_HARD Hard link
+! H5L_TYPE_SOFT Soft link
+! H5L_TYPE_EXTERNAL External link
+! H5L_TYPE_ERROR Error
+!cset specifies the character set in which the link name is encoded. Valid values include the following:
+! H5T_CSET_ASCII US ASCII
+! H5T_CSET_UTF8 UTF-8 Unicode encoding
+
CONTAINS
!
@@ -87,16 +122,14 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lcopy_c(src_loc_id, src_name, src_namelen, dest_loc_id, dest_name, dest_namelen, &
- lcpl_id_default, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LCOPY_C'::h5lcopy_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: src_name, dest_name
+ lcpl_id_default, lapl_id_default) BIND(C,name='h5lcopy_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: src_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: src_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: src_name
INTEGER(HID_T), INTENT(IN) :: dest_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: dest_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: dest_name
INTEGER(HID_T) :: lcpl_id_default
INTEGER(HID_T) :: lapl_id_default
@@ -154,14 +187,12 @@ CONTAINS
INTEGER(SIZE_T) :: namelen
INTERFACE
- INTEGER FUNCTION h5ldelete_c(loc_id, name, namelen, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LDELETE_C'::h5ldelete_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5ldelete_c(loc_id, name, namelen, lapl_id_default) BIND(C,name='h5ldelete_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: namelen
END FUNCTION h5ldelete_c
@@ -220,16 +251,14 @@ CONTAINS
INTEGER FUNCTION h5lcreate_soft_c(target_path, target_path_len, &
link_loc_id, &
link_name,link_name_len, &
- lcpl_id_default, lapl_id_default )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_SOFT_C'::h5lcreate_soft_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: target_path, link_name
- CHARACTER(LEN=*), INTENT(IN) :: target_path
+ lcpl_id_default, lapl_id_default ) BIND(C,NAME='h5lcreate_soft_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: target_path
INTEGER(SIZE_T) :: target_path_len
INTEGER(HID_T), INTENT(IN) :: link_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: link_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: link_name
INTEGER(SIZE_T) :: link_name_len
INTEGER(HID_T) :: lcpl_id_default
INTEGER(HID_T) :: lapl_id_default
@@ -299,17 +328,14 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lcreate_hard_c(obj_loc_id, obj_name, obj_namelen, &
- link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_HARD_C'::h5lcreate_hard_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: obj_name, link_name
+ link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) BIND(C,NAME='h5lcreate_hard_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(HID_T), INTENT(IN) :: link_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: link_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: link_name
INTEGER(SIZE_T) :: obj_namelen
INTEGER(SIZE_T) :: link_namelen
INTEGER(HID_T) :: lcpl_id_default
@@ -380,17 +406,14 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lcreate_external_c(file_name, file_namelen, obj_name, obj_namelen, &
- link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_EXTERNAL_C'::h5lcreate_external_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: file_name, obj_name, link_name
- CHARACTER(LEN=*), INTENT(IN) :: file_name
- CHARACTER(LEN=*), INTENT(IN) :: obj_name
+ link_loc_id, link_name, link_namelen, lcpl_id_default, lapl_id_default) BIND(C,NAME='h5lcreate_external_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: file_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: obj_name
INTEGER(HID_T), INTENT(IN) :: link_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: link_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: link_name
INTEGER(SIZE_T) :: file_namelen
INTEGER(SIZE_T) :: obj_namelen
INTEGER(SIZE_T) :: link_namelen
@@ -471,14 +494,13 @@ CONTAINS
INTEGER(SIZE_T) :: group_namelen
INTERFACE
- INTEGER FUNCTION h5ldelete_by_idx_c(loc_id, group_name, group_namelen, index_field, order, n, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LDELETE_BY_IDX_C'::h5ldelete_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: group_name
+ INTEGER FUNCTION h5ldelete_by_idx_c(loc_id, group_name, group_namelen, index_field, order, n, lapl_id_default) &
+ BIND(C,NAME='h5ldelete_by_idx_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER, INTENT(IN) :: index_field
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
@@ -530,18 +552,17 @@ CONTAINS
! Link access property list identifier.
!*****
INTEGER :: link_exists_c
- INTEGER(HID_T) :: lapl_id_default
- INTEGER(SIZE_T) :: namelen
+ INTEGER(HID_T) :: lapl_id_default
+ INTEGER(SIZE_T) :: namelen
INTERFACE
- INTEGER FUNCTION h5lexists_c(loc_id, name, namelen, lapl_id_default, link_exists_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LEXISTS_C'::h5lexists_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5lexists_c(loc_id, name, namelen, lapl_id_default, link_exists_c) &
+ BIND(C,NAME='h5lexists_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(SIZE_T), INTENT(IN) :: namelen
INTEGER, INTENT(OUT) :: link_exists_c
INTEGER(HID_T) :: lapl_id_default
@@ -636,14 +657,12 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lget_info_c(link_loc_id, link_name, link_namelen, &
cset, corder, corder_valid, link_type, address, val_size, &
- lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_INFO_C'::h5lget_info_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: link_name
+ lapl_id_default) BIND(C,NAME='h5lget_info_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T, HADDR_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: link_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: link_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: link_name
INTEGER, INTENT(OUT) :: cset
INTEGER, INTENT(OUT) :: corder
INTEGER, INTENT(OUT) :: link_type
@@ -750,14 +769,13 @@ CONTAINS
!
INTERFACE
INTEGER FUNCTION h5lget_info_by_idx_c(loc_id, group_name, group_namelen, index_field, order, n, &
- link_type, corder_valid, corder, cset, address, val_size, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_INFO_BY_IDX_C'::h5lget_info_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: group_name
+ link_type, corder_valid, corder, cset, address, val_size, lapl_id_default) &
+ BIND(C,NAME='h5lget_info_by_idx_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T, HSIZE_T, HADDR_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER(SIZE_T) :: group_namelen
INTEGER, INTENT(IN) :: index_field
INTEGER, INTENT(IN) :: order
@@ -818,11 +836,8 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5lis_registered_c(link_cls_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LIS_REGISTERED_C'::h5lis_registered_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5lis_registered_c(link_cls_id) BIND(C,NAME='h5lis_registered_c')
+ IMPLICIT NONE
INTEGER, INTENT(IN) :: link_cls_id ! User-defined link class identifier
END FUNCTION h5lis_registered_c
END INTERFACE
@@ -886,18 +901,16 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lmove_c(src_loc_id, src_name, src_namelen, dest_loc_id, &
- dest_name, dest_namelen, lcpl_id_default, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LMOVE_C'::h5lmove_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: src_name, dest_name
+ dest_name, dest_namelen, lcpl_id_default, lapl_id_default) BIND(C,NAME='h5lmove_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: src_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: src_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: src_name
INTEGER(SIZE_T) :: src_namelen
INTEGER(HID_T), INTENT(IN) :: dest_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: dest_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: dest_name
INTEGER(SIZE_T) :: dest_namelen
INTEGER(HID_T) :: lcpl_id_default
@@ -976,21 +989,19 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5lget_name_by_idx_c(loc_id, group_name, group_namelen, index_field, order, n, &
- size_default, name, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_NAME_BY_IDX_C'::h5lget_name_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: group_name, name
+ size_default, name, lapl_id_default) BIND(C,NAME='h5lget_name_by_idx_c')
+ IMPORT :: c_char
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER(SIZE_T) :: group_namelen
INTEGER, INTENT(IN) :: index_field
INTEGER, INTENT(IN) :: order
INTEGER(HSIZE_T), INTENT(IN) :: n
INTEGER(SIZE_T) :: size_default
- CHARACTER(LEN=*), INTENT(OUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
INTEGER(HID_T) :: lapl_id_default
END FUNCTION h5lget_name_by_idx_c
END INTERFACE
@@ -1085,7 +1096,7 @@ CONTAINS
!!$ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_VAL_BY_IDX_C'::h5lget_val_by_idx_c
!!$ !DEC$ENDIF
!!$ INTEGER(HID_T), INTENT(IN) :: loc_id
-!!$ CHARACTER(LEN=*), INTENT(IN) :: group_name
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
!!$ INTEGER(SIZE_T) :: group_namelen
!!$ INTEGER, INTENT(IN) :: index_field
!!$ INTEGER, INTENT(IN) :: order
@@ -1166,7 +1177,7 @@ CONTAINS
!!$ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LGET_VAL_C'::h5lget_val_c
!!$ !DEC$ENDIF
!!$ INTEGER(HID_T), INTENT(IN) :: link_loc_id ! File or group identifier.
-!!$ CHARACTER(LEN=*), INTENT(IN) :: link_name ! Link whose value is to be returned.
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: link_name ! Link whose value is to be returned.
!!$ INTEGER :: link_namelen
!!$ INTEGER(SIZE_T), INTENT(IN) :: size ! Maximum number of characters of link value to be returned.
!!$
@@ -1259,13 +1270,13 @@ CONTAINS
!!$ !DEC$ENDIF
!!$ INTEGER, INTENT(IN) :: version ! Version number of this struct
!!$ INTEGER, INTENT(IN) :: class_id ! Link class identifier
-!!$ CHARACTER(LEN=*), INTENT(IN) :: comment ! Comment for debugging
-!!$ CHARACTER(LEN=*), INTENT(IN) :: create_func ! Callback during link creation
-!!$ CHARACTER(LEN=*), INTENT(IN) :: move_func ! Callback after moving link
-!!$ CHARACTER(LEN=*), INTENT(IN) :: copy_func ! Callback after copying link
-!!$ CHARACTER(LEN=*), INTENT(IN) :: trav_func ! The main traversal function
-!!$ CHARACTER(LEN=*), INTENT(IN) :: del_func ! Callback for link deletion
-!!$ CHARACTER(LEN=*), INTENT(IN) :: query_func ! Callback for queries
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: comment ! Comment for debugging
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: create_func ! Callback during link creation
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: move_func ! Callback after moving link
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: copy_func ! Callback after copying link
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: trav_func ! The main traversal function
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: del_func ! Callback for link deletion
+!!$ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: query_func ! Callback for queries
!!$ INTEGER, INTENT(OUT) :: hdferr ! Error code:
!!$ ! 0 on success and -1 on failure
!!$ INTEGER :: comment_len
@@ -1297,4 +1308,171 @@ CONTAINS
!!$
!!$ END SUBROUTINE H5Lregistered_f
+!****s* H5L (F03)/h5literate_f
+!
+! NAME
+! h5literate_f
+!
+! PURPOSE
+! Iterates through links in a group.
+!
+! Inputs:
+! group_id - Identifier specifying subject group
+! index_type - Type of index which determines the order:
+! H5_INDEX_NAME_F - Alpha-numeric index on name
+! H5_INDEX_CRT_ORDER_F - Index on creation order
+! order - Order within index:
+! H5_ITER_INC_F - Increasing order
+! H5_ITER_DEC_F - Decreasing order
+! H5_ITER_NATIVE_F - Fastest available order
+! idx - IN: Iteration position at which to start
+! op - Callback function passing data regarding the link to the calling application
+! op_data - User-defined pointer to data required by the application for its processing of the link
+!
+! Outputs:
+! idx - OUT: Position at which an interrupted iteration may be restarted
+! return_value - Success: The return value of the first operator that
+! returns non-zero, or zero if all members were
+! processed with no operator returning non-zero.
+!
+! Failure: Negative if something goes wrong within the
+! library, or the negative value returned by one
+! of the operators.
+!
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! July 8, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5literate_f(group_id, index_type, order, idx, op, op_data, return_value, hdferr)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: group_id
+ INTEGER , INTENT(IN) :: index_type
+ INTEGER , INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(INOUT) :: idx
+ TYPE(C_FUNPTR) , INTENT(IN) :: op
+ TYPE(C_PTR) , INTENT(IN) :: op_data
+ INTEGER , INTENT(OUT) :: return_value
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5literate_c(group_id, index_type, order, idx, op, op_data) &
+ BIND(C, NAME='h5literate_c')
+ IMPORT :: c_ptr, c_funptr
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: group_id
+ INTEGER, INTENT(IN) :: index_type
+ INTEGER, INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(INOUT) :: idx
+ TYPE(C_FUNPTR), VALUE :: op
+ TYPE(C_PTR), VALUE :: op_data
+ END FUNCTION h5literate_c
+ END INTERFACE
+
+ return_value = h5literate_c(group_id, index_type, order, idx, op, op_data)
+
+ IF(return_value.GE.0)THEN
+ hdferr = 0
+ ELSE
+ hdferr = -1
+ END IF
+
+ END SUBROUTINE h5literate_f
+
+!****s* H5L (F03)/h5literate_by_name_f
+!
+! NAME
+! h5literate_by_name_f
+!
+! PURPOSE
+! Iterates through links in a group.
+!
+! Inputs:
+! loc_id - File or group identifier specifying location of subject group
+! group_name - Name of subject group
+! index_type - Type of index which determines the order:
+! H5_INDEX_NAME_F - Alpha-numeric index on name
+! H5_INDEX_CRT_ORDER_F - Index on creation order
+! order - Order within index:
+! H5_ITER_INC_F - Increasing order
+! H5_ITER_DEC_F - Decreasing order
+! H5_ITER_NATIVE_F - Fastest available order
+! idx - IN: Iteration position at which to start
+! op - Callback function passing data regarding the link to the calling application
+! op_data - User-defined pointer to data required by the application for its processing of the link
+!
+! Outputs:
+! idx - OUT: Position at which an interrupted iteration may be restarted
+! return_value - Success: The return value of the first operator that
+! returns non-zero, or zero if all members were
+! processed with no operator returning non-zero.
+!
+! Failure: Negative if something goes wrong within the
+! library, or the negative value returned by one
+! of the operators.
+!
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! lapl_id - Link access property list
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! Augest 18, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5literate_by_name_f(loc_id, group_name, index_type, order, &
+ idx, op, op_data, return_value, hdferr, lapl_id)
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(LEN=*), INTENT(IN) :: group_name
+ INTEGER , INTENT(IN) :: index_type
+ INTEGER , INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(INOUT) :: idx
+ TYPE(C_FUNPTR) , INTENT(IN) :: op
+ TYPE(C_PTR) , INTENT(IN) :: op_data
+ INTEGER , INTENT(OUT) :: return_value
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lapl_id
+!*****
+ INTEGER(HID_T) :: lapl_id_default
+ INTEGER(SIZE_T) :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5literate_by_name_c(loc_id, name, namelen, index_type, order,&
+ idx, op, op_data, lapl_id_default) BIND(C, NAME='h5literate_by_name_c')
+ IMPORT :: c_char, c_ptr, c_funptr
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER(SIZE_T) , INTENT(IN) :: namelen
+ INTEGER , INTENT(IN) :: index_type
+ INTEGER , INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(INOUT) :: idx
+ TYPE(C_FUNPTR), VALUE :: op
+ TYPE(C_PTR), VALUE :: op_data
+ INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
+ END FUNCTION
+ END INTERFACE
+
+ namelen = LEN(group_name)
+ lapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
+
+ return_value = h5literate_by_name_c(loc_id, group_name, namelen, index_type, order, idx, op, op_data, lapl_id_default)
+
+ IF(return_value.GE.0)THEN
+ hdferr = 0
+ ELSE
+ hdferr = -1
+ END IF
+
+ END SUBROUTINE h5literate_by_name_f
+
END MODULE H5L
diff --git a/fortran/src/H5Lff_F03.f90 b/fortran/src/H5Lff_F03.f90
deleted file mode 100644
index fa95717..0000000
--- a/fortran/src/H5Lff_F03.f90
+++ /dev/null
@@ -1,242 +0,0 @@
-!****h* ROBODoc/H5L (F03)
-!
-! NAME
-! H5L_PROVISIONAL
-!
-! FILE
-! src/fortran/src/H5Lff_F03.f90
-!
-! PURPOSE
-!
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5L functions.
-! It contains the same functions as H5Lff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Lff_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5A function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5L_PROVISIONAL
-
- USE H5GLOBAL
- USE ISO_C_BINDING
-
- IMPLICIT NONE
-
-!****t* H5L (F03)/h5l_info_t
-!
-! Fortran2003 Derived Type:
-!
- TYPE, bind(c) :: union_t
- INTEGER(haddr_t) :: address
- INTEGER(size_t) :: val_size
- END TYPE union_t
-
- TYPE, bind(c) :: h5l_info_t
- INTEGER(c_int) :: type ! H5L_type_t type
-! LOGICAL(c_bool) :: corder_valid ! hbool_t corder_valid
- INTEGER(c_int64_t) :: corder ! int64_t corder;
- INTEGER(c_int) :: cset ! H5T_cset_t cset;
- TYPE(union_t) :: u
- END TYPE h5l_info_t
-
-!*****
-
-!type specifies the link class. Valid values include the following:
-! H5L_TYPE_HARD Hard link
-! H5L_TYPE_SOFT Soft link
-! H5L_TYPE_EXTERNAL External link
-! H5L_TYPE_ERROR Error
-!cset specifies the character set in which the link name is encoded. Valid values include the following:
-! H5T_CSET_ASCII US ASCII
-! H5T_CSET_UTF8 UTF-8 Unicode encoding
-
-CONTAINS
-
-!****s* H5L (F03)/h5literate_f
-!
-! NAME
-! h5literate_f
-!
-! PURPOSE
-! Iterates through links in a group.
-!
-! Inputs:
-! group_id - Identifier specifying subject group
-! index_type - Type of index which determines the order:
-! H5_INDEX_NAME_F - Alpha-numeric index on name
-! H5_INDEX_CRT_ORDER_F - Index on creation order
-! order - Order within index:
-! H5_ITER_INC_F - Increasing order
-! H5_ITER_DEC_F - Decreasing order
-! H5_ITER_NATIVE_F - Fastest available order
-! idx - IN: Iteration position at which to start
-! op - Callback function passing data regarding the link to the calling application
-! op_data - User-defined pointer to data required by the application for its processing of the link
-!
-! Outputs:
-! idx - OUT: Position at which an interrupted iteration may be restarted
-! return_value - Success: The return value of the first operator that
-! returns non-zero, or zero if all members were
-! processed with no operator returning non-zero.
-!
-! Failure: Negative if something goes wrong within the
-! library, or the negative value returned by one
-! of the operators.
-!
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! July 8, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5literate_f(group_id, index_type, order, idx, op, op_data, return_value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: group_id
- INTEGER , INTENT(IN) :: index_type
- INTEGER , INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(INOUT) :: idx
- TYPE(C_FUNPTR) , INTENT(IN) :: op
- TYPE(C_PTR) , INTENT(IN) :: op_data
- INTEGER , INTENT(OUT) :: return_value
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5literate_c(group_id, index_type, order, idx, op, op_data) &
- BIND(C, NAME='h5literate_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_funptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: group_id
- INTEGER, INTENT(IN) :: index_type
- INTEGER, INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(INOUT) :: idx
- TYPE(C_FUNPTR), VALUE :: op
- TYPE(C_PTR), VALUE :: op_data
- END FUNCTION h5literate_c
- END INTERFACE
-
- return_value = h5literate_c(group_id, index_type, order, idx, op, op_data)
-
- IF(return_value.GE.0)THEN
- hdferr = 0
- ELSE
- hdferr = -1
- END IF
-
- END SUBROUTINE h5literate_f
-
-!****s* H5L (F03)/h5literate_by_name_f
-!
-! NAME
-! h5literate_by_name_f
-!
-! PURPOSE
-! Iterates through links in a group.
-!
-! Inputs:
-! loc_id - File or group identifier specifying location of subject group
-! group_name - Name of subject group
-! index_type - Type of index which determines the order:
-! H5_INDEX_NAME_F - Alpha-numeric index on name
-! H5_INDEX_CRT_ORDER_F - Index on creation order
-! order - Order within index:
-! H5_ITER_INC_F - Increasing order
-! H5_ITER_DEC_F - Decreasing order
-! H5_ITER_NATIVE_F - Fastest available order
-! idx - IN: Iteration position at which to start
-! op - Callback function passing data regarding the link to the calling application
-! op_data - User-defined pointer to data required by the application for its processing of the link
-!
-! Outputs:
-! idx - OUT: Position at which an interrupted iteration may be restarted
-! return_value - Success: The return value of the first operator that
-! returns non-zero, or zero if all members were
-! processed with no operator returning non-zero.
-!
-! Failure: Negative if something goes wrong within the
-! library, or the negative value returned by one
-! of the operators.
-!
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! Optional parameters:
-! lapl_id - Link access property list
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! Augest 18, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5literate_by_name_f(loc_id, group_name, index_type, order, &
- idx, op, op_data, return_value, hdferr, lapl_id)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
- INTEGER , INTENT(IN) :: index_type
- INTEGER , INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(INOUT) :: idx
- TYPE(C_FUNPTR) , INTENT(IN) :: op
- TYPE(C_PTR) , INTENT(IN) :: op_data
- INTEGER , INTENT(OUT) :: return_value
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(HID_T) , INTENT(IN), OPTIONAL :: lapl_id
-!*****
- INTEGER(HID_T) :: lapl_id_default
- INTEGER(SIZE_T) :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5literate_by_name_c(loc_id, name, namelen, index_type, order,&
- idx, op, op_data, lapl_id_default) BIND(C, NAME='h5literate_by_name_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr, c_funptr
- USE H5GLOBAL
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER(SIZE_T) , INTENT(IN) :: namelen
- INTEGER , INTENT(IN) :: index_type
- INTEGER , INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(INOUT) :: idx
- TYPE(C_FUNPTR), VALUE :: op
- TYPE(C_PTR), VALUE :: op_data
- INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
- END FUNCTION
- END INTERFACE
-
- namelen = LEN(group_name)
- lapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
-
- return_value = h5literate_by_name_c(loc_id, group_name, namelen, index_type, order, idx, op, op_data, lapl_id_default)
-
- IF(return_value.GE.0)THEN
- hdferr = 0
- ELSE
- hdferr = -1
- END IF
-
- END SUBROUTINE h5literate_by_name_f
-
-END MODULE H5L_PROVISIONAL
diff --git a/fortran/src/H5Lff_F90.f90 b/fortran/src/H5Lff_F90.f90
deleted file mode 100644
index dd62b7b..0000000
--- a/fortran/src/H5Lff_F90.f90
+++ /dev/null
@@ -1,39 +0,0 @@
-!****h* ROBODoc/H5L (F90)
-!
-! NAME
-! MODULE H5L_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5L functions. It contains
-! the same functions as H5Lff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Lff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! NOTE
-! Currently contains no functions.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5L_PROVISIONAL
-
-END MODULE H5L_PROVISIONAL
diff --git a/fortran/src/H5Of.c b/fortran/src/H5Of.c
index ae344a5..4801f7d 100644
--- a/fortran/src/H5Of.c
+++ b/fortran/src/H5Of.c
@@ -1,6 +1,6 @@
/****h* H5Of/H5Of
* PURPOSE
- * This file contains C stubs for H5O Fortran APIs
+ * This file contains C stubs for H5O Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -109,12 +109,12 @@ fill_h5o_info_t_f(H5O_info_t Oinfo, H5O_info_t_f *object_info) {
* PURPOSE
* Calls H5Olink
* INPUTS
- * object_id - Object to be linked.
- * new_loc_id - File or group identifier specifying location at which object is to be linked.
- * name - Name of link to be created, relative to new_loc_id.
- * namelen - Length of buffer for link to be created.
- * lcpl_id - Link creation property list identifier.
- * lapl_id - Link access property list identifier.
+ * object_id - Object to be linked.
+ * new_loc_id - File or group identifier specifying location at which object is to be linked.
+ * name - Name of link to be created, relative to new_loc_id.
+ * namelen - Length of buffer for link to be created.
+ * lcpl_id - Link creation property list identifier.
+ * lapl_id - Link access property list identifier.
* RETURNS
* 0 on success, -1 on failure
* AUTHOR
@@ -123,7 +123,7 @@ fill_h5o_info_t_f(H5O_info_t Oinfo, H5O_info_t_f *object_info) {
* SOURCE
*/
int_f
-nh5olink_c (hid_t_f *object_id, hid_t_f *new_loc_id, _fcd name, size_t_f *namelen,
+h5olink_c (hid_t_f *object_id, hid_t_f *new_loc_id, _fcd name, size_t_f *namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id)
/******/
{
@@ -169,7 +169,7 @@ nh5olink_c (hid_t_f *object_id, hid_t_f *new_loc_id, _fcd name, size_t_f *namele
* SOURCE
*/
int_f
-nh5oopen_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, hid_t_f *obj_id)
+h5oopen_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, hid_t_f *obj_id)
/******/
{
char *c_name = NULL; /* Buffer to hold C string */
@@ -194,20 +194,20 @@ nh5oopen_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, hid
}
/****if* H5Of/h5oclose_c
* NAME
- * h5oclose_c
+ * h5oclose_c
* PURPOSE
- * Call H5Oclose
+ * Call H5Oclose
* INPUTS
- * object_id - Object identifier
+ * object_id - Object identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * December 17, 2008
+ * December 17, 2008
* SOURCE
*/
int_f
-nh5oclose_c ( hid_t_f *object_id )
+h5oclose_c ( hid_t_f *object_id )
/******/
{
int_f ret_value=0; /* Return value */
@@ -225,15 +225,15 @@ nh5oclose_c ( hid_t_f *object_id )
* PURPOSE
* Calls H5Ovisit
* INPUTS
- * object_id - Identifier specifying subject group
- * index_type - Type of index which determines the order
- * order - Order within index
- * idx - Iteration position at which to start
- * op - Callback function passing data regarding the link to the calling application
- * op_data - User-defined pointer to data required by the application for its processing of the link
+ * object_id - Identifier specifying subject group
+ * index_type - Type of index which determines the order
+ * order - Order within index
+ * idx - Iteration position at which to start
+ * op - Callback function passing data regarding the link to the calling application
+ * op_data - User-defined pointer to data required by the application for its processing of the link
*
* OUTPUTS
- * idx - Position at which an interrupted iteration may be restarted
+ * idx - Position at which an interrupted iteration may be restarted
*
* RETURNS
* >0 on success, 0< on failure
@@ -266,20 +266,20 @@ h5ovisit_c(hid_t_f *group_id, int_f *index_type, int_f *order, H5O_iterate_t op,
* Calls H5open_by_addr
* INPUTS
* loc_id - File or group identifier
- * addr - Object’s address in the file
+ * addr - Object’s address in the file
*
* OUTPUTS
* obj_id - Dataset identifier
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* September 14, 2009
* SOURCE
*/
int_f
-nh5oopen_by_addr_c (hid_t_f *loc_id, haddr_t_f *addr, hid_t_f *obj_id)
+h5oopen_by_addr_c (hid_t_f *loc_id, haddr_t_f *addr, hid_t_f *obj_id)
/******/
{
int_f ret_value = 0; /* Return value */
@@ -458,7 +458,7 @@ h5oget_info_c (hid_t_f *object_id, H5O_info_t_f *object_info)
* SOURCE
*/
int_f
-nh5ocopy_c (hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_name_len,
+h5ocopy_c (hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_name_len,
hid_t_f *dst_loc_id, _fcd dst_name, size_t_f *dst_name_len,
hid_t_f *ocpypl_id, hid_t_f *lcpl_id )
/******/
@@ -499,15 +499,15 @@ nh5ocopy_c (hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_name_len,
* PURPOSE
* Calls H5Ovisit_by_name
* INPUTS
- * object_id - Identifier specifying subject group
- * index_type - Type of index which determines the order
- * order - Order within index
- * idx - Iteration position at which to start
- * op - Callback function passing data regarding the link to the calling application
- * op_data - User-defined pointer to data required by the application for its processing of the link
+ * object_id - Identifier specifying subject group
+ * index_type - Type of index which determines the order
+ * order - Order within index
+ * idx - Iteration position at which to start
+ * op - Callback function passing data regarding the link to the calling application
+ * op_data - User-defined pointer to data required by the application for its processing of the link
*
* OUTPUTS
- * idx - Position at which an interrupted iteration may be restarted
+ * idx - Position at which an interrupted iteration may be restarted
*
* RETURNS
* >0 on success, 0< on failure
@@ -560,7 +560,7 @@ h5ovisit_by_name_c(hid_t_f *loc_id, _fcd object_name, size_t_f *namelen, int_f
* SOURCE
*/
int_f
-nh5odecr_refcount_c (hid_t_f *object_id)
+h5odecr_refcount_c (hid_t_f *object_id)
/******/
{
int_f ret_value = 0; /* Return value */
@@ -594,7 +594,7 @@ nh5odecr_refcount_c (hid_t_f *object_id)
* SOURCE
*/
int_f
-nh5oexists_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id)
+h5oexists_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id)
/******/
{
char *c_name = NULL; /* Buffer to hold C string */
@@ -633,7 +633,7 @@ nh5oexists_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *la
* SOURCE
*/
int_f
-nh5oincr_refcount_c (hid_t_f *object_id)
+h5oincr_refcount_c (hid_t_f *object_id)
/******/
{
int_f ret_value = 0; /* Return value */
@@ -665,7 +665,7 @@ nh5oincr_refcount_c (hid_t_f *object_id)
* SOURCE
*/
int_f
-nh5oset_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentlen)
+h5oset_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentlen)
/******/
{
char *c_comment = NULL; /* Buffer to hold C string */
@@ -697,7 +697,7 @@ nh5oset_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentlen)
* INPUTS
* object_id - Identifier of the target object.
* name - Name of the object whose comment is to be set or reset,
- * specified as a path relative to loc_id.
+ * specified as a path relative to loc_id.
* namelen - Length of the name.
* comment - The new comment.
* commentlen - Length of the comment.
@@ -710,7 +710,7 @@ nh5oset_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentlen)
* SOURCE
*/
int_f
-nh5oset_comment_by_name_c (hid_t_f *object_id, _fcd name, size_t_f *namelen, _fcd comment, size_t_f *commentlen, hid_t_f *lapl_id)
+h5oset_comment_by_name_c (hid_t_f *object_id, _fcd name, size_t_f *namelen, _fcd comment, size_t_f *commentlen, hid_t_f *lapl_id)
/******/
{
char *c_comment = NULL; /* Buffer to hold C string */
@@ -755,7 +755,7 @@ nh5oset_comment_by_name_c (hid_t_f *object_id, _fcd name, size_t_f *namelen, _f
* n - Object to open.
* lapl_id - Link access property list.
* OUTPUTS
- * obj_id - An object identifier for the opened object.
+ * obj_id - An object identifier for the opened object.
* RETURNS
* 0 on success, -1 on failure
* AUTHOR
@@ -764,7 +764,7 @@ nh5oset_comment_by_name_c (hid_t_f *object_id, _fcd name, size_t_f *namelen, _f
* SOURCE
*/
int_f
-nh5oopen_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+h5oopen_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_type, int_f *order, hsize_t_f *n, hid_t_f *obj_id, hid_t_f *lapl_id)
/******/
{
@@ -813,7 +813,7 @@ nh5oopen_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
* SOURCE
*/
int_f
-nh5oget_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentsize, hssize_t_f *bufsize)
+h5oget_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentsize, hssize_t_f *bufsize)
/******/
{
char *c_comment = NULL; /* Buffer to hold C string */
@@ -869,7 +869,7 @@ nh5oget_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentsize, hss
* SOURCE
*/
int_f
-nh5oget_comment_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *name_size,
+h5oget_comment_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *name_size,
_fcd comment, size_t_f *commentsize, size_t_f *bufsize, hid_t_f *lapl_id)
/******/
{
diff --git a/fortran/src/H5Off.f90 b/fortran/src/H5Off.F90
index 8a40079..da940df 100644
--- a/fortran/src/H5Off.f90
+++ b/fortran/src/H5Off.F90
@@ -7,9 +7,7 @@
! fortran/src/H5Off.f90
!
! PURPOSE
-! This file contains Fortran interfaces for H5O functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
+! This file contains Fortran interfaces for H5O functions.
!
!
! COPYRIGHT
@@ -29,7 +27,13 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5O function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -38,7 +42,65 @@
MODULE H5O
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_FUNPTR, C_CHAR, C_INT64_T, C_LONG, C_INT, C_LOC
USE H5GLOBAL
+ IMPLICIT NONE
+
+!****t* H5T (F03)/h5o_info_t
+!
+! Fortran2003 Derived Type:
+!
+ TYPE, BIND(C) :: space_t
+ INTEGER(hsize_t) :: total ! Total space for storing object header in file
+ INTEGER(hsize_t) :: meta ! Space within header for object header metadata information
+ INTEGER(hsize_t) :: mesg ! Space within header for actual message information
+ INTEGER(hsize_t) :: free ! Free space within object header
+ END TYPE space_t
+
+ TYPE, BIND(C) :: mesg_t
+ INTEGER(c_int64_t) :: present ! Flags to indicate presence of message type in header
+ INTEGER(c_int64_t) :: shared ! Flags to indicate message type is shared in header
+ END TYPE mesg_t
+
+ TYPE, BIND(C) :: hdr_t
+ INTEGER :: version ! Version number of header format in file
+ INTEGER :: nmesgs ! Number of object header messages
+ INTEGER :: nchunks ! Number of object header chunks
+ INTEGER :: flags ! Object header status flags
+ TYPE(space_t) :: space
+ TYPE(mesg_t) :: mesg
+ END TYPE hdr_t
+
+ ! Extra metadata storage for obj & attributes
+ TYPE, BIND(C) :: H5_ih_info_t
+ INTEGER(hsize_t) :: index_size ! btree and/or list
+ INTEGER(hsize_t) :: heap_size
+ END TYPE H5_ih_info_t
+
+ TYPE, BIND(C) :: meta_size_t
+ TYPE(H5_ih_info_t) :: obj ! v1/v2 B-tree & local/fractal heap for groups, B-tree for chunked datasets
+ TYPE(H5_ih_info_t) :: attr ! v2 B-tree & heap for attributes
+ ENDTYPE meta_size_t
+
+ TYPE, BIND(C) :: h5o_info_t
+ INTEGER(C_LONG) :: fileno ! File number that object is located in
+ INTEGER(haddr_t) :: addr ! Object address in file
+ INTEGER(C_INT) :: type ! Basic object type (group, dataset, etc.)
+ INTEGER :: rc ! Reference count of object
+
+ INTEGER, DIMENSION(8) :: atime ! Access time ! -- NOTE --
+ INTEGER, DIMENSION(8) :: mtime ! Modification time ! Returns an integer array
+ INTEGER, DIMENSION(8) :: ctime ! Change time ! as specified in the Fortran
+ INTEGER, DIMENSION(8) :: btime ! Birth time ! intrinsic DATE_AND_TIME(VALUES)
+
+ INTEGER(hsize_t) :: num_attrs ! # of attributes attached to object
+
+ TYPE(hdr_t) :: hdr
+
+ TYPE(meta_size_t) :: meta_size
+ END TYPE h5o_info_t
+
+!*****
CONTAINS
@@ -83,15 +145,13 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5olink_c(object_id, new_loc_id, new_link_name, new_link_namelen, &
- lcpl_id_default, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OLINK_C'::h5olink_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: new_link_name
+ lcpl_id_default, lapl_id_default) BIND(C,NAME='h5olink_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: object_id
INTEGER(HID_T), INTENT(IN) :: new_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: new_link_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: new_link_name
INTEGER(SIZE_T) :: new_link_namelen
INTEGER(HID_T) :: lapl_id_default
INTEGER(HID_T) :: lcpl_id_default
@@ -146,14 +206,12 @@ CONTAINS
INTEGER(SIZE_T) :: namelen
INTERFACE
- INTEGER FUNCTION h5oopen_c(loc_id, name, namelen, lapl_id_default, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OOPEN_C'::h5oopen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5oopen_c(loc_id, name, namelen, lapl_id_default, obj_id) BIND(C,NAME='h5oopen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(HID_T) :: lapl_id_default
INTEGER(SIZE_T) :: namelen
INTEGER(HID_T), INTENT(OUT) :: obj_id
@@ -194,11 +252,9 @@ CONTAINS
INTEGER , INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION h5oclose_c(object_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OCLOSE_C'::h5oclose_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5oclose_c(object_id) BIND(C,NAME='h5oclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: object_id
END FUNCTION h5oclose_c
END INTERFACE
@@ -235,11 +291,9 @@ CONTAINS
INTEGER , INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION h5oopen_by_addr_c(loc_id, addr, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OOPEN_BY_ADDR_C'::h5oopen_by_addr_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5oopen_by_addr_c(loc_id, addr, obj_id) BIND(C,NAME='h5oopen_by_addr_c')
+ IMPORT :: HID_T, HADDR_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
INTEGER(HADDR_T), INTENT(IN) :: addr
INTEGER(HID_T), INTENT(OUT) :: obj_id
@@ -291,16 +345,15 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ocopy_c(src_loc_id, src_name, src_name_len, &
- dst_loc_id, dst_name, dst_name_len, ocpypl_id_default, lcpl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OCOPY_C'::h5ocopy_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: src_name, dst_name
+ dst_loc_id, dst_name, dst_name_len, ocpypl_id_default, lcpl_id_default) &
+ BIND(C,NAME='h5ocopy_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: src_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: src_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: src_name
INTEGER(HID_T) , INTENT(IN) :: dst_loc_id
- CHARACTER(LEN=*), INTENT(IN) :: dst_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: dst_name
INTEGER(HID_T) , INTENT(IN) :: ocpypl_id_default
INTEGER(HID_T) , INTENT(IN) :: lcpl_id_default
INTEGER(SIZE_T) :: src_name_len, dst_name_len
@@ -346,11 +399,9 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5odecr_refcount_c(object_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ODECR_REFCOUNT_C'::h5odecr_refcount_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5odecr_refcount_c(object_id) BIND(C,NAME='h5odecr_refcount_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: object_id
END FUNCTION h5odecr_refcount_c
END INTERFACE
@@ -397,14 +448,13 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5oexists_by_name_c(loc_id, name, namelen, lapl_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OEXISTS_BY_NAME_C'::h5oexists_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5oexists_by_name_c(loc_id, name, namelen, lapl_id) &
+ BIND(C,NAME='h5oexists_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(SIZE_T) , INTENT(IN) :: namelen
INTEGER(HID_T) , INTENT(IN) :: lapl_id
@@ -464,14 +514,13 @@ CONTAINS
INTEGER(HSSIZE_T) :: bufsize_default
INTERFACE
- INTEGER FUNCTION h5oget_comment_c(obj_id, comment, commentsize_default, bufsize)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OGET_COMMENT_C'::h5oget_comment_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: comment
+ INTEGER FUNCTION h5oget_comment_c(obj_id, comment, commentsize_default, bufsize) &
+ BIND(C,NAME='h5oget_comment_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(OUT) :: comment
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: comment
INTEGER(SIZE_T) , INTENT(IN) :: commentsize_default
INTEGER(HSSIZE_T) , INTENT(OUT) :: bufsize
END FUNCTION h5oget_comment_c
@@ -525,16 +574,14 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
INTEGER FUNCTION h5oget_comment_by_name_c(loc_id, name, name_size, &
- comment, commentsize_default, bufsize_default, lapl_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OGET_COMMENT_BY_NAME_C'::h5oget_comment_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: comment, name
+ comment, commentsize_default, bufsize_default, lapl_id) BIND(C,NAME='h5oget_comment_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(SIZE_T) , INTENT(IN) :: name_size
- CHARACTER(LEN=*), INTENT(OUT) :: comment
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: comment
INTEGER(SIZE_T) , INTENT(IN) :: commentsize_default
INTEGER(SIZE_T) , INTENT(OUT) :: bufsize_default
INTEGER(HID_T) , INTENT(IN) :: lapl_id
@@ -579,11 +626,9 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5oincr_refcount_c(obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OINCR_REFCOUNT_C'::h5oincr_refcount_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5oincr_refcount_c(obj_id) BIND(C,NAME='h5oincr_refcount_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: obj_id
END FUNCTION h5oincr_refcount_c
END INTERFACE
@@ -635,14 +680,13 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5oopen_by_idx_c(loc_id, group_name, group_namelen, index_type, order, n, obj_id, lapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OOPEN_BY_IDX_C'::h5oopen_by_idx_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: group_name
+ INTEGER FUNCTION h5oopen_by_idx_c(loc_id, group_name, group_namelen, index_type, order, n, obj_id, lapl_id_default) &
+ BIND(C,NAME='h5oopen_by_idx_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
INTEGER(SIZE_T) , INTENT(IN) :: group_namelen
INTEGER , INTENT(IN) :: index_type
INTEGER , INTENT(IN) :: order
@@ -690,14 +734,12 @@ CONTAINS
INTEGER(SIZE_T) :: commentlen
INTERFACE
- INTEGER FUNCTION h5oset_comment_c(obj_id, comment, commentlen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OSET_COMMENT_C'::h5oset_comment_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: comment
+ INTEGER FUNCTION h5oset_comment_c(obj_id, comment, commentlen) BIND(C,NAME='h5oset_comment_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(IN) :: comment
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: comment
INTEGER(SIZE_T) , INTENT(IN) :: commentlen
END FUNCTION h5oset_comment_c
@@ -746,16 +788,15 @@ CONTAINS
INTEGER(HID_T) :: lapl_id_default
INTERFACE
- INTEGER FUNCTION h5oset_comment_by_name_c(loc_id, name, namelen, comment, commentlen, lapl_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OSET_COMMENT_BY_NAME_C'::h5oset_comment_by_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name, comment
+ INTEGER FUNCTION h5oset_comment_by_name_c(loc_id, name, namelen, comment, commentlen, lapl_id) &
+ BIND(C,NAME='h5oset_comment_by_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: comment
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: comment
INTEGER(SIZE_T) , INTENT(IN) :: commentlen
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER(SIZE_T) , INTENT(IN) :: namelen
INTEGER(HID_T) , INTENT(IN) :: lapl_id
END FUNCTION h5oset_comment_by_name_c
@@ -771,5 +812,338 @@ CONTAINS
END SUBROUTINE h5oset_comment_by_name_f
+!****s* H5O (F03)/h5ovisit_f_F03
+!
+! NAME
+! h5ovisit_f
+!
+! PURPOSE
+! Recursively visits all objects starting from a specified object.
+!
+! Inputs:
+! object_id - Identifier of the object at which the recursive iteration begins.
+! index_type - Type of index; valid values include:
+! H5_INDEX_NAME_F
+! H5_INDEX_CRT_ORDER_F
+! order - Order in which index is traversed; valid values include:
+! H5_ITER_DEC_F
+! H5_ITER_INC_F
+! H5_ITER_NATIVE_F
+! op - Callback function passing data regarding the group to the calling application
+! op_data - User-defined pointer to data required by the application for its processing of the group
+!
+! Outputs:
+! return_value - returns the return value of the first operator that returns a positive value, or
+! zero if all members were processed with no operator returning non-zero.
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! M. Scot Breitenfeld
+! November 19, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5ovisit_f(object_id, index_type, order, op, op_data, return_value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: object_id
+ INTEGER, INTENT(IN) :: index_type
+ INTEGER, INTENT(IN) :: order
+
+ TYPE(C_FUNPTR):: op
+ TYPE(C_PTR) :: op_data
+ INTEGER, INTENT(OUT) :: return_value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5ovisit_c(object_id, index_type, order, op, op_data) &
+ BIND(C, NAME='h5ovisit_c')
+ IMPORT :: C_FUNPTR, C_PTR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: object_id
+ INTEGER, INTENT(IN) :: index_type
+ INTEGER, INTENT(IN) :: order
+ TYPE(C_FUNPTR), VALUE :: op
+ TYPE(C_PTR), VALUE :: op_data
+ END FUNCTION h5ovisit_c
+ END INTERFACE
+
+ return_value = h5ovisit_c(object_id, index_type, order, op, op_data)
+
+ IF(return_value.GE.0)THEN
+ hdferr = 0
+ ELSE
+ hdferr = -1
+ END IF
+
+ END SUBROUTINE h5ovisit_f
+
+!****s* H5O (F03)/h5oget_info_by_name_f_F03
+!
+! NAME
+! h5oget_info_by_name_f
+!
+! PURPOSE
+! Retrieves the metadata for an object, identifying the object by location and relative name.
+!
+! Inputs:
+! loc_id - File or group identifier specifying location of group
+! in which object is located.
+! name - Name of group, relative to loc_id.
+!
+! Outputs:
+! object_info - Buffer in which to return object information.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! Optional parameters:
+! lapl_id - Link access property list.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! December 1, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5oget_info_by_name_f(loc_id, name, object_info, hdferr, lapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
+!*****
+ INTEGER(SIZE_T) :: namelen
+ INTEGER(HID_T) :: lapl_id_default
+ TYPE(C_PTR) :: ptr
+
+ INTERFACE
+ INTEGER FUNCTION h5oget_info_by_name_c(loc_id, name, namelen, lapl_id_default, object_info) &
+ BIND(C, NAME='h5oget_info_by_name_c')
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER(SIZE_T) , INTENT(IN) :: namelen
+ INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
+ TYPE(C_PTR),VALUE :: object_info
+
+ END FUNCTION h5oget_info_by_name_c
+ END INTERFACE
+
+ namelen = LEN(name)
+
+ lapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
+
+ ptr = C_LOC(object_info)
+
+ hdferr = H5Oget_info_by_name_c(loc_id, name, namelen, lapl_id_default, ptr)
+
+ END SUBROUTINE H5Oget_info_by_name_f
+
+!****s* H5O (F03)/h5oget_info_f_F03
+!
+! NAME
+! h5oget_info_f
+!
+! PURPOSE
+! Retrieves the metadata for an object specified by an identifier.
+!
+! Inputs:
+! object_id - Identifier for target object.
+!
+! Outputs:
+! object_info - Buffer in which to return object information.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! May 11, 2012
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5oget_info_f(object_id, object_info, hdferr)
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: object_id
+ TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+ TYPE(C_PTR) :: ptr
+
+ INTERFACE
+ INTEGER FUNCTION h5oget_info_c(object_id, object_info) &
+ BIND(C, NAME='h5oget_info_c')
+ IMPORT :: C_PTR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: object_id
+ TYPE(C_PTR), VALUE :: object_info
+ END FUNCTION h5oget_info_c
+ END INTERFACE
+
+ ptr = C_LOC(object_info)
+ hdferr = H5Oget_info_c(object_id, ptr)
+
+ END SUBROUTINE H5Oget_info_f
+
+!****s* H5O (F03)/h5oget_info_by_idx_f_F03
+!
+! NAME
+! h5oget_info_by_idx_f
+!
+! PURPOSE
+! Retrieves the metadata for an object, identifying the object by an index position.
+!
+! Inputs:
+! loc_id - File or group identifier specifying location of group
+! in which object is located.
+! group_name - Name of group in which object is located.
+! index_field - Index or field that determines the order.
+! order - Order within field or index.
+! n - Object for which information is to be returned
+!
+! Outputs:
+! object_info - Buffer in which to return object information.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! Optional parameters:
+! lapl_id - Link access property list. (Not currently used.)
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! May 11, 2012
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5oget_info_by_idx_f(loc_id, group_name, index_field, order, n, &
+ object_info, hdferr, lapl_id)
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(LEN=*), INTENT(IN) :: group_name
+ INTEGER , INTENT(IN) :: index_field
+ INTEGER , INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(IN) :: n
+ TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
+!*****
+ INTEGER(SIZE_T) :: namelen
+ INTEGER(HID_T) :: lapl_id_default
+ TYPE(C_PTR) :: ptr
+
+ INTERFACE
+ INTEGER FUNCTION h5oget_info_by_idx_c(loc_id, group_name, namelen, &
+ index_field, order, n, lapl_id_default, object_info) BIND(C, NAME='h5oget_info_by_idx_c')
+ IMPORT :: c_char, c_ptr, c_funptr
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
+ INTEGER(SIZE_T) , INTENT(IN) :: namelen
+ INTEGER , INTENT(IN) :: index_field
+ INTEGER , INTENT(IN) :: order
+ INTEGER(HSIZE_T), INTENT(IN) :: n
+ INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
+ TYPE(C_PTR), VALUE :: object_info
+
+ END FUNCTION h5oget_info_by_idx_c
+ END INTERFACE
+
+ namelen = LEN(group_name)
+
+ lapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
+
+ ptr = C_LOC(object_info)
+ hdferr = H5Oget_info_by_idx_c(loc_id, group_name, namelen, index_field, order, n, lapl_id_default, ptr)
+
+ END SUBROUTINE H5Oget_info_by_idx_f
+
+
+!****s* H5O (F03)/h5ovisit_by_name_f_F03
+!
+! NAME
+! h5ovisit_by_name_f
+!
+! PURPOSE
+! Recursively visits all objects starting from a specified object.
+!
+! Inputs:
+! loc_id - Identifier of a file or group.
+! object_name - Name of the object, generally relative to loc_id, that will serve as root of the iteration
+! index_type - Type of index; valid values include:
+! H5_INDEX_NAME_F
+! H5_INDEX_CRT_ORDER_F
+! order - Order in which index is traversed; valid values include:
+! H5_ITER_DEC_F
+! H5_ITER_INC_F
+! H5_ITER_NATIVE_F
+! op - Callback function passing data regarding the group to the calling application
+! op_data - User-defined pointer to data required by the application for its processing of the group
+!
+! Outputs:
+! return_value - Returns the return value of the first operator that returns a positive value, or
+! zero if all members were processed with no operator returning non-zero.
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! lapl_id - Link access property list identifier.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! November 19, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5ovisit_by_name_f(loc_id, object_name, index_type, order, op, op_data, &
+ return_value, hdferr, lapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(LEN=*), INTENT(IN) :: object_name
+ INTEGER , INTENT(IN) :: index_type
+ INTEGER , INTENT(IN) :: order
+
+ TYPE(C_FUNPTR) :: op
+ TYPE(C_PTR) :: op_data
+ INTEGER , INTENT(OUT) :: return_value
+ INTEGER , INTENT(OUT) :: hdferr
+ INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
+!*****
+
+ INTEGER(SIZE_T) :: namelen
+ INTEGER(HID_T) :: lapl_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, &
+ op, op_data, lapl_id) BIND(C, NAME='h5ovisit_by_name_c')
+ IMPORT :: C_CHAR, C_PTR, C_FUNPTR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: object_name
+ INTEGER(SIZE_T) :: namelen
+ INTEGER , INTENT(IN) :: index_type
+ INTEGER , INTENT(IN) :: order
+ TYPE(C_FUNPTR) , VALUE :: op
+ TYPE(C_PTR) , VALUE :: op_data
+ INTEGER(HID_T) , INTENT(IN) :: lapl_id
+ END FUNCTION h5ovisit_by_name_c
+ END INTERFACE
+
+ namelen = LEN(object_name)
+
+ lapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
+
+ return_value = h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, &
+ op, op_data, lapl_id_default)
+
+ IF(return_value.GE.0)THEN
+ hdferr = 0
+ ELSE
+ hdferr = -1
+ END IF
+
+ END SUBROUTINE h5ovisit_by_name_f
+
END MODULE H5O
diff --git a/fortran/src/H5Off_F03.f90 b/fortran/src/H5Off_F03.f90
deleted file mode 100644
index 36b6246..0000000
--- a/fortran/src/H5Off_F03.f90
+++ /dev/null
@@ -1,435 +0,0 @@
-!****h* ROBODoc/H5O (F03)
-!
-! NAME
-! H5O_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5O functions.
-! It contains the same functions as H5Off_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Off_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5P function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5O_PROVISIONAL
-
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING
-
- IMPLICIT NONE
-
-!****t* H5T (F03)/h5o_info_t
-!
-! Fortran2003 Derived Type:
-!
- TYPE, BIND(C) :: space_t
- INTEGER(hsize_t) :: total ! Total space for storing object header in file
- INTEGER(hsize_t) :: meta ! Space within header for object header metadata information
- INTEGER(hsize_t) :: mesg ! Space within header for actual message information
- INTEGER(hsize_t) :: free ! Free space within object header
- END TYPE space_t
-
- TYPE, BIND(C) :: mesg_t
- INTEGER(c_int64_t) :: present ! Flags to indicate presence of message type in header
- INTEGER(c_int64_t) :: shared ! Flags to indicate message type is shared in header
- END TYPE mesg_t
-
- TYPE, BIND(C) :: hdr_t
- INTEGER :: version ! Version number of header format in file
- INTEGER :: nmesgs ! Number of object header messages
- INTEGER :: nchunks ! Number of object header chunks
- INTEGER :: flags ! Object header status flags
- TYPE(space_t) :: space
- TYPE(mesg_t) :: mesg
- END TYPE hdr_t
-
- ! Extra metadata storage for obj & attributes
- TYPE, BIND(C) :: H5_ih_info_t
- INTEGER(hsize_t) :: index_size ! btree and/or list
- INTEGER(hsize_t) :: heap_size
- END TYPE H5_ih_info_t
-
- TYPE, BIND(C) :: meta_size_t
- TYPE(H5_ih_info_t) :: obj ! v1/v2 B-tree & local/fractal heap for groups, B-tree for chunked datasets
- TYPE(H5_ih_info_t) :: attr ! v2 B-tree & heap for attributes
- ENDTYPE meta_size_t
-
- TYPE, BIND(C) :: h5o_info_t
- INTEGER(C_LONG) :: fileno ! File number that object is located in
- INTEGER(haddr_t) :: addr ! Object address in file
- INTEGER(C_INT) :: type ! Basic object type (group, dataset, etc.)
- INTEGER :: rc ! Reference count of object
-
- INTEGER, DIMENSION(8) :: atime ! Access time ! -- NOTE --
- INTEGER, DIMENSION(8) :: mtime ! Modification time ! Returns an integer array
- INTEGER, DIMENSION(8) :: ctime ! Change time ! as specified in the Fortran
- INTEGER, DIMENSION(8) :: btime ! Birth time ! intrinsic DATE_AND_TIME(VALUES)
-
- INTEGER(hsize_t) :: num_attrs ! # of attributes attached to object
-
- TYPE(hdr_t) :: hdr
-
- TYPE(meta_size_t) :: meta_size
- END TYPE h5o_info_t
-
-!*****
-
-CONTAINS
-
-!****s* H5O (F03)/h5ovisit_f_F03
-!
-! NAME
-! h5ovisit_f
-!
-! PURPOSE
-! Recursively visits all objects starting from a specified object.
-!
-! Inputs:
-! object_id - Identifier of the object at which the recursive iteration begins.
-! index_type - Type of index; valid values include:
-! H5_INDEX_NAME_F
-! H5_INDEX_CRT_ORDER_F
-! order - Order in which index is traversed; valid values include:
-! H5_ITER_DEC_F
-! H5_ITER_INC_F
-! H5_ITER_NATIVE_F
-! op - Callback function passing data regarding the group to the calling application
-! op_data - User-defined pointer to data required by the application for its processing of the group
-!
-! Outputs:
-! return_value - returns the return value of the first operator that returns a positive value, or
-! zero if all members were processed with no operator returning non-zero.
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! M. Scot Breitenfeld
-! November 19, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5ovisit_f(object_id, index_type, order, op, op_data, return_value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: object_id
- INTEGER, INTENT(IN) :: index_type
- INTEGER, INTENT(IN) :: order
-
- TYPE(C_FUNPTR):: op
- TYPE(C_PTR) :: op_data
- INTEGER, INTENT(OUT) :: return_value
- INTEGER, INTENT(OUT) :: hdferr
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5ovisit_c(object_id, index_type, order, op, op_data) &
- BIND(C, NAME='h5ovisit_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_funptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: object_id
- INTEGER, INTENT(IN) :: index_type
- INTEGER, INTENT(IN) :: order
- TYPE(C_FUNPTR), VALUE :: op
- TYPE(C_PTR), VALUE :: op_data
- END FUNCTION h5ovisit_c
- END INTERFACE
-
- return_value = h5ovisit_c(object_id, index_type, order, op, op_data)
-
- IF(return_value.GE.0)THEN
- hdferr = 0
- ELSE
- hdferr = -1
- END IF
-
- END SUBROUTINE h5ovisit_f
-
-!****s* H5O (F03)/h5oget_info_by_name_f_F03
-!
-! NAME
-! h5oget_info_by_name_f
-!
-! PURPOSE
-! Retrieves the metadata for an object, identifying the object by location and relative name.
-!
-! Inputs:
-! loc_id - File or group identifier specifying location of group
-! in which object is located.
-! name - Name of group, relative to loc_id.
-!
-! Outputs:
-! object_info - Buffer in which to return object information.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! Optional parameters:
-! lapl_id - Link access property list.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! December 1, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5oget_info_by_name_f(loc_id, name, object_info, hdferr, lapl_id)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
-!*****
- INTEGER(SIZE_T) :: namelen
- INTEGER(HID_T) :: lapl_id_default
- TYPE(C_PTR) :: ptr
-
- INTERFACE
- INTEGER FUNCTION h5oget_info_by_name_c(loc_id, name, namelen, lapl_id_default, object_info) &
- BIND(C, NAME='h5oget_info_by_name_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER(SIZE_T) , INTENT(IN) :: namelen
- INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
- TYPE(C_PTR),VALUE :: object_info
-
- END FUNCTION h5oget_info_by_name_c
- END INTERFACE
-
- namelen = LEN(name)
-
- lapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
-
- ptr = C_LOC(object_info)
-
- hdferr = H5Oget_info_by_name_c(loc_id, name, namelen, lapl_id_default, ptr)
-
- END SUBROUTINE H5Oget_info_by_name_f
-
-!****s* H5O (F03)/h5oget_info_f_F03
-!
-! NAME
-! h5oget_info_f
-!
-! PURPOSE
-! Retrieves the metadata for an object specified by an identifier.
-!
-! Inputs:
-! object_id - Identifier for target object.
-!
-! Outputs:
-! object_info - Buffer in which to return object information.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! May 11, 2012
-!
-! Fortran2003 Interface:
- SUBROUTINE h5oget_info_f(object_id, object_info, hdferr)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: object_id
- TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- TYPE(C_PTR) :: ptr
-
- INTERFACE
- INTEGER FUNCTION h5oget_info_c(object_id, object_info) &
- BIND(C, NAME='h5oget_info_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- INTEGER(HID_T), INTENT(IN) :: object_id
- TYPE(C_PTR), VALUE :: object_info
- END FUNCTION h5oget_info_c
- END INTERFACE
-
- ptr = C_LOC(object_info)
- hdferr = H5Oget_info_c(object_id, ptr)
-
- END SUBROUTINE H5Oget_info_f
-
-!****s* H5O (F03)/h5oget_info_by_idx_f_F03
-!
-! NAME
-! h5oget_info_by_idx_f
-!
-! PURPOSE
-! Retrieves the metadata for an object, identifying the object by an index position.
-!
-! Inputs:
-! loc_id - File or group identifier specifying location of group
-! in which object is located.
-! group_name - Name of group in which object is located.
-! index_field - Index or field that determines the order.
-! order - Order within field or index.
-! n - Object for which information is to be returned
-!
-! Outputs:
-! object_info - Buffer in which to return object information.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! Optional parameters:
-! lapl_id - Link access property list. (Not currently used.)
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! May 11, 2012
-!
-! Fortran2003 Interface:
- SUBROUTINE h5oget_info_by_idx_f(loc_id, group_name, index_field, order, n, &
- object_info, hdferr, lapl_id)
-
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: group_name
- INTEGER , INTENT(IN) :: index_field
- INTEGER , INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(IN) :: n
- TYPE(h5o_info_t), INTENT(OUT), TARGET :: object_info
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
-!*****
- INTEGER(SIZE_T) :: namelen
- INTEGER(HID_T) :: lapl_id_default
- TYPE(C_PTR) :: ptr
-
- INTERFACE
- INTEGER FUNCTION h5oget_info_by_idx_c(loc_id, group_name, namelen, &
- index_field, order, n, lapl_id_default, object_info) BIND(C, NAME='h5oget_info_by_idx_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr, c_funptr
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: group_name
- INTEGER(SIZE_T) , INTENT(IN) :: namelen
- INTEGER , INTENT(IN) :: index_field
- INTEGER , INTENT(IN) :: order
- INTEGER(HSIZE_T), INTENT(IN) :: n
- INTEGER(HID_T) , INTENT(IN) :: lapl_id_default
- TYPE(C_PTR), VALUE :: object_info
-
- END FUNCTION h5oget_info_by_idx_c
- END INTERFACE
-
- namelen = LEN(group_name)
-
- lapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
-
- ptr = C_LOC(object_info)
- hdferr = H5Oget_info_by_idx_c(loc_id, group_name, namelen, index_field, order, n, lapl_id_default, ptr)
-
- END SUBROUTINE H5Oget_info_by_idx_f
-
-
-!****s* H5O (F03)/h5ovisit_by_name_f_F03
-!
-! NAME
-! h5ovisit_by_name_f
-!
-! PURPOSE
-! Recursively visits all objects starting from a specified object.
-!
-! Inputs:
-! loc_id - Identifier of a file or group.
-! object_name - Name of the object, generally relative to loc_id, that will serve as root of the iteration
-! index_type - Type of index; valid values include:
-! H5_INDEX_NAME_F
-! H5_INDEX_CRT_ORDER_F
-! order - Order in which index is traversed; valid values include:
-! H5_ITER_DEC_F
-! H5_ITER_INC_F
-! H5_ITER_NATIVE_F
-! op - Callback function passing data regarding the group to the calling application
-! op_data - User-defined pointer to data required by the application for its processing of the group
-!
-! Outputs:
-! return_value - Returns the return value of the first operator that returns a positive value, or
-! zero if all members were processed with no operator returning non-zero.
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! Optional parameters:
-! lapl_id - Link access property list identifier.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! November 19, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5ovisit_by_name_f(loc_id, object_name, index_type, order, op, op_data, &
- return_value, hdferr, lapl_id)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: object_name
- INTEGER , INTENT(IN) :: index_type
- INTEGER , INTENT(IN) :: order
-
- TYPE(C_FUNPTR) :: op
- TYPE(C_PTR) :: op_data
- INTEGER , INTENT(OUT) :: return_value
- INTEGER , INTENT(OUT) :: hdferr
- INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: lapl_id
-!*****
-
- INTEGER(SIZE_T) :: namelen
- INTEGER(HID_T) :: lapl_id_default
-
- INTERFACE
- INTEGER FUNCTION h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, &
- op, op_data, lapl_id) BIND(C, NAME='h5ovisit_by_name_c')
- USE, INTRINSIC :: ISO_C_BINDING
- USE H5GLOBAL
- INTEGER(HID_T) , INTENT(IN) :: loc_id
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: object_name
- INTEGER(SIZE_T) :: namelen
- INTEGER , INTENT(IN) :: index_type
- INTEGER , INTENT(IN) :: order
- TYPE(C_FUNPTR) , VALUE :: op
- TYPE(C_PTR) , VALUE :: op_data
- INTEGER(HID_T) , INTENT(IN) :: lapl_id
- END FUNCTION h5ovisit_by_name_c
- END INTERFACE
-
- namelen = LEN(object_name)
-
- lapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(lapl_id)) lapl_id_default = lapl_id
-
- return_value = h5ovisit_by_name_c(loc_id, object_name, namelen, index_type, order, &
- op, op_data, lapl_id_default)
-
- IF(return_value.GE.0)THEN
- hdferr = 0
- ELSE
- hdferr = -1
- END IF
-
- END SUBROUTINE h5ovisit_by_name_f
-
-END MODULE H5O_PROVISIONAL
-
diff --git a/fortran/src/H5Off_F90.f90 b/fortran/src/H5Off_F90.f90
deleted file mode 100644
index 5688c5d..0000000
--- a/fortran/src/H5Off_F90.f90
+++ /dev/null
@@ -1,39 +0,0 @@
-!****h* ROBODoc/H5O (F90)
-!
-! NAME
-! MODULE H5O_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5O functions. It contains
-! the same functions as H5Off_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Off_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! NOTE
-! Currently contains no functions.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5O_PROVISIONAL
-
-END MODULE H5O_PROVISIONAL
diff --git a/fortran/src/H5Pf.c b/fortran/src/H5Pf.c
index fe2f21a..9735f48 100644
--- a/fortran/src/H5Pf.c
+++ b/fortran/src/H5Pf.c
@@ -1,6 +1,6 @@
/****h* H5Pf/H5Pf
* PURPOSE
- * This file contains C stubs for H5P Fortran APIs
+ * This file contains C stubs for H5P Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -23,18 +23,35 @@
#include "H5f90.h"
#include "H5Eprivate.h"
+#include "H5public.h"
+
+#ifdef H5_HAVE_PARALLEL
+
+#include <mpi.h>
+/* Support for C to Fortran translation in MPI */
+#ifndef H5_HAVE_MPI_MULTI_LANG_Comm
+#define MPI_Comm_c2f(comm) (int_f)(comm)
+#define MPI_Comm_f2c(comm) (MPI_Comm)(comm)
+#endif /*MPI Comm*/
+
+#ifndef H5_HAVE_MPI_MULTI_LANG_Info
+#define MPI_Info_c2f(info) (int_f)(info)
+#define MPI_Info_f2c(info) (MPI_Info)(info)
+#endif /*MPI Info*/
+
+#endif /*H5_HAVE_PARALLEL*/
/****if* H5Pf/h5pcreate_c
* NAME
- * h5pcreate_c
+ * h5pcreate_c
* PURPOSE
- * Call H5Pcreate to create a property list
+ * Call H5Pcreate to create a property list
* INPUTS
- * cls - property list class identifier
+ * cls - property list class identifier
* OUTPUTS
- * prp_id - identifier of the created property list
+ * prp_id - identifier of the created property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Wednesday, October 9, 2002
@@ -43,7 +60,7 @@
*/
int_f
-nh5pcreate_c ( hid_t_f *cls, hid_t_f *prp_id )
+h5pcreate_c ( hid_t_f *cls, hid_t_f *prp_id )
/******/
{
hid_t c_prp_id;
@@ -61,22 +78,22 @@ done:
/****if* H5Pf/h5pclose_c
* NAME
- * h5pclose_c
+ * h5pclose_c
* PURPOSE
- * Call H5Pclose to close property lis
+ * Call H5Pclose to close property lis
* INPUTS
- * prp_id - identifier of the property list to be closed
+ * prp_id - identifier of the property list to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
*
* SOURCE
*/
int_f
-nh5pclose_c ( hid_t_f *prp_id )
+h5pclose_c ( hid_t_f *prp_id )
/******/
{
int_f ret_value = 0;
@@ -90,23 +107,23 @@ nh5pclose_c ( hid_t_f *prp_id )
/****if* H5Pf/h5pcopy_c
* NAME
- * h5pcopy_c
+ * h5pcopy_c
* PURPOSE
- * Call H5Pcopy to copy property list
+ * Call H5Pcopy to copy property list
* INPUTS
- * prp_id - identifier of the property list to be copied
+ * prp_id - identifier of the property list to be copied
* OUTPUTS
- * new_prp_id - identifier of the new property list
+ * new_prp_id - identifier of the new property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
*
* SOURCE
*/
int_f
-nh5pcopy_c ( hid_t_f *prp_id , hid_t_f *new_prp_id)
+h5pcopy_c ( hid_t_f *prp_id , hid_t_f *new_prp_id)
/******/
{
hid_t c_new_prp_id;
@@ -124,24 +141,24 @@ done:
/****if* H5Pf/h5pequal_c
* NAME
- * h5pequal_c
+ * h5pequal_c
* PURPOSE
- * Call H5Pequal to check if two property lists are equal
+ * Call H5Pequal to check if two property lists are equal
* INPUTS
- * plist1_id - property list identifier
- * plist2_id - property list identifier
+ * plist1_id - property list identifier
+ * plist2_id - property list identifier
* OUTPUTS
- * c_flag - flag to indicate that lists are eqaul
+ * c_flag - flag to indicate that lists are eqaul
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, September 30, 2002
+ * Monday, September 30, 2002
*
* SOURCE
*/
int_f
-nh5pequal_c ( hid_t_f *plist1_id , hid_t_f *plist2_id, int_f * c_flag)
+h5pequal_c ( hid_t_f *plist1_id , hid_t_f *plist2_id, int_f * c_flag)
/******/
{
htri_t c_c_flag;
@@ -176,7 +193,7 @@ done:
*/
int_f
-nh5pget_class_c ( hid_t_f *prp_id , hid_t_f *classtype)
+h5pget_class_c ( hid_t_f *prp_id , hid_t_f *classtype)
/******/
{
hid_t c_classtype;
@@ -193,15 +210,15 @@ done:
/****if* H5Pf/h5pset_preserve_c
* NAME
- * h5pset_preserve_c
+ * h5pset_preserve_c
* PURPOSE
- * Call H5Pset_preserve to set transfer property for compound
- * datatype
+ * Call H5Pset_preserve to set transfer property for compound
+ * datatype
* INPUTS
- * prp_id - property list identifier
- * flag - TRUE/FALSE flag
+ * prp_id - property list identifier
+ * flag - TRUE/FALSE flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Thursday, February 17, 2000
@@ -209,7 +226,7 @@ done:
*/
int_f
-nh5pset_preserve_c ( hid_t_f *prp_id , int_f *flag)
+h5pset_preserve_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = 0;
@@ -227,16 +244,16 @@ nh5pset_preserve_c ( hid_t_f *prp_id , int_f *flag)
/****if* H5Pf/h5pget_preserve_c
* NAME
- * h5pget_preserve_c
+ * h5pget_preserve_c
* PURPOSE
- * Call H5Pget_preserve to set transfer property for compound
- * datatype
+ * Call H5Pget_preserve to set transfer property for compound
+ * datatype
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * flag - TRUE/FALSE flag
+ * flag - TRUE/FALSE flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Thursday, February 17, 2000
@@ -244,7 +261,7 @@ nh5pset_preserve_c ( hid_t_f *prp_id , int_f *flag)
*/
int_f
-nh5pget_preserve_c ( hid_t_f *prp_id , int_f *flag)
+h5pget_preserve_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = 0;
@@ -260,22 +277,22 @@ nh5pget_preserve_c ( hid_t_f *prp_id , int_f *flag)
/****if* H5Pf/h5pset_deflate_c
* NAME
- * h5pset_deflate_c
+ * h5pset_deflate_c
* PURPOSE
- * Call H5Pset_deflate to set deflate level
+ * Call H5Pset_deflate to set deflate level
* INPUTS
- * prp_id - property list identifier
- * level - level of deflation
+ * prp_id - property list identifier
+ * level - level of deflation
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* SOURCE
*/
int_f
-nh5pset_deflate_c ( hid_t_f *prp_id , int_f *level)
+h5pset_deflate_c ( hid_t_f *prp_id , int_f *level)
/******/
{
int ret_value = 0;
@@ -294,24 +311,24 @@ nh5pset_deflate_c ( hid_t_f *prp_id , int_f *level)
/****if* H5Pf/h5pset_chunk_c
* NAME
- * h5pset_chunk_c
+ * h5pset_chunk_c
* PURPOSE
- * Call H5Pset_chunk to set the sizes of chunks for a chunked
- * layout dataset
+ * Call H5Pset_chunk to set the sizes of chunks for a chunked
+ * layout dataset
* INPUTS
- * prp_id - property list identifier
- * rank - number of dimensions of each chunk
- * dims - array of the size of each chunk
+ * prp_id - property list identifier
+ * rank - number of dimensions of each chunk
+ * dims - array of the size of each chunk
* RETURNS
- * 0 on success, -1 on failure
- * Saturday, August 14, 1999
+ * 0 on success, -1 on failure
+ * Saturday, August 14, 1999
* AUTHOR
* Elena Pourmal
* SOURCE
*/
int_f
-nh5pset_chunk_c ( hid_t_f *prp_id, int_f *rank, hsize_t_f *dims )
+h5pset_chunk_c ( hid_t_f *prp_id, int_f *rank, hsize_t_f *dims )
/******/
{
int ret_value = -1;
@@ -338,24 +355,24 @@ DONE:
/****if* H5Pf/h5pget_chunk_c
* NAME
- * h5pget_chunk_c
+ * h5pget_chunk_c
* PURPOSE
- * Call H5Pget_chunk to get the sizes of chunks for a chunked
- * layout dataset for at list max_rank number of dimensions
+ * Call H5Pget_chunk to get the sizes of chunks for a chunked
+ * layout dataset for at list max_rank number of dimensions
* INPUTS
- * prp_id - property list identifier
- * max rank - maximum number of dimensions to return
- * dims - array of the size of each chunk
+ * prp_id - property list identifier
+ * max rank - maximum number of dimensions to return
+ * dims - array of the size of each chunk
* RETURNS
- * number of chunk's dimnesion on success, -1 on failure
- * Saturday, August 14, 1999
+ * number of chunk's dimnesion on success, -1 on failure
+ * Saturday, August 14, 1999
* AUTHOR
* Elena Pourmal
* SOURCE
*/
int_f
-nh5pget_chunk_c ( hid_t_f *prp_id, int_f *max_rank, hsize_t_f *dims )
+h5pget_chunk_c ( hid_t_f *prp_id, int_f *max_rank, hsize_t_f *dims )
/******/
{
int ret_value = -1;
@@ -377,36 +394,6 @@ nh5pget_chunk_c ( hid_t_f *prp_id, int_f *max_rank, hsize_t_f *dims )
return ret_value;
}
-/****if* H5Pf/h5pset_fill_valuec_c
- * NAME
- * h5pset_fill_valuec_c
- * PURPOSE
- * Call h5pset_fill_value_c to a character fill value
- * INPUTS
- * prp_id - property list identifier
- * type_id - datatype identifier (fill value is of type type_id)
- * fillvalue - character value
- * RETURNS
- * 0 on success, -1 on failure
- * Saturday, August 14, 1999
- * AUTHOR
- * Elena Pourmal
- * SOURCE
-*/
-int_f
-nh5pset_fill_valuec_c (hid_t_f *prp_id, hid_t_f *type_id, _fcd fillvalue)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5pset_fill_value_c function.
- */
- ret_value = h5pset_fill_value_c(prp_id, type_id, _fcdtocp(fillvalue));
-
- return ret_value;
-}
-
/****if* H5Pf/h5pset_fill_value_c
* NAME
* h5pset_fill_value_c
@@ -444,68 +431,6 @@ h5pset_fill_value_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
return ret_value;
}
-int_f
-nh5pset_fill_value_integer_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-/******/
-{
- /*
- * Call h5pset_fill_value_c function.
- */
- return h5pset_fill_value_c(prp_id, type_id, fillvalue);
-}
-
-int_f
-nh5pset_fill_value_real_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-{
- /*
- * Call h5pset_fill_value_c function.
- */
- return h5pset_fill_value_c(prp_id, type_id, fillvalue);
-}
-
-int_f
-nh5pset_fill_value_double_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-{
- /*
- * Call h5pset_fill_value_c function.
- */
- return h5pset_fill_value_c(prp_id, type_id, fillvalue);
-}
-
-/****if* H5Pf/h5pget_fill_valuec_c
- * NAME
- * h5pget_fill_valuec_c
- * PURPOSE
- * Call h5pget_fill_value_c to a character fill value
- * INPUTS
- * prp_id - property list identifier
- * type_id - datatype identifier (fill value is of type type_id)
- * fillvalue - character value
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Saturday, August 14, 1999
- * HISTORY
- * Fixed wrong call to C wrapper, was nh5pset_fill_value_c, changed
- * to nh5pget_fill_value_c. MSB - 7/21/2014
- *
- * SOURCE
-*/
-int_f
-nh5pget_fill_valuec_c (hid_t_f *prp_id, hid_t_f *type_id, _fcd fillvalue)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5pget_fill_value_c function.
- */
- ret_value = h5pget_fill_value_c(prp_id, type_id, _fcdtocp(fillvalue));
-
- return ret_value;
-}
-
/****if* H5Pf/h5pget_fill_value_c
* NAME
* h5pget_fill_value_c
@@ -543,57 +468,30 @@ h5pget_fill_value_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
return ret_value;
}
-int_f
-nh5pget_fill_value_integer_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-{
- /*
- * Call h5pget_fill_value_c function.
- */
- return h5pget_fill_value_c(prp_id, type_id, fillvalue);
-}
-
-int_f
-nh5pget_fill_value_real_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-{
- /*
- * Call h5pget_fill_value_c function.
- */
- return h5pget_fill_value_c(prp_id, type_id, fillvalue);
-}
-
-int_f
-nh5pget_fill_value_double_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue)
-{
- /*
- * Call h5pget_fill_value_c function.
- */
- return h5pget_fill_value_c(prp_id, type_id, fillvalue);
-}
-
/****if* H5Pf/h5pget_version_c
* NAME
- * h5pget_version_c
+ * h5pget_version_c
* PURPOSE
- * Call H5Pget_version to get the version information
- * of various objects for a file creation property list
+ * Call H5Pget_version to get the version information
+ * of various objects for a file creation property list
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * boot - array to put boot block version number
- * freelist - array to put global freelist version number
- * stab - array to put symbol table version number
- * shhdr - array to put shared object header version number
+ * boot - array to put boot block version number
+ * freelist - array to put global freelist version number
+ * stab - array to put symbol table version number
+ * shhdr - array to put shared object header version number
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* HISTORY
- * Removed extra length parameters EP 7/6/00
+ * Removed extra length parameters EP 7/6/00
* SOURCE
*/
int_f
-nh5pget_version_c (hid_t_f *prp_id, int_f * boot,int_f * freelist, int_f * stab, int_f *shhdr)
+h5pget_version_c (hid_t_f *prp_id, int_f * boot,int_f * freelist, int_f * stab, int_f *shhdr)
/******/
{
int ret_value = -1;
@@ -630,22 +528,22 @@ nh5pget_version_c (hid_t_f *prp_id, int_f * boot,int_f * freelist, int_f * stab,
/****if* H5Pf/h5pget_userblock_c
* NAME
- * h5pget_userblock_c
+ * h5pget_userblock_c
* PURPOSE
- * Call H5Pget_userblock to get the size of a user block in
- * a file creation property list
+ * Call H5Pget_userblock to get the size of a user block in
+ * a file creation property list
* INPUTS
- * prp_id - property list identifier
- * Outputs size - Size of the user-block in bytes
+ * prp_id - property list identifier
+ * Outputs size - Size of the user-block in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* SOURCE
*/
int_f
-nh5pget_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
+h5pget_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
/******/
{
int ret_value = -1;
@@ -668,22 +566,22 @@ nh5pget_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
/****if* H5Pf/h5pset_userblock_c
* NAME
- * h5pset_userblock_c
+ * h5pset_userblock_c
* PURPOSE
- * Call H5Pset_userblock to set the size of a user block in
- * a file creation property list
+ * Call H5Pset_userblock to set the size of a user block in
+ * a file creation property list
* INPUTS
- * prp_id - property list identifier
- * size - Size of the user-block in bytes
+ * prp_id - property list identifier
+ * size - Size of the user-block in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* SOURCE
*/
int_f
-nh5pset_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
+h5pset_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
/******/
{
int ret_value = -1;
@@ -705,25 +603,25 @@ nh5pset_userblock_c (hid_t_f *prp_id, hsize_t_f * size)
/****if* H5Pf/h5pget_sizes_c
* NAME
- * h5pget_sizes_c
+ * h5pget_sizes_c
* PURPOSE
- * Call H5Pget_sizes to get the size of the offsets
- * and lengths used in an HDF5 file
+ * Call H5Pget_sizes to get the size of the offsets
+ * and lengths used in an HDF5 file
* INPUTS
- * prp_id - property list identifier
- * Outputs sizeof_addr - Size of an object offset in bytes
- * sizeof_size - Size of an object length in bytes
+ * prp_id - property list identifier
+ * Outputs sizeof_addr - Size of an object offset in bytes
+ * sizeof_size - Size of an object length in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* HISTORY
- * Deleted extra length parameters. EP 6/7/00
+ * Deleted extra length parameters. EP 6/7/00
* SOURCE
*/
int_f
-nh5pget_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size)
+h5pget_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size)
/******/
{
int ret_value = -1;
@@ -748,24 +646,24 @@ nh5pget_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size
/****if* H5Pf/h5pset_sizes_c
* NAME
- * h5pset_sizes_c
+ * h5pset_sizes_c
* PURPOSE
- * Call H5Pset_sizes to set the size of the offsets
+ * Call H5Pset_sizes to set the size of the offsets
* INPUTS
- * prp_id - property list identifier
- * sizeof_addr - Size of an object offset in bytes
- * sizeof_size - Size of an object length in bytes
+ * prp_id - property list identifier
+ * sizeof_addr - Size of an object offset in bytes
+ * sizeof_size - Size of an object length in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size)
+h5pset_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size)
/******/
{
int ret_value = -1;
@@ -788,23 +686,23 @@ nh5pset_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size
/****if* H5Pf/h5pset_sym_k_c
* NAME
- * h5pset_sym_k_c
+ * h5pset_sym_k_c
* PURPOSE
- * Call H5Pset_sym_k to set the size of parameters used
- * to control the symbol table node
+ * Call H5Pset_sym_k to set the size of parameters used
+ * to control the symbol table node
* INPUTS
- * prp_id - property list identifier
- * ik - Symbol table tree rank
- * lk - Symbol table node size
+ * prp_id - property list identifier
+ * ik - Symbol table tree rank
+ * lk - Symbol table node size
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* SOURCE
*/
int_f
-nh5pset_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
+h5pset_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
/******/
{
int ret_value = -1;
@@ -828,26 +726,26 @@ nh5pset_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
/****if* H5Pf/h5pget_sym_k_c
* NAME
- * h5pget_sym_k_c
+ * h5pget_sym_k_c
* PURPOSE
- * Call H5Pget_sym_k to get the size of parameters used
- * to control the symbol table node
+ * Call H5Pget_sym_k to get the size of parameters used
+ * to control the symbol table node
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * ik - Symbol table tree rank
- * lk - Symbol table node size
+ * ik - Symbol table tree rank
+ * lk - Symbol table node size
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
+h5pget_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
/******/
{
int ret_value = -1;
@@ -870,24 +768,24 @@ nh5pget_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk)
/****if* H5Pf/h5pset_istore_k_c
* NAME
- * h5pset_istore_k_c
+ * h5pset_istore_k_c
* PURPOSE
- * Call H5Pset_istore_k to set the size of the parameter
- * used to control the B-trees for indexing chunked datasets
+ * Call H5Pset_istore_k to set the size of the parameter
+ * used to control the B-trees for indexing chunked datasets
* INPUTS
- * prp_id - property list identifier
- * ik - Symbol table tree rank
+ * prp_id - property list identifier
+ * ik - Symbol table tree rank
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_istore_k_c (hid_t_f *prp_id, int_f* ik)
+h5pset_istore_k_c (hid_t_f *prp_id, int_f* ik)
/******/
{
int ret_value = -1;
@@ -909,25 +807,25 @@ nh5pset_istore_k_c (hid_t_f *prp_id, int_f* ik)
/****if* H5Pf/h5pget_istore_k_c
* NAME
- * h5pget_istore_k_c
+ * h5pget_istore_k_c
* PURPOSE
- * Call H5Pget_istore_k to get the size of parameters used
- * to control the B-trees for indexing chunked datasets
+ * Call H5Pget_istore_k to get the size of parameters used
+ * to control the B-trees for indexing chunked datasets
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * ik - Symbol table tree rank
+ * ik - Symbol table tree rank
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_istore_k_c (hid_t_f *prp_id, int_f* ik)
+h5pget_istore_k_c (hid_t_f *prp_id, int_f* ik)
/******/
{
int ret_value = -1;
@@ -948,24 +846,24 @@ nh5pget_istore_k_c (hid_t_f *prp_id, int_f* ik)
/****if* H5Pf/h5pget_driver_c
* NAME
- * h5pget_driver_c
+ * h5pget_driver_c
* PURPOSE
- * Call H5Pget_driver to get low-level file driver identifier
+ * Call H5Pget_driver to get low-level file driver identifier
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * driver - low-level file driver identifier
+ * driver - low-level file driver identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_driver_c (hid_t_f *prp_id, hid_t_f* driver)
+h5pget_driver_c (hid_t_f *prp_id, hid_t_f* driver)
/******/
{
int ret_value = -1;
@@ -986,23 +884,23 @@ DONE:
/****if* H5Pf/h5pset_fapl_stdio_c
* NAME
- * h5pset_fapl_stdio_c
+ * h5pset_fapl_stdio_c
* PURPOSE
- * Call H5Pset_stdio to set the low level file driver to
- * use the functions declared in the stdio.h
+ * Call H5Pset_stdio to set the low level file driver to
+ * use the functions declared in the stdio.h
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 7, 2001
+ * March 7, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_stdio_c (hid_t_f *prp_id)
+h5pset_fapl_stdio_c (hid_t_f *prp_id)
/******/
{
int ret_value = -1;
@@ -1020,26 +918,26 @@ nh5pset_fapl_stdio_c (hid_t_f *prp_id)
#ifdef NO_SUCH_F90_FUNCTION
/****if* H5Pf/h5pget_fapl_stdio_c
* NAME
- * h5pget_fapl_stdio_c
+ * h5pget_fapl_stdio_c
* PURPOSE
- * Call H5Pget_fapl_stdio to determine whther the low level file driver
- * uses the functions declared in the stdio.h
+ * Call H5Pget_fapl_stdio to determine whther the low level file driver
+ * uses the functions declared in the stdio.h
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * io - value indicates whether the file driver uses
- * the functions declared in the stdio.h
+ * io - value indicates whether the file driver uses
+ * the functions declared in the stdio.h
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_stdio_c (hid_t_f *prp_id, int_f* io)
+h5pget_fapl_stdio_c (hid_t_f *prp_id, int_f* io)
/******/
{
int ret_value = -1;
@@ -1060,23 +958,23 @@ nh5pget_fapl_stdio_c (hid_t_f *prp_id, int_f* io)
/****if* H5Pf/h5pset_fapl_sec2_c
* NAME
- * h5pset_fapl_sec2_c
+ * h5pset_fapl_sec2_c
* PURPOSE
- * Call H5Pset_fapl_sec2 to set the low level file driver to
- * use the functions declared in the unistd.h
+ * Call H5Pset_fapl_sec2 to set the low level file driver to
+ * use the functions declared in the unistd.h
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_sec2_c (hid_t_f *prp_id)
+h5pset_fapl_sec2_c (hid_t_f *prp_id)
/******/
{
int ret_value = -1;
@@ -1095,26 +993,26 @@ nh5pset_fapl_sec2_c (hid_t_f *prp_id)
#ifdef NO_SUCH_F90_FUNCTION
/****if* H5Pf/h5pget_fapl_sec2_c
* NAME
- * h5pget_fapl_sec2_c
+ * h5pget_fapl_sec2_c
* PURPOSE
- * Call H5Pget_fapl_stdio to determine whther the low level file driver
- * uses the functions declared in the unistd.h
+ * Call H5Pget_fapl_stdio to determine whther the low level file driver
+ * uses the functions declared in the unistd.h
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * sec2 - value indicates whether the file driver uses
- * the functions declared in the unistd.h
+ * sec2 - value indicates whether the file driver uses
+ * the functions declared in the unistd.h
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_sec2_c (hid_t_f *prp_id, int_f* sec2)
+h5pget_fapl_sec2_c (hid_t_f *prp_id, int_f* sec2)
/******/
{
int ret_value = -1;
@@ -1134,25 +1032,25 @@ nh5pget_fapl_sec2_c (hid_t_f *prp_id, int_f* sec2)
/****if* H5Pf/h5pset_alignment_c
* NAME
- * h5pset_alignment_c
+ * h5pset_alignment_c
* PURPOSE
- * Call H5Pset_alignment to set alignment properties of
- * a file access property list
+ * Call H5Pset_alignment to set alignment properties of
+ * a file access property list
* INPUTS
- * prp_id - property list identifier
- * threshold - Threshold value
- * alignment - Alignment value
+ * prp_id - property list identifier
+ * threshold - Threshold value
+ * alignment - Alignment value
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment)
+h5pset_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment)
/******/
{
int ret_value = -1;
@@ -1173,25 +1071,25 @@ nh5pset_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment
/****if* H5Pf/h5pget_alignment_c
* NAME
- * h5pget_alignment_c
+ * h5pget_alignment_c
* PURPOSE
- * Call H5Pget_alignment to get alignment properties of
- * a file access property list
+ * Call H5Pget_alignment to get alignment properties of
+ * a file access property list
* INPUTS
- * prp_id - property list identifier
- * threshold - Threshold value
- * alignment - Alignment value
+ * prp_id - property list identifier
+ * threshold - Threshold value
+ * alignment - Alignment value
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment)
+h5pget_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment)
/******/
{
int ret_value = -1;
@@ -1213,26 +1111,26 @@ nh5pget_alignment_c (hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment
/****if* H5Pf/h5pset_fapl_core_c
* NAME
- * h5pset_fapl_core_c
+ * h5pset_fapl_core_c
* PURPOSE
- * Call H5Pset_fapl_core to set the low-level file driver
- * to use malloc() and free()
+ * Call H5Pset_fapl_core to set the low-level file driver
+ * to use malloc() and free()
* INPUTS
- * prp_id - property list identifier
- * increment - File block size in bytes
- * flag - Boolean flag indicating whether to write the
- * file contents to disk when the file is closed.
+ * prp_id - property list identifier
+ * increment - File block size in bytes
+ * flag - Boolean flag indicating whether to write the
+ * file contents to disk when the file is closed.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
+h5pset_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
/******/
{
int ret_value = -1;
@@ -1255,24 +1153,24 @@ nh5pset_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
/****if* H5Pf/h5pget_fapl_core_c
* NAME
- * h5pget_fapl_core_c
+ * h5pget_fapl_core_c
* PURPOSE
- * Call H5Pget_fapl_core to determine whether the file access
- * property list is set to the core drive
+ * Call H5Pget_fapl_core to determine whether the file access
+ * property list is set to the core drive
* INPUTS
- * prp_id - property list identifier
- * Outputs increment - File block size in bytes
+ * prp_id - property list identifier
+ * Outputs increment - File block size in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
+h5pget_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
/******/
{
int ret_value = -1;
@@ -1295,26 +1193,26 @@ nh5pget_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag)
/****if* H5Pf/h5pset_fapl_family_c
* NAME
- * h5pset_fapl_family_c
+ * h5pset_fapl_family_c
* PURPOSE
- * Call H5Pset_fapl_family to set the file access properties list
- * to the family driver
+ * Call H5Pset_fapl_family to set the file access properties list
+ * to the family driver
* INPUTS
- * prp_id - property list identifier
- * memb_size - Logical size, in bytes, of each family member.
- * memb_plist - Identifier of the file access property list
- * for each member of the family
+ * prp_id - property list identifier
+ * memb_size - Logical size, in bytes, of each family member.
+ * memb_plist - Identifier of the file access property list
+ * for each member of the family
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist )
+h5pset_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist )
/******/
{
int ret_value = -1;
@@ -1336,26 +1234,26 @@ nh5pset_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist
/****if* H5Pf/h5pget_fapl_family_c
* NAME
- * h5pget_fapl_family_c
+ * h5pget_fapl_family_c
* PURPOSE
- * Call H5Pget_fapl_family to determine whether the file access
- * property list is set to the family driver
+ * Call H5Pget_fapl_family to determine whether the file access
+ * property list is set to the family driver
* INPUTS
- * prp_id - property list identifier
- * memb_size - Logical size, in bytes, of each family member.
- * memb_plist - Identifier of the file access property list
- * for each member of the family
+ * prp_id - property list identifier
+ * memb_size - Logical size, in bytes, of each family member.
+ * memb_plist - Identifier of the file access property list
+ * for each member of the family
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist)
+h5pget_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist)
/******/
{
int ret_value = -1;
@@ -1378,29 +1276,29 @@ nh5pget_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist
/****if* H5Pf/h5pset_cache_c
* NAME
- * h5pset_cache_c
+ * h5pset_cache_c
* PURPOSE
- * Call H5Pset_cache to set he number of elements in
- * the meta data cache and the total number of bytes in
- * the raw data chunk cache
+ * Call H5Pset_cache to set he number of elements in
+ * the meta data cache and the total number of bytes in
+ * the raw data chunk cache
* INPUTS
- * prp_id - property list identifier
- * mdc_nelmts - Number of elements (objects) in the
- * meta data cache
- * rdcc_nbytes - Total size of the raw data chunk cache, in bytes
- * rdcc_w0 - Preemption policy
+ * prp_id - property list identifier
+ * mdc_nelmts - Number of elements (objects) in the
+ * meta data cache
+ * rdcc_nbytes - Total size of the raw data chunk cache, in bytes
+ * rdcc_w0 - Preemption policy
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
- * Changed the type of the rdcc_w0 parameter to be real_f EP 7/7/00
- * instead of double
+ * Changed the type of the rdcc_w0 parameter to be real_f EP 7/7/00
+ * instead of double
* SOURCE
*/
int_f
-nh5pset_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes , real_f* rdcc_w0 )
+h5pset_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes , real_f* rdcc_w0 )
/******/
{
int ret_value = -1;
@@ -1427,32 +1325,32 @@ nh5pset_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size
/****if* H5Pf/h5pget_cache_c
* NAME
- * h5pget_cache_c
+ * h5pget_cache_c
* PURPOSE
- * Call H5Pget_cache to get he number of elements in
- * the meta data cache and the total number of bytes in
- * the raw data chunk cache
+ * Call H5Pget_cache to get he number of elements in
+ * the meta data cache and the total number of bytes in
+ * the raw data chunk cache
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * mdc_nelmts - Number of elements (objects) in the
- * meta data cache
- * rdcc_nelmts - Number of elements in the raw data chunk
- * rdcc_nbytes - Total size of the raw data chunk cache, in bytes
- * rdcc_w0 - Preemption policy
+ * mdc_nelmts - Number of elements (objects) in the
+ * meta data cache
+ * rdcc_nelmts - Number of elements in the raw data chunk
+ * rdcc_nbytes - Total size of the raw data chunk cache, in bytes
+ * rdcc_w0 - Preemption policy
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
- * Changed type of the rdcc_w0 parameter to be real_f instead of double
- * Changed type of the rdcc_nelmts parameter to be int_f.
+ * Changed type of the rdcc_w0 parameter to be real_f instead of double
+ * Changed type of the rdcc_nelmts parameter to be int_f.
* EIP October 10, 2003
* SOURCE
*/
int_f
-nh5pget_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes , real_f* rdcc_w0)
+h5pget_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes , real_f* rdcc_w0)
/******/
{
int ret_value = -1;
@@ -1479,29 +1377,29 @@ nh5pget_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_
/****if* H5Pf/h5pset_fapl_split_c
* NAME
- * h5pset_fapl_split_c
+ * h5pset_fapl_split_c
* PURPOSE
- * Call H5Pset_fapl_split to set he low-level driver to split meta data
- * from raw data
+ * Call H5Pset_fapl_split to set he low-level driver to split meta data
+ * from raw data
* INPUTS
- * prp_id - property list identifier
- * meta_len - Length of meta_ext
- * meta_ext - Name of the extension for the metafile filename.
- * meta_plist - Identifier of the meta file access property list
- * raw_len - Length of raw _ext
- * raw_ext - Name of the extension for the raw file filename.
- * raw_plist - Identifier of the raw file access property list
+ * prp_id - property list identifier
+ * meta_len - Length of meta_ext
+ * meta_ext - Name of the extension for the metafile filename.
+ * meta_plist - Identifier of the meta file access property list
+ * raw_len - Length of raw _ext
+ * raw_ext - Name of the extension for the raw file filename.
+ * raw_plist - Identifier of the raw file access property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9, 2001
+ * March 9, 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_split_c(hid_t_f *prp_id, int_f* meta_len, _fcd meta_ext, hid_t_f* meta_plist, int_f* raw_len, _fcd raw_ext, hid_t_f * raw_plist)
+h5pset_fapl_split_c(hid_t_f *prp_id, int_f* meta_len, _fcd meta_ext, hid_t_f* meta_plist, int_f* raw_len, _fcd raw_ext, hid_t_f * raw_plist)
/******/
{
int ret_value = -1;
@@ -1540,32 +1438,32 @@ DONE:
#ifdef NO_SUCH_F90_FUNCTION
/****if* H5Pf/h5pget_fapl_split_c
* NAME
- * h5pget_fapl_split_c
+ * h5pget_fapl_split_c
* PURPOSE
- * Call H5Pget_fapl_split to determine whether the file access
- * property list is set to the split driver
+ * Call H5Pget_fapl_split to determine whether the file access
+ * property list is set to the split driver
* INPUTS
- * prp_id - property list identifier
- * meta_ext_size - Number of characters of the meta file extension
- * to be copied to the meta_ext buffer
- * raw_ext_size - Number of characters of the raw file extension
- * to be copied to the raw_ext buffer
+ * prp_id - property list identifier
+ * meta_ext_size - Number of characters of the meta file extension
+ * to be copied to the meta_ext buffer
+ * raw_ext_size - Number of characters of the raw file extension
+ * to be copied to the raw_ext buffer
*OUTPUT
- * meta_ext - Name of the extension for the metafile filename.
- * meta_plist - Identifier of the meta file access property list
- * raw_ext - Name of the extension for the raw file filename.
- * raw_plist - Identifier of the raw file access property list
+ * meta_ext - Name of the extension for the metafile filename.
+ * meta_plist - Identifier of the meta file access property list
+ * raw_ext - Name of the extension for the raw file filename.
+ * raw_plist - Identifier of the raw file access property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 9 , 2001
+ * March 9 , 2001
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_split_c(hid_t_f *prp_id, size_t_f* meta_ext_size , _fcd meta_ext, hid_t_f* meta_plist, size_t_f* raw_ext_size, _fcd raw_ext, hid_t_f * raw_plist)
+h5pget_fapl_split_c(hid_t_f *prp_id, size_t_f* meta_ext_size , _fcd meta_ext, hid_t_f* meta_plist, size_t_f* raw_ext_size, _fcd raw_ext, hid_t_f * raw_plist)
/******/
{
int ret_value = -1;
@@ -1603,25 +1501,25 @@ nh5pget_fapl_split_c(hid_t_f *prp_id, size_t_f* meta_ext_size , _fcd meta_ext, h
/****if* H5Pf/h5pset_gc_references_c
* NAME
- * h5pset_gc_references_c
+ * h5pset_gc_references_c
* PURPOSE
- * Call H5Pset_gc_references to set garbage
- * collecting references flag
+ * Call H5Pset_gc_references to set garbage
+ * collecting references flag
* INPUTS
- * prp_id - property list identifier
- * gc_reference - flag for garbage collecting references
- * for the file
+ * prp_id - property list identifier
+ * gc_reference - flag for garbage collecting references
+ * for the file
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
+h5pset_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
/******/
{
int ret_value = -1;
@@ -1643,25 +1541,25 @@ nh5pset_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
/****if* H5Pf/h5pget_gc_references_c
* NAME
- * h5pget_gc_references_c
+ * h5pget_gc_references_c
* PURPOSE
- * Call H5Pget_gc_references to set garbage
- * collecting references flag
+ * Call H5Pget_gc_references to set garbage
+ * collecting references flag
* INPUTS
- * prp_id - property list identifier
- * Outputs gc_reference - flag for garbage collecting references
- * for the file
+ * prp_id - property list identifier
+ * Outputs gc_reference - flag for garbage collecting references
+ * for the file
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
+h5pget_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
/******/
{
int ret_value = -1;
@@ -1681,24 +1579,24 @@ nh5pget_gc_references_c (hid_t_f *prp_id, int_f* gc_references)
/****if* H5Pf/h5pset_layout_c
* NAME
- * h5pset_layout_c
+ * h5pset_layout_c
* PURPOSE
- * Call H5Pset_layout to the type of storage used
- * store the raw data for a dataset
+ * Call H5Pset_layout to the type of storage used
+ * store the raw data for a dataset
* INPUTS
- * prp_id - property list identifier
- * layout - Type of storage layout for raw data.
+ * prp_id - property list identifier
+ * layout - Type of storage layout for raw data.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_layout_c (hid_t_f *prp_id, int_f* layout)
+h5pset_layout_c (hid_t_f *prp_id, int_f* layout)
/******/
{
int ret_value = -1;
@@ -1719,25 +1617,25 @@ nh5pset_layout_c (hid_t_f *prp_id, int_f* layout)
/****if* H5Pf/h5pget_layout_c
* NAME
- * h5pget_layout_c
+ * h5pget_layout_c
* PURPOSE
- * Call H5Pget_layout to the type of storage used
- * store the raw data for a dataset
+ * Call H5Pget_layout to the type of storage used
+ * store the raw data for a dataset
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * layout - Type of storage layout for raw data.
+ * layout - Type of storage layout for raw data.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_layout_c (hid_t_f *prp_id, int_f* layout)
+h5pget_layout_c (hid_t_f *prp_id, int_f* layout)
/******/
{
int ret_value = -1;
@@ -1756,27 +1654,27 @@ nh5pget_layout_c (hid_t_f *prp_id, int_f* layout)
/****if* H5Pf/h5pset_filter_c
* NAME
- * h5pset_filter_c
+ * h5pset_filter_c
* PURPOSE
- * Call H5Pset_filter to add a filter to the filter pipeline.
+ * Call H5Pset_filter to add a filter to the filter pipeline.
* INPUTS
- * prp_id - property list identifier
- * filter - Filter to be added to the pipeline.
- * flags - Bit vector specifying certain general
- * properties of the filter.
- * cd_nelmts - Number of elements in cd_values.
- * cd_values - Auxiliary data for the filter.
+ * prp_id - property list identifier
+ * filter - Filter to be added to the pipeline.
+ * flags - Bit vector specifying certain general
+ * properties of the filter.
+ * cd_nelmts - Number of elements in cd_values.
+ * cd_values - Auxiliary data for the filter.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, February 23, 2000
+ * Wednesday, February 23, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values )
+h5pset_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values )
/******/
{
int ret_value = -1;
@@ -1824,7 +1722,7 @@ DONE:
* SOURCE
*/
int_f
-nh5pget_nfilters_c (hid_t_f *prp_id, int_f* nfilters)
+h5pget_nfilters_c (hid_t_f *prp_id, int_f* nfilters)
/******/
{
int ret_value = -1;
@@ -1844,30 +1742,30 @@ nh5pget_nfilters_c (hid_t_f *prp_id, int_f* nfilters)
}
/*----------------------------------------------------------------------------
- * Name: h5pget_filter_c
- * Purpose: Call H5Pget_filter2 to get information about a filter
- * in a pipeline
- * Inputs: prp_id - property list identifier
- * filter_number - Sequence number within the filter
- * pipeline of the filter for which
- * information is sought.
- * namelen - Anticipated number of characters in name.
- *Outputs: flags - Bit vector specifying certain general
- * properties of the filter.
- * cd_nelmts - Number of elements in cd_value
- * cd_values - Auxiliary data for the filter.
- * name - Name of the filter
- * filter_id - filter identification number
- * Returns: 0 on success, -1 on failure
- * Programmer: Xiangyang Su
- * Friday, February 25, 2000
- * Modifications:
- * Since cd_nelmts has IN/OUT attributes, fixed the input and
- * returned value of cd_nelmnts to satisfy this specification.
+ * Name: h5pget_filter_c
+ * Purpose: Call H5Pget_filter2 to get information about a filter
+ * in a pipeline
+ * Inputs: prp_id - property list identifier
+ * filter_number - Sequence number within the filter
+ * pipeline of the filter for which
+ * information is sought.
+ * namelen - Anticipated number of characters in name.
+ * Outputs: flags - Bit vector specifying certain general
+ * properties of the filter.
+ * cd_nelmts - Number of elements in cd_value
+ * cd_values - Auxiliary data for the filter.
+ * name - Name of the filter
+ * filter_id - filter identification number
+ * Returns: 0 on success, -1 on failure
+ * Programmer: Xiangyang Su
+ * Friday, February 25, 2000
+ * Modifications:
+ * Since cd_nelmts has IN/OUT attributes, fixed the input and
+ * returned value of cd_nelmnts to satisfy this specification.
* MSB January 27, 2009
*---------------------------------------------------------------------------*/
int_f
-nh5pget_filter_c(hid_t_f *prp_id, int_f* filter_number, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name, int_f* filter_id)
+h5pget_filter_c(hid_t_f *prp_id, int_f* filter_number, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name, int_f* filter_id)
/******/
{
unsigned int c_flags;
@@ -1921,7 +1819,7 @@ DONE:
* name - Name of an external file
* namelen - length of name
* offset - Offset, in bytes, from the beginning of the file
- * to the location in the file where the data starts.
+ * to the location in the file where the data starts.
* bytes - Number of bytes reserved in the file for the data.
* RETURNS
* 0 on success, -1 on failure
@@ -1934,7 +1832,7 @@ DONE:
* SOURCE
*/
int_f
-nh5pset_external_c (hid_t_f *prp_id, _fcd name, int_f* namelen, off_t_f* offset, hsize_t_f*bytes)
+h5pset_external_c (hid_t_f *prp_id, _fcd name, int_f* namelen, off_t_f* offset, hsize_t_f*bytes)
/******/
{
int ret_value = -1;
@@ -1967,25 +1865,25 @@ DONE:
/****if* H5Pf/h5pget_external_count_c
* NAME
- * h5pget_external_count_c
+ * h5pget_external_count_c
* PURPOSE
- * Call H5Pget_external_count to get the number of external
- * files for the specified dataset.
+ * Call H5Pget_external_count to get the number of external
+ * files for the specified dataset.
* INPUTS
- * prp_id - property list identifier
+ * prp_id - property list identifier
* OUTPUTS
- * count - number of external files
+ * count - number of external files
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_external_count_c (hid_t_f *prp_id, int_f* count)
+h5pget_external_count_c (hid_t_f *prp_id, int_f* count)
/******/
{
int ret_value = -1;
@@ -2008,14 +1906,14 @@ nh5pget_external_count_c (hid_t_f *prp_id, int_f* count)
* PURPOSE
* Call H5Pget_external to get nformation about an external file.
* INPUTS
- * prp_id - property list identifier
- * name_size - length of name
- * idx - External file index.
+ * prp_id - property list identifier
+ * name_size - length of name
+ * idx - External file index.
* OUTPUT
- * name - Name of an external file
- * offset - Offset, in bytes, from the beginning of the file
- * to the location in the file where the data starts.
- * bytes - Number of bytes reserved in the file for the data.
+ * name - Name of an external file
+ * offset - Offset, in bytes, from the beginning of the file
+ * to the location in the file where the data starts.
+ * bytes - Number of bytes reserved in the file for the data.
* RETURNS
* on success, -1 on failure
* AUTHOR
@@ -2027,7 +1925,7 @@ nh5pget_external_count_c (hid_t_f *prp_id, int_f* count)
* SOURCE
*/
int_f
-nh5pget_external_c(hid_t_f *prp_id, int_f *idx, size_t_f* name_size, _fcd name, off_t_f* offset, hsize_t_f*bytes)
+h5pget_external_c(hid_t_f *prp_id, int_f *idx, size_t_f* name_size, _fcd name, off_t_f* offset, hsize_t_f*bytes)
/******/
{
int ret_value = -1;
@@ -2071,27 +1969,27 @@ DONE:
/****if* H5Pf/h5pset_btree_ratios_c
* NAME
- * h5pset_btree_ratios_c
+ * h5pset_btree_ratios_c
* PURPOSE
- * Call H5Pset_btree_ratios to set B-tree split ratios for B-tree split ratios for a dataset transfer property list. a
- * dataset transfer property list.
+ * Call H5Pset_btree_ratios to set B-tree split ratios for B-tree split ratios for a dataset transfer property list. a
+ * dataset transfer property list.
* INPUTS
- * prp_id - property list identifier
- * left - The B-tree split ratio for left-most nodes.
- * middle - The B-tree split ratio for all other nodes
- * right - The B-tree split ratio for right-most nodes
- * and lone nodes.
+ * prp_id - property list identifier
+ * left - The B-tree split ratio for left-most nodes.
+ * middle - The B-tree split ratio for all other nodes
+ * right - The B-tree split ratio for right-most nodes
+ * and lone nodes.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
- * Changed the type of the last three parameters from double to real_f
+ * Changed the type of the last three parameters from double to real_f
* SOURCE
*/
int_f
-nh5pset_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right)
+h5pset_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right)
/******/
{
int ret_value = -1;
@@ -2116,27 +2014,27 @@ nh5pset_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* ri
/****if* H5Pf/h5pget_btree_ratios_c
* NAME
- * h5pget_btree_ratios_c
+ * h5pget_btree_ratios_c
* PURPOSE
- * Call H5Pget_btree_ratios to Gets B-tree split ratios
- * for a dataset transfer property list.
+ * Call H5Pget_btree_ratios to Gets B-tree split ratios
+ * for a dataset transfer property list.
* INPUTS
- * prp_id - property list identifier
- * left - The B-tree split ratio for left-most nodes.
- * middle - The B-tree split ratio for all other nodes
- * right - The B-tree split ratio for right-most nodes
- * and lone nodes.
+ * prp_id - property list identifier
+ * left - The B-tree split ratio for left-most nodes.
+ * middle - The B-tree split ratio for all other nodes
+ * right - The B-tree split ratio for right-most nodes
+ * and lone nodes.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, February 25, 2000
+ * Friday, February 25, 2000
* HISTORY
- * Changed the type of the last three parameters from double to real_f
+ * Changed the type of the last three parameters from double to real_f
* SOURCE
*/
int_f
-nh5pget_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right)
+h5pget_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right)
/******/
{
int ret_value = -1;
@@ -2158,30 +2056,30 @@ nh5pget_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* ri
}
/****if* H5Pf/h5pget_fclose_degree_c
* NAME
- * h5pget_fclose_degree_c
+ * h5pget_fclose_degree_c
* PURPOSE
- * Call H5Pget_fclose_degree to determine file close behavior
+ * Call H5Pget_fclose_degree to determine file close behavior
* INPUTS
- * fapl_id - file access identifier
+ * fapl_id - file access identifier
* OUTPUTS
*
- * degree - possible values are:
+ * degree - possible values are:
* H5F_CLOSE_DEFAULT
* H5F_CLOSE_WEAK
* H5F_CLOSE_SEMI
* H5F_CLOSE_STRONG
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, September 26, 2002
+ * Thursday, September 26, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
+h5pget_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
/******/
{
int ret_value = -1;
@@ -2198,28 +2096,28 @@ nh5pget_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
/****if* H5Pf/h5pset_fclose_degree_c
* NAME
- * h5pset_fclose_degree_c
+ * h5pset_fclose_degree_c
* PURPOSE
- * Call H5Pset_fclose_degree to set file close behavior
+ * Call H5Pset_fclose_degree to set file close behavior
* INPUTS
- * fapl_id - file access identifier
- * degree - possible values are:
+ * fapl_id - file access identifier
+ * degree - possible values are:
* H5F_CLOSE_DEFAULT
* H5F_CLOSE_WEAK
* H5F_CLOSE_SEMI
* H5F_CLOSE_STRONG
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, September 26, 2002
+ * Thursday, September 26, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
+h5pset_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
/******/
{
int ret_value = -1;
@@ -2236,26 +2134,26 @@ nh5pset_fclose_degree_c ( hid_t_f *fapl_id , int_f *degree)
/****if* H5Pf/h5pset_buffer_c
* NAME
- * h5pset_buffer_c
+ * h5pset_buffer_c
* PURPOSE
- * Call H5Pset_buffer to set size of conversion buffer
+ * Call H5Pset_buffer to set size of conversion buffer
* INPUTS
- * prp_id - t`dataset trasfer property list identifier
- * size - size of the buffer
+ * prp_id - t`dataset trasfer property list identifier
+ * size - size of the buffer
* OUTPUTS
* NONE
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, October 2, 2002
+ * Wednesday, October 2, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pset_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = 0;
@@ -2270,25 +2168,25 @@ nh5pset_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
/****if* H5Pf/h5pget_buffer_c
* NAME
- * h5pget_buffer_c
+ * h5pget_buffer_c
* PURPOSE
- * Call H5Pget_buffer to get size of conversion buffer
+ * Call H5Pget_buffer to get size of conversion buffer
* INPUTS
- * prp_id - t`dataset trasfer property list identifier
+ * prp_id - t`dataset trasfer property list identifier
* OUTPUTS
- * size - size of conversion buffer
+ * size - size of conversion buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, October 2, 2002
+ * Wednesday, October 2, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pget_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = -1;
@@ -2304,25 +2202,25 @@ nh5pget_buffer_c ( hid_t_f *prp_id , hsize_t_f *size)
}
/****if* H5Pf/h5pfill_value_defined_c
* NAME
- * h5pfill_value_defined_c
+ * h5pfill_value_defined_c
* PURPOSE
- * Call H5Pfill_value_defined to check if fill value is defined
+ * Call H5Pfill_value_defined to check if fill value is defined
* INPUTS
- * prp_id - dataset creation property list identifier
+ * prp_id - dataset creation property list identifier
* OUTPUTS
- * flag - fill value status flag
+ * flag - fill value status flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, October 4, 2002
+ * Friday, October 4, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pfill_value_defined_c ( hid_t_f *prp_id , int_f *flag)
+h5pfill_value_defined_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = -1;
@@ -2337,26 +2235,26 @@ nh5pfill_value_defined_c ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pget_alloc_time_c
* NAME
- * h5pget_alloc_time_c
+ * h5pget_alloc_time_c
* PURPOSE
- * Call H5Pget_alloc_time to get space allocation
- * time for dataset during creation
+ * Call H5Pget_alloc_time to get space allocation
+ * time for dataset during creation
* INPUTS
- * prp_id - dataset creation property list identifier
+ * prp_id - dataset creation property list identifier
* OUTPUTS
- * flag - allocation time flag
+ * flag - allocation time flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, October 4, 2002
+ * Friday, October 4, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
+h5pget_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = -1;
@@ -2371,25 +2269,25 @@ nh5pget_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pset_alloc_time_c
* NAME
- * h5pset_alloc_time_c
+ * h5pset_alloc_time_c
* PURPOSE
- * Call H5Pset_alloc_time to get space allocation
- * time for dataset during creation
+ * Call H5Pset_alloc_time to get space allocation
+ * time for dataset during creation
* INPUTS
- * prp_id - dataset creation property list identifier
- * flag - allocation time flag
+ * prp_id - dataset creation property list identifier
+ * flag - allocation time flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, October 4, 2002
+ * Friday, October 4, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
+h5pset_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = -1;
@@ -2404,26 +2302,26 @@ nh5pset_alloc_time_c ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pget_fill_time_c
* NAME
- * h5pget_fill_time_c
+ * h5pget_fill_time_c
* PURPOSE
- * Call H5Pget_fill_time to get fill value writing
- * time for dataset during creation
+ * Call H5Pget_fill_time to get fill value writing
+ * time for dataset during creation
* INPUTS
- * prp_id - dataset creation property list identifier
+ * prp_id - dataset creation property list identifier
* OUTPUTS
- * flag - fill value writing time flag
+ * flag - fill value writing time flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, October 4, 2002
+ * Friday, October 4, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fill_time_c ( hid_t_f *prp_id , int_f *flag)
+h5pget_fill_time_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = -1;
@@ -2438,25 +2336,25 @@ nh5pget_fill_time_c ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pset_fill_time_c
* NAME
- * h5pset_fill_time_c
+ * h5pset_fill_time_c
* PURPOSE
- * Call H5Pset_fill_time to set fill value writing
- * time for dataset during creation
+ * Call H5Pset_fill_time to set fill value writing
+ * time for dataset during creation
* INPUTS
- * prp_id - dataset creation property list identifier
- * flag - fill value writing time flag
+ * prp_id - dataset creation property list identifier
+ * flag - fill value writing time flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Friday, October 4, 2002
+ * Friday, October 4, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fill_time_c ( hid_t_f *prp_id , int_f *flag)
+h5pset_fill_time_c ( hid_t_f *prp_id , int_f *flag)
/******/
{
int ret_value = -1;
@@ -2471,26 +2369,26 @@ nh5pset_fill_time_c ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pset_meta_block_size_c
* NAME
- * h5pset_meta_block_size_c
+ * h5pset_meta_block_size_c
* PURPOSE
- * Call H5Pset_meta_block_size to set size of metadata block
+ * Call H5Pset_meta_block_size to set size of metadata block
* INPUTS
- * prp_id - file access property list identifier
- * size - size of the metadata block
+ * prp_id - file access property list identifier
+ * size - size of the metadata block
* OUTPUTS
* NONE
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pset_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = 0;
@@ -2504,26 +2402,26 @@ nh5pset_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
}
/****if* H5Pf/h5pget_meta_block_size_c
* NAME
- * h5pget_meta_block_size_c
+ * h5pget_meta_block_size_c
* PURPOSE
- * Call H5Pget_meta_block_size to get size of metadata block
+ * Call H5Pget_meta_block_size to get size of metadata block
* INPUTS
- * prp_id - file access property list identifier
+ * prp_id - file access property list identifier
* OUTPUTS
*
- * size - size of the metadata block
+ * size - size of the metadata block
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pget_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = 0;
@@ -2537,26 +2435,26 @@ nh5pget_meta_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
}
/****if* H5Pf/h5pset_sieve_buf_size_c
* NAME
- * h5pset_sieve_buf_size_c
+ * h5pset_sieve_buf_size_c
* PURPOSE
- * Call H5Pset_sieve_buf_size to set size of datasieve buffer
+ * Call H5Pset_sieve_buf_size to set size of datasieve buffer
* INPUTS
- * prp_id - file access property list identifier
- * size - size of the buffer
+ * prp_id - file access property list identifier
+ * size - size of the buffer
* OUTPUTS
* NONE
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
+h5pset_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
/******/
{
int ret_value = 0;
@@ -2570,26 +2468,26 @@ nh5pset_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
}
/****if* H5Pf/h5pget_sieve_buf_size_c
* NAME
- * h5pget_sieve_buf_size_c
+ * h5pget_sieve_buf_size_c
* PURPOSE
- * Call H5Pget_sieve_buf_size to get size of datasieve buffer
+ * Call H5Pget_sieve_buf_size to get size of datasieve buffer
* INPUTS
- * prp_id - file access property list identifier
+ * prp_id - file access property list identifier
* OUTPUTS
*
- * size - size of the buffer
+ * size - size of the buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
+h5pget_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
/******/
{
int ret_value = 0;
@@ -2603,26 +2501,26 @@ nh5pget_sieve_buf_size_c ( hid_t_f *prp_id , size_t_f *size)
}
/****if* H5Pf/h5pset_small_data_block_size_c
* NAME
- * h5pset_small_data_block_size_c
+ * h5pset_small_data_block_size_c
* PURPOSE
- * Call H5Pset_small_data_block_size to set size of raw small data block
+ * Call H5Pset_small_data_block_size to set size of raw small data block
* INPUTS
- * prp_id - file access property list identifier
- * size - size of the block
+ * prp_id - file access property list identifier
+ * size - size of the block
* OUTPUTS
* NONE
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pset_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = 0;
@@ -2636,26 +2534,26 @@ nh5pset_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
}
/****if* H5Pf/h5pget_small_data_block_size_c
* NAME
- * h5pget_small_data_block_size_c
+ * h5pget_small_data_block_size_c
* PURPOSE
- * Call H5Pget_small_data_block_size to get size of raw small data block
+ * Call H5Pget_small_data_block_size to get size of raw small data block
* INPUTS
- * prp_id - file access property list identifier
+ * prp_id - file access property list identifier
* OUTPUTS
*
- * size - size of the block
+ * size - size of the block
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
+h5pget_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
/******/
{
int ret_value = 0;
@@ -2669,26 +2567,26 @@ nh5pget_small_data_block_size_c ( hid_t_f *prp_id , hsize_t_f *size)
}
/****if* H5Pf/h5pset_hyper_vector_size_c
* NAME
- * h5pset_hyper_vector_size_c
+ * h5pset_hyper_vector_size_c
* PURPOSE
- * Call H5Pset_hyper_vector_size to set size of the hyper vector
+ * Call H5Pset_hyper_vector_size to set size of the hyper vector
* INPUTS
- * prp_id - dataset transfer property list identifier
- * size - size of the vector
+ * prp_id - dataset transfer property list identifier
+ * size - size of the vector
* OUTPUTS
* NONE
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
+h5pset_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
/******/
{
int ret_value = 0;
@@ -2702,26 +2600,26 @@ nh5pset_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
}
/****if* H5Pf/h5pget_hyper_vector_size_c
* NAME
- * h5pget_hyper_vector_size_c
+ * h5pget_hyper_vector_size_c
* PURPOSE
- * Call H5Pget_hyper_vector_size to get size of the hyper vector
+ * Call H5Pget_hyper_vector_size to get size of the hyper vector
* INPUTS
- * prp_id - dataset transfer property list identifier
+ * prp_id - dataset transfer property list identifier
* OUTPUTS
*
- * size - size of the vector
+ * size - size of the vector
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
+h5pget_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
/******/
{
int ret_value = 0;
@@ -2733,36 +2631,6 @@ nh5pget_hyper_vector_size_c ( hid_t_f *prp_id , size_t_f *size)
*size = (size_t_f)c_size;
return ret_value;
}
-/****if* H5Pf/h5pcreate_class_c
- * NAME
- * h5pcreate_class_c
- * PURPOSE
- * Call H5Pcreate_class to create a new property class
- * INPUTS
- * parent - property list class identifier
- * name - name of the new class
- * name_len - lenght of the "name" buffer
- * OUTPUTS
- * cls - new class identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * October 11, 2002
- *
- * HISTORY
- * SOURCE
-*/
-int_f
-nh5pcreate_class_f90_c(hid_t_f *parent, _fcd name, int_f *name_len, hid_t_f *cls)
-/******/
-{
- int ret_value = -1;
-
- ret_value = h5pcreate_class_c(parent, name, name_len, cls, NULL, NULL, NULL, NULL, NULL, NULL);
- return ret_value;
-}
-
/****if* H5Pf/h5pcreate_class_c
* NAME
@@ -2814,40 +2682,6 @@ DONE:
return ret_value;
}
-
-/****if* H5Pf/h5pregisterc_c
- * NAME
- * h5pregisterc_c
- * PURPOSE
- * Call h5pregister_c to registers a permanent property
- * INPUTS
- * class - property list class identifier
- * name - name of the new property
- * name_len - length of the "name" buffer
- * size - property size
- * value - property value of character type
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * October 11, 2002
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pregisterc_c(hid_t_f *cls, _fcd name, int_f *name_len, size_t_f *size, _fcd value, int_f H5_ATTR_UNUSED *value_len)
-/******/
-{
- int ret_value = -1;
-
- /*
- * Call h5pregister_c function
- */
- ret_value = h5pregister_c(cls, name, name_len, size, _fcdtocp(value));
- return ret_value;
-}
-
/****if* H5Pf/h5pregister_c
* NAME
* h5pregister_c
@@ -2891,66 +2725,6 @@ DONE:
return ret_value;
}
-int_f
-nh5pregister_integer_c(hid_t_f *cls, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pregister_c function
- */
- return h5pregister_c(cls, name, name_len, size, value);
-}
-
-int_f
-nh5pregister_real_c(hid_t_f *cls, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pregister_c function
- */
- return h5pregister_c(cls, name, name_len, size, value);
-}
-
-int_f
-nh5pregister_double_c(hid_t_f *cls, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pregister_c function
- */
- return h5pregister_c(cls, name, name_len, size, value);
-}
-
-/****if* H5Pf/h5pinsertc_c
- * NAME
- * h5pinsertc_c
- * PURPOSE
- * Call h5pinsert_c to register a temporary property
- * INPUTS
- * plist - property list identifier
- * name - name of the new property
- * name_len - length of the "name" buffer
- * size - property size
- * value - property value of character type
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * October 11, 2002
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pinsertc_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, _fcd value, int_f H5_ATTR_UNUSED *value_len)
-/******/
-{
- int_f ret_value = -1;
-
- /*
- * Call h5pinsert_c function
- */
- ret_value = h5pinsert_c(plist, name, name_len, size, _fcdtocp(value));
- return ret_value;
-}
-
/****if* H5Pf/h5pinsert_c
* NAME
* h5pinsert_c
@@ -2994,54 +2768,27 @@ DONE:
return ret_value;
}
-int_f
-nh5pinsert_integer_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pinsert_c function
- */
- return h5pinsert_c(plist, name, name_len, size, value);
-}
-
-int_f
-nh5pinsert_real_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pinsert_c function
- */
- return h5pinsert_c(plist, name, name_len, size, value);
-}
-
-int_f
-nh5pinsert_double_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value)
-{
- /*
- * Call h5pinsert_c function
- */
- return h5pinsert_c(plist, name, name_len, size, value);
-}
-
/****if* H5Pf/h5pexist_c
* NAME
- * h5pexist_c
+ * h5pexist_c
* PURPOSE
- * Call H5Pexist to querie whether a property name exists
- * in a property list or class
+ * Call H5Pexist to querie whether a property name exists
+ * in a property list or class
* INPUTS
- * plist - property list or property class identifier
- * name - name of the new property
- * name_len - length of the "name" buffer
+ * plist - property list or property class identifier
+ * name - name of the new property
+ * name_len - length of the "name" buffer
* RETURNS
- * nonnegative on success, -1 on failure
+ * nonnegative on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pexist_c(hid_t_f *cls, _fcd name, int_f *name_len)
+h5pexist_c(hid_t_f *cls, _fcd name, int_f *name_len)
/******/
{
int_f ret_value = -1;
@@ -3065,24 +2812,24 @@ DONE:
}
/****if* H5Pf/h5pisa_class_c
* NAME
- * h5pisa_class_c
+ * h5pisa_class_c
* PURPOSE
- * Call H5Pisa_class to querie whether a property is a
- * member of a class
+ * Call H5Pisa_class to querie whether a property is a
+ * member of a class
* INPUTS
- * plist - property list identifier
- * cls - property class identifier
+ * plist - property list identifier
+ * cls - property class identifier
* RETURNS
- * nonnegative on success, -1 on failure
+ * nonnegative on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pisa_class_c(hid_t_f *plist, hid_t_f *cls)
+h5pisa_class_c(hid_t_f *plist, hid_t_f *cls)
/******/
{
int_f ret_value = -1;
@@ -3102,26 +2849,26 @@ nh5pisa_class_c(hid_t_f *plist, hid_t_f *cls)
}
/****if* H5Pf/h5pget_size_c
* NAME
- * h5pget_size_c
+ * h5pget_size_c
* PURPOSE
- * Call H5Pget_size to querie the size of the property
+ * Call H5Pget_size to querie the size of the property
* INPUTS
- * plist - property list to query
- * name - name of the property
- * name_len - length of the "name" buffer
+ * plist - property list to query
+ * name - name of the property
+ * name_len - length of the "name" buffer
* OUTPUTS
- * size - size of the property in bytes
+ * size - size of the property in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_size_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size)
+h5pget_size_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size)
/******/
{
int_f ret_value = -1;
@@ -3146,24 +2893,24 @@ DONE:
}
/****if* H5Pf/h5pget_nprops_c
* NAME
- * h5pget_nprops_c
+ * h5pget_nprops_c
* PURPOSE
- * Call H5Pget_nporps to get number of the properties in the list
+ * Call H5Pget_nporps to get number of the properties in the list
* INPUTS
- * plist - property list to query
+ * plist - property list to query
* OUTPUTS
- * nprops - number of properties in the list
+ * nprops - number of properties in the list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_nprops_c(hid_t_f *plist, size_t_f *nprops)
+h5pget_nprops_c(hid_t_f *plist, size_t_f *nprops)
/******/
{
int_f ret_value = -1;
@@ -3183,25 +2930,25 @@ nh5pget_nprops_c(hid_t_f *plist, size_t_f *nprops)
}
/****if* H5Pf/h5pget_class_parent_c
* NAME
- * h5pget_class_parent_c
+ * h5pget_class_parent_c
* PURPOSE
- * Call H5Pget_class_parent to get the parent class of
- * a genereic property class
+ * Call H5Pget_class_parent to get the parent class of
+ * a genereic property class
* INPUTS
- * prp_id - property list to query
+ * prp_id - property list to query
* OUTPUTS
- * parent_id - parent classs identifier
+ * parent_id - parent classs identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_class_parent_c(hid_t_f *prp_id, hid_t_f *parent_id)
+h5pget_class_parent_c(hid_t_f *prp_id, hid_t_f *parent_id)
/******/
{
int_f ret_value = -1;
@@ -3222,26 +2969,26 @@ nh5pget_class_parent_c(hid_t_f *prp_id, hid_t_f *parent_id)
}
/****if* H5Pf/h5pcopy_prop_c
* NAME
- * h5pcopy_prop_c
+ * h5pcopy_prop_c
* PURPOSE
- * Call H5Pcopy_prop to copy a property from one list or
- * class to another
+ * Call H5Pcopy_prop to copy a property from one list or
+ * class to another
* INPUTS
- * dst_id - identifier of destination property list
- * src_id - identifier of source property list
- * name - name of the property
- * name_len - length of the "name" buffer
+ * dst_id - identifier of destination property list
+ * src_id - identifier of source property list
+ * name - name of the property
+ * name_len - length of the "name" buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5pcopy_prop_c(hid_t_f *dst_id, hid_t_f *src_id, _fcd name, int_f *name_len)
+h5pcopy_prop_c(hid_t_f *dst_id, hid_t_f *src_id, _fcd name, int_f *name_len)
/******/
{
int_f ret_value = -1;
@@ -3265,24 +3012,24 @@ DONE:
}
/****if* H5Pf/h5premove_c
* NAME
- * h5premove_c
+ * h5premove_c
* PURPOSE
- * Call H5Premove to remove a property from a list
+ * Call H5Premove to remove a property from a list
* INPUTS
- * plid - identifier of property list
- * name - name of the property to remove
- * name_len - length of the "name" buffer
+ * plid - identifier of property list
+ * name - name of the property to remove
+ * name_len - length of the "name" buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * October 11, 2002
+ * October 11, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5premove_c(hid_t_f *plid, _fcd name, int_f *name_len)
+h5premove_c(hid_t_f *plid, _fcd name, int_f *name_len)
/******/
{
int_f ret_value = -1;
@@ -3305,15 +3052,15 @@ DONE:
}
/****if* H5Pf/h5punregister_c
* NAME
- * h5punregister_c
+ * h5punregister_c
* PURPOSE
- * Call H5Punregister to remove a property from a property class
+ * Call H5Punregister to remove a property from a property class
* INPUTS
- * cls - identifier of property class
- * name - name of the property to unregister
- * name_len - length of the "name" buffer
+ * cls - identifier of property class
+ * name - name of the property to unregister
+ * name_len - length of the "name" buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* October 11, 2002
@@ -3322,7 +3069,7 @@ DONE:
* SOURCE
*/
int_f
-nh5punregister_c(hid_t_f *cls, _fcd name, int_f *name_len)
+h5punregister_c(hid_t_f *cls, _fcd name, int_f *name_len)
/******/
{
int_f ret_value = -1;
@@ -3345,13 +3092,13 @@ DONE:
}
/****if* H5Pf/h5pclose_class_c
* NAME
- * h5pclose_class_c
+ * h5pclose_class_c
* PURPOSE
- * Call H5Pclose_class to close property class
+ * Call H5Pclose_class to close property class
* INPUTS
- * class - identifier of property class to close
+ * class - identifier of property class to close
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* October 11, 2002
@@ -3360,7 +3107,7 @@ DONE:
* SOURCE
*/
int_f
-nh5pclose_class_c(hid_t_f *cls)
+h5pclose_class_c(hid_t_f *cls)
/******/
{
int_f ret_value = -1;
@@ -3377,15 +3124,15 @@ nh5pclose_class_c(hid_t_f *cls)
/****if* H5Pf/h5pget_class_name_c
* NAME
- * h5pget_class_name_c
+ * h5pget_class_name_c
* PURPOSE
- * Call H5Pget_class_name to get property class name
+ * Call H5Pget_class_name to get property class name
* INPUTS
- * cls - identifier of property class
- * name - buffer to retrieve name in
- * name_len - length of the "name" buffer
+ * cls - identifier of property class
+ * name - buffer to retrieve name in
+ * name_len - length of the "name" buffer
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* October 11, 2002
@@ -3394,7 +3141,7 @@ nh5pclose_class_c(hid_t_f *cls)
* SOURCE
*/
int_f
-nh5pget_class_name_c(hid_t_f *cls, _fcd name, int_f *name_len)
+h5pget_class_name_c(hid_t_f *cls, _fcd name, int_f *name_len)
/******/
{
int_f ret_value = -1;
@@ -3417,38 +3164,6 @@ DONE:
return ret_value;
}
-/****if* H5Pf/h5psetc_c
- * NAME
- * h5psetc_c
- * PURPOSE
- * Call h5setc_c to set property with the character string value
- * INPUTS
- * plist - property list identifier
- * name - name of property
- * name_len - length of the "name" buffer
- * value - property value of character type
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * October 11, 2002
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5psetc_c(hid_t_f *plist, _fcd name, int_f *name_len, _fcd value, int_f H5_ATTR_UNUSED *value_len)
-/******/
-{
- int_f ret_value = -1;
-
- /*
- * Call h5pset_c function
- */
- ret_value = h5pset_c(plist, name, name_len, _fcdtocp(value));
- return ret_value;
-}
-
/****if* H5Pf/h5pset_c
* NAME
* h5pset_c
@@ -3489,64 +3204,6 @@ DONE:
return ret_value;
}
-int_f
-nh5pset_integer_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pset_c function
- */
- return h5pset_c(plist, name, name_len, value);
-}
-
-int_f
-nh5pset_real_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pset_c function
- */
- return h5pset_c(plist, name, name_len, value);
-}
-
-int_f
-nh5pset_double_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pset_c function
- */
- return h5pset_c(plist, name, name_len, value);
-}
-/****if* H5Pf/h5pgetc_c
- * NAME
- * h5pgetc_c
- * PURPOSE
- * Call h5set_c to set property with the character string value
- * INPUTS
- * plist - property list identifier
- * name - name of property
- * name_len - length of the "name" buffer
- * Output: value - property value of character type
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * October 11, 2002
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5pgetc_c(hid_t_f *plist, _fcd name, int_f *name_len, _fcd value, int_f H5_ATTR_UNUSED *value_len)
-/******/
-{
- int_f ret_value = -1;
-
- /*
- * Call h5pget_c function
- */
- ret_value = h5pget_c(plist, name, name_len, _fcdtocp(value));
- return ret_value;
-}
-
/****if* H5Pf/h5pget_c
* NAME
* h5pget_c
@@ -3556,7 +3213,7 @@ nh5pgetc_c(hid_t_f *plist, _fcd name, int_f *name_len, _fcd value, int_f H5_ATTR
* plist - property list class identifier
* name - name of the new property
* name_len - length of the "name" buffer
- * Output:
+ * Output:
* value - property value
* RETURNS
* 0 on success, -1 on failure
@@ -3588,54 +3245,26 @@ DONE:
return ret_value;
}
-int_f
-nh5pget_integer_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pget_c function
- */
- return h5pget_c(plist, name, name_len, value);
-}
-
-int_f
-nh5pget_real_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pget_c function
- */
- return h5pget_c(plist, name, name_len, value);
-}
-
-int_f
-nh5pget_double_c(hid_t_f *plist, _fcd name, int_f *name_len, void *value)
-{
- /*
- * Call h5pget_c function
- */
- return h5pget_c(plist, name, name_len, value);
-}
-
-
/****if* H5Pf/h5pset_shuffle_c
* NAME
- * h5pset_shuffle_c
+ * h5pset_shuffle_c
* PURPOSE
- * Call H5Pset_shuffle
+ * Call H5Pset_shuffle
* INPUTS
- * prp_id - property list identifier
- * type_size - size of the datatype in bytes
+ * prp_id - property list identifier
+ * type_size - size of the datatype in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12, 2003
+ * Wednesday, March 12, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_shuffle_c ( hid_t_f *prp_id )
+h5pset_shuffle_c ( hid_t_f *prp_id )
/******/
{
int_f ret_value = 0;
@@ -3649,23 +3278,23 @@ nh5pset_shuffle_c ( hid_t_f *prp_id )
}
/****if* H5Pf/h5pset_fletcher32_c
* NAME
- * h5pset_fletcher32_c
+ * h5pset_fletcher32_c
* PURPOSE
- * Call H5Pset_fletcher32 to enable EDC
+ * Call H5Pset_fletcher32 to enable EDC
* INPUTS
- * prp_id - dataset creation property list identifier
+ * prp_id - dataset creation property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, March 13, 2003
+ * Thursday, March 13, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fletcher32_c ( hid_t_f *prp_id )
+h5pset_fletcher32_c ( hid_t_f *prp_id )
/******/
{
int_f ret_value = 0;
@@ -3680,24 +3309,24 @@ nh5pset_fletcher32_c ( hid_t_f *prp_id )
/****if* H5Pf/h5pset_edc_check_c
* NAME
- * h5pset_edc_check_c
+ * h5pset_edc_check_c
* PURPOSE
- * Call H5Pset_edc_check to enable EDC
+ * Call H5Pset_edc_check to enable EDC
* INPUTS
- * prp_id - dataset transfer property list identifier
- * flag - EDC flag
+ * prp_id - dataset transfer property list identifier
+ * flag - EDC flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, March 13, 2003
+ * Thursday, March 13, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_edc_check_c ( hid_t_f *prp_id, int_f *flag )
+h5pset_edc_check_c ( hid_t_f *prp_id, int_f *flag )
/******/
{
int_f ret_value = 0;
@@ -3714,24 +3343,24 @@ nh5pset_edc_check_c ( hid_t_f *prp_id, int_f *flag )
/****if* H5Pf/h5pget_edc_check_c
* NAME
- * h5pget_edc_check_c
+ * h5pget_edc_check_c
* PURPOSE
- * Call H5Pget_edc_check to query EDC
+ * Call H5Pget_edc_check to query EDC
* INPUTS
- * prp_id - dataset transfer property list identifier
- * Outouts: flag - EDC flag
+ * prp_id - dataset transfer property list identifier
+ * Outouts: flag - EDC flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, March 13, 2003
+ * Thursday, March 13, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_edc_check_c ( hid_t_f *prp_id, int_f *flag )
+h5pget_edc_check_c ( hid_t_f *prp_id, int_f *flag )
/******/
{
int_f ret_value = 0;
@@ -3746,24 +3375,24 @@ nh5pget_edc_check_c ( hid_t_f *prp_id, int_f *flag )
}
/****if* H5Pf/h5pset_family_offset_c
* NAME
- * h5pset_family_offset_c
+ * h5pset_family_offset_c
* PURPOSE
- * Call H5Pset_family_offset to set and offset for family driver
+ * Call H5Pset_family_offset to set and offset for family driver
* INPUTS
- * prp_id - property list identifier
- * offset - offset in bytes
+ * prp_id - property list identifier
+ * offset - offset in bytes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, 19 March 2003
+ * Wednesday, 19 March 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_family_offset_c ( hid_t_f *prp_id , hsize_t_f *offset)
+h5pset_family_offset_c ( hid_t_f *prp_id , hsize_t_f *offset)
/******/
{
int_f ret_value = 0;
@@ -3780,30 +3409,30 @@ nh5pset_family_offset_c ( hid_t_f *prp_id , hsize_t_f *offset)
/****if* H5Pf/h5pset_fapl_multi_c
* NAME
- * h5pset_fapl_multi_c
+ * h5pset_fapl_multi_c
* PURPOSE
- * Call H5Pset_fapl_multi to set multi file dirver
+ * Call H5Pset_fapl_multi to set multi file dirver
* INPUTS
- * prp_id - file_creation property list identifier
- * mem_map - memory mapping array
- * memb_fapl - property list for each memory usage type
- * memb_name - array with members names
- * len - array with the lenght of each name
- * lenmax - lenght of the name a sdeclared in Fortran
- * flag - flag allowing partila access when one of the files is missing
+ * prp_id - file_creation property list identifier
+ * mem_map - memory mapping array
+ * memb_fapl - property list for each memory usage type
+ * memb_name - array with members names
+ * len - array with the lenght of each name
+ * lenmax - lenght of the name a sdeclared in Fortran
+ * flag - flag allowing partila access when one of the files is missing
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday 24, March 2003
+ * Monday 24, March 2003
* HISTORY
*
* SOURCE
*/
int_f
-/*nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, haddr_t_f *memb_addr, int_f *flag) */
-nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag)
+/*h5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, haddr_t_f *memb_addr, int_f *flag) */
+h5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag)
/******/
{
int_f ret_value = -1;
@@ -3821,13 +3450,13 @@ nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _f
c_lenmax = (int)*lenmax;
relax = (hbool_t)*flag;
/*
- * Check that we got correct values from Fortran for memb_addr array
+ * Check that we got correct values from Fortran for memb_addr array
*/
for (i=0; i < H5FD_MEM_NTYPES; i++) {
if(memb_addr[i] >= 1.0f) return ret_value;
}
/*
- * Take care of names array
+ * Take care of names array
*/
tmp = (char *)HD5f2cstring(memb_name, (size_t)c_lenmax*(H5FD_MEM_NTYPES));
@@ -3841,7 +3470,7 @@ nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _f
tmp_p = tmp_p + c_lenmax;
}
/*
- * Take care of othe arguments
+ * Take care of othe arguments
*/
tmp_max_addr = (long double)(HADDR_MAX);
c_prp_id = (hid_t)*prp_id;
@@ -3852,7 +3481,7 @@ nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _f
else c_memb_addr[i] = (haddr_t)(((float)memb_addr[i])*(tmp_max_addr));
}
/*
- * Call H5Pset_fapl_multi function
+ * Call H5Pset_fapl_multi function
*/
status = H5Pset_fapl_multi(c_prp_id, c_memb_map, c_memb_fapl, (const char * const *)c_memb_name, c_memb_addr, relax);
@@ -3868,23 +3497,23 @@ DONE:
/****if* H5Pf/h5pset_fapl_multi_sc
* NAME
- * h5pset_fapl_multi_sc
+ * h5pset_fapl_multi_sc
* PURPOSE
- * Call H5Pset_fapl_multi to set multi file dirver
+ * Call H5Pset_fapl_multi to set multi file dirver
* INPUTS
- * prp_id - file_creation property list identifier
+ * prp_id - file_creation property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * March 31 2003
+ * March 31 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag)
+h5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag)
/******/
{
int_f ret_value = -1;
@@ -3895,7 +3524,7 @@ nh5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag)
relax = (hbool_t)*flag;
c_prp_id = (hid_t)*prp_id;
/*
- * Call H5Pset_fapl_multi function
+ * Call H5Pset_fapl_multi function
*/
status = H5Pset_fapl_multi(c_prp_id, NULL, NULL, NULL, NULL, relax);
@@ -3905,30 +3534,30 @@ nh5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag)
}
/****if* H5Pf/h5pget_fapl_multi_c
* NAME
- * h5pget_fapl_multi_c
+ * h5pget_fapl_multi_c
* PURPOSE
- * Call H5Pget_fapl_multi to set multi file dirver
+ * Call H5Pget_fapl_multi to set multi file dirver
* INPUTS
- * prp_id - file_creation property list identifier
- * lenmax - lenght of the name a sdeclared in Fortran
+ * prp_id - file_creation property list identifier
+ * lenmax - lenght of the name a sdeclared in Fortran
* OUTPUTS
- * memb_map - memory mapping array
- * memb_fapl - property list for each memory usage type
- * memb_name - array with members names
- * len - array with the lenght of each name
- * flag - flag allowing partila access when one of the files is missing
+ * memb_map - memory mapping array
+ * memb_fapl - property list for each memory usage type
+ * memb_name - array with members names
+ * len - array with the lenght of each name
+ * flag - flag allowing partila access when one of the files is missing
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday 24, March 2003
+ * Monday 24, March 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag, int_f *maxlen_out)
+h5pget_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag, int_f *maxlen_out)
/******/
{
int_f ret_value = -1;
@@ -3947,14 +3576,14 @@ nh5pget_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _f
c_prp_id = (hid_t)*prp_id;
/*
- * Call H5Pget_fapl_multi function
+ * Call H5Pget_fapl_multi function
*/
status = H5Pget_fapl_multi(c_prp_id, c_memb_map, c_memb_fapl, c_memb_name, c_memb_addr, &relax);
if ( status < 0 ) return ret_value;
/*
- * Take care of names array
+ * Take care of names array
*/
tmp = (char *)HDmalloc(c_lenmax*H5FD_MEM_NTYPES + 1);
tmp_p = tmp;
@@ -3969,7 +3598,7 @@ nh5pget_fapl_multi_c ( hid_t_f *prp_id , int_f *memb_map, hid_t_f *memb_fapl, _f
HD5packFstring(tmp, _fcdtocp(memb_name), (size_t)(c_lenmax*H5FD_MEM_NTYPES));
/*
- * Take care of other arguments
+ * Take care of other arguments
*/
for (i=0; i < H5FD_MEM_NTYPES; i++) {
@@ -3989,25 +3618,25 @@ HD5packFstring(tmp, _fcdtocp(memb_name), (size_t)(c_lenmax*H5FD_MEM_NTYPES));
/****if* H5Pf/h5pset_szip_c
* NAME
- * h5pset_szip_c
+ * h5pset_szip_c
* PURPOSE
- * Call H5Pset_szip to set szip compression
+ * Call H5Pset_szip to set szip compression
* INPUTS
- * prp_id - dataset creation property list identifier
- * options_mask
- * pixels_per_block -szip compression parameters
+ * prp_id - dataset creation property list identifier
+ * options_mask
+ * pixels_per_block -szip compression parameters
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * April 8 2003
+ * April 8 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_szip_c ( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block)
+h5pset_szip_c ( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block)
/******/
{
int_f ret_value = -1;
@@ -4020,7 +3649,7 @@ nh5pset_szip_c ( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block)
c_options_mask = (unsigned)*options_mask;
c_pixels_per_block = (unsigned)*pixels_per_block;
/*
- * Call H5Pset_szip function
+ * Call H5Pset_szip function
*/
status = H5Pset_szip(c_prp_id, c_options_mask, c_pixels_per_block);
@@ -4030,25 +3659,25 @@ nh5pset_szip_c ( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block)
}
/****if* H5Pf/h5pall_filters_avail_c
* NAME
- * h5pall_filters_avail_c
+ * h5pall_filters_avail_c
* PURPOSE
- * Call H5Pall_filters_avail
+ * Call H5Pall_filters_avail
* INPUTS
- * prp_id - dataset creation property list identifier
+ * prp_id - dataset creation property list identifier
* OUTPUTS
- * status - logical flag
+ * status - logical flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * April 10 2003
+ * April 10 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pall_filters_avail_c ( hid_t_f *prp_id , int_f *status)
+h5pall_filters_avail_c ( hid_t_f *prp_id , int_f *status)
/******/
{
int_f ret_value = -1;
@@ -4058,7 +3687,7 @@ nh5pall_filters_avail_c ( hid_t_f *prp_id , int_f *status)
c_prp_id = (hid_t)*prp_id;
/*
- * Call H5Pall_filters_avail function
+ * Call H5Pall_filters_avail function
*/
c_status = H5Pall_filters_avail(c_prp_id);
@@ -4071,31 +3700,31 @@ nh5pall_filters_avail_c ( hid_t_f *prp_id , int_f *status)
/****if* H5Pf/h5pget_filter_by_id_c
* NAME
- * h5pget_filter_by_id_c
+ * h5pget_filter_by_id_c
* PURPOSE
- * Call H5Pget_filter_by_id2 to get information about a filter
- * in a pipeline
+ * Call H5Pget_filter_by_id2 to get information about a filter
+ * in a pipeline
* INPUTS
- * prp_id - property list identifier
- * filter_id - filter id
- * namelen - Anticipated number of characters in name.
+ * prp_id - property list identifier
+ * filter_id - filter id
+ * namelen - Anticipated number of characters in name.
*OUTPUT
- * flags - Bit vector specifying certain general
- * properties of the filter.
- * cd_nelmts - Number of elements in cd_value
- * cd_values - Auxiliary data for the filter.
- * name - Name of the filter
+ * flags - Bit vector specifying certain general
+ * properties of the filter.
+ * cd_nelmts - Number of elements in cd_value
+ * cd_values - Auxiliary data for the filter.
+ * name - Name of the filter
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena POurmal
- * April 10, 2003
+ * April 10, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_filter_by_id_c(hid_t_f *prp_id, int_f* filter_id, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name)
+h5pget_filter_by_id_c(hid_t_f *prp_id, int_f* filter_id, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name)
/******/
{
unsigned int c_flags;
@@ -4138,27 +3767,27 @@ DONE:
/****if* H5Pf/h5pmodify_filter_c
* NAME
- * h5pmodify_filter_c
+ * h5pmodify_filter_c
* PURPOSE
- * Call H5Pmodify_filter to modify a filter
+ * Call H5Pmodify_filter to modify a filter
* INPUTS
- * prp_id - property list identifier
- * filter - Filter to be modified
- * flags - Bit vector specifying certain general
- * properties of the filter.
- * cd_nelmts - Number of elements in cd_values.
- * cd_values - Auxiliary data for the filter.
+ * prp_id - property list identifier
+ * filter - Filter to be modified
+ * flags - Bit vector specifying certain general
+ * properties of the filter.
+ * cd_nelmts - Number of elements in cd_values.
+ * cd_values - Auxiliary data for the filter.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * April 10 2003
+ * April 10 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5pmodify_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values )
+h5pmodify_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values )
/******/
{
int_f ret_value = -1;
@@ -4190,23 +3819,23 @@ DONE:
/****if* H5Pf/h5premove_filter_c
* NAME
- * h5premove_filter_c
+ * h5premove_filter_c
* PURPOSE
- * Call H5Premove_filter to delete one or more filters
+ * Call H5Premove_filter to delete one or more filters
* INPUTS
- * prp_id - property list identifier
- * filter - Filter to be deleted
+ * prp_id - property list identifier
+ * filter - Filter to be deleted
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Quincey Koziol
- * January 27 2004
+ * January 27 2004
* HISTORY
*
* SOURCE
*/
int_f
-nh5premove_filter_c (hid_t_f *prp_id, int_f* filter)
+h5premove_filter_c (hid_t_f *prp_id, int_f* filter)
/******/
{
int_f ret_value = -1;
@@ -4228,25 +3857,25 @@ DONE:
/****if* H5Pf/h5pget_attr_phase_change_c
* NAME
- * h5pget_attr_phase_change_c
+ * h5pget_attr_phase_change_c
* PURPOSE
- * Calls H5Pget_attr_phase_change
+ * Calls H5Pget_attr_phase_change
*
* INPUTS
- * ocpl_id - Object (dataset or group) creation property list identifier
- * Outputs max_compact - Maximum number of attributes to be stored in compact storage
- * min_dense - Minimum number of attributes to be stored in dense storage
+ * ocpl_id - Object (dataset or group) creation property list identifier
+ * Outputs max_compact - Maximum number of attributes to be stored in compact storage
+ * min_dense - Minimum number of attributes to be stored in dense storage
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense )
+h5pget_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense )
/******/
{
int ret_value = -1;
@@ -4269,24 +3898,24 @@ nh5pget_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_den
/****if* H5Pf/h5pset_attr_creation_order_c
* NAME
- * h5pset_attr_creation_order_c
+ * h5pset_attr_creation_order_c
* PURPOSE
- * Calls H5Ppset_attr_creation_order
+ * Calls H5Ppset_attr_creation_order
*
* INPUTS
- * ocpl_id - Object (dataset or group) creation property list identifier
- * Outputs crt_order_flags - Flags specifying whether to track and index attribute creation order
+ * ocpl_id - Object (dataset or group) creation property list identifier
+ * Outputs crt_order_flags - Flags specifying whether to track and index attribute creation order
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags )
+h5pset_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags )
/******/
{
int ret_value = -1;
@@ -4306,29 +3935,29 @@ nh5pset_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags )
/****if* H5Pf/h5pset_shared_mesg_nindexes_c
* NAME
- * h5pset_shared_mesg_nindexes_c
+ * h5pset_shared_mesg_nindexes_c
* PURPOSE
- * Calls h5pset_shared_mesg_nindexes
+ * Calls h5pset_shared_mesg_nindexes
*
* INPUTS
*
- * plist_id - file creation property list
- * nindexes - Number of shared object header message indexes
- * available in files created WITH this property list
+ * plist_id - file creation property list
+ * nindexes - Number of shared object header message indexes
+ * available in files created WITH this property list
*
* OUTPUTS
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_shared_mesg_nindexes_c(hid_t_f *plist_id, int_f *nindexes )
+h5pset_shared_mesg_nindexes_c(hid_t_f *plist_id, int_f *nindexes )
/******/
{
int ret_value = -1;
@@ -4349,30 +3978,30 @@ nh5pset_shared_mesg_nindexes_c(hid_t_f *plist_id, int_f *nindexes )
/****if* H5Pf/h5pset_shared_mesg_index_c
* NAME
- * h5pset_shared_mesg_index_c
+ * h5pset_shared_mesg_index_c
* PURPOSE
- * Calls H5Pset_shared_mesg_index
+ * Calls H5Pset_shared_mesg_index
*
* INPUTS
*
- * fcpl_id - File creation property list identifier.
- * index_num - Index being configured.
- * mesg_type_flags - Types of messages that should be stored in this index.
- * min_mesg_size - Minimum message size.
+ * fcpl_id - File creation property list identifier.
+ * index_num - Index being configured.
+ * mesg_type_flags - Types of messages that should be stored in this index.
+ * min_mesg_size - Minimum message size.
*
* OUTPUTS
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * January, 2008
+ * January, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_shared_mesg_index_c(hid_t_f *fcpl_id, int_f *index_num, int_f *mesg_type_flags, int_f *min_mesg_size)
+h5pset_shared_mesg_index_c(hid_t_f *fcpl_id, int_f *index_num, int_f *mesg_type_flags, int_f *min_mesg_size)
/******/
{
int ret_value = -1;
@@ -4389,28 +4018,28 @@ nh5pset_shared_mesg_index_c(hid_t_f *fcpl_id, int_f *index_num, int_f *mesg_type
/****if* H5Pf/h5pget_attr_creation_order_c
* NAME
- * h5pget_attr_creation_order_c
+ * h5pget_attr_creation_order_c
* PURPOSE
- * Calls H5Pget_attr_creation_order
+ * Calls H5Pget_attr_creation_order
*
* INPUTS
*
- * ocpl_id - Object (group or dataset) creation property list identifier
+ * ocpl_id - Object (group or dataset) creation property list identifier
* OUTPUTS
*
- * crt_order_flags - Flags specifying whether to track and index attribute creation order
+ * crt_order_flags - Flags specifying whether to track and index attribute creation order
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February, 2008
+ * February, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags)
+h5pget_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags)
/******/
{
int ret_value = -1;
@@ -4431,29 +4060,29 @@ nh5pget_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags)
}
/****if* H5Pf/h5pset_libver_bounds_c
* NAME
- * h5pset_libver_bounds_c
+ * h5pset_libver_bounds_c
* PURPOSE
- * Calls H5Pset_libver_bounds
+ * Calls H5Pset_libver_bounds
*
* INPUTS
*
- * fapl_id - File access property list identifier
- * low - The earliest version of the library that will be used for writing objects.
- * high - The latest version of the library that will be used for writing objects.
+ * fapl_id - File access property list identifier
+ * low - The earliest version of the library that will be used for writing objects.
+ * high - The latest version of the library that will be used for writing objects.
* OUTPUTS
*
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 18, 2008
+ * February 18, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_libver_bounds_c(hid_t_f *fapl_id, int_f *low, int_f *high )
+h5pset_libver_bounds_c(hid_t_f *fapl_id, int_f *low, int_f *high )
/******/
{
int ret_value = -1;
@@ -4471,26 +4100,26 @@ nh5pset_libver_bounds_c(hid_t_f *fapl_id, int_f *low, int_f *high )
/****if* H5Pf/h5pset_link_creation_order_c
* NAME
- * h5pset_link_creation_order_c
+ * h5pset_link_creation_order_c
* PURPOSE
- * Calls H5Pset_link_creation_order
+ * Calls H5Pset_link_creation_order
*
* INPUTS
- * gcpl_id - Group creation property list identifier
- * crt_order_flags - Creation order flag(s)
+ * gcpl_id - Group creation property list identifier
+ * crt_order_flags - Creation order flag(s)
* OUTPUTS
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 18, 2008
+ * February 18, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags )
+h5pset_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags )
/******/
{
int ret_value = -1;
@@ -4507,25 +4136,25 @@ nh5pset_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags )
/****if* H5Pf/h5pget_link_phase_change_c
* NAME
- * h5pget_link_phase_change_c
+ * h5pget_link_phase_change_c
* PURPOSE
- * Calls H5Pget_link_phase_change
+ * Calls H5Pget_link_phase_change
*
* INPUTS
- * gcpl_id - Group creation property list identifier
- * Outputs max_compact - Maximum number of attributes to be stored in compact storage
- * min_dense - Minimum number of attributes to be stored in dense storage
+ * gcpl_id - Group creation property list identifier
+ * Outputs max_compact - Maximum number of attributes to be stored in compact storage
+ * min_dense - Minimum number of attributes to be stored in dense storage
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 20, 2008
+ * February 20, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense )
+h5pget_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense )
/******/
{
int ret_value = -1;
@@ -4547,27 +4176,27 @@ nh5pget_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_den
/****if* H5Pf/h5pget_obj_track_times_c
* NAME
- * h5pget_obj_track_times_c
+ * h5pget_obj_track_times_c
* PURPOSE
- * Call H5Pget_obj_track_times
+ * Call H5Pget_obj_track_times
*
* INPUTS
- * plist_id - property list id
+ * plist_id - property list id
* OUTPUTS
*
- * flag - TRUE/FALSE flag
+ * flag - TRUE/FALSE flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 22, 2008
+ * February 22, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
+h5pget_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
/******/
{
int ret_value = -1;
@@ -4589,25 +4218,25 @@ nh5pget_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
/****if* H5Pf/h5pset_obj_track_times_c
* NAME
- * h5pset_obj_track_times_c
+ * h5pset_obj_track_times_c
* PURPOSE
- * Call H5Pset_obj_track_times
+ * Call H5Pset_obj_track_times
*
* INPUTS
- * plist_id - property list id
- * flag - TRUE/FALSE flag
+ * plist_id - property list id
+ * flag - TRUE/FALSE flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 22, 2008
+ * February 22, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
+h5pset_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
/******/
{
int ret_value = -1;
@@ -4629,28 +4258,28 @@ nh5pset_obj_track_times_c(hid_t_f *plist_id, int_f *flag)
/****if* H5Pf/h5pset_create_inter_group_c
* NAME
- * h5pset_create_inter_group_c
+ * h5pset_create_inter_group_c
* PURPOSE
- * Calls H5Pset_create_intermediate_group
+ * Calls H5Pset_create_intermediate_group
*
* INPUTS
*
* lcpl_id - Link creation property list identifier
- * crt_intermed_group - crt_intermed_group specifying whether
- * to create intermediate groups upon the
- * creation of an object
+ * crt_intermed_group - crt_intermed_group specifying whether
+ * to create intermediate groups upon the
+ * creation of an object
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * February 22, 2008
+ * February 22, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
+h5pset_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
/******/
{
int ret_value = -1;
@@ -4668,28 +4297,28 @@ nh5pset_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
/****if* H5Pf/h5pget_link_creation_order_c
* NAME
- * h5pget_link_creation_order_c
+ * h5pget_link_creation_order_c
* PURPOSE
- * Calls H5Pget_link_creation_order
+ * Calls H5Pget_link_creation_order
*
* INPUTS
*
- * gcpl_id - Group creation property list identifier
+ * gcpl_id - Group creation property list identifier
* OUTPUTS
*
- * crt_order_flags - Creation order flag(s)
+ * crt_order_flags - Creation order flag(s)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags)
+h5pget_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags)
/******/
{
int ret_value = -1;
@@ -4711,30 +4340,30 @@ nh5pget_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags)
/****if* H5Pf/h5pset_char_encoding_c
* NAME
- * h5pset_char_encoding_c
+ * h5pset_char_encoding_c
* PURPOSE
* Calls H5Pset_char_encoding
*
* INPUTS
*
- * plist_id - Property list identifier
- * encoding - String encoding character set:
+ * plist_id - Property list identifier
+ * encoding - String encoding character set:
* H5T_CSET_ASCII_F -> US ASCII
* H5T_CSET_UTF8_F -> UTF-8 Unicode encoding
* OUTPUTS
* NONE
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
+h5pset_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
/******/
{
int ret_value = -1;
@@ -4753,30 +4382,30 @@ nh5pset_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
/****if* H5Pf/h5pget_char_encoding_c
* NAME
- * h5pget_char_encoding_c
+ * h5pget_char_encoding_c
* PURPOSE
* Calls H5Pget_char_encoding
*
* INPUTS
*
- * plist_id - Property list identifier
+ * plist_id - Property list identifier
* OUTPUTS
*
- * encoding - Encoding character set:
+ * encoding - Encoding character set:
* H5T_CSET_ASCII_F -> US ASCII
* H5T_CSET_UTF8_F -> UTF-8 Unicode encoding
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
+h5pget_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
/******/
{
int ret_value = -1;
@@ -4796,30 +4425,30 @@ nh5pget_char_encoding_c(hid_t_f *plist_id, int_f *encoding)
/****if* H5Pf/h5pset_copy_object_c
* NAME
- * h5pset_copy_object_c
+ * h5pset_copy_object_c
* PURPOSE
* Calls H5Pset_copy_object
*
* INPUTS
*
- * ocp_plist_id - Object copy property list identifier
- * copy_options - Copy option(s) to be set
+ * ocp_plist_id - Object copy property list identifier
+ * copy_options - Copy option(s) to be set
*
* OUTPUTS
*
* NONE
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
+h5pset_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
/******/
{
int ret_value = -1;
@@ -4836,29 +4465,29 @@ nh5pset_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
/****if* H5Pf/h5pget_copy_object_c
* NAME
- * h5pget_copy_object_c
+ * h5pget_copy_object_c
* PURPOSE
* Calls H5Pget_copy_object
*
* INPUTS
*
- * ocp_plist_id - Object copy property list identifier
+ * ocp_plist_id - Object copy property list identifier
*
* OUTPUTS
*
- * copy_options - Copy option(s) to be get
+ * copy_options - Copy option(s) to be get
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 3, 2008
+ * March 3, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
+h5pget_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
/******/
{
int ret_value = -1;
@@ -4878,31 +4507,31 @@ nh5pget_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options)
/****if* H5Pf/h5pget_data_transform_c
* NAME
- * h5pget_data_transform_c
+ * h5pget_data_transform_c
* PURPOSE
- * Calls H5Pget_data_transform
+ * Calls H5Pget_data_transform
* INPUTS
*
- * prp_id - property list identifier to query
- * expression_len - buffer size transorm expression
+ * prp_id - property list identifier to query
+ * expression_len - buffer size transorm expression
*
- * Output:
- * expression - buffer to hold transform expression
+ * Output:
+ * expression - buffer to hold transform expression
*
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 19, 2008
+ * March 19, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len, size_t_f *size)
+h5pget_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len, size_t_f *size)
/******/
{
char *c_expression = NULL; /* Buffer to hold C string */
@@ -4940,31 +4569,31 @@ done:
/****if* H5Pf/h5pset_data_transform_c
* NAME
- * h5pset_data_transform_c
+ * h5pset_data_transform_c
* PURPOSE
- * Calls H5Pset_data_transform
+ * Calls H5Pset_data_transform
* INPUTS
*
- * prp_id - property list identifier to query
- * expression - buffer to hold transform expression
- * expression_len - buffer size transorm expression
+ * prp_id - property list identifier to query
+ * expression - buffer to hold transform expression
+ * expression_len - buffer size transorm expression
*
- * Output:
+ * Output:
*
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 19, 2008
+ * March 19, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len)
+h5pset_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len)
/******/
{
char* c_expression = NULL; /* Buffer to hold C string */
@@ -4991,29 +4620,29 @@ done:
/****if* H5Pf/h5pget_local_heap_size_hint_c
* NAME
- * h5pget_local_heap_size_hint_c
+ * h5pget_local_heap_size_hint_c
* PURPOSE
- * Calls H5Pget_local_heap_size_hint
+ * Calls H5Pget_local_heap_size_hint
* INPUTS
*
- * gcpl_id - Group creation property list identifier
+ * gcpl_id - Group creation property list identifier
*
- * Output:
- * size_hint - Hint for size of local heap
+ * Output:
+ * size_hint - Hint for size of local heap
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
+h5pget_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
/******/
{
int_f ret_value = -1; /* Return value */
@@ -5032,30 +4661,30 @@ nh5pget_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
/****if* H5Pf/h5pget_est_link_info_c
* NAME
- * h5pget_est_link_info_c
+ * h5pget_est_link_info_c
* PURPOSE
- * Calls H5Pget_est_link_info
+ * Calls H5Pget_est_link_info
* INPUTS
*
- * gcpl_id - Group creation property list identifier
+ * gcpl_id - Group creation property list identifier
*
- * Output:
- * est_num_entries - Estimated number of links to be inserted into group
- * est_name_len - Estimated average length of link names
+ * Output:
+ * est_num_entries - Estimated number of links to be inserted into group
+ * est_name_len - Estimated average length of link names
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len)
+h5pget_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len)
/******/
{
int_f ret_value = -1; /* Return value */
@@ -5077,30 +4706,30 @@ nh5pget_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_nam
/****if* H5Pf/h5pset_local_heap_size_hint_c
* NAME
- * h5pset_local_heap_size_hint_c
+ * h5pset_local_heap_size_hint_c
* PURPOSE
- * Calls H5Pset_local_heap_size_hint
+ * Calls H5Pset_local_heap_size_hint
* INPUTS
*
- * gcpl_id - Group creation property list identifier
- * size_hint - Hint for size of local heap
+ * gcpl_id - Group creation property list identifier
+ * size_hint - Hint for size of local heap
*
- * Output:
+ * Output:
*
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
+h5pset_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
/******/
{
int_f ret_value = -1; /* Return value */
@@ -5117,30 +4746,30 @@ nh5pset_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint)
/****if* H5Pf/h5pset_est_link_info_c
* NAME
- * h5pset_est_link_info_c
+ * h5pset_est_link_info_c
* PURPOSE
- * Calls H5Pset_est_link_info
+ * Calls H5Pset_est_link_info
* INPUTS
*
- * gcpl_id - Group creation property list identifier
- * est_num_entries - Estimated number of links to be inserted into group
- * est_name_len - Estimated average length of link names
+ * gcpl_id - Group creation property list identifier
+ * est_num_entries - Estimated number of links to be inserted into group
+ * est_name_len - Estimated average length of link names
*
- * Output:
+ * Output:
* RETURNS
*
- * Success: 0
+ * Success: 0
* Failure: -1
*
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len)
+h5pset_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len)
/******/
{
int_f ret_value = -1; /* Return value */
@@ -5157,26 +4786,26 @@ nh5pset_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_nam
/****if* H5Pf/h5pset_link_phase_change_c
* NAME
- * h5pset_link_phase_change_c
+ * h5pset_link_phase_change_c
* PURPOSE
- * Calls H5Pset_link_phase_change
+ * Calls H5Pset_link_phase_change
*
* INPUTS
- * gcpl_id - Group creation property list identifier
- * max_compact - Maximum number of attributes to be stored in compact storage
- * min_dense - Minimum number of attributes to be stored in dense storage
- * Outputs
+ * gcpl_id - Group creation property list identifier
+ * max_compact - Maximum number of attributes to be stored in compact storage
+ * min_dense - Minimum number of attributes to be stored in dense storage
+ * Outputs
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense )
+h5pset_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense )
/******/
{
int ret_value = -1;
@@ -5194,28 +4823,28 @@ nh5pset_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_den
/****if* H5Pf/h5pset_fapl_direct_c
* NAME
- * h5pset_fapl_direct_c
+ * h5pset_fapl_direct_c
* PURPOSE
- * Calls H5Pset_fapl_direct
+ * Calls H5Pset_fapl_direct
*
* INPUTS
*
- * fapl_id - File access property list identifier
- * alignment - Required memory alignment boundary
- * block_size - File system block size
- * cbuf_size - Copy buffer size
- * Outputs
+ * fapl_id - File access property list identifier
+ * alignment - Required memory alignment boundary
+ * block_size - File system block size
+ * cbuf_size - Copy buffer size
+ * Outputs
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *alignment, size_t_f H5_ATTR_UNUSED *block_size, size_t_f H5_ATTR_UNUSED *cbuf_size)
+h5pset_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *alignment, size_t_f H5_ATTR_UNUSED *block_size, size_t_f H5_ATTR_UNUSED *cbuf_size)
/******/
{
int ret_value = -1;
@@ -5236,29 +4865,29 @@ nh5pset_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *
/****if* H5Pf/h5pget_fapl_direct_c
* NAME
- * h5pget_fapl_direct_c
+ * h5pget_fapl_direct_c
* PURPOSE
- * Calls H5Pget_fapl_direct
+ * Calls H5Pget_fapl_direct
*
* INPUTS
*
- * fapl_id - File access property list identifier
+ * fapl_id - File access property list identifier
* OUTPUTS
*
- * alignment - Required memory alignment boundary
- * block_size - File system block size
- * cbuf_size - Copy buffer size
+ * alignment - Required memory alignment boundary
+ * block_size - File system block size
+ * cbuf_size - Copy buffer size
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *alignment, size_t_f H5_ATTR_UNUSED *block_size, size_t_f H5_ATTR_UNUSED *cbuf_size)
+h5pget_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *alignment, size_t_f H5_ATTR_UNUSED *block_size, size_t_f H5_ATTR_UNUSED *cbuf_size)
/******/
{
int ret_value = -1;
@@ -5285,27 +4914,27 @@ nh5pget_fapl_direct_c(hid_t_f H5_ATTR_UNUSED *fapl_id, size_t_f H5_ATTR_UNUSED *
/****if* H5Pf/h5pset_attr_phase_change_c
* NAME
- * h5pset_attr_phase_change_c
+ * h5pset_attr_phase_change_c
* PURPOSE
- * Calls H5Pset_attr_phase_change
+ * Calls H5Pset_attr_phase_change
*
* INPUTS
- * ocpl_id - Object (dataset or group) creation property list identifier
- * max_compact - Maximum number of attributes to be stored in compact storage
- * min_dense - Minimum number of attributes to be stored in dense storage
+ * ocpl_id - Object (dataset or group) creation property list identifier
+ * max_compact - Maximum number of attributes to be stored in compact storage
+ * min_dense - Minimum number of attributes to be stored in dense storage
* OUTPUTS
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense )
+h5pset_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense )
/******/
{
int ret_value = -1;
@@ -5322,25 +4951,25 @@ nh5pset_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_den
/****if* H5Pf/h5pset_nbit_c
* NAME
- * h5pset_nbit_c
+ * h5pset_nbit_c
* PURPOSE
- * Calls H5Pset_nbit
+ * Calls H5Pset_nbit
*
* INPUTS
- * plist_id - Dataset creation property list identifier
+ * plist_id - Dataset creation property list identifier
* OUTPUTS
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 21, 2008
+ * March 21, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pset_nbit_c(hid_t_f *plist_id )
+h5pset_nbit_c(hid_t_f *plist_id )
/******/
{
int ret_value = -1;
@@ -5373,7 +5002,7 @@ nh5pset_nbit_c(hid_t_f *plist_id )
* SOURCE
*/
int_f
-nh5pset_scaleoffset_c(hid_t_f *plist_id, int_f *scale_type, int_f *scale_factor )
+h5pset_scaleoffset_c(hid_t_f *plist_id, int_f *scale_type, int_f *scale_factor )
/******/
{
int ret_value = -1;
@@ -5408,7 +5037,7 @@ nh5pset_scaleoffset_c(hid_t_f *plist_id, int_f *scale_type, int_f *scale_factor
* SOURCE
*/
int_f
-nh5pset_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
+h5pset_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
/******/
{
int ret_value = -1;
@@ -5425,29 +5054,29 @@ nh5pset_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
/****if* H5Pf/h5pget_nlinks
* NAME
- * h5pget_nlinks
+ * h5pget_nlinks
* PURPOSE
- * Calls H5Pget_nlinks
+ * Calls H5Pget_nlinks
*
* INPUTS
*
- * lapl_id - File access property list identifier
+ * lapl_id - File access property list identifier
*
* OUTPUTS
*
- * nlinks - Maximum number of links to traverse
+ * nlinks - Maximum number of links to traverse
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 24, 2008
+ * March 24, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
+h5pget_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
/******/
{
int ret_value = -1;
@@ -5466,26 +5095,26 @@ nh5pget_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks)
/****if* H5Pf/h5pget_create_inter_group_c
* NAME
- * h5pget_create_inter_group_c
+ * h5pget_create_inter_group_c
* PURPOSE
- * Calls H5Pget_create_intermediate_group
+ * Calls H5Pget_create_intermediate_group
*
* INPUTS
*
* lcpl_id - Link creation property list identifier
- * crt_intermed_group - Specifying whether to create intermediate groups upon
- * the creation of an object
+ * crt_intermed_group - Specifying whether to create intermediate groups upon
+ * the creation of an object
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * April 4, 2008
+ * April 4, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
+h5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
/******/
{
int ret_value = -1;
@@ -5505,22 +5134,22 @@ nh5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group)
}
/*----------------------------------------------------------------------------
- * Name: h5pset_chunk_cache_c
- * Purpose: Calls H5Pset_chunk_cache
- *
- * Inputs: dapl_id - Link creation property list identifier
- * rdcc_nslots -
- * rdcc_nbytes -
- * rdcc_w0 -
- *
- * Returns: 0 on success, -1 on failure
- * Programmer: M. Scot Breitenfeld
- * April 13, 2009
- * Modifications:
+ * Name: h5pset_chunk_cache_c
+ * Purpose: Calls H5Pset_chunk_cache
+ *
+ * Inputs: dapl_id - Link creation property list identifier
+ * rdcc_nslots -
+ * rdcc_nbytes -
+ * rdcc_w0 -
+ *
+ * Returns: 0 on success, -1 on failure
+ * Programmer: M. Scot Breitenfeld
+ * April 13, 2009
+ * Modifications:
*---------------------------------------------------------------------------*/
int_f
-nh5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0)
+h5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0)
{
int ret_value = -1;
@@ -5535,23 +5164,23 @@ nh5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nb
}
/*----------------------------------------------------------------------------
- * Name: h5pget_chunk_cache_c
- * Purpose: Calls H5Pget_chunk_cache
- *
- * Inputs: dapl_id - Link creation property list identifier
- * Outputs:
- * rdcc_nslots -
- * rdcc_nbytes -
- * rdcc_w0 -
- *
- * Returns: 0 on success, -1 on failure
- * Programmer: M. Scot Breitenfeld
- * April 13, 2009
- * Modifications:
+ * Name: h5pget_chunk_cache_c
+ * Purpose: Calls H5Pget_chunk_cache
+ *
+ * Inputs: dapl_id - Link creation property list identifier
+ * Outputs:
+ * rdcc_nslots -
+ * rdcc_nbytes -
+ * rdcc_w0 -
+ *
+ * Returns: 0 on success, -1 on failure
+ * Programmer: M. Scot Breitenfeld
+ * April 13, 2009
+ * Modifications:
*---------------------------------------------------------------------------*/
int_f
-nh5pget_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0)
+h5pget_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0)
{
int ret_value = -1;
size_t c_rdcc_nslots;
@@ -5572,18 +5201,18 @@ nh5pget_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nb
}
/*----------------------------------------------------------------------------
- * Name: h5pset_file_image_c
- * Purpose: Calls H5Pset_file_image
+ * Name: h5pset_file_image_c
+ * Purpose: Calls H5Pset_file_image
*
- * Inputs:
+ * Inputs:
* fapl_id - File access property list identifier
* buf_ptr - Pointer to the initial file image,
- * or NULL if no initial file image is desired
+ * or NULL if no initial file image is desired
* buf_len - Size of the supplied buffer, or 0 (zero) if no initial image is desired
*
- * Returns: 0 on success, -1 on failure
- * Programmer: M. Scot Breitenfeld
- * February 19, 2012
+ * Returns: 0 on success, -1 on failure
+ * Programmer: M. Scot Breitenfeld
+ * February 19, 2012
*---------------------------------------------------------------------------*/
int_f
@@ -5601,19 +5230,19 @@ h5pset_file_image_c(hid_t_f *fapl_id, void *buf_ptr, size_t_f *buf_len)
}
/*----------------------------------------------------------------------------
- * Name: h5pget_file_image_c
- * Purpose: Calls H5Pget_file_image
+ * Name: h5pget_file_image_c
+ * Purpose: Calls H5Pget_file_image
*
- * Inputs:
+ * Inputs:
* fapl_id - File access property list identifier
- * Outputs:
+ * Outputs:
* buf_ptr - Pointer to the initial file image,
- * or NULL if no initial file image is desired
+ * or NULL if no initial file image is desired
* buf_len - Size of the supplied buffer, or 0 (zero) if no initial image is desired
*
- * Returns: 0 on success, -1 on failure
- * Programmer: M. Scot Breitenfeld
- * February 19, 2012
+ * Returns: 0 on success, -1 on failure
+ * Programmer: M. Scot Breitenfeld
+ * February 19, 2012
*---------------------------------------------------------------------------*/
int_f
@@ -5640,3 +5269,225 @@ h5pget_file_image_c(hid_t_f *fapl_id, void **buf_ptr, size_t_f *buf_len_ptr)
return ret_value;
}
+
+#ifdef H5_HAVE_PARALLEL
+/****if* H5Pf/h5pset_fapl_mpio_c
+ * NAME
+ * h5pset_fapl_mpio_c
+ * PURPOSE
+ * Call H5Pset_fapl_mpio to set mode for parallel I/O and the user
+ * supplied communicator and info object
+ * INPUTS
+ * prp_id - property list identifier
+ * comm - MPI communicator
+ * info - MPI info object
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * Elena Pourmal
+ * Thursday, October 26, 2000
+ * HISTORY
+ *
+ * SOURCE
+*/
+int_f
+h5pset_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info)
+/******/
+{
+ int ret_value = -1;
+ hid_t c_prp_id;
+ herr_t ret;
+ MPI_Comm c_comm;
+ MPI_Info c_info;
+ c_comm = MPI_Comm_f2c(*comm);
+ c_info = MPI_Info_f2c(*info);
+
+ /*
+ * Call H5Pset_mpi function.
+ */
+ c_prp_id = *prp_id;
+ ret = H5Pset_fapl_mpio(c_prp_id, c_comm, c_info);
+ if (ret < 0) return ret_value;
+ ret_value = 0;
+ return ret_value;
+}
+/****if* H5Pf/h5pget_fapl_mpio_c
+ * NAME
+ * h5pget_fapl_mpio_c
+ * PURPOSE
+ * Call H5Pget_fapl_mpio to retrieve communicator and info object
+ * INPUTS
+ * prp_id - property list identifier
+ * comm - buffer to return MPI communicator
+ * info - buffer to return MPI info object
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * Elena Pourmal
+ * Thursday, October 26, 2000
+ * HISTORY
+ *
+ * SOURCE
+*/
+int_f
+h5pget_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info)
+/******/
+{
+ int ret_value = -1;
+ hid_t c_prp_id;
+ herr_t ret;
+ MPI_Comm c_comm;
+ MPI_Info c_info;
+
+ /*
+ * Call H5Pget_mpi function.
+ */
+ c_prp_id = *prp_id;
+ ret = H5Pget_fapl_mpio(c_prp_id, &c_comm, &c_info);
+ if (ret < 0) return ret_value;
+ *comm = (int_f) MPI_Comm_c2f(c_comm);
+ *info = (int_f) MPI_Info_c2f(c_info);
+ ret_value = 0;
+ return ret_value;
+}
+/****if* H5Pf/h5pset_dxpl_mpio_c
+ * NAME
+ * h5pset_dxpl_mpio_c
+ * PURPOSE
+ * Call H5Pset_dxpl_mpio to set transfer mode of the dataset
+ * trasfer property list
+ * INPUTS
+ * prp_id - property list identifier
+ * data_xfer_mode - transfer mode
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * Elena Pourmal
+ * Thursday, October 26, 2000
+ * HISTORY
+ *
+ * SOURCE
+*/
+int_f
+h5pset_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode)
+/******/
+{
+ int ret_value = -1;
+ hid_t c_prp_id;
+ herr_t ret;
+ H5FD_mpio_xfer_t c_data_xfer_mode;
+/*
+ switch (*data_xfer_mode) {
+
+ case H5FD_MPIO_INDEPENDENT_F:
+ c_data_xfer_mode = H5FD_MPIO_INDEPENDENT;
+ break;
+
+ case H5FD_MPIO_COLLECTIVE_F:
+ c_data_xfer_mode = H5FD_MPIO_COLLECTIVE;
+ break;
+ default:
+ return ret_value;
+ }
+*/
+ c_data_xfer_mode = (H5FD_mpio_xfer_t)*data_xfer_mode;
+ /*
+ * Call H5Pset_dxpl_mpio function.
+ */
+ c_prp_id = *prp_id;
+ ret = H5Pset_dxpl_mpio(c_prp_id, c_data_xfer_mode);
+ if (ret < 0) return ret_value;
+ ret_value = 0;
+ return ret_value;
+}
+
+/****if* H5Pf/h5pget_dxpl_mpio_c
+ * NAME
+ * h5pget_dxpl_mpio_c
+ * PURPOSE
+ * Call H5Pget_dxpl_mpio to get transfer mode of the dataset
+ * trasfer property list
+ * INPUTS
+ * prp_id - property list identifier
+ * data_xfer_mode - buffer to retrieve transfer mode
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * Elena Pourmal
+ * Thursday, June 15, 2000
+ * HISTORY
+ *
+ * SOURCE
+*/
+int_f
+h5pget_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode)
+/******/
+{
+ int ret_value = -1;
+ hid_t c_prp_id;
+ herr_t ret;
+ H5FD_mpio_xfer_t c_data_xfer_mode;
+
+ /*
+ * Call H5Pget_xfer function.
+ */
+ c_prp_id = *prp_id;
+ ret = H5Pget_dxpl_mpio(c_prp_id, &c_data_xfer_mode);
+ if (ret < 0) return ret_value;
+ *data_xfer_mode = (int_f)c_data_xfer_mode;
+/*
+ switch (c_data_xfer_mode) {
+
+ case H5FD_MPIO_INDEPENDENT:
+ *data_xfer_mode = H5FD_MPIO_INDEPENDENT_F;
+ break;
+
+ case H5FD_MPIO_COLLECTIVE:
+ *data_xfer_mode = H5FD_MPIO_COLLECTIVE_F;
+ break;
+
+ default:
+ return ret_value;
+ }
+*/
+ ret_value = 0;
+ return ret_value;
+}
+
+/****if* H5Pf/h5pget_mpio_actual_io_mode_c
+ * NAME
+ * h5pget_mpio_actual_io_mode_c
+ * PURPOSE
+ * Calls H5Pget_mpio_actual_io_mode
+ *
+ * INPUTS
+ * dxpl_id - Dataset transfer property list identifier.
+ * OUTPUTS
+ * actual_io_mode - The type of I/O performed by this process.
+ *
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * M. Scot Breitenfeld
+ * July 27, 2012
+ * SOURCE
+*/
+int_f
+h5pget_mpio_actual_io_mode_c(hid_t_f *dxpl_id, int_f *actual_io_mode)
+/******/
+{
+ int ret_value = -1;
+ H5D_mpio_actual_io_mode_t c_actual_io_mode;
+
+ /*
+ * Call H5Pget_mpio_actual_io_mode_f function.
+ */
+ if( (H5Pget_mpio_actual_io_mode((hid_t)*dxpl_id, &c_actual_io_mode)) <0 )
+ return ret_value; /* error occurred */
+
+ *actual_io_mode =(int_f)c_actual_io_mode;
+
+ ret_value = 0;
+ return ret_value;
+}
+#endif /*H5_HAVE_PARALLEL*/
diff --git a/fortran/src/H5Pff.f90 b/fortran/src/H5Pff.F90
index 3409f15..97f907b 100644
--- a/fortran/src/H5Pff.f90
+++ b/fortran/src/H5Pff.F90
@@ -1,17 +1,15 @@
-!****h* ROBODoc/H5P (F90)
+!****h* ROBODoc/H5Pff
!
! NAME
-! H5P_PROVISIONAL
+! H5P
!
! PURPOSE
-! This file contains Fortran interfaces for H5P functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
+! This file contains Fortran interfaces for H5P functions.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
+! Copyright by the Board of Trustees of the University of Illinois. *S
! All rights reserved. *
! *
! This file is part of HDF5. The full HDF5 copyright notice, including *
@@ -25,14 +23,24 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5P function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
!*****
+#include <H5config_f.inc>
+
MODULE H5P
+ USE, INTRINSIC :: ISO_C_BINDING
USE H5GLOBAL
INTERFACE h5pset_fapl_multi_f
@@ -40,6 +48,127 @@ MODULE H5P
MODULE PROCEDURE h5pset_fapl_multi_s
END INTERFACE
+ INTERFACE h5pset_fill_value_f
+ MODULE PROCEDURE h5pset_fill_value_integer
+ MODULE PROCEDURE h5pset_fill_value_char
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pset_fill_value_ptr
+
+ END INTERFACE
+
+ INTERFACE h5pget_fill_value_f
+ MODULE PROCEDURE h5pget_fill_value_integer
+ MODULE PROCEDURE h5pget_fill_value_char
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pget_fill_value_ptr
+
+ END INTERFACE
+
+ INTERFACE h5pset_f
+ MODULE PROCEDURE h5pset_integer
+ MODULE PROCEDURE h5pset_char
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pset_ptr
+
+ END INTERFACE
+
+ INTERFACE h5pget_f
+ MODULE PROCEDURE h5pget_integer
+ MODULE PROCEDURE h5pget_char
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pget_ptr
+ END INTERFACE
+
+ INTERFACE h5pregister_f
+ MODULE PROCEDURE h5pregister_integer
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pregister_ptr
+ END INTERFACE
+
+ INTERFACE h5pinsert_f
+ MODULE PROCEDURE h5pinsert_integer
+ MODULE PROCEDURE h5pinsert_char
+ ! Recommended procedure:
+ MODULE PROCEDURE h5pinsert_ptr
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pget_fill_value_c(prp_id, type_id, fillvalue) &
+ BIND(C, NAME='h5pget_fill_value_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ TYPE(C_PTR), VALUE :: fillvalue
+ END FUNCTION h5pget_fill_value_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pset_fill_value_c(prp_id, type_id, fillvalue) &
+ BIND(C, NAME='h5pset_fill_value_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ TYPE(C_PTR), VALUE :: fillvalue
+ END FUNCTION h5pset_fill_value_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pset_c(prp_id, name, name_len, value) &
+ BIND(C, NAME='h5pset_c')
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: name_len
+ TYPE(C_PTR), VALUE :: value
+ END FUNCTION h5pset_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pget_c(prp_id, name, name_len, value) &
+ BIND(C, NAME='h5pget_c')
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: name_len
+ TYPE(C_PTR), VALUE :: value
+ END FUNCTION h5pget_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pregister_c(class, name, name_len, size, value) &
+ BIND(C, NAME='h5pregister_c')
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: class
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: name_len
+ INTEGER(SIZE_T), INTENT(IN) :: size
+ TYPE(C_PTR), INTENT(IN), VALUE :: value
+ END FUNCTION h5pregister_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5pinsert_c(plist, name, name_len, size, value) &
+ BIND(C, NAME='h5pinsert_c')
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: name_len
+ INTEGER(SIZE_T), INTENT(IN) :: size
+ TYPE(C_PTR), INTENT(IN), VALUE :: value
+ END FUNCTION h5pinsert_c
+ END INTERFACE
+
CONTAINS
!****s* H5P/h5pcreate_f
@@ -92,15 +221,11 @@ CONTAINS
INTEGER(HID_T), INTENT(OUT) :: prp_id
INTEGER , INTENT(OUT) :: hdferr
!*****
-! INTEGER, EXTERNAL :: h5pcreate_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pcreate_c(class, prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCREATE_C'::h5pcreate_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pcreate_c(class, prp_id) &
+ BIND(C,NAME='h5pcreate_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: class
INTEGER(HID_T), INTENT(OUT) :: prp_id
END FUNCTION h5pcreate_c
@@ -152,15 +277,11 @@ CONTAINS
!*****
INTEGER :: flag_c
-! INTEGER, EXTERNAL :: h5pset_preserve_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_preserve_c(prp_id, flag_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_PRESERVE_C'::h5pset_preserve_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_preserve_c(prp_id, flag_c) &
+ BIND(C,NAME='h5pset_preserve_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER :: flag_c
END FUNCTION h5pset_preserve_c
@@ -210,15 +331,11 @@ CONTAINS
!*****
INTEGER :: flag_c
-! INTEGER, EXTERNAL :: h5pget_preserve_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_preserve_c(prp_id, flag_c)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_PRESERVE_C'::h5pget_preserve_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_preserve_c(prp_id, flag_c) &
+ BIND(C,NAME='h5pget_preserve_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER :: flag_c
END FUNCTION h5pget_preserve_c
@@ -265,11 +382,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pget_class_c(prp_id, classtype)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CLASS_C'::h5pget_class_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_class_c(prp_id, classtype) &
+ BIND(C,NAME='h5pget_class_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HID_T), INTENT(OUT) :: classtype
END FUNCTION h5pget_class_c
@@ -312,15 +428,11 @@ CONTAINS
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pcopy_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pcopy_c(prp_id, new_prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCOPY_C'::h5pcopy_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pcopy_c(prp_id, new_prp_id) &
+ BIND(C,NAME='h5pcopy_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HID_T), INTENT(OUT) :: new_prp_id
END FUNCTION h5pcopy_c
@@ -360,16 +472,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pclose_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pclose_c(prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCLOSE_C'::h5pclose_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pclose_c(prp_id) &
+ BIND(C,NAME='h5pclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
END FUNCTION h5pclose_c
END INTERFACE
@@ -414,16 +521,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_chunk_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_chunk_c(prp_id, ndims, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CHUNK_C'::h5pset_chunk_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_chunk_c(prp_id, ndims, dims) &
+ BIND(C,NAME='h5pset_chunk_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: ndims
INTEGER(HSIZE_T), DIMENSION(ndims), INTENT(IN) :: dims
@@ -472,15 +574,12 @@ CONTAINS
! number of chunk dimensions on success,
! -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_chunk_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+
INTERFACE
- INTEGER FUNCTION h5pget_chunk_c(prp_id, ndims, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CHUNK_C'::h5pget_chunk_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_chunk_c(prp_id, ndims, dims) &
+ BIND(C,NAME='h5pget_chunk_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER :: ndims
INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
@@ -528,11 +627,10 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pset_deflate_c(prp_id, level)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_DEFLATE_C'::h5pset_deflate_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_deflate_c(prp_id, level) &
+ BIND(C,NAME='h5pset_deflate_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: level
END FUNCTION h5pset_deflate_c
@@ -587,20 +685,16 @@ CONTAINS
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_version_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_version_c(prp_id, boot, freelist, stab, shhdr)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_VERSION_C'::h5pget_version_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_version_c(prp_id, boot, freelist, stab, shhdr) &
+ BIND(C,NAME='h5pget_version_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER, DIMENSION(:), INTENT(OUT) :: boot
- INTEGER, DIMENSION(:), INTENT(OUT) :: freelist
- INTEGER, DIMENSION(:), INTENT(OUT) :: stab
- INTEGER, DIMENSION(:), INTENT(OUT) :: shhdr
+ INTEGER, DIMENSION(*), INTENT(OUT) :: boot
+ INTEGER, DIMENSION(*), INTENT(OUT) :: freelist
+ INTEGER, DIMENSION(*), INTENT(OUT) :: stab
+ INTEGER, DIMENSION(*), INTENT(OUT) :: shhdr
END FUNCTION h5pget_version_c
END INTERFACE
@@ -640,16 +734,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_userblock_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_userblock_c(prp_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_USERBLOCK_C'::h5pset_userblock_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_userblock_c(prp_id, size) &
+ BIND(C,NAME='h5pset_userblock_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_userblock_c
@@ -693,15 +782,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_userblock_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_userblock_c(prp_id, block_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_USERBLOCK_C'::h5pget_userblock_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_userblock_c(prp_id, block_size) &
+ BIND(C,NAME='h5pget_userblock_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(OUT) :: block_size
END FUNCTION h5pget_userblock_c
@@ -747,15 +832,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pset_sizes_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_sizes_c(prp_id, sizeof_addr, sizeof_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SIZES_C'::h5pset_sizes_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_sizes_c(prp_id, sizeof_addr, sizeof_size) &
+ BIND(C,NAME='h5pset_sizes_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(SIZE_T), INTENT(IN) :: sizeof_addr
INTEGER(SIZE_T), INTENT(IN) :: sizeof_size
@@ -803,15 +884,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_sizes_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_sizes_c(prp_id, sizeof_addr, sizeof_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SIZES_C'::h5pget_sizes_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_sizes_c(prp_id, sizeof_addr, sizeof_size) &
+ BIND(C,NAME='h5pget_sizes_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(SIZE_T), INTENT(OUT) :: sizeof_addr
INTEGER(SIZE_T), INTENT(OUT) :: sizeof_size
@@ -858,16 +935,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_sym_k_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_sym_k_c(prp_id, ik, lk)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SYM_K_C'::h5pset_sym_k_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_sym_k_c(prp_id, ik, lk) &
+ BIND(C,NAME='h5pset_sym_k_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: ik
INTEGER, INTENT(IN) :: lk
@@ -913,16 +985,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_sym_k_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_sym_k_c(prp_id, ik, lk)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SYM_K_C'::h5pget_sym_k_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_sym_k_c(prp_id, ik, lk) &
+ BIND(C,NAME='h5pget_sym_k_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: ik
INTEGER, INTENT(OUT) :: lk
@@ -966,16 +1033,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_istore_k_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_istore_k_c(prp_id, ik)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_ISTORE_K_C'::h5pset_istore_k_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_istore_k_c(prp_id, ik) &
+ BIND(C,NAME='h5pset_istore_k_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: ik
END FUNCTION h5pset_istore_k_c
@@ -1018,16 +1080,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_istore_k_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_istore_k_c(prp_id, ik)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_ISTORE_K_C'::h5pget_istore_k_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_istore_k_c(prp_id, ik) &
+ BIND(C,NAME='h5pget_istore_k_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: ik
END FUNCTION h5pget_istore_k_c
@@ -1071,15 +1128,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_driver_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_driver_c(prp_id, driver)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_DRIVER_C'::h5pget_driver_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_driver_c(prp_id, driver) &
+ BIND(C,NAME='h5pget_driver_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HID_T), INTENT(OUT) :: driver
END FUNCTION h5pget_driver_c
@@ -1120,16 +1173,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_fapl_stdio_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_fapl_stdio_c(prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_STDIO_C'::h5pset_fapl_stdio_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fapl_stdio_c(prp_id) &
+ BIND(C,NAME='h5pset_fapl_stdio_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
END FUNCTION h5pset_fapl_stdio_c
END INTERFACE
@@ -1208,16 +1256,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_fapl_sec2_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_fapl_sec2_c(prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_SEC2_C'::h5pset_fapl_sec2_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fapl_sec2_c(prp_id) &
+ BIND(C,NAME='h5pset_fapl_sec2_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
END FUNCTION h5pset_fapl_sec2_c
END INTERFACE
@@ -1298,16 +1341,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_alignment_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_alignment_c(prp_id, threshold, alignment)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_ALIGNMENT_C'::h5pset_alignment_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_alignment_c(prp_id, threshold, alignment) &
+ BIND(C,NAME='h5pset_alignment_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(IN) :: threshold
INTEGER(HSIZE_T), INTENT(IN) :: alignment
@@ -1353,15 +1391,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_alignment_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_alignment_c(prp_id, threshold, alignment)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_ALIGNMENT_C'::h5pget_alignment_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_alignment_c(prp_id, threshold, alignment) &
+ BIND(C,NAME='h5pget_alignment_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(OUT) :: threshold
INTEGER(HSIZE_T), INTENT(OUT) :: alignment
@@ -1409,17 +1443,12 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
- INTEGER :: backing_store_flag
-
-! INTEGER, EXTERNAL :: h5pset_fapl_core_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+ INTEGER :: backing_store_flag
INTERFACE
- INTEGER FUNCTION h5pset_fapl_core_c(prp_id, increment, backing_store_flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_CORE_C'::h5pset_fapl_core_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fapl_core_c(prp_id, increment, backing_store_flag) &
+ BIND(C,NAME='h5pset_fapl_core_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(SIZE_T), INTENT(IN) :: increment
INTEGER :: backing_store_flag
@@ -1471,11 +1500,10 @@ CONTAINS
INTEGER :: backing_store_flag
INTERFACE
- INTEGER FUNCTION h5pget_fapl_core_c(prp_id, increment, backing_store_flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_CORE_C'::h5pget_fapl_core_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_fapl_core_c(prp_id, increment, backing_store_flag) &
+ BIND(C,NAME='h5pget_fapl_core_c')
+ IMPORT :: HID_T,SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(SIZE_T), INTENT(OUT) :: increment
INTEGER :: backing_store_flag
@@ -1525,16 +1553,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_fapl_family_f
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_fapl_family_c(prp_id, memb_size, memb_plist)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_FAMILY_C'::h5pset_fapl_family_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fapl_family_c(prp_id, memb_size, memb_plist) &
+ BIND(C,NAME='h5pset_fapl_family_c')
+ IMPORT :: HID_T,HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(IN) :: memb_size
INTEGER(HID_T), INTENT(IN) :: memb_plist
@@ -1581,16 +1604,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_fapl_family_f
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_fapl_family_c(prp_id, memb_size, memb_plist)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_FAMILY_C'::h5pget_fapl_family_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_fapl_family_c(prp_id, memb_size, memb_plist) &
+ BIND(C,NAME='h5pget_fapl_family_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(OUT) :: memb_size
INTEGER(HID_T), INTENT(OUT) :: memb_plist
@@ -1646,16 +1664,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_cache_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_cache_c(prp_id,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CACHE_C'::h5pset_cache_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_cache_c(prp_id,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0) &
+ BIND(C,NAME='h5pset_cache_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: mdc_nelmts
INTEGER(SIZE_T), INTENT(IN) :: rdcc_nelmts
@@ -1715,15 +1728,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_cache_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_cache_c(prp_id,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CACHE_C'::h5pget_cache_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_cache_c(prp_id,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0) &
+ BIND(C,NAME='h5pget_cache_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: mdc_nelmts
INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nelmts
@@ -1782,22 +1791,16 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTEGER :: meta_len, raw_len
-
-! INTEGER, EXTERNAL :: h5pset_fapl_split_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_fapl_split_c(prp_id,meta_len,meta_ext,meta_plist,raw_len,raw_ext,raw_plist)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_SPLIT_C'::h5pset_fapl_split_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: meta_ext
- !DEC$ATTRIBUTES reference :: raw_ext
+ INTEGER FUNCTION h5pset_fapl_split_c(prp_id,meta_len,meta_ext,meta_plist,raw_len,raw_ext,raw_plist) &
+ BIND(C,NAME='h5pset_fapl_split_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: meta_ext
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: meta_ext
INTEGER(HID_T), INTENT(IN) :: meta_plist
- CHARACTER(LEN=*), INTENT(IN) :: raw_ext
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: raw_ext
INTEGER(HID_T), INTENT(IN) :: raw_plist
INTEGER :: meta_len, raw_len
END FUNCTION h5pset_fapl_split_c
@@ -1896,16 +1899,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_gc_references_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_gc_references_c(prp_id, gc_reference)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_GC_REFERENCES_C'::h5pset_gc_references_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_gc_references_c(prp_id, gc_reference) &
+ BIND(C,NAME='h5pset_gc_references_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: gc_reference
END FUNCTION h5pset_gc_references_c
@@ -1950,16 +1948,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_gc_references_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_gc_references_c(prp_id, gc_reference)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_GC_REFERENCES_C'::h5pget_gc_references_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_gc_references_c(prp_id, gc_reference) &
+ BIND(C,NAME='h5pget_gc_references_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: gc_reference
END FUNCTION h5pget_gc_references_c
@@ -2011,16 +2004,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_layout_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_layout_c(prp_id, layout)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_LAYOUT_C'::h5pset_layout_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_layout_c(prp_id, layout) &
+ BIND(C,NAME='h5pset_layout_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: layout
END FUNCTION h5pset_layout_c
@@ -2071,16 +2059,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_layout_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_layout_c(prp_id, layout)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_LAYOUT_C'::h5pget_layout_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_layout_c(prp_id, layout) &
+ BIND(C,NAME='h5pget_layout_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: layout
END FUNCTION h5pget_layout_c
@@ -2127,16 +2110,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_filter_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_filter_c(prp_id, filter, flags, cd_nelmts, cd_values)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILTER_C'::h5pset_filter_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_filter_c(prp_id, filter, flags, cd_nelmts, cd_values) &
+ BIND(C,NAME='h5pset_filter_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: filter
INTEGER, INTENT(IN) :: flags
@@ -2183,16 +2161,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_nfilters_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_nfilters_c(prp_id, nfilters)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_NFILTERS_C'::h5pget_nfilters_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_nfilters_c(prp_id, nfilters) &
+ BIND(C,NAME='h5pget_nfilters_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: nfilters
END FUNCTION h5pget_nfilters_c
@@ -2261,19 +2234,18 @@ CONTAINS
!
INTERFACE
INTEGER FUNCTION h5pget_filter_c(prp_id, filter_number, flags, cd_nelmts, &
- cd_values, namelen, name, filter_id )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILTER_C'::h5pget_filter_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ cd_values, namelen, name, filter_id ) &
+ BIND(C,NAME='h5pget_filter_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: filter_number
INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values
INTEGER, INTENT(OUT) :: flags
INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts
INTEGER(SIZE_T), INTENT(IN) :: namelen
- CHARACTER(LEN=*), INTENT(OUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
INTEGER, INTENT(OUT) :: filter_id
END FUNCTION h5pget_filter_c
END INTERFACE
@@ -2326,18 +2298,16 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTEGER :: namelen
INTERFACE
- INTEGER FUNCTION h5pset_external_c(prp_id, name,namelen, offset, bytes)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_EXTERNAL_C'::h5pset_external_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pset_external_c(prp_id, name,namelen, offset, bytes) &
+ BIND(C,NAME='h5pset_external_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, OFF_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(OFF_T), INTENT(IN) :: offset
INTEGER(HSIZE_T), INTENT(IN) :: bytes
@@ -2384,15 +2354,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-! INTEGER, EXTERNAL :: h5pget_external_count_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_external_count_c(prp_id, count)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EXTERNAL_COUNT_C'::h5pget_external_count_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_external_count_c(prp_id, count) &
+ BIND(C,NAME='h5pget_external_count_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: count
END FUNCTION h5pget_external_count_c
@@ -2451,21 +2417,16 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_external_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_external_c(prp_id, idx, name_size, name, offset, bytes)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EXTERNAL_C'::h5pget_external_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pget_external_c(prp_id, idx, name_size, name, offset, bytes) &
+ BIND(C,NAME='h5pget_external_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T, OFF_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: idx
INTEGER(SIZE_T), INTENT(IN) :: name_size
- CHARACTER(LEN=*), INTENT(OUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
INTEGER(OFF_T), INTENT(OUT) :: offset
INTEGER(HSIZE_T), INTENT(OUT) :: bytes
END FUNCTION h5pget_external_c
@@ -2514,16 +2475,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_btree_ratios_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_btree_ratios_c(prp_id, left, middle, right)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_BTREE_RATIOS_C'::h5pset_btree_ratios_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_btree_ratios_c(prp_id, left, middle, right) &
+ BIND(C,NAME='h5pset_btree_ratios_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
REAL, INTENT(IN) :: left
REAL, INTENT(IN) :: middle
@@ -2574,17 +2530,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-
-! INTEGER, EXTERNAL :: h5pget_btree_ratios_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_btree_ratios_c(prp_id, left, middle, right)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_BTREE_RATIOS_C'::h5pget_btree_ratios_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_btree_ratios_c(prp_id, left, middle, right) &
+ BIND(C,NAME='h5pget_btree_ratios_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
REAL, INTENT(OUT) :: left
REAL, INTENT(OUT) :: middle
@@ -2635,16 +2585,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_fclose_degree_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_fclose_degree_c(fapl_id, degree)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FCLOSE_DEGREE_C'::h5pget_fclose_degree_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_fclose_degree_c(fapl_id, degree) &
+ BIND(C,NAME='h5pget_fclose_degree_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl_id
INTEGER, INTENT(OUT) :: degree
END FUNCTION h5pget_fclose_degree_c
@@ -2689,13 +2634,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pset_fclose_degree_c(fapl_id, degree)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FCLOSE_DEGREE_C'::h5pset_fclose_degree_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fclose_degree_c(fapl_id, degree) &
+ BIND(C,NAME='h5pset_fclose_degree_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl_id
INTEGER, INTENT(IN) :: degree
END FUNCTION h5pset_fclose_degree_c
@@ -2739,11 +2682,10 @@ CONTAINS
INTEGER :: c_flag
INTERFACE
- INTEGER FUNCTION h5pequal_c(plist1_id, plist2_id, c_flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PEQUAL_C'::h5pequal_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pequal_c(plist1_id, plist2_id, c_flag) &
+ BIND(C,NAME='h5pequal_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist1_id
INTEGER(HID_T), INTENT(IN) :: plist2_id
INTEGER, INTENT(OUT) :: c_flag
@@ -2787,11 +2729,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pset_buffer_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_BUFFER_C'::h5pset_buffer_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_buffer_c(plist_id, size) &
+ BIND(C,NAME='h5pset_buffer_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_buffer_c
@@ -2833,11 +2774,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pget_buffer_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_BUFFER_C'::h5pget_buffer_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_buffer_c(plist_id, size) &
+ BIND(C,NAME='h5pget_buffer_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_buffer_c
@@ -2885,11 +2825,10 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pfill_value_defined_c(plist_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PFILL_VALUE_DEFINED_C'::h5pfill_value_defined_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pfill_value_defined_c(plist_id, flag) &
+ BIND(C,NAME='h5pfill_value_defined_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(OUT) :: flag
END FUNCTION h5pfill_value_defined_c
@@ -2939,11 +2878,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pset_alloc_time_c(plist_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_ALLOC_TIME_C'::h5pset_alloc_time_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_alloc_time_c(plist_id, flag) &
+ BIND(C,NAME='h5pset_alloc_time_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(IN) :: flag
END FUNCTION h5pset_alloc_time_c
@@ -2993,11 +2931,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pget_alloc_time_c(plist_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_ALLOC_TIME_C'::h5pget_alloc_time_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_alloc_time_c(plist_id, flag) &
+ BIND(C,NAME='h5pget_alloc_time_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(OUT) :: flag
END FUNCTION h5pget_alloc_time_c
@@ -3043,11 +2980,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pset_fill_time_c(plist_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_TIME_C'::h5pset_fill_time_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fill_time_c(plist_id, flag) &
+ BIND(C,NAME='h5pset_fill_time_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(IN) :: flag
END FUNCTION h5pset_fill_time_c
@@ -3094,11 +3030,10 @@ CONTAINS
!*****
INTERFACE
- INTEGER FUNCTION h5pget_fill_time_c(plist_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_TIME_C'::h5pget_fill_time_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_fill_time_c(plist_id, flag) &
+ BIND(C,NAME='h5pget_fill_time_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(OUT) :: flag
END FUNCTION h5pget_fill_time_c
@@ -3137,11 +3072,10 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pset_meta_block_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_META_BLOCK_SIZE_C'::h5pset_meta_block_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_meta_block_size_c(plist_id, size) &
+ BIND(C,NAME='h5pset_meta_block_size_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_meta_block_size_c
@@ -3180,11 +3114,10 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pget_meta_block_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_META_BLOCK_SIZE_C'::h5pget_meta_block_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_meta_block_size_c(plist_id, size) &
+ BIND(C,NAME='h5pget_meta_block_size_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_meta_block_size_c
@@ -3222,13 +3155,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pset_sieve_buf_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SIEVE_BUF_SIZE_C'::h5pset_sieve_buf_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_sieve_buf_size_c(plist_id, size) &
+ BIND(C,NAME='h5pset_sieve_buf_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(SIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_sieve_buf_size_c
@@ -3266,13 +3197,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pget_sieve_buf_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SIEVE_BUF_SIZE_C'::h5pget_sieve_buf_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_sieve_buf_size_c(plist_id, size) &
+ BIND(C,NAME='h5pget_sieve_buf_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(SIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_sieve_buf_size_c
@@ -3310,13 +3239,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pset_small_data_block_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SMALL_DATA_BLOCK_SIZE_C'::h5pset_small_data_block_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_small_data_block_size_c(plist_id, size) &
+ BIND(C,NAME='h5pset_small_data_block_size_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_small_data_block_size_c
@@ -3354,13 +3281,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pget_small_data_block_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SMALL_DATA_BLOCK_SIZE_C'::h5pget_small_data_block_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_small_data_block_size_c(plist_id, size) &
+ BIND(C,NAME='h5pget_small_data_block_size_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(HSIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_small_data_block_size_c
@@ -3398,13 +3323,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pset_hyper_vector_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_HYPER_VECTOR_SIZE_C'::h5pset_hyper_vector_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_hyper_vector_size_c(plist_id, size) &
+ BIND(C,NAME='h5pset_hyper_vector_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(SIZE_T), INTENT(IN) :: size
END FUNCTION h5pset_hyper_vector_size_c
@@ -3442,13 +3365,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pget_hyper_vector_size_c(plist_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_HYPER_VECTOR_SIZE_C'::h5pget_hyper_vector_size_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_hyper_vector_size_c(plist_id, size) &
+ BIND(C,NAME='h5pget_hyper_vector_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER(SIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_hyper_vector_size_c
@@ -3491,14 +3412,13 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5pexist_c(prp_id, name, name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PEXIST_C'::h5pexist_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pexist_c(prp_id, name, name_len) &
+ BIND(C,NAME='h5pexist_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: name_len
END FUNCTION h5pexist_c
END INTERFACE
@@ -3549,14 +3469,13 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5pget_size_c(prp_id, name, name_len, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_SIZE_C'::h5pget_size_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pget_size_c(prp_id, name, name_len, size) &
+ BIND(C,NAME='h5pget_size_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: name_len
INTEGER(SIZE_T), INTENT(OUT) :: size
END FUNCTION h5pget_size_c
@@ -3594,13 +3513,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pget_nprops_c(prp_id, nprops)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_NPROPS_C'::h5pget_nprops_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_nprops_c(prp_id, nprops) &
+ BIND(C,NAME='h5pget_nprops_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(SIZE_T), INTENT(OUT) :: nprops
END FUNCTION h5pget_nprops_c
@@ -3648,14 +3565,13 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5pget_class_name_c(prp_id, name, name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CLASS_NAME_C'::h5pget_class_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pget_class_name_c(prp_id, name, name_len) &
+ BIND(C,NAME='h5pget_class_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(INOUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(INOUT) :: name
INTEGER, INTENT(IN) :: name_len
END FUNCTION h5pget_class_name_c
END INTERFACE
@@ -3698,13 +3614,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
INTERFACE
- INTEGER FUNCTION h5pget_class_parent_c(prp_id, parent_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CLASS_PARENT_C'::h5pget_class_parent_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_class_parent_c(prp_id, parent_id) &
+ BIND(C,NAME='h5pget_class_parent_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HID_T), INTENT(OUT) :: parent_id
END FUNCTION h5pget_class_parent_c
@@ -3744,11 +3658,10 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pisa_class_c(plist, pclass)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PISA_CLASS_C'::h5pisa_class_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pisa_class_c(plist, pclass) &
+ BIND(C,NAME='h5pisa_class_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist
INTEGER(HID_T), INTENT(IN) :: pclass
END FUNCTION h5pisa_class_c
@@ -3796,15 +3709,14 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5pcopy_prop_c(dst_id, src_id, name, name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCOPY_PROP_C'::h5pcopy_prop_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5pcopy_prop_c(dst_id, src_id, name, name_len) &
+ BIND(C,NAME='h5pcopy_prop_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dst_id
INTEGER(HID_T), INTENT(IN) :: src_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: name_len
END FUNCTION h5pcopy_prop_c
END INTERFACE
@@ -3845,14 +3757,13 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5premove_c(plid, name, name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREMOVE_C'::h5premove_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5premove_c(plid, name, name_len) &
+ BIND(C,NAME='h5premove_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plid
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: name_len
END FUNCTION h5premove_c
END INTERFACE
@@ -3892,14 +3803,13 @@ CONTAINS
INTEGER :: name_len
INTERFACE
- INTEGER FUNCTION h5punregister_c(class, name, name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PUNREGISTER_C'::h5punregister_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ INTEGER FUNCTION h5punregister_c(class, name, name_len) &
+ BIND(C,NAME='h5punregister_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER, INTENT(IN) :: name_len
END FUNCTION h5punregister_c
END INTERFACE
@@ -3935,11 +3845,10 @@ CONTAINS
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pclose_class_c(class)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCLOSE_CLASS_C'::h5pclose_class_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pclose_class_c(class) &
+ BIND(C,NAME='h5pclose_class_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: class
END FUNCTION h5pclose_class_c
END INTERFACE
@@ -3971,16 +3880,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_shuffle_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_shuffle_c(prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SHUFFLE_C'::h5pset_shuffle_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_shuffle_c(prp_id) &
+ BIND(C,NAME='h5pset_shuffle_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
END FUNCTION h5pset_shuffle_c
END INTERFACE
@@ -4018,16 +3922,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_edc_check_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_edc_check_c(prp_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_EDC_CHECK_C'::h5pset_edc_check_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_edc_check_c(prp_id, flag) &
+ BIND(C,NAME='h5pset_edc_check_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: flag
END FUNCTION h5pset_edc_check_c
@@ -4068,16 +3967,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pget_edc_check_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_edc_check_c(prp_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EDC_CHECK_C'::h5pget_edc_check_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_edc_check_c(prp_id, flag) &
+ BIND(C,NAME='h5pget_edc_check_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: flag
END FUNCTION h5pget_edc_check_c
@@ -4112,17 +4006,12 @@ CONTAINS
INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! INTEGER, EXTERNAL :: h5pset_fletcher32_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_fletcher32_c(prp_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FLETCHER32_C'::h5pset_fletcher32_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fletcher32_c(prp_id) &
+ BIND(C,NAME='h5pset_fletcher32_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
END FUNCTION h5pset_fletcher32_c
END INTERFACE
@@ -4158,16 +4047,11 @@ CONTAINS
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
!*****
-
-! INTEGER, EXTERNAL :: h5pset_family_offset_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_family_offset_c(prp_id, offset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAMILY_OFFSET_C'::h5pset_family_offset_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_family_offset_c(prp_id, offset) &
+ BIND(C,NAME='h5pset_family_offset_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER(HSIZE_T), INTENT(IN) :: offset
END FUNCTION h5pset_family_offset_c
@@ -4217,17 +4101,15 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5pset_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, &
- maxlen, memb_addr, flag)
- USE H5GLOBAL
+ maxlen, memb_addr, flag) &
+ BIND(C,NAME='h5pset_fapl_multi_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_MULTI_C'::h5pset_fapl_multi_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: memb_name
INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier
INTEGER, DIMENSION(*), INTENT(IN) :: memb_map
INTEGER(HID_T), DIMENSION(*), INTENT(IN) :: memb_fapl
- CHARACTER(LEN=*), DIMENSION(*), INTENT(IN) :: memb_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: memb_name
REAL, DIMENSION(*), INTENT(IN) :: memb_addr
INTEGER, DIMENSION(*) :: lenm
INTEGER :: maxlen
@@ -4273,16 +4155,11 @@ CONTAINS
!*****
INTEGER :: flag
-! INTEGER, EXTERNAL :: h5pset_fapl_multi_sc
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_fapl_multi_sc(prp_id,flag)
- USE H5GLOBAL
+ INTEGER FUNCTION h5pset_fapl_multi_sc(prp_id,flag) &
+ BIND(C,NAME='h5pset_fapl_multi_sc')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_MULTI_SC'::h5pset_fapl_multi_sc
- !DEC$ENDIF
INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier
INTEGER, INTENT(IN) :: flag
END FUNCTION h5pset_fapl_multi_sc
@@ -4340,17 +4217,15 @@ CONTAINS
!
INTERFACE
INTEGER FUNCTION h5pget_fapl_multi_c(prp_id, memb_map, memb_fapl, memb_name, lenm, &
- maxlen, memb_addr, flag, c_maxlen_out)
- USE H5GLOBAL
+ maxlen, memb_addr, flag, c_maxlen_out) &
+ BIND(C,NAME='h5pget_fapl_multi_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_MULTI_C'::h5pget_fapl_multi_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: memb_name
INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier
INTEGER, DIMENSION(*), INTENT(OUT) :: memb_map
INTEGER(HID_T), DIMENSION(*), INTENT(OUT) :: memb_fapl
- CHARACTER(LEN=*), DIMENSION(*), INTENT(OUT) :: memb_name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: memb_name
REAL, DIMENSION(*), INTENT(OUT) :: memb_addr
INTEGER, DIMENSION(*) :: lenm
INTEGER :: maxlen
@@ -4407,17 +4282,12 @@ CONTAINS
! in each data block
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! INTEGER, EXTERNAL :: h5pset_szip_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_szip_c(prp_id, options_mask, pixels_per_block)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SZIP_C'::h5pset_szip_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_szip_c(prp_id, options_mask, pixels_per_block) &
+ BIND(C,NAME='h5pset_szip_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier
INTEGER, INTENT(IN) :: options_mask
INTEGER, INTENT(IN) :: pixels_per_block
@@ -4462,16 +4332,12 @@ CONTAINS
!*****
INTEGER :: status
-! INTEGER, EXTERNAL :: h5pall_filters_avail_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pall_filters_avail_c(prp_id, status)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PALL_FILTERS_AVAIL_C'::h5pall_filters_avail_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id ! File creation property list identifier
+ INTEGER FUNCTION h5pall_filters_avail_c(prp_id, status) &
+ BIND(C,NAME='h5pall_filters_avail_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(OUT) :: status
END FUNCTION h5pall_filters_avail_c
END INTERFACE
@@ -4522,27 +4388,21 @@ CONTAINS
CHARACTER(LEN=*), INTENT(OUT) :: name ! Name of the filter
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-
-! INTEGER, EXTERNAL :: h5pget_filter_by_id_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
INTEGER FUNCTION h5pget_filter_by_id_c(prp_id, filter_id, flags, cd_nelmts, &
- cd_values, namelen, name)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILTER_BY_ID_C'::h5pget_filter_by_id_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
+ cd_values, namelen, name) &
+ BIND(C,NAME='h5pget_filter_by_id_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: filter_id
INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values
INTEGER, INTENT(OUT) :: flags
INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts
INTEGER(SIZE_T), INTENT(IN) :: namelen
- CHARACTER(LEN=*), INTENT(OUT) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
END FUNCTION h5pget_filter_by_id_c
END INTERFACE
@@ -4586,17 +4446,12 @@ CONTAINS
INTEGER, DIMENSION(*), INTENT(IN) :: cd_values ! Auxiliary data for the filter
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! INTEGER, EXTERNAL :: h5pmodify_filter_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pmodify_filter_c(prp_id, filter, flags, cd_nelmts, cd_values)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PMODIFY_FILTER_C'::h5pmodify_filter_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pmodify_filter_c(prp_id, filter, flags, cd_nelmts, cd_values) &
+ BIND(C,NAME='h5pmodify_filter_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: filter
INTEGER, INTENT(IN) :: flags
@@ -4637,17 +4492,12 @@ CONTAINS
INTEGER, INTENT(IN) :: filter ! Filter to be removed
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! INTEGER, EXTERNAL :: h5premove_filter_c
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5premove_filter_c(prp_id, filter)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREMOVE_FILTER_C'::h5premove_filter_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5premove_filter_c(prp_id, filter) &
+ BIND(C,NAME='h5premove_filter_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id
INTEGER, INTENT(IN) :: filter
END FUNCTION h5premove_filter_c
@@ -4690,16 +4540,12 @@ CONTAINS
! (Default: 6)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_attr_phase_change_c(ocpl_id, max_compact, min_dense)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_ATTR_PHASE_CHANGE_C'::h5pget_attr_phase_change_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_attr_phase_change_c(ocpl_id, max_compact, min_dense) &
+ BIND(C,NAME='h5pget_attr_phase_change_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocpl_id
INTEGER, INTENT(OUT) :: max_compact
INTEGER, INTENT(OUT) :: min_dense
@@ -4738,16 +4584,12 @@ CONTAINS
INTEGER, INTENT(IN) :: crt_order_flags ! Flags specifying whether to track and index attribute creation order
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION H5Pset_attr_creation_order_c(ocpl_id, crt_order_flags)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_ATTR_CREATION_ORDER_C'::h5pset_attr_creation_order_c
- !DEC$ENDIF
+ INTEGER FUNCTION H5Pset_attr_creation_order_c(ocpl_id, crt_order_flags) &
+ BIND(C,NAME='h5pset_attr_creation_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocpl_id
INTEGER, INTENT(IN) :: crt_order_flags
@@ -4791,12 +4633,10 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pset_shared_mesg_nindexes_c(plist_id, nindexes)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SHARED_MESG_NINDEXES_C'::h5pset_shared_mesg_nindexes_c
- !DEC$ENDIF
-
+ INTEGER FUNCTION h5pset_shared_mesg_nindexes_c(plist_id, nindexes) &
+ BIND(C,NAME='h5pset_shared_mesg_nindexes_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(IN) :: nindexes
@@ -4845,18 +4685,14 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pset_shared_mesg_index_c(fcpl_id, index_num, mesg_type_flags, min_mesg_size)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SHARED_MESG_INDEX_C'::h5pset_shared_mesg_index_c
- !DEC$ENDIF
-
+ INTEGER FUNCTION h5pset_shared_mesg_index_c(fcpl_id, index_num, mesg_type_flags, min_mesg_size) &
+ BIND(C,NAME='h5pset_shared_mesg_index_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fcpl_id
INTEGER, INTENT(IN) :: index_num
INTEGER, INTENT(IN) :: mesg_type_flags
INTEGER, INTENT(IN) :: min_mesg_size
-
END FUNCTION H5pset_shared_mesg_index_c
END INTERFACE
@@ -4898,15 +4734,12 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pget_attr_creation_order_c(ocpl_id, crt_order_flags)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_ATTR_CREATION_ORDER_C'::h5pget_attr_creation_order_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_attr_creation_order_c(ocpl_id, crt_order_flags) &
+ BIND(C,NAME='h5pget_attr_creation_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocpl_id
INTEGER, INTENT(OUT) :: crt_order_flags
-
END FUNCTION H5pget_attr_creation_order_c
END INTERFACE
@@ -4955,12 +4788,10 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pset_libver_bounds_c(fapl_id, low, high)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_LIBVER_BOUNDS_C'::h5pset_libver_bounds_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_libver_bounds_c(fapl_id, low, high) &
+ BIND(C,NAME='h5pset_libver_bounds_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl_id
INTEGER, INTENT(IN) :: low
INTEGER, INTENT(IN) :: high
@@ -5001,17 +4832,12 @@ CONTAINS
INTEGER, INTENT(IN) :: crt_order_flags ! Creation order flag(s)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_link_creation_order_c(gcpl_id, crt_order_flags)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_LINK_CREATION_ORDER_C'::h5pset_link_creation_order_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_link_creation_order_c(gcpl_id, crt_order_flags) &
+ BIND(C,NAME='h5pset_link_creation_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(IN) :: crt_order_flags
@@ -5052,16 +4878,12 @@ CONTAINS
INTEGER, INTENT(OUT) :: min_dense ! Minimum number of attributes to be stored in dense storage
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_link_phase_change_c(gcpl_id, max_compact, min_dense)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_LINK_PHASE_CHANGE_C'::h5pget_link_phase_change_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_link_phase_change_c(gcpl_id, max_compact, min_dense) &
+ BIND(C,NAME='h5pget_link_phase_change_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(OUT) :: max_compact
INTEGER, INTENT(OUT) :: min_dense
@@ -5108,11 +4930,9 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pget_obj_track_times_c(plist_id, status)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_OBJ_TRACK_TIMES_C'::h5pget_obj_track_times_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_obj_track_times_c(plist_id, status) &
+ BIND(C,NAME='h5pget_obj_track_times_c')
+ IMPORT :: HID_T
INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier
INTEGER, INTENT(OUT) :: status
END FUNCTION h5pget_obj_track_times_c
@@ -5174,11 +4994,10 @@ CONTAINS
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION h5pset_obj_track_times_c(plist_id, status)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_OBJ_TRACK_TIMES_C'::h5pset_obj_track_times_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_obj_track_times_c(plist_id, status) &
+ BIND(C,NAME='h5pset_obj_track_times_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id ! File creation property list identifier
INTEGER, INTENT(IN) :: status
END FUNCTION h5pset_obj_track_times_c
@@ -5225,16 +5044,12 @@ CONTAINS
! upon the creation of an object
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_create_inter_group_c(lcpl_id, crt_intermed_group)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CREATE_INTER_GROUP_C'::h5pset_create_inter_group_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_create_inter_group_c(lcpl_id, crt_intermed_group) &
+ BIND(C,NAME='h5pset_create_inter_group_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: lcpl_id
INTEGER, INTENT(IN) :: crt_intermed_group
END FUNCTION h5pset_create_inter_group_c
@@ -5273,17 +5088,12 @@ CONTAINS
INTEGER, INTENT(OUT) :: crt_order_flags ! Creation order flag(s)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_link_creation_order_c(gcpl_id, crt_order_flags)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_LINK_CREATION_ORDER_C'::h5pget_link_creation_order_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_link_creation_order_c(gcpl_id, crt_order_flags) &
+ BIND(C,NAME='h5pget_link_creation_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(OUT) :: crt_order_flags
@@ -5326,17 +5136,12 @@ CONTAINS
! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_char_encoding_c(plist_id, encoding)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CHAR_ENCODING_C'::h5pset_char_encoding_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_char_encoding_c(plist_id, encoding) &
+ BIND(C,NAME='h5pset_char_encoding_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(IN) :: encoding
@@ -5381,17 +5186,12 @@ CONTAINS
! H5T_CSET_UTF8_F -> UTF-8 Unicode encoding
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_char_encoding_c(plist_id, encoding)
-
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CHAR_ENCODING_C'::h5pget_char_encoding_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_char_encoding_c(plist_id, encoding) &
+ BIND(C,NAME='h5pget_char_encoding_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(OUT) :: encoding
@@ -5438,16 +5238,12 @@ CONTAINS
! H5O_COPY_WITHOUT_ATTR_FLAG_F
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_copy_object_c(ocp_plist_id, copy_options)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_COPY_OBJECT_C'::h5pset_copy_object_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_copy_object_c(ocp_plist_id, copy_options) &
+ BIND(C,NAME='h5pset_copy_object_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocp_plist_id
INTEGER, INTENT(IN) :: copy_options
END FUNCTION h5pset_copy_object_c
@@ -5491,16 +5287,12 @@ CONTAINS
! H5O_COPY_WITHOUT_ATTR_FLAG_F
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_copy_object_c(ocp_plist_id, copy_options)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_COPY_OBJECT_C'::h5pget_copy_object_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_copy_object_c(ocp_plist_id, copy_options) &
+ BIND(C,NAME='h5pget_copy_object_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocp_plist_id
INTEGER, INTENT(OUT) :: copy_options
END FUNCTION h5pget_copy_object_c
@@ -5548,18 +5340,14 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
INTEGER :: expression_len
INTEGER(SIZE_T) :: size_default
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pget_data_transform_c(plist_id, expression, expression_len, size_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_DATA_TRANSFORM_C'::h5pget_data_transform_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: expression
+ INTEGER FUNCTION h5pget_data_transform_c(plist_id, expression, expression_len, size_default) &
+ BIND(C,NAME='h5pget_data_transform_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
- CHARACTER(LEN=*), INTENT(OUT) :: expression
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: expression
INTEGER(SIZE_T) :: size_default
INTEGER :: expression_len
END FUNCTION h5pget_data_transform_c
@@ -5605,17 +5393,14 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
!*****
INTEGER :: expression_len
-! MS FORTRAN needs explicit interface for C functions called here.
-!
INTERFACE
- INTEGER FUNCTION h5pset_data_transform_c(plist_id, expression, expression_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_DATA_TRANSFORM_C'::h5pset_data_transform_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: expression
+ INTEGER FUNCTION h5pset_data_transform_c(plist_id, expression, expression_len) &
+ BIND(C,NAME='h5pset_data_transform_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
- CHARACTER(LEN=*), INTENT(IN) :: expression
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: expression
INTEGER :: expression_len
END FUNCTION h5pset_data_transform_c
END INTERFACE
@@ -5653,16 +5438,12 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
INTEGER(SIZE_T), INTENT(OUT) :: size_hint ! Hint for size of local heap
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_local_heap_size_hint_c(gcpl_id, size_hint)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_LOCAL_HEAP_SIZE_HINT_C'::h5pget_local_heap_size_hint_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_local_heap_size_hint_c(gcpl_id, size_hint) &
+ BIND(C,NAME='h5pget_local_heap_size_hint_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER(SIZE_T), INTENT(OUT) :: size_hint
END FUNCTION H5Pget_local_heap_size_hint_c
@@ -5705,16 +5486,12 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
INTEGER, INTENT(OUT) :: est_name_len ! Estimated average length of link names
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_EST_LINK_INFO_C'::h5pget_est_link_info_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len) &
+ BIND(C,NAME='h5pget_est_link_info_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(OUT) :: est_num_entries
INTEGER, INTENT(OUT) :: est_name_len
@@ -5753,16 +5530,12 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
INTEGER(SIZE_T), INTENT(IN) :: size_hint ! Hint for size of local heap
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_local_heap_size_hint_c(gcpl_id, size_hint)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_LOCAL_HEAP_SIZE_HINT_C'::h5pset_local_heap_size_hint_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_local_heap_size_hint_c(gcpl_id, size_hint) &
+ BIND(C,NAME='h5pset_local_heap_size_hint_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER(SIZE_T), INTENT(IN) :: size_hint
END FUNCTION h5pset_local_heap_size_hint_c
@@ -5802,16 +5575,12 @@ SUBROUTINE h5pget_data_transform_f(plist_id, expression, hdferr, size)
INTEGER, INTENT(IN) :: est_name_len ! Estimated average length of link names
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_EST_LINK_INFO_C'::h5pset_est_link_info_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_est_link_info_c(gcpl_id, est_num_entries, est_name_len) &
+ BIND(C,NAME='h5pset_est_link_info_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(IN) :: est_num_entries
INTEGER, INTENT(IN) :: est_name_len
@@ -5852,20 +5621,15 @@ SUBROUTINE h5pset_link_phase_change_f(gcpl_id, max_compact, min_dense, hdferr)
INTEGER, INTENT(IN) :: min_dense ! Minimum number of attributes to be stored in dense storage
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_link_phase_change_c(gcpl_id, max_compact, min_dense)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_LINK_PHASE_CHANGE_C'::h5pset_link_phase_change_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_link_phase_change_c(gcpl_id, max_compact, min_dense) &
+ BIND(C,NAME='h5pset_link_phase_change_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(IN) :: max_compact
INTEGER, INTENT(IN) :: min_dense
-
END FUNCTION h5pset_link_phase_change_c
END INTERFACE
@@ -5904,16 +5668,12 @@ SUBROUTINE h5pset_fapl_direct_f(fapl_id, alignment, block_size, cbuf_size, hdfer
INTEGER(SIZE_T), INTENT(IN) :: cbuf_size ! Copy buffer size
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_fapl_direct_c(fapl_id, alignment, block_size, cbuf_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FAPL_DIRECT_C'::h5pset_fapl_direct_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_fapl_direct_c(fapl_id, alignment, block_size, cbuf_size) &
+ BIND(C,NAME='h5pset_fapl_direct_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl_id
INTEGER(SIZE_T), INTENT(IN) :: alignment
INTEGER(SIZE_T), INTENT(IN) :: block_size
@@ -5956,16 +5716,12 @@ SUBROUTINE h5pset_fapl_direct_f(fapl_id, alignment, block_size, cbuf_size, hdfer
INTEGER(SIZE_T), INTENT(OUT) :: cbuf_size ! Copy buffer size
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_fapl_direct_c(fapl_id, alignment, block_size, cbuf_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FAPL_DIRECT_C'::h5pget_fapl_direct_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_fapl_direct_c(fapl_id, alignment, block_size, cbuf_size) &
+ BIND(C,NAME='h5pget_fapl_direct_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl_id
INTEGER(SIZE_T), INTENT(OUT) :: alignment
INTEGER(SIZE_T), INTENT(OUT) :: block_size
@@ -6010,16 +5766,12 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
! (Default: 6)
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-!
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_attr_phase_change_c(ocpl_id, max_compact, min_dense)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_ATTR_PHASE_CHANGE_C'::h5pset_attr_phase_change_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_attr_phase_change_c(ocpl_id, max_compact, min_dense) &
+ BIND(C,NAME='h5pset_attr_phase_change_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: ocpl_id
INTEGER, INTENT(IN) :: max_compact
INTEGER, INTENT(IN) :: min_dense
@@ -6056,11 +5808,10 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
INTEGER , INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION H5Pset_nbit_c(plist_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_NBIT_C'::h5pset_nbit_c
- !DEC$ENDIF
+ INTEGER FUNCTION H5Pset_nbit_c(plist_id) &
+ BIND(C,NAME='h5pset_nbit_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
END FUNCTION H5Pset_nbit_c
END INTERFACE
@@ -6102,11 +5853,10 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
!*****
INTERFACE
- INTEGER FUNCTION h5pset_scaleoffset_c(plist_id, scale_type, scale_factor)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_SCALEOFFSET_C'::h5pset_scaleoffset_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_scaleoffset_c(plist_id, scale_type, scale_factor) &
+ BIND(C,NAME='h5pset_scaleoffset_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: plist_id
INTEGER, INTENT(IN) :: scale_type
INTEGER, INTENT(IN) :: scale_factor
@@ -6149,16 +5899,12 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
INTEGER(SIZE_T), INTENT(IN) :: nlinks ! Maximum number of links to traverse
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pset_nlinks_c(lapl_id, nlinks)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_NLINKS_C'::h5pset_nlinks_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_nlinks_c(lapl_id, nlinks) &
+ BIND(C,NAME='h5pset_nlinks_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: lapl_id
INTEGER(SIZE_T), INTENT(IN) :: nlinks
END FUNCTION h5pset_nlinks_c
@@ -6197,15 +5943,12 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
INTEGER(SIZE_T), INTENT(OUT) :: nlinks ! Maximum number of links to traverse
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
-!*****
-! MS FORTRAN needs explicit interface for C functions called here.
-!
+!*****
INTERFACE
- INTEGER FUNCTION h5pget_nlinks_c(lapl_id, nlinks)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_NLINKS_C'::h5pget_nlinks_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_nlinks_c(lapl_id, nlinks) &
+ BIND(C,NAME='h5pget_nlinks_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: lapl_id
INTEGER(SIZE_T), INTENT(OUT) :: nlinks
END FUNCTION h5pget_nlinks_c
@@ -6251,11 +5994,10 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pget_create_inter_group_c(lcpl_id, crt_intermed_group)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CREATE_INTER_GROUP_C'::h5pget_create_inter_group_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_create_inter_group_c(lcpl_id, crt_intermed_group) &
+ BIND(C,NAME='h5pget_create_inter_group_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: lcpl_id
INTEGER, INTENT(IN) :: crt_intermed_group
END FUNCTION h5pget_create_inter_group_c
@@ -6320,11 +6062,10 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
!*****
INTERFACE
- INTEGER FUNCTION h5pset_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_CHUNK_CACHE_C'::h5pset_chunk_cache_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pset_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0) &
+ BIND(C,NAME='h5pset_chunk_cache_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dapl_id
INTEGER(SIZE_T), INTENT(IN) :: rdcc_nslots
INTEGER(SIZE_T), INTENT(IN) :: rdcc_nbytes
@@ -6378,11 +6119,10 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
! 0 on success and -1 on failure
!*****
INTERFACE
- INTEGER FUNCTION h5pget_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_CHUNK_CACHE_C'::h5pget_chunk_cache_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5pget_chunk_cache_c(dapl_id, rdcc_nslots, rdcc_nbytes, rdcc_w0) &
+ BIND(C,NAME='h5pget_chunk_cache_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dapl_id
INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nslots
INTEGER(SIZE_T), INTENT(OUT) :: rdcc_nbytes
@@ -6394,6 +6134,1193 @@ SUBROUTINE h5pset_attr_phase_change_f(ocpl_id, max_compact, min_dense, hdferr)
END SUBROUTINE h5pget_chunk_cache_f
+!
+!****s* H5P (F03)/h5pset_fill_value_f_F90
+!
+! NAME
+! h5pset_fill_value_f
+!
+! PURPOSE
+! Sets fill value for a dataset creation property list
+!
+! Inputs:
+! prp_id - Property list identifier
+! type_id - Datatype identifier of fill value datatype (in memory)
+! fillvalue - Fillvalue
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+!
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 14, 2001
+!
+! Added the recommended way of passing fillvalue
+! and that is by passing the C address, all other
+! ways are obsolete and should be avoided. June, 2008 MSB
+!
+! NOTES
+! h5pset(get)fill_value_f function is overloaded to support
+! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pset_fill_value_f(prp_id, type_id, fillvalue, hdferr)
+!! IMPLICIT NONE
+!! INTEGER(HID_T), INTENT(IN) :: prp_id
+!! INTEGER(HID_T), INTENT(IN) :: type_id
+!! TYPE(VOID) , INTENT(IN) :: fillvalue
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+
+ SUBROUTINE h5pset_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ INTEGER, INTENT(IN), TARGET :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ TYPE(C_PTR) :: f_ptr ! C address
+
+ f_ptr = C_LOC(fillvalue)
+
+ hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)
+
+ END SUBROUTINE h5pset_fill_value_integer
+!
+!****s* H5P (F03)/h5pget_fill_value_f_F90
+!
+! NAME
+! h5pget_fill_value_f
+!
+! PURPOSE
+! Gets fill value for a dataset creation property list
+!
+! Inputs:
+! prp_id - Property list identifier
+! type_id - Datatype identifier of fill value datatype (in memory)
+!
+! Outputs:
+! fillvalue - Fillvalue
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+!
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 14, 2001
+!
+! Added the recommended way of passing fillvalue
+! and that is by passing the C address, all other
+! ways are obsolete and should be avoided. June, 2008 MSB
+!
+! NOTES
+! h5pget(get)fill_value_f function is overloaded to support
+! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pget_fill_value_f(prp_id, type_id, fillvalue, hdferr)
+!! INTEGER(HID_T), INTENT(IN) :: prp_id
+!! INTEGER(HID_T), INTENT(IN) :: type_id
+!! TYPE(VOID) , INTENT(OUT) :: fillvalue
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE h5pget_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ INTEGER, INTENT(OUT), TARGET :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ TYPE(C_PTR) :: f_ptr ! C address
+
+ f_ptr = C_LOC(fillvalue)
+
+ hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)
+
+ END SUBROUTINE h5pget_fill_value_integer
+
+ SUBROUTINE h5pset_fill_value_char(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ CHARACTER, INTENT(IN), TARGET :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ TYPE(C_PTR) :: f_ptr ! C address
+
+ f_ptr = C_LOC(fillvalue)
+ hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)
+
+ END SUBROUTINE h5pset_fill_value_char
+
+ SUBROUTINE h5pget_fill_value_char(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ CHARACTER, INTENT(OUT) :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER :: i
+ CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
+ INTEGER :: chr_len
+
+ TYPE(C_PTR) :: f_ptr ! C address
+ ! To resolve Issue #1 outlined in the preamble of this file we
+ ! need to pack the character string into an array.
+
+ chr_len = LEN(fillvalue)
+ ALLOCATE(chr(1:chr_len), STAT=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+
+ f_ptr = C_LOC(chr(1)(1:1))
+ hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)
+
+ DO i = 1, chr_len
+ fillvalue(i:i) = chr(i)
+ ENDDO
+ DEALLOCATE(chr)
+
+ END SUBROUTINE h5pget_fill_value_char
+!
+!****s* H5P (F03)/h5pset_fill_value_f_F03
+!
+! NAME
+! h5pset_fill_value_f
+!
+! PURPOSE
+! Sets fill value for a dataset creation property list
+!
+! Inputs:
+! prp_id - Property list identifier
+! type_id - Datatype identifier of fill value datatype (in memory)
+! fillvalue - Fillvalue
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+!
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 14, 2001
+!
+! Added the recommended way of passing fillvalue
+! and that is by passing the C address, all other
+! ways are obsolete and should be avoided. June, 2008 MSB
+!
+! NOTES
+! h5pset(get)fill_value_f function is overloaded to support
+! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5pset_fill_value_f(prp_id, type_id, fillvalue, hdferr)
+!! INTEGER(HID_T), INTENT(IN) :: prp_id
+!! INTEGER(HID_T), INTENT(IN) :: type_id
+!! TYPE(C_PTR) , INTENT(IN) :: fillvalue
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE h5pset_fill_value_ptr(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ TYPE(C_PTR), INTENT(IN) :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ hdferr = h5pset_fill_value_c(prp_id, type_id, fillvalue)
+
+ END SUBROUTINE h5pset_fill_value_ptr
+
+!
+!****s* H5P (F03)/h5pget_fill_value_f_F03
+!
+! NAME
+! h5pget_fill_value_f
+!
+! PURPOSE
+! Gets fill value for a dataset creation property list
+!
+! Inputs:
+! prp_id - Property list identifier
+! type_id - Datatype identifier of fill value datatype (in memory)
+!
+! Outputs:
+! fillvalue - Fillvalue
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+!
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 14, 2001
+!
+! Added the recommended way of passing fillvalue
+! and that is by passing the C address, all other
+! ways are obsolete and should be avoided. June, 2008 MSB
+!
+! NOTES
+! h5pget(get)fill_value_f function is overloaded to support
+! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5pget_fill_value_f(prp_id, type_id, fillvalue, hdferr)
+!! INTEGER(HID_T), INTENT(IN) :: prp_id
+!! INTEGER(HID_T), INTENT(IN) :: type_id
+!! TYPE(C_PTR) , INTENT(OUT) :: fillvalue
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE h5pget_fill_value_ptr(prp_id, type_id, fillvalue, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
+ ! of fillvalue datatype
+ ! (in memory)
+ TYPE(C_PTR), INTENT(OUT) :: fillvalue ! Fillvalue
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ hdferr = h5pget_fill_value_c(prp_id, type_id, fillvalue)
+
+ END SUBROUTINE h5pget_fill_value_ptr
+
+!
+!****s* H5P (F03)/h5pset_f_F90
+!
+! NAME
+! h5pset_f
+!
+! PURPOSE
+! Sets a property list value
+!
+! Inputs:
+! prp_id - Property list identifier to modify
+! name - Name of property to modify
+! value - Property value, supported types are:
+! INTEGER
+! REAL
+! DOUBLE PRECISION
+! CHARACTER(LEN=*)
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 9, 2002
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pset_f(plid, name, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: plid
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! TYPE , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pset_integer(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ INTEGER, INTENT(IN), TARGET :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTEGER :: name_len
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(value)
+
+ name_len = LEN(name)
+ hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
+
+ END SUBROUTINE h5pset_integer
+
+ SUBROUTINE h5pset_char(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ INTEGER :: i
+ CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
+ INTEGER :: chr_len
+
+ TYPE(C_PTR) :: f_ptr
+ ! To resolve Issue #1 outlined in the preamble of this file we
+ ! need to pack the character string into an array.
+
+ chr_len = LEN(value)
+ ALLOCATE(chr(1:chr_len), STAT=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+
+ DO i = 1, chr_len
+ chr(i) = value(i:i)
+ ENDDO
+
+ f_ptr = C_LOC(chr(1)(1:1))
+
+ name_len = LEN(name)
+ hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
+
+ DEALLOCATE(chr)
+
+ END SUBROUTINE h5pset_char
+!
+!****s* H5P (F03)/h5pget_f_F90
+!
+! NAME
+! h5pget_f
+!
+! PURPOSE
+! Queries the value of a property.
+!
+! Inputs:
+! prp_id - Property list identifier to modify
+! name - Name of property to get
+! value - Property value, supported types are:
+! INTEGER
+! REAL
+! DOUBLE PRECISION
+! CHARACTER(LEN=*)
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 9, 2002
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pget_f(plid, name, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: plid
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! TYPE , INTENT(OUT) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE h5pget_integer(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ INTEGER, INTENT(OUT), TARGET :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(value)
+
+ name_len = LEN(name)
+ hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
+
+ END SUBROUTINE h5pget_integer
+
+ SUBROUTINE h5pget_char(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ CHARACTER(LEN=*), INTENT(OUT) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ INTEGER :: i
+ CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
+ INTEGER :: chr_len
+ TYPE(C_PTR) :: f_ptr
+
+ chr_len = LEN(value)
+ ALLOCATE(chr(1:chr_len), STAT=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ f_ptr = C_LOC(chr(1)(1:1))
+
+ name_len = LEN(name)
+ hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
+
+ DO i = 1, chr_len
+ value(i:i) = chr(i)
+ ENDDO
+
+ DEALLOCATE(chr)
+
+ END SUBROUTINE h5pget_char
+
+!
+!****s* H5P (F03)/h5pset_f_F03
+!
+! NAME
+! h5pset_f
+!
+! PURPOSE
+! Sets a property list value
+!
+! Inputs:
+! prp_id - Property list identifier to modify
+! name - Name of property to modify
+! value - Pointer to value to set the property to
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 9, 2002
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5pset_f(plid, name, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: plid
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! TYPE(C_PTR) , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pset_ptr(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ TYPE(C_PTR), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ name_len = LEN(name)
+ hdferr = h5pset_c(prp_id, name, name_len, value)
+
+ END SUBROUTINE h5pset_ptr
+!
+!****s* H5P (F03)/h5pget_f_F03
+!
+! NAME
+! h5pget_f (F03)
+!
+! PURPOSE
+! Queries the value of a property.
+!
+! Inputs:
+! prp_id - Property list identifier to modify
+! name - Name of property to get
+! value - Pointer to a location to which to copy the value of of the property
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 9, 2002
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5pget_f(plid, name, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: plid
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! TYPE(C_PTR) , INTENT(OUT) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pget_ptr(prp_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
+ TYPE(C_PTR), INTENT(OUT) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ name_len = LEN(name)
+ hdferr = h5pget_c(prp_id, name, name_len, value)
+
+ END SUBROUTINE h5pget_ptr
+!
+!****s* H5P (F03)/h5pregister_f_F90
+!
+! NAME
+! h5pregister
+!
+! PURPOSE
+! Registers a permanent property with a property list class.
+!
+! Inputs:
+! class - Property list class identifier
+! name - Name of property to register
+! size - Size of the property value
+! value - Property value, supported types are:
+! INTEGER
+! REAL
+! DOUBLE PRECISION
+! CHARACTER(LEN=*)
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! October 10, 2002
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pregister_f(class, name, size, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: class
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! INTEGER(SIZE_T) , INTENT(IN) :: size
+!! TYPE , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pregister_integer(class, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
+ INTEGER, INTENT(IN), TARGET :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(value)
+
+ name_len = LEN(name)
+ hdferr = h5pregister_c(class, name, name_len, size, f_ptr)
+
+ END SUBROUTINE h5pregister_integer
+
+
+ SUBROUTINE h5pregister_char(class, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
+ INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value
+ CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ INTEGER :: i
+ CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
+ INTEGER :: chr_len
+
+ TYPE(C_PTR) :: f_ptr
+ ! To resolve Issue #1 outlined in the preamble of this file we
+ ! need to pack the character string into an array.
+
+ chr_len = LEN(value)
+ ALLOCATE(chr(1:chr_len), STAT=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+
+ DO i = 1, chr_len
+ chr(i) = value(i:i)
+ ENDDO
+
+ f_ptr = C_LOC(chr(1)(1:1))
+
+ name_len = LEN(name)
+ hdferr = h5pregister_c(class, name, name_len, size, f_ptr)
+ DEALLOCATE(chr)
+ END SUBROUTINE h5pregister_char
+!
+!****s* H5P (F03)/h5pregister_f_F03
+!
+! NAME
+! h5pregister (F03)
+!
+! PURPOSE
+! Registers a permanent property with a property list class.
+!
+! Inputs:
+! class - Property list class identifier
+! name - Name of property to register
+! size - Size of the property value
+! value - Pointer to value to set the property to
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! June 24, 2008
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5pregister_f(class, name, size, value, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: class
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! INTEGER(SIZE_T) , INTENT(IN) :: size
+!! TYPE(C_PTR) , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ SUBROUTINE h5pregister_ptr(class, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
+ TYPE(C_PTR), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ name_len = LEN(name)
+ hdferr = h5pregister_c(class, name, name_len, size, value)
+ END SUBROUTINE h5pregister_ptr
+
+!
+!****s* H5P (F03)/h5pinsert_f_F90
+!
+! NAME
+! h5pinsert (f90)
+!
+! PURPOSE
+! Registers a temporary property with a property list class.
+!
+! Inputs:
+! plist - Property list class identifier
+! name - Name of property to insert
+! size - Size of the property value
+! value - Property value, supported types are:
+! INTEGER
+! REAL
+! DOUBLE PRECISION
+! CHARACTER(LEN=*)
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! October 10, 2002
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pinsert_f
+!! INTEGER(HID_T) , INTENT(IN) :: plist
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! INTEGER(SIZE_T) , INTENT(IN) :: size
+!! TYPE , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pinsert_integer(plist, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
+ INTEGER, INTENT(IN), TARGET :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+ TYPE(c_ptr) :: f_ptr
+
+ f_ptr = c_loc(value)
+
+ name_len = LEN(name)
+ hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)
+ END SUBROUTINE h5pinsert_integer
+
+ SUBROUTINE h5pinsert_char(plist, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value
+ CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ INTEGER :: i
+ CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
+ INTEGER :: chr_len
+
+ TYPE(c_ptr) :: f_ptr
+ ! To resolve Issue #1 outlined in the preamble of this file we
+ ! need to pack the character string into an array.
+
+ chr_len = LEN(value)
+ ALLOCATE(chr(1:chr_len), STAT=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+
+ DO i = 1, chr_len
+ chr(i) = value(i:i)
+ ENDDO
+
+ f_ptr = C_LOC(chr(1)(1:1))
+
+ name_len = LEN(name)
+ hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)
+
+ DEALLOCATE(chr)
+
+ END SUBROUTINE h5pinsert_char
+
+!
+!****s* H5P (F03)/h5pinsert_f_F03
+!
+! NAME
+! h5pinsert (f03)
+!
+! PURPOSE
+! Registers a temporary property with a property list class.
+!
+! Inputs:
+! plist - Property list class identifier
+! name - Name of property to insert
+! size - Size of the property value
+! value - Pointer to new value pointer for the property being modified
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! June 24, 2008
+!
+! Fortran90 Interface:
+!! SUBROUTINE h5pinsert_f
+!! INTEGER(HID_T) , INTENT(IN) :: plist
+!! CHARACTER(LEN=*), INTENT(IN) :: name
+!! INTEGER(SIZE_T) , INTENT(IN) :: size
+!! TYPE(C_PTR) , INTENT(IN) :: value
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ SUBROUTINE h5pinsert_ptr(plist, name, size, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value
+ TYPE(c_ptr), INTENT(IN) :: value ! Property value
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER :: name_len
+
+ name_len = LEN(name)
+ hdferr = h5pinsert_c(plist, name , name_len, size, value)
+ END SUBROUTINE h5pinsert_ptr
+!
+!****s* H5P (F03)/h5pcreate_class_f_F03
+!
+! NAME
+! h5pcreate_class_f
+!
+! PURPOSE
+! Create a new property list class
+!
+! Inputs:
+! parent - Parent property list class identifier
+! Possible values include:
+! H5P_ROOT_F
+! H5P_FILE_CREATE_F
+! H5P_FILE_ACCESS_F
+! H5P_DATASET_CREATE_F
+! H5P_DATASET_XFER_F
+! H5P_FILE_MOUNT_F
+! name - Name of property to create
+!
+! Outputs:
+! class - Property list class identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! H5P_cls_create_func_t (create) - Callback routine called when a property list is created
+! create_data - User pointer to any class creation information needed
+! H5P_cls_copy_func_t (copy) - Callback routine called when a property list is copied
+! copy_data - User pointer to any class copy information needed
+! H5P_cls_close_func_t (close) - Callback routine called when a property list is being closed
+! close_data - User pointer to any class close information needed
+!
+! AUTHOR
+! Elena Pourmal
+! October 9, 2002
+!
+! HISTORY
+! Added callback arguments
+! M. Scot Breitenfeld, July 3, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5pcreate_class_f(parent, name, class, hdferr, create, create_data, &
+ copy, copy_data, CLOSE, close_data)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: parent
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER(HID_T) , INTENT(OUT) :: class
+ INTEGER , INTENT(OUT) :: hdferr
+ TYPE(C_PTR) , OPTIONAL :: create_data, copy_data, close_data
+ TYPE(C_FUNPTR) , OPTIONAL :: create, copy, close
+!*****
+ INTEGER :: name_len
+ TYPE(C_PTR) :: create_data_default, copy_data_default, close_data_default
+ TYPE(C_FUNPTR) :: create_default, copy_default, close_default
+ INTERFACE
+ INTEGER FUNCTION h5pcreate_class_c(parent, name, name_len, class, &
+ create, create_data, copy, copy_data, close, close_data) &
+ BIND(C, NAME='h5pcreate_class_c')
+ IMPORT :: c_char, c_ptr, c_funptr
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN) :: parent
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: name_len
+ INTEGER(HID_T), INTENT(OUT) :: class
+ TYPE(C_PTR), VALUE :: create_data, copy_data, close_data
+ TYPE(C_FUNPTR), VALUE :: create, copy, close
+ END FUNCTION h5pcreate_class_c
+ END INTERFACE
+ name_len = LEN(name)
+
+ create_default = c_null_funptr !fix:scot
+ create_data_default = c_null_ptr
+ copy_default = c_null_funptr !fix:scot
+ copy_data_default = c_null_ptr
+ close_default = c_null_funptr !fix:scot
+ close_data_default = c_null_ptr
+
+ IF(PRESENT(create)) create_default = create
+ IF(PRESENT(create_data)) create_data_default = create_data
+ IF(PRESENT(copy)) copy_default = copy
+ IF(PRESENT(copy_data)) copy_data_default = copy_data
+ IF(PRESENT(close)) close_default = close
+ IF(PRESENT(close_data)) close_data_default = close_data
+
+ hdferr = h5pcreate_class_c(parent, name , name_len, class, &
+ create_default, create_data_default, &
+ copy_default, copy_data_default, &
+ close_default, close_data_default)
+
+ END SUBROUTINE h5pcreate_class_f
+
+!
+!****s* H5P (F03)/h5pset_file_image_f_F03
+!
+! NAME
+! h5pset_file_image_f
+!
+! PURPOSE
+! Sets an initial file image in a memory buffer.
+!
+! Inputs:
+! fapl_id - File access property list identifier
+! buf_ptr - Pointer to the initial file image,
+! or C_NULL_PTR if no initial file image is desired
+! buf_len - Size of the supplied buffer, or 0 (zero) if no initial image is desired
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 19, 2012
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5pset_file_image_f(fapl_id, buf_ptr, buf_len, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: fapl_id
+ TYPE(C_PTR) , INTENT(IN) :: buf_ptr
+ INTEGER(SIZE_T), INTENT(IN) :: buf_len
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pset_file_image_c(fapl_id, buf_ptr, buf_len) &
+ BIND(C, NAME='h5pset_file_image_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T, SIZE_T
+ INTEGER(HID_T), INTENT(IN) :: fapl_id
+ TYPE(C_PTR), VALUE :: buf_ptr
+ INTEGER(SIZE_T), INTENT(IN) :: buf_len
+ END FUNCTION h5pset_file_image_c
+ END INTERFACE
+
+ hdferr = h5pset_file_image_c(fapl_id, buf_ptr, buf_len)
+
+ END SUBROUTINE h5pset_file_image_f
+!
+!****s* H5P (F03)/h5pget_file_image_f_F03
+!
+! NAME
+! h5pget_file_image_f
+!
+! PURPOSE
+! Retrieves a copy of the file image designated as the initial content and structure of a file.
+!
+! Inputs:
+! fapl_id - File access property list identifier.
+!
+! Outputs:
+! buf_ptr - Will hold either a C_NULL_PTR or a scalar of type
+! c_loc. If buf_ptr is not C_NULL_PTR, on successful
+! return, buf_ptr shall contain a C pointer to a copy
+! of the initial image provided in the last call to
+! H5Pset_file_image_f for the supplied fapl_id, or
+! buf_ptr shall contain a C_NULL_PTR if there is no
+! initial image set.
+!
+! buf_len_ptr - Contains the value of the buffer parameter for
+! the initial image in the supplied fapl_id. The value
+! will be 0 if no initial image is set.
+!
+!
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 19, 2012
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5pget_file_image_f(fapl_id, buf_ptr, buf_len_ptr, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: fapl_id
+ TYPE(C_PTR) , INTENT(OUT), DIMENSION(*) :: buf_ptr
+ INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr
+ INTEGER , INTENT(OUT) :: hdferr
+
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pget_file_image_c(fapl_id, buf_ptr, buf_len_ptr) &
+ BIND(C, NAME='h5pget_file_image_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T, SIZE_T
+ INTEGER(HID_T), INTENT(IN) :: fapl_id
+ TYPE(C_PTR), DIMENSION(*), INTENT(OUT) :: buf_ptr
+ INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr
+ END FUNCTION h5pget_file_image_c
+ END INTERFACE
+
+ hdferr = h5pget_file_image_c(fapl_id, buf_ptr, buf_len_ptr)
+
+ END SUBROUTINE h5pget_file_image_f
+
+! *********************************************************************
+! Fortran interfaces for H5P functions needed by parallel MPI programs.
+! *********************************************************************
+
+#ifdef H5_HAVE_PARALLEL
+!****s* H5P/h5pset_fapl_mpio_f
+!
+! NAME
+! h5pset_fapl_mpio_f
+!
+! PURPOSE
+! Stores MPI IO communicator information to the file
+! access property list.
+!
+! INPUTS
+! prp_id - file access property list identifier
+! comm - MPI-2 communicator
+! info - MPI-2 info object
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! November, 2000
+!
+! SOURCE
+ SUBROUTINE h5pset_fapl_mpio_f(prp_id, comm, info, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER, INTENT(IN) :: comm ! MPI communicator to be used for file open
+ ! as defined in MPI_FILE_OPEN of MPI-2
+ INTEGER, INTENT(IN) :: info ! MPI info object to be used for file open
+ ! as defined in MPI_FILE_OPEN of MPI-2
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pset_fapl_mpio_c(prp_id, comm, info) &
+ BIND(C,NAME='h5pset_fapl_mpio_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER , INTENT(IN) :: comm
+ INTEGER , INTENT(IN) :: info
+ END FUNCTION h5pset_fapl_mpio_c
+ END INTERFACE
+
+ hdferr = h5pset_fapl_mpio_c(prp_id, comm, info)
+
+ END SUBROUTINE h5pset_fapl_mpio_f
+
+!****s* H5P/h5pget_fapl_mpio_f
+!
+! NAME
+! h5pget_fapl_mpio_f
+!
+! PURPOSE
+! Returns MPI communicator information.
+!
+! INPUTS
+! prp_id - file access property list identifier
+! OUTPUTS
+! comm - MPI-2 communicator
+! info - MPI-2 info object
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! November, 2000
+!
+! SOURCE
+ SUBROUTINE h5pget_fapl_mpio_f(prp_id, comm, info, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER, INTENT(OUT) :: comm ! buffer to return communicator
+ INTEGER, INTENT(OUT) :: info ! buffer to return info object
+ ! as defined in MPI_FILE_OPEN of MPI-2
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pget_fapl_mpio_c(prp_id, comm, info) &
+ BIND(C,NAME='h5pget_fapl_mpio_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER , INTENT(OUT) :: comm
+ INTEGER , INTENT(OUT) :: info
+ END FUNCTION h5pget_fapl_mpio_c
+ END INTERFACE
+
+ hdferr = h5pget_fapl_mpio_c(prp_id, comm, info)
+
+ END SUBROUTINE h5pget_fapl_mpio_f
+
+!****s* H5P/h5pset_dxpl_mpio_f
+!
+! NAME
+! h5pset_dxpl_mpio_f
+!
+! PURPOSE
+! Sets data transfer mode.
+!
+! INPUTS
+! prp_id - data transfer property list identifier
+! data_xfer_mode - transfer mode; possible values are:
+! H5FD_MPIO_INDEPENDENT_F
+! H5FD_MPIO_COLLECTIVE_F
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! November, 2000
+!
+! SOURCE
+ SUBROUTINE h5pset_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER, INTENT(IN) :: data_xfer_mode ! Data transfer mode. Possible values are:
+ ! H5FD_MPIO_INDEPENDENT_F
+ ! H5FD_MPIO_COLLECTIVE_F
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pset_dxpl_mpio_c(prp_id, data_xfer_mode) &
+ BIND(C,NAME='h5pset_dxpl_mpio_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER , INTENT(IN) :: data_xfer_mode
+ END FUNCTION h5pset_dxpl_mpio_c
+ END INTERFACE
+
+ hdferr = h5pset_dxpl_mpio_c(prp_id, data_xfer_mode)
+ END SUBROUTINE h5pset_dxpl_mpio_f
+
+!****s* H5P/h5pget_dxpl_mpio_f
+!
+! NAME
+! h5pget_dxpl_mpio_f
+!
+! PURPOSE
+! Returns the data transfer mode.
+!
+! INPUTS
+! prp_id - data transfer property list identifier
+! OUTPUTS
+! data_xfer_mode- transfer mode; possible values are:
+! H5FD_MPIO_INDEPENDENT_F
+! H5FD_MPIO_COLLECTIVE_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! November, 2000
+!
+! SOURCE
+ SUBROUTINE h5pget_dxpl_mpio_f(prp_id, data_xfer_mode, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
+ INTEGER, INTENT(OUT) :: data_xfer_mode ! Data transfer mode. Possible values are:
+ ! H5FD_MPIO_INDEPENDENT_F
+ ! H5FD_MPIO_COLLECTIVE_F
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pget_dxpl_mpio_c(prp_id, data_xfer_mode) &
+ BIND(C,NAME='h5pget_dxpl_mpio_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: prp_id
+ INTEGER , INTENT(OUT) :: data_xfer_mode
+ END FUNCTION h5pget_dxpl_mpio_c
+ END INTERFACE
+
+ hdferr = h5pget_dxpl_mpio_c(prp_id, data_xfer_mode)
+ END SUBROUTINE h5pget_dxpl_mpio_f
+
+!****s* H5P/h5pget_mpio_actual_io_mode_f
+! NAME
+! h5pget_mpio_actual_io_mode_f
+!
+! PURPOSE
+! Retrieves the type of I/O that HDF5 actually performed on the last
+! parallel I/O call. This is not necessarily the type of I/O requested.
+!
+! INPUTS
+! dxpl_id - Dataset transfer property list identifier.
+! OUTPUTS
+! actual_io_mode - The type of I/O performed by this process.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! July 27, 2012
+!
+! HISTORY
+!
+! Fortran90 Interface:
+ SUBROUTINE h5pget_mpio_actual_io_mode_f(dxpl_id, actual_io_mode, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dxpl_id
+ INTEGER , INTENT(OUT) :: actual_io_mode
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5pget_mpio_actual_io_mode_c(dxpl_id, actual_io_mode) &
+ BIND(C,NAME='h5pget_mpio_actual_io_mode_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dxpl_id
+ INTEGER , INTENT(OUT) :: actual_io_mode
+ END FUNCTION h5pget_mpio_actual_io_mode_c
+ END INTERFACE
+
+ actual_io_mode = -1
+
+ hdferr = h5pget_mpio_actual_io_mode_c(dxpl_id, actual_io_mode)
+
+ END SUBROUTINE h5pget_mpio_actual_io_mode_f
+#endif
+
END MODULE H5P
diff --git a/fortran/src/H5Pff_F03.f90 b/fortran/src/H5Pff_F03.f90
deleted file mode 100644
index 01d1d98..0000000
--- a/fortran/src/H5Pff_F03.f90
+++ /dev/null
@@ -1,1267 +0,0 @@
-!****h* ROBODoc/H5P (F03)
-!
-! NAME
-! H5P_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5P functions.
-! It contains the same functions as H5Pff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Pff_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5P function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5P_PROVISIONAL
-
- USE H5GLOBAL
-
- INTERFACE h5pset_fill_value_f
- MODULE PROCEDURE h5pset_fill_value_integer
- MODULE PROCEDURE h5pset_fill_value_real
- MODULE PROCEDURE h5pset_fill_value_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pset_fill_value_ptr
-
- END INTERFACE
-
- INTERFACE h5pget_fill_value_f
- MODULE PROCEDURE h5pget_fill_value_integer
- MODULE PROCEDURE h5pget_fill_value_real
- MODULE PROCEDURE h5pget_fill_value_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pget_fill_value_ptr
-
- END INTERFACE
-
- INTERFACE h5pset_f
- MODULE PROCEDURE h5pset_integer
- MODULE PROCEDURE h5pset_real
- MODULE PROCEDURE h5pset_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pset_ptr
-
- END INTERFACE
-
- INTERFACE h5pget_f
- MODULE PROCEDURE h5pget_integer
- MODULE PROCEDURE h5pget_real
- MODULE PROCEDURE h5pget_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pget_ptr
- END INTERFACE
-
- INTERFACE h5pregister_f
- MODULE PROCEDURE h5pregister_integer
- MODULE PROCEDURE h5pregister_real
- MODULE PROCEDURE h5pregister_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pregister_ptr
- END INTERFACE
-
- INTERFACE h5pinsert_f
- MODULE PROCEDURE h5pinsert_integer
- MODULE PROCEDURE h5pinsert_real
- MODULE PROCEDURE h5pinsert_char
- ! Recommended procedure:
- MODULE PROCEDURE h5pinsert_ptr
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pget_fill_value_c(prp_id, type_id, fillvalue) &
- BIND(C, NAME='h5pget_fill_value_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- TYPE(C_PTR), VALUE :: fillvalue ! Fillvalue
- END FUNCTION h5pget_fill_value_c
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pset_fill_value_c(prp_id, type_id, fillvalue) &
- BIND(C, NAME='h5pset_fill_value_c')
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- TYPE(C_PTR), VALUE :: fillvalue ! Fillvalue
- END FUNCTION h5pset_fill_value_c
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pset_c(prp_id, name, name_len, value) &
- BIND(C, NAME='h5pset_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name ! Name of property to modify
- INTEGER :: name_len
- TYPE(C_PTR), VALUE :: value ! Property value
- END FUNCTION h5pset_c
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pget_c(prp_id, name, name_len, value) &
- BIND(C, NAME='h5pget_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name ! Name of property to modify
- INTEGER :: name_len
- TYPE(C_PTR), VALUE :: value ! Property value
- END FUNCTION h5pget_c
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pregister_c(class, name, name_len, size, value) &
- BIND(C, NAME='h5pregister_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- TYPE(C_PTR), INTENT(IN), VALUE :: value
- END FUNCTION h5pregister_c
- END INTERFACE
-
- INTERFACE
- INTEGER FUNCTION h5pinsert_c(plist, name, name_len, size, value) &
- BIND(C, NAME='h5pinsert_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: plist
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- TYPE(C_PTR), INTENT(IN), VALUE :: value
- END FUNCTION h5pinsert_c
- END INTERFACE
-
-CONTAINS
-
-!
-!****s* H5P (F03)/h5pset_fill_value_f_F90
-!
-! NAME
-! h5pset_fill_value_f
-!
-! PURPOSE
-! Sets fill value for a dataset creation property list
-!
-! Inputs:
-! prp_id - Property list identifier
-! type_id - Datatype identifier of fill value datatype (in memory)
-! fillvalue - Fillvalue
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 14, 2001
-!
-! Added the recommended way of passing fillvalue
-! and that is by passing the C address, all other
-! ways are obsolete and should be avoided. June, 2008 MSB
-!
-! NOTES
-! h5pset(get)fill_value_f function is overloaded to support
-! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pset_fill_value_f(prp_id, type_id, fillvalue, hdferr)
-!! IMPLICIT NONE
-!! INTEGER(HID_T), INTENT(IN) :: prp_id
-!! INTEGER(HID_T), INTENT(IN) :: type_id
-!! TYPE(VOID) , INTENT(IN) :: fillvalue
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
-
- SUBROUTINE h5pset_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- INTEGER, INTENT(IN), TARGET :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr ! C address
-
- f_ptr = C_LOC(fillvalue)
-
- hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)
-
- END SUBROUTINE h5pset_fill_value_integer
-!
-!****s* H5P (F03)/h5pget_fill_value_f_F90
-!
-! NAME
-! h5pget_fill_value_f
-!
-! PURPOSE
-! Gets fill value for a dataset creation property list
-!
-! Inputs:
-! prp_id - Property list identifier
-! type_id - Datatype identifier of fill value datatype (in memory)
-!
-! Outputs:
-! fillvalue - Fillvalue
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 14, 2001
-!
-! Added the recommended way of passing fillvalue
-! and that is by passing the C address, all other
-! ways are obsolete and should be avoided. June, 2008 MSB
-!
-! NOTES
-! h5pget(get)fill_value_f function is overloaded to support
-! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pget_fill_value_f(prp_id, type_id, fillvalue, hdferr)
-!! INTEGER(HID_T), INTENT(IN) :: prp_id
-!! INTEGER(HID_T), INTENT(IN) :: type_id
-!! TYPE(VOID) , INTENT(OUT) :: fillvalue
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5pget_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- INTEGER, INTENT(OUT), TARGET :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr ! C address
-
- f_ptr = C_LOC(fillvalue)
-
- hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)
-
- END SUBROUTINE h5pget_fill_value_integer
-
-
- SUBROUTINE h5pset_fill_value_real(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- REAL, INTENT(IN), TARGET :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr ! C address
-
- f_ptr = C_LOC(fillvalue)
-
- hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)
-
- END SUBROUTINE h5pset_fill_value_real
-
-
- SUBROUTINE h5pget_fill_value_real(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- REAL, INTENT(OUT), TARGET :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr ! C address
-
- f_ptr = C_LOC(fillvalue)
-
- hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)
-
- END SUBROUTINE h5pget_fill_value_real
-
- SUBROUTINE h5pset_fill_value_char(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- CHARACTER, INTENT(IN), TARGET :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- TYPE(C_PTR) :: f_ptr ! C address
-
- f_ptr = C_LOC(fillvalue)
-
- hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)
-
- END SUBROUTINE h5pset_fill_value_char
-
- SUBROUTINE h5pget_fill_value_char(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- CHARACTER, INTENT(OUT) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER :: i
- CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
- INTEGER :: chr_len
-
- TYPE(C_PTR) :: f_ptr ! C address
- ! To resolve Issue #1 outlined in the preamble of this file we
- ! need to pack the character string into an array.
-
- chr_len = LEN(fillvalue)
- ALLOCATE(chr(1:chr_len), STAT=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- f_ptr = C_LOC(chr(1)(1:1))
-
- hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)
-
- DO i = 1, chr_len
- fillvalue(i:i) = chr(i)
- ENDDO
- DEALLOCATE(chr)
-
- END SUBROUTINE h5pget_fill_value_char
-!
-!****s* H5P (F03)/h5pset_fill_value_f_F03
-!
-! NAME
-! h5pset_fill_value_f
-!
-! PURPOSE
-! Sets fill value for a dataset creation property list
-!
-! Inputs:
-! prp_id - Property list identifier
-! type_id - Datatype identifier of fill value datatype (in memory)
-! fillvalue - Fillvalue
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 14, 2001
-!
-! Added the recommended way of passing fillvalue
-! and that is by passing the C address, all other
-! ways are obsolete and should be avoided. June, 2008 MSB
-!
-! NOTES
-! h5pset(get)fill_value_f function is overloaded to support
-! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5pset_fill_value_f(prp_id, type_id, fillvalue, hdferr)
-!! INTEGER(HID_T), INTENT(IN) :: prp_id
-!! INTEGER(HID_T), INTENT(IN) :: type_id
-!! TYPE(C_PTR) , INTENT(IN) :: fillvalue
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5pset_fill_value_ptr(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- TYPE(C_PTR), INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- hdferr = h5pset_fill_value_c(prp_id, type_id, fillvalue)
-
- END SUBROUTINE h5pset_fill_value_ptr
-
-!
-!****s* H5P (F03)/h5pget_fill_value_f_F03
-!
-! NAME
-! h5pget_fill_value_f
-!
-! PURPOSE
-! Gets fill value for a dataset creation property list
-!
-! Inputs:
-! prp_id - Property list identifier
-! type_id - Datatype identifier of fill value datatype (in memory)
-!
-! Outputs:
-! fillvalue - Fillvalue
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-!
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 14, 2001
-!
-! Added the recommended way of passing fillvalue
-! and that is by passing the C address, all other
-! ways are obsolete and should be avoided. June, 2008 MSB
-!
-! NOTES
-! h5pget(get)fill_value_f function is overloaded to support
-! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5pget_fill_value_f(prp_id, type_id, fillvalue, hdferr)
-!! INTEGER(HID_T), INTENT(IN) :: prp_id
-!! INTEGER(HID_T), INTENT(IN) :: type_id
-!! TYPE(C_PTR) , INTENT(OUT) :: fillvalue
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5pget_fill_value_ptr(prp_id, type_id, fillvalue, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- TYPE(C_PTR), INTENT(OUT) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- hdferr = h5pget_fill_value_c(prp_id, type_id, fillvalue)
-
- END SUBROUTINE h5pget_fill_value_ptr
-
-!
-!****s* H5P (F03)/h5pset_f_F90
-!
-! NAME
-! h5pset_f
-!
-! PURPOSE
-! Sets a property list value
-!
-! Inputs:
-! prp_id - Property list identifier to modify
-! name - Name of property to modify
-! value - Property value, supported types are:
-! INTEGER
-! REAL
-! DOUBLE PRECISION
-! CHARACTER(LEN=*)
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pset_f(plid, name, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: plid
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! TYPE , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pset_integer(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- INTEGER, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
-
- END SUBROUTINE h5pset_integer
-
- SUBROUTINE h5pset_real(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- REAL, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
-
- END SUBROUTINE h5pset_real
-
- SUBROUTINE h5pset_char(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- INTEGER :: i
- CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
- INTEGER :: chr_len
-
- TYPE(C_PTR) :: f_ptr
- ! To resolve Issue #1 outlined in the preamble of this file we
- ! need to pack the character string into an array.
-
- chr_len = LEN(value)
- ALLOCATE(chr(1:chr_len), STAT=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- DO i = 1, chr_len
- chr(i) = value(i:i)
- ENDDO
-
- f_ptr = C_LOC(chr(1)(1:1))
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
-
- DEALLOCATE(chr)
-
- END SUBROUTINE h5pset_char
-!
-!****s* H5P (F03)/h5pget_f_F90
-!
-! NAME
-! h5pget_f
-!
-! PURPOSE
-! Queries the value of a property.
-!
-! Inputs:
-! prp_id - Property list identifier to modify
-! name - Name of property to get
-! value - Property value, supported types are:
-! INTEGER
-! REAL
-! DOUBLE PRECISION
-! CHARACTER(LEN=*)
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pget_f(plid, name, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: plid
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! TYPE , INTENT(OUT) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5pget_integer(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- INTEGER, INTENT(OUT), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
-
- END SUBROUTINE h5pget_integer
-
- SUBROUTINE h5pget_real(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- REAL, INTENT(OUT), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
- END SUBROUTINE h5pget_real
-
- SUBROUTINE h5pget_char(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- CHARACTER(LEN=*), INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- INTEGER :: i
- CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
- INTEGER :: chr_len
- TYPE(C_PTR) :: f_ptr
-
- chr_len = LEN(value)
- ALLOCATE(chr(1:chr_len), STAT=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
- f_ptr = C_LOC(chr(1)(1:1))
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, f_ptr)
-
- DO i = 1, chr_len
- value(i:i) = chr(i)
- ENDDO
-
- DEALLOCATE(chr)
-
- END SUBROUTINE h5pget_char
-
-
-!
-!****s* H5P (F03)/h5pset_f_F03
-!
-! NAME
-! h5pset_f
-!
-! PURPOSE
-! Sets a property list value
-!
-! Inputs:
-! prp_id - Property list identifier to modify
-! name - Name of property to modify
-! value - Pointer to value to set the property to
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5pset_f(plid, name, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: plid
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! TYPE(C_PTR) , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pset_ptr(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- TYPE(C_PTR), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- name_len = LEN(name)
- hdferr = h5pset_c(prp_id, name, name_len, value)
-
- END SUBROUTINE h5pset_ptr
-!
-!****s* H5P (F03)/h5pget_f_F03
-!
-! NAME
-! h5pget_f (F03)
-!
-! PURPOSE
-! Queries the value of a property.
-!
-! Inputs:
-! prp_id - Property list identifier to modify
-! name - Name of property to get
-! value - Pointer to a location to which to copy the value of of the property
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5pget_f(plid, name, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: plid
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! TYPE(C_PTR) , INTENT(OUT) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pget_ptr(prp_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- TYPE(C_PTR), INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- name_len = LEN(name)
- hdferr = h5pget_c(prp_id, name, name_len, value)
-
- END SUBROUTINE h5pget_ptr
-
-
-!
-!****s* H5P (F03)/h5pregister_f_F90
-!
-! NAME
-! h5pregister
-!
-! PURPOSE
-! Registers a permanent property with a property list class.
-!
-! Inputs:
-! class - Property list class identifier
-! name - Name of property to register
-! size - Size of the property value
-! value - Property value, supported types are:
-! INTEGER
-! REAL
-! DOUBLE PRECISION
-! CHARACTER(LEN=*)
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pregister_f(class, name, size, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: class
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! INTEGER(SIZE_T) , INTENT(IN) :: size
-!! TYPE , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pregister_integer(class, name, size, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- INTEGER, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pregister_c(class, name, name_len, size, f_ptr)
-
- END SUBROUTINE h5pregister_integer
-
- SUBROUTINE h5pregister_real(class, name, size, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value
- REAL, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(C_PTR) :: f_ptr
-
- f_ptr = C_LOC(value)
-
- name_len = LEN(name)
- hdferr = h5pregister_c(class, name, name_len, size, f_ptr)
-
- END SUBROUTINE h5pregister_real
-
- SUBROUTINE h5pregister_char(class, name, size, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- INTEGER :: i
- CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
- INTEGER :: chr_len
-
- TYPE(C_PTR) :: f_ptr
- ! To resolve Issue #1 outlined in the preamble of this file we
- ! need to pack the character string into an array.
-
- chr_len = LEN(value)
- ALLOCATE(chr(1:chr_len), STAT=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- DO i = 1, chr_len
- chr(i) = value(i:i)
- ENDDO
-
- f_ptr = C_LOC(chr(1)(1:1))
-
- name_len = LEN(name)
- hdferr = h5pregister_c(class, name, name_len, size, f_ptr)
- DEALLOCATE(chr)
- END SUBROUTINE h5pregister_char
-!
-!****s* H5P (F03)/h5pregister_f_F03
-!
-! NAME
-! h5pregister (F03)
-!
-! PURPOSE
-! Registers a permanent property with a property list class.
-!
-! Inputs:
-! class - Property list class identifier
-! name - Name of property to register
-! size - Size of the property value
-! value - Pointer to value to set the property to
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! June 24, 2008
-!
-! Fortran2003 Interface:
-!! SUBROUTINE h5pregister_f(class, name, size, value, hdferr)
-!! INTEGER(HID_T) , INTENT(IN) :: class
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! INTEGER(SIZE_T) , INTENT(IN) :: size
-!! TYPE(C_PTR) , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
-
- SUBROUTINE h5pregister_ptr(class, name, size, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- TYPE(C_PTR), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- name_len = LEN(name)
- hdferr = h5pregister_c(class, name, name_len, size, value)
- END SUBROUTINE h5pregister_ptr
-
-!
-!****s* H5P (F03)/h5pinsert_f_F90
-!
-! NAME
-! h5pinsert (f90)
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! Inputs:
-! plist - Property list class identifier
-! name - Name of property to insert
-! size - Size of the property value
-! value - Property value, supported types are:
-! INTEGER
-! REAL
-! DOUBLE PRECISION
-! CHARACTER(LEN=*)
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pinsert_f
-!! INTEGER(HID_T) , INTENT(IN) :: plist
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! INTEGER(SIZE_T) , INTENT(IN) :: size
-!! TYPE , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pinsert_integer(plist, name, size, value, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- INTEGER, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(c_ptr) :: f_ptr
-
- f_ptr = c_loc(value)
-
- name_len = LEN(name)
- hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)
- END SUBROUTINE h5pinsert_integer
-
- SUBROUTINE h5pinsert_real(plist, name, size, value, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- REAL, INTENT(IN), TARGET :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
- TYPE(c_ptr) :: f_ptr
-
- f_ptr = c_loc(value)
-
- name_len = LEN(name)
- hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)
-
- END SUBROUTINE h5pinsert_real
-
- SUBROUTINE h5pinsert_char(plist, name, size, value, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- INTEGER :: i
- CHARACTER(LEN=1), ALLOCATABLE, DIMENSION(:), TARGET :: chr
- INTEGER :: chr_len
-
- TYPE(c_ptr) :: f_ptr
- ! To resolve Issue #1 outlined in the preamble of this file we
- ! need to pack the character string into an array.
-
- chr_len = LEN(value)
- ALLOCATE(chr(1:chr_len), STAT=hdferr)
- IF (hdferr .NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
-
- DO i = 1, chr_len
- chr(i) = value(i:i)
- ENDDO
-
- f_ptr = C_LOC(chr(1)(1:1))
-
- name_len = LEN(name)
- hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)
-
- DEALLOCATE(chr)
-
- END SUBROUTINE h5pinsert_char
-
-!
-!****s* H5P (F03)/h5pinsert_f_F03
-!
-! NAME
-! h5pinsert (f03)
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! Inputs:
-! plist - Property list class identifier
-! name - Name of property to insert
-! size - Size of the property value
-! value - Pointer to new value pointer for the property being modified
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! June 24, 2008
-!
-! Fortran90 Interface:
-!! SUBROUTINE h5pinsert_f
-!! INTEGER(HID_T) , INTENT(IN) :: plist
-!! CHARACTER(LEN=*), INTENT(IN) :: name
-!! INTEGER(SIZE_T) , INTENT(IN) :: size
-!! TYPE(C_PTR) , INTENT(IN) :: value
-!! INTEGER , INTENT(OUT) :: hdferr
-!*****
- SUBROUTINE h5pinsert_ptr(plist, name, size, value, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value
- TYPE(c_ptr), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER :: name_len
-
- name_len = LEN(name)
- hdferr = h5pinsert_c(plist, name , name_len, size, value)
- END SUBROUTINE h5pinsert_ptr
-!
-!****s* H5P (F03)/h5pcreate_class_f_F03
-!
-! NAME
-! h5pcreate_class_f
-!
-! PURPOSE
-! Create a new property list class
-!
-! Inputs:
-! parent - Parent property list class identifier
-! Possible values include:
-! H5P_ROOT_F
-! H5P_FILE_CREATE_F
-! H5P_FILE_ACCESS_F
-! H5P_DATASET_CREATE_F
-! H5P_DATASET_XFER_F
-! H5P_FILE_MOUNT_F
-! name - Name of property to create
-!
-! Outputs:
-! class - Property list class identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! Optional parameters:
-! H5P_cls_create_func_t (create) - Callback routine called when a property list is created
-! create_data - User pointer to any class creation information needed
-! H5P_cls_copy_func_t (copy) - Callback routine called when a property list is copied
-! copy_data - User pointer to any class copy information needed
-! H5P_cls_close_func_t (close) - Callback routine called when a property list is being closed
-! close_data - User pointer to any class close information needed
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! HISTORY
-! Added callback arguments
-! M. Scot Breitenfeld, July 3, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5pcreate_class_f(parent, name, class, hdferr, create, create_data, copy, copy_data, close, close_data)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: parent
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(HID_T) , INTENT(OUT) :: class
- INTEGER , INTENT(OUT) :: hdferr
- TYPE(C_PTR) , OPTIONAL :: create_data, copy_data, close_data
- TYPE(C_FUNPTR) , OPTIONAL :: create, copy, close
-!*****
- INTEGER :: name_len
- TYPE(C_PTR) :: create_data_default, copy_data_default, close_data_default
- TYPE(C_FUNPTR) :: create_default, copy_default, close_default
- INTERFACE
- INTEGER FUNCTION h5pcreate_class_c(parent, name, name_len, class, &
- create, create_data, copy, copy_data, close, close_data) &
- BIND(C, NAME='h5pcreate_class_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr, c_funptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: parent
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(HID_T), INTENT(OUT) :: class
- TYPE(C_PTR), VALUE :: create_data, copy_data, close_data
- TYPE(C_FUNPTR), VALUE :: create, copy, close
- END FUNCTION h5pcreate_class_c
- END INTERFACE
- name_len = LEN(name)
-
- create_default = c_null_funptr !fix:scot
- create_data_default = c_null_ptr
- copy_default = c_null_funptr !fix:scot
- copy_data_default = c_null_ptr
- close_default = c_null_funptr !fix:scot
- close_data_default = c_null_ptr
-
- IF(PRESENT(create)) create_default = create
- IF(PRESENT(create_data)) create_data_default = create_data
- IF(PRESENT(copy)) copy_default = copy
- IF(PRESENT(copy_data)) copy_data_default = copy_data
- IF(PRESENT(close)) close_default = close
- IF(PRESENT(close_data)) close_data_default = close_data
-
- hdferr = h5pcreate_class_c(parent, name , name_len, class, &
- create_default, create_data_default, &
- copy_default, copy_data_default, &
- close_default, close_data_default)
-
- END SUBROUTINE h5pcreate_class_f
-
-!
-!****s* H5P (F03)/h5pset_file_image_f_F03
-!
-! NAME
-! h5pset_file_image_f
-!
-! PURPOSE
-! Sets an initial file image in a memory buffer.
-!
-! Inputs:
-! fapl_id - File access property list identifier
-! buf_ptr - Pointer to the initial file image,
-! or C_NULL_PTR if no initial file image is desired
-! buf_len - Size of the supplied buffer, or 0 (zero) if no initial image is desired
-!
-! Outputs:
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! February 19, 2012
-!
-! Fortran2003 Interface:
- SUBROUTINE h5pset_file_image_f(fapl_id, buf_ptr, buf_len, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: fapl_id
- TYPE(C_PTR) , INTENT(IN) :: buf_ptr
- INTEGER(SIZE_T), INTENT(IN) :: buf_len
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5pset_file_image_c(fapl_id, buf_ptr, buf_len) &
- BIND(C, NAME='h5pset_file_image_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: fapl_id
- TYPE(C_PTR), VALUE :: buf_ptr
- INTEGER(SIZE_T), INTENT(IN) :: buf_len
- END FUNCTION h5pset_file_image_c
- END INTERFACE
-
- hdferr = h5pset_file_image_c(fapl_id, buf_ptr, buf_len)
-
- END SUBROUTINE h5pset_file_image_f
-!
-!****s* H5P (F03)/h5pget_file_image_f_F03
-!
-! NAME
-! h5pget_file_image_f
-!
-! PURPOSE
-! Retrieves a copy of the file image designated as the initial content and structure of a file.
-!
-! Inputs:
-! fapl_id - File access property list identifier.
-!
-! Outputs:
-! buf_ptr - Will hold either a C_NULL_PTR or a scalar of type
-! c_loc. If buf_ptr is not C_NULL_PTR, on successful
-! return, buf_ptr shall contain a C pointer to a copy
-! of the initial image provided in the last call to
-! H5Pset_file_image_f for the supplied fapl_id, or
-! buf_ptr shall contain a C_NULL_PTR if there is no
-! initial image set.
-!
-! buf_len_ptr - Contains the value of the buffer parameter for
-! the initial image in the supplied fapl_id. The value
-! will be 0 if no initial image is set.
-!
-!
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! February 19, 2012
-!
-! Fortran2003 Interface:
- SUBROUTINE h5pget_file_image_f(fapl_id, buf_ptr, buf_len_ptr, hdferr)
- USE iso_c_binding
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: fapl_id
- TYPE(C_PTR) , INTENT(OUT), DIMENSION(*) :: buf_ptr
- INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr
- INTEGER , INTENT(OUT) :: hdferr
-
-!*****
- INTERFACE
- INTEGER FUNCTION h5pget_file_image_c(fapl_id, buf_ptr, buf_len_ptr) &
- BIND(C, NAME='h5pget_file_image_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: fapl_id
- TYPE(C_PTR), DIMENSION(*), INTENT(OUT) :: buf_ptr
- INTEGER(SIZE_T), INTENT(OUT) :: buf_len_ptr
- END FUNCTION h5pget_file_image_c
- END INTERFACE
-
- hdferr = h5pget_file_image_c(fapl_id, buf_ptr, buf_len_ptr)
-
- END SUBROUTINE h5pget_file_image_f
-
-END MODULE H5P_PROVISIONAL
-
diff --git a/fortran/src/H5Pff_F90.f90 b/fortran/src/H5Pff_F90.f90
deleted file mode 100644
index b5ea13d..0000000
--- a/fortran/src/H5Pff_F90.f90
+++ /dev/null
@@ -1,949 +0,0 @@
-!****h* ROBODoc/H5P (_F90)
-!
-! NAME
-! H5P_PROVISIONAL
-!
-! PURPOSE
-!
-! This file contains Fortran 90 interfaces for H5P functions. It contains
-! the same functions as H5Pff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Pff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5P function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5P_PROVISIONAL
-
- USE H5GLOBAL
-
- INTERFACE h5pset_fill_value_f
- MODULE PROCEDURE h5pset_fill_value_integer
- MODULE PROCEDURE h5pset_fill_value_real
- MODULE PROCEDURE h5pset_fill_value_char
- END INTERFACE
-
- INTERFACE h5pget_fill_value_f
- MODULE PROCEDURE h5pget_fill_value_integer
- MODULE PROCEDURE h5pget_fill_value_real
- MODULE PROCEDURE h5pget_fill_value_char
- END INTERFACE
-
- INTERFACE h5pset_f
- MODULE PROCEDURE h5pset_integer
- MODULE PROCEDURE h5pset_real
- MODULE PROCEDURE h5pset_char
- END INTERFACE
-
- INTERFACE h5pget_f
- MODULE PROCEDURE h5pget_integer
- MODULE PROCEDURE h5pget_real
- MODULE PROCEDURE h5pget_char
- END INTERFACE
-
- INTERFACE h5pregister_f
- MODULE PROCEDURE h5pregister_integer
- MODULE PROCEDURE h5pregister_real
- MODULE PROCEDURE h5pregister_char
- END INTERFACE
-
- INTERFACE h5pinsert_f
- MODULE PROCEDURE h5pinsert_integer
- MODULE PROCEDURE h5pinsert_real
- MODULE PROCEDURE h5pinsert_char
- END INTERFACE
-
-CONTAINS
-!
-!****s* H5P (F90)/h5pset(get)fill_value_f
-!
-! NAME
-! h5pset(get)fill_value_f
-!
-! PURPOSE
-! Sets(gets) fill value for a dataset creation property list
-!
-! INPUTS
-! prp_id - dataset creation property list identifier
-! type_id - datatype identifier for fill value
-! fillvalue - fill value
-! OUTPUTS
-! type_id - datatype identifier for fill value
-! fillvalue - fill value
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 14, 2001
-!
-! NOTES
-! h5pset(get)fill_value_f function is overloaded to support
-! INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.
-!
-! SOURCE
- SUBROUTINE h5pset_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- INTEGER, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5pset_fill_value_integer_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_VALUE_INTEGER_C'::h5pset_fill_value_integer_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: fillvalue
- END FUNCTION h5pset_fill_value_integer_c
- END INTERFACE
-
- hdferr = h5pset_fill_value_integer_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pset_fill_value_integer
-
-
- SUBROUTINE h5pget_fill_value_integer(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- INTEGER, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pget_fill_value_integer_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_VALUE_INTEGER_C'::h5pget_fill_value_integer_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER :: fillvalue
- END FUNCTION h5pget_fill_value_integer_c
- END INTERFACE
-
- hdferr = h5pget_fill_value_integer_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pget_fill_value_integer
-
-
- SUBROUTINE h5pset_fill_value_real(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- REAL, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pset_fill_value_real_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_VALUE_REAL_C'::h5pset_fill_value_real_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- REAL, INTENT(IN) :: fillvalue
- END FUNCTION h5pset_fill_value_real_c
- END INTERFACE
-
- hdferr = h5pset_fill_value_real_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pset_fill_value_real
-
-
- SUBROUTINE h5pget_fill_value_real(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- REAL, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pget_fill_value_real_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_VALUE_REAL_C'::h5pget_fill_value_real_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- REAL :: fillvalue
- END FUNCTION h5pget_fill_value_real_c
- END INTERFACE
-
- hdferr = h5pget_fill_value_real_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pget_fill_value_real
-
- SUBROUTINE h5pset_fill_value_char(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- CHARACTER, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pset_fill_valuec_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_VALUEC_C'::h5pset_fill_valuec_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: fillvalue
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER, INTENT(IN) :: fillvalue
- END FUNCTION h5pset_fill_valuec_c
- END INTERFACE
-
- hdferr = h5pset_fill_valuec_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pset_fill_value_char
-
- SUBROUTINE h5pget_fill_value_char(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- CHARACTER, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pget_fill_valuec_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_VALUEC_C'::h5pget_fill_valuec_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: fillvalue
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER :: fillvalue
- END FUNCTION h5pget_fill_valuec_c
- END INTERFACE
-
- hdferr = h5pget_fill_valuec_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pget_fill_value_char
-!
-!****s* H5P (F90)/h5pset_integer
-!
-! NAME
-! h5pset_integer
-!
-! PURPOSE
-! Sets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! value - value to set property to
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pset_integer(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- INTEGER, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pset_integer_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_INTEGER_C'::h5pset_integer_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER, INTENT(IN) :: value
- END FUNCTION h5pset_integer_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pset_integer_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pset_integer
-
-!
-!****s* H5P (F90)/h5pset_real
-!
-! NAME
-! h5pset_real
-!
-! PURPOSE
-! Sets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! value - value to set property to
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pset_real(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- REAL, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pset_real_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_REAL_C'::h5pset_real_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- REAL, INTENT(IN) :: value
- END FUNCTION h5pset_real_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pset_real_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pset_real
-
-!****s* H5P (F90)/h5pset_char
-!
-! NAME
-! h5pset_char
-!
-! PURPOSE
-! Sets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! value - value to set property to
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-! SOURCE
- SUBROUTINE h5pset_char(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
- INTEGER :: value_len
-
- INTERFACE
- INTEGER FUNCTION h5psetc_c(prp_id, name, name_len, value, value_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSETC_C'::h5psetc_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: value
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- CHARACTER(LEN=*), INTENT(IN) :: value
- INTEGER, INTENT(IN) :: value_len
- END FUNCTION h5psetc_c
- END INTERFACE
-
- name_len = LEN(name)
- value_len = LEN(value)
- hdferr = h5psetc_c(prp_id, name , name_len, value, value_len)
- END SUBROUTINE h5pset_char
-
-!****s* H5P (F90)/h5pget_integer
-!
-! NAME
-! h5pget_integer
-!
-! PURPOSE
-! Gets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! OUTPUTS
-! value - value of property
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pget_integer(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- INTEGER, INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pget_integer_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_INTEGER_C'::h5pget_integer_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER, INTENT(OUT) :: value
- END FUNCTION h5pget_integer_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pget_integer_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pget_integer
-
-!
-!****s* H5P (F90)/h5pget_real
-!
-! NAME
-! h5pget_real
-!
-! PURPOSE
-! Gets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! OUTPUTS
-! value - value of property
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-! SOURCE
- SUBROUTINE h5pget_real(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- REAL, INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pget_real_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_REAL_C'::h5pget_real_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- REAL, INTENT(OUT) :: value
- END FUNCTION h5pget_real_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pget_real_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pget_real
-
-!
-!****s* H5P (F90)/h5pget_char
-!
-! NAME
-! h5pget_char
-!
-! PURPOSE
-! Gets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! OUTPUTS
-! value - value of property
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pget_char(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- CHARACTER(LEN=*), INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
- INTEGER :: value_len
-
- INTERFACE
- INTEGER FUNCTION h5pgetc_c(prp_id, name, name_len, value, value_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGETC_C'::h5pgetc_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: value
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- CHARACTER(LEN=*), INTENT(OUT) :: value
- INTEGER, INTENT(IN) :: value_len
- END FUNCTION h5pgetc_c
- END INTERFACE
-
- name_len = LEN(name)
- value_len = LEN(value)
- hdferr = h5pgetc_c(prp_id, name , name_len, value, value_len)
- END SUBROUTINE h5pget_char
-
-!
-!****s* H5P (F90)/h5pregister_integer
-!
-! NAME
-! h5pregister_integer
-!
-! PURPOSE
-! Registers a permanent property with a property list class.
-!
-! INPUTS
-! class - property list class to register
-! permanent property within
-! name - name of property to register
-! size - size of property in bytes
-! value - default value for property in newly
-! created property lists
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-!
-! SOURCE
- SUBROUTINE h5pregister_integer(class, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- INTEGER, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pregister_integer_c(class, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREGISTER_INTEGER_C'::h5pregister_integer_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- INTEGER, INTENT(IN) :: value
- END FUNCTION h5pregister_integer_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pregister_integer_c(class, name , name_len, size, value)
- END SUBROUTINE h5pregister_integer
-
-!****s* H5P (F90)/h5pregister_real
-!
-! NAME
-!
-! h5pregister_real
-!
-! PURPOSE Registers a permanent property with a property list class.
-!
-! INPUTS
-! class - property list class to register
-! permanent property within
-! name - name of property to register
-! size - size of property in bytes
-! value - default value for property in newly
-! created property lists
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
- SUBROUTINE h5pregister_real(class, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value
- REAL, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pregister_real_c(class, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREGISTER_REAL_C'::h5pregister_real_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- REAL, INTENT(IN) :: value
- END FUNCTION h5pregister_real_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pregister_real_c(class, name , name_len, size, value)
- END SUBROUTINE h5pregister_real
-
-!
-!****s* H5P (F90)/h5pregister_char
-!
-! NAME
-! h5pregister_char
-!
-! PURPOSE
-! Registers a permanent property with a property list class.
-!
-! INPUTS
-! class - property list class to register
-! permanent property within
-! name - name of property to register
-! size - size of property in bytes
-! value - default value for property in newly
-! created property lists
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
- SUBROUTINE h5pregister_char(class, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! size of the property value
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
- INTEGER :: value_len
-
- INTERFACE
- INTEGER FUNCTION h5pregisterc_c(class, name, name_len, size, value, &
- value_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREGISTERC_C'::h5pregisterc_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: value
- INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- CHARACTER(LEN=*), INTENT(IN) :: value
- INTEGER, INTENT(IN) :: value_len
- END FUNCTION h5pregisterc_c
- END INTERFACE
-
- name_len = LEN(name)
- value_len = LEN(value)
- hdferr = h5pregisterc_c(class, name , name_len, size, value, value_len)
- END SUBROUTINE h5pregister_char
-!
-!****s* H5P (F90)/h5pinsert_integer
-!
-! NAME
-! h5pinsert_integer
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! INPUTS
-! plist - property list identifier
-! name - name of property to insert
-! size - size of property in bytes
-! value - initial value for the property
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
- SUBROUTINE h5pinsert_integer(plist, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- INTEGER, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pinsert_integer_c(plist, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PINSERT_INTEGER_C'::h5pinsert_integer_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: plist
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- INTEGER, INTENT(IN) :: value
- END FUNCTION h5pinsert_integer_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pinsert_integer_c(plist, name , name_len, size, value)
- END SUBROUTINE h5pinsert_integer
-
-!
-!****s* H5P (F90)/h5pinsert_real
-!
-! NAME
-! h5pinsert_real
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! INPUTS
-! plist - property list identifier
-! permanent property within
-! name - name of property to insert
-! size - size of property in bytes
-! value - initial value for the property
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
- SUBROUTINE h5pinsert_real(plist, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- REAL, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pinsert_real_c(plist, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PINSERT_REAL_C'::h5pinsert_real_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: plist
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- REAL, INTENT(IN) :: value
- END FUNCTION h5pinsert_real_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pinsert_real_c(plist, name , name_len, size, value)
- END SUBROUTINE h5pinsert_real
-
-
-!
-!****s* H5P (F90)/h5pinsert_char
-!
-! NAME
-! h5pinsert_char
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! INPUTS
-! plist - property list identifier
-! permanent property within
-! name - name of property to insert
-! size - size of property in bytes
-! value - initial value for the property
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
-SUBROUTINE h5pinsert_char(plist, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of property value
- CHARACTER(LEN=*), INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
- INTEGER :: value_len
-
- INTERFACE
- INTEGER FUNCTION h5pinsertc_c(plist, name, name_len, size, value, value_len)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PINSERTC_C'::h5pinsertc_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- !DEC$ATTRIBUTES reference :: value
- INTEGER(HID_T), INTENT(IN) :: plist
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- CHARACTER(LEN=*), INTENT(IN) :: value
- INTEGER, INTENT(IN) :: value_len
- END FUNCTION h5pinsertc_c
- END INTERFACE
-
- name_len = LEN(name)
- value_len = LEN(value)
- hdferr = h5pinsertc_c(plist, name , name_len, size, value, value_len)
- END SUBROUTINE h5pinsert_char
-
-!
-!****s* H5P (F90)/h5pcreate_class_f
-!
-! NAME
-! h5pcreate_class_f
-!
-! PURPOSE
-! Create a new property list class
-!
-! INPUTS
-! parent - Property list identifier of the parent class
-! Possible values include:
-! H5P_ROOT_F
-! H5P_FILE_CREATE_F
-! H5P_FILE_ACCESS_F
-! H5P_DATASET_CREATE_F
-! H5P_DATASET_XFER_F
-! H5P_FILE_MOUNT_F
-! name - name of the class we are creating
-! OUTPUTS
-! class - property list class identifier
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pcreate_class_f(parent, name, class, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: parent ! parent property list class
- ! identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! name of property tocreate
- INTEGER(HID_T), INTENT(OUT) :: class ! property list class identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pcreate_class_f90_c(parent, name, name_len, class)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PCREATE_CLASS_F90_C'::h5pcreate_class_f90_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: parent
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(HID_T), INTENT(OUT) :: class
- END FUNCTION h5pcreate_class_f90_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pcreate_class_f90_c(parent, name, name_len, class)
-
- END SUBROUTINE h5pcreate_class_f
-
-END MODULE H5P_PROVISIONAL
-
diff --git a/fortran/src/H5Rf.c b/fortran/src/H5Rf.c
index 068f24e..9cd9950 100644
--- a/fortran/src/H5Rf.c
+++ b/fortran/src/H5Rf.c
@@ -1,6 +1,6 @@
/****h* H5Rf/H5Rf
* PURPOSE
- * This file contains C stubs for H5R Fortran APIs
+ * This file contains C stubs for H5R Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -24,68 +24,21 @@
#include "H5f90.h"
#include "H5Eprivate.h"
-/****if* H5Rf/h5rcreate_object_c
- * NAME
- * h5rcreate_object_c
- * PURPOSE
- * Call H5Rcreate to create a reference to an object
- * INPUTS
- * loc_id - file or group identifier
- * name - name of the dataset
- * namelen - name length
- * OUTPUTS
- * ref - reference to the object
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, December 1, 1999
- * SOURCE
-*/
-int_f
-nh5rcreate_object_c(haddr_t_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen)
-/******/
-{
- char *c_name = NULL;
- hobj_ref_t ref_c;
- int_f ret_value = 0;
-
- /*
- * Convert FORTRAN name to C name
- */
- if(NULL == (c_name = (char *)HD5f2cstring(name, (size_t)*namelen)))
- HGOTO_DONE(FAIL)
-
- /*
- * Call H5Rcreate function.
- */
- if(H5Rcreate(&ref_c, *loc_id, c_name, H5R_OBJECT, (hid_t)-1) < 0)
- HGOTO_DONE(FAIL)
-
- /* Copy the reference created */
- *ref = (haddr_t_f)ref_c;
-
-done:
- if(c_name)
- HDfree(c_name);
- return ret_value;
-} /* nh5rcreate_object_c() */
-
/****if* H5Rf/h5rcreate_region_c
* NAME
- * h5rcreate_region_c
+ * h5rcreate_region_c
* PURPOSE
- * Call H5Rcreate to create a reference to dataset region
- * region
+ * Call H5Rcreate to create a reference to dataset region
+ * region
* INPUTS
- * loc_id - file or group identifier
- * name - name of the dataset
- * namelen - name length
- * space_id - dataset space identifier
+ * loc_id - file or group identifier
+ * name - name of the dataset
+ * namelen - name length
+ * space_id - dataset space identifier
* OUTPUTS
- * ref - reference to the dataset region
+ * ref - reference to the dataset region
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Wednesday, December 1, 1999
@@ -94,7 +47,7 @@ done:
* SOURCE
*/
int_f
-nh5rcreate_region_c(int_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *space_id)
+h5rcreate_region_c(int_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *space_id)
/******/
{
char *c_name = NULL;
@@ -120,7 +73,7 @@ done:
if(c_name)
HDfree(c_name);
return ret_value;
-} /* end nh5rcreate_region_c() */
+} /* end h5rcreate_region_c() */
/****if* H5Rf/h5rcreate_ptr_c
* NAME
@@ -165,89 +118,6 @@ h5rcreate_ptr_c (void *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *r
return ret_value;
}
-/****if* H5Rf/h5rdereference_region_c
- * NAME
- * h5rdereference_region_c
- * PURPOSE
- * Call H5Rdereference to dereference to dataset region
- * INPUTS
- * dset_id - dataset identifier
- * ref - reference to the dataset region
- * OUTPUTS
- * obj_id - dereferenced dataset identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, December 1, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5rdereference_region_c(hid_t_f *dset_id, int_f *ref, hid_t_f *obj_id)
-/******/
-{
- hdset_reg_ref_t ref_c;
- hid_t c_obj_id;
- int_f ret_value = 0;
-
- /* Copy the reference to dereference */
- HDmemcpy(&ref_c, ref, H5R_DSET_REG_REF_BUF_SIZE);
-
- /*
- * Call H5Rdereference function.
- */
- if((c_obj_id = H5Rdereference2((hid_t)*dset_id, H5P_DEFAULT, H5R_DATASET_REGION, &ref_c)) < 0)
- HGOTO_DONE(FAIL)
-
- /* Copy the object's ID */
- *obj_id = (hid_t_f)c_obj_id;
-
-done:
- return ret_value;
-} /* end nh5rdereference_region_c() */
-
-/****if* H5Rf/h5rdereference_object_c
- * NAME
- * h5rdereference_object_c
- * PURPOSE
- * Call H5Rdereference to dereference an object
- * INPUTS
- * dset_id - dataset identifier
- * ref - reference to an object
- * OUTPUTS
- * obj_id - dereferenced object identifier
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * Elena Pourmal
- * Wednesday, December 1, 1999
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5rdereference_object_c(hid_t_f *dset_id, haddr_t_f *ref, hid_t_f *obj_id)
-/******/
-{
- hid_t c_obj_id;
- hobj_ref_t ref_c = (hobj_ref_t)*ref;
- int_f ret_value = 0;
-
- /*
- * Call H5Rdereference function.
- */
- if((c_obj_id = H5Rdereference2((hid_t)*dset_id, H5P_DEFAULT, H5R_OBJECT, &ref_c)) < 0)
- HGOTO_DONE(FAIL)
-
- /* Copy the object's ID */
- *obj_id = (hid_t_f)c_obj_id;
-
-done:
- return ret_value;
-} /* end nh5rdereference_object_c() */
-
/****if* H5Rf/h5rdereference_ptr_c
* NAME
* h5rdereference_ptr_c
@@ -255,7 +125,7 @@ done:
* Call H5Rdereference
* INPUTS
* obj_id - Valid identifier for the file containing the
- * referenced object or any object in that file.
+ * referenced object or any object in that file.
* ref_typ - The reference type of ref.
* ref - Object reference
* OUTPUTS
@@ -292,8 +162,8 @@ h5rdereference_ptr_c (hid_t_f *obj_id, int_f *ref_type, void *ref, hid_t_f *ref_
* PURPOSE
* Call H5Rget_region to dereference dataspace region
* INPUTS
- * dset_id - dataset identifier
- * ref - reference to the dataset region
+ * dset_id - dataset identifier
+ * ref - reference to the dataset region
* OUTPUTS
* space_id - dereferenced dataset dataspace identifier
* RETURNS
@@ -306,7 +176,7 @@ h5rdereference_ptr_c (hid_t_f *obj_id, int_f *ref_type, void *ref, hid_t_f *ref_
* SOURCE
*/
int_f
-nh5rget_region_region_c(hid_t_f *dset_id, int_f *ref, hid_t_f *space_id)
+h5rget_region_region_c(hid_t_f *dset_id, int_f *ref, hid_t_f *space_id)
/******/
{
hid_t c_space_id;
@@ -327,7 +197,7 @@ nh5rget_region_region_c(hid_t_f *dset_id, int_f *ref, hid_t_f *space_id)
done:
return ret_value;
-} /* end nh5rget_region_region_c() */
+} /* end h5rget_region_region_c() */
/****if* H5Rf/h5rget_region_ptr_c
* NAME
@@ -335,8 +205,8 @@ done:
* PURPOSE
* Call H5Rget_region to dereference dataspace region
* INPUTS
- * dset_id - dataset identifier
- * ref - reference to the dataset region
+ * dset_id - dataset identifier
+ * ref - reference to the dataset region
* OUTPUTS
* space_id - dereferenced dataset dataspace identifier
* RETURNS
@@ -366,22 +236,22 @@ h5rget_region_ptr_c(hid_t_f *dset_id, void *ref, hid_t_f *space_id)
done:
return ret_value;
-} /* end nh5rget_region_ptr_c() */
+} /* end h5rget_region_ptr_c() */
/****if* H5Rf/h5rget_object_type_obj_c
* NAME
- * h5rget_object_type_obj_c
+ * h5rget_object_type_obj_c
* PURPOSE
- * Call H5Rget_object_type to retrieve the type of the object reference points
- * to
+ * Call H5Rget_object_type to retrieve the type of the object reference points
+ * to
* INPUTS
- * dset_id - dataset identifier
- * ref - reference to the dataset region
+ * dset_id - dataset identifier
+ * ref - reference to the dataset region
* OUTPUTS
- * obj_type - type of dereferenced object
+ * obj_type - type of dereferenced object
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Wednesday, December 1, 1999
@@ -390,7 +260,7 @@ done:
* SOURCE
*/
int_f
-nh5rget_object_type_obj_c(hid_t_f *dset_id, haddr_t_f *ref, int_f *obj_type)
+h5rget_object_type_obj_c(hid_t_f *dset_id, haddr_t_f *ref, int_f *obj_type)
/******/
{
H5O_type_t c_obj_type;
@@ -408,125 +278,7 @@ nh5rget_object_type_obj_c(hid_t_f *dset_id, haddr_t_f *ref, int_f *obj_type)
done:
return ret_value;
-} /* end nh5rget_object_type_obj_c() */
-
-/****if* H5Rf/h5rget_name_object_c
- * NAME
- * h5rget_name_object_c
- * PURPOSE
- * Call H5Rget_name for an object
- * INPUTS
- *
- * loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
- * ref - An object or dataset region reference.
- *
- * OUTPUTS
- * name - A name associated with the referenced object or dataset region.
- * size - The size of the name buffer.
- *
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * M. Scot Breitenfeld
- * March 31, 2008
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5rget_name_object_c(hid_t_f *loc_id, haddr_t_f *ref, _fcd name, size_t_f *name_len, size_t_f *size_default)
-/******/
-{
- hobj_ref_t ref_c = (hobj_ref_t)*ref;
- ssize_t c_size;
- size_t c_bufsize = (size_t)*name_len + 1;
- char *c_buf = NULL; /* Buffer to hold C string */
- int_f ret_value = 0;
-
-
- /*
- * Allocate buffer to hold name of an attribute
- */
- if(NULL == (c_buf = (char *)HDmalloc(c_bufsize)))
- HGOTO_DONE(FAIL)
-
- /*
- * Call H5Rget_name function.
- */
- if((c_size = H5Rget_name((hid_t)*loc_id, H5R_OBJECT, &ref_c, c_buf, c_bufsize)) < 0)
- HGOTO_DONE(FAIL)
-
- /*
- * Convert C name to FORTRAN and place it in the given buffer
- */
- HD5packFstring(c_buf, _fcdtocp(name), c_bufsize-1);
- *size_default = (size_t_f)c_size;
-
-done:
- if(c_buf)
- HDfree(c_buf);
- return ret_value;
-} /* end nh5rget_name_object_c() */
-
-/****if* H5Rf/h5rget_name_region_c
- * NAME
- * h5rget_name_region_c
- * PURPOSE
- * Call H5Rget_name for a dataset region
- * INPUTS
- *
- * loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
- * ref - An object or dataset region reference.
- *
- * OUTPUTS
- * name - A name associated with the referenced object or dataset region.
- * size - The size of the name buffer.
- *
- * RETURNS
- * 0 on success, -1 on failure
- * AUTHOR
- * M. Scot Breitenfeld
- * March 31, 2008
- * HISTORY
- *
- * SOURCE
-*/
-int_f
-nh5rget_name_region_c(hid_t_f *loc_id, int_f *ref, _fcd name, size_t_f *name_len, size_t_f *size_default)
-/******/
-{
- hdset_reg_ref_t ref_c;
- ssize_t c_size;
- size_t c_bufsize = (size_t)*name_len + 1;
- char *c_buf = NULL; /* Buffer to hold C string */
- int_f ret_value = 0;
-
- /* Copy the reference to query */
- HDmemcpy(&ref_c, ref, H5R_DSET_REG_REF_BUF_SIZE);
-
- /*
- * Allocate buffer to hold name of an attribute
- */
- if(NULL == (c_buf = (char *)HDmalloc(c_bufsize)))
- HGOTO_DONE(FAIL)
-
- /*
- * Call H5Rget_name function.
- */
- if((c_size = H5Rget_name((hid_t)*loc_id, H5R_DATASET_REGION, &ref_c, c_buf, c_bufsize)) < 0)
- HGOTO_DONE(FAIL)
-
- /*
- * Convert C name to FORTRAN and place it in the given buffer
- */
- HD5packFstring(c_buf, _fcdtocp(name), c_bufsize - 1);
- *size_default = (size_t_f)c_size;
-
-done:
- if(c_buf)
- HDfree(c_buf);
- return ret_value;
-}
+} /* end h5rget_object_type_obj_c() */
/****if* H5Rf/h5rget_name_ptr_c
* NAME
@@ -535,13 +287,13 @@ done:
* Call H5Rget_name
* INPUTS
*
- * loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
- * ref_type - Type of reference.
- * ref - An object or dataset region reference.
+ * loc_id - Identifier for the dataset containing the reference or for the group that dataset is in.
+ * ref_type - Type of reference.
+ * ref - An object or dataset region reference.
*
* OUTPUTS
- * name - A name associated with the referenced object or dataset region.
- * size - The size of the name buffer.
+ * name - A name associated with the referenced object or dataset region.
+ * size - The size of the name buffer.
*
* RETURNS
* 0 on success, -1 on failure
@@ -589,24 +341,24 @@ h5rget_name_ptr_c (hid_t_f *loc_id, int_f *ref_type, void *ref, _fcd name, size_
/****if* H5Rf/h5rget_obj_type_c
* NAME
- * h5rget_obj_type_c
+ * h5rget_obj_type_c
* PURPOSE
- * Call H5Rget_obj_type
+ * Call H5Rget_obj_type
* INPUTS
- * loc_id - Identifier for the dataset containing the reference or
- * for the group that dataset is in.
- * ref_type - Type of reference to query.
- * ref - Reference to query.
+ * loc_id - Identifier for the dataset containing the reference or
+ * for the group that dataset is in.
+ * ref_type - Type of reference to query.
+ * ref - Reference to query.
*
* OUTPUTS
- * obj_type - Type of referenced object. These are defined in H5Opublic.h,
- * enum H5O_type_t
+ * obj_type - Type of referenced object. These are defined in H5Opublic.h,
+ * enum H5O_type_t
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * M. Scot Breitenfeld
- * December 17, 2008
+ * M. Scot Breitenfeld
+ * December 17, 2008
*
* SOURCE
*/
diff --git a/fortran/src/H5Rff_F03.f90 b/fortran/src/H5Rff.F90
index 8f40607..a90bd9a 100644
--- a/fortran/src/H5Rff_F03.f90
+++ b/fortran/src/H5Rff.F90
@@ -1,43 +1,48 @@
-!****h* ROBODoc/H5R (F03)
+!****h* ROBODoc/H5R
!
! NAME
-! MODULE H5R_PROVISIONAL
+! MODULE H5R
!
! FILE
-! fortran/src/H5Rff_F03.f90
+! fortran/src/H5Rff.f90
!
! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5R functions.
-! It contains the same functions as H5Rff_DEPRECIATE.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Rff_DEPRECIATE.f90 if Fortran 2003 functions are enabled.
+! This file contains Fortran interfaces for H5R functions.
!
! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5R function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
!
!*****
-MODULE H5R_PROVISIONAL
+
+MODULE H5R
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR, C_SIGNED_CHAR
USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING
! If you change the value of these parameters, do not forget to change corresponding
! values in the H5f90.h file.
@@ -53,6 +58,12 @@ MODULE H5R_PROVISIONAL
! END TYPE
!
+ INTERFACE h5rget_object_type_f
+
+ MODULE PROCEDURE h5rget_object_type_obj_f
+
+ END INTERFACE
+
TYPE :: hdset_reg_ref_t_f03
INTEGER(C_SIGNED_CHAR), DIMENSION(1:H5R_DSET_REG_REF_BUF_SIZE_F) :: ref
END TYPE hdset_reg_ref_t_f03
@@ -92,8 +103,9 @@ MODULE H5R_PROVISIONAL
INTERFACE
INTEGER FUNCTION h5rget_name_ptr_c(loc_id, ref_type, ref, name, name_len, size_default) &
BIND(C, NAME='h5rget_name_ptr_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
+ IMPORT :: c_char, c_ptr
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
INTEGER, INTENT(IN) :: ref_type
TYPE(C_PTR), INTENT(IN), VALUE :: ref
@@ -106,8 +118,9 @@ MODULE H5R_PROVISIONAL
INTERFACE
INTEGER FUNCTION h5rdereference_ptr_c(obj_id, ref_type, ref, ref_obj_id) &
BIND(C, NAME='h5rdereference_ptr_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id
INTEGER, INTENT(IN) :: ref_type
TYPE(C_PTR), INTENT(IN), VALUE :: ref
@@ -118,8 +131,9 @@ MODULE H5R_PROVISIONAL
INTERFACE
INTEGER FUNCTION h5rcreate_ptr_c(ref, loc_id, name, namelen, ref_type, space_id) &
BIND(C, NAME='h5rcreate_ptr_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_char, c_ptr
- USE H5GLOBAL
+ IMPORT :: c_ptr, c_char
+ IMPORT :: HID_T
+ IMPLICIT NONE
TYPE(C_PTR), VALUE :: ref
INTEGER(HID_T), INTENT(IN) :: loc_id
CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
@@ -132,16 +146,80 @@ MODULE H5R_PROVISIONAL
INTERFACE
INTEGER FUNCTION h5rget_region_ptr_c(dset_id, ref, space_id) &
BIND(C, NAME='h5rget_region_ptr_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
+ IMPORT :: c_ptr
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id
TYPE(C_PTR), VALUE :: ref
INTEGER(HID_T), INTENT(OUT) :: space_id
END FUNCTION h5rget_region_ptr_c
END INTERFACE
+
CONTAINS
+!****s* H5R/h5rget_object_type_obj_f
+!
+! NAME
+! h5rget_object_type_obj_f
+!
+! PURPOSE
+! Retrieves the type of object that an object reference points to.
+!
+! INPUTS
+! dset_id - identifier of the dataset containing
+! reference to the objects
+! ref - reference to open
+! OUTPUTS
+! obj_type - object_type, possible values:
+! H5G_UNKNOWN_F
+! H5G_GROUP_F
+! H5G_DATASET_F
+! H5G_TYPE_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! NOTES
+! This is a module procedure for the h5rget_object_type_f
+! subroutine.
+! SOURCE
+ SUBROUTINE h5rget_object_type_obj_f(dset_id, ref, obj_type, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
+ TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference
+ INTEGER, INTENT(OUT) :: obj_type ! Object type
+ ! H5G_UNKNOWN_F
+ ! H5G_GROUP_F
+ ! H5G_DATASET_F
+ ! H5G_TYPE_F
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference
+
+ INTERFACE
+ INTEGER FUNCTION h5rget_object_type_obj_c(dset_id, ref_f, obj_type) BIND(C, NAME='h5rget_object_type_obj_c')
+ IMPORT :: HID_T, HADDR_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dset_id
+ INTEGER(HADDR_T) :: ref_f
+ INTEGER, INTENT(OUT) :: obj_type
+ END FUNCTION h5rget_object_type_obj_c
+ END INTERFACE
+
+ ref_f = ref%ref
+ hdferr = h5rget_object_type_obj_c(dset_id, ref_f, obj_type )
+
+ END SUBROUTINE h5rget_object_type_obj_f
+
+
!****s* H5R/h5rget_region_region_f
!
! NAME
@@ -180,13 +258,10 @@ CONTAINS
INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
INTERFACE
- INTEGER FUNCTION h5rget_region_region_c(dset_id, ref_f, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_REGION_REGION_C':: h5rget_region_region_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5rget_region_region_c(dset_id, ref_f, space_id) BIND(C, NAME='h5rget_region_region_c')
+ IMPORT :: HID_T, REF_REG_BUF_LEN
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: dset_id
- ! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
INTEGER :: ref_f(REF_REG_BUF_LEN)
INTEGER(HID_T), INTENT(OUT) :: space_id
END FUNCTION h5rget_region_region_c
@@ -322,16 +397,13 @@ CONTAINS
INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
INTERFACE
- INTEGER FUNCTION h5rcreate_region_c(ref_f, loc_id, name, namelen, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RCREATE_REGION_C':: h5rcreate_region_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- ! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
+ INTEGER FUNCTION h5rcreate_region_c(ref_f, loc_id, name, namelen, space_id) BIND(C,NAME='h5rcreate_region_c')
+ IMPORT :: HID_T, REF_REG_BUF_LEN
+ IMPORT :: C_CHAR
+ IMPLICIT NONE
INTEGER :: ref_f(REF_REG_BUF_LEN)
INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
INTEGER :: namelen
INTEGER(HID_T), INTENT(IN) :: space_id
END FUNCTION h5rcreate_region_c
@@ -703,8 +775,9 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5rget_obj_type_c(loc_id, ref_type, ref, obj_type) &
BIND(C, NAME='h5rget_obj_type_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
+ IMPORT :: C_PTR
+ IMPORT :: HID_T
+ IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
INTEGER, INTENT(IN) :: ref_type
TYPE(C_PTR), VALUE :: ref
@@ -716,4 +789,4 @@ CONTAINS
END SUBROUTINE h5rget_obj_type_f
-END MODULE H5R_PROVISIONAL
+END MODULE H5R
diff --git a/fortran/src/H5Rff.f90 b/fortran/src/H5Rff.f90
deleted file mode 100644
index 77a1ff8..0000000
--- a/fortran/src/H5Rff.f90
+++ /dev/null
@@ -1,128 +0,0 @@
-!****h* ROBODoc/H5R
-!
-! NAME
-! MODULE H5R
-!
-! FILE
-! fortran/src/H5Rff.f90
-!
-! PURPOSE
-! This file contains Fortran interfaces for H5R functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5R function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5R
- USE H5GLOBAL
-
- ! If you change the value of these parameters, do not forget to change corresponding
- ! values in the H5f90.h file.
- ! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2
- ! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
- !
- ! TYPE hobj_ref_t_f
- ! INTEGER ref(REF_OBJ_BUF_LEN)
- ! END TYPE
- !
- ! TYPE hdset_reg_ref_t_f
- ! INTEGER ref(REF_REG_BUF_LEN)
- ! END TYPE
- !
-
- INTERFACE h5rget_object_type_f
-
- MODULE PROCEDURE h5rget_object_type_obj_f
-
- END INTERFACE
-
-CONTAINS
-
-!****s* H5R/h5rget_object_type_obj_f
-!
-! NAME
-! h5rget_object_type_obj_f
-!
-! PURPOSE
-! Retrieves the type of object that an object reference points to.
-!
-! INPUTS
-! dset_id - identifier of the dataset containing
-! reference to the objects
-! ref - reference to open
-! OUTPUTS
-! obj_type - object_type, possible values:
-! H5G_UNKNOWN_F
-! H5G_GROUP_F
-! H5G_DATASET_F
-! H5G_TYPE_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rget_object_type_f
-! subroutine.
-! SOURCE
- SUBROUTINE h5rget_object_type_obj_f(dset_id, ref, obj_type, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference
- INTEGER, INTENT(OUT) :: obj_type ! Object type
- ! H5G_UNKNOWN_F
- ! H5G_GROUP_F
- ! H5G_DATASET_F
- ! H5G_TYPE_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rget_object_type_obj_c(dset_id, ref_f, obj_type)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_OBJECT_TYPE_OBJ_C':: h5rget_object_type_obj_c
- !DEC$ENDIF
- ! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HADDR_T) :: ref_f
- INTEGER, INTENT(OUT) :: obj_type
- END FUNCTION h5rget_object_type_obj_c
- END INTERFACE
-
- ref_f = ref%ref
- hdferr = h5rget_object_type_obj_c(dset_id, ref_f, obj_type )
-
- END SUBROUTINE h5rget_object_type_obj_f
-
-END MODULE H5R
diff --git a/fortran/src/H5Rff_F90.f90 b/fortran/src/H5Rff_F90.f90
deleted file mode 100644
index ac45857..0000000
--- a/fortran/src/H5Rff_F90.f90
+++ /dev/null
@@ -1,514 +0,0 @@
-!****h* ROBODoc/H5R (F90)
-!
-! NAME
-! MODULE H5R_PROVISIONAL
-!
-! FILE
-! fortran/src/H5Rff_F90.f90
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5R functions. It contains
-! the same functions as H5Rff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Rff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5R function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5R_PROVISIONAL
- USE H5GLOBAL
-
-! If you change the value of these parameters, do not forget to change corresponding
-! values in the H5f90.h file.
-! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2
-! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
-!
-! TYPE hobj_ref_t_f
-! INTEGER ref(REF_OBJ_BUF_LEN)
-! END TYPE
-!
-! TYPE hdset_reg_ref_t_f
-! INTEGER ref(REF_REG_BUF_LEN)
-! END TYPE
-!
- INTERFACE h5rcreate_f
-
- MODULE PROCEDURE h5rcreate_object_f
- MODULE PROCEDURE h5rcreate_region_f
-
- END INTERFACE
-
- INTERFACE h5rdereference_f
-
- MODULE PROCEDURE h5rdereference_object_f
- MODULE PROCEDURE h5rdereference_region_f
-
- END INTERFACE
-
- INTERFACE h5rget_name_f
-
- MODULE PROCEDURE h5rget_name_object_f
- MODULE PROCEDURE h5rget_name_region_f
-
- END INTERFACE
-
- INTERFACE h5rget_region_f
-
- MODULE PROCEDURE h5rget_region_region_f
-
- END INTERFACE
-
-
-CONTAINS
-
-
-!****s* H5R/h5rget_region_region_f
-!
-! NAME
-! h5rget_region_region_f
-!
-! PURPOSE
-! Retrieves a dataspace with the specified region selected
-!
-! INPUTS
-! dset_id - identifier of the dataset containing
-! reference to the regions
-! ref - reference to open
-! OUTPUTS
-! space_id - dataspace identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rget_region_f subroutine.
-!
-! SOURCE
- SUBROUTINE h5rget_region_region_f(dset_id, ref, space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Dataset region reference
- INTEGER(HID_T), INTENT(OUT) :: space_id ! Space identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rget_region_region_c(dset_id, ref_f, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_REGION_REGION_C':: h5rget_region_region_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- ! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
- INTEGER :: ref_f(REF_REG_BUF_LEN)
- INTEGER(HID_T), INTENT(OUT) :: space_id
- END FUNCTION h5rget_region_region_c
- END INTERFACE
-
- ref_f = ref%ref
- hdferr = h5rget_region_region_c(dset_id, ref_f, space_id )
-
- END SUBROUTINE h5rget_region_region_f
-
-
-
-!****s* H5R (F90)/h5rcreate_object_f
-!
-! NAME
-! h5rcreate_object_f
-!
-! PURPOSE
-! Creates reference to the object
-!
-! INPUTS
-! loc_id - location identifier
-! name - name of the object at the specified location
-! OUTPUTS
-! ref - reference to the specified object
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rcreate_f subroutine.
-!
-! SOURCE
- SUBROUTINE h5rcreate_object_f(loc_id, name, ref, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the object at location specified
- ! by loc_id identifier
- TYPE(hobj_ref_t_f), INTENT(OUT) :: ref ! Object reference
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen ! Name length
- INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rcreate_object_c(ref_f, loc_id, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RCREATE_OBJECT_C':: h5rcreate_object_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HADDR_T) :: ref_f
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- END FUNCTION h5rcreate_object_c
- END INTERFACE
-
- namelen = LEN(name)
- ref_f = 0
- hdferr = h5rcreate_object_c(ref_f, loc_id, name, namelen )
- ref%ref = ref_f
-
- END SUBROUTINE h5rcreate_object_f
-
-!****s* H5R (F90)/h5rcreate_region_f
-!
-! NAME
-! h5rcreate_region_f
-!
-! PURPOSE
-! Creates reference to the dataset region
-!
-! INPUTS
-! loc_id - location identifier
-! name - name of the dataset at the specified location
-! space_id - dataspace identifier that describes selected region
-! OUTPUTS
-! ref - reference to the dataset region
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rcreate_f subroutine.
-!
-! SOURCE
- SUBROUTINE h5rcreate_region_f(loc_id, name, space_id, ref, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! Location identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the dataset at location specified
- ! by loc_id identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataset's dataspace identifier
- TYPE(hdset_reg_ref_t_f), INTENT(OUT) :: ref ! Dataset region reference
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen ! Name length
- INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rcreate_region_c(ref_f, loc_id, name, namelen, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RCREATE_REGION_C':: h5rcreate_region_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- ! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
- INTEGER :: ref_f(REF_REG_BUF_LEN)
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER(HID_T), INTENT(IN) :: space_id
- END FUNCTION h5rcreate_region_c
- END INTERFACE
-
- namelen = LEN(name)
- ref_f = 0
- hdferr = h5rcreate_region_c(ref_f, loc_id, name, namelen, space_id )
- ref%ref = ref_f
-
- END SUBROUTINE h5rcreate_region_f
-!****s* H5R (F90)/h5rdereference_object_f
-!
-! NAME
-! h5rdereference_object_f
-!
-! PURPOSE
-! Opens the HDF5 object referenced
-!
-! INPUTS
-! dset_id - identifier of the dataset containing reference
-! ref - reference to open
-! OUTPUTS
-! obj_id - object_identifier
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rdereference_f subroutine.
-!
-! SOURCE
- SUBROUTINE h5rdereference_object_f(dset_id, ref, obj_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rdereference_object_c(dset_id, ref_f, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RDEREFERENCE_OBJECT_C':: h5rdereference_object_c
- !DEC$ENDIF
- ! INTEGER, PARAMETER :: REF_OBJ_BUF_LEN = 2
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HADDR_T) :: ref_f
- INTEGER(HID_T), INTENT(OUT) :: obj_id
- END FUNCTION h5rdereference_object_c
- END INTERFACE
-
- ref_f = ref%ref
- hdferr = h5rdereference_object_c(dset_id, ref_f, obj_id )
-
- END SUBROUTINE h5rdereference_object_f
-!****s* H5R (F90)/h5rdereference_region_f
-!
-! NAME
-! h5rdereference_region_f
-!
-! PURPOSE
-! Opens the dataset region
-!
-! INPUTS
-! dset_id - identifier of the dataset containing
-! reference to teh regions
-! ref - reference to open
-! OUTPUTS
-! obj_id - dataspace identifier
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). February 28, 2001
-!
-! NOTES
-! This is a module procedure for the h5rdereference_f subroutine.
-!
-! SOURCE
- SUBROUTINE h5rdereference_region_f(dset_id, ref, obj_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref ! Object reference
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
-
- INTERFACE
- INTEGER FUNCTION h5rdereference_region_c(dset_id, ref_f, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RDEREFERENCE_REGION_C':: h5rdereference_region_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
-! INTEGER, PARAMETER :: REF_REG_BUF_LEN = 3
- INTEGER :: ref_f(REF_REG_BUF_LEN)
- INTEGER(HID_T), INTENT(OUT) :: obj_id
- END FUNCTION h5rdereference_region_c
- END INTERFACE
-
- ref_f = ref%ref
- hdferr = h5rdereference_region_c(dset_id, ref_f, obj_id )
-
- END SUBROUTINE h5rdereference_region_f
-!****s* H5R (F90)/h5rget_name_object_f
-!
-! NAME
-! h5rget_name_object_f
-!
-! PURPOSE
-! Retrieves a name of a referenced object.
-!
-! INPUTS
-! loc_id - Identifier for the file containing the reference or for any object in that file.
-! ref - An object or dataset region reference.
-!
-! OUTPUTS
-! name - A name associated with the referenced object or dataset region.
-!
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! OPTIONAL PARAMETERS
-! size - The size of the name buffer, returning 0 (zero) if
-! no name is associated with the identifier
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! March 28, 2008
-!
-! SOURCES
- SUBROUTINE h5rget_name_object_f(loc_id, ref, name, hdferr, size)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! Identifier for the file containing the reference or
- ! for any object in that file.
- ! or for the group that dataset is in.
- TYPE(hobj_ref_t_f), INTENT(IN) :: ref ! Object reference
- INTEGER(SIZE_T), OPTIONAL, INTENT(OUT) :: size ! The size of the name buffer,
- ! returning 0 (zero) if no name is associated with the identifier
- CHARACTER(LEN=*), INTENT(OUT) :: name ! A name associated with the referenced object or dataset region.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER(HADDR_T) :: ref_f ! Local buffer to pass reference
-
- INTEGER(SIZE_T) :: size_default
- INTEGER(SIZE_T) :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5rget_name_object_c(loc_id, ref_f, name, name_len, size_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_NAME_OBJECT_C':: h5rget_name_object_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- INTEGER(SIZE_T) :: size_default
- CHARACTER(LEN=*), INTENT(OUT) :: name
- INTEGER(HADDR_T) :: ref_f
-
- INTEGER(SIZE_T) :: name_len
- END FUNCTION h5rget_name_object_c
- END INTERFACE
-
- name_len=LEN(name)
-
- ref_f = ref%ref
- hdferr = h5rget_name_object_c(loc_id, ref_f, name, name_len, size_default)
-
- IF(PRESENT(size)) size = size_default
-
- END SUBROUTINE h5rget_name_object_f
-
-!****s* H5R (F90)/h5rget_name_region_f
-!
-! NAME
-! h5rget_name_region_f
-!
-! PURPOSE
-! Retrieves a name of a dataset region.
-!
-! INPUTS
-! loc_id - Identifier for the file containing the reference or
-! for any object in that file.
-! ref - An object or dataset region reference.
-!
-! OUTPUTS
-! name - A name associated with the referenced object or dataset region.
-! hdferr - error code
-! Success: 0
-! Failure: -1
-!
-! OPTIONAL PARAMETERS
-! size - The size of the name buffer, returning 0 (zero) if no
-! name is associated with the identifier
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! March 28, 2008
-!
-! SOURCE
- SUBROUTINE h5rget_name_region_f(loc_id, ref, name, hdferr, size)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id
- TYPE(hdset_reg_ref_t_f), INTENT(IN) :: ref
- INTEGER(SIZE_T), OPTIONAL, INTENT(OUT) :: size
- CHARACTER(LEN=*), INTENT(OUT) :: name
- INTEGER, INTENT(OUT) :: hdferr
-!*****
- INTEGER :: ref_f(REF_REG_BUF_LEN) ! Local buffer to pass reference
- INTEGER(SIZE_T) :: size_default
- INTEGER(SIZE_T) :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5rget_name_region_c(loc_id, ref_f, name, name_len, size_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5RGET_NAME_REGION_C':: h5rget_name_region_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- INTEGER(SIZE_T) :: size_default
- CHARACTER(LEN=*), INTENT(OUT) :: name
- INTEGER :: ref_f(REF_REG_BUF_LEN)
-
- INTEGER(SIZE_T) :: name_len
- END FUNCTION h5rget_name_region_c
- END INTERFACE
-
- name_len=LEN(name)
-
- ref_f = ref%ref
- hdferr = h5rget_name_region_c(loc_id, ref_f, name, name_len, size_default)
-
- IF(PRESENT(size)) size = size_default
-
- END SUBROUTINE h5rget_name_region_f
-
-END MODULE H5R_PROVISIONAL
diff --git a/fortran/src/H5Sf.c b/fortran/src/H5Sf.c
index 6947d64..67427a7 100644
--- a/fortran/src/H5Sf.c
+++ b/fortran/src/H5Sf.c
@@ -1,6 +1,6 @@
/****h* H5Sf/H5Sf
* PURPOSE
- * This file contains C stubs for H5S Fortran APIs
+ * This file contains C stubs for H5S Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,27 +26,27 @@
/****if* H5Sf/h5screate_simple_c
* NAME
- * h5screate_simple_c
+ * h5screate_simple_c
* PURPOSE
- * Call H5Screate_simple to create a dataspace
+ * Call H5Screate_simple to create a dataspace
* INPUTS
- * rank - number of dimensions of dataspace
- * dims - array of the size of each dimension
+ * rank - number of dimensions of dataspace
+ * dims - array of the size of each dimension
maxdims - an array of the maximum size of each dimension
* OUTPUTS
- * space_id - identifier of the created dataspace
+ * space_id - identifier of the created dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 4, 1999
+ * Wednesday, August 4, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5screate_simple_c ( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f *space_id )
+h5screate_simple_c ( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f *space_id )
/******/
{
hsize_t c_dims[H5S_MAX_RANK];
@@ -75,23 +75,23 @@ done:
/****if* H5Sf/h5sclose_c
* NAME
- * h5sclose_c
+ * h5sclose_c
* PURPOSE
- * Call H5Sclose to close the dataspace
+ * Call H5Sclose to close the dataspace
* INPUTS
- * space_id - identifier of the dataspace to be closed
+ * space_id - identifier of the dataspace to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 4, 1999
+ * Wednesday, August 4, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sclose_c ( hid_t_f *space_id )
+h5sclose_c ( hid_t_f *space_id )
/******/
{
int ret_value = 0;
@@ -104,25 +104,25 @@ nh5sclose_c ( hid_t_f *space_id )
/****if* H5Sf/h5screate_c
* NAME
- * h5screate_c
+ * h5screate_c
* PURPOSE
- * Call H5Screate to create a dataspace
+ * Call H5Screate to create a dataspace
* INPUTS
- * classtype - type of the dataspace class
+ * classtype - type of the dataspace class
* OUTPUTS
- * space_id - identifier of the created dataspace
+ * space_id - identifier of the created dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 10, 1999
+ * Tuesday, August 10, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5screate_c ( int_f *classtype, hid_t_f *space_id )
+h5screate_c ( int_f *classtype, hid_t_f *space_id )
/******/
{
H5S_class_t c_classtype;
@@ -138,25 +138,25 @@ nh5screate_c ( int_f *classtype, hid_t_f *space_id )
/****if* H5Sf/h5scopy_c
* NAME
- * h5scopy_c
+ * h5scopy_c
* PURPOSE
- * Call H5Scopy to copy dataspace
+ * Call H5Scopy to copy dataspace
* INPUTS
- * space_id - identifier of the dataspace to be copied
+ * space_id - identifier of the dataspace to be copied
* OUTPUTS
- * new_space_id - identifier of the new datspace
+ * new_space_id - identifier of the new datspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 10, 1999
+ * Tuesday, August 10, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5scopy_c( hid_t_f *space_id , hid_t_f *new_space_id)
+h5scopy_c( hid_t_f *space_id , hid_t_f *new_space_id)
/******/
{
int ret_value = 0;
@@ -173,28 +173,28 @@ nh5scopy_c( hid_t_f *space_id , hid_t_f *new_space_id)
/****if* H5Sf/h5sget_select_hyper_nblocks_c
* NAME
- * h5sget_select_hyper_nblocks_c
+ * h5sget_select_hyper_nblocks_c
* PURPOSE
- * Call H5SH5Sget_select_hyper_nblocks to
- * get the the number of hyperslab blocks in
- * the current dataspace selection if successful
+ * Call H5SH5Sget_select_hyper_nblocks to
+ * get the the number of hyperslab blocks in
+ * the current dataspace selection if successful
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * num_blocks - number of hyperslab blocks in
- * the current dataspace selection
+ * num_blocks - number of hyperslab blocks in
+ * the current dataspace selection
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, November 12, 1999
+ * Friday, November 12, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_select_hyper_nblocks_c( hid_t_f *space_id , hssize_t_f * num_blocks)
+h5sget_select_hyper_nblocks_c( hid_t_f *space_id , hssize_t_f * num_blocks)
/******/
{
int ret_value = 0;
@@ -211,28 +211,28 @@ nh5sget_select_hyper_nblocks_c( hid_t_f *space_id , hssize_t_f * num_blocks)
/****if* H5Sf/h5sget_select_elem_npoints_c
* NAME
- * h5sget_select_elem_npoints_c
+ * h5sget_select_elem_npoints_c
* PURPOSE
- * Call H5Sget_select_elem_npoints to
- * get the the number of element points in
- * the current dataspace selection if successful
+ * Call H5Sget_select_elem_npoints to
+ * get the the number of element points in
+ * the current dataspace selection if successful
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * num_points - number of element points in
- * the current dataspace selection
+ * num_points - number of element points in
+ * the current dataspace selection
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Monday, November 15, 1999
+ * Monday, November 15, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points)
+h5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points)
/******/
{
int ret_value = 0;
@@ -249,36 +249,36 @@ nh5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points)
/****if* H5Sf/h5sget_select_hyper_blocklist_c
* NAME
- * h5sget_select_hyper_blocklist_c
+ * h5sget_select_hyper_blocklist_c
* PURPOSE
- * Call H5Sget_select_hyper_blocklist to
- * get a list of the hyperslab blocks currently selected
- * Starting with the startblock-th block in the
- * list of blocks, num_blocks blocks are put into the user's
- * buffer. If the user's buffer fills up before numblocks
- * blocks are inserted, the buffer
- * will contain only as many blocks as fit.
+ * Call H5Sget_select_hyper_blocklist to
+ * get a list of the hyperslab blocks currently selected
+ * Starting with the startblock-th block in the
+ * list of blocks, num_blocks blocks are put into the user's
+ * buffer. If the user's buffer fills up before numblocks
+ * blocks are inserted, the buffer
+ * will contain only as many blocks as fit.
* INPUTS
- * space_id - identifier of the dataspace
- * startblock - Hyperslab block to start with
- * num_blocks - number of hyperslab blocks in
- * the current dataspace selection
+ * space_id - identifier of the dataspace
+ * startblock - Hyperslab block to start with
+ * num_blocks - number of hyperslab blocks in
+ * the current dataspace selection
* OUTPUTS
- * buf - List of hyperslab blocks selected
+ * buf - List of hyperslab blocks selected
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Monday, November 15, 1999
+ * Monday, November 15, 1999
* HISTORY
*
- * Transpose dimension arrays because of C-FORTRAN storage order
- * M. Scot Breitenfeld
+ * Transpose dimension arrays because of C-FORTRAN storage order
+ * M. Scot Breitenfeld
* SOURCE
*/
int_f
-nh5sget_select_hyper_blocklist_c( hid_t_f *space_id ,hsize_t_f *startblock,
+h5sget_select_hyper_blocklist_c( hid_t_f *space_id ,hsize_t_f *startblock,
hsize_t_f *num_blocks, hsize_t_f *buf)
/******/
{
@@ -327,31 +327,31 @@ nh5sget_select_hyper_blocklist_c( hid_t_f *space_id ,hsize_t_f *startblock,
/****if* H5Sf/h5sget_select_bounds_c
* NAME
- * h5sget_select_bounds_c
+ * h5sget_select_bounds_c
* PURPOSE
- * Call H5Sget_select_bounds to retrieve the coordinates
- * of the bounding box containing the current selection
- * and places them into user-supplied buffers
+ * Call H5Sget_select_bounds to retrieve the coordinates
+ * of the bounding box containing the current selection
+ * and places them into user-supplied buffers
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * start - Starting coordinates of the bounding box
- * end - Ending coordinates of the bounding box,
- * i.e., the coordinates of the diagonally opposite corne
+ * start - Starting coordinates of the bounding box
+ * end - Ending coordinates of the bounding box,
+ * i.e., the coordinates of the diagonally opposite corne
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, November 17, 1999
+ * Wednesday, November 17, 1999
* HISTORY
- * swapped array bounds to account for C and Fortran reversed
- * matrix notation.
- * M. Scot Breitenfeld
+ * swapped array bounds to account for C and Fortran reversed
+ * matrix notation.
+ * M. Scot Breitenfeld
* SOURCE
*/
int_f
-nh5sget_select_bounds_c( hid_t_f *space_id , hsize_t_f * start, hsize_t_f * end)
+h5sget_select_bounds_c( hid_t_f *space_id , hsize_t_f * start, hsize_t_f * end)
/******/
{
hid_t c_space_id;
@@ -379,34 +379,34 @@ done:
/****if* H5Sf/h5sget_select_elem_pointlist_c
* NAME
- * h5sget_select_elem_pointlist_c
+ * h5sget_select_elem_pointlist_c
* PURPOSE
- * Call H5Sget_select_elem_pointlist
- * get a list of element points in the
- * current dataspace selectin.
- * Starting with the startpoint-th point in the
- * list of points, numpoints points are put into the user's
- * buffer. If the user's buffer fills up before numpoints
- * points are inserted, the buffer
- * will contain only as many points as fit.
+ * Call H5Sget_select_elem_pointlist
+ * get a list of element points in the
+ * current dataspace selectin.
+ * Starting with the startpoint-th point in the
+ * list of points, numpoints points are put into the user's
+ * buffer. If the user's buffer fills up before numpoints
+ * points are inserted, the buffer
+ * will contain only as many points as fit.
* INPUTS
- * space_id - identifier of the dataspace
- * startpoint - Element point to start with
- * numpoints - Number of element points to get
+ * space_id - identifier of the dataspace
+ * startpoint - Element point to start with
+ * numpoints - Number of element points to get
* OUTPUTS
- * buf - List of element points selected
+ * buf - List of element points selected
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Wednesday, November 17, 1999
+ * Wednesday, November 17, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_select_elem_pointlist_c( hid_t_f *space_id ,hsize_t_f * startpoint,
+h5sget_select_elem_pointlist_c( hid_t_f *space_id ,hsize_t_f * startpoint,
hsize_t_f * numpoints, hsize_t_f * buf)
/******/
{
@@ -451,23 +451,23 @@ nh5sget_select_elem_pointlist_c( hid_t_f *space_id ,hsize_t_f * startpoint,
/****if* H5Sf/h5sselect_all_c
* NAME
- * h5sselect_all_c
+ * h5sselect_all_c
* PURPOSE
- * Call H5Sselect_all to select entire dataspace
+ * Call H5Sselect_all to select entire dataspace
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 10, 1999
+ * Tuesday, August 10, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_all_c ( hid_t_f *space_id )
+h5sselect_all_c ( hid_t_f *space_id )
/******/
{
int ret_value = 0;
@@ -480,23 +480,23 @@ nh5sselect_all_c ( hid_t_f *space_id )
/****if* H5Sf/h5sselect_none_c
* NAME
- * h5sselect_none_c
+ * h5sselect_none_c
* PURPOSE
- * Call H5Sselect_none to reset the selection region
+ * Call H5Sselect_none to reset the selection region
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 10, 1999
+ * Tuesday, August 10, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_none_c ( hid_t_f *space_id )
+h5sselect_none_c ( hid_t_f *space_id )
/******/
{
int ret_value = 0;
@@ -509,27 +509,27 @@ nh5sselect_none_c ( hid_t_f *space_id )
/****if* H5Sf/h5sselect_valid_c
* NAME
- * h5sselect_valid_c
+ * h5sselect_valid_c
* PURPOSE
- * Call H5Sselect_valid to verify that selection
- * is within dataspace extent.
+ * Call H5Sselect_valid to verify that selection
+ * is within dataspace extent.
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * flag - 0 if not valid selection, 1 if is valid selection,
- * and negative on failure.
+ * flag - 0 if not valid selection, 1 if is valid selection,
+ * and negative on failure.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, August 10, 1999
+ * Tuesday, August 10, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_valid_c ( hid_t_f *space_id , int_f *flag )
+h5sselect_valid_c ( hid_t_f *space_id , int_f *flag )
/******/
{
int ret_value = 0;
@@ -545,26 +545,26 @@ nh5sselect_valid_c ( hid_t_f *space_id , int_f *flag )
/****if* H5Sf/h5sget_simple_extent_npoints_c
* NAME
- * h5sget_simple_extent_npoints_c
+ * h5sget_simple_extent_npoints_c
* PURPOSE
- * Call H5Sget_simple_extent_npoints to determine the number
- * of elements in a dataspace
+ * Call H5Sget_simple_extent_npoints to determine the number
+ * of elements in a dataspace
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * npoints - number of points in a dataspace
+ * npoints - number of points in a dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_simple_extent_npoints_c ( hid_t_f *space_id , hsize_t_f *npoints )
+h5sget_simple_extent_npoints_c ( hid_t_f *space_id , hsize_t_f *npoints )
/******/
{
int ret_value = 0;
@@ -580,26 +580,26 @@ nh5sget_simple_extent_npoints_c ( hid_t_f *space_id , hsize_t_f *npoints )
/****if* H5Sf/h5sget_select_npoints_c
* NAME
- * h5sget_select_npoints_c
+ * h5sget_select_npoints_c
* PURPOSE
- * Call H5Sget_select_npoints to determine the number
- * of elements in a dataspace selection
+ * Call H5Sget_select_npoints to determine the number
+ * of elements in a dataspace selection
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * npoints - number of points in a dataspace selection
+ * npoints - number of points in a dataspace selection
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_select_npoints_c ( hid_t_f *space_id , hssize_t_f *npoints )
+h5sget_select_npoints_c ( hid_t_f *space_id , hssize_t_f *npoints )
/******/
{
int ret_value = 0;
@@ -615,26 +615,26 @@ nh5sget_select_npoints_c ( hid_t_f *space_id , hssize_t_f *npoints )
/****if* H5Sf/h5sget_simple_extent_ndims_c
* NAME
- * h5sget_simple_extent_ndims_c
+ * h5sget_simple_extent_ndims_c
* PURPOSE
- * Call H5Sget_simple_extent_ndims to determine the number
- * dimensions
+ * Call H5Sget_simple_extent_ndims to determine the number
+ * dimensions
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * rank - number of dataspace dimensions
+ * rank - number of dataspace dimensions
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_simple_extent_ndims_c ( hid_t_f *space_id , int_f *ndims )
+h5sget_simple_extent_ndims_c ( hid_t_f *space_id , int_f *ndims )
/******/
{
int ret_value = 0;
@@ -650,27 +650,27 @@ nh5sget_simple_extent_ndims_c ( hid_t_f *space_id , int_f *ndims )
/****if* H5Sf/h5sget_simple_extent_type_c
* NAME
- * h5sget_simple_extent_type_c
+ * h5sget_simple_extent_type_c
* PURPOSE
- * Call H5Sget_simple_extent_type to determine the class type
- * of a dataspace
+ * Call H5Sget_simple_extent_type to determine the class type
+ * of a dataspace
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * classtype - class type; possible values are:
+ * classtype - class type; possible values are:
* H5S_SCALAR_F (0), H5S_SIMPLE_F (1), H5S_NULL_F (2)
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_simple_extent_type_c ( hid_t_f *space_id , int_f *classtype)
+h5sget_simple_extent_type_c ( hid_t_f *space_id , int_f *classtype)
/******/
{
int ret_value = 0;
@@ -691,25 +691,25 @@ nh5sget_simple_extent_type_c ( hid_t_f *space_id , int_f *classtype)
/****if* H5Sf/h5soffset_simple_c
* NAME
- * h5soffset_simple_c
+ * h5soffset_simple_c
* PURPOSE
- * Call H5Soffset_simple to set the offset of a simple
- * dataspace
+ * Call H5Soffset_simple to set the offset of a simple
+ * dataspace
* INPUTS
- * space_id - identifier of the dataspace
- * offset - offset array
+ * space_id - identifier of the dataspace
+ * offset - offset array
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5soffset_simple_c ( hid_t_f *space_id , hssize_t_f *offset)
+h5soffset_simple_c ( hid_t_f *space_id , hssize_t_f *offset)
/******/
{
hid_t c_space_id;
@@ -738,27 +738,27 @@ done:
/****if* H5Sf/h5sset_extent_simple_c
* NAME
- * h5sset_extent_simple_c
+ * h5sset_extent_simple_c
* PURPOSE
- * Call H5Sset_extent_simple to set or reset size of
- * existing dataspace
+ * Call H5Sset_extent_simple to set or reset size of
+ * existing dataspace
* INPUTS
- * space_id - identifier of the dataspace
- * rank - dataspace rank
- * current_size - array with the new dimension sizes
- * maximum_size - aray with maximum sizes of dimensions
+ * space_id - identifier of the dataspace
+ * rank - dataspace rank
+ * current_size - array with the new dimension sizes
+ * maximum_size - aray with maximum sizes of dimensions
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sset_extent_simple_c ( hid_t_f *space_id , int_f *rank, hsize_t_f *current_size, hsize_t_f *maximum_size)
+h5sset_extent_simple_c ( hid_t_f *space_id , int_f *rank, hsize_t_f *current_size, hsize_t_f *maximum_size)
/******/
{
hsize_t c_current_size[H5S_MAX_RANK];
@@ -784,27 +784,27 @@ done:
/****if* H5Sf/h5sget_simple_extent_dims_c
* NAME
- * h5sget_simple_extent_dims_c
+ * h5sget_simple_extent_dims_c
* PURPOSE
- * Call H5Sget_simple_extent_dims to retrieve sizes of an
- * existing dataspace
+ * Call H5Sget_simple_extent_dims to retrieve sizes of an
+ * existing dataspace
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * dims - array with the dimension sizes
- * maxdims - aray with maximum sizes of dimensions
+ * dims - array with the dimension sizes
+ * maxdims - aray with maximum sizes of dimensions
* RETURNS
- * number of dataspace dimensions (rank) on success, -1 on failure
+ * number of dataspace dimensions (rank) on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_simple_extent_dims_c ( hid_t_f *space_id , hsize_t_f *dims, hsize_t_f *maxdims)
+h5sget_simple_extent_dims_c ( hid_t_f *space_id , hsize_t_f *dims, hsize_t_f *maxdims)
/******/
{
hid_t c_space_id;
@@ -838,27 +838,27 @@ done:
/****if* H5Sf/h5sis_simple_c
* NAME
- * h5sis_simple_c
+ * h5sis_simple_c
* PURPOSE
- * Call H5Sis_simple to detrmine if the dataspace
- * is simple.
+ * Call H5Sis_simple to detrmine if the dataspace
+ * is simple.
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * flag - 0 if not simple, 1 if is simple,
- * and negative on failure.
+ * flag - 0 if not simple, 1 if is simple,
+ * and negative on failure.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sis_simple_c ( hid_t_f *space_id , int_f *flag )
+h5sis_simple_c ( hid_t_f *space_id , int_f *flag )
/******/
{
int ret_value = 0;
@@ -875,24 +875,24 @@ nh5sis_simple_c ( hid_t_f *space_id , int_f *flag )
/****if* H5Sf/h5sextent_copy_c
* NAME
- * h5sextent_copy_c
+ * h5sextent_copy_c
* PURPOSE
- * Call H5Sextent_copy to copy an extent of dataspace
+ * Call H5Sextent_copy to copy an extent of dataspace
* INPUTS
- * dest_space_id - identifier of the destination dataspace
- * source_space_id - identifier of the source dataspace
+ * dest_space_id - identifier of the destination dataspace
+ * source_space_id - identifier of the source dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sextent_copy_c ( hid_t_f *dest_space_id , hid_t_f *source_space_id)
+h5sextent_copy_c ( hid_t_f *dest_space_id , hid_t_f *source_space_id)
/******/
{
int ret_value = 0;
@@ -908,23 +908,23 @@ nh5sextent_copy_c ( hid_t_f *dest_space_id , hid_t_f *source_space_id)
/****if* H5Sf/h5sset_extent_none_c
* NAME
- * h5sset_extent_none_c
+ * h5sset_extent_none_c
* PURPOSE
- * Call H5Sset_extent_none to remove extent from a dataspace
+ * Call H5Sset_extent_none to remove extent from a dataspace
* INPUTS
- * space_id - dataspace identifier
+ * space_id - dataspace identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sset_extent_none_c ( hid_t_f *space_id )
+h5sset_extent_none_c ( hid_t_f *space_id )
/******/
{
int ret_value = 0;
@@ -939,30 +939,30 @@ nh5sset_extent_none_c ( hid_t_f *space_id )
/****if* H5Sf/h5sselect_hyperslab_c
* NAME
- * h5sselect_hyperslab_c
+ * h5sselect_hyperslab_c
* PURPOSE
- * Call H5Sselect_hyperslab to select a hyperslab
+ * Call H5Sselect_hyperslab to select a hyperslab
* INPUTS
- * space_id - identifier of the dataspace
- * operator - defines how the new selection is combined
- * with the previous one; current values are
+ * space_id - identifier of the dataspace
+ * operator - defines how the new selection is combined
+ * with the previous one; current values are
* H5S_SELECT_SET_F (0) and H5S_SELECT_OR_F (1)
- * start - offset of start of hyperslab
- * count - number of blocks included in the hyperslab
- * stride - hyperslab stride (interval between blocks)
- * block - size of block in the hyperslab
+ * start - offset of start of hyperslab
+ * count - number of blocks included in the hyperslab
+ * stride - hyperslab stride (interval between blocks)
+ * block - size of block in the hyperslab
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block)
+h5sselect_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block)
/******/
{
hsize_t c_start[H5S_MAX_RANK];
@@ -1000,30 +1000,30 @@ done:
#ifdef NEW_HYPERSLAB_API
/****if* H5Sf/h5scombine_hyperslab_c
* NAME
- * h5scombine_hyperslab_c
+ * h5scombine_hyperslab_c
* PURPOSE
- * Call H5Scombine_hyperslab
+ * Call H5Scombine_hyperslab
* INPUTS
- * space_id - identifier of the dataspace
- * operator - defines how the new selection is combined
- * start - offset of start of hyperslab
- * count - number of blocks included in the hyperslab
- * stride - hyperslab stride (interval between blocks)
- * block - size of block in the hyperslab
+ * space_id - identifier of the dataspace
+ * operator - defines how the new selection is combined
+ * start - offset of start of hyperslab
+ * count - number of blocks included in the hyperslab
+ * stride - hyperslab stride (interval between blocks)
+ * block - size of block in the hyperslab
* OUTPUTS
- * hyper_id - identifier for the new dataspace
+ * hyper_id - identifier for the new dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5scombine_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block, hid_t_f *hyper_id)
+h5scombine_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block, hid_t_f *hyper_id)
/******/
{
int ret_value = -1;
@@ -1082,27 +1082,27 @@ DONE:
}
/****if* H5Sf/h5scombine_select_c
* NAME
- * h5scombine_select_c
+ * h5scombine_select_c
* PURPOSE
- * Call H5Scombine_ select
+ * Call H5Scombine_ select
* INPUTS
- * space1_id - identifier of the first dataspace
- * operator - defines how the new selection is combined
- * space2_id - identifier of the second dataspace
+ * space1_id - identifier of the first dataspace
+ * operator - defines how the new selection is combined
+ * space2_id - identifier of the second dataspace
* OUTPUTS
- * ds_id - identifier for the new dataspace
+ * ds_id - identifier for the new dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5scombine_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id, hid_t_f *ds_id)
+h5scombine_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id, hid_t_f *ds_id)
/******/
{
int ret_value = -1;
@@ -1123,25 +1123,25 @@ nh5scombine_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id, hid_t
}
/****if* H5Sf/h5sselect_select_c
* NAME
- * h5sselect_select_c
+ * h5sselect_select_c
* PURPOSE
- * Call H5Sselect_ select
+ * Call H5Sselect_ select
* INPUTS
- * space1_id - identifier of the first dataspace to modify
- * operator - defines how the new selection is combined
- * space2_id - identifier of the second dataspace
+ * space1_id - identifier of the first dataspace to modify
+ * operator - defines how the new selection is combined
+ * space2_id - identifier of the second dataspace
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id)
+h5sselect_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id)
/******/
{
int ret_value = -1;
@@ -1160,24 +1160,24 @@ nh5sselect_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id)
#endif /*NEW_HYPERSLAB_API*/
/****if* H5Sf/h5sget_select_type_c
* NAME
- * h5sget_select_type_c
+ * h5sget_select_type_c
* PURPOSE
- * Call H5Sget_select_type
+ * Call H5Sget_select_type
* INPUTS
- * space_id - identifier of the dataspace
+ * space_id - identifier of the dataspace
* OUTPUTS
- * type - type of selection
+ * type - type of selection
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Monday, October 7, 2002
+ * Monday, October 7, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5sget_select_type_c ( hid_t_f *space_id , int_f *type)
+h5sget_select_type_c ( hid_t_f *space_id , int_f *type)
/******/
{
int ret_value = -1;
@@ -1195,28 +1195,28 @@ nh5sget_select_type_c ( hid_t_f *space_id , int_f *type)
/****if* H5Sf/h5sselect_elements_c
* NAME
- * h5sselect_elements_c
+ * h5sselect_elements_c
* PURPOSE
- * Call H5Sselect_elements to select elements of a dataspace
+ * Call H5Sselect_elements to select elements of a dataspace
* INPUTS
- * space_id - identifier of the dataspace
- * operator - defines how the new selection is combined
- * with the previous one; current values are
+ * space_id - identifier of the dataspace
+ * operator - defines how the new selection is combined
+ * with the previous one; current values are
* H5S_SELECT_SET_F (0)
- * nelements - number of elements in the selection
- * coord - arrays with the elements coordinates
+ * nelements - number of elements in the selection
+ * coord - arrays with the elements coordinates
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, August 11, 1999
+ * Wednesday, August 11, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5sselect_elements_c ( hid_t_f *space_id , int_f *op, size_t_f *nelements, hsize_t_f *coord)
+h5sselect_elements_c ( hid_t_f *space_id , int_f *op, size_t_f *nelements, hsize_t_f *coord)
/******/
{
int ret_value = -1;
@@ -1251,28 +1251,28 @@ nh5sselect_elements_c ( hid_t_f *space_id , int_f *op, size_t_f *nelements, hsi
/****if* H5Sf/h5sdecode_c
* NAME
- * h5sdecode_c
+ * h5sdecode_c
* PURPOSE
- * Call H5Sdecode
+ * Call H5Sdecode
* INPUTS
*
* buf - Buffer for the data space object to be decoded.
* OUTPUTS
*
- * obj_id - Object_id (non-negative)
+ * obj_id - Object_id (non-negative)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 26, 2008
+ * March 26, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5sdecode_c ( _fcd buf, hid_t_f *obj_id )
+h5sdecode_c ( _fcd buf, hid_t_f *obj_id )
/******/
{
int ret_value = -1;
@@ -1297,26 +1297,26 @@ nh5sdecode_c ( _fcd buf, hid_t_f *obj_id )
/****if* H5Sf/h5sencode_c
* NAME
- * h5sencode_c
+ * h5sencode_c
* PURPOSE
- * Call H5Sencode
+ * Call H5Sencode
* INPUTS
*
- * obj_id - Identifier of the object to be encoded.
+ * obj_id - Identifier of the object to be encoded.
* buf - Buffer for the object to be encoded into.
- * nalloc - The size of the allocated buffer.
+ * nalloc - The size of the allocated buffer.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * March 26, 2008
+ * March 26, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5sencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
+h5sencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
/******/
{
int ret_value = -1;
@@ -1366,28 +1366,28 @@ nh5sencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
/****if* H5Sf/h5sextent_equal_c
* NAME
- * h5sextent_equal_c
+ * h5sextent_equal_c
* PURPOSE
- * Call H5Sextent_equal
+ * Call H5Sextent_equal
* INPUTS
*
* space1_id - First dataspace identifier.
- * space2_id - Second dataspace identifier.
+ * space2_id - Second dataspace identifier.
* OUTPUTS
*
- * equal - TRUE if equal, FALSE if unequal.
+ * equal - TRUE if equal, FALSE if unequal.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
- * April 4, 2008
+ * April 4, 2008
* HISTORY
*
* SOURCE
*/
int_f
-nh5sextent_equal_c ( hid_t_f * space1_id, hid_t_f *space2_id, hid_t_f *c_equal)
+h5sextent_equal_c ( hid_t_f * space1_id, hid_t_f *space2_id, hid_t_f *c_equal)
/******/
{
int ret_value = -1;
diff --git a/fortran/src/H5Sff.F90 b/fortran/src/H5Sff.F90
new file mode 100644
index 0000000..aeb3314
--- /dev/null
+++ b/fortran/src/H5Sff.F90
@@ -0,0 +1,1754 @@
+!****h* ROBODoc/H5S
+!
+! NAME
+! MODULE H5S
+!
+! FILE
+! fortran/src/H5Sff.f90
+!
+! PURPOSE
+! This file contains Fortran interfaces for H5S functions.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! NOTES
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new H5S function you must add the function name to the
+! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+!*****
+
+MODULE H5S
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR
+ USE H5GLOBAL
+
+CONTAINS
+!
+!****s* H5S/h5screate_simple_f
+!
+! NAME
+! h5screate_simple_f
+!
+! PURPOSE
+! Creates a new simple data space and opens it for access .
+!
+! INPUTS
+! rank - number of dimensions
+! dims - an array of the size of each dimension
+! OUTPUTS
+! space_id - dataspace identifier
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! maxdims - an array of the maximum size of each dimension
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+! SOURCE
+ SUBROUTINE h5screate_simple_f(rank, dims, space_id, hdferr, maxdims)
+
+ IMPLICIT NONE
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), INTENT(IN) :: dims(rank)
+ INTEGER(HID_T), INTENT(OUT) :: space_id
+ INTEGER, INTENT(OUT) :: hdferr
+ INTEGER(HSIZE_T), OPTIONAL, INTENT(IN) :: maxdims(rank)
+!*****
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: f_maxdims
+
+ INTERFACE
+ INTEGER FUNCTION h5screate_simple_c(rank, dims, maxdims, space_id) BIND(C,NAME='h5screate_simple_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), INTENT(IN) :: dims(rank)
+ INTEGER(HSIZE_T), DIMENSION(:),INTENT(IN) :: maxdims(rank)
+ INTEGER(HID_T), INTENT(OUT) :: space_id
+ END FUNCTION h5screate_simple_c
+ END INTERFACE
+
+ ALLOCATE (f_maxdims(rank), stat=hdferr)
+ IF (hdferr .NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ IF (PRESENT(maxdims)) THEN
+ f_maxdims = maxdims
+ ELSE
+ f_maxdims = dims
+ ENDIF
+ hdferr = h5screate_simple_c(rank, dims, f_maxdims, space_id)
+ DEALLOCATE(f_maxdims)
+
+ END SUBROUTINE h5screate_simple_f
+
+!
+!****s* H5S/h5sclose_f
+!
+! NAME
+! h5sclose_f
+!
+! PURPOSE
+! Releases and terminates access to a dataspace.
+!
+! INPUTS
+! space_id - identifier of dataspace to release
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sclose_f(space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sclose_c(space_id) BIND(C,NAME='h5sclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ END FUNCTION h5sclose_c
+ END INTERFACE
+
+ hdferr = h5sclose_c(space_id)
+
+ END SUBROUTINE h5sclose_f
+
+!
+!****s* H5S/h5screate_f
+!
+! NAME
+! h5screate_f
+!
+! PURPOSE
+! Creates a new dataspace of a specified type.
+!
+! INPUTS
+! classtype - The type of the dataspace to be created
+! Possible values are:
+! H5S_SCALAR_F
+! H5S_SIMPLE_F
+! H5S_NULL_F
+! OUTPUTS
+! space_id - Dataspace identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! NOTES
+!
+
+! SOURCE
+ SUBROUTINE h5screate_f(classtype, space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER, INTENT(IN) :: classtype
+ INTEGER(HID_T), INTENT(OUT) :: space_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5screate_c(classtype, space_id) BIND(C,NAME='h5screate_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER, INTENT(IN) :: classtype
+ INTEGER(HID_T), INTENT(OUT) :: space_id
+ END FUNCTION h5screate_c
+ END INTERFACE
+
+ hdferr = h5screate_c(classtype, space_id)
+
+ END SUBROUTINE h5screate_f
+
+!
+!****s* H5S/h5scopy_f
+!
+! NAME
+! h5scopy_f
+!
+! PURPOSE
+! Creates an exact copy of a dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! new_space_id - identifier of dataspace's copy
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! NOTES
+!
+
+! SOURCE
+ SUBROUTINE h5scopy_f(space_id, new_space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HID_T), INTENT(OUT) :: new_space_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5scopy_c(space_id, new_space_id) BIND(C,NAME='h5scopy_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HID_T), INTENT(OUT):: new_space_id
+ END FUNCTION h5scopy_c
+ END INTERFACE
+
+ hdferr = h5scopy_c(space_id, new_space_id)
+
+ END SUBROUTINE h5scopy_f
+
+!
+!****s* H5S/h5sget_select_hyper_nblocks_f
+!
+! NAME
+! h5sget_select_hyper_nblocks_f
+!
+! PURPOSE
+! Get number of hyperslab blocks.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! num_blocks - number of hyperslab blocks in the current
+! hyperslab selection
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_select_hyper_nblocks_f(space_id, num_blocks, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_hyper_nblocks_c (space_id, num_blocks) &
+ BIND(C,NAME='h5sget_select_hyper_nblocks_c')
+ IMPORT :: HID_T, HSSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks
+ END FUNCTION h5sget_select_hyper_nblocks_c
+ END INTERFACE
+
+ hdferr = h5sget_select_hyper_nblocks_c (space_id, num_blocks)
+
+ END SUBROUTINE h5sget_select_hyper_nblocks_f
+
+!
+!****s* H5S/h5sget_select_hyper_blocklist_f
+!
+! NAME
+! h5sget_select_hyper_blocklist_f
+!
+! PURPOSE
+! Gets the list of hyperslab blocks currently selected.
+!
+! INPUTS
+! space_id - dataspace identifier
+! startblock - hyperslab block to start with
+! num_blocks - number of blocks to get
+! OUTPUTS
+! buf - buffer to hold block list
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+! SOURCE
+ SUBROUTINE h5sget_select_hyper_blocklist_f(space_id, startblock, &
+ num_blocks, buf, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(IN) :: startblock
+ INTEGER(HSIZE_T), INTENT(IN) :: num_blocks
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_hyper_blocklist_c(space_id, startblock, &
+ num_blocks, buf ) BIND(C,NAME='h5sget_select_hyper_blocklist_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(IN) :: startblock
+ INTEGER(HSIZE_T), INTENT(IN) :: num_blocks
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
+ END FUNCTION h5sget_select_hyper_blocklist_c
+ END INTERFACE
+
+ hdferr = h5sget_select_hyper_blocklist_c(space_id, startblock, num_blocks, buf )
+
+ END SUBROUTINE h5sget_select_hyper_blocklist_f
+
+!
+!****s* H5S/h5sget_select_bounds_f
+!
+! NAME
+! h5sget_select_bounds_f
+!
+! PURPOSE
+! Gets the bounding box containing the current selection.
+!
+! INPUTS
+! space_id - dataspace identifier
+!
+! OUTPUTS
+! start - starting coordinates of bounding box
+! end - ending coordinates of bounding box
+! i.e., the coordinates of the diagonally opposite corner
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! NONE
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+! SOURCE
+ SUBROUTINE h5sget_select_bounds_f(space_id, start, END, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_bounds_c(space_id, start, end) &
+ BIND(C,NAME='h5sget_select_bounds_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END
+ END FUNCTION h5sget_select_bounds_c
+ END INTERFACE
+
+ hdferr = h5sget_select_bounds_c(space_id, start, END)
+
+ END SUBROUTINE h5sget_select_bounds_f
+
+!
+!****s* H5S/h5sget_select_elem_npoints_f
+!
+! NAME
+! h5sget_select_elem_npoints_f
+!
+! PURPOSE
+! Gets the number of element points in the current selection
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! num_points - number of element points in the current
+! dataspace selection
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_select_elem_npoints_f(space_id, num_points, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: num_points
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_elem_npoints_c (space_id, num_points) BIND(C,NAME='h5sget_select_elem_npoints_c')
+ IMPORT :: HID_T, HSSIZE_T
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: num_points
+ END FUNCTION h5sget_select_elem_npoints_c
+ END INTERFACE
+
+ hdferr = h5sget_select_elem_npoints_c (space_id, num_points)
+
+ END SUBROUTINE h5sget_select_elem_npoints_f
+
+!
+!****s* H5S/h5sget_select_elem_pointlist_f
+!
+! NAME
+! h5sget_select_elem_pointlist_f
+!
+! PURPOSE
+! Gets the list of element points currently selected.
+!
+! INPUTS
+! space_id - dataspace identifier
+! startpoint - element point to start with
+! num_points - number of elemnt points to get
+! OUTPUTS
+! buf - buffer with element points selected
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_select_elem_pointlist_f(space_id, startpoint, &
+ num_points, buf, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(IN) :: startpoint
+ INTEGER(HSIZE_T), INTENT(IN) :: num_points
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_elem_pointlist_c(space_id, startpoint, &
+ num_points, buf ) BIND(C,NAME='h5sget_select_elem_pointlist_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(IN) :: startpoint
+ INTEGER(HSIZE_T), INTENT(IN) :: num_points
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
+ END FUNCTION h5sget_select_elem_pointlist_c
+ END INTERFACE
+
+ hdferr = h5sget_select_elem_pointlist_c(space_id, startpoint, &
+ num_points, buf )
+
+ END SUBROUTINE h5sget_select_elem_pointlist_f
+
+!
+!****s* H5S/h5sselect_elements_f
+!
+! NAME
+! h5sselect_elements_f
+!
+! PURPOSE
+! Selects elements to be included in the selection for
+! a dataspace
+!
+! INPUTS
+! space_id - dataspace identifier
+! operator - flag, valid values are:
+! H5S_SELECT_SET_F
+! H5S_SELECT_APPEND_F
+! H5S_SELECT_PREPEND_F
+! rank - number of dataspace dimensions
+! num_elements - number of elements to be selected
+! coord - 2D (rank x num_elements) array with the
+! elements coordinates ( 1-based); in C the
+! array is stored in 2D as (num_element x rank)
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+! SOURCE
+ SUBROUTINE h5sselect_elements_f(space_id, OPERATOR, rank, &
+ num_elements, coord, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: OPERATOR
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(SIZE_T), INTENT(IN) :: num_elements
+ INTEGER(HSIZE_T), INTENT(IN) , DIMENSION(rank,num_elements) :: coord
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:,:) :: c_coord
+ INTEGER :: error, i
+
+ INTERFACE
+ INTEGER FUNCTION h5sselect_elements_c(space_id, OPERATOR,&
+ num_elements,c_c_coord) BIND(C,NAME='h5sselect_elements_c')
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: OPERATOR
+ INTEGER(SIZE_T), INTENT(IN) :: num_elements
+ INTEGER(HSIZE_T),DIMENSION(*) :: c_c_coord
+ END FUNCTION h5sselect_elements_c
+ END INTERFACE
+
+ ALLOCATE(c_coord(rank,num_elements), STAT = error)
+ IF (error.NE. 0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ DO i = 1, rank
+ c_coord(i,:) = coord(rank-i+1, :) - 1
+ ENDDO
+ hdferr = h5sselect_elements_c(space_id, OPERATOR, num_elements, c_coord)
+
+! ALLOCATE(c_coord(num_elements,rank), stat = error)
+! IF (error.NE. 0) THEN
+! hdferr = -1
+! RETURN
+! ENDIF
+!
+! c_coord = TRANSPOSE(coord)
+! hdferr = h5sselect_elements_c(space_id, OPERATOR, INT(rank,size_t), c_coord)
+
+
+ DEALLOCATE(c_coord)
+
+ END SUBROUTINE h5sselect_elements_f
+
+!
+!****s* H5S/h5sselect_all_f
+!
+! NAME
+! h5sselect_all_f
+!
+! PURPOSE
+! Selects the entire dataspace.
+!
+! INPUTS
+! space_id - Identifier for the dataspace in which
+! selection being made
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sselect_all_f(space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sselect_all_c(space_id) BIND(C,NAME='h5sselect_all_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ END FUNCTION h5sselect_all_c
+ END INTERFACE
+
+ hdferr = h5sselect_all_c(space_id)
+
+ END SUBROUTINE h5sselect_all_f
+
+!
+!****s* H5S/h5sselect_none_f
+!
+! NAME
+! h5sselect_none_f
+!
+! PURPOSE
+! Resets the selection region to include no elements.
+!
+! INPUTS
+! space_id - the identifier for the dataspace in which
+! the selection is being reset.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sselect_none_f(space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sselect_none_c(space_id) BIND(C,NAME='h5sselect_none_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ END FUNCTION h5sselect_none_c
+ END INTERFACE
+
+ hdferr = h5sselect_none_c(space_id)
+
+ END SUBROUTINE h5sselect_none_f
+
+!
+!****s* H5S/h5sselect_valid_f
+!
+! NAME
+! h5sselect_valid_f
+!
+! PURPOSE
+! Verifies that the selection is within the extent of
+! the dataspace.
+!
+! INPUTS
+! space_id - identifier for the dataspace for which
+! selection is verified
+! OUTPUTS
+! status - TRUE if the selection is contained within
+! the extent, FALSE otherwise.
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sselect_valid_f(space_id, status, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ LOGICAL, INTENT(OUT) :: status
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: flag ! "TRUE/FALSE/ERROR" flag from C routine
+
+ INTERFACE
+ INTEGER FUNCTION h5sselect_valid_c(space_id, flag) BIND(C,NAME='h5sselect_valid_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER :: flag
+ END FUNCTION h5sselect_valid_c
+ END INTERFACE
+
+ hdferr = h5sselect_valid_c(space_id, flag)
+ status = .TRUE.
+ IF (flag .EQ. 0) status = .FALSE.
+
+ END SUBROUTINE h5sselect_valid_f
+
+!
+!****s* H5S/h5sget_simple_extent_npoints_f
+!
+! NAME
+! h5sget_simple_extent_npoints_f
+!
+! PURPOSE
+! Determines the number of elements in a dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! npoints - number of elements in the dataspace
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_simple_extent_npoints_f(space_id, npoints, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(OUT) :: npoints
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_simple_extent_npoints_c( space_id, npoints) BIND(C,NAME='h5sget_simple_extent_npoints_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), INTENT(OUT) :: npoints
+ END FUNCTION h5sget_simple_extent_npoints_c
+ END INTERFACE
+
+ hdferr = h5sget_simple_extent_npoints_c( space_id, npoints)
+
+ END SUBROUTINE h5sget_simple_extent_npoints_f
+
+!
+!****s* H5S/h5sget_select_npoints_f
+!
+! NAME
+! h5sget_select_npoints_f
+!
+! PURPOSE
+! Determines the number of elements in a dataspace selection.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! npoints - number of points in the dataspace selection
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+! SOURCE
+ SUBROUTINE h5sget_select_npoints_f(space_id, npoints, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: npoints
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_npoints_c(space_id, npoints) BIND(C,NAME='h5sget_select_npoints_c')
+ IMPORT :: HID_T, HSSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), INTENT(OUT) :: npoints
+ END FUNCTION h5sget_select_npoints_c
+ END INTERFACE
+
+ hdferr = h5sget_select_npoints_c(space_id, npoints)
+
+ END SUBROUTINE h5sget_select_npoints_f
+
+!
+!****s* H5S/h5sget_simple_extent_ndims_f
+!
+! NAME
+! h5sget_simple_extent_ndims_f
+!
+! PURPOSE
+! Determines the dimensionality of a dataspace
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! rank - number of dataspace dimensions
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: rank
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_simple_extent_ndims_c(space_id, rank) BIND(C,NAME='h5sget_simple_extent_ndims_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: rank
+ END FUNCTION h5sget_simple_extent_ndims_c
+ END INTERFACE
+
+ hdferr = h5sget_simple_extent_ndims_c(space_id, rank)
+
+ END SUBROUTINE h5sget_simple_extent_ndims_f
+!
+!****s* H5S/h5sget_simple_extent_dims_f
+!
+! NAME
+! h5sget_simple_extent_dims_f
+!
+! PURPOSE
+! Retrieves dataspace dimension size and maximum size.
+!
+! INPUTS
+! space_id - dataspace identifier
+!
+! OUTPUTS
+! dims - array to store size of each dimension
+! maxdims - array to store maximum size of each dimension
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_simple_extent_dims_f(space_id, dims, maxdims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_simple_extent_dims_c(space_id, dims, maxdims) BIND(C,NAME='h5sget_simple_extent_dims_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims
+ END FUNCTION h5sget_simple_extent_dims_c
+ END INTERFACE
+
+ hdferr = h5sget_simple_extent_dims_c(space_id, dims, maxdims)
+
+ END SUBROUTINE h5sget_simple_extent_dims_f
+
+!
+!****s* H5S/h5sget_simple_extent_type_f
+!
+! NAME
+! h5sget_simple_extent_type_f
+!
+! PURPOSE
+! Determine the current class of a dataspace
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! classtype - class type, possible values are:
+! H5S_NO_CLASS_F
+! H5S_SCALAR_F
+! H5S_SIMPLE_F
+! H5S_NULL_F
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sget_simple_extent_type_f(space_id, classtype, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: classtype
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_simple_extent_type_c(space_id, classtype) BIND(C,NAME='h5sget_simple_extent_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: classtype
+ END FUNCTION h5sget_simple_extent_type_c
+ END INTERFACE
+
+ hdferr = h5sget_simple_extent_type_c(space_id, classtype)
+
+ END SUBROUTINE h5sget_simple_extent_type_f
+ !
+!****s* H5S/h5sset_extent_simple_f
+!
+! NAME
+! h5sset_extent_simple_f
+!
+! PURPOSE
+! Sets or resets the size of an existing dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! rank - dataspace number of dimensions
+! current_size - array with the new sizes of dimensions
+! maximum_size - array with the new maximum sizes of
+! dimensions
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sset_extent_simple_f(space_id, rank, current_size, &
+ maximum_size, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size
+ INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sset_extent_simple_c(space_id, rank, &
+ current_size, maximum_size) BIND(C,NAME='h5sset_extent_simple_c')
+ IMPORT :: HID_T, HSIZE_T
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size
+ INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size
+ END FUNCTION h5sset_extent_simple_c
+ END INTERFACE
+
+ hdferr = h5sset_extent_simple_c(space_id, rank, current_size, &
+ maximum_size)
+
+ END SUBROUTINE h5sset_extent_simple_f
+!
+!****s* H5S/h5sis_simple_f
+!
+! NAME
+! h5sis_simple_f
+!
+! PURPOSE
+! Determines whether a dataspace is a simple dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! status - flag to indicate if dataspace
+! is simple or not (TRUE or FALSE)
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sis_simple_f(space_id, status, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ LOGICAL, INTENT(OUT) :: status
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: flag ! "TRUE/FALSE/ERROR from C"
+
+ INTERFACE
+ INTEGER FUNCTION h5sis_simple_c(space_id, flag) BIND(C,NAME='h5sis_simple_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER :: flag
+ END FUNCTION h5sis_simple_c
+ END INTERFACE
+
+ hdferr = h5sis_simple_c(space_id, flag)
+ status = .TRUE.
+ IF (flag .EQ. 0) status = .FALSE.
+
+ END SUBROUTINE h5sis_simple_f
+
+!
+!****s* H5S/h5soffset_simple_f
+!
+! NAME
+! h5soffset_simple_f
+!
+! PURPOSE
+! Sets the offset of a simple dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! offset - the offset at which to position the
+! selection
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! NONE
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5soffset_simple_f(space_id, offset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) :: offset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5soffset_simple_c(space_id, offset) BIND(C,NAME='h5soffset_simple_c')
+ IMPORT :: HID_T, HSSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) :: offset
+ END FUNCTION h5soffset_simple_c
+ END INTERFACE
+
+ hdferr = h5soffset_simple_c(space_id, offset)
+
+ END SUBROUTINE h5soffset_simple_f
+
+!
+!****s* H5S/h5sextent_copy_f
+!
+! NAME
+! h5sextent_copy_f
+!
+! PURPOSE
+! Copies the extent of a dataspace.
+!
+! INPUTS
+! dest_space_id - the identifier for the dataspace to which
+! the extent is copied
+! source_space_id - the identifier for the dataspace from
+! which the extent is copied
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! NONE
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! NOTES
+!
+
+! SOURCE
+ SUBROUTINE h5sextent_copy_f(dest_space_id, source_space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dest_space_id
+ INTEGER(HID_T), INTENT(IN) :: source_space_id
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sextent_copy_c(dest_space_id, source_space_id) BIND(C,NAME='h5sextent_copy_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dest_space_id
+ INTEGER(HID_T), INTENT(IN) :: source_space_id
+ END FUNCTION h5sextent_copy_c
+ END INTERFACE
+
+ hdferr = h5sextent_copy_c(dest_space_id, source_space_id)
+
+ END SUBROUTINE h5sextent_copy_f
+
+!
+!****s* H5S/h5sset_extent_none_f
+!
+! NAME
+! h5sset_extent_none_f
+!
+! PURPOSE
+! Removes the extent from a dataspace.
+!
+! INPUTS
+! space_id - dataspace identifier
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sset_extent_none_f(space_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sset_extent_none_c(space_id) BIND(C,NAME='h5sset_extent_none_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ END FUNCTION h5sset_extent_none_c
+ END INTERFACE
+
+ hdferr = h5sset_extent_none_c(space_id)
+
+ END SUBROUTINE h5sset_extent_none_f
+!
+!****s* H5S/h5sselect_hyperslab_f
+!
+! NAME
+! h5sselect_hyperslab_f
+!
+! PURPOSE
+! Selects a hyperslab region to add to the current selected
+! region
+!
+! INPUTS
+! space_id - dataspace identifier
+! operator - flag, valid values are:
+! H5S_SELECT_SET_F
+! H5S_SELECT_OR_F
+! start - array with hyperslab offsets
+! count - number of blocks included in the hyperslab
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! stride - array with hyperslab strides
+! block - array with hyperslab block sizes
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 6, 2001
+!
+! SOURCE
+ SUBROUTINE h5sselect_hyperslab_f(space_id, OPERATOR, start, count, &
+ hdferr, stride, BLOCK)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: OPERATOR
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
+ INTEGER, INTENT(OUT) :: hdferr
+ INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride
+ INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: BLOCK
+!*****
+ INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block
+ INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride
+ INTEGER :: rank
+ INTEGER :: error1, error2
+
+ INTERFACE
+ INTEGER FUNCTION h5sselect_hyperslab_c(space_id, OPERATOR, &
+ start, count, stride, BLOCK) BIND(C,NAME='h5sselect_hyperslab_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(IN) :: OPERATOR
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: stride
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: BLOCK
+ END FUNCTION h5sselect_hyperslab_c
+ END INTERFACE
+
+ IF (PRESENT(stride).AND. PRESENT(BLOCK)) THEN
+ hdferr = h5sselect_hyperslab_c(space_id, OPERATOR, start, count, &
+ stride, BLOCK)
+ RETURN
+ ENDIF
+ ! Case of optional parameters.
+ !
+ ! Find the rank of the dataspace to allocate memery for
+ ! default stride and block arrays.
+ !
+ CALL h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
+ IF( hdferr .EQ. -1) RETURN
+ !
+ IF (PRESENT(stride).AND. .NOT.PRESENT(BLOCK)) THEN
+ ALLOCATE(def_block(rank), stat=error1)
+ IF (error1.NE.0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ def_block = 1
+ hdferr = h5sselect_hyperslab_c(space_id, OPERATOR, start, count, &
+ stride, def_block)
+ DEALLOCATE(def_block)
+ RETURN
+ ENDIF
+
+ IF (.NOT.PRESENT(stride).AND. PRESENT(BLOCK)) THEN
+ ALLOCATE(def_stride(rank), stat=error2)
+ IF (error2.NE.0) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ def_stride = 1
+ hdferr = h5sselect_hyperslab_c(space_id, OPERATOR, start, count, &
+ def_stride, BLOCK)
+ DEALLOCATE(def_stride)
+ RETURN
+ ENDIF
+ ALLOCATE(def_block(rank), stat=error1)
+ ALLOCATE(def_stride(rank), stat=error2)
+ IF ((error1.NE.0) .OR. (error2.NE.0)) THEN
+ hdferr = -1
+ RETURN
+ ENDIF
+ def_block = 1
+ def_stride = 1
+ hdferr = h5sselect_hyperslab_c(space_id, OPERATOR, start, count, &
+ def_stride, def_block)
+ DEALLOCATE(def_block)
+ DEALLOCATE(def_stride)
+
+ END SUBROUTINE h5sselect_hyperslab_f
+! !$!
+! !$!****s* H5S/h5scombine_hyperslab_f
+! !$!
+! !$! NAME
+! !$! h5scombine_hyperslab_f
+! !$!
+! !$! PURPOSE
+! !$! Combine a hyperslab selection with the current
+! !$! selection for a dataspace
+! !$!
+! !$! INPUTS
+! !$! space_id - dataspace of selection to use
+! !$! operator - flag, valid values are:
+! !$! H5S_SELECT_NOOP_F
+! !$! H5S_SELECT_SET_F
+! !$! H5S_SELECT_OR_F
+! !$! H5S_SELECT_AND_F
+! !$! H5S_SELECT_XOR_F
+! !$! H5S_SELECT_NOTB_F
+! !$! H5S_SELECT_NOTA_F
+! !$! H5S_SELECT_APPEND_F
+! !$! H5S_SELECT_PREPEND_F
+! !$! start - array with hyperslab offsets
+! !$! count - number of blocks included in the
+! !$! hyperslab
+! !$! OUTPUTS
+! !$! hyper_id - identifier for the new hyperslab
+! !$! hdferr: - error code
+! !$! Success: 0
+! !$! Failure: -1
+! !$! OPTIONAL PARAMETERS
+! !$! stride - array with hyperslab strides
+! !$! block - array with hyperslab block sizes
+! !$!
+! !$! AUTHOR
+! !$! Elena Pourmal
+! !$! October 7, 2002
+! !$!
+! !$! HISTORY
+! !$!
+! !$!
+! !$! NOTES
+! !$! Commented out until 1.6 ? 10/08/2002
+! !$!
+! !$! SOURCE
+! SUBROUTINE h5scombine_hyperslab_f(space_id, operator, start, count, &
+! hyper_id, hdferr, stride, block)
+! IMPLICIT NONE
+! INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
+! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
+ ! H5S_SELECT_NOOP_F
+ ! H5S_SELECT_SET_F
+ ! H5S_SELECT_OR_F
+ ! H5S_SELECT_AND_F
+ ! H5S_SELECT_XOR_F
+ ! H5S_SELECT_NOTB_F
+ ! H5S_SELECT_NOTA_F
+ ! H5S_SELECT_APPEND_F
+ ! H5S_SELECT_PREPEND_F
+ !
+! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
+ ! Starting coordinates of the hyperslab
+! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
+ ! Number of blocks to select
+ ! from dataspace
+! INTEGER(HID_T), INTENT(OUT) :: hyper_id ! New hyperslab identifier
+! INTEGER, INTENT(OUT) :: hdferr ! Error code
+! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride
+ ! Array of how many elements to move
+ ! in each direction
+! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block
+ ! Sizes of element block
+! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block
+! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride
+! INTEGER :: rank
+! INTEGER :: error1, error2
+
+! INTERFACE
+! INTEGER FUNCTION h5scombine_hyperslab_c(space_id, operator, &
+! start, count, stride, block, hyper_id)
+! USE H5GLOBAL
+! !DEC$IF DEFINED(HDF5F90_WINDOWS)
+! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOMBINE_HYPERSLAB_C'::h5scombine_hyperslab_c
+! !DEC$ENDIF
+! INTEGER(HID_T), INTENT(IN) :: space_id
+! INTEGER, INTENT(IN) :: operator
+! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
+! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
+! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: stride
+! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block
+! INTEGER(HID_T), INTENT(OUT) :: hyper_id
+! END FUNCTION h5scombine_hyperslab_c
+! END INTERFACE
+
+! if (present(stride).and. present(block)) then
+! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
+! stride, block, hyper_id)
+! return
+! endif
+ ! Case of optional parameters.
+ !
+ ! Find the rank of the dataspace to allocate memery for
+ ! default stride and block arrays.
+ !
+! CALL h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
+! if( hdferr .EQ. -1) return
+ !
+! if (present(stride).and. .not.present(block)) then
+! allocate(def_block(rank), stat=error1)
+! if (error1.NE.0) then
+! hdferr = -1
+! return
+! endif
+! def_block = 1
+! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
+! stride, def_block, hyper_id)
+! deallocate(def_block)
+! return
+! endif
+
+! if (.not.present(stride).and. present(block)) then
+! allocate(def_stride(rank), stat=error2)
+! if (error2.NE.0) then
+! hdferr = -1
+! return
+! endif
+! def_stride = 1
+! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
+! def_stride, block, hyper_id)
+! deallocate(def_stride)
+! return
+! endif
+! allocate(def_block(rank), stat=error1)
+! allocate(def_stride(rank), stat=error2)
+! if ((error1.NE.0) .OR. (error2.NE.0)) then
+! hdferr = -1
+! return
+! endif
+! def_block = 1
+! def_stride = 1
+! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
+! def_stride, def_block, hyper_id)
+! deallocate(def_block)
+! deallocate(def_stride)
+
+! END SUBROUTINE h5scombine_hyperslab_f
+
+! !$!
+! !$!****s* H5S/
+! !$!
+! !$! NAME
+! !$! h5scombine_select_f
+! !$!
+! !$! PURPOSE
+! !$! Combine two hyperslab selections with an operation
+! !$! and return a dataspace with resulting selection.
+! !$!
+! !$! INPUTS
+! !$! space1_id - dataspace of selection to use
+! !$! operator - flag, valid values are:
+! !$! H5S_SELECT_NOOP_F
+! !$! H5S_SELECT_SET_F
+! !$! H5S_SELECT_OR_F
+! !$! H5S_SELECT_AND_F
+! !$! H5S_SELECT_XOR_F
+! !$! H5S_SELECT_NOTB_F
+! !$! H5S_SELECT_NOTA_F
+! !$! H5S_SELECT_APPEND_F
+! !$! H5S_SELECT_PREPEND_F
+! !$! space2_id - dataspace of selection to use
+! !$! OUTPUTS
+! !$! ds_id - idataspace identifier with the new selection
+! !$! hdferr: - error code
+! !$! Success: 0
+! !$! Failure: -1
+! !$! OPTIONAL PARAMETERS - NONE
+! !$!
+! !$! AUTHOR
+! !$! Elena Pourmal
+! !$! October 7, 2002
+! !$!
+! !$! HISTORY
+! !$!
+! !$!
+! !$! NOTES commented out until 1.6 release(?) 10/08/2002
+! !$!
+
+! ! SOURCE
+! !$ SUBROUTINE h5scombine_select_f(space1_id, operator, space2_id, &
+! ds_id, hdferr)
+! IMPLICIT NONE
+! INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier
+! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier
+! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
+ ! H5S_SELECT_NOOP_F
+ ! H5S_SELECT_SET_F
+ ! H5S_SELECT_OR_F
+ ! H5S_SELECT_AND_F
+ ! H5S_SELECT_XOR_F
+ ! H5S_SELECT_NOTB_F
+ ! H5S_SELECT_NOTA_F
+ ! H5S_SELECT_APPEND_F
+ ! H5S_SELECT_PREPEND_F
+ !
+! INTEGER(HID_T), INTENT(OUT) :: ds_id ! New dataspace identifier
+! INTEGER, INTENT(OUT) :: hdferr ! Error code
+!
+! INTERFACE
+! INTEGER FUNCTION h5scombine_select_c(space1_id, operator, &
+! space2_id, ds_id)
+! USE H5GLOBAL
+! !DEC$IF DEFINED(HDF5F90_WINDOWS)
+! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOMBINE_SELECT_C'::h5scombine_select_c
+! !DEC$ENDIF
+! INTEGER(HID_T), INTENT(IN) :: space1_id
+! INTEGER(HID_T), INTENT(IN) :: space2_id
+! INTEGER, INTENT(IN) :: operator
+! INTEGER(HID_T), INTENT(OUT) :: ds_id
+! END FUNCTION h5scombine_select_c
+! END INTERFACE
+
+! hdferr = h5scombine_select_c(space1_id, operator, space2_id, &
+! ds_id)
+! return
+
+! END SUBROUTINE h5scombine_select_f
+
+! !$!
+! !$!****s* H5S/
+! !$!
+! !$! NAME
+! !$! h5sselect_select_f
+! !$!
+! !$! PURPOSE
+! !$! Refine a hyperslab selection with an operation
+! !$! using second hyperslab
+! !$!
+! !$! INPUTS
+! !$! space1_id - dataspace of selection to modify
+! !$! operator - flag, valid values are:
+! !$! H5S_SELECT_NOOP_F
+! !$! H5S_SELECT_SET_F
+! !$! H5S_SELECT_OR_F
+! !$! H5S_SELECT_AND_F
+! !$! H5S_SELECT_XOR_F
+! !$! H5S_SELECT_NOTB_F
+! !$! H5S_SELECT_NOTA_F
+! !$! H5S_SELECT_APPEND_F
+! !$! H5S_SELECT_PREPEND_F
+! !$! space2_id - dataspace of selection to use
+! !$!
+! !$! OUTPUTS
+! !$! hdferr: - error code
+! !$! Success: 0
+! !$! Failure: -1
+! !$! OPTIONAL PARAMETERS - NONE
+! !$!
+! !$! AUTHOR
+! !$! Elena Pourmal
+! !$! October 7, 2002
+! !$!
+! !$! HISTORY
+! !$!
+! !$!
+! !$! NOTESCommented out until 1.6 release(?) 10/08/2002 EIP
+! !$!
+
+! ! SOURCE
+! SUBROUTINE h5sselect_select_f(space1_id, operator, space2_id, &
+! hdferr)
+! IMPLICIT NONE
+! INTEGER(HID_T), INTENT(INOUT) :: space1_id ! Dataspace identifier to
+ ! modify
+! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier
+! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
+ ! H5S_SELECT_NOOP_F
+ ! H5S_SELECT_SET_F
+ ! H5S_SELECT_OR_F
+ ! H5S_SELECT_AND_F
+ ! H5S_SELECT_XOR_F
+ ! H5S_SELECT_NOTB_F
+ ! H5S_SELECT_NOTA_F
+ ! H5S_SELECT_APPEND_F
+ ! H5S_SELECT_PREPEND_F
+ !
+! INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+! INTERFACE
+! INTEGER FUNCTION h5sselect_select_c(space1_id, operator, &
+! space2_id)
+! USE H5GLOBAL
+! !DEC$IF DEFINED(HDF5F90_WINDOWS)
+! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_SELECT_C'::h5sselect_select_c
+! !DEC$ENDIF
+! INTEGER(HID_T), INTENT(INOUT) :: space1_id
+! INTEGER(HID_T), INTENT(IN) :: space2_id
+! INTEGER, INTENT(IN) :: operator
+! END FUNCTION h5sselect_select_c
+! END INTERFACE
+
+! hdferr = h5sselect_select_c(space1_id, operator, space2_id)
+! return
+
+! END SUBROUTINE h5sselect_select_f
+
+!
+!****s* H5S/h5sget_select_type_f
+!
+! NAME
+! h5sget_select_type_f
+!
+! PURPOSE
+! Retrieve the type of selection
+!
+! INPUTS
+! space_id - dataspace identifier with selection
+! OUTPUTS
+! type - selection type flag, valid values are:
+! H5S_SEL_ERROR_F
+! H5S_SEL_NONE_F
+! H5S_SEL_POINTS_F
+! H5S_SEL_HYPERSLABS_F
+! H5S_SEL_ALL_F
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! October 7, 2002
+!
+! SOURCE
+ SUBROUTINE h5sget_select_type_f(space_id, TYPE, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(INOUT) :: space_id
+ INTEGER, INTENT(OUT) :: TYPE
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sget_select_type_c(space_id, TYPE) BIND(C,NAME='h5sget_select_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space_id
+ INTEGER, INTENT(OUT) :: TYPE
+ END FUNCTION h5sget_select_type_c
+ END INTERFACE
+
+ hdferr = h5sget_select_type_c(space_id, TYPE)
+ RETURN
+
+ END SUBROUTINE h5sget_select_type_f
+
+!
+!****s* H5S/H5Sdecode_f
+!
+! NAME
+! H5Sdecode_f
+!
+! PURPOSE
+! Decode a binary object description of data space and return a new object handle.
+!
+! INPUTS
+! buf - Buffer for the data space object to be decoded.
+! obj_id - Object ID
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! March 26, 2008
+! SOURCE
+ SUBROUTINE h5sdecode_f(buf, obj_id, hdferr)
+ IMPLICIT NONE
+ CHARACTER(LEN=*), INTENT(IN) :: buf
+ INTEGER(HID_T), INTENT(OUT) :: obj_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5sdecode_c(buf, obj_id) BIND(C,NAME='h5sdecode_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: buf
+ INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
+ END FUNCTION h5sdecode_c
+ END INTERFACE
+
+ hdferr = h5sdecode_c(buf, obj_id)
+
+ END SUBROUTINE h5sdecode_f
+
+!
+!****s* H5S/H5Sencode_f
+!
+! NAME
+! H5Sencode_f
+!
+! PURPOSE
+! Encode a data space object description into a binary buffer.
+!
+! INPUTS
+! obj_id - Identifier of the object to be encoded.
+! buf - Buffer for the object to be encoded into.
+! nalloc - The size of the allocated buffer.
+! OUTPUTS
+! nalloc - The size of the buffer needed.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! March 26, 2008
+! SOURCE
+ SUBROUTINE h5sencode_f(obj_id, buf, nalloc, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: obj_id
+ CHARACTER(LEN=*), INTENT(OUT) :: buf
+ INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5sencode_c(buf, obj_id, nalloc) BIND(C,NAME='h5sencode_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ INTEGER(HID_T), INTENT(IN) :: obj_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buf
+ INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
+ END FUNCTION h5sencode_c
+ END INTERFACE
+
+ hdferr = h5sencode_c(buf, obj_id, nalloc)
+
+ END SUBROUTINE h5sencode_f
+
+!****s* H5S/h5sextent_equal_f
+!
+! NAME
+! h5sextent_equal_f
+!
+! PURPOSE
+! Determines whether two dataspace extents are equal.
+!
+! INPUTS
+! space1_id - First dataspace identifier.
+! space2_id - Second dataspace identifier.
+! OUTPUTS
+! Equal - .TRUE. if equal, .FALSE. if unequal.
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! M. Scot Breitenfeld
+! April 2, 2008
+!
+! SOURCE
+ SUBROUTINE h5sextent_equal_f(space1_id, space2_id, equal, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space1_id
+ INTEGER(HID_T), INTENT(IN) :: space2_id
+ LOGICAL, INTENT(OUT) :: Equal
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER(HID_T) :: c_equal
+
+ INTERFACE
+ INTEGER FUNCTION h5sextent_equal_c(space1_id, space2_id, c_equal) BIND(C,NAME='h5sextent_equal_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: space1_id
+ INTEGER(HID_T), INTENT(IN) :: space2_id
+ INTEGER(HID_T) :: c_equal
+ END FUNCTION h5sextent_equal_c
+ END INTERFACE
+
+ hdferr = h5sextent_equal_c(space1_id, space2_id, c_equal)
+ equal = .FALSE.
+ IF(c_equal.GT.0) equal = .TRUE.
+
+ END SUBROUTINE h5sextent_equal_f
+
+END MODULE H5S
diff --git a/fortran/src/H5Sff.f90 b/fortran/src/H5Sff.f90
deleted file mode 100644
index c493d46..0000000
--- a/fortran/src/H5Sff.f90
+++ /dev/null
@@ -1,1875 +0,0 @@
-!****h* ROBODoc/H5S
-!
-! NAME
-! MODULE H5S
-!
-! FILE
-! fortran/src/H5Sff.f90
-!
-! PURPOSE
-! This file contains Fortran interfaces for H5S functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5S function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5S
- USE H5GLOBAL
-
-CONTAINS
-
-!
-!****s* H5S/h5screate_simple_f
-!
-! NAME
-! h5screate_simple_f
-!
-! PURPOSE
-! Creates a new simple data space and opens it for access .
-!
-! INPUTS
-! rank - number of dimensions
-! dims - an array of the size of each dimension
-! OUTPUTS
-! space_id - dataspace identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! maxdims - an array of the maximum size of each dimension
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-! SOURCE
- SUBROUTINE h5screate_simple_f(rank, dims, space_id, hdferr, maxdims)
-
- IMPLICIT NONE
- INTEGER, INTENT(IN) :: rank ! Number of dataspace dimensions
- INTEGER(HSIZE_T), INTENT(IN) :: dims(rank)
- ! Array with the dimension
- ! sizes
- INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HSIZE_T), OPTIONAL, INTENT(IN) :: maxdims(rank)
- ! Array with the maximum
- ! dimension sizes
-!*****
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: f_maxdims
-
- INTERFACE
- INTEGER FUNCTION h5screate_simple_c(rank, dims, maxdims, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCREATE_SIMPLE_C'::h5screate_simple_c
- !DEC$ENDIF
- INTEGER, INTENT(IN) :: rank
- INTEGER(HSIZE_T), INTENT(IN) :: dims(rank)
- INTEGER(HSIZE_T), DIMENSION(:),INTENT(IN) :: maxdims(rank)
- INTEGER(HID_T), INTENT(OUT) :: space_id
- END FUNCTION h5screate_simple_c
- END INTERFACE
-
- allocate (f_maxdims(rank), stat=hdferr)
- if (hdferr .NE. 0) then
- hdferr = -1
- return
- endif
- if (present(maxdims)) then
- f_maxdims = maxdims
- else
- f_maxdims = dims
- endif
- hdferr = h5screate_simple_c(rank, dims, f_maxdims, space_id)
- deallocate(f_maxdims)
-
- END SUBROUTINE h5screate_simple_f
-
-!
-!****s* H5S/h5sclose_f
-!
-! NAME
-! h5sclose_f
-!
-! PURPOSE
-! Releases and terminates access to a dataspace.
-!
-! INPUTS
-! space_id - identifier of dataspace to release
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sclose_f(space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sclose_c(space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCLOSE_C'::h5sclose_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- END FUNCTION h5sclose_c
- END INTERFACE
-
- hdferr = h5sclose_c(space_id)
-
- END SUBROUTINE h5sclose_f
-
-!
-!****s* H5S/h5screate_f
-!
-! NAME
-! h5screate_f
-!
-! PURPOSE
-! Creates a new dataspace of a specified type.
-!
-! INPUTS
-! classtype - the type of the dataspace to be created
-! OUTPUTS
-! space_id - dataspace identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! NOTES
-!
-
-! SOURCE
- SUBROUTINE h5screate_f(classtype, space_id, hdferr)
- IMPLICIT NONE
- INTEGER, INTENT(IN) :: classtype ! The type of the dataspace
- ! to be created.
- ! Possible values are:
- ! H5S_SCALAR_F (0)
- ! H5S_SIMPLE_F(1)
- ! H5S_NULL_F(2)
- INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5screate_c(classtype, space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCREATE_C'::h5screate_c
- !DEC$ENDIF
- INTEGER, INTENT(IN) :: classtype
- INTEGER(HID_T), INTENT(OUT) :: space_id
- END FUNCTION h5screate_c
- END INTERFACE
-
- hdferr = h5screate_c(classtype, space_id)
-
- END SUBROUTINE h5screate_f
-
-!
-!****s* H5S/h5scopy_f
-!
-! NAME
-! h5scopy_f
-!
-! PURPOSE
-! Creates an exact copy of a dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! new_space_id - identifier of dataspace's copy
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! NOTES
-!
-
-! SOURCE
- SUBROUTINE h5scopy_f(space_id, new_space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HID_T), INTENT(OUT) :: new_space_id
- ! Identifier of dataspace's copy
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5scopy_c(space_id, new_space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOPY_C'::h5scopy_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HID_T), INTENT(OUT):: new_space_id
- END FUNCTION h5scopy_c
- END INTERFACE
-
- hdferr = h5scopy_c(space_id, new_space_id)
-
- END SUBROUTINE h5scopy_f
-
-!
-!****s* H5S/h5sget_select_hyper_nblocks_f
-!
-! NAME
-! h5sget_select_hyper_nblocks_f
-!
-! PURPOSE
-! Get number of hyperslab blocks.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! num_blocks - number of hyperslab blocks in the current
-! hyperslab selection
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_select_hyper_nblocks_f(space_id, num_blocks, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks
- !number of hyperslab blocks
- !in the current dataspace
- !selection
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_hyper_nblocks_c (space_id, num_blocks)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! DEC$ ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_HYPER_NBLOCKS_C'::h5sget_select_hyper_nblocks_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks
- END FUNCTION h5sget_select_hyper_nblocks_c
- END INTERFACE
-
- hdferr = h5sget_select_hyper_nblocks_c (space_id, num_blocks)
-
- END SUBROUTINE h5sget_select_hyper_nblocks_f
-
-!
-!****s* H5S/h5sget_select_hyper_blocklist_f
-!
-! NAME
-! h5sget_select_hyper_blocklist_f
-!
-! PURPOSE
-! Gets the list of hyperslab blocks currently selected.
-!
-! INPUTS
-! space_id - dataspace identifier
-! startblock - hyperslab block to start with
-! num_blocks - number of blocks to get
-! OUTPUTS
-! buf - buffer to hold block list
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-! SOURCE
- SUBROUTINE h5sget_select_hyper_blocklist_f(space_id, startblock, &
- num_blocks, buf, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSIZE_T), INTENT(IN) :: startblock
- !Hyperslab block to start with.
- INTEGER(HSIZE_T), INTENT(IN) :: num_blocks
- !number of hyperslab blocks
- !to get in the current dataspace
- !selection
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
- !List of hyperslab blocks selected
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5sget_select_hyper_blocklist_c(space_id, startblock, &
- num_blocks, buf )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_HYPER_BLOCKLIST_C'::h5sget_select_hyper_blocklist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSIZE_T), INTENT(IN) :: startblock
- INTEGER(HSIZE_T), INTENT(IN) :: num_blocks
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
- END FUNCTION h5sget_select_hyper_blocklist_c
- END INTERFACE
-
-
- hdferr = h5sget_select_hyper_blocklist_c(space_id, startblock, &
- num_blocks, buf )
-
- END SUBROUTINE h5sget_select_hyper_blocklist_f
-
-!
-!****s* H5S/h5sget_select_bounds_f
-!
-! NAME
-! h5sget_select_bounds_f
-!
-! PURPOSE
-! Gets the bounding box containing the current selection.
-!
-! INPUTS
-! space_id - dataspace identifier
-!
-! OUTPUTS
-! start - starting coordinates of bounding box
-! end - ending coordinates of bounding box
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-! SOURCE
- SUBROUTINE h5sget_select_bounds_f(space_id, start, END, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start
- ! Starting coordinates of the bounding box.
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END
- !Ending coordinates of the bounding box,
- !i.e., the coordinates of the diagonally
- !opposite corner
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_bounds_c(space_id, start, END)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_BOUNDS_C'::h5sget_select_bounds_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END
- END FUNCTION h5sget_select_bounds_c
- END INTERFACE
-
- hdferr = h5sget_select_bounds_c(space_id, start, END)
-
- END SUBROUTINE h5sget_select_bounds_f
-
-!
-!****s* H5S/h5sget_select_elem_npoints_f
-!
-! NAME
-! h5sget_select_elem_npoints_f
-!
-! PURPOSE
-! Gets the number of element points in the current selection
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! num_points - number of element points in the current
-! dataspace selection
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_select_elem_npoints_f(space_id, num_points, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSSIZE_T), INTENT(OUT) :: num_points
- !number of element points
- !in the current dataspace
- !selection
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_elem_npoints_c (space_id, num_points)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! DEC$ ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_ELEM_NPOINTS_C'::h5sget_select_elem_npoints_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSSIZE_T), INTENT(OUT) :: num_points
- END FUNCTION h5sget_select_elem_npoints_c
- END INTERFACE
-
- hdferr = h5sget_select_elem_npoints_c (space_id, num_points)
-
- END SUBROUTINE h5sget_select_elem_npoints_f
-
-!
-!****s* H5S/h5sget_select_elem_pointlist_f
-!
-! NAME
-! h5sget_select_elem_pointlist_f
-!
-! PURPOSE
-! Gets the list of element points currently selected.
-!
-! INPUTS
-! space_id - dataspace identifier
-! startpoint - element point to start with
-! num_points - number of elemnt points to get
-! OUTPUTS
-! buf - buffer with element points selected
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_select_elem_pointlist_f(space_id, startpoint, &
- num_points, buf, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSIZE_T), INTENT(IN) :: startpoint
- !Element point to start with.
- INTEGER(HSIZE_T), INTENT(IN) :: num_points
- !Number of element points to get
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
- !List of element points selected
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_elem_pointlist_c(space_id, startpoint, &
- num_points, buf )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! DEC$ ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_ELEM_POINTLIST_C'::h5sget_select_elem_pointlist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSIZE_T), INTENT(IN) :: startpoint
- INTEGER(HSIZE_T), INTENT(IN) :: num_points
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
- END FUNCTION h5sget_select_elem_pointlist_c
- END INTERFACE
-
- hdferr = h5sget_select_elem_pointlist_c(space_id, startpoint, &
- num_points, buf )
-
- END SUBROUTINE h5sget_select_elem_pointlist_f
-
-!
-!****s* H5S/h5sselect_elements_f
-!
-! NAME
-! h5sselect_elements_f
-!
-! PURPOSE
-! Selects elements to be included in the selection for
-! a dataspace
-!
-! INPUTS
-! space_id - dataspace identifier
-! operator - flag, valid values are:
-! H5S_SELECT_SET_F
-! H5S_SELECT_APPEND_F
-! H5S_SELECT_PREPEND_F
-! rank - number of dataspace dimensions
-! num_elements - number of elements to be selected
-! coord - 2D (rank x num_elements) array with the
-! elements coordinates ( 1-based); in C the
-! array is stored in 2D as (num_element x rank)
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-! SOURCE
- SUBROUTINE h5sselect_elements_f(space_id, OPERATOR, rank, &
- num_elements, coord, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(IN) :: OPERATOR
- INTEGER, INTENT(IN) :: rank
- INTEGER(SIZE_T), INTENT(IN) :: num_elements
- INTEGER(HSIZE_T), INTENT(IN) , DIMENSION(rank,num_elements) :: coord
- INTEGER, INTENT(OUT) :: hdferr
-!*****
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:,:) :: c_coord
- INTEGER :: error, i
-
- INTERFACE
- INTEGER FUNCTION h5sselect_elements_c(space_id, OPERATOR,&
- num_elements,c_c_coord)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_ELEMENTS_C'::h5sselect_elements_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(IN) :: OPERATOR
- INTEGER(SIZE_T), INTENT(IN) :: num_elements
- INTEGER(HSIZE_T),DIMENSION(*) :: c_c_coord
- END FUNCTION h5sselect_elements_c
- END INTERFACE
-
- ALLOCATE(c_coord(rank,num_elements), STAT = error)
- IF (error.NE. 0) THEN
- hdferr = -1
- RETURN
- ENDIF
- DO i = 1, rank
- c_coord(i,:) = coord(rank-i+1, :) - 1
- ENDDO
- hdferr = h5sselect_elements_c(space_id, OPERATOR, num_elements, c_coord)
-
-! ALLOCATE(c_coord(num_elements,rank), stat = error)
-! IF (error.NE. 0) THEN
-! hdferr = -1
-! RETURN
-! ENDIF
-!
-! c_coord = TRANSPOSE(coord)
-! hdferr = h5sselect_elements_c(space_id, OPERATOR, INT(rank,size_t), c_coord)
-
-
- DEALLOCATE(c_coord)
-
- END SUBROUTINE h5sselect_elements_f
-
-!
-!****s* H5S/h5sselect_all_f
-!
-! NAME
-! h5sselect_all_f
-!
-! PURPOSE
-! Selects the entire dataspace.
-!
-! INPUTS
-! space_id - Identifier for the dataspace in which
-! selection being made
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sselect_all_f(space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sselect_all_c(space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_ALL_C'::h5sselect_all_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- END FUNCTION h5sselect_all_c
- END INTERFACE
-
- hdferr = h5sselect_all_c(space_id)
-
- END SUBROUTINE h5sselect_all_f
-
-!
-!****s* H5S/h5sselect_none_f
-!
-! NAME
-! h5sselect_none_f
-!
-! PURPOSE
-! Resets the selection region to include no elements.
-!
-! INPUTS
-! space_id - the identifier for the dataspace in which
-! the selection is being reset.
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sselect_none_f(space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sselect_none_c(space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_NONE_C'::h5sselect_none_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- END FUNCTION h5sselect_none_c
- END INTERFACE
-
- hdferr = h5sselect_none_c(space_id)
-
- END SUBROUTINE h5sselect_none_f
-
-!
-!****s* H5S/h5sselect_valid_f
-!
-! NAME
-! h5sselect_valid_f
-!
-! PURPOSE
-! Verifies that the selection is within the extent of
-! the dataspace.
-!
-! INPUTS
-! space_id - identifier for the dataspace for which
-! selection is verified
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sselect_valid_f(space_id, status, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- LOGICAL, INTENT(OUT) :: status ! TRUE if the selection is
- ! contained within the extent,
- ! FALSE otherwise.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: flag ! "TRUE/FALSE/ERROR" flag from C routine
-
- INTERFACE
- INTEGER FUNCTION h5sselect_valid_c(space_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_VALID_C'::h5sselect_valid_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER :: flag
- END FUNCTION h5sselect_valid_c
- END INTERFACE
-
- hdferr = h5sselect_valid_c(space_id, flag)
- status = .TRUE.
- if (flag .EQ. 0) status = .FALSE.
-
- END SUBROUTINE h5sselect_valid_f
-
-!
-!****s* H5S/h5sget_simple_extent_npoints_f
-!
-! NAME
-! h5sget_simple_extent_npoints_f
-!
-! PURPOSE
-! Determines the number of elements in a dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! npoints - number of elements in the dataspace
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_simple_extent_npoints_f(space_id, npoints, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSIZE_T), INTENT(OUT) :: npoints ! Number of elements in
- ! dataspace
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_simple_extent_npoints_c( space_id, npoints)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_NPOINTS_C'::h5sget_simple_extent_npoints_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSIZE_T), INTENT(OUT) :: npoints
- END FUNCTION h5sget_simple_extent_npoints_c
- END INTERFACE
-
- hdferr = h5sget_simple_extent_npoints_c( space_id, npoints)
-
- END SUBROUTINE h5sget_simple_extent_npoints_f
-
-!
-!****s* H5S/h5sget_select_npoints_f
-!
-! NAME
-! h5sget_select_npoints_f
-!
-! PURPOSE
-! Determines the number of elements in a dataspace selection.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! npoints - number of points in the dataspace selection
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-! SOURCE
- SUBROUTINE h5sget_select_npoints_f(space_id, npoints, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSSIZE_T), INTENT(OUT) :: npoints ! Number of elements in the
- ! selection
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_npoints_c(space_id, npoints)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_NPOINTS_C'::h5sget_select_npoints_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSSIZE_T), INTENT(OUT) :: npoints
- END FUNCTION h5sget_select_npoints_c
- END INTERFACE
-
- hdferr = h5sget_select_npoints_c(space_id, npoints)
-
- END SUBROUTINE h5sget_select_npoints_f
-
-!
-!****s* H5S/h5sget_simple_extent_ndims_f
-!
-! NAME
-! h5sget_simple_extent_ndims_f
-!
-! PURPOSE
-! Determines the dimensionality of a dataspace
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! rank - number of dataspace dimensions
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: rank ! Number of dimensions
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_simple_extent_ndims_c(space_id, rank)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_NDIMS_C'::h5sget_simple_extent_ndims_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(OUT) :: rank
- END FUNCTION h5sget_simple_extent_ndims_c
- END INTERFACE
-
- hdferr = h5sget_simple_extent_ndims_c(space_id, rank)
-
- END SUBROUTINE h5sget_simple_extent_ndims_f
-!
-!****s* H5S/h5sget_simple_extent_dims_f
-!
-! NAME
-! h5sget_simple_extent_dims_f
-!
-! PURPOSE
-! Retrieves dataspace dimension size and maximum size.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! dims - array to store size of each dimension
-! maxdims - array to store maximum size of each
-! dimension
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_simple_extent_dims_f(space_id, dims, maxdims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
- ! Array to store dimension sizes
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims
- ! Array to store max dimension
- ! sizes
- INTEGER, INTENT(OUT) :: hdferr ! Error code: -1 on failure,
- ! number of dimensions on
- ! on success
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_simple_extent_dims_c(space_id, dims, maxdims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_DIMS_C'::h5sget_simple_extent_dims_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims
- END FUNCTION h5sget_simple_extent_dims_c
- END INTERFACE
-
- hdferr = h5sget_simple_extent_dims_c(space_id, dims, maxdims)
-
- END SUBROUTINE h5sget_simple_extent_dims_f
-
-!
-!****s* H5S/h5sget_simple_extent_type_f
-!
-! NAME
-! h5sget_simple_extent_type_f
-!
-! PURPOSE
-! Determine the current class of a dataspace
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! classtype - class type, possible values are:
-! H5S_NO_CLASS_F (-1)
-! H5S_SCALAR_F (0)
-! H5S_SIMPLE_F (1)
-! H5S_NULL_F (2)
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sget_simple_extent_type_f(space_id, classtype, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: classtype ! Class type , possible values
- ! are:
- ! H5S_NO_CLASS_F (-1)
- ! H5S_SCALAR_F (0)
- ! H5S_SIMPLE_F (1)
- ! H5S_NULL_F (2)
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_simple_extent_type_c(space_id, classtype)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SIMPLE_EXTENT_TYPE_C'::h5sget_simple_extent_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(OUT) :: classtype
- END FUNCTION h5sget_simple_extent_type_c
- END INTERFACE
-
- hdferr = h5sget_simple_extent_type_c(space_id, classtype)
-
- END SUBROUTINE h5sget_simple_extent_type_f
-!
-!****s* H5S/h5sset_extent_simple_f
-!
-! NAME
-! h5sset_extent_simple_f
-!
-! PURPOSE
-! Sets or resets the size of an existing dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! rank - dataspace number of dimensions
-! current_size - array with the new sizes of dimensions
-! maximum_size - array with the new maximum sizes of
-! dimensions
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sset_extent_simple_f(space_id, rank, current_size, &
- maximum_size, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(IN) :: rank ! Dataspace rank
- INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size
- ! Array with the new sizes
- ! of dimensions
- INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size
- ! Array with the new maximum
- ! sizes of dimensions
- ! sizes
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sset_extent_simple_c(space_id, rank, &
- current_size, maximum_size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSET_EXTENT_SIMPLE_C'::h5sset_extent_simple_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(IN) :: rank
- INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size
- INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size
- END FUNCTION h5sset_extent_simple_c
- END INTERFACE
-
- hdferr = h5sset_extent_simple_c(space_id, rank, current_size, &
- maximum_size)
-
- END SUBROUTINE h5sset_extent_simple_f
-!
-!****s* H5S/h5sis_simple_f
-!
-! NAME
-! h5sis_simple_f
-!
-! PURPOSE
-! Determines whether a dataspace is a simple dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! status - flag to indicate if dataspace
-! is simple or not
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sis_simple_f(space_id, status, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- LOGICAL, INTENT(OUT) :: status ! Flag, idicates if dataspace
- ! is simple or not ( TRUE or
- ! FALSE)
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: flag ! "TRUE/FALSE/ERROR from C"
-
- INTERFACE
- INTEGER FUNCTION h5sis_simple_c(space_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SIS_SIMPLE_C'::h5sis_simple_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER :: flag
- END FUNCTION h5sis_simple_c
- END INTERFACE
-
- hdferr = h5sis_simple_c(space_id, flag)
- status = .TRUE.
- if (flag .EQ. 0) status = .FALSE.
-
- END SUBROUTINE h5sis_simple_f
-
-!
-!****s* H5S/h5soffset_simple_f
-!
-! NAME
-! h5soffset_simple_f
-!
-! PURPOSE
-! Sets the offset of a simple dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! offset - the offset at which to position the
-! selection
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5soffset_simple_f(space_id, offset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) :: offset
- ! The offset at which to position
- ! the selection
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5soffset_simple_c(space_id, offset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SOFFSET_SIMPLE_C'::h5soffset_simple_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) :: offset
- END FUNCTION h5soffset_simple_c
- END INTERFACE
-
- hdferr = h5soffset_simple_c(space_id, offset)
-
- END SUBROUTINE h5soffset_simple_f
-
-!
-!****s* H5S/h5sextent_copy_f
-!
-! NAME
-! h5sextent_copy_f
-!
-! PURPOSE
-! Copies the extent of a dataspace.
-!
-! INPUTS
-! dest_space_id - the identifier for the dataspace to which
-! the extent is copied
-! source_space_id - the identifier for the dataspace from
-! which the extent is copied
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! NONE
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! NOTES
-!
-
-! SOURCE
- SUBROUTINE h5sextent_copy_f(dest_space_id, source_space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dest_space_id ! Identifier of destination
- ! dataspace
- INTEGER(HID_T), INTENT(IN) :: source_space_id ! Identifier of source
- ! dataspace
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sextent_copy_c(dest_space_id, source_space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SEXTENT_COPY_C'::h5sextent_copy_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dest_space_id
- INTEGER(HID_T), INTENT(IN) :: source_space_id
- END FUNCTION h5sextent_copy_c
- END INTERFACE
-
- hdferr = h5sextent_copy_c(dest_space_id, source_space_id)
-
- END SUBROUTINE h5sextent_copy_f
-
-!
-!****s* H5S/h5sset_extent_none_f
-!
-! NAME
-! h5sset_extent_none_f
-!
-! PURPOSE
-! Removes the extent from a dataspace.
-!
-! INPUTS
-! space_id - dataspace identifier
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sset_extent_none_f(space_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sset_extent_none_c(space_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSET_EXTENT_NONE_C'::h5sset_extent_none_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- END FUNCTION h5sset_extent_none_c
- END INTERFACE
-
- hdferr = h5sset_extent_none_c(space_id)
-
- END SUBROUTINE h5sset_extent_none_f
-
-!
-!****s* H5S/h5sselect_hyperslab_f
-!
-! NAME
-! h5sselect_hyperslab_f
-!
-! PURPOSE
-! Selects a hyperslab region to add to the current selected
-! region
-!
-! INPUTS
-! space_id - dataspace identifier
-! operator - flag, valid values are:
-! H5S_SELECT_SET_F (0)
-! H5S_SELECT_OR_F (1)
-! start - array with hyperslab offsets
-! count - number of blocks included in the
-! hyperslab
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! stride - array with hyperslab strides
-! block - array with hyperslab block sizes
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 6, 2001
-!
-! SOURCE
- SUBROUTINE h5sselect_hyperslab_f(space_id, operator, start, count, &
- hdferr, stride, block)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
- INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
- ! H5S_SELECT_SET_F (0)
- ! H5S_SELECT_OR_F (1)
- !
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
- ! Starting coordinates of the hyperslab
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
- ! Number of blocks to select
- ! from dataspace
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride
- ! Array of how many elements to move
- ! in each direction
- INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block
- ! Sizes of element block
-!*****
- INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block
- INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride
- INTEGER :: rank
- INTEGER :: error1, error2
-
- INTERFACE
- INTEGER FUNCTION h5sselect_hyperslab_c(space_id, operator, &
- start, count, stride, block)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_HYPERSLAB_C'::h5sselect_hyperslab_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(IN) :: operator
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: stride
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: block
- END FUNCTION h5sselect_hyperslab_c
- END INTERFACE
-
- if (present(stride).and. present(block)) then
- hdferr = h5sselect_hyperslab_c(space_id, operator, start, count, &
- stride, block)
- return
- endif
- ! Case of optional parameters.
- !
- ! Find the rank of the dataspace to allocate memery for
- ! default stride and block arrays.
- !
- CALL h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
- if( hdferr .EQ. -1) return
- !
- if (present(stride).and. .not.present(block)) then
- allocate(def_block(rank), stat=error1)
- if (error1.NE.0) then
- hdferr = -1
- return
- endif
- def_block = 1
- hdferr = h5sselect_hyperslab_c(space_id, operator, start, count, &
- stride, def_block)
- deallocate(def_block)
- return
- endif
-
- if (.not.present(stride).and. present(block)) then
- allocate(def_stride(rank), stat=error2)
- if (error2.NE.0) then
- hdferr = -1
- return
- endif
- def_stride = 1
- hdferr = h5sselect_hyperslab_c(space_id, operator, start, count, &
- def_stride, block)
- deallocate(def_stride)
- return
- endif
- allocate(def_block(rank), stat=error1)
- allocate(def_stride(rank), stat=error2)
- if ((error1.NE.0) .OR. (error2.NE.0)) then
- hdferr = -1
- return
- endif
- def_block = 1
- def_stride = 1
- hdferr = h5sselect_hyperslab_c(space_id, operator, start, count, &
- def_stride, def_block)
- deallocate(def_block)
- deallocate(def_stride)
-
- END SUBROUTINE h5sselect_hyperslab_f
-! !$!
-! !$!****s* H5S/h5scombine_hyperslab_f
-! !$!
-! !$! NAME
-! !$! h5scombine_hyperslab_f
-! !$!
-! !$! PURPOSE
-! !$! Combine a hyperslab selection with the current
-! !$! selection for a dataspace
-! !$!
-! !$! INPUTS
-! !$! space_id - dataspace of selection to use
-! !$! operator - flag, valid values are:
-! !$! H5S_SELECT_NOOP_F
-! !$! H5S_SELECT_SET_F
-! !$! H5S_SELECT_OR_F
-! !$! H5S_SELECT_AND_F
-! !$! H5S_SELECT_XOR_F
-! !$! H5S_SELECT_NOTB_F
-! !$! H5S_SELECT_NOTA_F
-! !$! H5S_SELECT_APPEND_F
-! !$! H5S_SELECT_PREPEND_F
-! !$! start - array with hyperslab offsets
-! !$! count - number of blocks included in the
-! !$! hyperslab
-! !$! OUTPUTS
-! !$! hyper_id - identifier for the new hyperslab
-! !$! hdferr: - error code
-! !$! Success: 0
-! !$! Failure: -1
-! !$! OPTIONAL PARAMETERS
-! !$! stride - array with hyperslab strides
-! !$! block - array with hyperslab block sizes
-! !$!
-! !$! AUTHOR
-! !$! Elena Pourmal
-! !$! October 7, 2002
-! !$!
-! !$! HISTORY
-! !$!
-! !$!
-! !$! NOTES
-! !$! Commented out until 1.6 ? 10/08/2002
-! !$!
-! !$! SOURCE
-! SUBROUTINE h5scombine_hyperslab_f(space_id, operator, start, count, &
-! hyper_id, hdferr, stride, block)
-! IMPLICIT NONE
-! INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
-! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
- ! H5S_SELECT_NOOP_F
- ! H5S_SELECT_SET_F
- ! H5S_SELECT_OR_F
- ! H5S_SELECT_AND_F
- ! H5S_SELECT_XOR_F
- ! H5S_SELECT_NOTB_F
- ! H5S_SELECT_NOTA_F
- ! H5S_SELECT_APPEND_F
- ! H5S_SELECT_PREPEND_F
- !
-! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
- ! Starting coordinates of the hyperslab
-! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
- ! Number of blocks to select
- ! from dataspace
-! INTEGER(HID_T), INTENT(OUT) :: hyper_id ! New hyperslab identifier
-! INTEGER, INTENT(OUT) :: hdferr ! Error code
-! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride
- ! Array of how many elements to move
- ! in each direction
-! INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block
- ! Sizes of element block
-! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_block
-! INTEGER(HSIZE_T), DIMENSION(:), ALLOCATABLE :: def_stride
-! INTEGER :: rank
-! INTEGER :: error1, error2
-
-! INTERFACE
-! INTEGER FUNCTION h5scombine_hyperslab_c(space_id, operator, &
-! start, count, stride, block, hyper_id)
-! USE H5GLOBAL
-! !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOMBINE_HYPERSLAB_C'::h5scombine_hyperslab_c
-! !DEC$ENDIF
-! INTEGER(HID_T), INTENT(IN) :: space_id
-! INTEGER, INTENT(IN) :: operator
-! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
-! INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
-! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: stride
-! INTEGER(HSIZE_T), DIMENSION(*), OPTIONAL, INTENT(IN) :: block
-! INTEGER(HID_T), INTENT(OUT) :: hyper_id
-! END FUNCTION h5scombine_hyperslab_c
-! END INTERFACE
-
-! if (present(stride).and. present(block)) then
-! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
-! stride, block, hyper_id)
-! return
-! endif
- ! Case of optional parameters.
- !
- ! Find the rank of the dataspace to allocate memery for
- ! default stride and block arrays.
- !
-! CALL h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
-! if( hdferr .EQ. -1) return
- !
-! if (present(stride).and. .not.present(block)) then
-! allocate(def_block(rank), stat=error1)
-! if (error1.NE.0) then
-! hdferr = -1
-! return
-! endif
-! def_block = 1
-! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
-! stride, def_block, hyper_id)
-! deallocate(def_block)
-! return
-! endif
-
-! if (.not.present(stride).and. present(block)) then
-! allocate(def_stride(rank), stat=error2)
-! if (error2.NE.0) then
-! hdferr = -1
-! return
-! endif
-! def_stride = 1
-! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
-! def_stride, block, hyper_id)
-! deallocate(def_stride)
-! return
-! endif
-! allocate(def_block(rank), stat=error1)
-! allocate(def_stride(rank), stat=error2)
-! if ((error1.NE.0) .OR. (error2.NE.0)) then
-! hdferr = -1
-! return
-! endif
-! def_block = 1
-! def_stride = 1
-! hdferr = h5scombine_hyperslab_c(space_id, operator, start, count, &
-! def_stride, def_block, hyper_id)
-! deallocate(def_block)
-! deallocate(def_stride)
-
-! END SUBROUTINE h5scombine_hyperslab_f
-
-! !$!
-! !$!****s* H5S/
-! !$!
-! !$! NAME
-! !$! h5scombine_select_f
-! !$!
-! !$! PURPOSE
-! !$! Combine two hyperslab selections with an operation
-! !$! and return a dataspace with resulting selection.
-! !$!
-! !$! INPUTS
-! !$! space1_id - dataspace of selection to use
-! !$! operator - flag, valid values are:
-! !$! H5S_SELECT_NOOP_F
-! !$! H5S_SELECT_SET_F
-! !$! H5S_SELECT_OR_F
-! !$! H5S_SELECT_AND_F
-! !$! H5S_SELECT_XOR_F
-! !$! H5S_SELECT_NOTB_F
-! !$! H5S_SELECT_NOTA_F
-! !$! H5S_SELECT_APPEND_F
-! !$! H5S_SELECT_PREPEND_F
-! !$! space2_id - dataspace of selection to use
-! !$! OUTPUTS
-! !$! ds_id - idataspace identifier with the new selection
-! !$! hdferr: - error code
-! !$! Success: 0
-! !$! Failure: -1
-! !$! OPTIONAL PARAMETERS - NONE
-! !$!
-! !$! AUTHOR
-! !$! Elena Pourmal
-! !$! October 7, 2002
-! !$!
-! !$! HISTORY
-! !$!
-! !$!
-! !$! NOTES commented out until 1.6 release(?) 10/08/2002
-! !$!
-
-! ! SOURCE
-! !$ SUBROUTINE h5scombine_select_f(space1_id, operator, space2_id, &
-! ds_id, hdferr)
-! IMPLICIT NONE
-! INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier
-! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier
-! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
- ! H5S_SELECT_NOOP_F
- ! H5S_SELECT_SET_F
- ! H5S_SELECT_OR_F
- ! H5S_SELECT_AND_F
- ! H5S_SELECT_XOR_F
- ! H5S_SELECT_NOTB_F
- ! H5S_SELECT_NOTA_F
- ! H5S_SELECT_APPEND_F
- ! H5S_SELECT_PREPEND_F
- !
-! INTEGER(HID_T), INTENT(OUT) :: ds_id ! New dataspace identifier
-! INTEGER, INTENT(OUT) :: hdferr ! Error code
-!
-! INTERFACE
-! INTEGER FUNCTION h5scombine_select_c(space1_id, operator, &
-! space2_id, ds_id)
-! USE H5GLOBAL
-! !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SCOMBINE_SELECT_C'::h5scombine_select_c
-! !DEC$ENDIF
-! INTEGER(HID_T), INTENT(IN) :: space1_id
-! INTEGER(HID_T), INTENT(IN) :: space2_id
-! INTEGER, INTENT(IN) :: operator
-! INTEGER(HID_T), INTENT(OUT) :: ds_id
-! END FUNCTION h5scombine_select_c
-! END INTERFACE
-
-! hdferr = h5scombine_select_c(space1_id, operator, space2_id, &
-! ds_id)
-! return
-
-! END SUBROUTINE h5scombine_select_f
-
-! !$!
-! !$!****s* H5S/
-! !$!
-! !$! NAME
-! !$! h5sselect_select_f
-! !$!
-! !$! PURPOSE
-! !$! Refine a hyperslab selection with an operation
-! !$! using second hyperslab
-! !$!
-! !$! INPUTS
-! !$! space1_id - dataspace of selection to modify
-! !$! operator - flag, valid values are:
-! !$! H5S_SELECT_NOOP_F
-! !$! H5S_SELECT_SET_F
-! !$! H5S_SELECT_OR_F
-! !$! H5S_SELECT_AND_F
-! !$! H5S_SELECT_XOR_F
-! !$! H5S_SELECT_NOTB_F
-! !$! H5S_SELECT_NOTA_F
-! !$! H5S_SELECT_APPEND_F
-! !$! H5S_SELECT_PREPEND_F
-! !$! space2_id - dataspace of selection to use
-! !$!
-! !$! OUTPUTS
-! !$! hdferr: - error code
-! !$! Success: 0
-! !$! Failure: -1
-! !$! OPTIONAL PARAMETERS - NONE
-! !$!
-! !$! AUTHOR
-! !$! Elena Pourmal
-! !$! October 7, 2002
-! !$!
-! !$! HISTORY
-! !$!
-! !$!
-! !$! NOTESCommented out until 1.6 release(?) 10/08/2002 EIP
-! !$!
-
-! ! SOURCE
-! SUBROUTINE h5sselect_select_f(space1_id, operator, space2_id, &
-! hdferr)
-! IMPLICIT NONE
-! INTEGER(HID_T), INTENT(INOUT) :: space1_id ! Dataspace identifier to
- ! modify
-! INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier
-! INTEGER, INTENT(IN) :: operator ! Flag, valid values are:
- ! H5S_SELECT_NOOP_F
- ! H5S_SELECT_SET_F
- ! H5S_SELECT_OR_F
- ! H5S_SELECT_AND_F
- ! H5S_SELECT_XOR_F
- ! H5S_SELECT_NOTB_F
- ! H5S_SELECT_NOTA_F
- ! H5S_SELECT_APPEND_F
- ! H5S_SELECT_PREPEND_F
- !
-! INTEGER, INTENT(OUT) :: hdferr ! Error code
-
-! INTERFACE
-! INTEGER FUNCTION h5sselect_select_c(space1_id, operator, &
-! space2_id)
-! USE H5GLOBAL
-! !DEC$IF DEFINED(HDF5F90_WINDOWS)
-! !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SSELECT_SELECT_C'::h5sselect_select_c
-! !DEC$ENDIF
-! INTEGER(HID_T), INTENT(INOUT) :: space1_id
-! INTEGER(HID_T), INTENT(IN) :: space2_id
-! INTEGER, INTENT(IN) :: operator
-! END FUNCTION h5sselect_select_c
-! END INTERFACE
-
-! hdferr = h5sselect_select_c(space1_id, operator, space2_id)
-! return
-
-! END SUBROUTINE h5sselect_select_f
-
-!
-!****s* H5S/h5sget_select_type_f
-!
-! NAME
-! h5sget_select_type_f
-!
-! PURPOSE
-! Retrieve the type of selection
-!
-! INPUTS
-! space_id - dataspace iidentifier with selection
-! OUTPUTS
-! type - flag, valid values are:
-! H5S_SEL_ERROR_F
-! H5S_SEL_NONE_F
-! H5S_SEL_POINTS_F
-! H5S_SEL_HYPERSLABS_F
-! H5S_SEL_ALL_F
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! October 7, 2002
-!
-! SOURCE
- SUBROUTINE h5sget_select_type_f(space_id, type, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(INOUT) :: space_id ! Dataspace identifier to
- INTEGER, INTENT(OUT) :: type ! Selection type
- ! H5S_SEL_ERROR_F
- ! H5S_SEL_NONE_F
- ! H5S_SEL_POINTS_F
- ! H5S_SEL_HYPERSLABS_F
- ! H5S_SEL_ALL_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sget_select_type_c(space_id, type)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SGET_SELECT_TYPE_C'::h5sget_select_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space_id
- INTEGER, INTENT(OUT) :: type
- END FUNCTION h5sget_select_type_c
- END INTERFACE
-
- hdferr = h5sget_select_type_c(space_id, type)
- return
-
- END SUBROUTINE h5sget_select_type_f
-
-!
-!****s* H5S/H5Sdecode_f
-!
-! NAME
-! H5Sdecode_f
-!
-! PURPOSE
-! Decode a binary object description of data space and return a new object handle.
-!
-! INPUTS
-! buf - Buffer for the data space object to be decoded.
-! obj_id - Object ID
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! March 26, 2008
-! SOURCE
- SUBROUTINE h5sdecode_f(buf, obj_id, hdferr)
- IMPLICIT NONE
- CHARACTER(LEN=*), INTENT(IN) :: buf ! Buffer for the data space object to be decoded.
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5sdecode_c(buf, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SDECODE_C'::h5sdecode_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- CHARACTER(LEN=*), INTENT(IN) :: buf
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
- END FUNCTION h5sdecode_c
- END INTERFACE
-
- hdferr = h5sdecode_c(buf, obj_id)
-
- END SUBROUTINE h5sdecode_f
-
-!
-!****s* H5S/H5Sencode_f
-!
-! NAME
-! H5Sencode_f
-!
-! PURPOSE
-! Encode a data space object description into a binary buffer.
-!
-! INPUTS
-! obj_id - Identifier of the object to be encoded.
-! buf - Buffer for the object to be encoded into.
-! nalloc - The size of the allocated buffer.
-! OUTPUTS
-! nalloc - The size of the buffer needed.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! March 26, 2008
-! SOURCE
- SUBROUTINE h5sencode_f(obj_id, buf, nalloc, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: obj_id ! Identifier of the object to be encoded.
- CHARACTER(LEN=*), INTENT(OUT) :: buf ! Buffer for the object to be encoded into.
- INTEGER(SIZE_T), INTENT(INOUT) :: nalloc ! The size of the allocated buffer.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5sencode_c(buf, obj_id, nalloc)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SENCODE_C'::h5sencode_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(OUT) :: buf
- INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
- END FUNCTION h5sencode_c
- END INTERFACE
-
- hdferr = h5sencode_c(buf, obj_id, nalloc)
-
- END SUBROUTINE h5sencode_f
-
-!****s* H5S/h5sextent_equal_f
-!
-! NAME
-! h5sextent_equal_f
-!
-! PURPOSE
-! Determines whether two dataspace extents are equal.
-!
-! INPUTS
-! space1_id - First dataspace identifier.
-! space2_id - Second dataspace identifier.
-! OUTPUTS
-! Equal - .TRUE. if equal, .FALSE. if unequal.
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! M. Scot Breitenfeld
-! April 2, 2008
-!
-! SOURCE
- SUBROUTINE h5sextent_equal_f(space1_id, space2_id, equal, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier.
- INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier.
- LOGICAL, INTENT(OUT) :: Equal ! .TRUE. if equal, .FALSE. if unequal.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER(HID_T) :: c_equal
-
- INTERFACE
- INTEGER FUNCTION h5sextent_equal_c(space1_id, space2_id, c_equal)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5SEXTENT_EQUAL_C'::h5sextent_equal_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: space1_id
- INTEGER(HID_T), INTENT(IN) :: space2_id
- INTEGER(HID_T) :: c_equal
- END FUNCTION h5sextent_equal_c
- END INTERFACE
-
- hdferr = h5sextent_equal_c(space1_id, space2_id, c_equal)
-
-
- equal = .FALSE.
- IF(c_equal.GT.0) equal = .TRUE.
-
-
- END SUBROUTINE h5sextent_equal_f
-
-END MODULE H5S
diff --git a/fortran/src/H5Tf.c b/fortran/src/H5Tf.c
index 7e1aa42..b6389258 100644
--- a/fortran/src/H5Tf.c
+++ b/fortran/src/H5Tf.c
@@ -1,6 +1,6 @@
/****h* H5Tf/H5Tf
* PURPOSE
- * This file contains C stubs for H5T Fortran APIs
+ * This file contains C stubs for H5T Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -23,30 +23,29 @@
#include "H5f90.h"
-
/****if* H5Tf/h5topen_c
* NAME
* h5topen_c
* PURPOSE
* Call H5Topen2 to open a datatype
* INPUTS
- * loc_id - file or group identifier
- * name - name of the datatype within file or group
- * namelen - name length
- * tapl_id - datatype access property list identifier
+ * loc_id - file or group identifier
+ * name - name of the datatype within file or group
+ * namelen - name length
+ * tapl_id - datatype access property list identifier
* OUTPUTS
- * type_id - dataset identifier
+ * type_id - dataset identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5topen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *tapl_id)
+h5topen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *tapl_id)
/******/
{
char *c_name = NULL;
@@ -75,25 +74,24 @@ done:
return ret_value;
}
-
/****if* H5Tf/h5tcommit_c
* NAME
* h5tcommit_c
* PURPOSE
* Call H5Tcommit2 to commit a datatype
* INPUTS
- * loc_id - file or group identifier
- * name - name of the datatype within file or group
- * namelen - name length
- * type_id - dataset identifier
- * lcpl_id - Link creation property list
- * tcpl_id - Datatype creation property list
- * tapl_id - Datatype access property list
+ * loc_id - file or group identifier
+ * name - name of the datatype within file or group
+ * namelen - name length
+ * type_id - dataset identifier
+ * lcpl_id - Link creation property list
+ * tcpl_id - Datatype creation property list
+ * tapl_id - Datatype access property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* - Added passing optional parameters for version 1.8
@@ -101,7 +99,7 @@ done:
* SOURCE
*/
int_f
-nh5tcommit_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id,
+h5tcommit_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id,
hid_t_f *lcpl_id, hid_t_f *tcpl_id, hid_t_f *tapl_id)
/******/
{
@@ -130,19 +128,19 @@ done:
* PURPOSE
* Call H5Tclose to close the datatype
* INPUTS
- * type_id - identifier of the datatype to be closed
+ * type_id - identifier of the datatype to be closed
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tclose_c ( hid_t_f *type_id )
+h5tclose_c ( hid_t_f *type_id )
/******/
{
int ret_value = 0;
@@ -153,28 +151,27 @@ nh5tclose_c ( hid_t_f *type_id )
return ret_value;
}
-
/****if* H5Tf/h5tcopy_c
* NAME
* h5tcopy_c
* PURPOSE
* Call H5Tcopy to copy a datatype
* INPUTS
- * type_id - identifier of the datatype to be copied
+ * type_id - identifier of the datatype to be copied
* OUTPUTS
- * new_type_id - identifier of the new datatype
+ * new_type_id - identifier of the new datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tcopy_c ( hid_t_f *type_id , hid_t_f *new_type_id)
+h5tcopy_c ( hid_t_f *type_id , hid_t_f *new_type_id)
/******/
{
int ret_value = 0;
@@ -194,22 +191,22 @@ nh5tcopy_c ( hid_t_f *type_id , hid_t_f *new_type_id)
* PURPOSE
* Call H5Tequal to copy a datatype
* INPUTS
- * type1_id - datatype identifier
- * type2_id - datatype identifier
+ * type1_id - datatype identifier
+ * type2_id - datatype identifier
* OUTPUTS
- * c_flag - flag; indicates if two datatypes are equal or not.
+ * c_flag - flag; indicates if two datatypes are equal or not.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Tuesday, February 22, 2000
+ * Tuesday, February 22, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tequal_c ( hid_t_f *type1_id , hid_t_f *type2_id, int_f *c_flag)
+h5tequal_c ( hid_t_f *type1_id , hid_t_f *type2_id, int_f *c_flag)
/******/
{
int ret_value = -1;
@@ -257,7 +254,7 @@ nh5tequal_c ( hid_t_f *type1_id , hid_t_f *type2_id, int_f *c_flag)
*/
int_f
-nh5tget_class_c ( hid_t_f *type_id , int_f *classtype)
+h5tget_class_c ( hid_t_f *type_id , int_f *classtype)
/******/
{
int ret_value = 0;
@@ -293,24 +290,24 @@ nh5tget_class_c ( hid_t_f *type_id , int_f *classtype)
* PURPOSE
* Call H5Tget_order to determine byte order
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * order; possible values are:
+ * order; possible values are:
* H5T_ORDER_LE_F (0)
* H5T_ORDER_BE_F (1)
* H5T_ORDER_VAX_F (2)
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_order_c ( hid_t_f *type_id , int_f *order)
+h5tget_order_c ( hid_t_f *type_id , int_f *order)
/******/
{
int ret_value = -1;
@@ -337,23 +334,23 @@ nh5tget_order_c ( hid_t_f *type_id , int_f *order)
* PURPOSE
* Call H5Tset_order to set byte order
* INPUTS
- * type_id - identifier of the dataspace
- * order; possible values are:
+ * type_id - identifier of the dataspace
+ * order; possible values are:
* H5T_ORDER_LE_F (0)
* H5T_ORDER_BE_F (1)
* H5T_ORDER_VAX_F (2)
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_order_c ( hid_t_f *type_id , int_f *order)
+h5tset_order_c ( hid_t_f *type_id , int_f *order)
/******/
{
int ret_value = 0;
@@ -378,21 +375,21 @@ nh5tset_order_c ( hid_t_f *type_id , int_f *order)
* PURPOSE
* Call H5Tget_size to get size of the datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * size (in bytes)
+ * size (in bytes)
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_size_c ( hid_t_f *type_id , size_t_f *size)
+h5tget_size_c ( hid_t_f *type_id , size_t_f *size)
/******/
{
int ret_value = -1;
@@ -413,21 +410,21 @@ nh5tget_size_c ( hid_t_f *type_id , size_t_f *size)
* PURPOSE
* Call H5Tget_size to get size of the datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * size (in bytes)
+ * size (in bytes)
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Saturday, August 14, 1999
+ * Saturday, August 14, 1999
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_size_c ( hid_t_f *type_id , size_t_f *size)
+h5tset_size_c ( hid_t_f *type_id , size_t_f *size)
/******/
{
int ret_value = -1;
@@ -449,21 +446,21 @@ nh5tset_size_c ( hid_t_f *type_id , size_t_f *size)
* PURPOSE
* Call H5Tget_precision to get precision of the datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * precision - number of significant bits
+ * precision - number of significant bits
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Tuesday, January 25, 2000
+ * Tuesday, January 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_precision_c ( hid_t_f *type_id , size_t_f *precision)
+h5tget_precision_c ( hid_t_f *type_id , size_t_f *precision)
/******/
{
int ret_value = -1;
@@ -484,20 +481,20 @@ nh5tget_precision_c ( hid_t_f *type_id , size_t_f *precision)
* PURPOSE
* Call H5Tset_precision to set precision of the datatype
* INPUTS
- * type_id - identifier of the dataspace
- * precision - number of significant bits
+ * type_id - identifier of the dataspace
+ * precision - number of significant bits
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Tuesday, January 25, 2000
+ * Tuesday, January 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_precision_c ( hid_t_f *type_id , size_t_f *precision)
+h5tset_precision_c ( hid_t_f *type_id , size_t_f *precision)
/******/
{
int ret_value = -1;
@@ -518,23 +515,23 @@ nh5tset_precision_c ( hid_t_f *type_id , size_t_f *precision)
* h5tget_offset_c
* PURPOSE
* Call H5Tget_offset to get bit offset of the first
- * significant bit of the datatype
+ * significant bit of the datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * offset - bit offset of the first significant bit
+ * offset - bit offset of the first significant bit
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Tuesday, January 25, 2000
+ * Tuesday, January 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_offset_c ( hid_t_f *type_id , size_t_f *offset)
+h5tget_offset_c ( hid_t_f *type_id , size_t_f *offset)
/******/
{
int ret_value = -1;
@@ -555,22 +552,22 @@ nh5tget_offset_c ( hid_t_f *type_id , size_t_f *offset)
* h5tset_offset_c
* PURPOSE
* Call H5Tset_offset to set bit offset of the first
- * significant bit of the datatype
+ * significant bit of the datatype
* INPUTS
- * type_id - identifier of the dataspace
- * offset - bit offset of the first significant bit
+ * type_id - identifier of the dataspace
+ * offset - bit offset of the first significant bit
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Tuesday, January 25, 2000
+ * Tuesday, January 25, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_offset_c ( hid_t_f *type_id , size_t_f *offset)
+h5tset_offset_c ( hid_t_f *type_id , size_t_f *offset)
/******/
{
int ret_value = -1;
@@ -591,25 +588,25 @@ nh5tset_offset_c ( hid_t_f *type_id , size_t_f *offset)
* h5tget_pad_c
* PURPOSE
* Call H5Tget_pad to get the padding type of the least and
- * most-significant bit padding
+ * most-significant bit padding
*
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * lsbpad - padding type of the least significant bit
- * msbpad - padding type of the least significant bit
+ * lsbpad - padding type of the least significant bit
+ * msbpad - padding type of the least significant bit
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_pad_c ( hid_t_f *type_id , int_f * lsbpad, int_f * msbpad)
+h5tget_pad_c ( hid_t_f *type_id , int_f * lsbpad, int_f * msbpad)
/******/
{
int ret_value = -1;
@@ -631,27 +628,27 @@ nh5tget_pad_c ( hid_t_f *type_id , int_f * lsbpad, int_f * msbpad)
* NAME
* h5tset_pad_c
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* PURPOSE
* Call H5Tset_pad to set the padding type of the least and
- * most-significant bit padding
+ * most-significant bit padding
*
* INPUTS
- * type_id - identifier of the dataspace
- * lsbpad - padding type of the least significant bit
- * msbpad - padding type of the least significant bit
+ * type_id - identifier of the dataspace
+ * lsbpad - padding type of the least significant bit
+ * msbpad - padding type of the least significant bit
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_pad_c ( hid_t_f *type_id, int_f * lsbpad, int_f* msbpad )
+h5tset_pad_c ( hid_t_f *type_id, int_f * lsbpad, int_f* msbpad )
/******/
{
int ret_value = -1;
@@ -674,21 +671,21 @@ nh5tset_pad_c ( hid_t_f *type_id, int_f * lsbpad, int_f* msbpad )
* PURPOSE
* Call H5Tget_sign to get sign type for an integer type
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * sign - sign type for an integer type
+ * sign - sign type for an integer type
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_sign_c ( hid_t_f *type_id , int_f *sign)
+h5tget_sign_c ( hid_t_f *type_id , int_f *sign)
/******/
{
int ret_value = -1;
@@ -709,20 +706,20 @@ nh5tget_sign_c ( hid_t_f *type_id , int_f *sign)
* PURPOSE
* Call H5Tset_sign to set sign type for an integer type
* INPUTS
- * type_id - identifier of the dataspace
- * sign - sign type for an integer typ
+ * type_id - identifier of the dataspace
+ * sign - sign type for an integer typ
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_sign_c ( hid_t_f *type_id , int_f* sign)
+h5tset_sign_c ( hid_t_f *type_id , int_f* sign)
/******/
{
int ret_value = -1;
@@ -744,26 +741,26 @@ nh5tset_sign_c ( hid_t_f *type_id , int_f* sign)
* h5tget_fields_c
* PURPOSE
* Call H5Tget_fields to get floating point datatype
- * bit field information
+ * bit field information
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * epos - exponent bit-position
- * esize - size of exponent in bits
- * mpos - mantissa bit-position
- * msize - size of mantissa in bits
+ * epos - exponent bit-position
+ * esize - size of exponent in bits
+ * mpos - mantissa bit-position
+ * msize - size of mantissa in bits
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, January 27, 2000
+ * Thursday, January 27, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_fields_c ( hid_t_f *type_id , size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize)
+h5tget_fields_c ( hid_t_f *type_id , size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize)
/******/
{
int ret_value = -1;
@@ -788,25 +785,25 @@ nh5tget_fields_c ( hid_t_f *type_id , size_t_f *spos, size_t_f *epos, size_t_f*
* h5tset_fields_c
* PURPOSE
* Call H5Tset_fields to set floating point datatype
- * bit field information
+ * bit field information
* INPUTS
- * type_id - identifier of the dataspace
- * epos - exponent bit-position
- * esize - size of exponent in bits
- * mpos - mantissa bit-position
- * msize - size of mantissa in bits
+ * type_id - identifier of the dataspace
+ * epos - exponent bit-position
+ * esize - size of exponent in bits
+ * mpos - mantissa bit-position
+ * msize - size of mantissa in bits
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_fields_c ( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize)
+h5tset_fields_c ( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize)
/******/
{
int ret_value = -1;
@@ -832,23 +829,23 @@ nh5tset_fields_c ( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* e
* h5tget_ebias_c
* PURPOSE
* Call H5Tget_ebias to get exponent bias of a
- * floating-point type of the datatype
+ * floating-point type of the datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * ebias - exponent bias of a floating-point type of the datatype
+ * ebias - exponent bias of a floating-point type of the datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, January 27, 2000
+ * Friday, January 27, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
+h5tget_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
/******/
{
int ret_value = -1;
@@ -869,22 +866,22 @@ nh5tget_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
* h5tset_ebias_c
* PURPOSE
* Call H5Tset_ebias to set exponent bias of a
- * floating-point type of the datatype
+ * floating-point type of the datatype
* INPUTS
- * type_id - identifier of the dataspace
- * ebias - exponent bias of a floating-point type of the datatyp
+ * type_id - identifier of the dataspace
+ * ebias - exponent bias of a floating-point type of the datatyp
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, January 27, 2000
+ * Friday, January 27, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
+h5tset_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
/******/
{
int ret_value = -1;
@@ -906,23 +903,23 @@ nh5tset_ebias_c ( hid_t_f *type_id , size_t_f *ebias)
* h5tget_norm_c
* PURPOSE
* Call H5Tget_norm to get mantissa normalization
- * of a floating-point datatype
+ * of a floating-point datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * norm - mantissa normalization of a floating-point type
+ * norm - mantissa normalization of a floating-point type
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, January 27, 2000
+ * Friday, January 27, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_norm_c ( hid_t_f *type_id , int_f *norm)
+h5tget_norm_c ( hid_t_f *type_id , int_f *norm)
/******/
{
int ret_value = -1;
@@ -943,22 +940,22 @@ nh5tget_norm_c ( hid_t_f *type_id , int_f *norm)
* h5tset_norm_c
* PURPOSE
* Call H5Tset_norm to set mantissa normalization of
- * floating-point type of the datatype
+ * floating-point type of the datatype
* INPUTS
- * type_id - identifier of the dataspace
- * norm - mantissa normalization of a floating-point type
+ * type_id - identifier of the dataspace
+ * norm - mantissa normalization of a floating-point type
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Xiangyang Su
- * Friday, January 27, 2000
+ * Friday, January 27, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_norm_c ( hid_t_f *type_id , int_f *norm)
+h5tset_norm_c ( hid_t_f *type_id , int_f *norm)
/******/
{
int ret_value = -1;
@@ -980,25 +977,25 @@ nh5tset_norm_c ( hid_t_f *type_id , int_f *norm)
* h5tget_inpad_c
* PURPOSE
* Call H5Tget_inpad to get the padding type for
- * unused bits in floating-point datatypes
+ * unused bits in floating-point datatypes
*
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * padtype - padding type for
- * unused bits in floating-point datatype
+ * padtype - padding type for
+ * unused bits in floating-point datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_inpad_c ( hid_t_f *type_id , int_f * padtype)
+h5tget_inpad_c ( hid_t_f *type_id , int_f * padtype)
/******/
{
int ret_value = -1;
@@ -1018,27 +1015,27 @@ nh5tget_inpad_c ( hid_t_f *type_id , int_f * padtype)
* NAME
* h5tset_inpad_c
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* PURPOSE
* Call H5Tset_inpad to set the padding type
- * unused bits in floating-point datatype
+ * unused bits in floating-point datatype
*
* INPUTS
- * type_id - identifier of the dataspace
- * padtype - padding type for unused bits
- * in floating-point datatypes
+ * type_id - identifier of the dataspace
+ * padtype - padding type for unused bits
+ * in floating-point datatypes
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_inpad_c ( hid_t_f *type_id, int_f * padtype)
+h5tset_inpad_c ( hid_t_f *type_id, int_f * padtype)
/******/
{
int ret_value = -1;
@@ -1060,24 +1057,24 @@ nh5tset_inpad_c ( hid_t_f *type_id, int_f * padtype)
* h5tget_cset_c
* PURPOSE
* Call H5Tget_cset to get character set
- * type of a string datatype
+ * type of a string datatype
*
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * cset - character set type of a string datatype
+ * cset - character set type of a string datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_cset_c ( hid_t_f *type_id , int_f * cset)
+h5tget_cset_c ( hid_t_f *type_id , int_f * cset)
/******/
{
int ret_value = -1;
@@ -1097,26 +1094,26 @@ nh5tget_cset_c ( hid_t_f *type_id , int_f * cset)
* NAME
* h5tset_cset_c
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* PURPOSE
* Call H5Tset_cset to set character set
- * type of a string datatype
+ * type of a string datatype
*
* INPUTS
- * type_id - identifier of the dataspace
- * cset - character set type of a string datatype
+ * type_id - identifier of the dataspace
+ * cset - character set type of a string datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_cset_c ( hid_t_f *type_id, int_f * cset)
+h5tset_cset_c ( hid_t_f *type_id, int_f * cset)
/******/
{
int ret_value = -1;
@@ -1138,22 +1135,22 @@ nh5tset_cset_c ( hid_t_f *type_id, int_f * cset)
* h5tget_strpad_c
* PURPOSE
* Call H5Tget_strpad to get string padding method
- * for a string datatype
+ * for a string datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * strpad - string padding method for a string datatype
+ * strpad - string padding method for a string datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_strpad_c ( hid_t_f *type_id , int_f * strpad)
+h5tget_strpad_c ( hid_t_f *type_id , int_f * strpad)
/******/
{
int ret_value = -1;
@@ -1173,26 +1170,26 @@ nh5tget_strpad_c ( hid_t_f *type_id , int_f * strpad)
* NAME
* h5tset_strpad_c
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* PURPOSE
* Call H5Tset_strpad to set string padding method
- * for a string datatype
+ * for a string datatype
*
* INPUTS
- * type_id - identifier of the dataspace
- * strpad - string padding method for a string datatype
+ * type_id - identifier of the dataspace
+ * strpad - string padding method for a string datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_strpad_c ( hid_t_f *type_id, int_f * strpad)
+h5tset_strpad_c ( hid_t_f *type_id, int_f * strpad)
/******/
{
int ret_value = -1;
@@ -1214,23 +1211,23 @@ nh5tset_strpad_c ( hid_t_f *type_id, int_f * strpad)
* h5tget_nmembers_c
* PURPOSE
* Call H5Tget_nmembers to get number of fields
- * in a compound datatype
+ * in a compound datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * num_members - number of fields in a compound datatype
+ * num_members - number of fields in a compound datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_nmembers_c ( hid_t_f *type_id , int_f * num_members)
+h5tget_nmembers_c ( hid_t_f *type_id , int_f * num_members)
/******/
{
int ret_value = -1;
@@ -1249,24 +1246,24 @@ nh5tget_nmembers_c ( hid_t_f *type_id , int_f * num_members)
* h5tget_member_name_c
* PURPOSE
* Call H5Tget_member_name to get name
- * of a compound datatype
+ * of a compound datatype
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * member_name - name of a field of a compound datatype
+ * member_name - name of a field of a compound datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
- * Elena Pourmal
- * Added namelen parameter to return length of the name to Fortran user
+ * Elena Pourmal
+ * Added namelen parameter to return length of the name to Fortran user
* SOURCE
*/
int_f
-nh5tget_member_name_c ( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *namelen)
+h5tget_member_name_c ( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *namelen)
/******/
{
int ret_value = -1;
@@ -1290,15 +1287,15 @@ nh5tget_member_name_c ( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *n
* h5tget_member_index_c
* PURPOSE
* Call H5Tget_member_index to get an index of
- * the specified datatype filed or member.
+ * the specified datatype filed or member.
* INPUTS
- * type_id - datatype identifier
- * name - name of the datatype within file or group
- * namelen - name length
+ * type_id - datatype identifier
+ * name - name of the datatype within file or group
+ * namelen - name length
* OUTPUTS
- * index - 0-based index
+ * index - 0-based index
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Thursday, September 26, 2002
@@ -1307,7 +1304,7 @@ nh5tget_member_name_c ( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *n
* SOURCE
*/
int_f
-nh5tget_member_index_c (hid_t_f *type_id, _fcd name, int_f *namelen, int_f *idx)
+h5tget_member_index_c (hid_t_f *type_id, _fcd name, int_f *namelen, int_f *idx)
/******/
{
int ret_value = -1;
@@ -1341,26 +1338,26 @@ DONE:
* h5tget_member_offset_c
* PURPOSE
* Call H5Tget_member_offset to get byte offset of the
- * beginning of a field within a compound datatype with
- * respect to the beginning of the compound data type datum
+ * beginning of a field within a compound datatype with
+ * respect to the beginning of the compound data type datum
* INPUTS
- * type_id - identifier of the dataspace
- * member_no - Number of the field whose offset is requested
+ * type_id - identifier of the dataspace
+ * member_no - Number of the field whose offset is requested
* OUTPUTS
- * offset - byte offset of the the beginning of the field of
- * a compound datatype
+ * offset - byte offset of the the beginning of the field of
+ * a compound datatype
* RETURNS
- * always 0
+ * always 0
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_member_offset_c ( hid_t_f *type_id ,int_f* member_no, size_t_f * offset)
+h5tget_member_offset_c ( hid_t_f *type_id ,int_f* member_no, size_t_f * offset)
/******/
{
int ret_value = -1;
@@ -1377,23 +1374,23 @@ nh5tget_member_offset_c ( hid_t_f *type_id ,int_f* member_no, size_t_f * offset)
* h5tget_array_dims_c
* PURPOSE
* Call H5Tget_array_dims2 to get
- * dimensions of array datatype
+ * dimensions of array datatype
* INPUTS
- * type_id - identifier of the array datatype
+ * type_id - identifier of the array datatype
* OUTPUTS
- * dims - dimensions(sizes of dimensions) of the array
+ * dims - dimensions(sizes of dimensions) of the array
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, November 16, 2000
+ * Thursday, November 16, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_array_dims_c ( hid_t_f *type_id , hsize_t_f * dims)
+h5tget_array_dims_c ( hid_t_f *type_id , hsize_t_f * dims)
/******/
{
hsize_t c_dims[H5S_MAX_RANK];
@@ -1420,23 +1417,23 @@ DONE:
* h5tget_array_ndims_c
* PURPOSE
* Call H5Tget_array_ndims to get number
- * of dimensions of array datatype
+ * of dimensions of array datatype
* INPUTS
- * type_id - identifier of the array datatype
+ * type_id - identifier of the array datatype
* OUTPUTS
- * ndims - number of dimensions of the array
+ * ndims - number of dimensions of the array
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, November 16, 2000
+ * Thursday, November 16, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_array_ndims_c ( hid_t_f *type_id , int_f * ndims)
+h5tget_array_ndims_c ( hid_t_f *type_id , int_f * ndims)
/******/
{
int ret_value = -1;
@@ -1457,23 +1454,23 @@ nh5tget_array_ndims_c ( hid_t_f *type_id , int_f * ndims)
* h5tget_super_c
* PURPOSE
* Call H5Tget_super to get base datatype from which
- * datatype was derived
+ * datatype was derived
* INPUTS
- * type_id - identifier of the array datatype
+ * type_id - identifier of the array datatype
* OUTPUTS
- * base_type_id - base datatype identifier
+ * base_type_id - base datatype identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Thursday, November 16, 2000
+ * Thursday, November 16, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_super_c ( hid_t_f *type_id , hid_t_f *base_type_id)
+h5tget_super_c ( hid_t_f *type_id , hid_t_f *base_type_id)
/******/
{
int ret_value = -1;
@@ -1495,14 +1492,14 @@ nh5tget_super_c ( hid_t_f *type_id , hid_t_f *base_type_id)
* h5tget_member_type_c
* PURPOSE
* Call H5Tget_member_type to get the identifier of a copy of
- * the datatype of the field
+ * the datatype of the field
* INPUTS
- * type_id - identifier of the datatype
- * field_idx - Field index (0-based) of the field type to retrieve
+ * type_id - identifier of the datatype
+ * field_idx - Field index (0-based) of the field type to retrieve
* OUTPUTS
- * datatype - identifier of a copy of the datatype of the field
+ * datatype - identifier of a copy of the datatype of the field
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
* Thursday, February 3, 2000
@@ -1512,7 +1509,7 @@ nh5tget_super_c ( hid_t_f *type_id , hid_t_f *base_type_id)
*/
int_f
-nh5tget_member_type_c ( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype)
+h5tget_member_type_c ( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype)
/******/
{
int ret_value = -1;
@@ -1531,10 +1528,10 @@ nh5tget_member_type_c ( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype)
* PURPOSE
* Call H5Tcreate to create a datatype
* INPUTS
- * cls - class type
- * size - size of the class memeber
+ * cls - class type
+ * size - size of the class memeber
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Thursday, February 17, 2000
@@ -1544,7 +1541,7 @@ nh5tget_member_type_c ( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype)
*/
int_f
-nh5tcreate_c(int_f *cls, size_t_f *size, hid_t_f *type_id)
+h5tcreate_c(int_f *cls, size_t_f *size, hid_t_f *type_id)
/******/
{
int ret_value = -1;
@@ -1583,7 +1580,7 @@ nh5tcreate_c(int_f *cls, size_t_f *size, hid_t_f *type_id)
*/
int_f
-nh5tinsert_c(hid_t_f *type_id, _fcd name, int_f* namelen, size_t_f *offset, hid_t_f * field_id)
+h5tinsert_c(hid_t_f *type_id, _fcd name, int_f* namelen, size_t_f *offset, hid_t_f * field_id)
/******/
{
int ret_value = -1;
@@ -1622,7 +1619,7 @@ nh5tinsert_c(hid_t_f *type_id, _fcd name, int_f* namelen, size_t_f *offset, hid_
*/
int_f
-nh5tpack_c(hid_t_f * type_id)
+h5tpack_c(hid_t_f * type_id)
/******/
{
int ret_value = -1;
@@ -1643,12 +1640,12 @@ nh5tpack_c(hid_t_f * type_id)
* PURPOSE
* Call H5Tarray_create2 to create array datatype
* INPUTS
- * base_id - identifier of array base datatype
- * rank - array's rank
- * dims - Size of new member array
- * type_id - identifier of the array datatype
+ * base_id - identifier of array base datatype
+ * rank - array's rank
+ * dims - Size of new member array
+ * type_id - identifier of the array datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Thursday, November 16, 2000
@@ -1657,7 +1654,7 @@ nh5tpack_c(hid_t_f * type_id)
* SOURCE
*/
int_f
-nh5tarray_create_c(hid_t_f * base_id, int_f *rank, hsize_t_f* dims, hid_t_f* type_id)
+h5tarray_create_c(hid_t_f * base_id, int_f *rank, hsize_t_f* dims, hid_t_f* type_id)
/******/
{
hsize_t c_dims[H5S_MAX_RANK];
@@ -1692,7 +1689,7 @@ DONE:
* parent_id - Datatype identifier for the base datatype
* OUTPUTS
* new_type_id - datatype identifier for the new
- * enumeration datatype
+ * enumeration datatype
* RETURNS
* 0 on success, -1 on failure
* AUTHOR
@@ -1704,7 +1701,7 @@ DONE:
*/
int_f
-nh5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id)
+h5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id)
/******/
{
int ret_value = 0;
@@ -1740,7 +1737,7 @@ nh5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id)
*/
int_f
-nh5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
+h5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
/******/
{
int ret_value = -1;
@@ -1767,24 +1764,24 @@ nh5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
* h5tenum_nameof_c
* PURPOSE
* Call H5Tenum_nameof to find the symbol name that corresponds to
- * the specified value of the enumeration datatype type
+ * the specified value of the enumeration datatype type
* INPUTS
- * type_id - identifier of the datatype
- * namelen - length of the name
- * value - value of the enumeration datatype
- * Output: name - Name of the enumeration datatype
+ * type_id - identifier of the datatype
+ * namelen - length of the name
+ * value - value of the enumeration datatype
+ * Output: name - Name of the enumeration datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen)
+h5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen)
/******/
{
int ret_value = -1;
@@ -1811,24 +1808,24 @@ nh5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen)
* h5tenum_valueof_c
* PURPOSE
* Call H5Tenum_valueof to find the value of that corresponds to
- * the specified name of the enumeration datatype type
+ * the specified name of the enumeration datatype type
* INPUTS
- * type_id - identifier of the datatype
- * name - Name of the enumeration datatype
- * namelen - length of name
- * Output: value - value of the enumeration datatype
+ * type_id - identifier of the datatype
+ * name - Name of the enumeration datatype
+ * namelen - length of name
+ * Output: value - value of the enumeration datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
+h5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
/******/
{
int ret_value = -1;
@@ -1851,23 +1848,23 @@ nh5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
* h5tget_member_value_c
* PURPOSE
* Call H5Tget_member_value to get the value of an
- * enumeration datatype member
+ * enumeration datatype member
* INPUTS
- * type_id - identifier of the datatype
- * member_no - Number of the enumeration datatype member.
- * Output: value - value of the enumeration datatype
+ * type_id - identifier of the datatype
+ * member_no - Number of the enumeration datatype member.
+ * Output: value - value of the enumeration datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value)
+h5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value)
/******/
{
int ret_value = -1;
@@ -1886,25 +1883,25 @@ nh5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value)
* NAME
* h5tset_tag_c
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* PURPOSE
* Call H5Tset_tag to set an opaque datatype tag
* INPUTS
- * type_id - identifier of the dataspace
- * tag - Unique ASCII string with which the opaque
- * datatype is to be tagged
- * namelen - length of tag
+ * type_id - identifier of the dataspace
+ * tag - Unique ASCII string with which the opaque
+ * datatype is to be tagged
+ * namelen - length of tag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Wednesday, January 26, 2000
+ * Wednesday, January 26, 2000
* HISTORY
*
* SOURCE
*/
int_f
-nh5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen)
+h5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen)
/******/
{
int ret_value = -1;
@@ -1929,11 +1926,11 @@ nh5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen)
* INPUTS
* type_id - identifier of the datatype
* OUTPUTS
- * tag - Unique ASCII string with which the opaque
- * datatype is to be tagged
- * taglen - length of tag
+ * tag - Unique ASCII string with which the opaque
+ * datatype is to be tagged
+ * taglen - length of tag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
* Wednesday, January 26, 2000
@@ -1942,7 +1939,7 @@ nh5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen)
* SOURCE
*/
int_f
-nh5tget_tag_c(hid_t_f* type_id, _fcd tag, size_t_f* tag_size, int_f* taglen)
+h5tget_tag_c(hid_t_f* type_id, _fcd tag, size_t_f* tag_size, int_f* taglen)
/******/
{
int ret_value = -1;
@@ -1965,20 +1962,20 @@ nh5tget_tag_c(hid_t_f* type_id, _fcd tag, size_t_f* tag_size, int_f* taglen)
* PURPOSE
* Call H5Tvlen_create to create VL dtatype
* INPUTS
- * type_id - identifier of the base datatype
+ * type_id - identifier of the base datatype
* OUTPUTS
- * vltype_id - identifier of the VL datatype
+ * vltype_id - identifier of the VL datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, October 23, 2002
+ * Wednesday, October 23, 2002
* HISTORY
*
* SOURCE
*/
int_f
-nh5tvlen_create_c(hid_t_f* type_id, hid_t_f *vltype_id)
+h5tvlen_create_c(hid_t_f* type_id, hid_t_f *vltype_id)
/******/
{
int ret_value = -1;
@@ -1997,24 +1994,24 @@ nh5tvlen_create_c(hid_t_f* type_id, hid_t_f *vltype_id)
* h5tis_variable_str_c
* PURPOSE
* Call H5Tis_variable_str to detrmine if the datatype
- * is a variable string.
+ * is a variable string.
* INPUTS
- * type_id - identifier of the dataspace
+ * type_id - identifier of the dataspace
* OUTPUTS
- * flag - 0 if not VL str, 1 if is not
- * and negative on failure.
+ * flag - 0 if not VL str, 1 if is not
+ * and negative on failure.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12 , 2003
+ * Wednesday, March 12 , 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5tis_variable_str_c ( hid_t_f *type_id , int_f *flag )
+h5tis_variable_str_c ( hid_t_f *type_id , int_f *flag )
/******/
{
int ret_value = 0;
@@ -2034,13 +2031,13 @@ nh5tis_variable_str_c ( hid_t_f *type_id , int_f *flag )
* Call H5Tget_member_class to detrmine ithe class of the compound
* datatype member
* INPUTS
- * type_id - identifier of the dataspace
- * member_no - member's index
+ * type_id - identifier of the dataspace
+ * member_no - member's index
* OUTPUTS
- * class - member's class
- * and negative on failure.
+ * class - member's class
+ * and negative on failure.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
* Wednesday, April 6, 2005
@@ -2050,7 +2047,7 @@ nh5tis_variable_str_c ( hid_t_f *type_id , int_f *flag )
*/
int_f
-nh5tget_member_class_c ( hid_t_f *type_id , int_f *member_no, int_f *cls )
+h5tget_member_class_c ( hid_t_f *type_id , int_f *member_no, int_f *cls )
/******/
{
int ret_value = 0;
@@ -2073,12 +2070,12 @@ nh5tget_member_class_c ( hid_t_f *type_id , int_f *member_no, int_f *cls )
* PURPOSE
* Call H5Tcommit_anon
* INPUTS
- * loc_id - file or group identifier
- * dtype_id - dataset identifier
- * tcpl_id - Datatype creation property list
- * tapl_id - Datatype access property list
+ * loc_id - file or group identifier
+ * dtype_id - dataset identifier
+ * tcpl_id - Datatype creation property list
+ * tapl_id - Datatype access property list
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* February 25, 2008
@@ -2087,7 +2084,7 @@ nh5tget_member_class_c ( hid_t_f *type_id , int_f *member_no, int_f *cls )
* SOURCE
*/
int_f
-nh5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id,
+h5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id,
hid_t_f *tcpl_id, hid_t_f *tapl_id)
/******/
{
@@ -2108,10 +2105,10 @@ nh5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id,
* h5tcommitted_c
* PURPOSE
* Call H5Tcommitted
- * dtype_id - dataset identifier
+ * dtype_id - dataset identifier
* RETURNS
- * a positive value, for TRUE, if the datatype has been committed,
- * or 0 (zero), for FALSE, if the datatype has not been committed.
+ * a positive value, for TRUE, if the datatype has been committed,
+ * or 0 (zero), for FALSE, if the datatype has not been committed.
* Otherwise returns a negative value.
* AUTHOR
* M. Scot Breitenfeld
@@ -2121,7 +2118,7 @@ nh5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id,
* SOURCE
*/
int_f
-nh5tcommitted_c(hid_t_f *dtype_id)
+h5tcommitted_c(hid_t_f *dtype_id)
/******/
{
int_f ret_value;
@@ -2144,10 +2141,10 @@ nh5tcommitted_c(hid_t_f *dtype_id)
* buf - Buffer for the data space object to be decoded.
* OUTPUTS
*
- * obj_id - Object_id (non-negative)
+ * obj_id - Object_id (non-negative)
*
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* April 9, 2008
@@ -2157,7 +2154,7 @@ nh5tcommitted_c(hid_t_f *dtype_id)
*/
int_f
-nh5tdecode_c ( _fcd buf, hid_t_f *obj_id )
+h5tdecode_c ( _fcd buf, hid_t_f *obj_id )
/******/
{
int ret_value = -1;
@@ -2187,11 +2184,11 @@ nh5tdecode_c ( _fcd buf, hid_t_f *obj_id )
* Call H5Tencode
* INPUTS
*
- * obj_id - Identifier of the object to be encoded.
+ * obj_id - Identifier of the object to be encoded.
* buf - Buffer for the object to be encoded into.
- * nalloc - The size of the allocated buffer.
+ * nalloc - The size of the allocated buffer.
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* April 9, 2008
@@ -2201,7 +2198,7 @@ nh5tdecode_c ( _fcd buf, hid_t_f *obj_id )
*/
int_f
-nh5tencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
+h5tencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
/******/
{
int ret_value = -1;
@@ -2256,11 +2253,11 @@ nh5tencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
* PURPOSE
* Call H5Tget_create_plist
* INPUTS
- * dtype_id - Datatype identifier
+ * dtype_id - Datatype identifier
* OUTPUTS
- * dtpl_id - Datatype property list identifier
+ * dtpl_id - Datatype property list identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* April 9, 2008
@@ -2270,7 +2267,7 @@ nh5tencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc )
*/
int_f
-nh5tget_create_plist_c ( hid_t_f *dtype_id, hid_t_f *dtpl_id)
+h5tget_create_plist_c ( hid_t_f *dtype_id, hid_t_f *dtpl_id)
/******/
{
int_f ret_value=-1; /* Return value */
@@ -2289,12 +2286,12 @@ nh5tget_create_plist_c ( hid_t_f *dtype_id, hid_t_f *dtpl_id)
* Call H5Tcompiler_conv
* INPUTS
*
- * src_id - Identifier for the source datatype.
- * dst_id - Identifier for the destination datatype.
+ * src_id - Identifier for the source datatype.
+ * dst_id - Identifier for the destination datatype.
* OUTPUTS
- * c_flag - flag; TRUE for compiler conversion, FALSE for library conversion
+ * c_flag - flag; TRUE for compiler conversion, FALSE for library conversion
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M.Scot Breitenfeld
* April 9, 2008
@@ -2304,7 +2301,7 @@ nh5tget_create_plist_c ( hid_t_f *dtype_id, hid_t_f *dtpl_id)
*/
int_f
-nh5tcompiler_conv_c ( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag)
+h5tcompiler_conv_c ( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag)
/******/
{
int ret_value = -1;
@@ -2323,12 +2320,12 @@ nh5tcompiler_conv_c ( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag)
* Call H5Tget_native_type
* INPUTS
*
- * dtype_id - Datatype identifier for the dataset datatype.
- * direction - Direction of search.
+ * dtype_id - Datatype identifier for the dataset datatype.
+ * direction - Direction of search.
* OUTPUTS
- * native_dtype_id - The native datatype identifier for the specified dataset datatype
+ * native_dtype_id - The native datatype identifier for the specified dataset datatype
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* M. Scot Breitenfeld
* June 18, 2008
@@ -2338,7 +2335,7 @@ nh5tcompiler_conv_c ( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag)
*/
int_f
-nh5tget_native_type_c(hid_t_f *dtype_id, int_f *direction, hid_t_f *native_dtype_id)
+h5tget_native_type_c(hid_t_f *dtype_id, int_f *direction, hid_t_f *native_dtype_id)
/******/
{
int ret_value = -1;
diff --git a/fortran/src/H5Tff.F90 b/fortran/src/H5Tff.F90
new file mode 100644
index 0000000..6b8f896
--- /dev/null
+++ b/fortran/src/H5Tff.F90
@@ -0,0 +1,3082 @@
+!****h* ROBODoc/H5T
+!
+! NAME
+! MODULE H5T
+!
+! PURPOSE
+! This file contains Fortran interfaces for H5T functions.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! NOTES
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new function here then you MUST add the function name to the
+! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+!*****
+
+MODULE H5T
+
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR, C_NULL_PTR
+ USE H5GLOBAL
+ IMPLICIT NONE
+
+!****t* H5T/hvl_t
+! Fortran2003 Derived Type:
+ TYPE hvl_t
+ INTEGER(size_t) :: len ! Length of VL data (in base type units)
+ TYPE(C_PTR) :: p ! Pointer to VL data
+ END TYPE hvl_t
+
+!*****
+
+ INTERFACE h5tenum_insert_f
+ MODULE PROCEDURE h5tenum_insert_f03
+ MODULE PROCEDURE h5tenum_insert_f90
+ END INTERFACE
+
+CONTAINS
+
+!
+!****s* H5T/h5topen_f
+!
+! NAME
+! h5topen_f
+!
+! PURPOSE
+! Opens named datatype.
+!
+! INPUTS
+! loc_id - location identifier
+! name - a datatype name
+! OUTPUTS
+! type_id - datatype identifier
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! tapl_id - datatype access property list identifier.
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! Added optional parameter 'tapl_id' for compatability
+! with H5Topen2. April 9, 2009.
+!
+! SOURCE
+ SUBROUTINE h5topen_f(loc_id, name, type_id, hdferr, tapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER(HID_T), INTENT(OUT) :: type_id
+ INTEGER, INTENT(OUT) :: hdferr
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id
+!*****
+ INTEGER :: namelen ! Name length
+ INTEGER(HID_T) :: tapl_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5topen_c(loc_id, name, namelen, type_id, tapl_id_default) BIND(C,NAME='h5topen_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), INTENT(IN) :: name
+ INTEGER :: namelen
+ INTEGER(HID_T), INTENT(OUT) :: type_id
+ INTEGER(HID_T) :: tapl_id_default
+ END FUNCTION h5topen_c
+ END INTERFACE
+
+ namelen = LEN(name)
+
+ tapl_id_default = H5P_DEFAULT_F
+ IF(PRESENT(tapl_id)) tapl_id_default = tapl_id
+
+ hdferr = h5topen_c(loc_id, name, namelen, type_id, tapl_id_default)
+ END SUBROUTINE h5topen_f
+!
+!****s* H5T/h5tcommit_f
+!
+! NAME
+! h5tcommit_f
+!
+! PURPOSE
+! Commits a transient datatype to a file, creating a
+! new named datatype.
+!
+! INPUTS
+! loc_id - location identifier
+! name - name of the datatype to be stored
+! at the specified location
+! type_id - identifier of a datatype to be stored
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! lcpl_id - Link creation property list
+! tcpl_id - Datatype creation property list
+! tapl_id - Datatype access property list
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! - Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! - Added optional parameters introduced in version 1.8
+! M. Scot Breitenfeld
+!
+! SOURCE
+ SUBROUTINE h5tcommit_f(loc_id, name, type_id, hdferr, &
+ lcpl_id, tcpl_id, tapl_id )
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ ! Datatype name within file or group
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! Datatype creation property list
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! Datatype access property list
+!*****
+
+ INTEGER :: namelen ! Name length
+
+ INTEGER(HID_T) :: lcpl_id_default
+ INTEGER(HID_T) :: tcpl_id_default
+ INTEGER(HID_T) :: tapl_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5tcommit_c(loc_id, name, namelen, type_id, &
+ lcpl_id_default, tcpl_id_default, tapl_id_default ) BIND(C,NAME='h5tcommit_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T) :: lcpl_id_default
+ INTEGER(HID_T) :: tcpl_id_default
+ INTEGER(HID_T) :: tapl_id_default
+ END FUNCTION h5tcommit_c
+ END INTERFACE
+
+ lcpl_id_default = H5P_DEFAULT_F
+ tcpl_id_default = H5P_DEFAULT_F
+ tapl_id_default = H5P_DEFAULT_F
+
+ IF (PRESENT(lcpl_id)) lcpl_id_default = lcpl_id
+ IF (PRESENT(tcpl_id)) tcpl_id_default = tcpl_id
+ IF (PRESENT(tapl_id)) tapl_id_default = tapl_id
+
+ namelen = LEN(name)
+
+ hdferr = h5tcommit_c(loc_id, name, namelen, type_id, &
+ lcpl_id_default, tcpl_id_default, tapl_id_default )
+
+ END SUBROUTINE h5tcommit_f
+!
+!****s* H5T/h5tcopy_f
+!
+! NAME
+! h5tcopy_f
+!
+! PURPOSE
+! Creates a copy of exisiting datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! new_type_id - identifier of datatype's copy
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tcopy_f(type_id, new_type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: new_type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tcopy_c(type_id, new_type_id) BIND(C,NAME='h5tcopy_c')
+ IMPORT :: HID_T
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: new_type_id
+ END FUNCTION h5tcopy_c
+ END INTERFACE
+
+ hdferr = h5tcopy_c(type_id, new_type_id)
+ END SUBROUTINE h5tcopy_f
+!
+!****s* H5T/h5tequal_f
+!
+! NAME
+! h5tequal_f
+!
+! PURPOSE
+! Determines whether two datatype identifiers refer
+! to the same datatype.
+!
+! INPUTS
+! type1_id - datatype identifier
+! type2_id - datatype identifier
+! OUTPUTS
+! flag - TRUE/FALSE flag to indicate
+! if two datatypes are equal
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tequal_f(type1_id, type2_id, flag, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type1_id
+ INTEGER(HID_T), INTENT(IN) :: type2_id
+ LOGICAL, INTENT(OUT) :: flag
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: c_flag
+ INTERFACE
+ INTEGER FUNCTION h5tequal_c(type1_id, type2_id, c_flag) BIND(C,NAME='h5tequal_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type1_id
+ INTEGER(HID_T), INTENT(IN) :: type2_id
+ INTEGER :: c_flag
+ END FUNCTION h5tequal_c
+ END INTERFACE
+
+ flag = .FALSE.
+ hdferr = h5tequal_c(type1_id, type2_id, c_flag)
+ IF(c_flag .GT. 0) flag = .TRUE.
+ END SUBROUTINE h5tequal_f
+!
+!****s* H5T/h5tclose_f
+!
+! NAME
+! h5tclose_f
+!
+! PURPOSE
+! Releases a datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tclose_f(type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tclose_c(type_id) BIND(C,NAME='h5tclose_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ END FUNCTION h5tclose_c
+ END INTERFACE
+
+ hdferr = h5tclose_c(type_id)
+ END SUBROUTINE h5tclose_f
+!
+!****s* H5T/h5tget_class_f
+!
+! NAME
+! h5tget_class_f
+!
+! PURPOSE
+! Returns the datatype class identifier.
+!
+! INPUTS
+! type_id - Datatype identifier
+! OUTPUTS
+! class - Class, possible values are:
+! H5T_NO_CLASS_F (-1)
+! H5T_INTEGER_F (0)
+! H5T_FLOAT_F (1)
+! H5T_TIME_F (2)
+! H5T_STRING_F (3)
+! H5T_BITFIELD_F (4)
+! H5T_OPAQUE_F (5)
+! H5T_COMPOUND_F (6)
+! H5T_REFERENCE_F (7)
+! H5T_ENUM_F (8)
+! H5T_VLEN_F (9)
+! H5T_ARRAY_F (10)
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_class_f(type_id, class, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: class
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_class_c(type_id, class) BIND(C,NAME='h5tget_class_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: class
+ END FUNCTION h5tget_class_c
+ END INTERFACE
+
+ hdferr = h5tget_class_c(type_id, class)
+ END SUBROUTINE h5tget_class_f
+!
+!****s* H5T/h5tget_size_f
+!
+! NAME
+! h5tget_size_f
+!
+! PURPOSE
+! Returns the size of a datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! size - datatype size
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_size_f(type_id, size, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER(SIZE_T), INTENT(OUT) :: size ! Datatype size
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_size_c(type_id, size) BIND(C,NAME='h5tget_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: size
+ END FUNCTION h5tget_size_c
+ END INTERFACE
+
+ hdferr = h5tget_size_c(type_id, size)
+ END SUBROUTINE h5tget_size_f
+
+!
+!****s* H5T/h5tset_size_f
+!
+! NAME
+! h5tset_size_f
+!
+! PURPOSE
+! Sets the total size for an atomic datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! size - size of the datatype
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+!
+! SOURCE
+ SUBROUTINE h5tset_size_f(type_id, size, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER(SIZE_T), INTENT(IN) :: size ! Datatype size
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_size_c(type_id, size) BIND(C,NAME='h5tset_size_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: size
+ END FUNCTION h5tset_size_c
+ END INTERFACE
+
+ hdferr = h5tset_size_c(type_id, size)
+ END SUBROUTINE h5tset_size_f
+
+!
+!****s* H5T/h5tget_order_f
+!
+! NAME
+! h5tget_order_f
+!
+! PURPOSE
+! Returns the byte order of an atomic datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! order - byte order for the datatype, possible
+! values are:
+! H5T_ORDER_LE_F
+! H5T_ORDER_BE_F
+! H5T_ORDER_VAX_F (not implemented yet)
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_order_f(type_id, order, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER, INTENT(OUT) :: order
+ ! Datatype byte order, possible values are:
+ ! H5T_ORDER_LE_F
+ ! H5T_ORDER_BE_F
+ ! H5T_ORDER_VAX_F
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_order_c(type_id, order) BIND(C,NAME='h5tget_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: order
+ END FUNCTION h5tget_order_c
+ END INTERFACE
+
+ hdferr = h5tget_order_c(type_id, order)
+ END SUBROUTINE h5tget_order_f
+!
+!****s* H5T/h5tset_order_f
+!
+! NAME
+! h5tset_order_f
+!
+! PURPOSE
+! Sets the byte ordering of an atomic datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! order - datatype byte order Possible values are:
+! H5T_ORDER_LE_F
+! H5T_ORDER_BE_F
+! H5T_ORDER_VAX_F (not implemented yet)
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tset_order_f(type_id, order, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ INTEGER, INTENT(IN) :: order ! Datatype byte order, possible values
+ ! are:
+ ! H5T_ORDER_LE_F
+ ! H5T_ORDER_BE_F
+ ! H5T_ORDER_VAX_F
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_order_c(type_id, order) BIND(C,NAME='h5tset_order_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: order
+ END FUNCTION h5tset_order_c
+ END INTERFACE
+
+ hdferr = h5tset_order_c(type_id, order)
+ END SUBROUTINE h5tset_order_f
+
+!
+!****s* H5T/h5tget_precision_f
+!
+! NAME
+! h5tget_precision_f
+!
+! PURPOSE
+! Returns the precision of an atomic datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! precision - precision of the datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_precision_f(type_id, PRECISION, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: precision
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_precision_c(type_id, PRECISION) BIND(C,NAME='h5tget_precision_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: PRECISION
+ END FUNCTION h5tget_precision_c
+ END INTERFACE
+
+ hdferr = h5tget_precision_c(type_id, PRECISION)
+ END SUBROUTINE h5tget_precision_f
+
+!
+!****s* H5T/h5tset_precision_f
+!
+! NAME
+! h5tset_precision_f
+!
+! PURPOSE
+! Sets the precision of an atomic datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! precision - datatype precision
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tset_precision_f(type_id, PRECISION, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: PRECISION
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_precision_c (type_id, PRECISION) BIND(C,NAME='h5tset_precision_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: PRECISION
+ END FUNCTION h5tset_precision_c
+ END INTERFACE
+
+ hdferr = h5tset_precision_c(type_id, PRECISION)
+ END SUBROUTINE h5tset_precision_f
+
+!
+!****s* H5T/h5tget_offset_f
+!
+! NAME
+! h5tget_offset_f
+!
+! PURPOSE
+! Retrieves the bit offset of the first significant bit.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! offset - offset value
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_offset_f(type_id, offset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: offset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_offset_c(type_id, offset) BIND(C,NAME='h5tget_offset_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: offset
+ END FUNCTION h5tget_offset_c
+ END INTERFACE
+
+ hdferr = h5tget_offset_c(type_id, offset)
+ END SUBROUTINE h5tget_offset_f
+
+!
+!****s* H5T/h5tset_offset_f
+!
+! NAME
+! h5tset_offset_f
+!
+! PURPOSE
+! Sets the bit offset of the first significant bit.
+!
+! INPUTS
+! type_id - datatype identifier
+! offset - offset value
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tset_offset_f(type_id, offset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: offset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_offset_c(type_id, offset) BIND(C,NAME='h5tset_offset_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: offset
+ END FUNCTION h5tset_offset_c
+ END INTERFACE
+
+ hdferr = h5tset_offset_c(type_id, offset)
+ END SUBROUTINE h5tset_offset_f
+
+!
+!****s* H5T/h5tget_pad_f
+!
+! NAME
+! h5tget_pad_f
+!
+! PURPOSE
+! Retrieves the padding type of the least and
+! most -significant bit padding.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! lsbpad - least-significant bit padding type
+! msbpad - most-significant bit padding type
+! Possible values of padding type are:
+! H5T_PAD_ERROR_F
+! H5T_PAD_ZERO_F
+! H5T_PAD_ONE_F
+! H5T_PAD_BACKGROUND_F
+! H5T_PAD_NPAD_F
+! hdferr - Returns 0 if successful and -1 if fails
+
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_pad_f(type_id, lsbpad, msbpad, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: lsbpad
+ INTEGER, INTENT(OUT) :: msbpad
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_pad_c(type_id, lsbpad, msbpad) BIND(C,NAME='h5tget_pad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: lsbpad
+ INTEGER, INTENT(OUT) :: msbpad
+ END FUNCTION h5tget_pad_c
+ END INTERFACE
+
+ hdferr = h5tget_pad_c(type_id, lsbpad, msbpad)
+ END SUBROUTINE h5tget_pad_f
+
+!
+!****s* H5T/h5tset_pad_f
+!
+! NAME
+! h5tset_pad_f
+!
+! PURPOSE
+! Sets the least and most-significant bits padding types.
+!
+! INPUTS
+! type_id - datatype identifier
+! lsbpad - least-significant bit padding type
+! msbpad - most-significant bit padding type
+! Possible values of padding type are:
+! H5T_PAD_ERROR_F = -1
+! H5T_PAD_ZERO_F = 0
+! H5T_PAD_ONE_F = 1
+! H5T_PAD_BACKGROUND_F = 2
+! H5T_PAD_NPAD_F = 3
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_pad_f(type_id, lsbpad, msbpad, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: lsbpad
+ INTEGER, INTENT(IN) :: msbpad
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_pad_c(type_id, lsbpad, msbpad) BIND(C,NAME='h5tset_pad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: lsbpad
+ INTEGER, INTENT(IN) :: msbpad
+ END FUNCTION h5tset_pad_c
+ END INTERFACE
+
+ hdferr = h5tset_pad_c(type_id, lsbpad, msbpad)
+ END SUBROUTINE h5tset_pad_f
+
+!
+!****s* H5T/h5tget_sign_f
+!
+! NAME
+! h5tget_sign_f
+!
+! PURPOSE
+! Retrieves the sign type for an integer type.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! sign - sign type
+! Possible values are:
+! - Unsigned integer type
+! H5T_SGN_NONE_F = 0
+! - Two's complement signed integer type
+! H5T_SGN_2_F = 1
+! - error value: H5T_SGN_ERROR_F=-1
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_sign_f(type_id, sign, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: sign
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tget_sign_c(type_id, sign) BIND(C,NAME='h5tget_sign_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: sign
+ END FUNCTION h5tget_sign_c
+ END INTERFACE
+
+ hdferr = h5tget_sign_c(type_id, sign)
+ END SUBROUTINE h5tget_sign_f
+
+!
+!****s* H5T/h5tset_sign_f
+!
+! NAME
+! h5tset_sign_f
+!
+! PURPOSE
+! Sets the sign proprety for an integer type.
+!
+! INPUTS
+! type_id - datatype identifier
+! sign - sign type
+! Possible values are:
+! - Unsigned integer type
+! H5T_SGN_NONE_F = 0
+! - Two's complement signed integer type
+! H5T_SGN_2_F = 1
+! - error value: H5T_SGN_ERROR_F=-1
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_sign_f(type_id, sign, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: sign
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_sign_c(type_id, sign) BIND(C,NAME='h5tset_sign_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: sign
+ END FUNCTION h5tset_sign_c
+ END INTERFACE
+
+ hdferr = h5tset_sign_c(type_id, sign)
+ END SUBROUTINE h5tset_sign_f
+
+!
+!****s* H5T/h5tget_fields_f
+!
+! NAME
+! h5tget_fields_f
+!
+! PURPOSE
+! Retrieves floating point datatype bit field information.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! spos - sign bit-position
+! epos - exponent bit-position
+! esize - size of exponent in bits
+! mpos - mantissa position
+! msize - size of mantissa in bits
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: spos
+ INTEGER(SIZE_T), INTENT(OUT) :: epos
+ INTEGER(SIZE_T), INTENT(OUT) :: esize
+ INTEGER(SIZE_T), INTENT(OUT) :: mpos
+ INTEGER(SIZE_T), INTENT(OUT) :: msize
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tget_fields_c(type_id, spos, epos, esize, mpos, msize) &
+ BIND(C,NAME='h5tget_fields_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: spos
+ INTEGER(SIZE_T), INTENT(OUT) :: epos
+ INTEGER(SIZE_T), INTENT(OUT) :: esize
+ INTEGER(SIZE_T), INTENT(OUT) :: mpos
+ INTEGER(SIZE_T), INTENT(OUT) :: msize
+ END FUNCTION h5tget_fields_c
+ END INTERFACE
+
+ hdferr = h5tget_fields_c(type_id, spos, epos, esize, mpos, msize)
+ END SUBROUTINE h5tget_fields_f
+
+!
+!****s* H5T/h5tset_fields_f
+!
+! NAME
+! h5tset_fields_f
+!
+! PURPOSE
+! Sets locations and sizes of floating point bit fields.
+!
+! INPUTS
+! type_id - datatype identifier
+! spos - sign bit-position
+! epos - exponent bit-position
+! esize - size of exponent in bits
+! mpos - mantissa position
+! msize - size of mantissa in bits
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: spos
+ INTEGER(SIZE_T), INTENT(IN) :: epos
+ INTEGER(SIZE_T), INTENT(IN) :: esize
+ INTEGER(SIZE_T), INTENT(IN) :: mpos
+ INTEGER(SIZE_T), INTENT(IN) :: msize
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tset_fields_c(type_id, spos, epos, esize, mpos, msize) &
+ BIND(C,NAME='h5tset_fields_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: spos
+ INTEGER(SIZE_T), INTENT(IN) :: epos
+ INTEGER(SIZE_T), INTENT(IN) :: esize
+ INTEGER(SIZE_T), INTENT(IN) :: mpos
+ INTEGER(SIZE_T), INTENT(IN) :: msize
+ END FUNCTION h5tset_fields_c
+ END INTERFACE
+
+ hdferr = h5tset_fields_c(type_id, spos, epos, esize, mpos, msize)
+ END SUBROUTINE h5tset_fields_f
+
+!
+!****s* H5T/h5tget_ebias_f
+!
+! NAME
+! h5tget_ebias_f
+!
+! PURPOSE
+! Retrieves the exponent bias of a floating-point type.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! ebias - datatype exponent bias
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_ebias_f(type_id, ebias, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: ebias
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tget_ebias_c(type_id, ebias) BIND(C,NAME='h5tget_ebias_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(OUT) :: ebias
+ END FUNCTION h5tget_ebias_c
+ END INTERFACE
+
+ hdferr = h5tget_ebias_c(type_id, ebias)
+ END SUBROUTINE h5tget_ebias_f
+
+!
+!****s* H5T/h5tset_ebias_f
+!
+! NAME
+! h5tset_ebias_f
+!
+! PURPOSE
+! Sets the exponent bias of a floating-point type.
+!
+! INPUTS
+! type_id - datatype identifier
+! ebias - datatype exponent bias
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_ebias_f(type_id, ebias, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: ebias
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_ebias_c(type_id, ebias) BIND(C,NAME='h5tset_ebias_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(SIZE_T), INTENT(IN) :: ebias
+ END FUNCTION h5tset_ebias_c
+ END INTERFACE
+
+ hdferr = h5tset_ebias_c(type_id, ebias)
+ END SUBROUTINE h5tset_ebias_f
+
+!
+!****s* H5T/h5tget_norm_f
+!
+! NAME
+! h5tget_norm_f
+!
+! PURPOSE
+! Retrieves mantissa normalization of a floating-point
+! datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! norm - normalization types, valid values are:
+! H5T_NORM_IMPLIED_F
+! H5T_NORM_MSBSET_F
+! H5T_NORM_NONE_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_norm_f(type_id, norm, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: norm
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tget_norm_c(type_id, norm) BIND(C,NAME='h5tget_norm_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: norm
+ END FUNCTION h5tget_norm_c
+ END INTERFACE
+
+ hdferr = h5tget_norm_c(type_id, norm)
+ END SUBROUTINE h5tget_norm_f
+
+!
+!****s* H5T/h5tset_norm_f
+!
+! NAME
+! h5tset_norm_f
+!
+! PURPOSE
+! Sets the mantissa normalization of a floating-point datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! norm - normalization types, valid values are:
+! H5T_NORM_IMPLIED_F
+! H5T_NORM_MSBSET_F
+! H5T_NORM_NONE_F
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tset_norm_f(type_id, norm, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: norm
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_norm_c(type_id, norm) BIND(C,NAME='h5tset_norm_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: norm
+ END FUNCTION h5tset_norm_c
+ END INTERFACE
+
+ hdferr = h5tset_norm_c(type_id, norm)
+ END SUBROUTINE h5tset_norm_f
+
+!
+!****s* H5T/h5tget_inpad_f
+!
+! NAME
+! h5tget_inpad_f
+!
+! PURPOSE
+! Retrieves the internal padding type for unused bits
+! in floating-point datatypes.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! padtype - padding type for unused bits
+! Possible values of padding type are:
+! H5T_PAD_ZERO_F
+! H5T_PAD_ONE_F
+! H5T_PAD_BACKGROUND_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_inpad_f(type_id, padtype, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: padtype
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_inpad_c(type_id, padtype) BIND(C,NAME='h5tget_inpad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: padtype
+ END FUNCTION h5tget_inpad_c
+ END INTERFACE
+
+ hdferr = h5tget_inpad_c(type_id, padtype)
+ END SUBROUTINE h5tget_inpad_f
+
+!
+!****s* H5T/h5tset_inpad_f
+!
+! NAME
+! h5tset_inpad_f
+!
+! PURPOSE
+! Fills unused internal floating point bits.
+!
+! INPUTS
+! type_id - datatype identifier
+! padtype - padding type for unused bits
+! Possible values of padding type are:
+! H5T_PAD_ZERO_F
+! H5T_PAD_ONE_F
+! H5T_PAD_BACKGROUND_F
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_inpad_f(type_id, padtype, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: padtype
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_inpad_c(type_id, padtype) BIND(C,NAME='h5tset_inpad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: padtype
+ END FUNCTION h5tset_inpad_c
+ END INTERFACE
+
+ hdferr = h5tset_inpad_c(type_id, padtype)
+ END SUBROUTINE h5tset_inpad_f
+
+!
+!****s* H5T/h5tget_cset_f
+!
+! NAME
+! h5tget_cset_f
+!
+! PURPOSE
+! Retrieves the character set type of a string datatype.
+!
+! INPUTS
+! type_id - Datatype identifier
+! OUTPUTS
+! cset - Character set type of a string datatype
+! Possible values are:
+! H5T_CSET_ASCII_F
+! H5T_CSET_UTF8_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_cset_f(type_id, cset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: cset
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_cset_c(type_id, cset) BIND(C,NAME='h5tget_cset_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: cset
+ END FUNCTION h5tget_cset_c
+ END INTERFACE
+
+ hdferr = h5tget_cset_c(type_id, cset)
+ END SUBROUTINE h5tget_cset_f
+
+!
+!****s* H5T/h5tset_cset_f
+!
+! NAME
+! h5tset_cset_f
+!
+! PURPOSE
+! Sets character set to be used.
+!
+! INPUTS
+! type_id - datatype identifier
+! cset - character set type of a string datatype
+! Possible values are:
+! H5T_CSET_ASCII_F
+! H5T_CSET_UTF8_F
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_cset_f(type_id, cset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: cset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_cset_c(type_id, cset) BIND(C,NAME='h5tset_cset_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: cset
+ END FUNCTION h5tset_cset_c
+ END INTERFACE
+
+ hdferr = h5tset_cset_c(type_id, cset)
+ END SUBROUTINE h5tset_cset_f
+!
+!****s* H5T/h5tget_strpad_f
+!
+! NAME
+! h5tget_strpad_f
+!
+! PURPOSE
+! Retrieves the storage mechanism for a string datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! strpad - storage method for a string datatype
+! Possible values are:
+! H5T_STR_NULLTERM_F,
+! H5T_STR_NULLPAD_F,
+! H5T_STR_SPACEPAD_F
+! H5T_STR_ERROR_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_strpad_f(type_id, strpad, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: strpad
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_strpad_c(type_id, strpad) BIND(C,NAME='h5tget_strpad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: strpad
+ END FUNCTION h5tget_strpad_c
+ END INTERFACE
+
+ hdferr = h5tget_strpad_c(type_id, strpad)
+ END SUBROUTINE h5tget_strpad_f
+
+!
+!****s* H5T/h5tset_strpad_f
+!
+! NAME
+! h5tset_strpad_f
+!
+! PURPOSE
+! Defines the storage mechanism for character strings.
+!
+! INPUTS
+! type_id - datatype identifier
+! strpad - storage method for a string datatype
+! Possible values are:
+! H5T_STR_NULLTERM_F,
+! H5T_STR_NULLPAD_F,
+! H5T_STR_SPACEPAD_F,
+! H5T_STR_ERROR_F.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_strpad_f(type_id, strpad, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: strpad
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tset_strpad_c(type_id, strpad) BIND(C,NAME='h5tset_strpad_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: strpad
+ END FUNCTION h5tset_strpad_c
+ END INTERFACE
+
+ hdferr = h5tset_strpad_c(type_id, strpad)
+ END SUBROUTINE h5tset_strpad_f
+
+!
+!****s* H5T/h5tget_nmembers_f
+!
+! NAME
+! h5tget_nmembers_f
+!
+! PURPOSE
+! Retrieves the number of fields in a compound datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! num_members - number of members
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tget_nmembers_f(type_id, num_members, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: num_members
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_nmembers_c(type_id, num_members) BIND(C,NAME='h5tget_nmembers_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: num_members
+ END FUNCTION h5tget_nmembers_c
+ END INTERFACE
+
+ hdferr = h5tget_nmembers_c(type_id, num_members)
+ END SUBROUTINE h5tget_nmembers_f
+
+!
+!****s* H5T/h5tget_member_name_f
+!
+! NAME
+! h5tget_member_name_f
+!
+! PURPOSE
+! Retrieves the name of a field of a compound datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! index - filed index (0-based)
+! OUTPUTS
+! member_name - buffer to hold member's name
+! namelen - name length
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_member_name_f(type_id, index, member_name, namelen, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: index
+ CHARACTER(LEN=*), INTENT(OUT) :: member_name
+ INTEGER, INTENT(OUT) :: namelen
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_name_c(type_id, index, member_name, namelen) BIND(C,NAME='h5tget_member_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: index
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: member_name
+ INTEGER, INTENT(OUT) :: namelen
+ END FUNCTION h5tget_member_name_c
+ END INTERFACE
+
+ hdferr = h5tget_member_name_c(type_id, index, member_name, namelen)
+ END SUBROUTINE h5tget_member_name_f
+
+!
+!****s* H5T/h5tget_member_offset_f
+!
+! NAME
+! h5tget_member_offset_f
+!
+! PURPOSE
+! Retrieves the offset of a field of a compound datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! member_no - number of the field
+! OUTPUTS
+! offset - byte offset of the requested field
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_member_offset_f(type_id, member_no, offset, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER(SIZE_T), INTENT(OUT) :: offset
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_offset_c(type_id, member_no, offset ) BIND(C,NAME='h5tget_member_offset_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER(SIZE_T), INTENT(OUT) :: offset
+ END FUNCTION h5tget_member_offset_c
+ END INTERFACE
+
+ hdferr = h5tget_member_offset_c(type_id, member_no, offset )
+ END SUBROUTINE h5tget_member_offset_f
+!
+!****s* H5T/h5tget_member_index_f
+!
+! NAME
+! h5tget_member_index_f
+!
+! PURPOSE
+! Retrieves the index of a compound or enumeration datatype member.
+!
+! INPUTS
+! type_id - datatype identifier
+! name - name of the field or member whose index to
+! to be retrieved from the datatype.
+! OUTPUTS
+! index - 0-based index of the filed or member (0 to N-1)
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! September 26, 2002
+!
+! SOURCE
+ SUBROUTINE h5tget_member_index_f(type_id, name, index, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(OUT) :: index
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen ! Name length
+
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_index_c(type_id, name, namelen, index) BIND(C,NAME='h5tget_member_index_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: namelen
+ INTEGER, INTENT(OUT) :: index
+ END FUNCTION h5tget_member_index_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tget_member_index_c(type_id, name, namelen, index)
+ END SUBROUTINE h5tget_member_index_f
+
+
+! !$!
+! !$!****s* H5T/h5tget_member_dim_f
+! !$!
+! !$! NAME
+! !$! h5tget_member_dim_f
+! !$!
+! !$! PURPOSE
+! !$! This function is not supported in hdf5-1.4.*
+! !$!
+! !$! INPUTS
+! !$! OUTPUTS
+! !$! hdferr: - error code
+! !$! Success: 0
+! !$! Failure: -1
+! !$!
+! !$! AUTHOR
+! !$! Elena Pourmal
+! !$! August 12, 1999
+! !$!
+! !$! HISTORY
+! !$! Explicit Fortran interfaces were added for
+! !$! called C functions (it is needed for Windows
+! !$! port). March 7, 2001
+! !$!
+! !$! SOURCE
+! !$! SUBROUTINE h5tget_member_dims_f(type_id, field_idx,dims, field_dims, perm, hdferr)
+! !$!
+! !$! IMPLICIT NONE
+! !$! INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+! !$! INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of
+! !$! !field_dims, perm)
+! !$! INTEGER, INTENT(OUT) :: dims !number of dimensions of the field
+! !$!
+! !$! INTEGER(SIZE_T),DIMENSION(*), INTENT(OUT) :: field_dims !buffer to store the
+! !$! !dimensions of the field
+! !$! INTEGER, DIMENSION(*), INTENT(OUT) :: perm !buffer to store the
+! !$! !permutation vector of the field
+! !$! INTEGER, INTENT(OUT) :: hdferr ! Error code
+! !$!*****!
+! !$! INTEGER, EXTERNAL :: h5tget_member_dims_c
+! !$! hdferr = h5tget_member_dims_c(type_id, field_idx, dims, field_dims, perm)
+! !$!
+! !$! END SUBROUTINE h5tget_member_dims_f
+
+
+!****s* H5T/h5tget_array_dims_f
+!
+! NAME
+! h5tget_array_dims_f
+!
+! PURPOSE
+! Returns sizes of array dimensions.
+!
+! INPUTS
+! type_id - array datatype identifier
+! OUTPUTS
+! dims - buffer to store array datatype dimensions
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_array_dims_f(type_id, dims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) :: dims
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_array_dims_c(type_id, dims) BIND(C,NAME='h5tget_array_dims_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) :: dims
+ END FUNCTION h5tget_array_dims_c
+ END INTERFACE
+
+ hdferr = h5tget_array_dims_c(type_id, dims)
+
+ END SUBROUTINE h5tget_array_dims_f
+
+!
+!****s* H5T/h5tget_array_ndims_f
+!
+! NAME
+! h5tget_array_ndims_f
+!
+! PURPOSE
+! Returns the rank of an array datatype.
+!
+! INPUTS
+! type_id - array datatype identifier
+! OUTPUTS
+! ndims - number of array dimensions
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_array_ndims_f(type_id, ndims, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: ndims
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_array_ndims_c(type_id, ndims) BIND(C,NAME='h5tget_array_ndims_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: ndims
+ END FUNCTION h5tget_array_ndims_c
+ END INTERFACE
+
+ hdferr = h5tget_array_ndims_c(type_id, ndims)
+
+ END SUBROUTINE h5tget_array_ndims_f
+
+!
+!****s* H5T/h5tget_super_f
+!
+! NAME
+! h5tget_super_f
+!
+! PURPOSE
+! Returns the base datatype from which a datatype is derived.
+!
+! INPUTS
+! type_id - datatype identifier
+! OUTPUTS
+! base_type_id - identifier of the base type
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_super_f(type_id, base_type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: base_type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_super_c(type_id, base_type_id) BIND(C,NAME='h5tget_super_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: base_type_id
+ END FUNCTION h5tget_super_c
+ END INTERFACE
+
+ hdferr = h5tget_super_c(type_id, base_type_id)
+
+ END SUBROUTINE h5tget_super_f
+
+!
+!****s* H5T/h5tget_member_type_f
+!
+! NAME
+! h5tget_member_type_f
+!
+! PURPOSE
+! Returns the datatype of the specified member.
+!
+! INPUTS
+! type_id - compound datatype identifier
+! field_idx - field index (0-based)
+!
+! OUTPUTS
+! datatype - identifier of the member's datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_member_type_f(type_id, field_idx, datatype, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: field_idx
+ INTEGER(HID_T), INTENT(OUT) :: datatype
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_type_c(type_id, field_idx , datatype) &
+ BIND(C,NAME='h5tget_member_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: field_idx
+ INTEGER(HID_T), INTENT(OUT) :: datatype
+ END FUNCTION h5tget_member_type_c
+ END INTERFACE
+
+ hdferr = h5tget_member_type_c(type_id, field_idx , datatype)
+ END SUBROUTINE h5tget_member_type_f
+
+!
+!****s* H5T/h5tcreate_f
+!
+! NAME
+! h5tcreate_f
+!
+! PURPOSE
+! Creates a new datatype.
+!
+! INPUTS
+! class - Datatype class can be one of:
+! H5T_COMPOUND_F
+! H5T_ENUM_F
+! H5T_OPAQUE_F
+! H5T_STRING_F
+!
+! size - Size of the datatype.
+! OUTPUTS
+! type_id - Datatype identifier.
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tcreate_f(class, size, type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER , INTENT(IN) :: class
+ INTEGER(SIZE_T), INTENT(IN) :: size
+ INTEGER(HID_T) , INTENT(OUT) :: type_id
+ INTEGER , INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tcreate_c(class, size, type_id) BIND(C,NAME='h5tcreate_c')
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER, INTENT(IN) :: class
+ INTEGER(SIZE_T), INTENT(IN) :: size
+ INTEGER(HID_T), INTENT(OUT) :: type_id
+ END FUNCTION h5tcreate_c
+ END INTERFACE
+
+ hdferr = h5tcreate_c(class, size, type_id)
+ END SUBROUTINE h5tcreate_f
+
+!
+!****s* H5T/h5tinsert_f
+!
+! NAME
+! h5tinsert_f
+!
+! PURPOSE
+! Adds a new member to a compound datatype.
+!
+! INPUTS
+! type_id - compound datatype identifier
+! name - name of the field to insert
+! offset - start of the member in an instance of
+! the compound datatype
+! field_id - datatype identifier of the field to insert
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tinsert_f(type_id, name, offset, field_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER(SIZE_T), INTENT(IN) :: offset
+ INTEGER(HID_T), INTENT(IN) :: field_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5tinsert_c(type_id, name, namelen, offset, field_id) BIND(C,NAME='h5tinsert_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER(SIZE_T), INTENT(IN) :: offset
+ INTEGER(HID_T), INTENT(IN) :: field_id
+ INTEGER :: namelen
+ END FUNCTION h5tinsert_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tinsert_c(type_id, name, namelen, offset, field_id )
+ END SUBROUTINE h5tinsert_f
+
+!
+!****s* H5T/h5tpack_f
+!
+! NAME
+! h5tpack_f
+!
+! PURPOSE
+! Recursively removes padding from within a compound datatype.
+!
+! INPUTS
+! type_id - compound datatype identifier
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tpack_f(type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tpack_c(type_id) BIND(C,NAME='h5tpack_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ END FUNCTION h5tpack_c
+ END INTERFACE
+
+ hdferr = h5tpack_c(type_id)
+ END SUBROUTINE h5tpack_f
+
+! !$!
+! !$!****s* H5T/h5tinsert_array_f
+! !$!
+! !$! NAME
+! !$! h5tinsert_array_f
+! !$!
+! !$! PURPOSE
+! !$! This function is not available on hdf5-1.4.*
+! !$!
+! !$! INPUTS
+! !$! OUTPUTS
+! !$! hdferr: - error code
+! !$! Success: 0
+! !$! Failure: -1
+! !$!
+! !$! AUTHOR
+! !$! Elena Pourmal
+! !$! August 12, 1999
+! !$!
+! !$! HISTORY
+! !$! Explicit Fortran interfaces were added for
+! !$! called C functions (it is needed for Windows
+! !$! port). March 7, 2001
+! !$! SOURCE
+! SUBROUTINE h5tinsert_array_f(parent_id,name,offset, ndims, dims, member_id, hdferr, perm)
+! IMPLICIT NONE
+! INTEGER(HID_T), INTENT(IN) :: parent_id ! identifier of the parent compound datatype
+! CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member
+! INTEGER(SIZE_T), INTENT(IN) :: offset !Offset to start of new member
+! !within compound datatype
+! INTEGER, INTENT(IN) :: ndims !Dimensionality of new member.
+! !Valid values are 0 (zero) through 4 (four)
+! INTEGER(SIZE_T), DIMENSION(*), INTENT(IN) :: dims !Size of new member array
+! INTEGER(HID_T), INTENT(IN) :: member_id ! identifier of the datatype of the new member
+! INTEGER, INTENT(OUT) :: hdferr ! Error code
+! !*****!
+! INTEGER, DIMENSION(*), OPTIONAL, INTENT(IN) :: perm
+! !Pointer to buffer to store
+! !the permutation vector of the field
+! INTEGER :: namelen, sizeofperm
+! INTEGER, EXTERNAL :: h5tinsert_array_c, h5tinsert_array_c2
+! namelen = LEN(name)
+! if (present(perm)) then
+! hdferr = h5tinsert_array_c(parent_id, name, namelen, offset, ndims,dims, member_id, perm)
+! else
+! hdferr = h5tinsert_array_c2(parent_id, name, namelen, offset, ndims,dims, member_id)
+! end if
+!
+! END SUBROUTINE h5tinsert_array_f
+
+!
+!****s* H5T/h5tarray_create_f
+!
+! NAME
+! h5tarray_create_f
+!
+! PURPOSE
+! Creates an array datatype object.
+!
+! INPUTS
+! base_id - datatype identifier for the array
+! base datatype
+! rank - rank of the array
+! dims - array dimension sizes
+! OUTPUTS
+! type_id - array datatype identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tarray_create_f(base_id, rank, dims, type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: base_id
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims
+ INTEGER(HID_T), INTENT(OUT) :: type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tarray_create_c(base_id, rank, dims, type_id) BIND(C,NAME='h5tarray_create_c')
+ IMPORT :: HID_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: base_id
+ INTEGER, INTENT(IN) :: rank
+ INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims
+ INTEGER(HID_T), INTENT(OUT) :: type_id
+ END FUNCTION h5tarray_create_c
+ END INTERFACE
+
+ hdferr = h5tarray_create_c(base_id, rank, dims, type_id)
+
+ END SUBROUTINE h5tarray_create_f
+
+!
+!****s* H5T/h5tenum_create_f
+!
+! NAME
+! h5tenum_create_f
+!
+! PURPOSE
+! Creates a new enumeration datatype.
+!
+! INPUTS
+! parent_id - datatype identifier for base datatype
+! OUTPUTS
+! new_type_id - datatype identifier for the enumeration datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tenum_create_f(parent_id, new_type_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: parent_id
+ INTEGER(HID_T), INTENT(OUT) :: new_type_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tenum_create_c(parent_id, new_type_id) BIND(C,NAME='h5tenum_create_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: parent_id
+ INTEGER(HID_T), INTENT(OUT) :: new_type_id
+ END FUNCTION h5tenum_create_c
+ END INTERFACE
+
+ hdferr = h5tenum_create_c(parent_id, new_type_id)
+ END SUBROUTINE h5tenum_create_f
+!
+!****s* H5T/h5tenum_nameof_f
+!
+! NAME
+! h5tenum_nameof_f
+!
+! PURPOSE
+! Returns the symbol name corresponding to a specified
+! member of an enumeration datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! value - value of the enumeration datatype
+! namelen - name buffer size
+! OUTPUTS
+! name - buffer to hold symbol name
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! NOTE
+! According to the standard: Because an INTENT(OUT) variable is considered undefined
+! on entry to the procedure, any default initialization specified for its type will
+! be applied. So we need to blank out the "name" to be portable and eliminate any
+! characters the "name' may contain upon entry, depending on compiler implementation.
+! SOURCE
+ SUBROUTINE h5tenum_nameof_f(type_id, value, namelen, name, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(OUT) :: name
+ INTEGER(SIZE_T), INTENT(IN) :: namelen
+ INTEGER, INTENT(IN) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tenum_nameof_c(type_id, value, name, namelen) BIND(C,NAME='h5tenum_nameof_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name
+ INTEGER(SIZE_T), INTENT(IN) :: namelen
+ INTEGER, INTENT(IN) :: value
+ END FUNCTION h5tenum_nameof_c
+ END INTERFACE
+
+ name(1:LEN(name)) = ' '
+
+ hdferr = h5tenum_nameof_c(type_id, value, name, namelen)
+ END SUBROUTINE h5tenum_nameof_f
+!
+!****s* H5T/h5tenum_valuof_f
+!
+! NAME
+! h5tenum_valuof_f
+!
+! PURPOSE
+! Returns the value corresponding to a specified
+! member of an enumeration datatype.
+!
+! INPUTS
+! type_id - datatype identifier
+! name - symbol name
+! OUTPUTS
+! value - value of the enumeration datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+!
+! SOURCE
+ SUBROUTINE h5tenum_valueof_f(type_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(OUT) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5tenum_valueof_c(type_id, name, namelen, value) &
+ BIND(C,NAME='h5tenum_valueof_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: namelen
+ INTEGER, INTENT(OUT) :: value
+ END FUNCTION h5tenum_valueof_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_valueof_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_valueof_f
+
+!
+!****s* H5T/h5tget_member_value_f
+!
+! NAME
+! h5tget_member_value_f
+!
+! PURPOSE
+! Returns the value of an enumeration datatype member.
+!
+! INPUTS
+! type_id - datatype identifier
+! member_no - number of the enumeration datatype member
+! OUTPUTS
+! value - value of the enumeration datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_member_value_f(type_id, member_no, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER, INTENT(OUT) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_value_c(type_id, member_no, value) &
+ BIND(C,NAME='h5tget_member_value_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER, INTENT(OUT) :: value
+ END FUNCTION h5tget_member_value_c
+ END INTERFACE
+
+ hdferr = h5tget_member_value_c(type_id, member_no, value)
+ END SUBROUTINE h5tget_member_value_f
+
+!
+!****s* H5T/h5tset_tag_f
+!
+! NAME
+! h5tset_tag_f
+!
+! PURPOSE
+! Tags an opaque datatype.
+!
+! INPUTS
+! type_id - identifier for opaque datatype
+! tag - unique ASCII string with which the opaque
+! datatype is to be tagged.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tset_tag_f(type_id, tag, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: tag
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: taglen
+
+ INTERFACE
+ INTEGER FUNCTION h5tset_tag_c(type_id, tag, taglen) BIND(C,NAME='h5tset_tag_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: tag
+ INTEGER :: taglen
+ END FUNCTION h5tset_tag_c
+ END INTERFACE
+
+ taglen = LEN(tag)
+ hdferr = h5tset_tag_c(type_id, tag, taglen)
+ END SUBROUTINE h5tset_tag_f
+
+!
+!****s* H5T/h5tget_tag_f
+!
+! NAME
+! h5tget_tag_f
+!
+! PURPOSE
+! Gets the tag associated with an opaque datatype.
+!
+! INPUTS
+! type_id - identifier for opaque datatype
+! OUTPUTS
+! tag - unique ASCII string associated with opaque
+! datatype
+! taglen - Length of tag
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tget_tag_f(type_id, tag,taglen, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(OUT) :: tag
+ INTEGER, INTENT(OUT) :: taglen
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER(SIZE_T):: tag_size ! Declared character length of tab
+ INTERFACE
+ INTEGER FUNCTION h5tget_tag_c(type_id, tag, tag_size, taglen) &
+ BIND(C,NAME='h5tget_tag_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: tag
+ INTEGER(SIZE_T), INTENT(IN) :: tag_size
+ INTEGER, INTENT(OUT) :: taglen
+ END FUNCTION h5tget_tag_c
+ END INTERFACE
+
+ tag_size = LEN(tag)
+ hdferr = h5tget_tag_c(type_id, tag, tag_size, taglen )
+ END SUBROUTINE h5tget_tag_f
+
+!
+!****s* H5T/h5tvlen_create_f
+!
+! NAME
+! h5tvlen_create_f
+!
+! PURPOSE
+! Creates a new variable-length datatype.
+!
+! INPUTS
+! type_id - identifier iof base datatype
+! OUTPUTS
+! vltype_id - identifier for VL datatype
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! Wednesday, October 23, 2002
+!
+! NOTES
+! Only basic Fortran base datatypes are supported
+!
+! SOURCE
+ SUBROUTINE h5tvlen_create_f(type_id, vltype_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: vltype_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tvlen_create_c(type_id, vltype_id) BIND(C,NAME='h5tvlen_create_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER(HID_T), INTENT(OUT) :: vltype_id
+ END FUNCTION h5tvlen_create_c
+ END INTERFACE
+
+ hdferr = h5tvlen_create_c(type_id, vltype_id)
+ END SUBROUTINE h5tvlen_create_f
+
+!
+!****s* H5T/h5tis_variable_str_f
+!
+! NAME
+! h5tis_variable_str_f
+!
+! PURPOSE
+! Determines whether a dattype is a variable string.
+!
+! INPUTS
+! type_id - datartpe identifier
+! OUTPUTS
+! status - flag to indicate if datatype
+! is a variable string ( TRUE or FALSE)
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! March 12, 2003
+!
+! SOURCE
+ SUBROUTINE h5tis_variable_str_f(type_id, status, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ LOGICAL, INTENT(OUT) :: status
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: flag ! "TRUE/FALSE/ERROR from C"
+
+ INTERFACE
+ INTEGER FUNCTION h5tis_variable_str_c(type_id, flag) &
+ BIND(C,NAME='h5tis_variable_str_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER :: flag
+ END FUNCTION h5tis_variable_str_c
+ END INTERFACE
+
+ hdferr = h5tis_variable_str_c(type_id, flag)
+ status = .TRUE.
+ IF (flag .EQ. 0) status = .FALSE.
+
+ END SUBROUTINE h5tis_variable_str_f
+
+!
+!****s* H5T/h5tget_member_class_f
+!
+! NAME
+! h5tget_member_class_f
+!
+! PURPOSE
+! Returns datatype class of compound datatype member.
+!
+! INPUTS
+! type_id - datartpe identifier
+! member_no - index of compound datatype member
+! OUTPUTS
+! class - class type for compound dadtype member
+! Valid classes:
+! H5T_NO_CLASS_F (error)
+! H5T_INTEGER_F
+! H5T_FLOAT_F
+! H5T_TIME_F
+! H5T_STRING_F
+! H5T_BITFIELD_F
+! H5T_OPAQUE_F
+! H5T_COMPOUND_F
+! H5T_REFERENCE_F
+! H5T_ENUM_F
+! H5T_VLEN_F
+! H5T_ARRAY_F
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! April 6, 2005
+!
+! SOURCE
+ SUBROUTINE h5tget_member_class_f(type_id, member_no, class, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER, INTENT(OUT) :: class
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_member_class_c(type_id, member_no, class) &
+ BIND(C,NAME='h5tget_member_class_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ INTEGER, INTENT(IN) :: member_no
+ INTEGER, INTENT(OUT) :: class
+ END FUNCTION h5tget_member_class_c
+ END INTERFACE
+
+ hdferr = h5tget_member_class_c(type_id, member_no, class)
+
+ END SUBROUTINE h5tget_member_class_f
+
+!
+!****s* H5T/h5tcommit_anon_f
+!
+! NAME
+! h5tcommit_anon_f
+!
+! PURPOSE
+! Commits a transient datatype to a file,
+! creating a new named datatype,
+! but does not link it into the file structure.
+!
+! INPUTS
+! loc_id - A file or group identifier specifying the file
+! in which the new named datatype is to be created.
+! dtype_id - A datatype identifier.
+!
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+! OPTIONAL PARAMETERS
+! tcpl_id - A datatype creation property list identifier.
+! (H5P_DEFAULT_F for the default property list.)
+! tapl_id - A datatype access property list identifier.
+! should always be passed as the value H5P_DEFAULT_F.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 25, 2008
+!
+! SOURCE
+ SUBROUTINE h5tcommit_anon_f(loc_id, dtype_id, hdferr, tcpl_id, tapl_id)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER, INTENT(OUT) :: hdferr
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id
+ INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id
+!*****
+ INTEGER(HID_T) :: tcpl_id_default
+ INTEGER(HID_T) :: tapl_id_default
+
+ INTERFACE
+ INTEGER FUNCTION h5tcommit_anon_c(loc_id, dtype_id, &
+ tcpl_id_default, tapl_id_default) BIND(C,NAME='h5tcommit_anon_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER(HID_T) :: tcpl_id_default
+ INTEGER(HID_T) :: tapl_id_default
+ END FUNCTION h5tcommit_anon_c
+ END INTERFACE
+
+ tcpl_id_default = H5P_DEFAULT_F
+ tapl_id_default = H5P_DEFAULT_F
+
+ IF(PRESENT(tcpl_id)) tcpl_id_default = tcpl_id
+ IF(PRESENT(tapl_id)) tapl_id_default = tapl_id
+
+ hdferr = h5tcommit_anon_c(loc_id, dtype_id, &
+ tcpl_id_default, tapl_id_default )
+
+ END SUBROUTINE h5tcommit_anon_f
+
+!
+!****s* H5T/h5tcommitted_f
+!
+! NAME
+! h5tcommitted_f
+!
+! PURPOSE
+! Determines whether a datatype is a named type or a transient type.
+!
+! INPUTS
+! dtype_id - A datatype identifier.
+!
+! OUTPUTS
+! committed - .TRUE., if the datatype has been committed
+! .FALSE., if the datatype has not been committed.
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! M. Scot Breitenfeld
+! February 25, 2008
+!
+! SOURCE
+ SUBROUTINE h5tcommitted_f(dtype_id, committed, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ LOGICAL, INTENT(OUT) :: committed
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tcommitted_c(dtype_id) BIND(C,NAME='h5tcommitted_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ END FUNCTION h5tcommitted_c
+ END INTERFACE
+
+ hdferr = h5tcommitted_c(dtype_id)
+
+ IF(hdferr.GT.0)THEN
+ committed = .TRUE.
+ hdferr = 0
+ ELSE IF(hdferr.EQ.0)THEN
+ committed = .FALSE.
+ hdferr = 0
+ ELSE
+ hdferr = -1
+ ENDIF
+
+ END SUBROUTINE h5tcommitted_f
+
+!
+!****s* H5T/H5Tdecode_f
+!
+! NAME
+! H5Tdecode_f
+!
+! PURPOSE
+! Decode a binary object description of data type and return a new object handle.
+! INPUTS
+! buf - Buffer for the data space object to be decoded.
+! obj_id - Object ID
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 9, 2008
+!
+! SOURCE
+ SUBROUTINE h5tdecode_f(buf, obj_id, hdferr)
+ IMPLICIT NONE
+ CHARACTER(LEN=*), INTENT(IN) :: buf
+ INTEGER(HID_T), INTENT(OUT) :: obj_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tdecode_c(buf, obj_id) BIND(C,NAME='h5tdecode_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: buf
+ INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
+ END FUNCTION h5tdecode_c
+ END INTERFACE
+
+ hdferr = h5tdecode_c(buf, obj_id)
+
+ END SUBROUTINE h5tdecode_f
+
+!
+!****s* H5T/H5Tencode_f
+!
+! NAME
+! H5Tencode_f
+!
+! PURPOSE
+! Encode a data type object description into a binary buffer.
+!
+! INPUTS
+! obj_id - Identifier of the object to be encoded.
+! buf - Buffer for the object to be encoded into.
+! nalloc - The size of the allocated buffer.
+! OUTPUTS
+! nalloc - The size of the buffer needed.
+! hdferr - Returns 0 if successful and -1 if fails.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 9, 2008
+! SOURCE
+ SUBROUTINE h5tencode_f(obj_id, buf, nalloc, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: obj_id
+ CHARACTER(LEN=*), INTENT(OUT) :: buf
+ INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+
+ INTERFACE
+ INTEGER FUNCTION h5tencode_c(buf, obj_id, nalloc) BIND(C,NAME='h5tencode_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: obj_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: buf
+ INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
+ END FUNCTION h5tencode_c
+ END INTERFACE
+
+ hdferr = h5tencode_c(buf, obj_id, nalloc)
+
+ END SUBROUTINE h5tencode_f
+
+!
+!****s* H5T/h5tget_create_plist_f
+!
+! NAME
+! h5tget_create_plist_f
+!
+! PURPOSE
+! Returns a copy of a datatype creation property list.
+!
+! INPUTS
+! dtype_id - Datatype identifier
+! OUTPUTS
+! dtpl_id - Datatype property list identifier
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 9, 2008
+!
+! SOURCE
+ SUBROUTINE h5tget_create_plist_f(dtype_id, dtpl_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER(HID_T), INTENT(OUT) :: dtpl_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_create_plist_c(dtype_id, dtpl_id) BIND(C,NAME='h5tget_create_plist_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER(HID_T), INTENT(OUT) :: dtpl_id
+ END FUNCTION h5tget_create_plist_c
+ END INTERFACE
+
+ hdferr = h5tget_create_plist_c(dtype_id, dtpl_id)
+ END SUBROUTINE h5tget_create_plist_f
+
+!
+!****s* H5T/h5tcompiler_conv_f
+!
+! NAME
+! h5tcompiler_conv_f
+!
+! PURPOSE
+! Check whether the library’s default conversion is hard conversion.R
+!
+! INPUTS
+! src_id - Identifier for the source datatype.
+! dst_id - Identifier for the destination datatype.
+! OUTPUTS
+! flag - TRUE for compiler conversion, FALSE for library conversion
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! April 9, 2008
+! SOURCE
+ SUBROUTINE h5tcompiler_conv_f( src_id, dst_id, flag, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: src_id
+ INTEGER(HID_T), INTENT(IN) :: dst_id
+ LOGICAL, INTENT(OUT) :: flag
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: c_flag
+
+ INTERFACE
+ INTEGER FUNCTION h5tcompiler_conv_c(src_id, dst_id, c_flag) BIND(C,NAME='h5tcompiler_conv_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: src_id
+ INTEGER(HID_T), INTENT(IN) :: dst_id
+ INTEGER :: c_flag
+ END FUNCTION h5tcompiler_conv_c
+ END INTERFACE
+
+ hdferr = h5tcompiler_conv_c(src_id, dst_id, c_flag)
+
+ flag = .FALSE.
+ IF(c_flag .GT. 0) flag = .TRUE.
+
+ END SUBROUTINE h5tcompiler_conv_f
+
+!
+!****s* H5T/h5tget_native_type_f
+!
+! NAME
+! h5tget_native_type_f
+!
+! PURPOSE
+! Returns the native datatype of a specified datatype.
+!
+! INPUTS
+! dtype_id - Datatype identifier for the dataset datatype.
+!
+! direction - Direction of search:
+! H5T_DIR_DEFAULT, default direction is inscendent,
+! H5T_DIR_ASCEND , in inscendent order,
+! H5T_DIR_DESCEND, in descendent order.
+!
+! * NOTE: In C it is defined as a structure: H5T_direction_t
+!
+! OUTPUTS
+! native_dtype_id - The native datatype identifier for the specified dataset datatype
+! hdferr - Returns 0 if successful and -1 if fails
+! AUTHOR
+! M. Scot Breitenfeld
+! June 18, 2008
+! SOURCE
+ SUBROUTINE h5tget_native_type_f(dtype_id, direction, native_dtype_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER, INTENT(IN) :: direction
+ INTEGER(HID_T), INTENT(OUT) :: native_dtype_id
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTERFACE
+ INTEGER FUNCTION h5tget_native_type_c(dtype_id, direction, native_dtype_id) BIND(C,NAME='h5tget_native_type_c')
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: dtype_id
+ INTEGER, INTENT(IN) :: direction
+ INTEGER(HID_T), INTENT(OUT) :: native_dtype_id
+ END FUNCTION h5tget_native_type_c
+ END INTERFACE
+
+ hdferr = h5tget_native_type_c(dtype_id, direction, native_dtype_id)
+ END SUBROUTINE h5tget_native_type_f
+
+!****s* H5T/H5Tconvert_f_F03
+!
+! NAME
+! H5Tconvert_f
+!
+! PURPOSE
+! Converts data from between specified datatypes.
+!
+! Inputs:
+! src_id - Identifier for the source datatype.
+! dst_id - Identifier for the destination datatype.
+! nelmts - Size of array buf.
+! buf - Array containing pre-conversion values.
+! background - Optional background buffer.
+! plist_id - Dataset transfer property list identifier.
+!
+! Outputs:
+! buf - Array containing post-conversion values.
+! hdferr - error code:
+! 0 on success and -1 on failure
+! AUTHOR
+! M. Scot Breitenfeld
+! Decemember 8, 2008
+!
+! Fortran2003 Interface:
+ SUBROUTINE h5tconvert_f(src_id, dst_id, nelmts, buf, hdferr, background, plist_id)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: src_id
+ INTEGER(HID_T) , INTENT(IN) :: dst_id
+ INTEGER(SIZE_T), INTENT(IN) :: nelmts
+ TYPE(C_PTR) , INTENT(INOUT) :: buf
+ INTEGER , INTENT(OUT) :: hdferr
+ TYPE(C_PTR) , INTENT(INOUT), OPTIONAL :: background
+ INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: plist_id
+!*****
+ INTEGER(HID_T) :: plist_id_default
+ TYPE(C_PTR) :: background_default
+
+ INTERFACE
+ INTEGER FUNCTION h5tconvert_c(src_id, dst_id, nelmts, buf, background, plist_id) &
+ BIND(C, NAME='h5tconvert_c')
+ IMPORT :: c_ptr
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: src_id
+ INTEGER(HID_T) , INTENT(IN) :: dst_id
+ INTEGER(SIZE_T), INTENT(IN) :: nelmts
+ TYPE(C_PTR) , VALUE :: buf
+ TYPE(C_PTR) , VALUE :: background
+ INTEGER(HID_T) , INTENT(IN) :: plist_id
+ END FUNCTION h5tconvert_c
+ END INTERFACE
+
+ plist_id_default = H5P_DEFAULT_F
+ IF(PRESENT(plist_id)) plist_id_default = plist_id
+
+ background_default = C_NULL_PTR
+ IF(PRESENT(background)) background_default = background
+
+ hdferr = H5Tconvert_c(src_id, dst_id, nelmts, buf, background_default, plist_id_default)
+
+ END SUBROUTINE h5tconvert_f
+!
+!****s* H5T/h5tenum_insert_f90
+!
+! NAME
+! h5tenum_insert_f
+!
+! PURPOSE
+! Inserts a new enumeration datatype member.
+!
+! INPUTS
+! type_id - Datatype identifier for the enumeration datatype.
+! name - Datatype identifier.
+! value - Value of the new member.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tenum_insert_f90(type_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+ INTERFACE
+ INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value) BIND(C,NAME='h5tenum_insert_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: value
+ INTEGER :: namelen
+ END FUNCTION h5tenum_insert_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_insert_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_insert_f90
+
+!
+!****s* H5T/h5tenum_insert_f03
+!
+! NAME
+! h5tenum_insert_f
+!
+! PURPOSE
+! Inserts a new enumeration datatype member.
+!
+! INPUTS
+! type_id - Datatype identifier for the enumeration datatype.
+! name - Datatype identifier.
+! value - Pointer to the value of the new member.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 6, 2015
+!
+! HISTORY
+! F2003 implementation of function
+! SOURCE
+ SUBROUTINE h5tenum_insert_f03(type_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ TYPE(C_PTR) , INTENT(IN) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5tenum_insert_ptr_c(type_id, name, namelen, value) &
+ BIND(C, NAME='h5tenum_insert_ptr_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ TYPE(C_PTR), VALUE :: value
+ END FUNCTION h5tenum_insert_ptr_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_insert_ptr_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_insert_f03
+
+END MODULE H5T
diff --git a/fortran/src/H5Tff.f90 b/fortran/src/H5Tff.f90
deleted file mode 100644
index 4b4c0b6..0000000
--- a/fortran/src/H5Tff.f90
+++ /dev/null
@@ -1,3105 +0,0 @@
-!****h* ROBODoc/H5T
-!
-! NAME
-! MODULE H5T
-!
-! PURPOSE
-! This file contains Fortran interfaces for H5T functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
-!
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5T function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5T
-
- USE H5GLOBAL
-
-CONTAINS
-
-!
-!****s* H5T/h5topen_f
-!
-! NAME
-! h5topen_f
-!
-! PURPOSE
-! Opens named datatype.
-!
-! INPUTS
-! loc_id - location identifier
-! name - a datatype name
-! OUTPUTS
-! type_id - datatype identifier
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! tapl_id - datatype access property list identifier.
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! Added optional parameter 'tapl_id' for compatability
-! with H5Topen2. April 9, 2009.
-!
-! SOURCE
- SUBROUTINE h5topen_f(loc_id, name, type_id, hdferr, tapl_id)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Datatype name within file or group
- INTEGER(HID_T), INTENT(OUT) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! datatype access property list identifier
-!*****
- INTEGER :: namelen ! Name length
- INTEGER(HID_T) :: tapl_id_default
-
- INTERFACE
- INTEGER FUNCTION h5topen_c(loc_id, name, namelen, type_id, tapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TOPEN_C'::h5topen_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference ::name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER(HID_T), INTENT(OUT) :: type_id
- INTEGER(HID_T) :: tapl_id_default
- END FUNCTION h5topen_c
- END INTERFACE
-
- namelen = LEN(name)
-
- tapl_id_default = H5P_DEFAULT_F
- IF(PRESENT(tapl_id)) tapl_id_default = tapl_id
-
- hdferr = h5topen_c(loc_id, name, namelen, type_id, tapl_id_default)
- END SUBROUTINE h5topen_f
-!
-!****s* H5T/h5tcommit_f
-!
-! NAME
-! h5tcommit_f
-!
-! PURPOSE
-! Commits a transient datatype to a file, creating a
-! new named datatype.
-!
-! INPUTS
-! loc_id - location identifier
-! name - name of the datatype to be stored
-! at the specified location
-! type_id - identifier of a datatype to be stored
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! lcpl_id - Link creation property list
-! tcpl_id - Datatype creation property list
-! tapl_id - Datatype access property list
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! - Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! - Added optional parameters introduced in version 1.8
-! M. Scot Breitenfeld
-!
-! SOURCE
- SUBROUTINE h5tcommit_f(loc_id, name, type_id, hdferr, &
- lcpl_id, tcpl_id, tapl_id )
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
- CHARACTER(LEN=*), INTENT(IN) :: name
- ! Datatype name within file or group
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! Datatype creation property list
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! Datatype access property list
-!*****
-
- INTEGER :: namelen ! Name length
-
- INTEGER(HID_T) :: lcpl_id_default
- INTEGER(HID_T) :: tcpl_id_default
- INTEGER(HID_T) :: tapl_id_default
-
- INTERFACE
- INTEGER FUNCTION h5tcommit_c(loc_id, name, namelen, type_id, &
- lcpl_id_default, tcpl_id_default, tapl_id_default )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOMMIT_C'::h5tcommit_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference ::name
- INTEGER(HID_T), INTENT(IN) :: loc_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER :: namelen
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T) :: lcpl_id_default
- INTEGER(HID_T) :: tcpl_id_default
- INTEGER(HID_T) :: tapl_id_default
- END FUNCTION h5tcommit_c
- END INTERFACE
-
- lcpl_id_default = H5P_DEFAULT_F
- tcpl_id_default = H5P_DEFAULT_F
- tapl_id_default = H5P_DEFAULT_F
-
- IF (PRESENT(lcpl_id)) lcpl_id_default = lcpl_id
- IF (PRESENT(tcpl_id)) tcpl_id_default = tcpl_id
- IF (PRESENT(tapl_id)) tapl_id_default = tapl_id
-
- namelen = LEN(name)
-
- hdferr = h5tcommit_c(loc_id, name, namelen, type_id, &
- lcpl_id_default, tcpl_id_default, tapl_id_default )
-
- END SUBROUTINE h5tcommit_f
-!
-!****s* H5T/h5tcopy_f
-!
-! NAME
-! h5tcopy_f
-!
-! PURPOSE
-! Creates a copy of exisiting datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! new_type_id - identifier of datatype's copy
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tcopy_f(type_id, new_type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(HID_T), INTENT(OUT) :: new_type_id
- ! Identifier of datatype's copy
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tcopy_c(type_id, new_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOPY_C'::h5tcopy_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(OUT) :: new_type_id
- END FUNCTION h5tcopy_c
- END INTERFACE
-
- hdferr = h5tcopy_c(type_id, new_type_id)
- END SUBROUTINE h5tcopy_f
-!
-!****s* H5T/h5tequal_f
-!
-! NAME
-! h5tequal_f
-!
-! PURPOSE
-! Determines whether two datatype identifiers refer
-! to the same datatype.
-!
-! INPUTS
-! type1_id - datatype identifier
-! type2_id - datatype identifier
-! OUTPUTS
-! flag - TRUE/FALSE flag to indicate
-! if two datatypes are equal
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tequal_f(type1_id, type2_id, flag, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type1_id ! Datatype identifier
- INTEGER(HID_T), INTENT(IN) :: type2_id ! Datatype identifier
- LOGICAL, INTENT(OUT) :: flag ! TRUE/FALSE flag to indicate if two
- ! datatypes are equal
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: c_flag
- INTERFACE
- INTEGER FUNCTION h5tequal_c(type1_id, type2_id, c_flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TEQUAL_C'::h5tequal_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type1_id
- INTEGER(HID_T), INTENT(IN) :: type2_id
- INTEGER :: c_flag
- END FUNCTION h5tequal_c
- END INTERFACE
-
- flag = .FALSE.
- hdferr = h5tequal_c(type1_id, type2_id, c_flag)
- if(c_flag .gt. 0) flag = .TRUE.
- END SUBROUTINE h5tequal_f
-!
-!****s* H5T/h5tclose_f
-!
-! NAME
-! h5tclose_f
-!
-! PURPOSE
-! Releases a datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tclose_f(type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tclose_c(type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCLOSE_C'::h5tclose_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- END FUNCTION h5tclose_c
- END INTERFACE
-
- hdferr = h5tclose_c(type_id)
- END SUBROUTINE h5tclose_f
-!
-!****s* H5T/h5tget_class_f
-!
-! NAME
-! h5tget_class_f
-!
-! PURPOSE
-! Returns the datatype class identifier.
-!
-! INPUTS
-! type_id - Datatype identifier
-! OUTPUTS
-! class - Class, possible values are:
-! H5T_NO_CLASS_F (-1)
-! H5T_INTEGER_F (0)
-! H5T_FLOAT_F (1)
-! H5T_TIME_F (2)
-! H5T_STRING_F (3)
-! H5T_BITFIELD_F (4)
-! H5T_OPAQUE_F (5)
-! H5T_COMPOUND_F (6)
-! H5T_REFERENCE_F (7)
-! H5T_ENUM_F (8)
-! H5T_VLEN_F (9)
-! H5T_ARRAY_F (10)
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_class_f(type_id, class, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: class
- INTEGER, INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_class_c(type_id, class)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_CLASS_C'::h5tget_class_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: class
- END FUNCTION h5tget_class_c
- END INTERFACE
-
- hdferr = h5tget_class_c(type_id, class)
- END SUBROUTINE h5tget_class_f
-!
-!****s* H5T/h5tget_size_f
-!
-! NAME
-! h5tget_size_f
-!
-! PURPOSE
-! Returns the size of a datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! size - datatype size
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_size_f(type_id, size, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(OUT) :: size ! Datatype size
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_size_c(type_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_SIZE_C'::h5tget_size_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(OUT) :: size
- END FUNCTION h5tget_size_c
- END INTERFACE
-
- hdferr = h5tget_size_c(type_id, size)
- END SUBROUTINE h5tget_size_f
-
-!
-!****s* H5T/h5tset_size_f
-!
-! NAME
-! h5tset_size_f
-!
-! PURPOSE
-! Sets the total size for an atomic datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! size - size of the datatype
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-!
-! SOURCE
- SUBROUTINE h5tset_size_f(type_id, size, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(IN) :: size ! Datatype size
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_size_c(type_id, size)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_SIZE_C'::h5tset_size_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(IN) :: size
- END FUNCTION h5tset_size_c
- END INTERFACE
-
- hdferr = h5tset_size_c(type_id, size)
- END SUBROUTINE h5tset_size_f
-
-!
-!****s* H5T/h5tget_order_f
-!
-! NAME
-! h5tget_order_f
-!
-! PURPOSE
-! Returns the byte order of an atomic datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! order - byte order for the datatype, possible
-! values are:
-! H5T_ORDER_LE_F
-! H5T_ORDER_BE_F
-! H5T_ORDER_VAX_F (not implemented yet)
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_order_f(type_id, order, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: order
- ! Datatype byte order, possible values are:
- ! H5T_ORDER_LE_F
- ! H5T_ORDER_BE_F
- ! H5T_ORDER_VAX_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_order_c(type_id, order)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_ORDER_C'::h5tget_order_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: order
- END FUNCTION h5tget_order_c
- END INTERFACE
-
- hdferr = h5tget_order_c(type_id, order)
- END SUBROUTINE h5tget_order_f
-!
-!****s* H5T/h5tset_order_f
-!
-! NAME
-! h5tset_order_f
-!
-! PURPOSE
-! Sets the byte ordering of an atomic datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! order - datatype byte order Possible values are:
-! H5T_ORDER_LE_F
-! H5T_ORDER_BE_F
-! H5T_ORDER_VAX_F (not implemented yet)
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tset_order_f(type_id, order, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: order ! Datatype byte order, possible values
- ! are:
- ! H5T_ORDER_LE_F
- ! H5T_ORDER_BE_F
- ! H5T_ORDER_VAX_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_order_c(type_id, order)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_ORDER_C'::h5tset_order_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: order
- END FUNCTION h5tset_order_c
- END INTERFACE
-
- hdferr = h5tset_order_c(type_id, order)
- END SUBROUTINE h5tset_order_f
-
-!
-!****s* H5T/h5tget_precision_f
-!
-! NAME
-! h5tget_precision_f
-!
-! PURPOSE
-! Returns the precision of an atomic datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! precision - precision of the datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_precision_f(type_id, precision, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(OUT) :: precision ! Datatype precision
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_precision_c (type_id, precision)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_PRECISION_C'::h5tget_precision_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(OUT) :: precision
- END FUNCTION h5tget_precision_c
- END INTERFACE
-
- hdferr = h5tget_precision_c(type_id, precision)
- END SUBROUTINE h5tget_precision_f
-
-!
-!****s* H5T/h5tset_precision_f
-!
-! NAME
-! h5tset_precision_f
-!
-! PURPOSE
-! Sets the precision of an atomic datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! precision - datatype precision
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tset_precision_f(type_id, precision, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(IN) :: precision ! Datatype precision
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_precision_c (type_id, precision)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_PRECISION_C'::h5tset_precision_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(IN) :: precision
- END FUNCTION h5tset_precision_c
- END INTERFACE
-
- hdferr = h5tset_precision_c(type_id, precision)
- END SUBROUTINE h5tset_precision_f
-
-!
-!****s* H5T/h5tget_offset_f
-!
-! NAME
-! h5tget_offset_f
-!
-! PURPOSE
-! Retrieves the bit offset of the first significant bit.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! offset - offset value
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_offset_f(type_id, offset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(OUT) :: offset ! Datatype bit offset of the
- ! first significant bit
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_offset_c(type_id, offset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_OFFSET_C'::h5tget_offset_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(OUT) :: offset
- END FUNCTION h5tget_offset_c
- END INTERFACE
-
- hdferr = h5tget_offset_c(type_id, offset)
- END SUBROUTINE h5tget_offset_f
-
-!
-!****s* H5T/h5tset_offset_f
-!
-! NAME
-! h5tset_offset_f
-!
-! PURPOSE
-! Sets the bit offset of the first significant bit.
-!
-! INPUTS
-! type_id - datatype identifier
-! offset - offset value
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tset_offset_f(type_id, offset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(IN) :: offset ! Datatype bit offset of the
- ! first significant bit
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_offset_c(type_id, offset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_OFFSET_C'::h5tset_offset_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(IN) :: offset
- END FUNCTION h5tset_offset_c
- END INTERFACE
-
- hdferr = h5tset_offset_c(type_id, offset)
- END SUBROUTINE h5tset_offset_f
-
-!
-!****s* H5T/h5tget_pad_f
-!
-! NAME
-! h5tget_pad_f
-!
-! PURPOSE
-! Retrieves the padding type of the least and
-! most -significant bit padding.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! lsbpad - least-significant bit padding type
-! msbpad - most-significant bit padding type
-! Possible values of padding type are:
-! H5T_PAD_ERROR_F = -1
-! H5T_PAD_ZERO_F = 0
-! H5T_PAD_ONE_F = 1
-! H5T_PAD_BACKGROUND_F = 2
-! H5T_PAD_NPAD_F = 3
-! hdferr - Returns 0 if successful and -1 if fails
-
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_pad_f(type_id, lsbpad, msbpad, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: lsbpad ! padding type of the
- ! least significant bit
- INTEGER, INTENT(OUT) :: msbpad ! padding type of the
- ! most significant bit
- ! Possible values of padding type are:
- ! H5T__PAD_ZERO_F = 0
- ! H5T__PAD_ONE_F = 1
- ! H5T__PAD_BACKGROUND_F = 2
- ! H5T_PAD_ERROR_F = -1
- ! H5T_PAD_NPAD_F = 3
-
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_pad_c(type_id, lsbpad, msbpad)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_PAD_C'::h5tget_pad_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: lsbpad
- INTEGER, INTENT(OUT) :: msbpad
- END FUNCTION h5tget_pad_c
- END INTERFACE
-
- hdferr = h5tget_pad_c(type_id, lsbpad, msbpad)
- END SUBROUTINE h5tget_pad_f
-
-!
-!****s* H5T/h5tset_pad_f
-!
-! NAME
-! h5tset_pad_f
-!
-! PURPOSE
-! Sets the least and most-significant bits padding types.
-!
-! INPUTS
-! type_id - datatype identifier
-! lsbpad - least-significant bit padding type
-! msbpad - most-significant bit padding type
-! Possible values of padding type are:
-! H5T_PAD_ERROR_F = -1
-! H5T_PAD_ZERO_F = 0
-! H5T_PAD_ONE_F = 1
-! H5T_PAD_BACKGROUND_F = 2
-! H5T_PAD_NPAD_F = 3
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_pad_f(type_id, lsbpad, msbpad, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: lsbpad ! padding type of the
- ! least significant bit
- INTEGER, INTENT(IN) :: msbpad ! padding type of the
- ! most significant bit
- ! Possible values of padding type are:
- ! H5T_PAD_ZERO_F = 0
- ! H5T_PAD_ONE_F = 1
- ! H5T_PAD_BACKGROUND_F = 2
- ! H5T_PAD_ERROR_F = -1
- ! H5T_PAD_NPAD_F = 3
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_pad_c(type_id, lsbpad, msbpad)
- USE H5GLOBAL
- INTEGER(HID_T), INTENT(IN) :: type_id
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_PAD_C'::h5tset_pad_c
- !DEC$ENDIF
- INTEGER, INTENT(IN) :: lsbpad
- INTEGER, INTENT(IN) :: msbpad
- END FUNCTION h5tset_pad_c
- END INTERFACE
-
- hdferr = h5tset_pad_c(type_id, lsbpad, msbpad)
- END SUBROUTINE h5tset_pad_f
-
-!
-!****s* H5T/h5tget_sign_f
-!
-! NAME
-! h5tget_sign_f
-!
-! PURPOSE
-! Retrieves the sign type for an integer type.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! sign - sign type
-! Possible values are:
-! - Unsigned integer type
-! H5T_SGN_NONE_F = 0
-! - Two's complement signed integer type
-! H5T_SGN_2_F = 1
-! - error value: H5T_SGN_ERROR_F=-1
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_sign_f(type_id, sign, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: sign ! sign type for an integer type
- !possible values are:
- !Unsigned integer type H5T_SGN_NONE_F = 0
- !Two's complement signed integer type
- !H5T_SGN_2_F = 1
- !or error value: H5T_SGN_ERROR_F=-1
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_sign_c(type_id, sign)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_SIGN_C'::h5tget_sign_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: sign
- END FUNCTION h5tget_sign_c
- END INTERFACE
-
- hdferr = h5tget_sign_c(type_id, sign)
- END SUBROUTINE h5tget_sign_f
-
-!
-!****s* H5T/h5tset_sign_f
-!
-! NAME
-! h5tset_sign_f
-!
-! PURPOSE
-! Sets the sign proprety for an integer type.
-!
-! INPUTS
-! type_id - datatype identifier
-! sign - sign type
-! Possible values are:
-! - Unsigned integer type
-! H5T_SGN_NONE_F = 0
-! - Two's complement signed integer type
-! H5T_SGN_2_F = 1
-! - error value: H5T_SGN_ERROR_F=-1
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_sign_f(type_id, sign, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: sign !sign type for an integer type
- !possible values are:
- !Unsigned integer type H5T_SGN_NONE_F = 0
- !Two's complement signed integer type
- !H5T_SGN_2_F = 1
- !or error value: H5T_SGN_ERROR_F=-1
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tset_sign_c(type_id, sign)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_SIGN_C'::h5tset_sign_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: sign
- END FUNCTION h5tset_sign_c
- END INTERFACE
-
- hdferr = h5tset_sign_c(type_id, sign)
- END SUBROUTINE h5tset_sign_f
-
-!
-!****s* H5T/h5tget_fields_f
-!
-! NAME
-! h5tget_fields_f
-!
-! PURPOSE
-! Retrieves floating point datatype bit field information.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! spos - sign bit-position
-! epos - exponent bit-position
-! esize - size of exponent in bits
-! mpos - mantissa position
-! msize - size of mantissa in bits
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(OUT) :: spos ! sign bit-position
- INTEGER(SIZE_T), INTENT(OUT) :: epos ! exponent bit-position
- INTEGER(SIZE_T), INTENT(OUT) :: esize ! size of exponent in bits
- INTEGER(SIZE_T), INTENT(OUT) :: mpos ! mantissa bit-position
- INTEGER(SIZE_T), INTENT(OUT) :: msize ! size of mantissa in bits
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_fields_c(type_id, spos, epos, esize, mpos, msize)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_FIELDS_C'::h5tget_fields_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(OUT) :: spos
- INTEGER(SIZE_T), INTENT(OUT) :: epos
- INTEGER(SIZE_T), INTENT(OUT) :: esize
- INTEGER(SIZE_T), INTENT(OUT) :: mpos
- INTEGER(SIZE_T), INTENT(OUT) :: msize
- END FUNCTION h5tget_fields_c
- END INTERFACE
-
- hdferr = h5tget_fields_c(type_id, spos, epos, esize, mpos, msize)
- END SUBROUTINE h5tget_fields_f
-
-!
-!****s* H5T/h5tset_fields_f
-!
-! NAME
-! h5tset_fields_f
-!
-! PURPOSE
-! Sets locations and sizes of floating point bit fields.
-!
-! INPUTS
-! type_id - datatype identifier
-! spos - sign bit-position
-! epos - exponent bit-position
-! esize - size of exponent in bits
-! mpos - mantissa position
-! msize - size of mantissa in bits
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(IN) :: spos ! sign bit-position
- INTEGER(SIZE_T), INTENT(IN) :: epos ! exponent bit-position
- INTEGER(SIZE_T), INTENT(IN) :: esize ! size of exponent in bits
- INTEGER(SIZE_T), INTENT(IN) :: mpos ! mantissa bit-position
- INTEGER(SIZE_T), INTENT(IN) :: msize ! size of mantissa in bits
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tset_fields_c(type_id, spos, epos, esize, mpos, msize)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_FIELDS_C'::h5tset_fields_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(IN) :: spos
- INTEGER(SIZE_T), INTENT(IN) :: epos
- INTEGER(SIZE_T), INTENT(IN) :: esize
- INTEGER(SIZE_T), INTENT(IN) :: mpos
- INTEGER(SIZE_T), INTENT(IN) :: msize
- END FUNCTION h5tset_fields_c
- END INTERFACE
-
- hdferr = h5tset_fields_c(type_id, spos, epos, esize, mpos, msize)
- END SUBROUTINE h5tset_fields_f
-
-!
-!****s* H5T/h5tget_ebias_f
-!
-! NAME
-! h5tget_ebias_f
-!
-! PURPOSE
-! Retrieves the exponent bias of a floating-point type.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! ebias - datatype exponent bias
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_ebias_f(type_id, ebias, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(OUT) :: ebias ! Datatype exponent bias of a floating-point type
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_ebias_c(type_id, ebias)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_EBIAS_C'::h5tget_ebias_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(OUT) :: ebias
- END FUNCTION h5tget_ebias_c
- END INTERFACE
-
- hdferr = h5tget_ebias_c(type_id, ebias)
- END SUBROUTINE h5tget_ebias_f
-
-!
-!****s* H5T/h5tset_ebias_f
-!
-! NAME
-! h5tset_ebias_f
-!
-! PURPOSE
-! Sets the exponent bias of a floating-point type.
-!
-! INPUTS
-! type_id - datatype identifier
-! ebias - datatype exponent bias
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_ebias_f(type_id, ebias, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(SIZE_T), INTENT(IN) :: ebias !Datatype exponent bias of a floating-point type
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tset_ebias_c(type_id, ebias)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_EBIAS_C'::h5tset_ebias_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(SIZE_T), INTENT(IN) :: ebias
- END FUNCTION h5tset_ebias_c
- END INTERFACE
-
- hdferr = h5tset_ebias_c(type_id, ebias)
- END SUBROUTINE h5tset_ebias_f
-
-!
-!****s* H5T/h5tget_norm_f
-!
-! NAME
-! h5tget_norm_f
-!
-! PURPOSE
-! Retrieves mantissa normalization of a floating-point
-! datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! norm - normalization types, valid values are:
-! H5T_NORM_IMPLIED_F(0)
-! H5T_NORM_MSBSET_F(1)
-! H5T_NORM_NONE_F(2)
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_norm_f(type_id, norm, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: norm !mantissa normalization of a floating-point datatype
- !Valid normalization types are:
- !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not
- !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of
- !mantissa is always 1, H5T_NORM_NONE_F(2)
- !Mantissa is not normalize
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_norm_c(type_id, norm)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_NORM_C'::h5tget_norm_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: norm
- END FUNCTION h5tget_norm_c
- END INTERFACE
-
- hdferr = h5tget_norm_c(type_id, norm)
- END SUBROUTINE h5tget_norm_f
-
-!
-!****s* H5T/h5tset_norm_f
-!
-! NAME
-! h5tset_norm_f
-!
-! PURPOSE
-! Sets the mantissa normalization of a floating-point datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! norm - normalization types, valid values are:
-! H5T_NORM_IMPLIED_F(0)
-! H5T_NORM_MSBSET_F(1)
-! H5T_NORM_NONE_F(2)
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tset_norm_f(type_id, norm, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: norm !mantissa normalization of a floating-point datatype
- !Valid normalization types are:
- !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not
- !stored, always 1, H5T_NORM_MSBSET_F(1), MSB of
- !mantissa is always 1, H5T_NORM_NONE_F(2)
- !Mantissa is not normalize
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_norm_c(type_id, norm)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_NORM_C'::h5tset_norm_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: norm
- END FUNCTION h5tset_norm_c
- END INTERFACE
-
- hdferr = h5tset_norm_c(type_id, norm)
- END SUBROUTINE h5tset_norm_f
-
-!
-!****s* H5T/h5tget_inpad_f
-!
-! NAME
-! h5tget_inpad_f
-!
-! PURPOSE
-! Retrieves the internal padding type for unused bits
-! in floating-point datatypes.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! padtype - padding type for unused bits
-! Possible values of padding type are:
-! H5T_PAD_ZERO_F = 0
-! H5T_PAD_ONE_F = 1
-! H5T_PAD_BACKGROUND_F = 2
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_inpad_f(type_id, padtype, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: padtype ! padding type for unused bits
- ! in floating-point datatypes.
- ! Possible values of padding type are:
- ! H5T__PAD_ZERO_F = 0
- ! H5T__PAD_ONE_F = 1
- ! H5T__PAD_BACKGROUND_F = 2
-
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_inpad_c(type_id, padtype)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_INPAD_C'::h5tget_inpad_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: padtype
- END FUNCTION h5tget_inpad_c
- END INTERFACE
-
- hdferr = h5tget_inpad_c(type_id, padtype)
- END SUBROUTINE h5tget_inpad_f
-
-!
-!****s* H5T/h5tset_inpad_f
-!
-! NAME
-! h5tset_inpad_f
-!
-! PURPOSE
-! Fills unused internal floating point bits.
-!
-! INPUTS
-! type_id - datatype identifier
-! padtype - padding type for unused bits
-! Possible values of padding type are:
-! H5T_PAD_ZERO_F = 0
-! H5T_PAD_ONE_F = 1
-! H5T_PAD_BACKGROUND_F = 2
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_inpad_f(type_id, padtype, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: padtype ! padding type for unused bits
- ! in floating-point datatypes.
- ! Possible values of padding type are:
- ! H5T__PAD_ZERO_F = 0
- ! H5T__PAD_ONE_F = 1
- ! H5T__PAD_BACKGROUND_F = 2
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_inpad_c(type_id, padtype)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_INPAD_C'::h5tset_inpad_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: padtype
- END FUNCTION h5tset_inpad_c
- END INTERFACE
-
- hdferr = h5tset_inpad_c(type_id, padtype)
- END SUBROUTINE h5tset_inpad_f
-
-!
-!****s* H5T/h5tget_cset_f
-!
-! NAME
-! h5tget_cset_f
-!
-! PURPOSE
-! Retrieves the character set type of a string datatype.
-!
-! INPUTS
-! type_id - Datatype identifier
-! OUTPUTS
-! cset - Character set type of a string datatype
-! Possible values are:
-! H5T_CSET_ASCII_F = 0
-! H5T_CSET_UTF8_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_cset_f(type_id, cset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: cset ! character set type of a string datatype
- ! Possible values are:
- ! H5T_CSET_ASCII_F = 0
- ! H5T_CSET_UTF8_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_cset_c(type_id, cset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_CSET_C'::h5tget_cset_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: cset
- END FUNCTION h5tget_cset_c
- END INTERFACE
-
- hdferr = h5tget_cset_c(type_id, cset)
- END SUBROUTINE h5tget_cset_f
-
-!
-!****s* H5T/h5tset_cset_f
-!
-! NAME
-! h5tset_cset_f
-!
-! PURPOSE
-! Sets character set to be used.
-!
-! INPUTS
-! type_id - datatype identifier
-! cset - character set type of a string datatype
-! Possible values are:
-! H5T_CSET_ASCII_F = 0
-! H5T_CSET_UTF8_F
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_cset_f(type_id, cset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: cset !character set type of a string datatype
- ! Possible values of padding type are:
- ! H5T_CSET_ASCII_F = 0
- ! H5T_CSET_UTF8_F
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_cset_c(type_id, cset)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_CSET_C'::h5tset_cset_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: cset
- END FUNCTION h5tset_cset_c
- END INTERFACE
-
- hdferr = h5tset_cset_c(type_id, cset)
- END SUBROUTINE h5tset_cset_f
-
-!
-!****s* H5T/h5tget_strpad_f
-!
-! NAME
-! h5tget_strpad_f
-!
-! PURPOSE
-! Retrieves the storage mechanism for a string datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! strpad - storage method for a string datatype
-! Possible values are:
-! H5T_STR_NULLTERM_F,
-! H5T_STR_NULLPAD_F,
-! H5T_STR_SPACEPAD_F
-! H5T_STR_ERROR_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_strpad_f(type_id, strpad, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: strpad
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_strpad_c(type_id, strpad)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_STRPAD_C'::h5tget_strpad_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: strpad
- END FUNCTION h5tget_strpad_c
- END INTERFACE
-
- hdferr = h5tget_strpad_c(type_id, strpad)
- END SUBROUTINE h5tget_strpad_f
-
-!
-!****s* H5T/h5tset_strpad_f
-!
-! NAME
-! h5tset_strpad_f
-!
-! PURPOSE
-! Defines the storage mechanism for character strings.
-!
-! INPUTS
-! type_id - datatype identifier
-! strpad - storage method for a string datatype
-! Possible values are:
-! H5T_STR_NULLTERM_F,
-! H5T_STR_NULLPAD_F,
-! H5T_STR_SPACEPAD_F
-! H5T_STR_ERROR_F
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_strpad_f(type_id, strpad, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: strpad ! string padding method for a string datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tset_strpad_c(type_id, strpad)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_STRPAD_C'::h5tset_strpad_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: strpad
- END FUNCTION h5tset_strpad_c
- END INTERFACE
-
- hdferr = h5tset_strpad_c(type_id, strpad)
- END SUBROUTINE h5tset_strpad_f
-
-!
-!****s* H5T/h5tget_nmembers_f
-!
-! NAME
-! h5tget_nmembers_f
-!
-! PURPOSE
-! Retrieves the number of fields in a compound datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! num_members - number of members
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tget_nmembers_f(type_id, num_members, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: num_members !number of fields in a compound datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_nmembers_c(type_id, num_members)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_NMEMBERS_C'::h5tget_nmembers_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: num_members
- END FUNCTION h5tget_nmembers_c
- END INTERFACE
-
- hdferr = h5tget_nmembers_c(type_id, num_members)
- END SUBROUTINE h5tget_nmembers_f
-
-!
-!****s* H5T/h5tget_member_name_f
-!
-! NAME
-! h5tget_member_name_f
-!
-! PURPOSE
-! Retrieves the name of a field of a compound datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! index - filed index (0-based)
-! OUTPUTS
-! member_name - buffer to hold member's name
-! namelen - name length
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_member_name_f(type_id, index, member_name, namelen, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: index !Field index (0-based) of the field name to retrieve
- CHARACTER(LEN=*), INTENT(OUT) :: member_name !name of a field of
- !a compound datatype
- INTEGER, INTENT(OUT) :: namelen ! Length of the name
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_member_name_c(type_id, index, member_name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_NAME_C'::h5tget_member_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: member_name
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: index
- CHARACTER(LEN=*), INTENT(OUT) :: member_name
- INTEGER, INTENT(OUT) :: namelen
- END FUNCTION
- END INTERFACE
-
- hdferr = h5tget_member_name_c(type_id, index, member_name, namelen)
- END SUBROUTINE h5tget_member_name_f
-
-!
-!****s* H5T/h5tget_member_offset_f
-!
-! NAME
-! h5tget_member_offset_f
-!
-! PURPOSE
-! Retrieves the offset of a field of a compound datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! member_no - number of the field
-! OUTPUTS
-! offset - byte offset of the requested field
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_member_offset_f(type_id, member_no, offset, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: member_no !Number of the field
- !whose offset is requested
- INTEGER(SIZE_T), INTENT(OUT) :: offset !byte offset of the beginning of the field
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_member_offset_c(type_id, member_no, offset )
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_OFFSET_C'::h5tget_member_offset_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: member_no
- INTEGER(SIZE_T), INTENT(OUT) :: offset
- END FUNCTION h5tget_member_offset_c
- END INTERFACE
-
- hdferr = h5tget_member_offset_c(type_id, member_no, offset )
- END SUBROUTINE h5tget_member_offset_f
-!
-!****s* H5T/h5tget_member_index_f
-!
-! NAME
-! h5tget_member_index_f
-!
-! PURPOSE
-! Retrieves the index of a compound or enumeration datatype member.
-!
-! INPUTS
-! type_id - datatype identifier
-! name - name of the field or member whose index to
-! to be retrieved from the datatype.
-! OUTPUTS
-! index - 0-based index of the filed or member (0 to N-1)
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! September 26, 2002
-!
-! SOURCE
- SUBROUTINE h5tget_member_index_f(type_id, name, index, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Field or member name
- INTEGER, INTENT(OUT) :: index ! Field or member index
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen ! Name length
-
- INTERFACE
- INTEGER FUNCTION h5tget_member_index_c(type_id, name, namelen, index)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_INDEX_C'::h5tget_member_index_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference ::name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: namelen
- INTEGER, INTENT(OUT) :: index
- END FUNCTION h5tget_member_index_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tget_member_index_c(type_id, name, namelen, index)
- END SUBROUTINE h5tget_member_index_f
-
-
-! !$!
-! !$!****s* H5T/h5tget_member_dim_f
-! !$!
-! !$! NAME
-! !$! h5tget_member_dim_f
-! !$!
-! !$! PURPOSE
-! !$! This function is not supported in hdf5-1.4.*
-! !$!
-! !$! INPUTS
-! !$! OUTPUTS
-! !$! hdferr: - error code
-! !$! Success: 0
-! !$! Failure: -1
-! !$!
-! !$! AUTHOR
-! !$! Elena Pourmal
-! !$! August 12, 1999
-! !$!
-! !$! HISTORY
-! !$! Explicit Fortran interfaces were added for
-! !$! called C functions (it is needed for Windows
-! !$! port). March 7, 2001
-! !$!
-! !$! SOURCE
-! !$! SUBROUTINE h5tget_member_dims_f(type_id, field_idx,dims, field_dims, perm, hdferr)
-! !$!
-! !$! IMPLICIT NONE
-! !$! INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
-! !$! INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of
-! !$! !field_dims, perm)
-! !$! INTEGER, INTENT(OUT) :: dims !number of dimensions of the field
-! !$!
-! !$! INTEGER(SIZE_T),DIMENSION(*), INTENT(OUT) :: field_dims !buffer to store the
-! !$! !dimensions of the field
-! !$! INTEGER, DIMENSION(*), INTENT(OUT) :: perm !buffer to store the
-! !$! !permutation vector of the field
-! !$! INTEGER, INTENT(OUT) :: hdferr ! Error code
-! !$!*****!
-! !$! INTEGER, EXTERNAL :: h5tget_member_dims_c
-! !$! hdferr = h5tget_member_dims_c(type_id, field_idx, dims, field_dims, perm)
-! !$!
-! !$! END SUBROUTINE h5tget_member_dims_f
-
-
-!****s* H5T/h5tget_array_dims_f
-!
-! NAME
-! h5tget_array_dims_f
-!
-! PURPOSE
-! Returns sizes of array dimensions.
-!
-! INPUTS
-! type_id - array datatype identifier
-! OUTPUTS
-! dims - buffer to store array datatype dimensions
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_array_dims_f(type_id, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier
- INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) :: dims !buffer to store array datatype
- ! dimensions
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_array_dims_c(type_id, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_ARRAY_DIMS_C'::h5tget_array_dims_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) :: dims
- END FUNCTION h5tget_array_dims_c
- END INTERFACE
-
- hdferr = h5tget_array_dims_c(type_id, dims)
-
- END SUBROUTINE h5tget_array_dims_f
-
-!
-!****s* H5T/h5tget_array_ndims_f
-!
-! NAME
-! h5tget_array_ndims_f
-!
-! PURPOSE
-! Returns the rank of an array datatype.
-!
-! INPUTS
-! type_id - array datatype identifier
-! OUTPUTS
-! ndims - number of array dimensions
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_array_ndims_f(type_id, ndims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier
- INTEGER, INTENT(OUT) :: ndims ! number of array dimensions
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_array_ndims_c(type_id, ndims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_ARRAY_NDIMS_C'::h5tget_array_ndims_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(OUT) :: ndims
- END FUNCTION h5tget_array_ndims_c
- END INTERFACE
-
- hdferr = h5tget_array_ndims_c(type_id, ndims)
-
- END SUBROUTINE h5tget_array_ndims_f
-
-!
-!****s* H5T/h5tget_super_f
-!
-! NAME
-! h5tget_super_f
-!
-! PURPOSE
-! Returns the base datatype from which a datatype is derived.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! base_type_id - identifier of the base type
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_super_f(type_id, base_type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier
- INTEGER(HID_T), INTENT(OUT) :: base_type_id ! identifier of the datatype
- ! from which datatype (type_id) was derived
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_super_c(type_id, base_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_SUPER_C'::h5tget_super_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(OUT) :: base_type_id
- END FUNCTION h5tget_super_c
- END INTERFACE
-
- hdferr = h5tget_super_c(type_id, base_type_id)
-
- END SUBROUTINE h5tget_super_f
-
-!
-!****s* H5T/h5tget_member_type_f
-!
-! NAME
-! h5tget_member_type_f
-!
-! PURPOSE
-! Returns the datatype of the specified member.
-!
-! INPUTS
-! type_id - compound datatype identifier
-! field_idx - field index (0-based)
-!
-! OUTPUTS
-! datatype - idnetifier of the member's datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_member_type_f(type_id, field_idx, datatype, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of the field type to retrieve
- INTEGER(HID_T), INTENT(OUT) :: datatype !identifier of a copy of
- !the datatype of the field
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_member_type_c(type_id, field_idx , datatype)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_TYPE_C'::h5tget_member_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: field_idx
- INTEGER(HID_T), INTENT(OUT) :: datatype
- END FUNCTION h5tget_member_type_c
- END INTERFACE
-
- hdferr = h5tget_member_type_c(type_id, field_idx , datatype)
- END SUBROUTINE h5tget_member_type_f
-
-!
-!****s* H5T/h5tcreate_f
-!
-! NAME
-! h5tcreate_f
-!
-! PURPOSE
-! Creates a new datatype.
-!
-! INPUTS
-! class - Datatype class can be one of:
-! H5T_COMPOUND_F
-! H5T_ENUM_F
-! H5T_OPAQUE_F
-! H5T_STRING_F
-!
-! size - Size of the datatype.
-! OUTPUTS
-! type_id - Datatype identifier.
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tcreate_f(class, size, type_id, hdferr)
- IMPLICIT NONE
- INTEGER , INTENT(IN) :: class
- INTEGER(SIZE_T), INTENT(IN) :: size
- INTEGER(HID_T) , INTENT(OUT) :: type_id
- INTEGER , INTENT(OUT) :: hdferr
-!*****
- INTERFACE
- INTEGER FUNCTION h5tcreate_c(class, size, type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCREATE_C'::h5tcreate_c
- !DEC$ENDIF
- INTEGER, INTENT(IN) :: class
- INTEGER(SIZE_T), INTENT(IN) :: size
- INTEGER(HID_T), INTENT(OUT) :: type_id
- END FUNCTION h5tcreate_c
- END INTERFACE
-
- hdferr = h5tcreate_c(class, size, type_id)
- END SUBROUTINE h5tcreate_f
-
-!
-!****s* H5T/h5tinsert_f
-!
-! NAME
-! h5tinsert_f
-!
-! PURPOSE
-! Adds a new member to a compound datatype.
-!
-! INPUTS
-! type_id - compound dattype identifier
-! name - name of the field to insert
-! offset - start of the member in an instance of
-! the compound datatype
-! field_id - datatype identifier of the field to insert
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tinsert_f(type_id, name, offset, field_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: name !Name of the field to insert
- INTEGER(SIZE_T), INTENT(IN) :: offset !start of the member in an instance of
- !the compound datatype
- INTEGER(HID_T), INTENT(IN) :: field_id !datatype identifier of the new member
-
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5tinsert_c(type_id, name, namelen, offset, field_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TINSERT_C'::h5tinsert_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(SIZE_T), INTENT(IN) :: offset
- INTEGER(HID_T), INTENT(IN) :: field_id
- INTEGER :: namelen
- END FUNCTION h5tinsert_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tinsert_c(type_id, name, namelen, offset, field_id )
- END SUBROUTINE h5tinsert_f
-
-!
-!****s* H5T/h5tpack_f
-!
-! NAME
-! h5tpack_f
-!
-! PURPOSE
-! Recursively removes padding from within a compound datatype.
-!
-! INPUTS
-! type_id - compound datatype identifier
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tpack_f(type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tpack_c(type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TPACK_C'::h5tpack_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- END FUNCTION h5tpack_c
- END INTERFACE
-
- hdferr = h5tpack_c(type_id)
- END SUBROUTINE h5tpack_f
-
-! !$!
-! !$!****s* H5T/h5tinsert_array_f
-! !$!
-! !$! NAME
-! !$! h5tinsert_array_f
-! !$!
-! !$! PURPOSE
-! !$! This function is not available on hdf5-1.4.*
-! !$!
-! !$! INPUTS
-! !$! OUTPUTS
-! !$! hdferr: - error code
-! !$! Success: 0
-! !$! Failure: -1
-! !$!
-! !$! AUTHOR
-! !$! Elena Pourmal
-! !$! August 12, 1999
-! !$!
-! !$! HISTORY
-! !$! Explicit Fortran interfaces were added for
-! !$! called C functions (it is needed for Windows
-! !$! port). March 7, 2001
-! !$! SOURCE
-! SUBROUTINE h5tinsert_array_f(parent_id,name,offset, ndims, dims, member_id, hdferr, perm)
-! IMPLICIT NONE
-! INTEGER(HID_T), INTENT(IN) :: parent_id ! identifier of the parent compound datatype
-! CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member
-! INTEGER(SIZE_T), INTENT(IN) :: offset !Offset to start of new member
-! !within compound datatype
-! INTEGER, INTENT(IN) :: ndims !Dimensionality of new member.
-! !Valid values are 0 (zero) through 4 (four)
-! INTEGER(SIZE_T), DIMENSION(*), INTENT(IN) :: dims !Size of new member array
-! INTEGER(HID_T), INTENT(IN) :: member_id ! identifier of the datatype of the new member
-! INTEGER, INTENT(OUT) :: hdferr ! Error code
-! !*****!
-! INTEGER, DIMENSION(*), OPTIONAL, INTENT(IN) :: perm
-! !Pointer to buffer to store
-! !the permutation vector of the field
-! INTEGER :: namelen, sizeofperm
-! INTEGER, EXTERNAL :: h5tinsert_array_c, h5tinsert_array_c2
-! namelen = LEN(name)
-! if (present(perm)) then
-! hdferr = h5tinsert_array_c(parent_id, name, namelen, offset, ndims,dims, member_id, perm)
-! else
-! hdferr = h5tinsert_array_c2(parent_id, name, namelen, offset, ndims,dims, member_id)
-! end if
-!
-! END SUBROUTINE h5tinsert_array_f
-
-!
-!****s* H5T/h5tarray_create_f
-!
-! NAME
-! h5tarray_create_f
-!
-! PURPOSE
-! Creates an array datatype object.
-!
-! INPUTS
-! base_id - datatype identifier for the array
-! base datatype
-! rank - rank of the array
-! dims - array dimension sizes
-! OUTPUTS
-! type_id - array datatype identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tarray_create_f(base_id, rank, dims, type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: base_id ! identifier of array base datatype
- INTEGER, INTENT(IN) :: rank ! Rank of the array
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims !Sizes of each array dimension
- INTEGER(HID_T), INTENT(OUT) :: type_id ! identifier of the array datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tarray_create_c(base_id, rank, dims, type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TARRAY_CREATE_C'::h5tarray_create_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: base_id
- INTEGER, INTENT(IN) :: rank
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims
- INTEGER(HID_T), INTENT(OUT) :: type_id
- END FUNCTION h5tarray_create_c
- END INTERFACE
-
- hdferr = h5tarray_create_c(base_id, rank, dims, type_id)
-
- END SUBROUTINE h5tarray_create_f
-
-!
-!****s* H5T/h5tenum_create_f
-!
-! NAME
-! h5tenum_create_f
-!
-! PURPOSE
-! Creates a new enumeration datatype.
-!
-! INPUTS
-! parent_id - datatype identifier for base datatype
-! OUTPUTS
-! new_type_id - datatype identifier for the enumeration datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tenum_create_f(parent_id, new_type_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: parent_id ! Datatype identifier for
- ! the base datatype
- INTEGER(HID_T), INTENT(OUT) :: new_type_id
- !datatype identifier for the
- ! new enumeration datatype
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tenum_create_c(parent_id, new_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_CREATE_C'::h5tenum_create_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: parent_id
- INTEGER(HID_T), INTENT(OUT) :: new_type_id
- END FUNCTION h5tenum_create_c
- END INTERFACE
-
- hdferr = h5tenum_create_c(parent_id, new_type_id)
- END SUBROUTINE h5tenum_create_f
-!
-!****s* H5T/h5tenum_nameof_f
-!
-! NAME
-! h5tenum_nameof_f
-!
-! PURPOSE
-! Returns the symbol name corresponding to a specified
-! member of an enumeration datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! value - value of the enumeration datatype
-! namelen - name buffer size
-! OUTPUTS
-! name - buffer to hold symbol name
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! NOTE
-! According to the standard: Because an INTENT(OUT) variable is considered undefined
-! on entry to the procedure, any default initialization specified for its type will
-! be applied. So we need to blank out the "name" to be portable and eliminate any
-! characters the "name' may contain upon entry, depending on compiler implementation.
-! SOURCE
- SUBROUTINE h5tenum_nameof_f(type_id, value, namelen, name, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(OUT) :: name !Name of the enumeration datatype.
- INTEGER(SIZE_T), INTENT(IN) :: namelen !length of the name
- INTEGER, INTENT(IN) :: value !value of the enumeration datatype.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tenum_nameof_c(type_id, value, name, namelen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_NAMEOF_C'::h5tenum_nameof_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(OUT) :: name
- INTEGER(SIZE_T), INTENT(IN) :: namelen
- INTEGER, INTENT(IN) :: value
- END FUNCTION h5tenum_nameof_c
- END INTERFACE
-
- name(1:LEN(name)) = ' '
-
- hdferr = h5tenum_nameof_c(type_id, value, name, namelen)
- END SUBROUTINE h5tenum_nameof_f
-
-!
-!****s* H5T/h5tenum_valuof_f
-!
-! NAME
-! h5tenum_valuof_f
-!
-! PURPOSE
-! Returns the value corresponding to a specified
-! member of an enumeration datatype.
-!
-! INPUTS
-! type_id - datatype identifier
-! name - symbol name
-! OUTPUTS
-! value - value of the enumeration datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-!
-! SOURCE
- SUBROUTINE h5tenum_valueof_f(type_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: name !Name of the enumeration datatype.
- INTEGER, INTENT(OUT) :: value !value of the enumeration datatype.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5tenum_valueof_c(type_id, name, namelen, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_VALUEOF_C'::h5tenum_valueof_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: namelen
- INTEGER, INTENT(OUT) :: value
- END FUNCTION h5tenum_valueof_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tenum_valueof_c(type_id, name, namelen, value)
- END SUBROUTINE h5tenum_valueof_f
-
-!
-!****s* H5T/h5tget_member_value_f
-!
-! NAME
-! h5tget_member_value_f
-!
-! PURPOSE
-! Returns the value of an enumeration datatype member.
-!
-! INPUTS
-! type_id - datatype identifier
-! member_no - number of the enumeration datatype member
-! OUTPUTS
-! value - value of the enumeration datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_member_value_f(type_id, member_no, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: member_no !Number of the enumeration datatype member
- INTEGER, INTENT(OUT) :: value !value of the enumeration datatype.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tget_member_value_c(type_id, member_no, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_VALUE_C'::h5tget_member_value_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: member_no
- INTEGER, INTENT(OUT) :: value
- END FUNCTION
- END INTERFACE
-
- hdferr = h5tget_member_value_c(type_id, member_no, value)
- END SUBROUTINE h5tget_member_value_f
-
-!
-!****s* H5T/h5tset_tag_f
-!
-! NAME
-! h5tset_tag_f
-!
-! PURPOSE
-! Tags an opaque datatype.
-!
-! INPUTS
-! type_id - identifier for opaque datatype
-! tag - unique ASCII string with which the opaque
-! datatype is to be tagged.
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tset_tag_f(type_id, tag, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: tag !Unique ASCII string with which
- !the opaque datatype is to be tagged
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: taglen
-
- INTERFACE
- INTEGER FUNCTION h5tset_tag_c(type_id, tag, taglen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TSET_TAG_C'::h5tset_tag_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: tag
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: tag
- INTEGER :: taglen
- END FUNCTION h5tset_tag_c
- END INTERFACE
-
- taglen = LEN(tag)
- hdferr = h5tset_tag_c(type_id, tag, taglen)
- END SUBROUTINE h5tset_tag_f
-
-!
-!****s* H5T/h5tget_tag_f
-!
-! NAME
-! h5tget_tag_f
-!
-! PURPOSE
-! Gets the tag associated with an opaque datatype.
-!
-! INPUTS
-! type_id - identifier for opaque datatype
-! OUTPUTS
-! tag - unique ASCII string associated with opaque
-! datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tget_tag_f(type_id, tag,taglen, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(OUT) :: tag ! Unique ASCII string with which
- ! the opaque datatype is to be tagged
- INTEGER, INTENT(OUT) :: taglen ! Length of tag
- INTEGER(SIZE_T) :: tag_size ! Declared character length of tab
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_tag_c(type_id, tag, tag_size, taglen)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_TAG_C'::h5tget_tag_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: tag
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(OUT) :: tag
- INTEGER(SIZE_T), INTENT(IN) :: tag_size
- INTEGER, INTENT(OUT) :: taglen
- END FUNCTION h5tget_tag_c
- END INTERFACE
-
- tag_size = LEN(tag)
-
- hdferr = h5tget_tag_c(type_id, tag, tag_size, taglen )
- END SUBROUTINE h5tget_tag_f
-
-!
-!****s* H5T/h5tvlen_create_f
-!
-! NAME
-! h5tvlen_create_f
-!
-! PURPOSE
-! Creates a new variable-length datatype.
-!
-! INPUTS
-! type_id - identifier iof base datatype
-! OUTPUTS
-! vltype_id - identifier for VL datatype
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! Wednesday, October 23, 2002
-!
-! NOTES
-! Only basic Fortran base datatypes are supported
-!
-! SOURCE
- SUBROUTINE h5tvlen_create_f(type_id, vltype_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER(HID_T), INTENT(OUT) :: vltype_id ! VL datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tvlen_create_c(type_id, vltype_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TVLEN_CREATE_C'::h5tvlen_create_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER(HID_T), INTENT(OUT) :: vltype_id
- END FUNCTION h5tvlen_create_c
- END INTERFACE
-
- hdferr = h5tvlen_create_c(type_id, vltype_id)
- END SUBROUTINE h5tvlen_create_f
-
-!
-!****s* H5T/h5tis_variable_str_f
-!
-! NAME
-! h5tis_variable_str_f
-!
-! PURPOSE
-! Determines whether a dattype is a variable string.
-!
-! INPUTS
-! type_id - datartpe identifier
-! OUTPUTS
-! status - flag to indicate if datatype
-! is a variable string
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! March 12, 2003
-!
-! SOURCE
- SUBROUTINE h5tis_variable_str_f(type_id, status, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- LOGICAL, INTENT(OUT) :: status ! Flag, idicates if datatype
- ! is a variable string or not ( TRUE or
- ! FALSE)
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: flag ! "TRUE/FALSE/ERROR from C"
-
- INTERFACE
- INTEGER FUNCTION h5tis_variable_str_c(type_id, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TIS_VARIABLE_STR_C'::h5tis_variable_str_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER :: flag
- END FUNCTION h5tis_variable_str_c
- END INTERFACE
-
- hdferr = h5tis_variable_str_c(type_id, flag)
- status = .TRUE.
- if (flag .EQ. 0) status = .FALSE.
-
- END SUBROUTINE h5tis_variable_str_f
-
-!
-!****s* H5T/h5tget_member_class_f
-!
-! NAME
-! h5tget_member_class_f
-!
-! PURPOSE
-! Returns datatype class of compound datatype member.
-!
-! INPUTS
-! type_id - datartpe identifier
-! member_no - index of compound datatype member
-! OUTPUTS
-! class - class type for compound dadtype member
-! Valid classes:
-! H5T_NO_CLASS_F (error)
-! H5T_INTEGER_F
-! H5T_FLOAT_F
-! H5T_TIME_F
-! H5T_STRING_F
-! H5T_BITFIELD_F
-! H5T_OPAQUE_F
-! H5T_COMPOUND_F
-! H5T_REFERENCE_F
-! H5T_ENUM_F
-! H5T_VLEN_F
-! H5T_ARRAY_F
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! April 6, 2005
-!
-! SOURCE
- SUBROUTINE h5tget_member_class_f(type_id, member_no, class, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- INTEGER, INTENT(IN) :: member_no ! Member number
- INTEGER, INTENT(OUT) :: class ! Member class
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_member_class_c(type_id, member_no, class)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_MEMBER_CLASS_C'::h5tget_member_class_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: type_id
- INTEGER, INTENT(IN) :: member_no
- INTEGER, INTENT(OUT) :: class
- END FUNCTION h5tget_member_class_c
- END INTERFACE
-
- hdferr = h5tget_member_class_c(type_id, member_no, class)
-
- END SUBROUTINE h5tget_member_class_f
-
-!
-!****s* H5T/h5tcommit_anon_f
-!
-! NAME
-! h5tcommit_anon_f
-!
-! PURPOSE
-! Commits a transient datatype to a file,
-! creating a new named datatype,
-! but does not link it into the file structure.
-!
-! INPUTS
-! loc_id - A file or group identifier specifying the file
-! in which the new named datatype is to be created.
-! dtype_id - A datatype identifier.
-!
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-! OPTIONAL PARAMETERS
-! tcpl_id - A datatype creation property list identifier.
-! (H5P_DEFAULT_F for the default property list.)
-! tapl_id - A datatype access property list identifier.
-! should always be passed as the value H5P_DEFAULT_F.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! February 25, 2008
-!
-! SOURCE
- SUBROUTINE h5tcommit_anon_f(loc_id, dtype_id, hdferr, tcpl_id, tapl_id)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: loc_id ! A file or group identifier specifying
- ! the file in which the new named datatype
- ! is to be created.
- INTEGER(HID_T), INTENT(IN) :: dtype_id ! Datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! A datatype creation property
- ! list identifier.
- ! (H5P_DEFAULT_F for the default property list.)
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! A datatype access property list identifier.
- ! should always be passed as the value H5P_DEFAULT_F.
-!*****
- INTEGER(HID_T) :: tcpl_id_default
- INTEGER(HID_T) :: tapl_id_default
-
- INTERFACE
- INTEGER FUNCTION h5tcommit_anon_c(loc_id, dtype_id, &
- tcpl_id_default, tapl_id_default)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOMMIT_ANON_C'::h5tcommit_anon_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: loc_id
- INTEGER(HID_T), INTENT(IN) :: dtype_id
- INTEGER(HID_T) :: tcpl_id_default
- INTEGER(HID_T) :: tapl_id_default
- END FUNCTION h5tcommit_anon_c
- END INTERFACE
-
- tcpl_id_default = H5P_DEFAULT_F
- tapl_id_default = H5P_DEFAULT_F
-
- IF(PRESENT(tcpl_id)) tcpl_id_default = tcpl_id
- IF(PRESENT(tapl_id)) tapl_id_default = tapl_id
-
- hdferr = h5tcommit_anon_c(loc_id, dtype_id, &
- tcpl_id_default, tapl_id_default )
-
- END SUBROUTINE h5tcommit_anon_f
-
-!
-!****s* H5T/h5tcommitted_f
-!
-! NAME
-! h5tcommitted_f
-!
-! PURPOSE
-! Determines whether a datatype is a named type or a transient type.
-!
-! INPUTS
-! dtype_id - A datatype identifier.
-!
-! OUTPUTS
-! committed - .TRUE., if the datatype has been committed
-! .FALSE., if the datatype has not been committed.
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! M. Scot Breitenfeld
-! February 25, 2008
-!
-! SOURCE
- SUBROUTINE h5tcommitted_f(dtype_id, committed, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dtype_id ! A datatype identifier
- LOGICAL, INTENT(OUT) :: committed ! .TRUE., if the datatype has been committed
- !.FALSE., if the datatype has not been committed.
- INTEGER, INTENT(OUT) :: hdferr ! Error code:
-! Success: 0
-! Failure: -1
-!*****
- INTERFACE
- INTEGER FUNCTION h5tcommitted_c(dtype_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOMMITTED_C'::h5tcommitted_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dtype_id
- END FUNCTION h5tcommitted_c
- END INTERFACE
-
- hdferr = h5tcommitted_c(dtype_id)
-
- IF(hdferr.GT.0)THEN
- committed = .TRUE.
- hdferr = 0
- ELSE IF(hdferr.EQ.0)THEN
- committed = .FALSE.
- hdferr = 0
- ELSE
- hdferr = -1
- ENDIF
-
-
- END SUBROUTINE h5tcommitted_f
-
-!
-!****s* H5T/H5Tdecode_f
-!
-! NAME
-! H5Tdecode_f
-!
-! PURPOSE
-! Decode a binary object description of data type and return a new object handle.
-! INPUTS
-! buf - Buffer for the data space object to be decoded.
-! obj_id - Object ID
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! April 9, 2008
-!
-! SOURCE
- SUBROUTINE h5tdecode_f(buf, obj_id, hdferr)
- IMPLICIT NONE
- CHARACTER(LEN=*), INTENT(IN) :: buf ! Buffer for the data space object to be decoded.
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTERFACE
- INTEGER FUNCTION h5tdecode_c(buf, obj_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TDECODE_C'::h5tdecode_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- CHARACTER(LEN=*), INTENT(IN) :: buf
- INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID
- END FUNCTION h5tdecode_c
- END INTERFACE
-
- hdferr = h5tdecode_c(buf, obj_id)
-
- END SUBROUTINE h5tdecode_f
-
-!
-!****s* H5T/H5Tencode_f
-!
-! NAME
-! H5Tencode_f
-!
-! PURPOSE
-! Encode a data type object description into a binary buffer.
-!
-! INPUTS
-! obj_id - Identifier of the object to be encoded.
-! buf - Buffer for the object to be encoded into.
-! nalloc - The size of the allocated buffer.
-! OUTPUTS
-! nalloc - The size of the buffer needed.
-! hdferr - Returns 0 if successful and -1 if fails.
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! April 9, 2008
-! SOURCE
- SUBROUTINE h5tencode_f(obj_id, buf, nalloc, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: obj_id ! Identifier of the object to be encoded.
- CHARACTER(LEN=*), INTENT(OUT) :: buf ! Buffer for the object to be encoded into.
- INTEGER(SIZE_T), INTENT(INOUT) :: nalloc ! The size of the allocated buffer.
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
-
- INTERFACE
- INTEGER FUNCTION h5tencode_c(buf, obj_id, nalloc)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENCODE_C'::h5tencode_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: buf
- INTEGER(HID_T), INTENT(IN) :: obj_id
- CHARACTER(LEN=*), INTENT(OUT) :: buf
- INTEGER(SIZE_T), INTENT(INOUT) :: nalloc
- END FUNCTION h5tencode_c
- END INTERFACE
-
- hdferr = h5tencode_c(buf, obj_id, nalloc)
-
- END SUBROUTINE h5tencode_f
-
-!
-!****s* H5T/h5tget_create_plist_f
-!
-! NAME
-! h5tget_create_plist_f
-!
-! PURPOSE
-! Returns a copy of a datatype creation property list.
-!
-! INPUTS
-! dtype_id - Datatype identifier
-! OUTPUTS
-! dtpl_id - Datatype property list identifier
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! April 9, 2008
-!
-! SOURCE
- SUBROUTINE h5tget_create_plist_f(dtype_id, dtpl_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dtype_id ! Datatype identifier
- INTEGER(HID_T), INTENT(OUT) :: dtpl_id ! Datatype property list identifier.
- INTEGER, INTENT(OUT) :: hdferr ! Error code:
- ! 0 on success and -1 on failure
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_create_plist_c(dtype_id, dtpl_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_CREATE_PLIST_C'::h5tget_create_plist_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dtype_id
- INTEGER(HID_T), INTENT(OUT) :: dtpl_id
- END FUNCTION h5tget_create_plist_c
- END INTERFACE
-
- hdferr = h5tget_create_plist_c(dtype_id, dtpl_id)
- END SUBROUTINE h5tget_create_plist_f
-
-!
-!****s* H5T/h5tcompiler_conv_f
-!
-! NAME
-! h5tcompiler_conv_f
-!
-! PURPOSE
-! Check whether the library’s default conversion is hard conversion.R
-!
-! INPUTS
-! src_id - Identifier for the source datatype.
-! dst_id - Identifier for the destination datatype.
-! OUTPUTS
-! flag - TRUE for compiler conversion, FALSE for library conversion
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! April 9, 2008
-! SOURCE
- SUBROUTINE h5tcompiler_conv_f( src_id, dst_id, flag, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: src_id ! Identifier for the source datatype.
- INTEGER(HID_T), INTENT(IN) :: dst_id ! Identifier for the destination datatype.
- LOGICAL, INTENT(OUT) :: flag ! .TRUE. for compiler conversion, .FALSE. for library conversion
- INTEGER, INTENT(OUT) :: hdferr ! Error code:
- ! 0 on success and -1 on failure
-!*****
- INTEGER :: c_flag
-
- INTERFACE
- INTEGER FUNCTION h5tcompiler_conv_c(src_id, dst_id, c_flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TCOMPILER_CONV_C'::h5tcompiler_conv_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: src_id
- INTEGER(HID_T), INTENT(IN) :: dst_id
- INTEGER :: c_flag
- END FUNCTION h5tcompiler_conv_c
- END INTERFACE
-
- hdferr = h5tcompiler_conv_c(src_id, dst_id, c_flag)
-
- flag = .FALSE.
- IF(c_flag .GT. 0) flag = .TRUE.
-
- END SUBROUTINE h5tcompiler_conv_f
-
-!
-!****s* H5T/h5tget_native_type_f
-!
-! NAME
-! h5tget_native_type_f
-!
-! PURPOSE
-! Returns the native datatype of a specified datatype.
-!
-! INPUTS
-! dtype_id - Datatype identifier for the dataset datatype.
-!
-! direction - Direction of search:
-! H5T_DIR_DEFAULT = 0, /*default direction is inscendent */
-! H5T_DIR_ASCEND = 1, /*in inscendent order */
-! H5T_DIR_DESCEND = 2 /*in descendent order */
-! * NOTE: In C it is defined as a structure: H5T_direction_t
-!
-! OUTPUTS
-! native_dtype_id - The native datatype identifier for the specified dataset datatype
-! hdferr - Returns 0 if successful and -1 if fails
-! AUTHOR
-! M. Scot Breitenfeld
-! June 18, 2008
-! SOURCE
- SUBROUTINE h5tget_native_type_f(dtype_id, direction, native_dtype_id, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dtype_id ! Datatype identifier
- INTEGER, INTENT(IN) :: direction ! Direction of search:
- ! H5T_DIR_ASCEND_F = 1 in inscendent order
- ! H5T_DIR_DESCEND_F = 2 in descendent order
- INTEGER(HID_T), INTENT(OUT) :: native_dtype_id ! The native datatype identifier
- INTEGER, INTENT(OUT) :: hdferr ! Error code:
- ! 0 on success and -1 on failure
-!*****
- INTERFACE
- INTEGER FUNCTION h5tget_native_type_c(dtype_id, direction, native_dtype_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TGET_NATIVE_TYPE_C'::h5tget_native_type_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dtype_id
- INTEGER, INTENT(IN) :: direction
- INTEGER(HID_T), INTENT(OUT) :: native_dtype_id
- END FUNCTION h5tget_native_type_c
- END INTERFACE
-
- hdferr = h5tget_native_type_c(dtype_id, direction, native_dtype_id)
- END SUBROUTINE h5tget_native_type_f
-
-END MODULE H5T
diff --git a/fortran/src/H5Tff_F03.f90 b/fortran/src/H5Tff_F03.f90
deleted file mode 100644
index 2c9f212..0000000
--- a/fortran/src/H5Tff_F03.f90
+++ /dev/null
@@ -1,223 +0,0 @@
-!****h* ROBODoc/H5T (F03)
-!
-! NAME
-! H5T_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 and Fortran 2003 interfaces for H5T functions.
-! It contains the same functions as H5Tff_F90.f90 but includes the
-! Fortran 2003 functions and the interface listings. This file will be compiled
-! instead of H5Tff_F90.f90 if Fortran 2003 functions are enabled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new H5T function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!
-!*****
-
-MODULE H5T_PROVISIONAL
-
- USE H5GLOBAL
- USE, INTRINSIC :: ISO_C_BINDING
-
-!****t* H5T (F03)/hvl_t
-! Fortran2003 Derived Type:
- TYPE hvl_t
- INTEGER(size_t) :: len ! Length of VL data (in base type units)
- TYPE(C_PTR) :: p ! Pointer to VL data
- END TYPE hvl_t
-
-!*****
-
- INTERFACE h5tenum_insert_f
- MODULE PROCEDURE h5tenum_insert_f03
- MODULE PROCEDURE h5tenum_insert_f90
- END INTERFACE
-
-CONTAINS
-
-!****s* H5T (F03)/H5Tconvert_f_F03
-!
-! NAME
-! H5Tconvert_f
-!
-! PURPOSE
-! Converts data from between specified datatypes.
-!
-! Inputs:
-! src_id - Identifier for the source datatype.
-! dst_id - Identifier for the destination datatype.
-! nelmts - Size of array buf.
-! buf - Array containing pre-conversion values.
-! background - Optional background buffer.
-! plist_id - Dataset transfer property list identifier.
-!
-! Outputs:
-! buf - Array containing post-conversion values.
-! hdferr - error code:
-! 0 on success and -1 on failure
-! AUTHOR
-! M. Scot Breitenfeld
-! Decemember 8, 2008
-!
-! Fortran2003 Interface:
- SUBROUTINE h5tconvert_f(src_id, dst_id, nelmts, buf, hdferr, background, plist_id)
- USE, INTRINSIC :: ISO_C_BINDING
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: src_id
- INTEGER(HID_T) , INTENT(IN) :: dst_id
- INTEGER(SIZE_T), INTENT(IN) :: nelmts
- TYPE(C_PTR) , INTENT(INOUT) :: buf
- INTEGER , INTENT(OUT) :: hdferr
- TYPE(C_PTR) , INTENT(INOUT), OPTIONAL :: background
- INTEGER(HID_T) , INTENT(IN) , OPTIONAL :: plist_id
-!*****
- INTEGER(HID_T) :: plist_id_default
- TYPE(C_PTR) :: background_default
-
- INTERFACE
- INTEGER FUNCTION h5tconvert_c(src_id, dst_id, nelmts, buf, background, plist_id) &
- BIND(C, NAME='h5tconvert_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
- USE H5GLOBAL
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: src_id
- INTEGER(HID_T) , INTENT(IN) :: dst_id
- INTEGER(SIZE_T), INTENT(IN) :: nelmts
- TYPE(C_PTR) , VALUE :: buf
- TYPE(C_PTR) , VALUE :: background
- INTEGER(HID_T) , INTENT(IN) :: plist_id
- END FUNCTION h5tconvert_c
- END INTERFACE
-
- plist_id_default = H5P_DEFAULT_F
- IF(PRESENT(plist_id)) plist_id_default = plist_id
-
- background_default = C_NULL_PTR
- IF(PRESENT(background)) background_default = background
-
- hdferr = H5Tconvert_c(src_id, dst_id, nelmts, buf, background_default, plist_id_default)
-
- END SUBROUTINE h5tconvert_f
-!
-!****s* (F03) H5T/h5tenum_insert_f90
-!
-! NAME
-! h5tenum_insert_f
-!
-! PURPOSE
-! Inserts a new enumeration datatype member.
-!
-! INPUTS
-! type_id - Datatype identifier for the enumeration datatype.
-! name - Datatype identifier.
-! value - Value of the new member.
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tenum_insert_f90(type_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member
- INTEGER, INTENT(IN) :: value ! value of the new member
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen
- INTERFACE
- INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: value
- INTEGER :: namelen
- END FUNCTION h5tenum_insert_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tenum_insert_c(type_id, name, namelen, value)
- END SUBROUTINE h5tenum_insert_f90
-
-!
-!****s* (F03) H5T/h5tenum_insert_f03
-!
-! NAME
-! h5tenum_insert_f
-!
-! PURPOSE
-! Inserts a new enumeration datatype member.
-!
-! INPUTS
-! type_id - Datatype identifier for the enumeration datatype.
-! name - Datatype identifier.
-! value - Pointer to the value of the new member.
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! February 6, 2015
-!
-! HISTORY
-! F2003 implementation of function
-! SOURCE
- SUBROUTINE h5tenum_insert_f03(type_id, name, value, hdferr)
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_char
- USE H5GLOBAL
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- TYPE(C_PTR) , INTENT(IN) :: value
- INTEGER, INTENT(OUT) :: hdferr
-!*****
- INTEGER :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5tenum_insert_ptr_c(type_id, name, namelen, value) &
- BIND(C, NAME='h5tenum_insert_ptr_c')
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_char
- USE H5GLOBAL
- IMPLICIT NONE
- INTEGER(HID_T) , INTENT(IN) :: type_id
- CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
- INTEGER :: namelen
- TYPE(C_PTR), VALUE :: value
- END FUNCTION h5tenum_insert_ptr_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tenum_insert_ptr_c(type_id, name, namelen, value)
- END SUBROUTINE h5tenum_insert_f03
-
-END MODULE H5T_PROVISIONAL
-
diff --git a/fortran/src/H5Tff_F90.f90 b/fortran/src/H5Tff_F90.f90
deleted file mode 100644
index 380fbec..0000000
--- a/fortran/src/H5Tff_F90.f90
+++ /dev/null
@@ -1,95 +0,0 @@
-!****h* ROBODoc/H5T (F90)
-!
-! NAME
-! MODULE H5T_PROVISIONAL
-!
-! PURPOSE
-! This file contains Fortran 90 interfaces for H5T functions. It contains
-! the same functions as H5Tff_F03.f90 but excludes the Fortran 2003 functions
-! and the interface listings. This file will be compiled instead of H5Tff_F03.f90
-! if Fortran 2003 functions are not enabled.
-!
-! NOTE
-! Currently contains no functions.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! *** IMPORTANT ***
-! If you add a new H5D function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5T_PROVISIONAL
-
- USE H5GLOBAL
-
-CONTAINS
-
-!
-!****s* H5T/h5tenum_insert_f
-!
-! NAME
-! h5tenum_insert_f
-!
-! PURPOSE
-! Inserts a new enumeration datatype member.
-!
-! INPUTS
-! type_id - Datatype identifier for the enumeration datatype.
-! name - Datatype identifier.
-! value - Value of the new member.
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: value
- INTEGER, INTENT(OUT) :: hdferr
-!*****
- INTEGER :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: value
- INTEGER :: namelen
- END FUNCTION h5tenum_insert_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tenum_insert_c(type_id, name, namelen, value)
- END SUBROUTINE h5tenum_insert_f
-
-END MODULE H5T_PROVISIONAL
diff --git a/fortran/src/H5Zf.c b/fortran/src/H5Zf.c
index 169e018..a8cf1c2 100644
--- a/fortran/src/H5Zf.c
+++ b/fortran/src/H5Zf.c
@@ -1,6 +1,6 @@
/****h* H5Zf/H5Zf
* PURPOSE
- * This file contains C stubs for H5Z Fortran APIs
+ * This file contains C stubs for H5Z Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,22 +25,22 @@
/****if* H5Zf/h5zunregister_c
* NAME
- * h5zunregister_c
+ * h5zunregister_c
* PURPOSE
- * Call H5Zunregister to unregister filter
+ * Call H5Zunregister to unregister filter
* INPUTS
- * filter identifier
+ * filter identifier
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12, 2003
+ * Wednesday, March 12, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5zunregister_c (int_f *filter)
+h5zunregister_c (int_f *filter)
/******/
{
int ret_value = -1;
@@ -58,25 +58,25 @@ nh5zunregister_c (int_f *filter)
}
/****if* H5Zf/h5zfiletr_avail_c
* NAME
- * h5zfiletr_avail_c
+ * h5zfiletr_avail_c
* PURPOSE
- * Call H5Zfilter_avail to find if filter is available
+ * Call H5Zfilter_avail to find if filter is available
* INPUTS
- * filter - filter identifier
+ * filter - filter identifier
* OUTPUTS
- * flag - status flag
+ * flag - status flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Elena Pourmal
- * Wednesday, March 12, 2003
+ * Wednesday, March 12, 2003
* HISTORY
*
* SOURCE
*/
int_f
-nh5zfilter_avail_c ( int_f *filter , int_f *flag )
+h5zfilter_avail_c ( int_f *filter , int_f *flag )
/******/
{
int ret_value = 0;
@@ -92,26 +92,26 @@ nh5zfilter_avail_c ( int_f *filter , int_f *flag )
/****if* H5Zf/h5zget_filter_info_c
* NAME
- * h5zget_filter_info_c
+ * h5zget_filter_info_c
* PURPOSE
- * Call H5Zget_filter_info to find if filter has its encoder
- * and/or its decoder available
+ * Call H5Zget_filter_info to find if filter has its encoder
+ * and/or its decoder available
* INPUTS
- * filter - filter identifier
+ * filter - filter identifier
* OUTPUTS
- * flag - status flag
+ * flag - status flag
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* Nat Furrer and James Laird
- * Wednesday, June 16, 2004
+ * Wednesday, June 16, 2004
* HISTORY
*
* SOURCE
*/
int_f
-nh5zget_filter_info_c ( int_f *filter , int_f *flag )
+h5zget_filter_info_c ( int_f *filter , int_f *flag )
/******/
{
int ret_value = 0;
diff --git a/fortran/src/H5Zff.f90 b/fortran/src/H5Zff.F90
index 7b67b5b..0259959 100644
--- a/fortran/src/H5Zff.f90
+++ b/fortran/src/H5Zff.F90
@@ -4,29 +4,32 @@
! MODULE H5Z
!
! PURPOSE
-! This file contains Fortran interfaces for H5Z functions. It includes
-! all the functions that are independent on whether the Fortran 2003 functions
-! are enabled or disabled.
-!
+! This file contains Fortran interfaces for H5Z functions.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
-! NOTES
-! *** IMPORTANT ***
+! NOTES!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new H5Z function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
@@ -48,7 +51,7 @@ CONTAINS
! Unregisters specified filetr
!
! INPUTS
-! filter - filter; may have one of the following values:
+! filter - Filter; may have one of the following values:
! H5Z_FILTER_DEFLATE_F
! H5Z_FILTER_SZIP_F
! H5Z_FILTER_NBIT_F
@@ -57,7 +60,7 @@ CONTAINS
! H5Z_FILTER_FLETCHER32_F
!
! OUTPUTS
-! hdferr - error code
+! hdferr - Error code
! Success: 0
! Failure: -1
!
@@ -69,18 +72,14 @@ CONTAINS
SUBROUTINE h5zunregister_f(filter, hdferr)
IMPLICIT NONE
INTEGER, INTENT(IN) :: filter
- INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER, INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION h5zunregister_c (filter)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ZUNREGISTER_C':: h5zunregister_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5zunregister_c(filter) BIND(C,NAME='h5zunregister_c')
INTEGER, INTENT(IN) :: filter
END FUNCTION h5zunregister_c
END INTERFACE
- hdferr = h5zunregister_c (filter)
+ hdferr = h5zunregister_c(filter)
END SUBROUTINE h5zunregister_f
!****s* H5Z/h5zfilter_avail_f
@@ -91,11 +90,17 @@ CONTAINS
! Queries if filter is available
!
! INPUTS
-! filter - filter
+! filter - Filter; may be one of the following:
+! H5Z_FILTER_DEFLATE_F
+! H5Z_FILTER_SZIP_F
+! H5Z_FILTER_NBIT_F
+! H5Z_FILTER_SCALEOFFSET_F
+! H5Z_FILTER_SHUFFLE_F
+! H5Z_FILTER_FLETCHER32_F
! OUTPUTS
-! status - status; .TRUE. if filter is available,
+! status - Flag; .TRUE. if filter is available,
! .FALSE. otherwise
-! hdferr: - error code
+! hdferr: - Error code
! Success: 0
! Failure: -1
!
@@ -106,26 +111,15 @@ CONTAINS
! SOURCE
SUBROUTINE h5zfilter_avail_f(filter, status, hdferr)
IMPLICIT NONE
- INTEGER, INTENT(IN) :: filter ! Filter; may be one of the following:
- ! H5Z_FILTER_DEFLATE_F
- ! H5Z_FILTER_SZIP_F
- ! H5Z_FILTER_NBIT_F
- ! H5Z_FILTER_SCALEOFFSET_F
- ! H5Z_FILTER_SHUFFLE_F
- ! H5Z_FILTER_FLETCHER32_F
- LOGICAL, INTENT(OUT) :: status ! Flag, idicates if filter
- ! is availble not ( TRUE or
- ! FALSE)
- INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER, INTENT(IN) :: filter
+ LOGICAL, INTENT(OUT) :: status
+ INTEGER, INTENT(OUT) :: hdferr
!*****
INTEGER :: flag ! "TRUE/FALSE/ERROR from C"
INTERFACE
- INTEGER FUNCTION h5zfilter_avail_c(filter, flag)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ZFILTER_AVAIL_C'::h5zfilter_avail_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5zfilter_avail_c(filter, flag) BIND(C,NAME='h5zfilter_avail_c')
+ IMPLICIT NONE
INTEGER, INTENT(IN) :: filter
INTEGER :: flag
END FUNCTION h5zfilter_avail_c
@@ -136,6 +130,7 @@ CONTAINS
IF (flag .EQ. 0) status = .FALSE.
END SUBROUTINE h5zfilter_avail_f
+
!****s* H5Z/h5zget_filter_info_f
!
! NAME
@@ -146,13 +141,20 @@ CONTAINS
! available
!
! INPUTS
-! filter - filter
+! filter - Filter; may be one of the following:
+! H5Z_FILTER_DEFLATE_F
+! H5Z_FILTER_SZIP_F
+! H5Z_FILTER_NBIT_F
+! H5Z_FILTER_SCALEOFFSET_F
+! H5Z_FILTER_SHUFFLE_F
+! H5Z_FILTER_FLETCHER32_Ffilter
! OUTPUTS
-! config_flags - Bit vector possibly containing the
+! config_flags - Flag, indicates if filter has its encoder
+! and/or decoder available, possibly containing the
! following values:
! H5Z_FILTER_ENCODE_ENABLED_F
! H5Z_FILTER_DECODE_ENABLED_F
-! hdferr: - error code
+! hdferr: - Error code
! Success: 0
! Failure: -1
!
@@ -162,25 +164,14 @@ CONTAINS
! SOURCE
SUBROUTINE h5zget_filter_info_f(filter, config_flags, hdferr)
IMPLICIT NONE
- INTEGER, INTENT(IN) :: filter ! Filter; may be one of the following:
- ! H5Z_FILTER_DEFLATE_F
- ! H5Z_FILTER_SZIP_F
- ! H5Z_FILTER_NBIT_F
- ! H5Z_FILTER_SCALEOFFSET_F
- ! H5Z_FILTER_SHUFFLE_F
- ! H5Z_FILTER_FLETCHER32_F
- INTEGER, INTENT(OUT) :: config_flags! Flag, indicates if filter
- ! has its encoder and/or decoder
- ! available
- INTEGER, INTENT(OUT) :: hdferr ! Error code
+ INTEGER, INTENT(IN) :: filter
+ INTEGER, INTENT(OUT) :: config_flags
+ INTEGER, INTENT(OUT) :: hdferr
!*****
INTERFACE
- INTEGER FUNCTION h5zget_filter_info_c(filter, config_flags)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5ZGET_FILTER_INFO_C'::h5zget_filter_info_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5zget_filter_info_c(filter, config_flags) BIND(C,NAME='h5zget_filter_info_c')
+ IMPLICIT NONE
INTEGER, INTENT(IN) :: filter
INTEGER, INTENT(OUT) :: config_flags
END FUNCTION h5zget_filter_info_c
diff --git a/fortran/src/H5_DBLE_InterfaceExclude.f90 b/fortran/src/H5_DBLE_InterfaceExclude.f90
deleted file mode 100644
index 2a3e26f..0000000
--- a/fortran/src/H5_DBLE_InterfaceExclude.f90
+++ /dev/null
@@ -1,39 +0,0 @@
-!****h* fortran/src/H5_DBLE_InterfaceExclude.f90
-!
-! NAME
-! H5_DBLE_INTERFACE
-!
-! FUNCTION
-! This module is used for when the default REAL is of type DOUBLE PRECISION.
-! We do not include the double precision interfaces if the defaut REAL is
-! DOUBLE PRECISION since this would lead to a non-unique conflict with the
-! generic interfaces declared as REAL and those declared as DOUBLE PRECISION.
-!
-! NOTES
-! Empty module.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! AUTHOR
-! M. Scot Breitenfeld
-!
-!*****
-
-MODULE H5_DBLE_INTERFACE
-
-
-END MODULE H5_DBLE_INTERFACE
diff --git a/fortran/src/H5_DBLE_InterfaceInclude.f90 b/fortran/src/H5_DBLE_InterfaceInclude.f90
deleted file mode 100644
index 11e0a85..0000000
--- a/fortran/src/H5_DBLE_InterfaceInclude.f90
+++ /dev/null
@@ -1,1859 +0,0 @@
-!****h* fortran/src/H5_DBLE_InterfaceInclude.f90
-!
-! NAME
-! H5_DBLE_INTERFACE
-!
-! FUNCTION
-! This module is used for when the default REAL is not of the type DOUBLE PRECISION.
-! We only do not include the double precision interfaces if the defaut REAL is
-! DOUBLE PRECISION since this would lead to a non-unique conflict with the
-! generic interfaces declared as REAL. Otherwise it is okay to include the interfaces.
-!
-! NOTES
-! This module contains all the DOUBLE PRECISION interfaces and corresponding subroutines
-! from the HDF function catagory H5A, H5D and H5P.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! AUTHOR
-! M. Scot Breitenfeld
-!
-!*****
-
-MODULE H5_DBLE_INTERFACE
-
- USE H5GLOBAL
-
- !
- ! ----- H5A ----
- !
- INTERFACE h5awrite_f
- MODULE PROCEDURE h5awrite_double_scalar
- MODULE PROCEDURE h5awrite_double_1
- MODULE PROCEDURE h5awrite_double_2
- MODULE PROCEDURE h5awrite_double_3
- MODULE PROCEDURE h5awrite_double_4
- MODULE PROCEDURE h5awrite_double_5
- MODULE PROCEDURE h5awrite_double_6
- MODULE PROCEDURE h5awrite_double_7
- END INTERFACE
-
- INTERFACE h5aread_f
- MODULE PROCEDURE h5aread_double_scalar
- MODULE PROCEDURE h5aread_double_1
- MODULE PROCEDURE h5aread_double_2
- MODULE PROCEDURE h5aread_double_3
- MODULE PROCEDURE h5aread_double_4
- MODULE PROCEDURE h5aread_double_5
- MODULE PROCEDURE h5aread_double_6
- MODULE PROCEDURE h5aread_double_7
- END INTERFACE
- !
- ! ----- H5D ----
- !
- INTERFACE h5dwrite_f
- MODULE PROCEDURE h5dwrite_double_scalar
- MODULE PROCEDURE h5dwrite_double_1
- MODULE PROCEDURE h5dwrite_double_2
- MODULE PROCEDURE h5dwrite_double_3
- MODULE PROCEDURE h5dwrite_double_4
- MODULE PROCEDURE h5dwrite_double_5
- MODULE PROCEDURE h5dwrite_double_6
- MODULE PROCEDURE h5dwrite_double_7
- END INTERFACE
-
- INTERFACE h5dread_f
- MODULE PROCEDURE h5dread_double_scalar
- MODULE PROCEDURE h5dread_double_1
- MODULE PROCEDURE h5dread_double_2
- MODULE PROCEDURE h5dread_double_3
- MODULE PROCEDURE h5dread_double_4
- MODULE PROCEDURE h5dread_double_5
- MODULE PROCEDURE h5dread_double_6
- MODULE PROCEDURE h5dread_double_7
- END INTERFACE
-
- INTERFACE h5dfill_f
- MODULE PROCEDURE h5dfill_double
- END INTERFACE
-
- !
- ! ----- H5P ----
- !
- INTERFACE h5pset_fill_value_f
- MODULE PROCEDURE h5pset_fill_value_double
- END INTERFACE
-
- INTERFACE h5pget_fill_value_f
- MODULE PROCEDURE h5pget_fill_value_double
- END INTERFACE
-
- INTERFACE h5pset_f
- MODULE PROCEDURE h5pset_double
- END INTERFACE
-
- INTERFACE h5pget_f
- MODULE PROCEDURE h5pget_double
- END INTERFACE
-
- INTERFACE h5pregister_f
- MODULE PROCEDURE h5pregister_double
- END INTERFACE
-
- INTERFACE h5pinsert_f
- MODULE PROCEDURE h5pinsert_double
- END INTERFACE
-
-CONTAINS
-
- !
- ! ----- H5A ----
- !
- SUBROUTINE h5awrite_double_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_S_C'::h5awrite_double_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN)::buf
- END FUNCTION h5awrite_double_s_c
- END INTERFACE
-
- hdferr = h5awrite_double_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_scalar
-
- SUBROUTINE h5awrite_double_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1)) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_1_C'::h5awrite_double_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5awrite_double_1_c
- END INTERFACE
-
- hdferr = h5awrite_double_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_1
-
-
- SUBROUTINE h5awrite_double_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_2_C'::h5awrite_double_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5awrite_double_2_c
- END INTERFACE
-
- hdferr = h5awrite_double_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_2
-
-
- SUBROUTINE h5awrite_double_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_3_C'::h5awrite_double_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5awrite_double_3_c
- END INTERFACE
-
- hdferr = h5awrite_double_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_3
-
-
- SUBROUTINE h5awrite_double_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_4_C'::h5awrite_double_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5awrite_double_4_c
- END INTERFACE
-
- hdferr = h5awrite_double_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_4
-
-
- SUBROUTINE h5awrite_double_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_5_C'::h5awrite_double_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5awrite_double_5_c
- END INTERFACE
-
- hdferr = h5awrite_double_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_5
-
-
- SUBROUTINE h5awrite_double_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_6_C'::h5awrite_double_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5awrite_double_6_c
- END INTERFACE
-
- hdferr = h5awrite_double_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_6
-
-
- SUBROUTINE h5awrite_double_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5awrite_double_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5awrite_double_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AWRITE_DOUBLE_7_C'::h5awrite_double_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5awrite_double_7_c
- END INTERFACE
-
- hdferr = h5awrite_double_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5awrite_double_7
-
-
- SUBROUTINE h5aread_double_scalar(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT) :: buf ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_s_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_S_C'::h5aread_double_s_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT)::buf
- END FUNCTION h5aread_double_s_c
- END INTERFACE
-
- hdferr = h5aread_double_s_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_scalar
-
- SUBROUTINE h5aread_double_1(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_1_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_1_C'::h5aread_double_1_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5aread_double_1_c
- END INTERFACE
-
- hdferr = h5aread_double_1_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_1
-
-
- SUBROUTINE h5aread_double_2(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_2_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_2_C'::h5aread_double_2_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5aread_double_2_c
- END INTERFACE
-
- hdferr = h5aread_double_2_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_2
-
-
- SUBROUTINE h5aread_double_3(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_3_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_3_C'::h5aread_double_3_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5aread_double_3_c
- END INTERFACE
-
- hdferr = h5aread_double_3_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_3
-
-
- SUBROUTINE h5aread_double_4(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_4_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_4_C'::h5aread_double_4_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5aread_double_4_c
- END INTERFACE
-
- hdferr = h5aread_double_4_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_4
-
-
- SUBROUTINE h5aread_double_5(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_5_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_5_C'::h5aread_double_5_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5aread_double_5_c
- END INTERFACE
-
- hdferr = h5aread_double_5_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_5
-
-
- SUBROUTINE h5aread_double_6(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_6_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_6_C'::h5aread_double_6_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5aread_double_6_c
- END INTERFACE
-
- hdferr = h5aread_double_6_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_6
-
-
- SUBROUTINE h5aread_double_7(attr_id, memtype_id, buf, dims, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: attr_id ! Attribute identifier
- INTEGER(HID_T), INTENT(IN) :: memtype_id ! Attribute datatype
- ! identifier (in memory)
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- ! Attribute data
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- ! INTEGER, EXTERNAL :: h5aread_double_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5aread_double_7_c(attr_id, memtype_id, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5AREAD_DOUBLE_7_C'::h5aread_double_7_c
- !DEC$ENDIF
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims ! Array to story buf dimension sizes
- INTEGER(HID_T), INTENT(IN) :: attr_id
- INTEGER(HID_T), INTENT(IN) :: memtype_id
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5aread_double_7_c
- END INTERFACE
-
- hdferr = h5aread_double_7_c(attr_id, memtype_id, buf, dims)
- END SUBROUTINE h5aread_double_7
-
-
- !
- ! ----- H5D ----
- !
- SUBROUTINE h5dwrite_double_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_S_C'::h5dwrite_double_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN) :: buf
- END FUNCTION h5dwrite_double_s_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_scalar
-
- SUBROUTINE h5dwrite_double_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_1_C'::h5dwrite_double_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dwrite_double_1_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_1
-
- SUBROUTINE h5dwrite_double_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_2_C'::h5dwrite_double_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dwrite_double_2_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_2
-
- SUBROUTINE h5dwrite_double_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_3_C'::h5dwrite_double_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dwrite_double_3_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_3
-
- SUBROUTINE h5dwrite_double_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_4_C'::h5dwrite_double_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dwrite_double_4_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_4
-
- SUBROUTINE h5dwrite_double_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_5_C'::h5dwrite_double_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dwrite_double_5_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_5
-
- SUBROUTINE h5dwrite_double_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_6_C'::h5dwrite_double_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dwrite_double_6_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_6
-
- SUBROUTINE h5dwrite_double_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dwrite_double_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dwrite_double_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DWRITE_DOUBLE_7_C'::h5dwrite_double_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(IN), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dwrite_double_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dwrite_double_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dwrite_double_7
-
- SUBROUTINE h5dread_double_scalar(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT) :: buf ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_s_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_s_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_S_C'::h5dread_double_s_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(OUT) :: buf
- END FUNCTION h5dread_double_s_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_s_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_scalar
-
- SUBROUTINE h5dread_double_1(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_1_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_1_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_1_C'::h5dread_double_1_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1)) :: buf
- END FUNCTION h5dread_double_1_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_1_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_1
-
- SUBROUTINE h5dread_double_2(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_2_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_2_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_2_C'::h5dread_double_2_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2)) :: buf
- END FUNCTION h5dread_double_2_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_2_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_2
-
- SUBROUTINE h5dread_double_3(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_3_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_3_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_3_C'::h5dread_double_3_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3)) :: buf
- END FUNCTION h5dread_double_3_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_3_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_3
-
- SUBROUTINE h5dread_double_4(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_4_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_4_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_4_C'::h5dread_double_4_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf
- END FUNCTION h5dread_double_4_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_4_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_4
-
- SUBROUTINE h5dread_double_5(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_5_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_5_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_5_C'::h5dread_double_5_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf
- END FUNCTION h5dread_double_5_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_5_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_5
-
- SUBROUTINE h5dread_double_6(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_6_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_6_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_6_C'::h5dread_double_6_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf
- END FUNCTION h5dread_double_6_c
- END INTERFACE
-
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_6_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_6
-
- SUBROUTINE h5dread_double_7(dset_id, mem_type_id, buf, dims, hdferr, &
- mem_space_id, file_space_id, xfer_prp)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: dset_id ! Dataset identifier
- INTEGER(HID_T), INTENT(IN) :: mem_type_id ! Memory datatype identifier
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- ! Data buffer
- INTEGER, INTENT(OUT) :: hdferr ! Error code
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id
- ! Memory dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id
- ! File dataspace identfier
- INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp
- ! Transfer property list identifier
-
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
-
- ! INTEGER, EXTERNAL :: h5dread_double_7_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dread_double_7_c(dset_id, mem_type_id, &
- mem_space_id_default, &
- file_space_id_default, &
- xfer_prp_default, buf, dims)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DREAD_DOUBLE_7_C'::h5dread_double_7_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: dset_id
- INTEGER(HID_T), INTENT(IN) :: mem_type_id
- INTEGER(HID_T) :: mem_space_id_default
- INTEGER(HID_T) :: file_space_id_default
- INTEGER(HID_T) :: xfer_prp_default
- INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
- DOUBLE PRECISION, INTENT(INOUT), &
- DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf
- END FUNCTION h5dread_double_7_c
- END INTERFACE
-
- xfer_prp_default = H5P_DEFAULT_F
- mem_space_id_default = H5S_ALL_F
- file_space_id_default = H5S_ALL_F
-
- if (present(xfer_prp)) xfer_prp_default = xfer_prp
- if (present(mem_space_id)) mem_space_id_default = mem_space_id
- if (present(file_space_id)) file_space_id_default = file_space_id
-
- hdferr = h5dread_double_7_c(dset_id, mem_type_id, mem_space_id_default, &
- file_space_id_default, xfer_prp_default, buf, dims)
-
- END SUBROUTINE h5dread_double_7
-
- !----------------------------------------------------------------------
- ! Name: h5dfill_double
- !
- ! Purpose: Fills dataspace elements with a fill value in a memory buffer.
- ! Only INTEGER, CHARACTER, REAL and DOUBLE PRECISION datatypes
- ! of the fillvalues and buffers are supported. Buffer and fillvalue
- ! are assumed to have the same datatype.
- ! Only one-dimesional buffers are supported.
- !
- ! Inputs:
- ! fill_value - fill value
- ! space_id - memory space selection identifier
- ! buf - data buffer iin memory ro apply selection to
- ! - of k-th dimension of the buf array
- ! Outputs:
- ! hdferr: - error code
- ! Success: 0
- ! Failure: -1
- !
- ! Programmer: Elena Pourmal
- ! March 12, 2003
- !
- !----------------------------------------------------------------------
-
- SUBROUTINE h5dfill_double(fill_value, space_id, buf, hdferr)
- IMPLICIT NONE
- DOUBLE PRECISION, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- DOUBLE PRECISION, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
-
- ! INTEGER, EXTERNAL :: h5dfill_double_c
- ! MS FORTRAN needs explicit interface for C functions called here.
- !
- INTERFACE
- INTEGER FUNCTION h5dfill_double_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DFILL_DOUBLE_C'::h5dfill_double_c
- !DEC$ENDIF
- DOUBLE PRECISION, INTENT(IN) :: fill_value ! Fill value
- INTEGER(HID_T) :: fill_type_id ! Fill value datatype identifier
- INTEGER(HID_T), INTENT(IN) :: space_id ! Memory dataspace selection identifier
- DOUBLE PRECISION, INTENT(IN), DIMENSION(*) :: buf ! Memory buffer to fill in
- INTEGER(HID_T) :: mem_type_id ! Buffer dadtype identifier
- END FUNCTION h5dfill_double_c
- END INTERFACE
- fill_type_id = H5T_NATIVE_DOUBLE
- mem_type_id = H5T_NATIVE_DOUBLE
-
- hdferr = h5dfill_double_c(fill_value, fill_type_id, space_id, &
- buf, mem_type_id)
-
-
- END SUBROUTINE h5dfill_double
-
- !
- ! -- H5P ---
- !
-
- SUBROUTINE h5pset_fill_value_double(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- DOUBLE PRECISION, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pset_fill_value_double_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_FILL_VALUE_DOUBLE_C'::h5pset_fill_value_double_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- DOUBLE PRECISION, INTENT(IN) :: fillvalue
- END FUNCTION h5pset_fill_value_double_c
- END INTERFACE
-
- hdferr = h5pset_fill_value_double_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pset_fill_value_double
-
- SUBROUTINE h5pget_fill_value_double(prp_id, type_id, fillvalue, &
- hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
- ! of fillvalue datatype
- ! (in memory)
- DOUBLE PRECISION, INTENT(IN) :: fillvalue ! Fillvalue
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-
- INTERFACE
- INTEGER FUNCTION h5pget_fill_value_double_c(prp_id, type_id, fillvalue)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_FILL_VALUE_DOUBLE_C'::h5pget_fill_value_double_c
- !DEC$ENDIF
- INTEGER(HID_T), INTENT(IN) :: prp_id
- INTEGER(HID_T), INTENT(IN) :: type_id
- DOUBLE PRECISION :: fillvalue
- END FUNCTION h5pget_fill_value_double_c
- END INTERFACE
-
- hdferr = h5pget_fill_value_double_c(prp_id, type_id, fillvalue)
- END SUBROUTINE h5pget_fill_value_double
-
-!
-!****s* H5P (F90)/h5pset_double
-!
-! NAME
-! h5pset_double
-!
-! PURPOSE
-! Sets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! value - value to set property to
-! OUTPUTS
-! hdferr: - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-! SOURCE
- SUBROUTINE h5pset_double(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- DOUBLE PRECISION, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pset_double_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PSET_DOUBLE_C'::h5pset_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- DOUBLE PRECISION, INTENT(IN) :: value
- END FUNCTION h5pset_double_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pset_double_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pset_double
-
-!****s* H5P (F90)/h5pget_double
-!
-! NAME
-! h5pget_double
-!
-! PURPOSE
-! Gets a property list value
-!
-! INPUTS
-! prp_id - iproperty list identifier to modify
-! name - name of property to modify
-! OUTPUTS
-! value - value of property
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 9, 2002
-!
-! SOURCE
- SUBROUTINE h5pget_double(prp_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to modify
- DOUBLE PRECISION, INTENT(OUT) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pget_double_c(prp_id, name, name_len, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PGET_DOUBLE_C'::h5pget_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: prp_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- DOUBLE PRECISION, INTENT(OUT) :: value
- END FUNCTION h5pget_double_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pget_double_c(prp_id, name , name_len, value)
- END SUBROUTINE h5pget_double
-
-!
-!****s* H5P (F90)/h5pregister_double
-!
-! NAME
-! h5pregister_double
-!
-! PURPOSE
-! Registers a permanent property with a property list class.
-!
-! INPUTS
-! class - property list class to register
-! permanent property within
-! name - name of property to register
-! size - size of property in bytes
-! value - default value for property in newly
-! created property lists
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-!
-! SOURCE
- SUBROUTINE h5pregister_double(class, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: class ! Property list class identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to register
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- DOUBLE PRECISION, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pregister_double_c(class, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PREGISTER_DOUBLE_C'::h5pregister_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: class
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- DOUBLE PRECISION, INTENT(IN) :: value
- END FUNCTION h5pregister_double_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pregister_double_c(class, name , name_len, size, value)
- END SUBROUTINE h5pregister_double
-
-!****s* H5P (F90)/h5pinsert_double
-!
-! NAME
-!
-! h5pinsert_double
-!
-! PURPOSE
-! Registers a temporary property with a property list class.
-!
-! INPUTS
-! plist - property list identifier
-! permanent property within
-! name - name of property to insert
-! size - size of property in bytes
-! value - initial value for the property
-! OUTPUTS
-! hdferr - error code
-! Success: 0
-! Failure: -1
-! AUTHOR
-! Elena Pourmal
-! October 10, 2002
-! SOURCE
- SUBROUTINE h5pinsert_double(plist, name, size, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: plist ! Property list identifier
- CHARACTER(LEN=*), INTENT(IN) :: name ! Name of property to insert
- INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the property value
- DOUBLE PRECISION, INTENT(IN) :: value ! Property value
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: name_len
-
- INTERFACE
- INTEGER FUNCTION h5pinsert_double_c(plist, name, name_len, size, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5PINSERT_DOUBLE_C'::h5pinsert_double_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: plist
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: name_len
- INTEGER(SIZE_T), INTENT(IN) :: size
- DOUBLE PRECISION, INTENT(IN) :: value
- END FUNCTION h5pinsert_double_c
- END INTERFACE
-
- name_len = LEN(name)
- hdferr = h5pinsert_double_c(plist, name , name_len, size, value)
- END SUBROUTINE h5pinsert_double
-
-END MODULE H5_DBLE_INTERFACE
diff --git a/fortran/src/H5_buildiface.F90 b/fortran/src/H5_buildiface.F90
new file mode 100644
index 0000000..9a42cbf
--- /dev/null
+++ b/fortran/src/H5_buildiface.F90
@@ -0,0 +1,1024 @@
+!****p* Program/H5_buildiface
+!
+! NAME
+! Executable: H5_buildiface
+!
+! FILE
+! fortran/src/H5_buildiface.f90
+!
+! PURPOSE
+! This stand alone program is used at build time to generate the module
+! H5_gen (H5_gen.F90). It cycles through all the available KIND parameters for
+! integers and reals. The appropriate program and subroutines are then generated
+! depending on which of the KIND values are found.
+!
+! NOTES
+! This program uses the Fortran 2008 intrinsic function STORAGE_SIZE or SIZEOF
+! depending on availablity.It generates code that makes use of
+! STORAGE_SIZE/SIZEOF in H5_gen.F90. STORAGE_SIZE is standard
+! compliant and should always be chosen over SIZEOF.
+!
+! The availability of STORAGE_SIZE/SIZEOF is checked at configure time and the TRUE/FALSE
+! condition is set in the configure variable "FORTRAN_HAVE_STORAGE_SIZE" or
+! "FORTRAN_HAVE_SIZEOF".
+!
+! The use of C_SIZOF(X) is not used since the argument X must be an interoperable
+! data entity.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! AUTHOR
+! M. Scot Breitenfeld
+!
+!*****
+
+#include <H5config_f.inc>
+
+PROGRAM H5_buildiface
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+
+! These values are valid REAL KINDs (with corresponding C float) found during configure
+ H5_H5CONFIG_F_NUM_RKIND
+ H5_H5CONFIG_F_RKIND
+! These values are valid INTEGER KINDs (with corresponding C integer) found during configure
+ H5_H5CONFIG_F_NUM_IKIND
+ H5_H5CONFIG_F_IKIND
+
+ INTEGER :: i, j, k
+ INTEGER :: ji, jr, jd
+#ifdef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+ REAL(KIND=C_LONG_DOUBLE) :: c_longdble
+#endif
+ REAL(KIND=C_DOUBLE) :: c_dble
+ REAL(KIND=C_FLOAT) :: c_flt
+ INTEGER :: sizeof_var
+ CHARACTER(LEN=2) :: chr2
+! subroutine rank of array being passed in
+ CHARACTER(LEN=2), DIMENSION(1:8), PARAMETER :: chr_rank=(/"_0","_1","_2","_3","_4","_5","_6","_7"/)
+! rank definitions
+ CHARACTER(LEN=70), DIMENSION(1:8), PARAMETER :: rank_dim_line=(/ &
+ ' ', &
+ ', DIMENSION(dims(1)) ', &
+ ', DIMENSION(dims(1),dims(2)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7))' &
+ /)
+! pointer to the buffer
+ CHARACTER(LEN=37), DIMENSION(1:8), PARAMETER :: f_ptr_line=(/ &
+ ' f_ptr = C_LOC(buf) ', &
+ ' f_ptr = C_LOC(buf(1)) ', &
+ ' f_ptr = C_LOC(buf(1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1,1))' &
+ /)
+ CHARACTER(LEN=42), DIMENSION(1:8), PARAMETER :: fchr_ptr_line=(/ &
+ ' f_ptr = C_LOC(buf(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1))' &
+ /)
+
+! (a) Generate Fortran H5* interfaces having multiple KIND interfaces.
+!
+! DEVELOPER'S NOTES:
+!
+! Only interfaces with arrays of rank 7 and less are provided. Even-though, the F2008
+! standard extended the maximum rank to 15, it was decided that user's should use the
+! new APIs to handle those use cases. Handling rank 7 and less is for backward compatibility
+! with the Fortran 90/95 APIs codes which could never handle ranks greater than 7.
+
+ OPEN(11,FILE='H5_gen.F90')
+ WRITE(11,'(40(A,/))') &
+'!****h* ROBODoc/H5_gen.F90',&
+'!',&
+'! NAME',&
+'! H5_gen',&
+'! ',&
+'! PURPOSE',&
+'! This module is generated at build by H5_buildiface.F90 to handle all the',&
+'! detected KINDs for APIs being passed INTEGERs, REALs and CHARACTERs. Currently ',&
+'! these are H5A, H5D and H5P APIs',&
+'!',&
+'! COPYRIGHT',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'! Copyright by The HDF Group. *',&
+'! All rights reserved. *',&
+'! *',&
+'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
+'! terms governing use, modification, and redistribution, is contained in *',&
+'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
+'! of the source code distribution tree; Copyright.html can be found at the *',&
+'! root level of an installed copy of the electronic HDF5 document set and *',&
+'! is linked from the top-level documents page. It can also be found at *',&
+'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
+'! access to either file, you may request a copy from help@hdfgroup.org. *',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'!',&
+'! AUTHOR',&
+'! H5_buildiface.F90',&
+'!',&
+'!*****'
+
+ WRITE(11,'(A)') "MODULE H5_GEN"
+
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' USE H5GLOBAL'
+
+ WRITE(11,'(A)') ' USE H5A'
+ WRITE(11,'(A)') ' USE H5D'
+ WRITE(11,'(A)') ' USE H5P'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+!***************
+! H5A INTERFACES
+!***************
+!
+! H5Awrite_f
+!
+ WRITE(11,'(A)') " INTERFACE h5awrite_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5awrite_rkind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO i = 1, num_ikinds
+ j = ikind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5awrite_ikind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO k = 2, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5awrite_ckind_rank"//chr_rank(k)
+ ENDDO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Aread_f
+ WRITE(11,'(A)') " INTERFACE h5aread_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5aread_rkind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO i = 1, num_ikinds
+ j = ikind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5aread_ikind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO k = 2, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5aread_ckind_rank"//chr_rank(k)
+ ENDDO
+ WRITE(11,'(A)') " END INTERFACE"
+!***************
+! H5D INTERFACES
+!***************
+!
+! H5Dwrite_f
+ WRITE(11,'(A)') " INTERFACE h5dwrite_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dwrite_rkind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO i = 1, num_ikinds
+ j = ikind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dwrite_ikind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO k = 2, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dwrite_ckind_rank"//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Dread_f
+ WRITE(11,'(A)') " INTERFACE h5dread_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dread_rkind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO i = 1, num_ikinds
+ j = ikind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dread_ikind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ DO k = 2, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5dread_ckind_rank"//chr_rank(k)
+ ENDDO
+ WRITE(11,'(A)') " END INTERFACE"
+
+!***************
+! H5P INTERFACES
+!***************
+!
+! H5Pset_fill_value_f
+ WRITE(11,'(A)') " INTERFACE h5pset_fill_value_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pset_fill_value_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Pget_fill_value_f
+ WRITE(11,'(A)') " INTERFACE h5pget_fill_value_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pget_fill_value_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Pset_f
+ WRITE(11,'(A)') " INTERFACE h5pset_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pset_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Pget_f
+ WRITE(11,'(A)') " INTERFACE h5pget_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pget_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Pregister_f
+ WRITE(11,'(A)') " INTERFACE h5pregister_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pregister_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! H5Pinsert_f
+ WRITE(11,'(A)') " INTERFACE h5pinsert_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE h5pinsert_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+ WRITE(11,'(A)') 'CONTAINS'
+
+!**********************
+! H5A APIs
+!**********************
+!
+! H5Awrite_f
+
+!****s* H5A (F03)/H5Awrite_f_F90
+!
+! NAME
+! H5Awrite_f_F90
+!
+! PURPOSE
+! Writes an attribute.
+!
+! Inputs:
+! attr_id - Attribute identifier
+! memtype_id - Attribute datatype identifier (in memory)
+! dims - Array to hold corresponding dimension sizes of data buffer buf;
+! dim(k) has value of the k-th dimension of buffer buf;
+! values are ignored if buf is a scalar
+! buf - Data buffer; may be a scalar or an array
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces are added for
+! called C functions (it is needed for Windows
+! port). February 27, 2001
+!
+! dims parameter was added to make code portable;
+! Aprile 4, 2001
+!
+! Changed buf intent to INOUT to be consistant
+! with how the C functions handles it. The pg
+! compiler will return 0 if a buf value is not set.
+! February, 2008
+!
+! NOTES
+! This function is overloaded to write INTEGER,
+! REAL, REAL(KIND=C_DOUBLE) and CHARACTER buffers
+! up to 7 dimensions.
+!
+! Fortran90 Interface:
+!! SUBROUTINE H5Awrite_f(attr_id, memtype_id, buf, dims, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: attr_id
+!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
+!! TYPE , INTENT(IN) :: buf
+!! INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5awrite_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5awrite_rkind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5awrite_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+ DO i = 1, num_ikinds
+ k = ikind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5awrite_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5awrite_ikind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' INTEGER(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5awrite_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+ DO j = 2, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5awrite_ckind_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5awrite_ckind_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*) , INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') fchr_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5awrite_ckind_rank'//chr_rank(j)
+ ENDDO
+
+!
+! H5Aread_f
+
+!****s* H5A (F03)/H5Aread_f_F90
+!
+! NAME
+! H5Aread_f_F90
+!
+! PURPOSE
+! Reads an attribute.
+!
+! Inputs:
+! attr_id - Attribute identifier
+! memtype_id - Attribute datatype identifier (in memory)
+! dims - Array to hold corresponding dimension sizes of data buffer buf;
+! dim(k) has value of the k-th dimension of buffer buf;
+! values are ignored if buf is a scalar
+!
+! Outputs:
+! buf - Data buffer; may be a scalar or an array
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces are added for
+! called C functions (it is needed for Windows
+! port). February 27, 2001
+!
+! dims parameter was added to make code portable;
+! Aprile 4, 2001
+!
+! Changed buf intent to INOUT to be consistant
+! with how the C functions handles it. The pg
+! compiler will return 0 if a buf value is not set.
+! February, 2008
+!
+! NOTES
+! This function is overloaded to write INTEGER,
+! REAL, REAL(KIND=C_DOUBLE) and CHARACTER buffers
+! up to 7 dimensions.
+! Fortran90 Interface:
+!! SUBROUTINE H5Aread_f(attr_id, memtype_id, buf, dims, hdferr)
+!! INTEGER(HID_T) , INTENT(IN) :: attr_id
+!! INTEGER(HID_T) , INTENT(IN) :: memtype_id
+!! TYPE , INTENT(INOUT) :: buf
+!! INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims
+!! INTEGER , INTENT(OUT) :: hdferr
+!*****
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5aread_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5aread_rkind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5aread_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+ DO i = 1, num_ikinds
+ k = ikind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5aread_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5aread_ikind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' INTEGER(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5aread_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+ DO j = 2, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5aread_ckind_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5aread_ckind_rank'//chr_rank(j)//'(attr_id, memtype_id, buf, dims, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: attr_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T) , INTENT(IN) :: memtype_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER , INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') fchr_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5aread_ckind_rank'//chr_rank(j)
+ ENDDO
+
+!**********************
+! H5D APIs
+!**********************
+!
+! h5dread_f
+
+!
+! NAME
+! h5dread_f
+!
+! PURPOSE
+! Reads raw data from the specified dataset into buf,
+! converting from file datatype and dataspace to memory
+! datatype and dataspace.
+!
+! Inputs:
+! dset_id - dataset identifier
+! mem_type_id - memory type identifier
+! dims - 1-dim array of size 7; dims(k) has the size
+! - of k-th dimension of the buf array
+! Outputs:
+! buf - buffer to read data in
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+! Optional parameters:
+! mem_space_id - memory dataspace identifier
+! file_space_id - file dataspace identifier
+! xfer_prp - trasfer property list identifier
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). February 28, 2001
+!
+! dims parameter was added to make code portable;
+! n parameter was replaced with dims parameter in
+! the h5dwrite_reference_obj and h5dwrite_reference_dsetreg
+! functions. April 2, 2001
+!
+! NOTES
+! This function is overloaded to read INTEGER,
+! REAL, DOUBLE PRECISION and CHARACTER buffers
+! up to 7 dimensions, and one dimensional buffers
+! of the TYPE(hobj_ref_t_f) and TYPE(hdset_reg_ref_t_f)
+! types.
+!
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dread_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dread_rkind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dread_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+
+ ENDDO
+ ENDDO
+
+ DO i = 1, num_ikinds
+ k = ikind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dread_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dread_ikind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' INTEGER(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dread_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+
+ ENDDO
+ ENDDO
+ DO j = 2, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dread_ckind_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dread_ckind_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(INOUT)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') fchr_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dread_ckind_rank'//chr_rank(j)
+ ENDDO
+!
+! h5dwrite_f
+
+!****s* H5D (F03)/h5dwrite_f_F03
+!
+! NAME
+! h5dwrite_f_F03
+!
+! PURPOSE
+! Writes raw data from a dataset into a buffer.
+!
+! Inputs:
+! dset_id - Identifier of the dataset to write to.
+! mem_type_id - Identifier of the memory datatype.
+! buf - Buffer with data to be written to the file.
+!
+! Outputs:
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! Optional parameters:
+! mem_space_id - Identifier of the memory dataspace.
+! file_space_id - Identifier of the dataset's dataspace in the file.
+! xfer_prp - Identifier of a transfer property list for this I/O operation.
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! September 17, 2011
+!
+! Fortran2003 Interface:
+!! SUBROUTINE h5dwrite_f(dset_id, mem_type_id, buf, hdferr, &
+!! mem_space_id, file_space_id, xfer_prp)
+!! INTEGER(HID_T), INTENT(IN) :: dset_id
+!! INTEGER(HID_T), INTENT(IN) :: mem_type_id
+!! TYPE(C_PTR) , INTENT(IN) :: buf
+!! INTEGER , INTENT(OUT) :: hdferr
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: mem_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: file_space_id
+!! INTEGER(HID_T), INTENT(IN) , OPTIONAL :: xfer_prp
+!*****
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dwrite_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dwrite_rkind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dwrite_rkind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+ DO i = 1, num_ikinds
+ k = ikind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dwrite_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dwrite_ikind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' INTEGER(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dwrite_ikind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+ DO j = 2, 8
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5dwrite_ckind_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5dwrite_ckind_rank'//chr_rank(j)//'(dset_id, mem_type_id, buf, dims, hdferr, &'
+ WRITE(11,'(A)') ' mem_space_id, file_space_id, xfer_prp)'
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: dset_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: mem_type_id'
+ WRITE(11,'(A)') ' INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: mem_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: file_space_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), OPTIONAL, INTENT(IN) :: xfer_prp'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: xfer_prp_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: mem_space_id_default'
+ WRITE(11,'(A)') ' INTEGER(HID_T) :: file_space_id_default'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' xfer_prp_default = H5P_DEFAULT_F'
+ WRITE(11,'(A)') ' mem_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' file_space_id_default = H5S_ALL_F'
+ WRITE(11,'(A)') ' IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp'
+ WRITE(11,'(A)') ' IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id'
+ WRITE(11,'(A)') ' IF(PRESENT(file_space_id)) file_space_id_default = file_space_id'
+ WRITE(11,'(A)') fchr_ptr_line(j)
+ WRITE(11,'(A)') ' hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, &'
+ WRITE(11,'(A)') ' file_space_id_default, xfer_prp_default, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5dwrite_ckind_rank'//chr_rank(j)
+ ENDDO
+
+!**********************
+! H5P APIs
+!**********************
+!
+! H5Pset_fill_value_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pset_fill_value_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5pset_fill_value_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(prp_id, type_id, fillvalue, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: prp_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: type_id'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(IN), TARGET :: fillvalue'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr '
+ WRITE(11,'(A)') ' f_ptr = C_LOC(fillvalue)'
+ WRITE(11,'(A)') ' hdferr = h5pset_fill_value_c(prp_id, type_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5pset_fill_value_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! H5Pget_fill_value_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pget_fill_value_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5pget_fill_value_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(prp_id, type_id, fillvalue, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: prp_id'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: type_id'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(OUT), TARGET :: fillvalue'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' f_ptr = C_LOC(fillvalue)'
+ WRITE(11,'(A)') ' hdferr = h5pget_fill_value_c(prp_id, type_id, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5pget_fill_value_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! H5Pset_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pset_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5pset_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(prp_id, name, value, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: prp_id'
+ WRITE(11,'(A)') ' CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(IN), TARGET :: value'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER :: name_len'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' f_ptr = C_LOC(value)'
+ WRITE(11,'(A)') ' name_len = LEN(name)'
+ WRITE(11,'(A)') ' hdferr = h5pget_c(prp_id, name, name_len, f_ptr)'
+
+ WRITE(11,'(A)') ' END SUBROUTINE h5pset_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! H5Pget_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pget_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5pget_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(prp_id, name, value, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: prp_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: name'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(OUT), TARGET :: value'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER :: name_len'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' f_ptr = C_LOC(value)'
+ WRITE(11,'(A)') ' name_len = LEN(name)'
+ WRITE(11,'(A)') ' hdferr = h5pget_c(prp_id, name, name_len, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5pget_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! H5Pregister_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pregister_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') 'SUBROUTINE h5pregister_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(class, name, size, value, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: class'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: name'
+ WRITE(11,'(A)') ' INTEGER(SIZE_T), INTENT(IN) :: size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(IN), TARGET :: value'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER :: name_len'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' f_ptr = C_LOC(value)'
+ WRITE(11,'(A)') ' name_len = LEN(name)'
+ WRITE(11,'(A)') ' hdferr = h5pregister_c(class, name, name_len, size, f_ptr)'
+ WRITE(11,'(A)') 'END SUBROUTINE h5pregister_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! H5Pinsert_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5pinsert_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5pinsert_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'(plist, name, size, value, hdferr)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(HID_T), INTENT(IN) :: plist'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: name'
+ WRITE(11,'(A)') ' INTEGER(SIZE_T), INTENT(IN) :: size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(IN), TARGET :: value'
+ WRITE(11,'(A)') ' INTEGER, INTENT(OUT) :: hdferr'
+ WRITE(11,'(A)') ' INTEGER :: name_len'
+ WRITE(11,'(A)') ' TYPE(c_ptr) :: f_ptr'
+ WRITE(11,'(A)') ' f_ptr = c_loc(value)'
+ WRITE(11,'(A)') ' name_len = LEN(name)'
+ WRITE(11,'(A)') ' hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5pinsert_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+ WRITE(11,'(A)') 'END MODULE H5_gen'
+
+ CLOSE(11)
+
+END PROGRAM H5_buildiface
+
+
+
diff --git a/fortran/src/H5_f.c b/fortran/src/H5_f.c
index 1641989..e527dce 100644
--- a/fortran/src/H5_f.c
+++ b/fortran/src/H5_f.c
@@ -1,6 +1,6 @@
/****ih* H5_f/H5_f
* PURPOSE
- * This file contains C stubs for H5 Fortran APIs
+ * This file contains C stubs for H5 Fortran APIs
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -22,7 +22,7 @@
*/
#include "H5f90.h"
-
+#include "H5fort_type_defines.h"
/****if* H5_f/h5init_types_c
* NAME
* h5init_types_c
@@ -30,17 +30,17 @@
* Initialize predefined datatypes in Fortran
* INPUTS
* types - array with the predefined Native Fortran
- * type, its element and length must be the
- * same as the types array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the types array defined in the
+ * H5f90global.F90
* floatingtypes - array with the predefined Floating Fortran
- * type, its element and length must be the
- * same as the floatingtypes array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the floatingtypes array defined in the
+ * H5f90global.F90
* integertypes - array with the predefined Integer Fortran
- * type, its element and length must be the
- * same as the integertypes array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the integertypes array defined in the
+ * H5f90global.F90
* RETURNS
* 0 on success, -1 on failure
* AUTHOR
@@ -49,14 +49,14 @@
* SOURCE
*/
int_f
-nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertypes )
+h5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertypes )
/******/
{
int ret_value = -1;
hid_t c_type_id;
size_t tmp_val;
-/* Fortran INTEGER is may not be the same as C in; do all checking to find
+/* Fortran INTEGER may not be the same as C; do all checking to find
an appropriate size
*/
if (sizeof(int_f) == sizeof(int)) {
@@ -92,6 +92,12 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
if ((types[2] = (hid_t_f)H5Tcopy(H5T_NATIVE_LDOUBLE)) < 0) return ret_value;
}/*end else */
#endif
+#ifdef H5_HAVE_FLOAT128
+ else if(sizeof(double_f)==sizeof(__float128)) {
+ if ((types[2] = H5Tcopy (H5T_NATIVE_FLOAT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[2], 128) < 0) return ret_value;
+ }/*end else */
+#endif
/*
if ((types[3] = H5Tcopy(H5T_NATIVE_UINT8)) < 0) return ret_value;
@@ -126,7 +132,11 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
if ((types[6] = (hid_t_f)H5Tcopy(H5T_NATIVE_INT)) < 0) return ret_value;
} /*end if */
else if (sizeof(int_1_f) == sizeof(long long)) {
- if ((types[6] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
+ if ((types[6] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
+ } /*end if */
+ else {
+ if ((types[6] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[6], 128) < 0) return ret_value;
} /*end else */
/*
* FIND H5T_NATIVE_INTEGER_2
@@ -143,6 +153,10 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
else if (sizeof(int_2_f) == sizeof(long long)) {
if ((types[7] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
} /*end else */
+ else {
+ if ((types[7] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[7], 128) < 0) return ret_value;
+ } /*end else */
/*
* FIND H5T_NATIVE_INTEGER_4
*/
@@ -158,6 +172,10 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
else if (sizeof(int_4_f) == sizeof(long long)) {
if ((types[8] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
} /*end else */
+ else {
+ if ((types[8] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[8], 128) < 0) return ret_value;
+ } /*end else */
/*
* FIND H5T_NATIVE_INTEGER_8
*/
@@ -173,47 +191,65 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
else if (sizeof(int_8_f) == sizeof(long long)) {
if ((types[9] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
} /*end else */
+ else {
+ if ((types[9] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[9], 128) < 0) return ret_value;
+ } /*end else */
+
/*
- * FIND H5T_NATIVE_REAL_4
+ * FIND H5T_NATIVE_REAL_C_FLOAT
*/
- if (sizeof(real_4_f) == sizeof(float)) {
+ if (sizeof(real_C_FLOAT_f) == sizeof(float)) {
if ((types[10] = (hid_t_f)H5Tcopy(H5T_NATIVE_FLOAT)) < 0) return ret_value;
} /*end if */
- else if (sizeof(real_4_f) == sizeof(double)) {
+ else if (sizeof(real_C_FLOAT_f) == sizeof(double)) {
if ((types[10] = (hid_t_f)H5Tcopy(H5T_NATIVE_DOUBLE)) < 0) return ret_value;
} /*end if */
#if H5_SIZEOF_LONG_DOUBLE!=0
- else if (sizeof(real_4_f) == sizeof(long double)) {
+ else if (sizeof(real_C_FLOAT_f) == sizeof(long double)) {
if ((types[10] = (hid_t_f)H5Tcopy(H5T_NATIVE_LDOUBLE)) < 0) return ret_value;
} /*end else */
#endif
/*
- * FIND H5T_NATIVE_REAL_8
+ * FIND H5T_NATIVE_REAL_C_DOUBLE
*/
- if (sizeof(real_8_f) == sizeof(float)) {
+ if (sizeof(real_C_DOUBLE_f) == sizeof(float)) {
if ((types[11] = (hid_t_f)H5Tcopy(H5T_NATIVE_FLOAT)) < 0) return ret_value;
} /*end if */
- else if (sizeof(real_8_f) == sizeof(double)) {
+ else if (sizeof(real_C_DOUBLE_f) == sizeof(double)) {
if ((types[11] = (hid_t_f)H5Tcopy(H5T_NATIVE_DOUBLE)) < 0) return ret_value;
} /*end if */
#if H5_SIZEOF_LONG_DOUBLE!=0
- else if (sizeof(real_8_f) == sizeof(long double)) {
+ else if (sizeof(real_C_DOUBLE_f) == sizeof(long double)) {
if ((types[11] = (hid_t_f)H5Tcopy(H5T_NATIVE_LDOUBLE)) < 0) return ret_value;
} /*end else */
#endif
/*
- * FIND H5T_NATIVE_REAL_16
+ * FIND H5T_NATIVE_REAL_C_LONG_DOUBLE
*/
- if (sizeof(real_16_f) == sizeof(float)) {
+#if H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE!=0
+ if (sizeof(real_C_LONG_DOUBLE_f) == sizeof(float)) {
if ((types[12] = (hid_t_f)H5Tcopy(H5T_NATIVE_FLOAT)) < 0) return ret_value;
} /*end if */
- else if (sizeof(real_16_f) == sizeof(double)) {
+ else if (sizeof(real_C_LONG_DOUBLE_f) == sizeof(double)) {
if ((types[12] = (hid_t_f)H5Tcopy(H5T_NATIVE_DOUBLE)) < 0) return ret_value;
} /*end if */
-#if H5_SIZEOF_LONG_DOUBLE!=0
- else if (sizeof(real_16_f) == sizeof(long double)) {
+# if H5_FORTRAN_HAVE_C_LONG_DOUBLE!=0
+ else if (sizeof(real_C_LONG_DOUBLE_f) == sizeof(long double)) {
+ if ( H5_PAC_C_MAX_REAL_PRECISION >= H5_PAC_FC_MAX_REAL_PRECISION) {
if ((types[12] = (hid_t_f)H5Tcopy(H5T_NATIVE_LDOUBLE)) < 0) return ret_value;
- } /*end else */
+ }
+ else {
+ if ((types[12] = H5Tcopy (H5T_NATIVE_FLOAT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[12], 128) < 0) return ret_value;
+ }
+ }
+# else
+ if ((types[12] = H5Tcopy (H5T_NATIVE_FLOAT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[12], 64) < 0) return ret_value;
+# endif
+#else
+ if ((types[12] = H5Tcopy(H5T_NATIVE_DOUBLE)) < 0) return ret_value;
#endif
/*
* FIND H5T_NATIVE_B_8
@@ -221,7 +257,38 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
if ((types[13] = (hid_t_f)H5Tcopy(H5T_NATIVE_B8)) < 0) return ret_value;
if ((types[14] = (hid_t_f)H5Tcopy(H5T_NATIVE_B16)) < 0) return ret_value;
if ((types[15] = (hid_t_f)H5Tcopy(H5T_NATIVE_B32)) < 0) return ret_value;
- if ((types[16] = (hid_t_f)H5Tcopy(H5T_NATIVE_B64)) < 0) return ret_value;
+ if ((types[16] = (hid_t_f)H5Tcopy(H5T_NATIVE_B64)) < 0) return ret_value;
+
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ /*
+ * FIND H5T_NATIVE_INTEGER_16
+ */
+ if (sizeof(int_16_f) == sizeof(char)) {
+ if ((types[17] = (hid_t_f)H5Tcopy(H5T_NATIVE_CHAR)) < 0) return ret_value;
+ } /*end if */
+ else if (sizeof(int_16_f) == sizeof(short)) {
+ if ((types[17] = (hid_t_f)H5Tcopy(H5T_NATIVE_SHORT)) < 0) return ret_value;
+ } /*end if */
+ else if (sizeof(int_16_f) == sizeof(int)) {
+ if ((types[17] = (hid_t_f)H5Tcopy(H5T_NATIVE_INT)) < 0) return ret_value;
+ } /*end if */
+ else if (sizeof(int_16_f) == sizeof(long long)) {
+ if ((types[17] = (hid_t_f)H5Tcopy(H5T_NATIVE_LLONG)) < 0) return ret_value;
+ } /*end else */
+ else {
+ if ((types[17] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[17], 128) < 0) return ret_value;
+ } /*end else */
+#else
+ if ((types[17] = H5Tcopy (H5T_NATIVE_INT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[17], 128) < 0) return ret_value;
+#endif
+
+ /*
+ * FIND H5T_NATIVE_FLOAT_128
+ */
+ if ((types[18] = H5Tcopy (H5T_NATIVE_FLOAT)) < 0) return ret_value;
+ if ( H5Tset_precision (types[18], 128) < 0) return ret_value;
if ((floatingtypes[0] = (hid_t_f)H5Tcopy(H5T_IEEE_F32BE)) < 0) return ret_value;
if ((floatingtypes[1] = (hid_t_f)H5Tcopy(H5T_IEEE_F32LE)) < 0) return ret_value;
@@ -272,35 +339,35 @@ nh5init_types_c( hid_t_f * types, hid_t_f * floatingtypes, hid_t_f * integertype
* Closes predefined datatype in Fortran
* INPUTS
* types - array with the predefined Native Fortran
- * type, its element and length must be the
- * same as the types array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the types array defined in the
+ * H5f90global.F90
* lentypes - length of the types array, which must be the
- * same as the length of types array defined
- * in the H5f90global.f90
+ * same as the length of types array defined
+ * in the H5f90global.F90
* floatingtypes - array with the predefined Floating Fortran
- * type, its element and length must be the
- * same as the floatingtypes array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the floatingtypes array defined in the
+ * H5f90global.F90
* floatinglen - length of the floatingtypes array, which must be the
- * same as the length of floatingtypes array defined
- * in the H5f90global.f90
+ * same as the length of floatingtypes array defined
+ * in the H5f90global.F90
* integertypes - array with the predefined Integer Fortran
- * type, its element and length must be the
- * same as the integertypes array defined in the
- * H5f90global.f90
+ * type, its element and length must be the
+ * same as the integertypes array defined in the
+ * H5f90global.F90
* integerlen - length of the floatingtypes array, which must be the
- * same as the length of floatingtypes array defined
- * in the H5f90global.f90
+ * same as the length of floatingtypes array defined
+ * in the H5f90global.F90
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
- * Tuesday, August 3, 1999
+ * Elena Pourmal
+ * Tuesday, August 3, 1999
* SOURCE
*/
int_f
-nh5close_types_c( hid_t_f * types, int_f *lentypes,
+h5close_types_c( hid_t_f * types, int_f *lentypes,
hid_t_f * floatingtypes, int_f* floatinglen,
hid_t_f * integertypes, int_f * integerlen )
/******/
@@ -310,16 +377,16 @@ nh5close_types_c( hid_t_f * types, int_f *lentypes,
int i;
for (i = 0; i < *lentypes; i++) {
- c_type_id = types[i];
- if ( H5Tclose(c_type_id) < 0) return ret_value;
+ c_type_id = types[i];
+ if ( H5Tclose(c_type_id) < 0) return ret_value;
}
for (i = 0; i < *floatinglen; i++) {
- c_type_id = floatingtypes[i];
- if ( H5Tclose(c_type_id) < 0) return ret_value;
+ c_type_id = floatingtypes[i];
+ if ( H5Tclose(c_type_id) < 0) return ret_value;
}
for (i = 0; i < *integerlen; i++) {
- c_type_id = integertypes[i];
- if ( H5Tclose(c_type_id) < 0) return ret_value;
+ c_type_id = integertypes[i];
+ if ( H5Tclose(c_type_id) < 0) return ret_value;
}
ret_value = 0;
return ret_value;
@@ -368,7 +435,7 @@ nh5close_types_c( hid_t_f * types, int_f *lentypes,
* SOURCE
*/
int_f
-nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
+h5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
int_f *h5e_flags, hid_t_f *h5e_hid_flags, int_f *h5f_flags,
int_f *h5fd_flags, hid_t_f *h5fd_hid_flags,
int_f *h5g_flags, int_f *h5i_flags, int_f *h5l_flags, int_f *h5o_flags,
@@ -524,11 +591,11 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
h5o_flags[6] = (int_f)H5O_COPY_ALL; /* All object copying flags (for internal checking) */
/* Flags for shared message indexes.
- * Pass these flags in using the mesg_type_flags parameter in
+ * Pass these flags in using the mesg_type_flags parameter in
* H5P_set_shared_mesg_index.
* (Developers: These flags correspond to object header message type IDs,
- * but we need to assign each kind of message to a different bit so that
- * one index can hold multiple types.)
+ * but we need to assign each kind of message to a different bit so that
+ * one index can hold multiple types.)
*/
h5o_flags[7] = (int_f)H5O_SHMESG_NONE_FLAG; /* No shared messages */
h5o_flags[8] = (int_f)H5O_SHMESG_SDSPACE_FLAG; /* Simple Dataspace Message. */
@@ -547,7 +614,7 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
h5o_flags[19] = (int_f)H5O_HDR_ALL_FLAGS;
/* Maximum shared message values. Number of indexes is 8 to allow room to add
- * new types of messages.
+ * new types of messages.
*/
h5o_flags[20] = (int_f)H5O_SHMESG_MAX_NINDEXES;
h5o_flags[21] = (int_f)H5O_SHMESG_MAX_LIST_SIZE;
@@ -689,7 +756,7 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
/*
- * H5 Generic flags introduced in version 1.8 -MSB-
+ * H5 Generic flags introduced in version 1.8
*/
/* H5_index_t enum struct */
@@ -713,7 +780,7 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
}
int_f
-nh5init1_flags_c(int_f *h5lib_flags)
+h5init1_flags_c(int_f *h5lib_flags)
/******/
{
int ret_value = -1;
@@ -727,19 +794,19 @@ nh5init1_flags_c(int_f *h5lib_flags)
/****if* H5_f/h5open_c
* NAME
- * h5open_c
+ * h5open_c
* PURPOSE
- * Calls H5open call to initialize C HDF5 library
+ * Calls H5open call to initialize C HDF5 library
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
- * Friday, November 17, 2000
+ * Elena Pourmal
+ * Friday, November 17, 2000
*
* SOURCE
*/
int_f
-nh5open_c(void)
+h5open_c(void)
/******/
{
int ret_value = -1;
@@ -750,17 +817,17 @@ nh5open_c(void)
}
/****if* H5_f/h5close_c
* NAME
- * h5close_c
+ * h5close_c
* PURPOSE
- * Calls H5close call to close C HDF5 library
+ * Calls H5close call to close C HDF5 library
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
+ * Elena Pourmal
* SOURCE
*/
int_f
-nh5close_c(void)
+h5close_c(void)
/******/
{
int ret_value = -1;
@@ -772,28 +839,28 @@ nh5close_c(void)
/****if* H5_f/h5get_libversion_c
* NAME
- * h5get_libversion_c
+ * h5get_libversion_c
* PURPOSE
- * Calls H5get_libversion function
+ * Calls H5get_libversion function
* to retrieve library version info.
* INPUTS
*
- * None
+ * None
* OUTPUTS
*
- * majnum - the major version of the library
- * minnum - the minor version of the library
- * relnum - the release version of the library
+ * majnum - the major version of the library
+ * minnum - the minor version of the library
+ * relnum - the release version of the library
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
- * Tuesday, September 24, 2002
+ * Elena Pourmal
+ * Tuesday, September 24, 2002
* SOURCE
*
*/
int_f
-nh5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum)
+h5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum)
/******/
{
@@ -811,27 +878,27 @@ nh5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum)
/****if* H5_f/h5check_version_c
* NAME
- * h5check_version_c
+ * h5check_version_c
* PURPOSE
- * Calls H5check_version function
+ * Calls H5check_version function
* to verify library version info.
* INPUTS
*
- * majnum - the major version of the library
- * minnum - the minor version of the library
- * relnum - the release version of the library
+ * majnum - the major version of the library
+ * minnum - the minor version of the library
+ * relnum - the release version of the library
* OUTPUTS
*
- * None
+ * None
* RETURNS
- * 0 on success, aborts on failure
+ * 0 on success, aborts on failure
* AUTHOR
- * Elena Pourmal
- * Tuesday, September 24, 2002
+ * Elena Pourmal
+ * Tuesday, September 24, 2002
* SOURCE
*/
int_f
-nh5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum)
+h5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum)
/******/
{
int ret_value = -1;
@@ -849,18 +916,18 @@ nh5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum)
/****if* H5_f/h5garbage_collect_c
* NAME
- * h5garbage_collect_c
+ * h5garbage_collect_c
* PURPOSE
- * Calls H5garbage_collect to collect on all free-lists of all types
+ * Calls H5garbage_collect to collect on all free-lists of all types
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
- * Tuesday, September 24, 2002
+ * Elena Pourmal
+ * Tuesday, September 24, 2002
* SOURCE
*/
int_f
-nh5garbage_collect_c(void)
+h5garbage_collect_c(void)
/******/
{
int ret_value = -1;
@@ -872,18 +939,18 @@ nh5garbage_collect_c(void)
/****if* H5_f/h5dont_atexit_c
* NAME
- * h5dont_atexit_c
+ * h5dont_atexit_c
* PURPOSE
- * Calls H5dont_atexit not to install atexit cleanup routine
+ * Calls H5dont_atexit not to install atexit cleanup routine
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
- * Elena Pourmal
- * Tuesday, September 24, 2002
+ * Elena Pourmal
+ * Tuesday, September 24, 2002
* SOURCE
*/
int_f
-nh5dont_atexit_c(void)
+h5dont_atexit_c(void)
/******/
{
int ret_value = -1;
diff --git a/fortran/src/H5_ff.f90 b/fortran/src/H5_ff.F90
index 49e64a3..39e23a7 100644
--- a/fortran/src/H5_ff.f90
+++ b/fortran/src/H5_ff.F90
@@ -6,11 +6,6 @@
! PURPOSE
! This module provides fortran specific helper functions for the HDF library
!
-! USES
-! H5LIB_PROVISIONAL - This module provides helper functions for Fortran 2003
-! only features. If Fortran 2003 functions are enabled then
-! H5_ff_F03.f90 is compiled, else H5_ff_F90.f90,
-! which is just a place holder blank module, is compiled.
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
! Copyright by The HDF Group. *
@@ -28,19 +23,26 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! *** IMPORTANT ***
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
! If you add a new function you must add the function name to the
! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
! This is needed for Windows based operating systems.
!
!*****
+#include <H5config_f.inc>
+
MODULE H5LIB
- USE H5LIB_PROVISIONAL ! helper functions for Fortran 2003 features:
- ! pre-Fortran 2003 - empty module
- ! Forttran 2003 - contains functions
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, C_INTPTR_T
USE H5GLOBAL
+ IMPLICIT NONE
CONTAINS
!****s* H5LIB/h5open_f
@@ -68,21 +70,20 @@ CONTAINS
! October 13, 2011
! Fortran90 Interface:
SUBROUTINE h5open_f(error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
INTEGER :: error_1, error_2, error_3
INTERFACE
- INTEGER FUNCTION h5init_types_c(p_types, f_types, i_types)
- USE H5GLOBAL
+ INTEGER FUNCTION h5init_types_c(p_types, f_types, i_types) &
+ BIND(C,NAME='h5init_types_c')
+ IMPORT :: HID_T
+ IMPORT :: PREDEF_TYPES_LEN, FLOATING_TYPES_LEN, INTEGER_TYPES_LEN
+ IMPLICIT NONE
INTEGER(HID_T), DIMENSION(PREDEF_TYPES_LEN) :: p_types
INTEGER(HID_T), DIMENSION(FLOATING_TYPES_LEN) :: f_types
INTEGER(HID_T), DIMENSION(INTEGER_TYPES_LEN) :: i_types
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5INIT_TYPES_C'::h5init_types_c
- !DEC$ENDIF
END FUNCTION h5init_types_c
END INTERFACE
INTERFACE
@@ -104,8 +105,17 @@ CONTAINS
i_H5S_hsize_flags, &
i_H5T_flags, &
i_H5Z_flags, &
- i_H5generic_flags)
- USE H5GLOBAL
+ i_H5generic_flags) &
+ BIND(C,NAME='h5init_flags_c')
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPORT :: H5D_FLAGS_LEN, H5D_SIZE_FLAGS_LEN, &
+ H5E_FLAGS_LEN, H5E_HID_FLAGS_LEN, &
+ H5F_FLAGS_LEN, H5G_FLAGS_LEN, H5FD_FLAGS_LEN, &
+ H5FD_HID_FLAGS_LEN, H5I_FLAGS_LEN, H5L_FLAGS_LEN, &
+ H5O_FLAGS_LEN, H5P_FLAGS_LEN, H5P_FLAGS_INT_LEN, &
+ H5R_FLAGS_LEN, H5S_FLAGS_LEN, H5S_HSIZE_FLAGS_LEN, &
+ H5T_FLAGS_LEN, H5Z_FLAGS_LEN, H5generic_FLAGS_LEN
+ IMPLICIT NONE
INTEGER i_H5D_flags(H5D_FLAGS_LEN)
INTEGER(SIZE_T) i_H5D_size_flags(H5D_SIZE_FLAGS_LEN)
INTEGER i_H5E_flags(H5E_FLAGS_LEN)
@@ -125,18 +135,14 @@ CONTAINS
INTEGER i_H5T_flags(H5T_FLAGS_LEN)
INTEGER i_H5Z_flags(H5Z_FLAGS_LEN)
INTEGER i_H5generic_flags(H5generic_FLAGS_LEN)
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5INIT_FLAGS_C'::h5init_flags_c
- !DEC$ENDIF
END FUNCTION h5init_flags_c
END INTERFACE
INTERFACE
- INTEGER FUNCTION h5init1_flags_c( i_H5LIB_flags )
- USE H5GLOBAL
+ INTEGER FUNCTION h5init1_flags_c( i_H5LIB_flags ) &
+ BIND(C,NAME='h5init1_flags_c')
+ IMPORT :: H5LIB_FLAGS_LEN
+ IMPLICIT NONE
INTEGER i_H5LIB_flags(H5LIB_FLAGS_LEN)
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5INIT1_FLAGS_C'::h5init1_flags_c
- !DEC$ENDIF
END FUNCTION h5init1_flags_c
END INTERFACE
error_1 = h5init_types_c(predef_types, floating_types, integer_types)
@@ -188,7 +194,6 @@ CONTAINS
! October 13, 2011
! Fortran90 Interface:
SUBROUTINE h5close_f(error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
@@ -196,17 +201,15 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5close_types_c(p_types, P_TYPES_LEN, &
f_types, F_TYPES_LEN, &
- i_types, I_TYPES_LEN )
- USE H5GLOBAL
+ i_types, I_TYPES_LEN ) &
+ BIND(C,NAME='h5close_types_c')
+ IMPORT :: HID_T
INTEGER P_TYPES_LEN
INTEGER F_TYPES_LEN
INTEGER I_TYPES_LEN
INTEGER(HID_T), DIMENSION(P_TYPES_LEN) :: p_types
INTEGER(HID_T), DIMENSION(F_TYPES_LEN) :: f_types
INTEGER(HID_T), DIMENSION(I_TYPES_LEN) :: i_types
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5CLOSE_TYPES_C'::h5close_types_c
- !DEC$ENDIF
END FUNCTION h5close_types_c
END INTERFACE
error_1 = h5close_types_c(predef_types, PREDEF_TYPES_LEN, &
@@ -236,15 +239,13 @@ CONTAINS
!
! Fortran90 Interface:
SUBROUTINE h5get_libversion_f(majnum, minnum, relnum, error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(OUT) :: majnum, minnum, relnum, error
!*****
INTERFACE
- INTEGER FUNCTION h5get_libversion_c(majnum, minnum, relnum)
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GET_LIBVERSION_C'::h5get_libversion_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5get_libversion_c(majnum, minnum, relnum) &
+ BIND(C,NAME='h5get_libversion_c')
+ IMPLICIT NONE
INTEGER, INTENT(OUT) :: majnum, minnum, relnum
END FUNCTION h5get_libversion_c
END INTERFACE
@@ -275,16 +276,14 @@ CONTAINS
!
! Fortran90 Interface:
SUBROUTINE h5check_version_f(majnum, minnum, relnum, error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(IN) :: majnum, minnum, relnum
INTEGER, INTENT(OUT) :: error
!*****
INTERFACE
- INTEGER FUNCTION h5check_version_c(majnum, minnum, relnum)
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5CHECK_VERSION_C'::h5check_version_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5check_version_c(majnum, minnum, relnum) &
+ BIND(C,NAME='h5check_version_c')
+ IMPLICIT NONE
INTEGER, INTENT(IN) :: majnum, minnum, relnum
END FUNCTION h5check_version_c
END INTERFACE
@@ -309,15 +308,12 @@ CONTAINS
!
! Fortran90 Interface:
SUBROUTINE h5garbage_collect_f(error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
INTERFACE
- INTEGER FUNCTION h5garbage_collect_c()
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5GARBAGE_COLLECT_C'::h5garbage_collect_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5garbage_collect_c() &
+ BIND(C,NAME='h5garbage_collect_c')
END FUNCTION h5garbage_collect_c
END INTERFACE
@@ -341,15 +337,12 @@ CONTAINS
!
! Fortran90 Interface:
SUBROUTINE h5dont_atexit_f(error)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
INTERFACE
- INTEGER FUNCTION h5dont_atexit_c()
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DONT_ATEXIT_C'::h5dont_atexit_c
- !DEC$ENDIF
+ INTEGER FUNCTION h5dont_atexit_c() &
+ BIND(C,NAME='h5dont_atexit_c')
END FUNCTION h5dont_atexit_c
END INTERFACE
@@ -379,7 +372,6 @@ CONTAINS
!
! Fortran90 Interface:
INTEGER(HID_T) FUNCTION h5kind_to_type(kind, flag) RESULT(h5_type)
- USE H5GLOBAL
IMPLICIT NONE
INTEGER, INTENT(IN) :: kind
INTEGER, INTENT(IN) :: flag
@@ -393,17 +385,67 @@ CONTAINS
h5_type = H5T_NATIVE_INTEGER_4
ELSE IF(kind.EQ.Fortran_INTEGER_8)THEN
h5_type = H5T_NATIVE_INTEGER_8
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ ELSE IF(kind.EQ.Fortran_INTEGER_16)THEN
+ h5_type = H5T_NATIVE_INTEGER_16
+#endif
ENDIF
ELSE IF(flag.EQ.H5_REAL_KIND)THEN
- IF(kind.EQ.Fortran_REAL_4)THEN
- h5_type = H5T_NATIVE_REAL_4
- ELSE IF(kind.EQ.Fortran_REAL_8)THEN
- h5_type = H5T_NATIVE_REAL_8
- ELSE IF(kind.EQ.Fortran_REAL_16)THEN
- h5_type = H5T_NATIVE_REAL_16
+ IF(kind.EQ.Fortran_REAL_C_FLOAT)THEN
+ h5_type = H5T_NATIVE_REAL_C_FLOAT
+ ELSE IF(kind.EQ.Fortran_REAL_C_DOUBLE)THEN
+ h5_type = H5T_NATIVE_REAL_C_DOUBLE
+#if H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE!=0
+ ELSE IF(kind.EQ.Fortran_REAL_C_LONG_DOUBLE)THEN
+ h5_type = H5T_NATIVE_REAL_C_LONG_DOUBLE
+#endif
+#if H5_PAC_FC_MAX_REAL_PRECISION > 28
+#if H5_HAVE_FLOAT128 == 1
+ ELSE IF(kind.EQ.Fortran_REAL_C_FLOAT128)THEN
+ h5_type = H5T_NATIVE_FLOAT_128
+#endif
+#endif
+ ELSE
+ h5_type = -1
ENDIF
ENDIF
END FUNCTION h5kind_to_type
+!****f* H5LIB_PROVISIONAL/h5offsetof
+!
+! NAME
+! h5offsetof
+!
+! PURPOSE
+! Computes the offset in memory
+!
+! Inputs:
+! start - starting pointer address
+! end - ending pointer address
+!
+! Outputs:
+! offset - offset of a member within the derived type
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! Augest 25, 2008
+!
+! ACKNOWLEDGEMENTS
+! Joe Krahn
+!
+! Fortran2003 Interface:
+ FUNCTION h5offsetof(start,end) RESULT(offset)
+ IMPLICIT NONE
+ INTEGER(SIZE_T) :: offset
+ TYPE(C_PTR), VALUE, INTENT(IN) :: start, end
+!*****
+ INTEGER(C_INTPTR_T) :: int_address_start, int_address_end
+ int_address_start = TRANSFER(start, int_address_start)
+ int_address_end = TRANSFER(end , int_address_end )
+
+ offset = int_address_end - int_address_start
+
+ END FUNCTION h5offsetof
+
END MODULE H5LIB
diff --git a/fortran/src/H5_ff_F03.f90 b/fortran/src/H5_ff_F03.f90
deleted file mode 100644
index d418ed5..0000000
--- a/fortran/src/H5_ff_F03.f90
+++ /dev/null
@@ -1,75 +0,0 @@
-!****h* ROBODoc/H5LIB_PROVISIONAL
-!
-! NAME
-! MODULE H5LIB_PROVISIONAL
-!
-! PURPOSE
-! This file contains helper functions for Fortran 2003 features and is
-! only compiled when Fortran 2003 features are enabled, otherwise
-! the file H5_ff_F90.f90 is compiled.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! NOTES
-! *** IMPORTANT ***
-! If you add a new function you must add the function name to the
-! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory.
-! This is needed for Windows based operating systems.
-!*****
-
-MODULE H5LIB_PROVISIONAL
-
-CONTAINS
-!****f* H5LIB_PROVISIONAL/h5offsetof
-!
-! NAME
-! h5offsetof
-!
-! PURPOSE
-! Computes the offset in memory
-!
-! Inputs:
-! start - starting pointer address
-! end - ending pointer address
-!
-! Outputs:
-! offset - offset of a member within the derived type
-!
-! AUTHOR
-! M. Scot Breitenfeld
-! Augest 25, 2008
-!
-! ACKNOWLEDGEMENTS
-! Joe Krahn
-!
-! Fortran2003 Interface:
- FUNCTION h5offsetof(start,end) RESULT(offset)
- USE, INTRINSIC :: ISO_C_BINDING
- USE H5GLOBAL
- IMPLICIT NONE
- INTEGER(SIZE_T) :: offset
- TYPE(C_PTR), VALUE, INTENT(IN) :: start, end
-!*****
- INTEGER(C_INTPTR_T) :: int_address_start, int_address_end
- int_address_start = TRANSFER(start, int_address_start)
- int_address_end = TRANSFER(end , int_address_end )
-
- offset = int_address_end - int_address_start
-
- END FUNCTION h5offsetof
-
-END MODULE H5LIB_PROVISIONAL
diff --git a/fortran/src/H5_ff_F90.f90 b/fortran/src/H5_ff_F90.f90
deleted file mode 100644
index a5d303a..0000000
--- a/fortran/src/H5_ff_F90.f90
+++ /dev/null
@@ -1,34 +0,0 @@
-!****h* ROBODoc/H5LIB_PROVISIONAL (F90)
-!
-! NAME
-! MODULE H5LIB_PROVISIONAL
-!
-! FILE
-! fortran/src/H5_ff_F90.f90
-!
-! PURPOSE
-! This file is a dummy module for when Fortran 2003 features are not enabled.
-! It is compiled in place of H5_ff_F03.f90 and is empty.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!*****
-
-MODULE H5LIB_PROVISIONAL
-
-
-END MODULE H5LIB_PROVISIONAL
diff --git a/fortran/src/H5config_f.inc.cmake b/fortran/src/H5config_f.inc.cmake
new file mode 100644
index 0000000..cc36889
--- /dev/null
+++ b/fortran/src/H5config_f.inc.cmake
@@ -0,0 +1,84 @@
+! fortran/src/H5config_f.inc. Generated from fortran/src/H5config_f.inc.in by configure
+
+! Define if we have parallel support
+#define H5_HAVE_PARALLEL @CMAKE_H5_HAVE_PARALLEL@
+
+#if H5_HAVE_PARALLEL==0
+#undef H5_HAVE_PARALLEL
+#endif
+
+! Define if the intrinsic function STORAGE_SIZE exists
+#define H5_FORTRAN_HAVE_STORAGE_SIZE @FORTRAN_HAVE_STORAGE_SIZE@
+
+#if H5_FORTRAN_HAVE_STORAGE_SIZE==0
+#undef H5_FORTRAN_HAVE_STORAGE_SIZE
+#endif
+
+! Define if the intrinsic function SIZEOF exists
+#define H5_FORTRAN_HAVE_SIZEOF @FORTRAN_HAVE_SIZEOF@
+
+#if H5_FORTRAN_HAVE_SIZEOF==0
+#undef H5_FORTRAN_HAVE_SIZEOF
+#endif
+
+! Define if the intrinsic function C_SIZEOF exists
+#define H5_FORTRAN_HAVE_C_SIZEOF @FORTRAN_HAVE_C_SIZEOF@
+
+#if H5_FORTRAN_HAVE_C_SIZEOF==0
+#undef H5_FORTRAN_HAVE_C_SIZEOF
+#endif
+
+! Define if the intrinsic C_LONG_DOUBLE exists
+#define H5_FORTRAN_HAVE_C_LONG_DOUBLE @FORTRAN_HAVE_C_LONG_DOUBLE@
+
+#if H5_FORTRAN_HAVE_C_LONG_DOUBLE==0
+#undef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+#endif
+
+! Define if Fortran C_LONG_DOUBLE is different from C_DOUBLE
+#define H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+
+! Define if the intrinsic module ISO_FORTRAN_ENV exists
+#define H5_HAVE_ISO_FORTRAN_ENV @HAVE_ISO_FORTRAN_ENV@
+
+
+! should this be ${HDF_PREFIX} instead of H5 MSB
+#define H5_SIZEOF_DOUBLE @H5_SIZEOF_DOUBLE@
+
+#if H5_SIZEOF_DOUBLE==0
+#undef H5_SIZEOF_DOUBLE
+#endif
+
+! should this be ${HDF_PREFIX} instead of H5 MSB
+#define H5_SIZEOF_LONG_DOUBLE @H5_SIZEOF_LONG_DOUBLE@
+
+#if H5_SIZEOF_LONG_DOUBLE==0
+#undef H5_SIZEOF_LONG_DOUBLE
+#endif
+
+! Define the maximum decimal precision for reals
+#define H5_PAC_FC_MAX_REAL_PRECISION @H5_PAC_FC_MAX_REAL_PRECISION@
+
+! If C has quad precision
+#define H5_HAVE_FLOAT128 @H5_HAVE_FLOAT128@
+
+! Define if INTEGER*16 is available
+#define H5_HAVE_Fortran_INTEGER_SIZEOF_16 @HAVE_Fortran_INTEGER_SIZEOF_16@
+
+! Maximum decimal precision for C
+#define H5_PAC_C_MAX_REAL_PRECISION @H5_PAC_C_MAX_REAL_PRECISION@
+
+! number of valid REAL KINDs
+#define H5_H5CONFIG_F_NUM_RKIND @H5CONFIG_F_NUM_RKIND@
+
+! valid REAL KINDs (need to have a matching C counter-part)
+#define H5_H5CONFIG_F_RKIND @H5CONFIG_F_RKIND@
+
+! valid REAL KINDs (need to have a matching C counter-part)
+#define H5_H5CONFIG_F_RKIND_SIZEOF @H5CONFIG_F_RKIND_SIZEOF@
+
+! number of valid INTEGER KINDs
+#define H5_H5CONFIG_F_NUM_IKIND @H5CONFIG_F_NUM_IKIND@
+
+! valid INTEGER KINDs (need to have a matching C counter-part)
+#define H5_H5CONFIG_F_IKIND @H5CONFIG_F_IKIND@
diff --git a/fortran/src/H5config_f.inc.in b/fortran/src/H5config_f.inc.in
new file mode 100644
index 0000000..64c3a0c
--- /dev/null
+++ b/fortran/src/H5config_f.inc.in
@@ -0,0 +1,59 @@
+! fortran/src/H5config_f.inc. Generated from fortran/src/H5config_f.inc.in by configure
+
+! The script to replace the defines in H5config_f.inc.in is
+! located in configure.ac in the Fortran section.
+
+! Define if we have parallel support
+#undef HAVE_PARALLEL
+
+! Define if the intrinsic function STORAGE_SIZE exists
+#undef FORTRAN_HAVE_STORAGE_SIZE
+
+! Define if the intrinsic function SIZEOF exists
+#undef FORTRAN_HAVE_SIZEOF
+
+! Define if the intrinsic function C_SIZEOF exists
+#undef FORTRAN_HAVE_C_SIZEOF
+
+! Define if the intrinsic function C_LONG_DOUBLE exists
+#undef FORTRAN_HAVE_C_LONG_DOUBLE
+
+! Define if Fortran C_LONG_DOUBLE is different from C_DOUBLE
+#undef FORTRAN_C_LONG_DOUBLE_IS_UNIQUE
+
+! Define if the intrinsic module ISO_FORTRAN_ENV exists
+#undef HAVE_ISO_FORTRAN_ENV
+
+! Define the size of C's long double
+#undef SIZEOF_DOUBLE
+
+! Define the size of C's long double
+#undef SIZEOF_LONG_DOUBLE
+
+! Define the maximum decimal precision for reals
+#undef PAC_FC_MAX_REAL_PRECISION
+
+! If C has quad precision
+#undef HAVE_FLOAT128
+
+! Define if INTEGER*16 is available
+#undef HAVE_Fortran_INTEGER_SIZEOF_16
+
+! Maximum decimal precision for C
+#undef PAC_C_MAX_REAL_PRECISION
+
+! number of valid REAL KINDs
+#undef H5CONFIG_F_NUM_RKIND
+
+! valid REAL KINDs (need to have a matching C counter-part)
+#undef H5CONFIG_F_RKIND
+
+! valid REAL KINDs (need to have a matching C counter-part)
+#undef H5CONFIG_F_RKIND_SIZEOF
+
+! number of valid INTEGER KINDs
+#undef H5CONFIG_F_NUM_IKIND
+
+! valid INTEGER KINDs (need to have a matching C counter-part)
+#undef H5CONFIG_F_IKIND
+
diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.F90
index 0e371f5..c88327c 100644
--- a/fortran/src/H5f90global.f90
+++ b/fortran/src/H5f90global.F90
@@ -66,7 +66,7 @@ MODULE H5GLOBAL
INTEGER, DIMENSION(1:REF_REG_BUF_LEN) :: ref
END TYPE hdset_reg_ref_t_f
- INTEGER, PARAMETER :: PREDEF_TYPES_LEN = 17 ! Do not forget to change this
+ INTEGER, PARAMETER :: PREDEF_TYPES_LEN = 19 ! Do not forget to change this
! value when new predefined
! datatypes are added
@@ -82,9 +82,9 @@ MODULE H5GLOBAL
H5T_NATIVE_INTEGER_2, &
H5T_NATIVE_INTEGER_4, &
H5T_NATIVE_INTEGER_8, &
- H5T_NATIVE_REAL_4, &
- H5T_NATIVE_REAL_8, &
- H5T_NATIVE_REAL_16, &
+ H5T_NATIVE_REAL_C_FLOAT, &
+ H5T_NATIVE_REAL_C_DOUBLE, &
+ H5T_NATIVE_REAL_C_LONG_DOUBLE, &
H5T_NATIVE_INTEGER, &
H5T_NATIVE_REAL, &
H5T_NATIVE_DOUBLE, &
@@ -108,6 +108,9 @@ MODULE H5GLOBAL
H5T_STD_U16BE, &
H5T_STD_U16LE, &
H5T_STD_U32BE
+
+ INTEGER(HID_T) :: H5T_NATIVE_INTEGER_16 ! NEED IFDEF -MSB-
+ INTEGER(HID_T) :: H5T_NATIVE_FLOAT_128 ! NEED IFDEF -MSB-
! NOTE: Splitting the line since the Fortran 95 standard limits the number of
! continuation lines to 39; the F03/F08 standard limits the number
@@ -144,13 +147,15 @@ MODULE H5GLOBAL
EQUIVALENCE (predef_types(8), H5T_NATIVE_INTEGER_2)
EQUIVALENCE (predef_types(9), H5T_NATIVE_INTEGER_4)
EQUIVALENCE (predef_types(10), H5T_NATIVE_INTEGER_8)
- EQUIVALENCE (predef_types(11), H5T_NATIVE_REAL_4)
- EQUIVALENCE (predef_types(12), H5T_NATIVE_REAL_8)
- EQUIVALENCE (predef_types(13), H5T_NATIVE_REAL_16)
+ EQUIVALENCE (predef_types(11), H5T_NATIVE_REAL_C_FLOAT)
+ EQUIVALENCE (predef_types(12), H5T_NATIVE_REAL_C_DOUBLE)
+ EQUIVALENCE (predef_types(13), H5T_NATIVE_REAL_C_LONG_DOUBLE)
EQUIVALENCE (predef_types(14), H5T_NATIVE_B8 )
EQUIVALENCE (predef_types(15), H5T_NATIVE_B16)
EQUIVALENCE (predef_types(16), H5T_NATIVE_B32)
EQUIVALENCE (predef_types(17), H5T_NATIVE_B64)
+ EQUIVALENCE (predef_types(18), H5T_NATIVE_INTEGER_16) ! ADDED NEW TYPE -MSB-
+ EQUIVALENCE (predef_types(19), H5T_NATIVE_FLOAT_128) ! ADDED NEW TYPE -MSB-
INTEGER(HID_T), DIMENSION(FLOATING_TYPES_LEN) :: floating_types
EQUIVALENCE (floating_types(1), H5T_IEEE_F32BE )
@@ -234,9 +239,6 @@ MODULE H5GLOBAL
!
! H5F flags (DO NOT FORGET TO UPDATE WHEN NEW FLAGS ARE ADDED !)
!
- ! NOTE: H5F_ACC_DEBUG is deprecated (nonfunctional) but retained for
- ! backward compatibility since it's in the public API.
- !
! H5F flags declaration
!
INTEGER, PARAMETER :: H5F_FLAGS_LEN = 19
@@ -943,5 +945,96 @@ MODULE H5GLOBAL
!!$ EQUIVALENCE(H5F_flags(1), H5F_SCOPE_GLOBAL_F)
!!$ EQUIVALENCE(H5F_flags(2), H5F_SCOPE_LOCAL_F)
+CONTAINS
+
+ ! Copy a c string to a Fortran string
+
+ SUBROUTINE H5_Fortran_string_c2f(c_string, f_string)
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR, LEN=*), INTENT(IN) :: c_string
+ CHARACTER(LEN=*), INTENT(OUT) :: f_string
+ INTEGER(SIZE_T) :: c_len, f_len
+
+ ! Find the length of the C string by located the null terminator
+ c_len = MAX(INDEX(c_string,C_NULL_CHAR, KIND=SIZE_T)-1,1)
+ ! Find the length of the Fortran string
+ f_len = LEN(f_string)
+
+ ! CASE (1): C string is equal to or larger then Fortran character buffer,
+ ! so fill the entire Fortran buffer.
+ IF(c_len.GE.f_len)THEN !
+ f_string(1:f_len) = c_string(1:f_len)
+
+ ! CASE (2): C string is smaller then Fortran character buffer,
+ ! so copy C string and blank pad remaining characters.
+ ELSE
+ f_string(1:c_len) = c_string(1:c_len)
+ f_string(c_len+1:f_len) =' '
+ ENDIF
+ END SUBROUTINE H5_Fortran_string_c2f
+
+ SUBROUTINE H5_Fortran_string_f2c(f_string, c_string)
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+ CHARACTER(LEN=*), INTENT(IN) :: f_string
+ CHARACTER(KIND=C_CHAR, LEN=*), INTENT(OUT) :: c_string
+ INTEGER(SIZE_T) :: c_len, f_len
+
+ c_string = TRIM(f_string)//C_NULL_CHAR
+
+ END SUBROUTINE H5_Fortran_string_f2c
+
+
+! Copy Fortran string to C charater array, assuming the C array is one-char
+! longer for the terminating null char.
+! fstring : the Fortran input string
+! cstring : the C output string (with memory already allocated)
+!!$subroutine MPIR_Fortran_string_f2c(fstring, cstring)
+!!$ implicit none
+!!$ character(len=*), intent(in) :: fstring
+!!$ character(kind=c_char), intent(out) :: cstring(:)
+!!$ integer :: i, j
+!!$ logical :: met_non_blank
+!!$
+!!$ ! Trim the leading and trailing blank characters
+!!$ j = 1
+!!$ met_non_blank = .false.
+!!$ do i = 1, len_trim(fstring)
+!!$ if (met_non_blank) then
+!!$ cstring(j) = fstring(i:i)
+!!$ j = j + 1
+!!$ else if (fstring(i:i) /= ' ') then
+!!$ met_non_blank = .true.
+!!$ cstring(j) = fstring(i:i)
+!!$ j = j + 1
+!!$ end if
+!!$ end do
+!!$
+!!$ cstring(j) = C_NULL_CHAR
+!!$end subroutine MPIR_Fortran_string_f2c
+!!$
+!!$! Copy C charater array to Fortran string
+!!$subroutine MPIR_Fortran_string_c2f(cstring, fstring)
+!!$ implicit none
+!!$ character(kind=c_char), intent(in) :: cstring(:)
+!!$ character(len=*), intent(out) :: fstring
+!!$ integer :: i, j, length
+!!$
+!!$ i = 1
+!!$ do while (cstring(i) /= C_NULL_CHAR)
+!!$ fstring(i:i) = cstring(i)
+!!$ i = i + 1
+!!$ end do
+!!$
+!!$ ! Zero out the trailing characters
+!!$ length = len(fstring)
+!!$ do j = i, length
+!!$ fstring(j:j) = ' '
+!!$ end do
+!!$end subroutine MPIR_Fortran_string_c2f
+
END MODULE H5GLOBAL
diff --git a/fortran/src/H5f90kit.c b/fortran/src/H5f90kit.c
index 0bc721f..c6c874f 100644
--- a/fortran/src/H5f90kit.c
+++ b/fortran/src/H5f90kit.c
@@ -1,6 +1,6 @@
/****h* H5f90kit/H5f90kit
* PURPOSE
- * Routines from HDF4 to deal with C-FORTRAN issues:
+ * Routines from HDF4 to deal with C-FORTRAN issues:
*
* HD5f2cstring -- convert a Fortran string to a C string
* HD5packFstring -- convert a C string into a Fortran string
@@ -31,16 +31,16 @@
/****if* H5f90kit/HDf2cstring
* NAME
* HD5f2cstring -- convert a Fortran string to a C string
- * char * HDf2cstring(fdesc, len)
+ * char * HDf2cstring(fdesc, len)
* INPUTS
* _fcd fdesc; IN: Fortran string descriptor
- * int len; IN: length of Fortran string
+ * int len; IN: length of Fortran string
* RETURNS
- * Pointer to the C string if success, else NULL
+ * Pointer to the C string if success, else NULL
* PURPOSE
- * Chop off trailing blanks off of a Fortran string and
- * move it into a newly allocated C string. It is up
- * to the user to free this string.
+ * Chop off trailing blanks off of a Fortran string and
+ * move it into a newly allocated C string. It is up
+ * to the user to free this string.
* SOURCE
*/
char *
@@ -72,21 +72,21 @@ HD5f2cstring(_fcd fdesc, size_t len)
/****if* H5f90kit/HD5packFstring
* NAME
* HD5packFstring -- convert a C string into a Fortran string
- * int HD5packFstring(src, dest, len)
+ * int HD5packFstring(src, dest, len)
* INPUTS
- * char * src; IN: source string
- * int len; IN: length of string
+ * char * src; IN: source string
+ * int len; IN: length of string
* OUTPUTS
- * char * dest; OUT: destination
+ * char * dest; OUT: destination
* RETURNS
* SUCCEED / FAIL
* PURPOSE
- * given a NULL terminated C string 'src' convert it to
- * a space padded Fortran string 'dest' of length 'len'
+ * given a NULL terminated C string 'src' convert it to
+ * a space padded Fortran string 'dest' of length 'len'
*
- * This is very similar to HDc2fstr except that function does
- * it in place and this one copies. We should probably only
- * support one of these.
+ * This is very similar to HDc2fstr except that function does
+ * it in place and this one copies. We should probably only
+ * support one of these.
* SOURCE
*/
void
diff --git a/fortran/src/H5f90proto.h b/fortran/src/H5f90proto.h
index 6bde877..b26e985 100644
--- a/fortran/src/H5f90proto.h
+++ b/fortran/src/H5f90proto.h
@@ -18,6 +18,7 @@
#define _H5f90proto_H
#include "H5public.h"
+#include "H5f90.h"
H5_FCDLL char * HD5f2cstring (_fcd fdesc, size_t len);
H5_FCDLL void HD5packFstring(char *src, char *dest, size_t len);
@@ -80,1236 +81,505 @@ typedef struct H5O_info_t_f {
/*
* Functions from H5Ff.c
*/
-#define nh5fcreate_c H5_FC_FUNC_(h5fcreate_c, H5FCREATE_C)
-#define nh5fflush_c H5_FC_FUNC_(h5fflush_c, H5FFLUSH_C)
-#define nh5fclose_c H5_FC_FUNC_(h5fclose_c, H5FCLOSE_C)
-#define nh5fopen_c H5_FC_FUNC_(h5fopen_c, H5FOPEN_C)
-#define nh5fis_hdf5_c H5_FC_FUNC_(h5fis_hdf5_c, H5FIS_HDF5_C)
-#define nh5fmount_c H5_FC_FUNC_(h5fmount_c, H5FMOUNT_C)
-#define nh5funmount_c H5_FC_FUNC_(h5funmount_c, H5FUNMOUNT_C)
-#define nh5freopen_c H5_FC_FUNC_(h5freopen_c, H5FREOPEN_C)
-#define nh5fget_create_plist_c H5_FC_FUNC_(h5fget_create_plist_c, H5FGET_CREATE_PLIST_C)
-#define nh5fget_access_plist_c H5_FC_FUNC_(h5fget_access_plist_c, H5FGET_ACCESS_PLIST_C)
-#define nh5fget_obj_count_c H5_FC_FUNC_(h5fget_obj_count_c, H5FGET_OBJ_COUNT_C)
-#define nh5fget_obj_ids_c H5_FC_FUNC_(h5fget_obj_ids_c, H5FGET_OBJ_IDS_C)
-#define nh5fget_freespace_c H5_FC_FUNC_(h5fget_freespace_c, H5FGET_FREESPACE_C)
-#define nh5fget_name_c H5_FC_FUNC_(h5fget_name_c, H5FGET_NAME_C)
-#define nh5fget_filesize_c H5_FC_FUNC_(h5fget_filesize_c, H5FGET_FILESIZE_C)
-
-H5_FCDLL int_f nh5fcreate_c (_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *crt_prp, hid_t_f *acc_prp, hid_t_f *file_id);
-H5_FCDLL int_f nh5fopen_c (_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *acc_prp, hid_t_f *file_id);
-H5_FCDLL int_f nh5fis_hdf5_c (_fcd name, int_f *namelen, int_f *flag);
-H5_FCDLL int_f nh5fclose_c (hid_t_f *file_id);
-H5_FCDLL int_f nh5fmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen, hid_t_f *file_id, hid_t_f *acc_prp);
-H5_FCDLL int_f nh5funmount_c (hid_t_f *loc_id, _fcd dsetname, int_f *namelen);
-H5_FCDLL int_f nh5freopen_c (hid_t_f *file_id1, hid_t_f *file_id2);
-H5_FCDLL int_f nh5fget_create_plist_c (hid_t_f *file_id, hid_t_f *prop_id);
-H5_FCDLL int_f nh5fget_access_plist_c (hid_t_f *file_id, hid_t_f *access_id);
-H5_FCDLL int_f nh5fget_obj_count_c (hid_t_f *file_id, int_f *obj_type, size_t_f *obj_count);
-H5_FCDLL int_f nh5fget_obj_ids_c (hid_t_f *file_id, int_f *obj_type, size_t_f *max_objs, hid_t_f *obj_ids, size_t_f *num_objs);
-H5_FCDLL int_f nh5fget_freespace_c (hid_t_f *file_id, hssize_t_f *free_space);
+H5_FCDLL int_f h5fcreate_c(_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *crt_prp, hid_t_f *acc_prp, hid_t_f *file_id);
+H5_FCDLL int_f h5fopen_c(_fcd name, int_f *namelen, int_f *access_flags, hid_t_f *acc_prp, hid_t_f *file_id);
+H5_FCDLL int_f h5fis_hdf5_c(_fcd name, int_f *namelen, int_f *flag);
+H5_FCDLL int_f h5fclose_c(hid_t_f *file_id);
+H5_FCDLL int_f h5fmount_c(hid_t_f *loc_id, _fcd dsetname, int_f *namelen, hid_t_f *file_id, hid_t_f *acc_prp);
+H5_FCDLL int_f h5funmount_c(hid_t_f *loc_id, _fcd dsetname, int_f *namelen);
+H5_FCDLL int_f h5freopen_c(hid_t_f *file_id1, hid_t_f *file_id2);
+H5_FCDLL int_f h5fget_create_plist_c(hid_t_f *file_id, hid_t_f *prop_id);
+H5_FCDLL int_f h5fget_access_plist_c(hid_t_f *file_id, hid_t_f *access_id);
+H5_FCDLL int_f h5fget_obj_count_c(hid_t_f *file_id, int_f *obj_type, size_t_f *obj_count);
+H5_FCDLL int_f h5fget_obj_ids_c(hid_t_f *file_id, int_f *obj_type, size_t_f *max_objs, hid_t_f *obj_ids, size_t_f *num_objs);
+H5_FCDLL int_f h5fget_freespace_c(hid_t_f *file_id, hssize_t_f *free_space);
H5_FCDLL int_f h5fget_file_image_c(hid_t_f *file_id, void *buf_ptr, size_t_f *buf_len, size_t_f *buf_req);
-H5_FCDLL int_f nh5fflush_c (hid_t_f *obj_id, int_f *scope);
-H5_FCDLL int_f nh5fget_name_c(hid_t_f *obj_id, size_t_f *size, _fcd buf, size_t_f *buflen);
-H5_FCDLL int_f nh5fget_filesize_c(hid_t_f *file_id, hsize_t_f *size);
+H5_FCDLL int_f h5fflush_c(hid_t_f *obj_id, int_f *scope);
+H5_FCDLL int_f h5fget_name_c(hid_t_f *obj_id, size_t_f *size, _fcd buf, size_t_f *buflen);
+H5_FCDLL int_f h5fget_filesize_c(hid_t_f *file_id, hsize_t_f *size);
/*
* Functions from H5Sf.c
*/
-#define nh5screate_simple_c H5_FC_FUNC_(h5screate_simple_c, H5SCREATE_SIMPLE_C)
-#define nh5sclose_c H5_FC_FUNC_(h5sclose_c, H5SCLOSE_C)
-#define nh5screate_c H5_FC_FUNC_(h5screate_c, H5SCREATE_C)
-#define nh5scopy_c H5_FC_FUNC_(h5scopy_c, H5SCOPY_C)
-#define nh5sget_select_hyper_nblocks_c H5_FC_FUNC_(h5sget_select_hyper_nblocks_c, H5SGET_SELECT_HYPER_NBLOCKS_C)
-#define nh5sget_select_hyper_blocklist_c H5_FC_FUNC_(h5sget_select_hyper_blocklist_c, H5SGET_SELECT_HYPER_BLOCKLIST_C)
-#define nh5sget_select_elem_npoints_c H5_FC_FUNC_(h5sget_select_elem_npoints_c, H5SGET_SELECT_ELEM_NPOINTS_C)
-#define nh5sget_select_elem_pointlist_c H5_FC_FUNC_(h5sget_select_elem_pointlist_c, H5SGET_SELECT_ELEM_POINTLIST_C)
-#define nh5sget_select_bounds_c H5_FC_FUNC_(h5sget_select_bounds_c, H5SGET_SELECT_BOUNDS_C)
-#define nh5sselect_all_c H5_FC_FUNC_(h5sselect_all_c, H5SSELECT_ALL_C)
-#define nh5sselect_none_c H5_FC_FUNC_(h5sselect_none_c, H5SSELECT_NONE_C)
-#define nh5sselect_valid_c H5_FC_FUNC_(h5sselect_valid_c, H5SSELECT_VALID_C)
-#define nh5sget_simple_extent_npoints_c H5_FC_FUNC_(h5sget_simple_extent_npoints_c, H5SGET_SIMPLE_EXTENT_NPOINTS_C)
-#define nh5sget_select_npoints_c H5_FC_FUNC_(h5sget_select_npoints_c, H5SGET_SELECT_NPOINTS_C)
-#define nh5sget_simple_extent_ndims_c H5_FC_FUNC_(h5sget_simple_extent_ndims_c, H5SGET_SIMPLE_EXTENT_NDIMS_C)
-#define nh5sget_simple_extent_type_c H5_FC_FUNC_(h5sget_simple_extent_type_c, H5SGET_SIMPLE_EXTENT_TYPE_C)
-#define nh5soffset_simple_c H5_FC_FUNC_(h5soffset_simple_c, H5SOFFSET_SIMPLE_C)
-#define nh5sset_extent_simple_c H5_FC_FUNC_(h5sset_extent_simple_c, H5SSET_EXTENT_SIMPLE_C)
-#define nh5sis_simple_c H5_FC_FUNC_(h5sis_simple_c, H5SIS_SIMPLE_C)
-#define nh5sextent_class_c H5_FC_FUNC_(h5sextent_class_c, H5SEXTENT_CLASS_C)
-#define nh5sget_simple_extent_dims_c H5_FC_FUNC_(h5sget_simple_extent_dims_c, H5SGET_SIMPLE_EXTENT_DIMS_C)
-#define nh5sextent_copy_c H5_FC_FUNC_(h5sextent_copy_c, H5SEXTENT_COPY_C)
-#define nh5sset_extent_none_c H5_FC_FUNC_(h5sset_extent_none_c, H5SSET_EXTENT_NONE_C)
-#define nh5sselect_hyperslab_c H5_FC_FUNC_(h5sselect_hyperslab_c, H5SSELECT_HYPERSLAB_C)
-#define nh5scombine_hyperslab_c H5_FC_FUNC_(h5scombine_hyperslab_c, H5SCOMBINE_HYPERSLAB_C)
-#define nh5scombine_select_c H5_FC_FUNC_(h5scombine_select_c, H5SCOMBINE_SELECT_C)
-#define nh5sselect_select_c H5_FC_FUNC_(h5sselect_select_c, H5SSELECT_SELECT_C)
-#define nh5sget_select_type_c H5_FC_FUNC_(h5sget_select_type_c, H5SGET_SELECT_TYPE_C)
-#define nh5sselect_elements_c H5_FC_FUNC_(h5sselect_elements_c, H5SSELECT_ELEMENTS_C)
-#define nh5sdecode_c H5_FC_FUNC_(h5sdecode_c, H5SDECODE_C)
-#define nh5sencode_c H5_FC_FUNC_(h5sencode_c, H5SENCODE_C)
-#define nh5sextent_equal_c H5_FC_FUNC_(h5sextent_equal_c, H5SEXTENT_EQUAL_C)
-
-H5_FCDLL int_f nh5screate_simple_c ( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f *space_id );
-H5_FCDLL int_f nh5sclose_c ( hid_t_f *space_id );
-H5_FCDLL int_f nh5screate_c ( int_f *classtype, hid_t_f *space_id );
-H5_FCDLL int_f nh5scopy_c ( hid_t_f *space_id , hid_t_f *new_space_id);
-H5_FCDLL int_f nh5sget_select_hyper_nblocks_c( hid_t_f *space_id , hssize_t_f * num_blocks);
-H5_FCDLL int_f nh5sget_select_hyper_blocklist_c( hid_t_f *space_id ,hsize_t_f * startblock, hsize_t_f * num_blocks, hsize_t_f * buf);
-H5_FCDLL int_f nh5sget_select_bounds_c( hid_t_f *space_id , hsize_t_f * start, hsize_t_f * end);
-H5_FCDLL int_f nh5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points);
-H5_FCDLL int_f nh5sget_select_elem_pointlist_c( hid_t_f *space_id ,hsize_t_f * startpoint, hsize_t_f * numpoints, hsize_t_f * buf);
-H5_FCDLL int_f nh5sselect_all_c ( hid_t_f *space_id );
-H5_FCDLL int_f nh5sselect_none_c ( hid_t_f *space_id );
-H5_FCDLL int_f nh5sselect_valid_c ( hid_t_f *space_id , int_f *flag );
-H5_FCDLL int_f nh5sget_simple_extent_npoints_c ( hid_t_f *space_id , hsize_t_f *npoints );
-H5_FCDLL int_f nh5sget_select_npoints_c ( hid_t_f *space_id , hssize_t_f *npoints );
-H5_FCDLL int_f nh5sget_simple_extent_ndims_c ( hid_t_f *space_id , int_f *ndims );
-H5_FCDLL int_f nh5sget_simple_extent_type_c ( hid_t_f *space_id , int_f *classtype);
-H5_FCDLL int_f nh5soffset_simple_c ( hid_t_f *space_id , hssize_t_f *offset);
-H5_FCDLL int_f nh5sset_extent_simple_c ( hid_t_f *space_id , int_f *rank, hsize_t_f * current_size, hsize_t_f *maximum_size);
-H5_FCDLL int_f nh5sis_simple_c ( hid_t_f *space_id , int_f *flag );
-H5_FCDLL int_f nh5sextent_class_c ( hid_t_f *space_id , int_f *classtype);
-H5_FCDLL int_f nh5sget_simple_extent_dims_c ( hid_t_f *space_id , hsize_t_f *dims, hsize_t_f *maxdims);
-H5_FCDLL int_f nh5sextent_copy_c ( hid_t_f *dest_space_id , hid_t_f *source_space_id);
-H5_FCDLL int_f nh5sset_extent_none_c ( hid_t_f *space_id );
-H5_FCDLL int_f nh5sselect_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block);
-H5_FCDLL int_f nh5sget_select_type_c ( hid_t_f *space_id , int_f *op);
-H5_FCDLL int_f nh5sselect_elements_c ( hid_t_f *space_id , int_f *op, size_t_f *nelements, hsize_t_f *coord);
-H5_FCDLL int_f nh5scombine_hyperslab_c ( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block, hid_t_f *hyper_id);
-H5_FCDLL int_f nh5scombine_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id, hid_t_f *ds_id);
-H5_FCDLL int_f nh5sselect_select_c ( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id);
-H5_FCDLL int_f nh5sdecode_c ( _fcd buf, hid_t_f *obj_id );
-H5_FCDLL int_f nh5sencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc );
-H5_FCDLL int_f nh5sextent_equal_c ( hid_t_f * space1_id, hid_t_f *space2_id, hid_t_f *c_equal);
+H5_FCDLL int_f h5screate_simple_c( int_f *rank, hsize_t_f *dims, hsize_t_f *maxdims, hid_t_f *space_id );
+H5_FCDLL int_f h5sclose_c( hid_t_f *space_id );
+H5_FCDLL int_f h5screate_c( int_f *classtype, hid_t_f *space_id );
+H5_FCDLL int_f h5scopy_c( hid_t_f *space_id , hid_t_f *new_space_id);
+H5_FCDLL int_f h5sget_select_hyper_nblocks_c( hid_t_f *space_id , hssize_t_f * num_blocks);
+H5_FCDLL int_f h5sget_select_hyper_blocklist_c( hid_t_f *space_id ,hsize_t_f * startblock, hsize_t_f * num_blocks, hsize_t_f * buf);
+H5_FCDLL int_f h5sget_select_bounds_c( hid_t_f *space_id , hsize_t_f * start, hsize_t_f * end);
+H5_FCDLL int_f h5sget_select_elem_npoints_c( hid_t_f *space_id , hssize_t_f * num_points);
+H5_FCDLL int_f h5sget_select_elem_pointlist_c( hid_t_f *space_id ,hsize_t_f * startpoint, hsize_t_f * numpoints, hsize_t_f * buf);
+H5_FCDLL int_f h5sselect_all_c( hid_t_f *space_id );
+H5_FCDLL int_f h5sselect_none_c( hid_t_f *space_id );
+H5_FCDLL int_f h5sselect_valid_c( hid_t_f *space_id , int_f *flag );
+H5_FCDLL int_f h5sget_simple_extent_npoints_c( hid_t_f *space_id , hsize_t_f *npoints );
+H5_FCDLL int_f h5sget_select_npoints_c( hid_t_f *space_id , hssize_t_f *npoints );
+H5_FCDLL int_f h5sget_simple_extent_ndims_c( hid_t_f *space_id , int_f *ndims );
+H5_FCDLL int_f h5sget_simple_extent_type_c( hid_t_f *space_id , int_f *classtype);
+H5_FCDLL int_f h5soffset_simple_c( hid_t_f *space_id , hssize_t_f *offset);
+H5_FCDLL int_f h5sset_extent_simple_c( hid_t_f *space_id , int_f *rank, hsize_t_f * current_size, hsize_t_f *maximum_size);
+H5_FCDLL int_f h5sis_simple_c( hid_t_f *space_id , int_f *flag );
+H5_FCDLL int_f h5sget_simple_extent_dims_c( hid_t_f *space_id , hsize_t_f *dims, hsize_t_f *maxdims);
+H5_FCDLL int_f h5sextent_copy_c( hid_t_f *dest_space_id , hid_t_f *source_space_id);
+H5_FCDLL int_f h5sset_extent_none_c( hid_t_f *space_id );
+H5_FCDLL int_f h5sselect_hyperslab_c( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block);
+H5_FCDLL int_f h5sget_select_type_c( hid_t_f *space_id , int_f *op);
+H5_FCDLL int_f h5sselect_elements_c( hid_t_f *space_id , int_f *op, size_t_f *nelements, hsize_t_f *coord);
+H5_FCDLL int_f h5scombine_hyperslab_c( hid_t_f *space_id , int_f *op, hsize_t_f *start, hsize_t_f *count, hsize_t_f *stride, hsize_t_f *block, hid_t_f *hyper_id);
+H5_FCDLL int_f h5scombine_select_c( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id, hid_t_f *ds_id);
+H5_FCDLL int_f h5sselect_select_c( hid_t_f *space1_id , int_f *op, hid_t_f *space2_id);
+H5_FCDLL int_f h5sdecode_c( _fcd buf, hid_t_f *obj_id );
+H5_FCDLL int_f h5sencode_c(_fcd buf, hid_t_f *obj_id, size_t_f *nalloc );
+H5_FCDLL int_f h5sextent_equal_c( hid_t_f * space1_id, hid_t_f *space2_id, hid_t_f *c_equal);
/*
* Functions from H5Df.c
*/
-#define nh5dcreate_c H5_FC_FUNC_(h5dcreate_c, H5DCREATE_C)
-#define nh5dclose_c H5_FC_FUNC_(h5dclose_c, H5DCLOSE_C)
-#define nh5dopen_c H5_FC_FUNC_(h5dopen_c, H5DOPEN_C)
-#define nh5dwrite_c H5_FC_FUNC_(h5dwrite_c, H5DWRITE_C)
-#define nh5dwrite_integer_s_c H5_FC_FUNC_(h5dwrite_integer_s_c, H5DWRITE_INTEGER_S_C)
-#define nh5dwrite_integer_1_c H5_FC_FUNC_(h5dwrite_integer_1_c, H5DWRITE_INTEGER_1_C)
-#define nh5dwrite_integer_2_c H5_FC_FUNC_(h5dwrite_integer_2_c, H5DWRITE_INTEGER_2_C)
-#define nh5dwrite_integer_3_c H5_FC_FUNC_(h5dwrite_integer_3_c, H5DWRITE_INTEGER_3_C)
-#define nh5dwrite_integer_4_c H5_FC_FUNC_(h5dwrite_integer_4_c, H5DWRITE_INTEGER_4_C)
-#define nh5dwrite_integer_5_c H5_FC_FUNC_(h5dwrite_integer_5_c, H5DWRITE_INTEGER_5_C)
-#define nh5dwrite_integer_6_c H5_FC_FUNC_(h5dwrite_integer_6_c, H5DWRITE_INTEGER_6_C)
-#define nh5dwrite_integer_7_c H5_FC_FUNC_(h5dwrite_integer_7_c, H5DWRITE_INTEGER_7_C)
-#define nh5dwrite_real_s_c H5_FC_FUNC_(h5dwrite_real_s_c, H5DWRITE_REAL_S_C)
-#define nh5dwrite_real_1_c H5_FC_FUNC_(h5dwrite_real_1_c, H5DWRITE_REAL_1_C)
-#define nh5dwrite_real_2_c H5_FC_FUNC_(h5dwrite_real_2_c, H5DWRITE_REAL_2_C)
-#define nh5dwrite_real_3_c H5_FC_FUNC_(h5dwrite_real_3_c, H5DWRITE_REAL_3_C)
-#define nh5dwrite_real_4_c H5_FC_FUNC_(h5dwrite_real_4_c, H5DWRITE_REAL_4_C)
-#define nh5dwrite_real_5_c H5_FC_FUNC_(h5dwrite_real_5_c, H5DWRITE_REAL_5_C)
-#define nh5dwrite_real_6_c H5_FC_FUNC_(h5dwrite_real_6_c, H5DWRITE_REAL_6_C)
-#define nh5dwrite_real_7_c H5_FC_FUNC_(h5dwrite_real_7_c, H5DWRITE_REAL_7_C)
-#define nh5dwrite_double_s_c H5_FC_FUNC_(h5dwrite_double_s_c, H5DWRITE_DOUBLE_S_C)
-#define nh5dwrite_double_1_c H5_FC_FUNC_(h5dwrite_double_1_c, H5DWRITE_DOUBLE_1_C)
-#define nh5dwrite_double_2_c H5_FC_FUNC_(h5dwrite_double_2_c, H5DWRITE_DOUBLE_2_C)
-#define nh5dwrite_double_3_c H5_FC_FUNC_(h5dwrite_double_3_c, H5DWRITE_DOUBLE_3_C)
-#define nh5dwrite_double_4_c H5_FC_FUNC_(h5dwrite_double_4_c, H5DWRITE_DOUBLE_4_C)
-#define nh5dwrite_double_5_c H5_FC_FUNC_(h5dwrite_double_5_c, H5DWRITE_DOUBLE_5_C)
-#define nh5dwrite_double_6_c H5_FC_FUNC_(h5dwrite_double_6_c, H5DWRITE_DOUBLE_6_C)
-#define nh5dwrite_double_7_c H5_FC_FUNC_(h5dwrite_double_7_c, H5DWRITE_DOUBLE_7_C)
-#define nh5dwrite_ref_obj_c H5_FC_FUNC_(h5dwrite_ref_obj_c, H5DWRITE_REF_OBJ_C)
-#define nh5dwrite_ref_reg_c H5_FC_FUNC_(h5dwrite_ref_reg_c, H5DWRITE_REF_REG_C)
-#define nh5dwritec_c H5_FC_FUNC_(h5dwritec_c, H5DWRITEC_C)
-#define nh5dwritec_s_c H5_FC_FUNC_(h5dwritec_s_c, H5DWRITEC_S_C)
-#define nh5dwritec_1_c H5_FC_FUNC_(h5dwritec_1_c, H5DWRITEC_1_C)
-#define nh5dwritec_2_c H5_FC_FUNC_(h5dwritec_2_c, H5DWRITEC_2_C)
-#define nh5dwritec_3_c H5_FC_FUNC_(h5dwritec_3_c, H5DWRITEC_3_C)
-#define nh5dwritec_4_c H5_FC_FUNC_(h5dwritec_4_c, H5DWRITEC_4_C)
-#define nh5dwritec_5_c H5_FC_FUNC_(h5dwritec_5_c, H5DWRITEC_5_C)
-#define nh5dwritec_6_c H5_FC_FUNC_(h5dwritec_6_c, H5DWRITEC_6_C)
-#define nh5dwritec_7_c H5_FC_FUNC_(h5dwritec_7_c, H5DWRITEC_7_C)
-#define nh5dread_c H5_FC_FUNC_(h5dread_c, H5DREAD_C)
-#define nh5dread_integer_s_c H5_FC_FUNC_(h5dread_integer_s_c, H5DREAD_INTEGER_S_C)
-#define nh5dread_integer_1_c H5_FC_FUNC_(h5dread_integer_1_c, H5DREAD_INTEGER_1_C)
-#define nh5dread_integer_2_c H5_FC_FUNC_(h5dread_integer_2_c, H5DREAD_INTEGER_2_C)
-#define nh5dread_integer_3_c H5_FC_FUNC_(h5dread_integer_3_c, H5DREAD_INTEGER_3_C)
-#define nh5dread_integer_4_c H5_FC_FUNC_(h5dread_integer_4_c, H5DREAD_INTEGER_4_C)
-#define nh5dread_integer_5_c H5_FC_FUNC_(h5dread_integer_5_c, H5DREAD_INTEGER_5_C)
-#define nh5dread_integer_6_c H5_FC_FUNC_(h5dread_integer_6_c, H5DREAD_INTEGER_6_C)
-#define nh5dread_integer_7_c H5_FC_FUNC_(h5dread_integer_7_c, H5DREAD_INTEGER_7_C)
-#define nh5dread_real_s_c H5_FC_FUNC_(h5dread_real_s_c, H5DREAD_REAL_S_C)
-#define nh5dread_real_1_c H5_FC_FUNC_(h5dread_real_1_c, H5DREAD_REAL_1_C)
-#define nh5dread_real_2_c H5_FC_FUNC_(h5dread_real_2_c, H5DREAD_REAL_2_C)
-#define nh5dread_real_3_c H5_FC_FUNC_(h5dread_real_3_c, H5DREAD_REAL_3_C)
-#define nh5dread_real_4_c H5_FC_FUNC_(h5dread_real_4_c, H5DREAD_REAL_4_C)
-#define nh5dread_real_5_c H5_FC_FUNC_(h5dread_real_5_c, H5DREAD_REAL_5_C)
-#define nh5dread_real_6_c H5_FC_FUNC_(h5dread_real_6_c, H5DREAD_REAL_6_C)
-#define nh5dread_real_7_c H5_FC_FUNC_(h5dread_real_7_c, H5DREAD_REAL_7_C)
-#define nh5dread_double_s_c H5_FC_FUNC_(h5dread_double_s_c, H5DREAD_DOUBLE_S_C)
-#define nh5dread_double_1_c H5_FC_FUNC_(h5dread_double_1_c, H5DREAD_DOUBLE_1_C)
-#define nh5dread_double_2_c H5_FC_FUNC_(h5dread_double_2_c, H5DREAD_DOUBLE_2_C)
-#define nh5dread_double_3_c H5_FC_FUNC_(h5dread_double_3_c, H5DREAD_DOUBLE_3_C)
-#define nh5dread_double_4_c H5_FC_FUNC_(h5dread_double_4_c, H5DREAD_DOUBLE_4_C)
-#define nh5dread_double_5_c H5_FC_FUNC_(h5dread_double_5_c, H5DREAD_DOUBLE_5_C)
-#define nh5dread_double_6_c H5_FC_FUNC_(h5dread_double_6_c, H5DREAD_DOUBLE_6_C)
-#define nh5dread_double_7_c H5_FC_FUNC_(h5dread_double_7_c, H5DREAD_DOUBLE_7_C)
-#define nh5dread_c_b H5_FC_FUNC_(h5dread_c_b, H5DREAD_C_B)
-#define nh5dread_ref_reg_c H5_FC_FUNC_(h5dread_ref_reg_c, H5DREAD_REF_REG_C)
-#define nh5dread_ref_obj_c H5_FC_FUNC_(h5dread_ref_obj_c, H5DREAD_REF_OBJ_C)
-#define nh5dreadc_c H5_FC_FUNC_(h5dreadc_c, H5DREADC_C)
-#define nh5dreadc_s_c H5_FC_FUNC_(h5dreadc_s_c, H5DREADC_S_C)
-#define nh5dreadc_1_c H5_FC_FUNC_(h5dreadc_1_c, H5DREADC_1_C)
-#define nh5dreadc_2_c H5_FC_FUNC_(h5dreadc_2_c, H5DREADC_2_C)
-#define nh5dreadc_3_c H5_FC_FUNC_(h5dreadc_3_c, H5DREADC_3_C)
-#define nh5dreadc_4_c H5_FC_FUNC_(h5dreadc_4_c, H5DREADC_4_C)
-#define nh5dreadc_5_c H5_FC_FUNC_(h5dreadc_5_c, H5DREADC_5_C)
-#define nh5dreadc_6_c H5_FC_FUNC_(h5dreadc_6_c, H5DREADC_6_C)
-#define nh5dreadc_7_c H5_FC_FUNC_(h5dreadc_7_c, H5DREADC_7_C)
-#define nh5dreadc_c_b H5_FC_FUNC_(h5dreadc_c_b, H5DREADC_C_B)
-#define nh5dget_space_c H5_FC_FUNC_(h5dget_space_c, H5DGET_SPACE_C)
-#define nh5dget_type_c H5_FC_FUNC_(h5dget_type_c, H5DGET_TYPE_C)
-#define nh5dget_create_plist_c H5_FC_FUNC_(h5dget_create_plist_c, H5DGET_CREATE_PLIST_C)
-#define nh5dset_extent_c H5_FC_FUNC_(h5dset_extent_c, H5DSET_EXTENT_C)
-#define nh5dget_storage_size_c H5_FC_FUNC_(h5dget_storage_size_c, H5DGET_STORAGE_SIZE_C)
-#define nh5dvlen_get_max_len_c H5_FC_FUNC_(h5dvlen_get_max_len_c, H5DVLEN_GET_MAX_LEN_C)
-#define nh5dwrite_vl_integer_c H5_FC_FUNC_(h5dwrite_vl_integer_c, H5DWRITE_VL_INTEGER_C)
-#define nh5dread_vl_integer_c H5_FC_FUNC_(h5dread_vl_integer_c, H5DREAD_VL_INTEGER_C)
-#define nh5dwrite_vl_real_c H5_FC_FUNC_(h5dwrite_vl_real_c, H5DWRITE_VL_REAL_C)
-#define nh5dread_vl_real_c H5_FC_FUNC_(h5dread_vl_real_c, H5DREAD_VL_REAL_C)
-#define nh5dwrite_vl_string_c H5_FC_FUNC_(h5dwrite_vl_string_c, H5DWRITE_VL_STRING_C)
-#define nh5dread_vl_string_c H5_FC_FUNC_(h5dread_vl_string_c, H5DREAD_VL_STRING_C)
-#define nh5dfillc_c H5_FC_FUNC_(h5dfillc_c, H5DFILLC_C)
-#define nh5dfill_integer_c H5_FC_FUNC_(h5dfill_integer_c, H5DFILL_INTEGER_C)
-#define nh5dfill_real_c H5_FC_FUNC_(h5dfill_real_c, H5DFILL_REAL_C)
-#define nh5dfill_double_c H5_FC_FUNC_(h5dfill_double_c, H5DFILL_DOUBLE_C)
-#define nh5dget_space_status_c H5_FC_FUNC_(h5dget_space_status_c, H5DGET_SPACE_STATUS_C)
-#define nh5dcreate_anon_c H5_FC_FUNC_(h5dcreate_anon_c, H5DCREATE_ANON_C)
-#define nh5dget_access_plist_c H5_FC_FUNC_(h5dget_access_plist_c, H5DGET_ACCESS_PLIST_C)
-
-H5_FCDLL int_f nh5dcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *space_id,
+H5_FCDLL int_f h5dcreate_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *space_id,
hid_t_f *lcpl_id, hid_t_f *dcpl_id, hid_t_f *dapl_id, hid_t_f *dset_id);
-H5_FCDLL int_f nh5dopen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *dapl_id, hid_t_f *dset_id);
-H5_FCDLL int_f nh5dclose_c ( hid_t_f *dset_id );
-H5_FCDLL int_f nh5dwrite_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_integer_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dwrite_real_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_real_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dwrite_double_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_double_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dwrite_vl_integer_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dwrite_vl_real_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dwrite_vl_string_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dwrite_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, haddr_t_f *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dwritec_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dwritec_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dwritec_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dread_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dread_integer_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_integer_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dread_real_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_real_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dread_double_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_double_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dread_vl_integer_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dread_vl_real_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dread_vl_string_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len);
-H5_FCDLL int_f nh5dread_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, haddr_t_f * buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dreadc_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-
-H5_FCDLL int_f nh5dreadc_s_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_1_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_2_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_3_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_4_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_5_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_6_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dreadc_7_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims);
-H5_FCDLL int_f nh5dget_access_plist_c (hid_t_f *dset_id, hid_t_f *plist_id);
-
-
-H5_FCDLL int_f nh5dget_space_c ( hid_t_f *dset_id , hid_t_f *space_id);
-H5_FCDLL int_f nh5dget_type_c ( hid_t_f *dset_id , hid_t_f *type_id);
-H5_FCDLL int_f nh5dget_create_plist_c ( hid_t_f *dset_id , hid_t_f *plist_id);
-H5_FCDLL int_f nh5dset_extent_c ( hid_t_f *dset_id , hsize_t_f *dims);
-H5_FCDLL int_f nh5dvlen_get_max_len_c(hid_t_f *dataset_id, hid_t_f *type_id, hid_t_f *space_id, size_t_f *len);
-H5_FCDLL int_f nh5dget_storage_size_c(hid_t_f *dataset_id, hsize_t_f *size);
-H5_FCDLL int_f nh5dfillc_c(_fcd fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, _fcd buf, hid_t_f *mem_type_id);
+H5_FCDLL int_f h5dopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *dapl_id, hid_t_f *dset_id);
+H5_FCDLL int_f h5dclose_c( hid_t_f *dset_id );
+
+H5_FCDLL int_f h5dwrite_vl_integer_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dwrite_vl_real_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dwrite_vl_string_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dwrite_ref_reg_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims);
+H5_FCDLL int_f h5dread_vl_integer_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dread_vl_real_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, real_f *buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dread_vl_string_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims, size_t_f *len);
+H5_FCDLL int_f h5dread_ref_reg_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims);
+H5_FCDLL int_f h5dget_access_plist_c(hid_t_f *dset_id, hid_t_f *plist_id);
+H5_FCDLL int_f h5dget_space_c( hid_t_f *dset_id , hid_t_f *space_id);
+H5_FCDLL int_f h5dget_type_c( hid_t_f *dset_id , hid_t_f *type_id);
+H5_FCDLL int_f h5dget_create_plist_c( hid_t_f *dset_id , hid_t_f *plist_id);
+H5_FCDLL int_f h5dset_extent_c( hid_t_f *dset_id , hsize_t_f *dims);
+H5_FCDLL int_f h5dvlen_get_max_len_c(hid_t_f *dataset_id, hid_t_f *type_id, hid_t_f *space_id, size_t_f *len);
+H5_FCDLL int_f h5dget_storage_size_c(hid_t_f *dataset_id, hsize_t_f *size);
H5_FCDLL int_f h5dfill_c(void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id);
-H5_FCDLL int_f nh5dfill_integer_c(void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id);
-H5_FCDLL int_f nh5dfill_real_c(void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id);
-H5_FCDLL int_f nh5dfill_double_c(void * fill_value, hid_t_f *fill_type_id, hid_t_f *space_id, void * buf, hid_t_f *mem_type_id);
-H5_FCDLL int_f nh5dget_space_status_c ( hid_t_f *dset_id, int_f *flag);
-H5_FCDLL int_f nh5dcreate_anon_c (hid_t_f *loc_id, hid_t_f *type_id, hid_t_f *space_id,
+H5_FCDLL int_f h5dget_space_status_c( hid_t_f *dset_id, int_f *flag);
+H5_FCDLL int_f h5dcreate_anon_c(hid_t_f *loc_id, hid_t_f *type_id, hid_t_f *space_id,
hid_t_f *dcpl_id, hid_t_f *dapl_id, hid_t_f *dset_id);
-H5_FCDLL int_f h5dwrite_f_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id,
+H5_FCDLL int_f h5dwrite_f_c(hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id,
hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf);
-H5_FCDLL int_f h5dread_f_c ( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id,
+H5_FCDLL int_f h5dread_f_c( hid_t_f *dset_id , hid_t_f *mem_type_id, hid_t_f *mem_space_id,
hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf);
-H5_FCDLL int_f h5dvlen_reclaim_c (hid_t_f *type_id , hid_t_f *space_id, hid_t_f *plist_id, void *buf);
+H5_FCDLL int_f h5dvlen_reclaim_c(hid_t_f *type_id , hid_t_f *space_id, hid_t_f *plist_id, void *buf);
+
/*
* Functions from H5Gf.c
*/
-#define nh5gcreate_c H5_FC_FUNC_(h5gcreate_c, H5GCREATE_C)
-#define nh5gclose_c H5_FC_FUNC_(h5gclose_c, H5GCLOSE_C)
-#define nh5gopen_c H5_FC_FUNC_(h5gopen_c, H5GOPEN_C)
-#define nh5gget_obj_info_idx_c H5_FC_FUNC_(h5gget_obj_info_idx_c, H5GGET_OBJ_INFO_IDX_C)
-#define nh5gn_members_c H5_FC_FUNC_(h5gn_members_c, H5GN_MEMBERS_C)
-#define nh5glink_c H5_FC_FUNC_(h5glink_c, H5GLINK_C)
-#define nh5glink2_c H5_FC_FUNC_(h5glink2_c, H5GLINK2_C)
-#define nh5gunlink_c H5_FC_FUNC_(h5gunlink_c, H5GUNLINK_C)
-#define nh5gmove_c H5_FC_FUNC_(h5gmove_c, H5GMOVE_C)
-#define nh5gmove2_c H5_FC_FUNC_(h5gmove2_c, H5GMOVE2_C)
-#define nh5gget_linkval_c H5_FC_FUNC_(h5gget_linkval_c, H5GGET_LINKVAL_C)
-#define nh5gset_comment_c H5_FC_FUNC_(h5gset_comment_c, H5GSET_COMMENT_C)
-#define nh5gget_comment_c H5_FC_FUNC_(h5gget_comment_c, H5GGET_COMMENT_C)
-#define nh5gcreate_anon_c H5_FC_FUNC_(h5gcreate_anon_c, H5GCREATE_ANON_C)
-#define nh5gget_create_plist_c H5_FC_FUNC_(h5gget_create_plist_c, H5GGET_CREATE_PLIST_C)
-#define nh5gget_info_c H5_FC_FUNC_(h5gget_info_c, H5GGET_INFO_C)
-#define nh5gget_info_by_idx_c H5_FC_FUNC_(h5gget_info_by_idx_c, H5GGET_INFO_BY_IDX_C)
-#define nh5gget_info_by_name_c H5_FC_FUNC_(h5gget_info_by_name_c, H5GGET_INFO_BY_NAME_C)
-
-
-H5_FCDLL int_f nh5gcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size_hint, hid_t_f *grp_id,
+H5_FCDLL int_f h5gcreate_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size_hint, hid_t_f *grp_id,
hid_t_f *lcpl_id, hid_t_f *gcpl_id, hid_t_f *gapl_id);
-H5_FCDLL int_f nh5gopen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *gapl_id, hid_t_f *grp_id);
-H5_FCDLL int_f nh5gclose_c ( hid_t_f *grp_id );
-H5_FCDLL int_f nh5gget_obj_info_idx_c (hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *idx, _fcd obj_name, int_f *obj_namelen, int_f *obj_type);
-H5_FCDLL int_f nh5gn_members_c (hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *nmembers);
-H5_FCDLL int_f nh5glink_c (hid_t_f *loc_id, int_f *link_type, _fcd current_name, int_f *current_namelen, _fcd new_name, int_f *new_namelen);
-H5_FCDLL int_f nh5glink2_c (hid_t_f *cur_loc_id, _fcd cur_name, int_f *cur_namelen, int_f *link_type, hid_t_f *new_loc_id, _fcd new_name, int_f *new_namelen);
-H5_FCDLL int_f nh5gunlink_c (hid_t_f *loc_id, _fcd name, int_f *namelen);
-H5_FCDLL int_f nh5gmove_c (hid_t_f *loc_id, _fcd src_name, int_f *src_namelen, _fcd dst_name, int_f *dst_namelen);
-H5_FCDLL int_f nh5gmove2_c (hid_t_f *src_loc_id, _fcd src_name, int_f *src_namelen, hid_t_f *dst_loc_id,_fcd dst_name, int_f *dst_namelen);
-H5_FCDLL int_f nh5gget_linkval_c (hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size, _fcd value );
-H5_FCDLL int_f nh5gset_comment_c (hid_t_f *loc_id, _fcd name, int_f *namelen, _fcd comment, int_f *commentlen);
-H5_FCDLL int_f nh5gget_comment_c (hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *bufsize, _fcd comment);
-H5_FCDLL int_f nh5gcreate_anon_c (hid_t_f *loc_id, hid_t_f *gcpl_id, hid_t_f *gapl_id, hid_t_f *grp_id);
-H5_FCDLL int_f nh5gget_create_plist_c(hid_t_f *grp_id, hid_t_f *gcpl_id );
-H5_FCDLL int_f nh5gget_info_c (hid_t_f *group_id, int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted);
-H5_FCDLL int_f nh5gget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+H5_FCDLL int_f h5gopen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *gapl_id, hid_t_f *grp_id);
+H5_FCDLL int_f h5gclose_c( hid_t_f *grp_id );
+H5_FCDLL int_f h5gget_obj_info_idx_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *idx, _fcd obj_name, int_f *obj_namelen, int_f *obj_type);
+H5_FCDLL int_f h5gn_members_c(hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *nmembers);
+H5_FCDLL int_f h5glink_c(hid_t_f *loc_id, int_f *link_type, _fcd current_name, int_f *current_namelen, _fcd new_name, int_f *new_namelen);
+H5_FCDLL int_f h5glink2_c(hid_t_f *cur_loc_id, _fcd cur_name, int_f *cur_namelen, int_f *link_type, hid_t_f *new_loc_id, _fcd new_name, int_f *new_namelen);
+H5_FCDLL int_f h5gunlink_c(hid_t_f *loc_id, _fcd name, int_f *namelen);
+H5_FCDLL int_f h5gmove_c(hid_t_f *loc_id, _fcd src_name, int_f *src_namelen, _fcd dst_name, int_f *dst_namelen);
+H5_FCDLL int_f h5gmove2_c(hid_t_f *src_loc_id, _fcd src_name, int_f *src_namelen, hid_t_f *dst_loc_id,_fcd dst_name, int_f *dst_namelen);
+H5_FCDLL int_f h5gget_linkval_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *size, _fcd value );
+H5_FCDLL int_f h5gset_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, _fcd comment, int_f *commentlen);
+H5_FCDLL int_f h5gget_comment_c(hid_t_f *loc_id, _fcd name, int_f *namelen, size_t_f *bufsize, _fcd comment);
+H5_FCDLL int_f h5gcreate_anon_c(hid_t_f *loc_id, hid_t_f *gcpl_id, hid_t_f *gapl_id, hid_t_f *grp_id);
+H5_FCDLL int_f h5gget_create_plist_c(hid_t_f *grp_id, hid_t_f *gcpl_id );
+H5_FCDLL int_f h5gget_info_c(hid_t_f *group_id, int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted);
+H5_FCDLL int_f h5gget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id,
int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted);
-H5_FCDLL int_f nh5gget_info_by_name_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen, hid_t_f *lapl_id,
+H5_FCDLL int_f h5gget_info_by_name_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen, hid_t_f *lapl_id,
int_f *storage_type, int_f *nlinks, int_f *max_corder, int_f *mounted);
/*
* Functions from H5Af.c
*/
-#define nh5acreate_c H5_FC_FUNC_(h5acreate_c, H5ACREATE_C)
-#define nh5aclose_c H5_FC_FUNC_(h5aclose_c, H5ACLOSE_C)
-#define nh5aopen_name_c H5_FC_FUNC_(h5aopen_name_c, H5AOPEN_NAME_C)
-#define nh5awrite_c H5_FC_FUNC_(h5awrite_c, H5AWRITE_C)
-#define nh5awrite_integer_s_c H5_FC_FUNC_(h5awrite_integer_s_c, H5AWRITE_INTEGER_S_C)
-#define nh5awrite_integer_1_c H5_FC_FUNC_(h5awrite_integer_1_c, H5AWRITE_INTEGER_1_C)
-#define nh5awrite_integer_2_c H5_FC_FUNC_(h5awrite_integer_2_c, H5AWRITE_INTEGER_2_C)
-#define nh5awrite_integer_3_c H5_FC_FUNC_(h5awrite_integer_3_c, H5AWRITE_INTEGER_3_C)
-#define nh5awrite_integer_4_c H5_FC_FUNC_(h5awrite_integer_4_c, H5AWRITE_INTEGER_4_C)
-#define nh5awrite_integer_5_c H5_FC_FUNC_(h5awrite_integer_5_c, H5AWRITE_INTEGER_5_C)
-#define nh5awrite_integer_6_c H5_FC_FUNC_(h5awrite_integer_6_c, H5AWRITE_INTEGER_6_C)
-#define nh5awrite_integer_7_c H5_FC_FUNC_(h5awrite_integer_7_c, H5AWRITE_INTEGER_7_C)
-#define nh5awrite_real_s_c H5_FC_FUNC_(h5awrite_real_s_c, H5AWRITE_REAL_S_C)
-#define nh5awrite_real_1_c H5_FC_FUNC_(h5awrite_real_1_c, H5AWRITE_REAL_1_C)
-#define nh5awrite_real_2_c H5_FC_FUNC_(h5awrite_real_2_c, H5AWRITE_REAL_2_C)
-#define nh5awrite_real_3_c H5_FC_FUNC_(h5awrite_real_3_c, H5AWRITE_REAL_3_C)
-#define nh5awrite_real_4_c H5_FC_FUNC_(h5awrite_real_4_c, H5AWRITE_REAL_4_C)
-#define nh5awrite_real_5_c H5_FC_FUNC_(h5awrite_real_5_c, H5AWRITE_REAL_5_C)
-#define nh5awrite_real_6_c H5_FC_FUNC_(h5awrite_real_6_c, H5AWRITE_REAL_6_C)
-#define nh5awrite_real_7_c H5_FC_FUNC_(h5awrite_real_7_c, H5AWRITE_REAL_7_C)
-#define nh5awrite_double_s_c H5_FC_FUNC_(h5awrite_double_s_c, H5AWRITE_DOUBLE_S_C)
-#define nh5awrite_double_1_c H5_FC_FUNC_(h5awrite_double_1_c, H5AWRITE_DOUBLE_1_C)
-#define nh5awrite_double_2_c H5_FC_FUNC_(h5awrite_double_2_c, H5AWRITE_DOUBLE_2_C)
-#define nh5awrite_double_3_c H5_FC_FUNC_(h5awrite_double_3_c, H5AWRITE_DOUBLE_3_C)
-#define nh5awrite_double_4_c H5_FC_FUNC_(h5awrite_double_4_c, H5AWRITE_DOUBLE_4_C)
-#define nh5awrite_double_5_c H5_FC_FUNC_(h5awrite_double_5_c, H5AWRITE_DOUBLE_5_C)
-#define nh5awrite_double_6_c H5_FC_FUNC_(h5awrite_double_6_c, H5AWRITE_DOUBLE_6_C)
-#define nh5awrite_double_7_c H5_FC_FUNC_(h5awrite_double_7_c, H5AWRITE_DOUBLE_7_C)
-#define nh5awritec_c H5_FC_FUNC_(h5awritec_c, H5AWRITEC_C)
-#define nh5awritec_s_c H5_FC_FUNC_(h5awritec_s_c, H5AWRITEC_S_C)
-#define nh5awritec_1_c H5_FC_FUNC_(h5awritec_1_c, H5AWRITEC_1_C)
-#define nh5awritec_2_c H5_FC_FUNC_(h5awritec_2_c, H5AWRITEC_2_C)
-#define nh5awritec_3_c H5_FC_FUNC_(h5awritec_3_c, H5AWRITEC_3_C)
-#define nh5awritec_4_c H5_FC_FUNC_(h5awritec_4_c, H5AWRITEC_4_C)
-#define nh5awritec_5_c H5_FC_FUNC_(h5awritec_5_c, H5AWRITEC_5_C)
-#define nh5awritec_6_c H5_FC_FUNC_(h5awritec_6_c, H5AWRITEC_6_C)
-#define nh5awritec_7_c H5_FC_FUNC_(h5awritec_7_c, H5AWRITEC_7_C)
-#define nh5aread_c H5_FC_FUNC_(h5aread_c, H5AREAD_C)
-#define nh5aread_integer_s_c H5_FC_FUNC_(h5aread_integer_s_c, H5AREAD_INTEGER_S_C)
-#define nh5aread_integer_1_c H5_FC_FUNC_(h5aread_integer_1_c, H5AREAD_INTEGER_1_C)
-#define nh5aread_integer_2_c H5_FC_FUNC_(h5aread_integer_2_c, H5AREAD_INTEGER_2_C)
-#define nh5aread_integer_3_c H5_FC_FUNC_(h5aread_integer_3_c, H5AREAD_INTEGER_3_C)
-#define nh5aread_integer_4_c H5_FC_FUNC_(h5aread_integer_4_c, H5AREAD_INTEGER_4_C)
-#define nh5aread_integer_5_c H5_FC_FUNC_(h5aread_integer_5_c, H5AREAD_INTEGER_5_C)
-#define nh5aread_integer_6_c H5_FC_FUNC_(h5aread_integer_6_c, H5AREAD_INTEGER_6_C)
-#define nh5aread_integer_7_c H5_FC_FUNC_(h5aread_integer_7_c, H5AREAD_INTEGER_7_C)
-#define nh5aread_real_s_c H5_FC_FUNC_(h5aread_real_s_c, H5AREAD_REAL_S_C)
-#define nh5aread_real_1_c H5_FC_FUNC_(h5aread_real_1_c, H5AREAD_REAL_1_C)
-#define nh5aread_real_2_c H5_FC_FUNC_(h5aread_real_2_c, H5AREAD_REAL_2_C)
-#define nh5aread_real_3_c H5_FC_FUNC_(h5aread_real_3_c, H5AREAD_REAL_3_C)
-#define nh5aread_real_4_c H5_FC_FUNC_(h5aread_real_4_c, H5AREAD_REAL_4_C)
-#define nh5aread_real_5_c H5_FC_FUNC_(h5aread_real_5_c, H5AREAD_REAL_5_C)
-#define nh5aread_real_6_c H5_FC_FUNC_(h5aread_real_6_c, H5AREAD_REAL_6_C)
-#define nh5aread_real_7_c H5_FC_FUNC_(h5aread_real_7_c, H5AREAD_REAL_7_C)
-#define nh5aread_double_s_c H5_FC_FUNC_(h5aread_double_s_c, H5AREAD_DOUBLE_S_C)
-#define nh5aread_double_1_c H5_FC_FUNC_(h5aread_double_1_c, H5AREAD_DOUBLE_1_C)
-#define nh5aread_double_2_c H5_FC_FUNC_(h5aread_double_2_c, H5AREAD_DOUBLE_2_C)
-#define nh5aread_double_3_c H5_FC_FUNC_(h5aread_double_3_c, H5AREAD_DOUBLE_3_C)
-#define nh5aread_double_4_c H5_FC_FUNC_(h5aread_double_4_c, H5AREAD_DOUBLE_4_C)
-#define nh5aread_double_5_c H5_FC_FUNC_(h5aread_double_5_c, H5AREAD_DOUBLE_5_C)
-#define nh5aread_double_6_c H5_FC_FUNC_(h5aread_double_6_c, H5AREAD_DOUBLE_6_C)
-#define nh5aread_double_7_c H5_FC_FUNC_(h5aread_double_7_c, H5AREAD_DOUBLE_7_C)
-#define nh5areadc_c H5_FC_FUNC_(h5areadc_c, H5AREADC_C)
-#define nh5areadc_s_c H5_FC_FUNC_(h5areadc_s_c, H5AREADC_S_C)
-#define nh5areadc_1_c H5_FC_FUNC_(h5areadc_1_c, H5AREADC_1_C)
-#define nh5areadc_2_c H5_FC_FUNC_(h5areadc_2_c, H5AREADC_2_C)
-#define nh5areadc_3_c H5_FC_FUNC_(h5areadc_3_c, H5AREADC_3_C)
-#define nh5areadc_4_c H5_FC_FUNC_(h5areadc_4_c, H5AREADC_4_C)
-#define nh5areadc_5_c H5_FC_FUNC_(h5areadc_5_c, H5AREADC_5_C)
-#define nh5areadc_6_c H5_FC_FUNC_(h5areadc_6_c, H5AREADC_6_C)
-#define nh5areadc_7_c H5_FC_FUNC_(h5areadc_7_c, H5AREADC_7_C)
-#define nh5aget_name_c H5_FC_FUNC_(h5aget_name_c, H5AGET_NAME_C)
-#define nh5aopen_idx_c H5_FC_FUNC_(h5aopen_idx_c, H5AOPEN_IDX_C)
-#define nh5aget_space_c H5_FC_FUNC_(h5aget_space_c, H5AGET_SPACE_C)
-#define nh5aget_type_c H5_FC_FUNC_(h5aget_type_c, H5AGET_TYPE_C)
-#define nh5aget_num_attrs_c H5_FC_FUNC_(h5aget_num_attrs_c, H5AGET_NUM_ATTRS_C)
-#define nh5adelete_c H5_FC_FUNC_(h5adelete_c, H5ADELETE_C)
-#define nh5aget_storage_size_c H5_FC_FUNC_(h5aget_storage_size_c, H5AGET_STORAGE_SIZE_C)
-#define nh5arename_by_name_c H5_FC_FUNC_(h5arename_by_name_c, H5ARENAME_BY_NAME_C)
-#define nh5aopen_c H5_FC_FUNC_(h5aopen_c, H5AOPEN_C)
-#define nh5adelete_by_name_c H5_FC_FUNC_(h5adelete_by_name_c,H5ADELETE_BY_NAME_C)
-#define nh5adelete_by_idx_c H5_FC_FUNC_(h5adelete_by_idx_c,H5ADELETE_BY_IDX_C)
-#define nh5aget_name_by_idx_c H5_FC_FUNC_(h5aget_name_by_idx_c,H5AGET_NAME_BY_IDX_C)
-#define nh5aget_create_plist_c H5_FC_FUNC_(h5aget_create_plist_c,H5AGET_CREATE_PLIST_C)
-#define nh5aopen_by_idx_c H5_FC_FUNC_(h5aopen_by_idx_c,H5AOPEN_BY_IDX_C)
-#define nh5aget_info_c H5_FC_FUNC_(h5aget_info_c,H5AGET_INFO_C)
-#define nh5aget_info_by_idx_c H5_FC_FUNC_(h5aget_info_by_idx_c,H5AGET_INFO_BY_IDX_C)
-#define nh5aget_info_by_name_c H5_FC_FUNC_(h5aget_info_by_name_c,H5AGET_INFO_BY_NAME_C)
-#define nh5aget_info_by_name_c H5_FC_FUNC_(h5aget_info_by_name_c,H5AGET_INFO_BY_NAME_C)
-#define nh5acreate_by_name_c H5_FC_FUNC_(h5acreate_by_name_c,H5ACREATE_BY_NAME_C)
-#define nh5aexists_c H5_FC_FUNC_(h5aexists_c,H5AEXISTS_C)
-#define nh5aexists_by_name_c H5_FC_FUNC_(h5aexists_by_name_c,H5AEXISTS_BY_NAME_C)
-#define nh5aopen_by_name_c H5_FC_FUNC_(h5aopen_by_name_c,H5AOPEN_BY_NAME_C)
-#define nh5arename_c H5_FC_FUNC_(h5arename_c,H5ARENAME_C)
-H5_FCDLL int_f nh5acreate_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *type_id, hid_t_f *space_id, hid_t_f *crt_prp, hid_t_f *aapl, hid_t_f *attr_id);
-H5_FCDLL int_f nh5aopen_name_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_id);
-H5_FCDLL int_f nh5awritec_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awritec_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5awrite_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_integer_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_real_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5awrite_double_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f h5awrite_f_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf);
-H5_FCDLL int_f nh5areadc_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5areadc_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, _fcd buf, void *dims);
-H5_FCDLL int_f nh5aread_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_integer_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_real_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_s_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_1_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_2_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_3_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_4_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_5_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_6_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f nh5aread_double_7_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf, void *dims);
-H5_FCDLL int_f h5aread_f_c (hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf);
-H5_FCDLL int_f nh5aclose_c ( hid_t_f *attr_id );
-H5_FCDLL int_f nh5adelete_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen);
-H5_FCDLL int_f nh5aopen_idx_c (hid_t_f *obj_id, int_f *idx, hid_t_f *attr_id);
-H5_FCDLL int_f nh5aget_space_c (hid_t_f *attr_id, hid_t_f *space_id);
-H5_FCDLL int_f nh5aget_type_c (hid_t_f *attr_id, hid_t_f *type_id);
-H5_FCDLL int_f nh5aget_num_attrs_c (hid_t_f *obj_id, int_f *attr_num);
-H5_FCDLL int_f nh5aget_name_c(hid_t_f *attr_id, size_t_f *size, _fcd buf);
-H5_FCDLL int_f nh5aget_storage_size_c ( hid_t_f *attr_id, hsize_t_f *size );
-H5_FCDLL int_f nh5arename_by_name_c ( hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5awrite_f_c(hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf);
+H5_FCDLL int_f h5aread_f_c(hid_t_f *attr_id, hid_t_f *mem_type_id, void *buf);
+H5_FCDLL int_f h5adelete_c(hid_t_f *obj_id, _fcd name, size_t_f *namelen);
+H5_FCDLL int_f h5aget_num_attrs_c(hid_t_f *obj_id, int_f *attr_num);
+H5_FCDLL int_f h5aget_name_c(hid_t_f *attr_id, size_t_f *size, _fcd buf);
+H5_FCDLL int_f h5arename_by_name_c( hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd old_attr_name, size_t_f *old_attr_namelen,
_fcd new_attr_name, size_t_f *new_attr_namelen,
hid_t_f *lapl_id );
-H5_FCDLL int_f nh5aopen_c ( hid_t_f *obj_id, _fcd attr_name, size_t_f *attr_namelen,
+H5_FCDLL int_f h5aopen_c( hid_t_f *obj_id, _fcd attr_name, size_t_f *attr_namelen,
hid_t_f *aapl_id, hid_t_f *attr_id);
-H5_FCDLL int_f nh5adelete_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5adelete_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd attr_name, size_t_f *attr_namelen, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5adelete_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5adelete_by_idx_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5aget_name_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5aget_name_by_idx_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, _fcd name,
size_t_f *size, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5aget_create_plist_c ( hid_t_f *attr_id, hid_t_f *creation_prop_id );
-H5_FCDLL int_f nh5aopen_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5aopen_by_idx_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *aapl_id, hid_t_f *lapl_id, hid_t_f *attr_id);
-H5_FCDLL int_f nh5aget_info_c (hid_t_f *loc_id, int_f *corder_valid, int_f *corder,
+H5_FCDLL int_f h5aget_info_c(hid_t_f *loc_id, int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size );
-H5_FCDLL int_f nh5aget_info_by_idx_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5aget_info_by_idx_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
int_f *idx_type, int_f *order, hsize_t_f *n, hid_t_f *lapl_id,
int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size );
-H5_FCDLL int_f nh5aget_info_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5aget_info_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd attr_name, size_t_f *attr_namelen, hid_t_f *lapl_id,
int_f *corder_valid, int_f *corder,
int_f *cset, hsize_t_f *data_size );
-H5_FCDLL int_f nh5acreate_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5acreate_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen,
_fcd attr_name, size_t_f *attr_namelen, hid_t_f *type_id,
hid_t_f *space_id, hid_t_f *acpl_id, hid_t_f *aapl_id,
hid_t_f *lapl_id, hid_t_f *attr_id );
-H5_FCDLL int_f nh5aexists_c (hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_exists);
-H5_FCDLL int_f nh5aexists_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
+H5_FCDLL int_f h5aexists_c(hid_t_f *obj_id, _fcd name, size_t_f *namelen, hid_t_f *attr_exists);
+H5_FCDLL int_f h5aexists_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
hid_t_f *lapl_id, int_f *attr_exists);
-H5_FCDLL int_f nh5aopen_by_name_c (hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
+H5_FCDLL int_f h5aopen_by_name_c(hid_t_f *loc_id, _fcd obj_name, size_t_f *obj_namelen, _fcd attr_name, size_t_f *attr_namelen,
hid_t_f *aapl_id, hid_t_f *lapl_id, hid_t_f *attr_id);
-H5_FCDLL int_f nh5arename_c( hid_t_f *loc_id,
+H5_FCDLL int_f h5arename_c( hid_t_f *loc_id,
_fcd old_attr_name, size_t_f *old_attr_namelen,
_fcd new_attr_name, size_t_f *new_attr_namelen);
/*
* Functions form H5Tf.c file
*/
-#define nh5topen_c H5_FC_FUNC_(h5topen_c, H5TOPEN_C)
-#define nh5tcommit_c H5_FC_FUNC_(h5tcommit_c, H5TCOMMIT_C)
-#define nh5tcommitted_c H5_FC_FUNC_(h5tcommitted_c, H5TCOMMITTED_C)
-#define nh5tclose_c H5_FC_FUNC_(h5tclose_c, H5TCLOSE_C)
-#define nh5tcopy_c H5_FC_FUNC_(h5tcopy_c, H5TCOPY_C)
-#define nh5tequal_c H5_FC_FUNC_(h5tequal_c, H5TEQUAL_C)
-#define nh5tget_class_c H5_FC_FUNC_(h5tget_class_c, H5TGET_CLASS_C)
-#define nh5tget_order_c H5_FC_FUNC_(h5tget_order_c, H5TGET_ORDER_C)
-#define nh5tset_order_c H5_FC_FUNC_(h5tset_order_c, H5TSET_ORDER_C)
-#define nh5tget_size_c H5_FC_FUNC_(h5tget_size_c, H5TGET_SIZE_C)
-#define nh5tset_size_c H5_FC_FUNC_(h5tset_size_c, H5TSET_SIZE_C)
-#define nh5tget_precision_c H5_FC_FUNC_(h5tget_precision_c, H5TGET_PRECISION_C)
-#define nh5tset_precision_c H5_FC_FUNC_(h5tset_precision_c, H5TSET_PRECISION_C)
-#define nh5tget_offset_c H5_FC_FUNC_(h5tget_offset_c, H5TGET_OFFSET_C)
-#define nh5tset_offset_c H5_FC_FUNC_(h5tset_offset_c, H5TSET_OFFSET_C)
-#define nh5tget_pad_c H5_FC_FUNC_(h5tget_pad_c, H5TGET_PAD_C)
-#define nh5tset_pad_c H5_FC_FUNC_(h5tset_pad_c, H5TSET_PAD_C)
-#define nh5tget_sign_c H5_FC_FUNC_(h5tget_sign_c, H5TGET_SIGN_C)
-#define nh5tset_sign_c H5_FC_FUNC_(h5tset_sign_c, H5TSET_SIGN_C)
-#define nh5tget_fields_c H5_FC_FUNC_(h5tget_fields_c, H5TGET_FIELDS_C)
-#define nh5tset_fields_c H5_FC_FUNC_(h5tset_fields_c, H5TSET_FIELDS_C)
-#define nh5tget_ebias_c H5_FC_FUNC_(h5tget_ebias_c, H5TGET_EBIAS_C)
-#define nh5tset_ebias_c H5_FC_FUNC_(h5tset_ebias_c, H5TSET_EBIAS_C)
-#define nh5tget_norm_c H5_FC_FUNC_(h5tget_norm_c, H5TGET_NORM_C)
-#define nh5tset_norm_c H5_FC_FUNC_(h5tset_norm_c, H5TSET_NORM_C)
-#define nh5tget_inpad_c H5_FC_FUNC_(h5tget_inpad_c, H5TGET_INPAD_C)
-#define nh5tset_inpad_c H5_FC_FUNC_(h5tset_inpad_c, H5TSET_INPAD_C)
-#define nh5tget_cset_c H5_FC_FUNC_(h5tget_cset_c, H5TGET_CSET_C)
-#define nh5tset_cset_c H5_FC_FUNC_(h5tset_cset_c, H5TSET_CSET_C)
-#define nh5tget_strpad_c H5_FC_FUNC_(h5tget_strpad_c, H5TGET_STRPAD_C)
-#define nh5tset_strpad_c H5_FC_FUNC_(h5tset_strpad_c, H5TSET_STRPAD_C)
-#define nh5tget_nmembers_c H5_FC_FUNC_(h5tget_nmembers_c, H5TGET_NMEMBERS_C)
-#define nh5tget_member_name_c H5_FC_FUNC_(h5tget_member_name_c, H5TGET_MEMBER_NAME_C)
-#define nh5tget_member_offset_c H5_FC_FUNC_(h5tget_member_offset_c, H5TGET_MEMBER_OFFSET_C)
-#define nh5tget_member_dims_c H5_FC_FUNC_(h5tget_member_dims_c, H5TGET_MEMBER_DIMS_C)
-#define nh5tget_member_type_c H5_FC_FUNC_(h5tget_member_type_c, H5TGET_MEMBER_TYPE_C)
-#define nh5tget_member_index_c H5_FC_FUNC_(h5tget_member_index_c, H5TGET_MEMBER_INDEX_C)
-#define nh5tinsert_c H5_FC_FUNC_(h5tinsert_c, H5TINSERT_C)
-#define nh5tcreate_c H5_FC_FUNC_(h5tcreate_c, H5TCREATE_C)
-#define nh5tpack_c H5_FC_FUNC_(h5tpack_c, H5TPACK_C)
-#define nh5tinsert_array_c H5_FC_FUNC_(h5tinsert_array_c, H5TINSERT_ARRAY_C)
-#define nh5tinsert_array_c2 H5_FC_FUNC_(h5tinsert_array_c2, H5TINSERT_ARRAY_C2)
-#define nh5tenum_create_c H5_FC_FUNC_(h5tenum_create_c, H5TENUM_CREATE_C)
-#define nh5tenum_insert_c H5_FC_FUNC_(h5tenum_insert_c, H5TENUM_INSERT_C)
-#define nh5tenum_nameof_c H5_FC_FUNC_(h5tenum_nameof_c, H5TENUM_NAMEOF_C)
-#define nh5tenum_valueof_c H5_FC_FUNC_(h5tenum_valueof_c, H5TENUM_VALUEOF_C)
-#define nh5tget_member_value_c H5_FC_FUNC_(h5tget_member_value_c, H5TGET_MEMBER_VALUE_C)
-#define nh5tset_tag_c H5_FC_FUNC_(h5tset_tag_c, H5TSET_TAG_C)
-#define nh5tget_tag_c H5_FC_FUNC_(h5tget_tag_c, H5TGET_TAG_C)
-#define nh5tarray_create_c H5_FC_FUNC_(h5tarray_create_c, H5TARRAY_CREATE_C)
-#define nh5tget_array_ndims_c H5_FC_FUNC_(h5tget_array_ndims_c, H5TGET_ARRAY_NDIMS_C)
-#define nh5tget_array_dims_c H5_FC_FUNC_(h5tget_array_dims_c, H5TGET_ARRAY_DIMS_C)
-#define nh5tget_super_c H5_FC_FUNC_(h5tget_super_c, H5TGET_SUPER_C)
-#define nh5tvlen_create_c H5_FC_FUNC_(h5tvlen_create_c, H5TVLEN_CREATE_C)
-#define nh5tis_variable_str_c H5_FC_FUNC_(h5tis_variable_str_c, H5TIS_VARIABLE_STR_C)
-#define nh5tget_member_class_c H5_FC_FUNC_(h5tget_member_class_c, H5TGET_MEMBER_CLASS_C)
-#define nh5tcommit_anon_c H5_FC_FUNC_(h5tcommit_anon_c, H5TCOMMIT_ANON_C)
-#define nh5tdecode_c H5_FC_FUNC_(h5tdecode_c, H5TDECODE_C)
-#define nh5tencode_c H5_FC_FUNC_(h5tencode_c, H5TENCODE_C)
-#define nh5tget_create_plist_c H5_FC_FUNC_(h5tget_create_plist_c, H5TGET_CREATE_PLIST_C)
-#define nh5tcompiler_conv_c H5_FC_FUNC_(h5tcompiler_conv_c, H5TCOMPILER_CONV_C)
-#define nh5tget_native_type_c H5_FC_FUNC_(h5tget_native_type_c, H5TGET_NATIVE_TYPE_C )
-H5_FCDLL int_f nh5tcreate_c(int_f *cls, size_t_f *size, hid_t_f *type_id);
-H5_FCDLL int_f nh5topen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *tapl_id );
-H5_FCDLL int_f nh5tcommit_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *lcpl_id, hid_t_f *tcpl_id, hid_t_f *tapl_id);
-H5_FCDLL int_f nh5tclose_c ( hid_t_f *type_id );
-H5_FCDLL int_f nh5tequal_c ( hid_t_f *type1_id , hid_t_f *type2_id, int_f *c_flag);
-H5_FCDLL int_f nh5tcopy_c ( hid_t_f *type_id , hid_t_f *new_type_id);
-H5_FCDLL int_f nh5tget_class_c ( hid_t_f *type_id , int_f *classtype);
-H5_FCDLL int_f nh5tget_order_c ( hid_t_f *type_id , int_f *order);
-H5_FCDLL int_f nh5tset_order_c ( hid_t_f *type_id , int_f *order);
-H5_FCDLL int_f nh5tget_size_c ( hid_t_f *type_id , size_t_f *size);
-H5_FCDLL int_f nh5tset_size_c ( hid_t_f *type_id , size_t_f *size);
-H5_FCDLL int_f nh5tcommitted_c (hid_t_f *dtype_id);
-H5_FCDLL int_f nh5tget_precision_c ( hid_t_f *type_id , size_t_f *precision);
-H5_FCDLL int_f nh5tset_precision_c ( hid_t_f *type_id , size_t_f *precision);
-H5_FCDLL int_f nh5tget_offset_c ( hid_t_f *type_id , size_t_f *offset);
-H5_FCDLL int_f nh5tset_offset_c ( hid_t_f *type_id , size_t_f *offset);
-H5_FCDLL int_f nh5tget_pad_c ( hid_t_f *type_id , int_f * lsbpad, int_f * msbpad);
-H5_FCDLL int_f nh5tset_pad_c ( hid_t_f *type_id, int_f * lsbpad, int_f * msbpad );
-H5_FCDLL int_f nh5tget_sign_c ( hid_t_f *type_id , int_f* sign);
-H5_FCDLL int_f nh5tset_sign_c ( hid_t_f *type_id , int_f *sign);
-H5_FCDLL int_f nh5tget_fields_c ( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize);
-H5_FCDLL int_f nh5tset_fields_c ( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize);
-H5_FCDLL int_f nh5tget_ebias_c ( hid_t_f *type_id , size_t_f *ebias);
-H5_FCDLL int_f nh5tset_ebias_c ( hid_t_f *type_id , size_t_f *ebias);
-H5_FCDLL int_f nh5tget_norm_c ( hid_t_f *type_id , int_f *norm);
-H5_FCDLL int_f nh5tset_norm_c ( hid_t_f *type_id , int_f *norm);
-H5_FCDLL int_f nh5tget_inpad_c ( hid_t_f *type_id, int_f * padtype);
-H5_FCDLL int_f nh5tset_inpad_c ( hid_t_f *type_id, int_f * padtype);
-H5_FCDLL int_f nh5tget_cset_c ( hid_t_f *type_id, int_f * cset);
-H5_FCDLL int_f nh5tset_cset_c ( hid_t_f *type_id, int_f * cset);
-H5_FCDLL int_f nh5tget_strpad_c ( hid_t_f *type_id, int_f * strpad);
-H5_FCDLL int_f nh5tset_strpad_c ( hid_t_f *type_id, int_f * strpad);
-H5_FCDLL int_f nh5tget_nmembers_c ( hid_t_f *type_id , int_f * num_members);
-H5_FCDLL int_f nh5tget_member_name_c ( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *namelen);
-H5_FCDLL int_f nh5tget_member_dims_c ( hid_t_f *type_id ,int_f* field_idx, int_f * dims, size_t_f * field_dims, int_f * perm );
-H5_FCDLL int_f nh5tget_member_offset_c ( hid_t_f *type_id ,int_f* member_no, size_t_f* offset);
-H5_FCDLL int_f nh5tget_member_type_c ( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype);
-H5_FCDLL int_f nh5tget_member_index_c ( hid_t_f *type_id ,_fcd name, int_f* namelen, int_f *idx);
-H5_FCDLL int_f nh5tinsert_c(hid_t_f *type_id, _fcd name, int_f* namelen, size_t_f *offset, hid_t_f * field_id);
-H5_FCDLL int_f nh5tpack_c(hid_t_f * type_id);
-H5_FCDLL int_f nh5tinsert_array_c(hid_t_f * parent_id, _fcd name, int_f* namelen, size_t_f* offset, int_f* ndims, size_t_f* dims, hid_t_f* member_id, int_f* perm );
-H5_FCDLL int_f nh5tinsert_array_c2(hid_t_f * parent_id, _fcd name, int_f* namelen, size_t_f* offset, int_f* ndims, size_t_f* dims, hid_t_f* member_id);
-H5_FCDLL int_f nh5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id);
-H5_FCDLL int_f nh5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
+H5_FCDLL int_f h5tcreate_c(int_f *cls, size_t_f *size, hid_t_f *type_id);
+H5_FCDLL int_f h5topen_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *tapl_id );
+H5_FCDLL int_f h5tcommit_c(hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_t_f *lcpl_id, hid_t_f *tcpl_id, hid_t_f *tapl_id);
+H5_FCDLL int_f h5tclose_c( hid_t_f *type_id );
+H5_FCDLL int_f h5tequal_c( hid_t_f *type1_id , hid_t_f *type2_id, int_f *c_flag);
+H5_FCDLL int_f h5tcopy_c( hid_t_f *type_id , hid_t_f *new_type_id);
+H5_FCDLL int_f h5tget_class_c( hid_t_f *type_id , int_f *classtype);
+H5_FCDLL int_f h5tget_order_c( hid_t_f *type_id , int_f *order);
+H5_FCDLL int_f h5tset_order_c( hid_t_f *type_id , int_f *order);
+H5_FCDLL int_f h5tget_size_c( hid_t_f *type_id , size_t_f *size);
+H5_FCDLL int_f h5tset_size_c( hid_t_f *type_id , size_t_f *size);
+H5_FCDLL int_f h5tcommitted_c(hid_t_f *dtype_id);
+H5_FCDLL int_f h5tget_precision_c( hid_t_f *type_id , size_t_f *precision);
+H5_FCDLL int_f h5tset_precision_c( hid_t_f *type_id , size_t_f *precision);
+H5_FCDLL int_f h5tget_offset_c( hid_t_f *type_id , size_t_f *offset);
+H5_FCDLL int_f h5tset_offset_c( hid_t_f *type_id , size_t_f *offset);
+H5_FCDLL int_f h5tget_pad_c( hid_t_f *type_id , int_f * lsbpad, int_f * msbpad);
+H5_FCDLL int_f h5tset_pad_c( hid_t_f *type_id, int_f * lsbpad, int_f * msbpad );
+H5_FCDLL int_f h5tget_sign_c( hid_t_f *type_id , int_f* sign);
+H5_FCDLL int_f h5tset_sign_c( hid_t_f *type_id , int_f *sign);
+H5_FCDLL int_f h5tget_fields_c( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize);
+H5_FCDLL int_f h5tset_fields_c( hid_t_f *type_id, size_t_f *spos, size_t_f *epos, size_t_f* esize, size_t_f* mpos, size_t_f* msize);
+H5_FCDLL int_f h5tget_ebias_c( hid_t_f *type_id , size_t_f *ebias);
+H5_FCDLL int_f h5tset_ebias_c( hid_t_f *type_id , size_t_f *ebias);
+H5_FCDLL int_f h5tget_norm_c( hid_t_f *type_id , int_f *norm);
+H5_FCDLL int_f h5tset_norm_c( hid_t_f *type_id , int_f *norm);
+H5_FCDLL int_f h5tget_inpad_c( hid_t_f *type_id, int_f * padtype);
+H5_FCDLL int_f h5tset_inpad_c( hid_t_f *type_id, int_f * padtype);
+H5_FCDLL int_f h5tget_cset_c( hid_t_f *type_id, int_f * cset);
+H5_FCDLL int_f h5tset_cset_c( hid_t_f *type_id, int_f * cset);
+H5_FCDLL int_f h5tget_strpad_c( hid_t_f *type_id, int_f * strpad);
+H5_FCDLL int_f h5tset_strpad_c( hid_t_f *type_id, int_f * strpad);
+H5_FCDLL int_f h5tget_nmembers_c( hid_t_f *type_id , int_f * num_members);
+H5_FCDLL int_f h5tget_member_name_c( hid_t_f *type_id ,int_f* idx, _fcd member_name, int_f *namelen);
+H5_FCDLL int_f h5tget_member_dims_c( hid_t_f *type_id ,int_f* field_idx, int_f * dims, size_t_f * field_dims, int_f * perm );
+H5_FCDLL int_f h5tget_member_offset_c( hid_t_f *type_id ,int_f* member_no, size_t_f* offset);
+H5_FCDLL int_f h5tget_member_type_c( hid_t_f *type_id ,int_f* field_idx, hid_t_f * datatype);
+H5_FCDLL int_f h5tget_member_index_c( hid_t_f *type_id ,_fcd name, int_f* namelen, int_f *idx);
+H5_FCDLL int_f h5tinsert_c(hid_t_f *type_id, _fcd name, int_f* namelen, size_t_f *offset, hid_t_f * field_id);
+H5_FCDLL int_f h5tpack_c(hid_t_f * type_id);
+H5_FCDLL int_f h5tinsert_array_c(hid_t_f * parent_id, _fcd name, int_f* namelen, size_t_f* offset, int_f* ndims, size_t_f* dims, hid_t_f* member_id, int_f* perm );
+H5_FCDLL int_f h5tinsert_array_c2(hid_t_f * parent_id, _fcd name, int_f* namelen, size_t_f* offset, int_f* ndims, size_t_f* dims, hid_t_f* member_id);
+H5_FCDLL int_f h5tenum_create_c( hid_t_f *parent_id , hid_t_f *new_type_id);
+H5_FCDLL int_f h5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
H5_FCDLL int_f h5tenum_insert_ptr_c(hid_t_f *type_id, _fcd name, int_f* namelen, void *value);
-H5_FCDLL int_f nh5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen);
-H5_FCDLL int_f nh5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
-H5_FCDLL int_f nh5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value);
-H5_FCDLL int_f nh5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen);
-H5_FCDLL int_f nh5tget_tag_c(hid_t_f* type_id, _fcd tag, size_t_f* tag_size, int_f* namelen);
-H5_FCDLL int_f nh5tarray_create_c(hid_t_f * base_id, int_f *rank, hsize_t_f* dims, hid_t_f* type_id);
-H5_FCDLL int_f nh5tget_array_dims_c ( hid_t_f *type_id , hsize_t_f * dims);
-H5_FCDLL int_f nh5tget_array_ndims_c ( hid_t_f *type_id , int_f * ndims);
-H5_FCDLL int_f nh5tget_super_c ( hid_t_f *type_id , hid_t_f *base_type_id);
-H5_FCDLL int_f nh5tvlen_create_c ( hid_t_f *type_id , hid_t_f *vltype_id);
-H5_FCDLL int_f nh5tis_variable_str_c ( hid_t_f *type_id , int_f *flag );
-H5_FCDLL int_f nh5tget_member_class_c ( hid_t_f *type_id , int_f *member_no, int_f *cls );
-H5_FCDLL int_f nh5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id, hid_t_f *tcpl_id, hid_t_f *tapl_id);
-H5_FCDLL int_f nh5tdecode_c ( _fcd buf, hid_t_f *obj_id );
-H5_FCDLL int_f nh5tencode_c (_fcd buf, hid_t_f *obj_id, size_t_f *nalloc );
-H5_FCDLL int_f nh5tget_create_plist_c ( hid_t_f *dtype_id, hid_t_f *dtpl_id);
-H5_FCDLL int_f nh5tcompiler_conv_c ( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag);
-H5_FCDLL int_f nh5tget_native_type_c(hid_t_f *dtype_id, int_f *direction, hid_t_f *native_dtype_id);
+H5_FCDLL int_f h5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen);
+H5_FCDLL int_f h5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
+H5_FCDLL int_f h5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value);
+H5_FCDLL int_f h5tset_tag_c(hid_t_f* type_id, _fcd tag, int_f* namelen);
+H5_FCDLL int_f h5tget_tag_c(hid_t_f* type_id, _fcd tag, size_t_f* tag_size, int_f* namelen);
+H5_FCDLL int_f h5tarray_create_c(hid_t_f * base_id, int_f *rank, hsize_t_f* dims, hid_t_f* type_id);
+H5_FCDLL int_f h5tget_array_dims_c( hid_t_f *type_id , hsize_t_f * dims);
+H5_FCDLL int_f h5tget_array_ndims_c( hid_t_f *type_id , int_f * ndims);
+H5_FCDLL int_f h5tget_super_c( hid_t_f *type_id , hid_t_f *base_type_id);
+H5_FCDLL int_f h5tvlen_create_c( hid_t_f *type_id , hid_t_f *vltype_id);
+H5_FCDLL int_f h5tis_variable_str_c( hid_t_f *type_id , int_f *flag );
+H5_FCDLL int_f h5tget_member_class_c( hid_t_f *type_id , int_f *member_no, int_f *cls );
+H5_FCDLL int_f h5tcommit_anon_c(hid_t_f *loc_id, hid_t_f *dtype_id, hid_t_f *tcpl_id, hid_t_f *tapl_id);
+H5_FCDLL int_f h5tdecode_c( _fcd buf, hid_t_f *obj_id );
+H5_FCDLL int_f h5tencode_c(_fcd buf, hid_t_f *obj_id, size_t_f *nalloc );
+H5_FCDLL int_f h5tget_create_plist_c( hid_t_f *dtype_id, hid_t_f *dtpl_id);
+H5_FCDLL int_f h5tcompiler_conv_c( hid_t_f *src_id, hid_t_f *dst_id, int_f *c_flag);
+H5_FCDLL int_f h5tget_native_type_c(hid_t_f *dtype_id, int_f *direction, hid_t_f *native_dtype_id);
H5_FCDLL int_f h5tconvert_c(hid_t_f *src_id, hid_t_f *dst_id, size_t_f *nelmts, void *buf, void *background, hid_t_f *plist_id);
-
/*
* Functions from H5Of.c
*/
-#define nh5olink_c H5_FC_FUNC_(h5olink_c, H5OLINK_C)
-#define nh5oopen_c H5_FC_FUNC_(h5oopen_c, H5OOPEN_C)
-#define nh5oclose_c H5_FC_FUNC_(h5oclose_c, H5OCLOSE_C)
-#define nh5oopen_by_addr_c H5_FC_FUNC_(h5oopen_by_addr_c, H5OOPEN_BY_ADDR_C)
-#define nh5ocopy_c H5_FC_FUNC_(h5ocopy_c, H5OCOPY_C)
-#define nh5odecr_refcount_c H5_FC_FUNC_(h5odecr_refcount_c, H5ODECR_REFCOUNT_C)
-#define nh5oincr_refcount_c H5_FC_FUNC_(h5oincr_refcount_c, H5OINCR_REFCOUNT_C)
-#define nh5oexists_by_name_c H5_FC_FUNC_(h5oexists_by_name_c, H5OEXISTS_BY_NAME_C)
-#define nh5oset_comment_c H5_FC_FUNC_(h5oset_comment_c, H5OSET_COMMENT_C)
-#define nh5oset_comment_by_name_c H5_FC_FUNC_(h5oset_comment_by_name_c, H5OSET_COMMENT_BY_NAME_C)
-#define nh5oopen_by_idx_c H5_FC_FUNC_(h5oopen_by_idx_c, H5OOPEN_BY_IDX_C)
-#define nh5oget_comment_c H5_FC_FUNC_(h5oget_comment_c, H5OGET_COMMENT_C)
-#define nh5oget_comment_by_name_c H5_FC_FUNC_(h5oget_comment_by_name_c, H5OGET_COMMENT_BY_NAME_C)
-
-H5_FCDLL int_f nh5oopen_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, hid_t_f *obj_id);
-H5_FCDLL int_f nh5oclose_c (hid_t_f *object_id );
-H5_FCDLL int_f nh5oopen_by_addr_c (hid_t_f *loc_id, haddr_t_f *addr, hid_t_f *obj_id);
-H5_FCDLL int_f nh5olink_c (hid_t_f *object_id, hid_t_f *new_loc_id, _fcd name, size_t_f *namelen,
+H5_FCDLL int_f h5oopen_c(hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, hid_t_f *obj_id);
+H5_FCDLL int_f h5oclose_c(hid_t_f *object_id );
+H5_FCDLL int_f h5oopen_by_addr_c(hid_t_f *loc_id, haddr_t_f *addr, hid_t_f *obj_id);
+H5_FCDLL int_f h5olink_c(hid_t_f *object_id, hid_t_f *new_loc_id, _fcd name, size_t_f *namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id);
-H5_FCDLL int_f h5ovisit_c (hid_t_f *group_id, int_f *index_type, int_f *order, H5O_iterate_t op, void *op_data);
+H5_FCDLL int_f h5ovisit_c(hid_t_f *group_id, int_f *index_type, int_f *order, H5O_iterate_t op, void *op_data);
H5_FCDLL int_f h5ovisit_by_name_c(hid_t_f *loc_id, _fcd object_name, size_t_f *namelen, int_f *index_type, int_f *order,
H5O_iterate_t op, void *op_data, hid_t_f *lapl_id );
-H5_FCDLL int_f h5oget_info_c (hid_t_f *object_id, H5O_info_t_f *object_info);
-H5_FCDLL int_f h5oget_info_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *namelen,
+H5_FCDLL int_f h5oget_info_c(hid_t_f *object_id, H5O_info_t_f *object_info);
+H5_FCDLL int_f h5oget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *namelen,
int_f *index_field, int_f *order, hsize_t_f *n, hid_t_f *lapl_id, H5O_info_t_f *object_info);
-H5_FCDLL int_f h5oget_info_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id,
+H5_FCDLL int_f h5oget_info_by_name_c(hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id,
H5O_info_t_f *object_info);
-H5_FCDLL int_f nh5ocopy_c (hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_name_len,
+H5_FCDLL int_f h5ocopy_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_name_len,
hid_t_f *dst_loc_id, _fcd dst_name, size_t_f *dst_name_len,
hid_t_f *ocpypl_id, hid_t_f *lcpl_id );
-H5_FCDLL int_f nh5odecr_refcount_c (hid_t_f *object_id);
-H5_FCDLL int_f nh5oincr_refcount_c (hid_t_f *object_id);
-H5_FCDLL int_f nh5oexists_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5oset_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentlen);
-H5_FCDLL int_f nh5oset_comment_by_name_c (hid_t_f *object_id, _fcd name, size_t_f *namelen, _fcd comment, size_t_f *commentlen, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5oopen_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+H5_FCDLL int_f h5odecr_refcount_c(hid_t_f *object_id);
+H5_FCDLL int_f h5oincr_refcount_c(hid_t_f *object_id);
+H5_FCDLL int_f h5oexists_by_name_c(hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id);
+H5_FCDLL int_f h5oset_comment_c(hid_t_f *object_id, _fcd comment, size_t_f *commentlen);
+H5_FCDLL int_f h5oset_comment_by_name_c(hid_t_f *object_id, _fcd name, size_t_f *namelen, _fcd comment, size_t_f *commentlen, hid_t_f *lapl_id);
+H5_FCDLL int_f h5oopen_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_type, int_f *order, hsize_t_f *n, hid_t_f *obj_id, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5oget_comment_c (hid_t_f *object_id, _fcd comment, size_t_f *commentsize, hssize_t_f *bufsize);
-H5_FCDLL int_f nh5oget_comment_by_name_c (hid_t_f *loc_id, _fcd name, size_t_f *name_size,
+H5_FCDLL int_f h5oget_comment_c(hid_t_f *object_id, _fcd comment, size_t_f *commentsize, hssize_t_f *bufsize);
+H5_FCDLL int_f h5oget_comment_by_name_c(hid_t_f *loc_id, _fcd name, size_t_f *name_size,
_fcd comment, size_t_f *commentsize, size_t_f *bufsize, hid_t_f *lapl_id);
/*
* Functions from H5Pf.c
*/
-#define nh5pcreate_c H5_FC_FUNC_(h5pcreate_c, H5PCREATE_C)
-#define nh5pclose_c H5_FC_FUNC_(h5pclose_c, H5PCLOSE_C)
-#define nh5pcopy_c H5_FC_FUNC_(h5pcopy_c, H5PCOPY_C)
-#define nh5pcreate_class_f90_c H5_FC_FUNC_(h5pcreate_class_f90_c, H5PCREATE_CLASS_F90_C)
-#define nh5pequal_c H5_FC_FUNC_(h5pequal_c, H5PEQUAL_C)
-#define nh5pget_class_c H5_FC_FUNC_(h5pget_class_c, H5PGET_CLASS_C)
-#define nh5pset_deflate_c H5_FC_FUNC_(h5pset_deflate_c, H5PSET_DEFLATE_C)
-#define nh5pset_preserve_c H5_FC_FUNC_(h5pset_preserve_c, H5PSET_PRESERVE_C)
-#define nh5pget_preserve_c H5_FC_FUNC_(h5pget_preserve_c, H5PGET_PRESERVE_C)
-#define nh5pset_chunk_c H5_FC_FUNC_(h5pset_chunk_c, H5PSET_CHUNK_C)
-#define nh5pget_chunk_c H5_FC_FUNC_(h5pget_chunk_c, H5PGET_CHUNK_C)
-#define nh5pset_fill_valuec_c H5_FC_FUNC_(h5pset_fill_valuec_c, H5PSET_FILL_VALUEC_C)
-#define nh5pset_fill_value_integer_c H5_FC_FUNC_(h5pset_fill_value_integer_c, H5PSET_FILL_VALUE_INTEGER_C)
-#define nh5pset_fill_value_real_c H5_FC_FUNC_(h5pset_fill_value_real_c, H5PSET_FILL_VALUE_REAL_C)
-#define nh5pset_fill_value_double_c H5_FC_FUNC_(h5pset_fill_value_double_c, H5PSET_FILL_VALUE_DOUBLE_C)
-#define nh5pget_fill_valuec_c H5_FC_FUNC_(h5pget_fill_valuec_c, H5PGET_FILL_VALUEC_C)
-#define nh5pget_fill_value_integer_c H5_FC_FUNC_(h5pget_fill_value_integer_c, H5PGET_FILL_VALUE_INTEGER_C)
-#define nh5pget_fill_value_real_c H5_FC_FUNC_(h5pget_fill_value_real_c, H5PGET_FILL_VALUE_REAL_C)
-#define nh5pget_fill_value_double_c H5_FC_FUNC_(h5pget_fill_value_double_c, H5PGET_FILL_VALUE_DOUBLE_C)
-#define nh5pget_version_c H5_FC_FUNC_(h5pget_version_c, H5PGET_VERSION_C)
-#define nh5pget_userblock_c H5_FC_FUNC_(h5pget_userblock_c, H5PGET_USERBLOCK_C)
-#define nh5pset_userblock_c H5_FC_FUNC_(h5pset_userblock_c, H5PSET_USERBLOCK_C)
-#define nh5pset_sizes_c H5_FC_FUNC_(h5pset_sizes_c, H5PSET_SIZES_C)
-#define nh5pget_sizes_c H5_FC_FUNC_(h5pget_sizes_c, H5PGET_SIZES_C)
-#define nh5pget_sym_k_c H5_FC_FUNC_(h5pget_sym_k_c, H5PGET_SYM_K_C)
-#define nh5pset_sym_k_c H5_FC_FUNC_(h5pset_sym_k_c, H5PSET_SYM_K_C)
-#define nh5pget_istore_k_c H5_FC_FUNC_(h5pget_istore_k_c, H5PGET_ISTORE_K_C)
-#define nh5pset_istore_k_c H5_FC_FUNC_(h5pset_istore_k_c, H5PSET_ISTORE_K_C)
-#define nh5pget_driver_c H5_FC_FUNC_(h5pget_driver_c, H5PGET_DRIVER_C)
-#define nh5pset_fapl_stdio_c H5_FC_FUNC_(h5pset_fapl_stdio_c, H5PSET_FAPL_STDIO_C)
-#define nh5pget_fapl_stdio_c H5_FC_FUNC_(h5pget_fapl_stdio_c, H5PGET_FAPL_STDIO_C)
-#define nh5pset_fapl_sec2_c H5_FC_FUNC_(h5pset_fapl_sec2_c, H5PSET_FAPL_SEC2_C)
-#define nh5pget_fapl_sec2_c H5_FC_FUNC_(h5pget_fapl_sec2_c, H5PGET_FAPL_SEC2_C)
-#define nh5pset_alignment_c H5_FC_FUNC_(h5pset_alignment_c, H5PSET_ALIGNMENT_C)
-#define nh5pget_alignment_c H5_FC_FUNC_(h5pget_alignment_c, H5PGET_ALIGNMENT_C)
-#define nh5pset_fapl_core_c H5_FC_FUNC_(h5pset_fapl_core_c, H5PSET_FAPL_CORE_C)
-#define nh5pget_fapl_core_c H5_FC_FUNC_(h5pget_fapl_core_c, H5PGET_FAPL_CORE_C)
-#define nh5pset_fapl_family_c H5_FC_FUNC_(h5pset_fapl_family_c, H5PSET_FAPL_FAMILY_C)
-#define nh5pget_fapl_family_c H5_FC_FUNC_(h5pget_fapl_family_c, H5PGET_FAPL_FAMILY_C)
-#define nh5pset_cache_c H5_FC_FUNC_(h5pset_cache_c, H5PSET_CACHE_C)
-#define nh5pget_cache_c H5_FC_FUNC_(h5pget_cache_c, H5PGET_CACHE_C)
-#define nh5pset_fapl_split_c H5_FC_FUNC_(h5pset_fapl_split_c, H5PSET_FAPL_SPLIT_C)
-#define nh5pget_fapl_split_c H5_FC_FUNC_(h5pget_fapl_split_c, H5PGET_FAPL_SPLIT_C)
-#define nh5pset_gc_references_c H5_FC_FUNC_(h5pset_gc_references_c, H5PSET_GC_REFERENCES_C)
-#define nh5pget_gc_references_c H5_FC_FUNC_(h5pget_gc_references_c, H5PGET_GC_REFERENCES_C)
-#define nh5pset_layout_c H5_FC_FUNC_(h5pset_layout_c, H5PSET_LAYOUT_C)
-#define nh5pget_layout_c H5_FC_FUNC_(h5pget_layout_c, H5PGET_LAYOUT_C)
-#define nh5pset_filter_c H5_FC_FUNC_(h5pset_filter_c, H5PSET_FILTER_C)
-#define nh5premove_filter_c H5_FC_FUNC_(h5premove_filter_c, H5PREMOVE_FILTER_C)
-#define nh5pmodify_filter_c H5_FC_FUNC_(h5pmodify_filter_c, H5PMODIFY_FILTER_C)
-#define nh5pget_nfilters_c H5_FC_FUNC_(h5pget_nfilters_c, H5PGET_NFILTERS_C)
-#define nh5pget_filter_c H5_FC_FUNC_(h5pget_filter_c, H5PGET_FILTER_C)
-#define nh5pget_filter_by_id_c H5_FC_FUNC_(h5pget_filter_by_id_c, H5PGET_FILTER_BY_ID_C)
-#define nh5pset_external_c H5_FC_FUNC_(h5pset_external_c, H5PSET_EXTERNAL_C)
-#define nh5pget_external_count_c H5_FC_FUNC_(h5pget_external_count_c, H5PGET_EXTERNAL_COUNT_C)
-#define nh5pget_external_c H5_FC_FUNC_(h5pget_external_c, H5PGET_EXTERNAL_C)
-#define nh5pget_btree_ratios_c H5_FC_FUNC_(h5pget_btree_ratios_c, H5PGET_BTREE_RATIOS_C)
-#define nh5pset_btree_ratios_c H5_FC_FUNC_(h5pset_btree_ratios_c, H5PSET_BTREE_RATIOS_C)
-#define nh5pset_fapl_mpio_c H5_FC_FUNC_(h5pset_fapl_mpio_c, H5PSET_FAPL_MPIO_C)
-#define nh5pget_fapl_mpio_c H5_FC_FUNC_(h5pget_fapl_mpio_c, H5PGET_FAPL_MPIO_C)
-#define nh5pset_dxpl_mpio_c H5_FC_FUNC_(h5pset_dxpl_mpio_c, H5PSET_DXPL_MPIO_C)
-#define nh5pget_dxpl_mpio_c H5_FC_FUNC_(h5pget_dxpl_mpio_c, H5PGET_DXPL_MPIO_C)
-#define nh5pget_fclose_degree_c H5_FC_FUNC_(h5pget_fclose_degree_c, H5PGET_FCLOSE_DEGREE_C)
-#define nh5pset_fclose_degree_c H5_FC_FUNC_(h5pset_fclose_degree_c, H5PSET_FCLOSE_DEGREE_C)
-#define nh5pset_buffer_c H5_FC_FUNC_(h5pset_buffer_c, H5PSET_BUFFER_C)
-#define nh5pget_buffer_c H5_FC_FUNC_(h5pget_buffer_c, H5PGET_BUFFER_C)
-#define nh5pfill_value_defined_c H5_FC_FUNC_(h5pfill_value_defined_c, H5PFILL_VALUE_DEFINED_C)
-#define nh5pset_alloc_time_c H5_FC_FUNC_(h5pset_alloc_time_c, H5PSET_ALLOC_TIME_C)
-#define nh5pget_alloc_time_c H5_FC_FUNC_(h5pget_alloc_time_c, H5PGET_ALLOC_TIME_C)
-#define nh5pset_fill_time_c H5_FC_FUNC_(h5pset_fill_time_c, H5PSET_FILL_TIME_C)
-#define nh5pget_fill_time_c H5_FC_FUNC_(h5pget_fill_time_c, H5PGET_FILL_TIME_C)
-#define nh5pset_meta_block_size_c H5_FC_FUNC_(h5pset_meta_block_size_c, H5PSET_META_BLOCK_SIZE_C)
-#define nh5pget_meta_block_size_c H5_FC_FUNC_(h5pget_meta_block_size_c, H5PGET_META_BLOCK_SIZE_C)
-#define nh5pset_sieve_buf_size_c H5_FC_FUNC_(h5pset_sieve_buf_size_c, H5PSET_SIEVE_BUF_SIZE_C)
-#define nh5pget_sieve_buf_size_c H5_FC_FUNC_(h5pget_sieve_buf_size_c, H5PGET_SIEVE_BUF_SIZE_C)
-#define nh5pset_hyper_vector_size_c H5_FC_FUNC_(h5pset_hyper_vector_size_c, H5PSET_HYPER_VECTOR_SIZE_C)
-#define nh5pget_hyper_vector_size_c H5_FC_FUNC_(h5pget_hyper_vector_size_c, H5PGET_HYPER_VECTOR_SIZE_C)
-#define nh5pset_small_data_block_size_c H5_FC_FUNC_(h5pset_small_data_block_size_c, H5PSET_SMALL_DATA_BLOCK_SIZE_C)
-#define nh5pget_small_data_block_size_c H5_FC_FUNC_(h5pget_small_data_block_size_c, H5PGET_SMALL_DATA_BLOCK_SIZE_C)
-#define nh5pregister_integer_c H5_FC_FUNC_(h5pregister_integer_c, H5PREGISTER_INTEGER_C)
-#define nh5pregister_real_c H5_FC_FUNC_(h5pregister_real_c, H5PREGISTER_REAL_C)
-#define nh5pregister_double_c H5_FC_FUNC_(h5pregister_double_c, H5PREGISTER_DOUBLE_C)
-#define nh5pregisterc_c H5_FC_FUNC_(h5pregisterc_c, H5PREGISTERC_C)
-#define nh5pinsert_integer_c H5_FC_FUNC_(h5pinsert_integer_c, H5PINSERT_INTEGER_C)
-#define nh5pinsert_real_c H5_FC_FUNC_(h5pinsert_real_c, H5PINSERT_REAL_C)
-#define nh5pinsert_double_c H5_FC_FUNC_(h5pinsert_double_c, H5PINSERT_DOUBLE_C)
-#define nh5pinsertc_c H5_FC_FUNC_(h5pinsertc_c, H5PINSERTC_C)
-#define nh5pset_integer_c H5_FC_FUNC_(h5pset_integer_c, H5PSET_INTEGER_C)
-#define nh5pset_real_c H5_FC_FUNC_(h5pset_real_c, H5PSET_REAL_C)
-#define nh5pset_double_c H5_FC_FUNC_(h5pset_double_c, H5PSET_DOUBLE_C)
-#define nh5psetc_c H5_FC_FUNC_(h5psetc_c, H5PSETC_C)
-#define nh5pget_integer_c H5_FC_FUNC_(h5pget_integer_c, H5PGET_INTEGER_C)
-#define nh5pget_real_c H5_FC_FUNC_(h5pget_real_c, H5PGET_REAL_C)
-#define nh5pget_double_c H5_FC_FUNC_(h5pget_double_c, H5PGET_DOUBLE_C)
-#define nh5pgetc_c H5_FC_FUNC_(h5pgetc_c, H5PGETC_C)
-#define nh5pexist_c H5_FC_FUNC_(h5pexist_c, H5PEXIST_C)
-#define nh5pget_size_c H5_FC_FUNC_(h5pget_size_c, H5PGET_SIZE_C)
-#define nh5pget_nprops_c H5_FC_FUNC_(h5pget_nprops_c, H5PGET_NPROPS_C)
-#define nh5pget_class_parent_c H5_FC_FUNC_(h5pget_class_parent_c, H5PGET_CLASS_PARENT_C)
-#define nh5pisa_class_c H5_FC_FUNC_(h5pisa_class_c, H5PISA_CLASS_C)
-#define nh5pcopy_prop_c H5_FC_FUNC_(h5pcopy_prop_c, H5PCOPY_PROP_C)
-#define nh5premove_c H5_FC_FUNC_(h5premove_c, H5PREMOVE_C)
-#define nh5punregister_c H5_FC_FUNC_(h5punregister_c, H5PUNREGISTER_C)
-#define nh5pclose_class_c H5_FC_FUNC_(h5pclose_class_c, H5PCLOSE_CLASS_C)
-#define nh5pget_class_name_c H5_FC_FUNC_(h5pget_class_name_c, H5PGET_CLASS_NAME_C)
-#define nh5pset_shuffle_c H5_FC_FUNC_(h5pset_shuffle_c, H5PSET_SHUFFLE_C)
-#define nh5pset_fletcher32_c H5_FC_FUNC_(h5pset_fletcher32_c, H5PSET_FLETCHER32_C)
-#define nh5pset_edc_check_c H5_FC_FUNC_(h5pset_edc_check_c, H5PSET_EDC_CHECK_C)
-#define nh5pget_edc_check_c H5_FC_FUNC_(h5pget_edc_check_c, H5PGET_EDC_CHECK_C)
-#define nh5pset_family_offset_c H5_FC_FUNC_(h5pset_family_offset_c, H5PSET_FAMILY_OFFSET_C)
-#define nh5pget_fapl_multi_c H5_FC_FUNC_(h5pget_fapl_multi_c, H5PGET_FAPL_MULTI_C)
-#define nh5pset_fapl_multi_c H5_FC_FUNC_(h5pset_fapl_multi_c, H5PSET_FAPL_MULTI_C)
-#define nh5pset_fapl_multi_sc H5_FC_FUNC_(h5pset_fapl_multi_sc, H5PSET_FAPL_MULTI_SC)
-#define nh5pset_szip_c H5_FC_FUNC_(h5pset_szip_c, H5PSET_SZIP_C)
-#define nh5pall_filters_avail_c H5_FC_FUNC_(h5pall_filters_avail_c, H5PALL_FILTERS_AVAIL_C)
-#define nh5pget_attr_phase_change_c H5_FC_FUNC_(h5pget_attr_phase_change_c, H5PGET_ATTR_PHASE_CHANGE_C)
-#define nh5pset_attr_creation_order_c H5_FC_FUNC_(h5pset_attr_creation_order_c, H5PSET_ATTR_CREATION_ORDER_C)
-#define nh5pset_shared_mesg_nindexes_c H5_FC_FUNC_(h5pset_shared_mesg_nindexes_c, H5PSET_SHARED_MESG_NINDEXES_C)
-#define nh5pset_shared_mesg_index_c H5_FC_FUNC_(h5pset_shared_mesg_index_c,H5PSET_SHARED_MESG_INDEX_C)
-#define nh5pget_attr_creation_order_c H5_FC_FUNC_(h5pget_attr_creation_order_c,H5PGET_ATTR_CREATION_ORDER_C)
-#define nh5pset_libver_bounds_c H5_FC_FUNC_(h5pset_libver_bounds_c,H5PSET_LIBVER_BOUNDS_C)
-#define nh5pset_link_creation_order_c H5_FC_FUNC_(h5pset_link_creation_order_c, H5PSET_LINK_CREATION_ORDER_C)
-#define nh5pget_link_phase_change_c H5_FC_FUNC_(h5pget_link_phase_change_c, H5PGET_LINK_PHASE_CHANGE_C)
-#define nh5pget_obj_track_times_c H5_FC_FUNC_(h5pget_obj_track_times_c, H5PGET_OBJ_TRACK_TIMES_C)
-#define nh5pset_obj_track_times_c H5_FC_FUNC_(h5pset_obj_track_times_c, H5PSET_OBJ_TRACK_TIMES_C)
-#define nh5pset_create_inter_group_c H5_FC_FUNC_(h5pset_create_inter_group_c,H5PSET_CREATE_INTER_GROUP_C)
-#define nh5pget_create_inter_group_c H5_FC_FUNC_(h5pget_create_inter_group_c,H5PGET_CREATE_INTER_GROUP_C)
-#define nh5pget_link_creation_order_c H5_FC_FUNC_(h5pget_link_creation_order_c,H5PGET_LINK_CREATION_ORDER_C)
-#define nh5pset_char_encoding_c H5_FC_FUNC_(h5pset_char_encoding_c, H5PSET_CHAR_ENCODING_C)
-#define nh5pget_char_encoding_c H5_FC_FUNC_(h5pget_char_encoding_c, H5PGET_CHAR_ENCODING_C)
-#define nh5pset_copy_object_c H5_FC_FUNC_(h5pset_copy_object_c, H5PSET_COPY_OBJECT_C)
-#define nh5pget_copy_object_c H5_FC_FUNC_(h5pget_copy_object_c, H5PGET_COPY_OBJECT_C)
-#define nh5pget_data_transform_c H5_FC_FUNC_(h5pget_data_transform_c, H5PGET_DATA_TRANSFORM_C)
-#define nh5pset_data_transform_c H5_FC_FUNC_(h5pset_data_transform_c, H5PSET_DATA_TRANSFORM_C)
-#define nh5pget_local_heap_size_hint_c H5_FC_FUNC_(h5pget_local_heap_size_hint_c, H5PGET_LOCAL_HEAP_SIZE_HINT_C)
-#define nh5pget_est_link_info_c H5_FC_FUNC_(h5pget_est_link_info_c,H5PGET_EST_LINK_INFO_C)
-#define nh5pset_est_link_info_c H5_FC_FUNC_(h5pset_est_link_info_c,H5PSET_EST_LINK_INFO_C)
-#define nh5pset_local_heap_size_hint_c H5_FC_FUNC_(h5pset_local_heap_size_hint_c, H5PSET_LOCAL_HEAP_SIZE_HINT_C)
-#define nh5pset_link_phase_change_c H5_FC_FUNC_(h5pset_link_phase_change_c, H5PSET_LINK_PHASE_CHANGE_C)
-#define nh5pset_fapl_direct_c H5_FC_FUNC_(h5pset_fapl_direct_c, H5PSET_FAPL_DIRECT_C)
-#define nh5pget_fapl_direct_c H5_FC_FUNC_(h5pget_fapl_direct_c, H5PGET_FAPL_DIRECT_C)
-#define nh5pset_attr_phase_change_c H5_FC_FUNC_(h5pset_attr_phase_change_c, H5PSET_ATTR_PHASE_CHANGE_C)
-#define nh5pset_nbit_c H5_FC_FUNC_(h5pset_nbit_c, H5PSET_NBIT_C)
-#define nh5pset_scaleoffset_c H5_FC_FUNC_(h5pset_scaleoffset_c, H5PSET_SCALEOFFSET_C)
-#define nh5pset_nlinks_c H5_FC_FUNC_(h5pset_nlinks_c, H5PSET_NLINKS_C)
-#define nh5pget_nlinks_c H5_FC_FUNC_(h5pget_nlinks_c, H5PGET_NLINKS_C)
-#define nh5pset_chunk_cache_c H5_FC_FUNC_(h5pset_chunk_cache_c, H5PSET_CHUNK_CACHE_C)
-#define nh5pget_chunk_cache_c H5_FC_FUNC_(h5pget_chunk_cache_c, H5PGET_CHUNK_CACHE_C)
-#define nh5pget_mpio_actual_io_mode_c H5_FC_FUNC_(h5pget_mpio_actual_io_mode_c, H5PGET_MPIO_ACTUAL_IO_MODE_C)
-
-H5_FCDLL int_f nh5pcreate_c ( hid_t_f *cls, hid_t_f *prp_id );
-H5_FCDLL int_f nh5pclose_c ( hid_t_f *prp_id );
-H5_FCDLL int_f nh5pcopy_c ( hid_t_f *prp_id , hid_t_f *new_prp_id);
-H5_FCDLL int_f nh5pequal_c ( hid_t_f *plist1_id , hid_t_f *plist2_id, int_f *c_flag);
-H5_FCDLL int_f nh5pget_class_c ( hid_t_f *prp_id , hid_t_f *classtype);
-H5_FCDLL int_f nh5pset_deflate_c ( hid_t_f *prp_id , int_f *level);
-H5_FCDLL int_f nh5pset_chunk_c ( hid_t_f *prp_id, int_f *rank, hsize_t_f *dims );
-H5_FCDLL int_f nh5pget_chunk_c ( hid_t_f *prp_id, int_f *max_rank, hsize_t_f *dims );
-H5_FCDLL int_f h5pset_file_image_c (hid_t_f *fapl_id, void *buf_ptr, size_t_f *buf_len);
-H5_FCDLL int_f nh5pset_fill_valuec_c (hid_t_f *prp_id, hid_t_f *type_id, _fcd fillvalue);
-H5_FCDLL int_f h5pset_fill_value_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pset_fill_value_integer_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pset_fill_value_real_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pset_fill_value_double_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f h5pget_file_image_c (hid_t_f *fapl_id, void **buf_ptr, size_t_f *buf_len);
-H5_FCDLL int_f nh5pget_fill_valuec_c (hid_t_f *prp_id, hid_t_f *type_id, _fcd fillvalue);
-H5_FCDLL int_f h5pget_fill_value_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pget_fill_value_integer_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pget_fill_value_real_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pget_fill_value_double_c (hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
-H5_FCDLL int_f nh5pset_preserve_c ( hid_t_f *prp_id , int_f *flag);
-H5_FCDLL int_f nh5pget_preserve_c ( hid_t_f *prp_id , int_f *flag);
-H5_FCDLL int_f nh5pget_version_c (hid_t_f *prp_id, int_f * boot,int_f * freelist, int_f * stab, int_f *shhdr);
-H5_FCDLL int_f nh5pset_userblock_c (hid_t_f *prp_id, hsize_t_f * size);
-H5_FCDLL int_f nh5pget_userblock_c (hid_t_f *prp_id, hsize_t_f * size);
-H5_FCDLL int_f nh5pget_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size);
-H5_FCDLL int_f nh5pset_sizes_c (hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size);
-H5_FCDLL int_f nh5pset_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk);
-H5_FCDLL int_f nh5pget_sym_k_c (hid_t_f *prp_id, int_f* ik, int_f* lk);
-H5_FCDLL int_f nh5pset_istore_k_c (hid_t_f *prp_id, int_f* ik);
-H5_FCDLL int_f nh5pget_istore_k_c (hid_t_f *prp_id, int_f* ik);
-H5_FCDLL int_f nh5pget_driver_c (hid_t_f *prp_id, hid_t_f*driver);
-H5_FCDLL int_f nh5pset_fapl_stdio_c (hid_t_f *prp_id);
-H5_FCDLL int_f nh5pget_fapl_stdio_c (hid_t_f *prp_id, int_f* io);
-H5_FCDLL int_f nh5pset_fapl_sec2_c (hid_t_f *prp_id);
-H5_FCDLL int_f nh5pget_fapl_sec2_c (hid_t_f *prp_id, int_f* sec2);
-H5_FCDLL int_f nh5pset_alignment_c(hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment);
-H5_FCDLL int_f nh5pget_alignment_c(hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment);
-H5_FCDLL int_f nh5pget_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag);
-H5_FCDLL int_f nh5pset_fapl_core_c (hid_t_f *prp_id, size_t_f* increment, int_f *flag);
-H5_FCDLL int_f nh5pset_fapl_family_c (hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist );
-H5_FCDLL int_f nh5pget_fapl_family_c (hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist );
-H5_FCDLL int_f nh5pset_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes, real_f* rdcc_w0);
-H5_FCDLL int_f nh5pget_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes, real_f* rdcc_w0);
-H5_FCDLL int_f nh5pget_fapl_split_c(hid_t_f *prp_id, size_t_f* meta_ext_size , _fcd meta_ext, hid_t_f* meta_plist, size_t_f* raw_ext_size, _fcd raw_ext, hid_t_f * raw_plist);
-H5_FCDLL int_f nh5pset_fapl_split_c(hid_t_f *prp_id, int_f* meta_len, _fcd meta_ext, hid_t_f* meta_plist, int_f* raw_len, _fcd raw_ext, hid_t_f * raw_plist);
-H5_FCDLL int_f nh5pset_gc_references_c(hid_t_f *prp_id, int_f* gc_references);
-H5_FCDLL int_f nh5pget_gc_references_c(hid_t_f *prp_id, int_f* gc_references);
-H5_FCDLL int_f nh5pset_layout_c (hid_t_f *prp_id, int_f* layout);
-H5_FCDLL int_f nh5pget_layout_c (hid_t_f *prp_id, int_f* layout);
-H5_FCDLL int_f nh5pset_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values );
-H5_FCDLL int_f nh5premove_filter_c (hid_t_f *prp_id, int_f* filter);
-H5_FCDLL int_f nh5pmodify_filter_c (hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values );
-H5_FCDLL int_f nh5pget_nfilters_c (hid_t_f *prp_id, int_f* nfilters);
-H5_FCDLL int_f nh5pget_filter_c(hid_t_f *prp_id, int_f* filter_number, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name, int_f* filter_id);
-H5_FCDLL int_f nh5pget_filter_by_id_c(hid_t_f *prp_id, int_f* filter_id, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name);
-H5_FCDLL int_f nh5pset_external_c (hid_t_f *prp_id, _fcd name, int_f* namelen, off_t_f* offset, hsize_t_f*bytes);
-H5_FCDLL int_f nh5pget_external_count_c (hid_t_f *prp_id, int_f* count);
-H5_FCDLL int_f nh5pget_external_c(hid_t_f *prp_id, int_f *idx, size_t_f* name_size, _fcd name, off_t_f* offset, hsize_t_f*bytes);
-H5_FCDLL int_f nh5pget_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right);
-H5_FCDLL int_f nh5pset_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right);
-H5_FCDLL int_f nh5pget_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info);
-H5_FCDLL int_f nh5pset_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info);
-H5_FCDLL int_f nh5pget_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode);
-H5_FCDLL int_f nh5pset_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode);
-H5_FCDLL int_f nh5pset_fclose_degree_c(hid_t_f *fapl, int_f *degree);
-H5_FCDLL int_f nh5pget_fclose_degree_c(hid_t_f *fapl, int_f *degree);
-H5_FCDLL int_f nh5pget_buffer_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pset_buffer_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pset_alloc_time_c(hid_t_f *plist, int_f *flag);
-H5_FCDLL int_f nh5pget_alloc_time_c(hid_t_f *plist, int_f *flag);
-H5_FCDLL int_f nh5pset_fill_time_c(hid_t_f *plist, int_f *flag);
-H5_FCDLL int_f nh5pget_fill_time_c(hid_t_f *plist, int_f *flag);
-H5_FCDLL int_f nh5pset_meta_block_size_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pget_meta_block_size_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pset_sieve_buf_size_c(hid_t_f *plist, size_t_f *size);
-H5_FCDLL int_f nh5pget_sieve_buf_size_c(hid_t_f *plist, size_t_f *size);
-H5_FCDLL int_f nh5pset_small_data_block_size_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pget_small_data_block_size_c(hid_t_f *plist, hsize_t_f *size);
-H5_FCDLL int_f nh5pset_hyper_vector_size_c(hid_t_f *plist, size_t_f *size);
-H5_FCDLL int_f nh5pget_hyper_vector_size_c(hid_t_f *plist, size_t_f *size);
+H5_FCDLL int_f h5pcreate_c( hid_t_f *cls, hid_t_f *prp_id );
+H5_FCDLL int_f h5pclose_c( hid_t_f *prp_id );
+H5_FCDLL int_f h5pcopy_c( hid_t_f *prp_id , hid_t_f *new_prp_id);
+H5_FCDLL int_f h5pequal_c( hid_t_f *plist1_id , hid_t_f *plist2_id, int_f *c_flag);
+H5_FCDLL int_f h5pget_class_c( hid_t_f *prp_id , hid_t_f *classtype);
+H5_FCDLL int_f h5pset_deflate_c( hid_t_f *prp_id , int_f *level);
+H5_FCDLL int_f h5pset_chunk_c( hid_t_f *prp_id, int_f *rank, hsize_t_f *dims );
+H5_FCDLL int_f h5pget_chunk_c( hid_t_f *prp_id, int_f *max_rank, hsize_t_f *dims );
+H5_FCDLL int_f h5pset_file_image_c(hid_t_f *fapl_id, void *buf_ptr, size_t_f *buf_len);
+H5_FCDLL int_f h5pset_fill_value_c(hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
+H5_FCDLL int_f h5pget_file_image_c(hid_t_f *fapl_id, void **buf_ptr, size_t_f *buf_len);
+H5_FCDLL int_f h5pget_fill_value_c(hid_t_f *prp_id, hid_t_f *type_id, void *fillvalue);
+H5_FCDLL int_f h5pset_preserve_c( hid_t_f *prp_id , int_f *flag);
+H5_FCDLL int_f h5pget_preserve_c( hid_t_f *prp_id , int_f *flag);
+H5_FCDLL int_f h5pget_version_c(hid_t_f *prp_id, int_f * boot,int_f * freelist, int_f * stab, int_f *shhdr);
+H5_FCDLL int_f h5pset_userblock_c(hid_t_f *prp_id, hsize_t_f * size);
+H5_FCDLL int_f h5pget_userblock_c(hid_t_f *prp_id, hsize_t_f * size);
+H5_FCDLL int_f h5pget_sizes_c(hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size);
+H5_FCDLL int_f h5pset_sizes_c(hid_t_f *prp_id, size_t_f * sizeof_addr, size_t_f * sizeof_size);
+H5_FCDLL int_f h5pset_sym_k_c(hid_t_f *prp_id, int_f* ik, int_f* lk);
+H5_FCDLL int_f h5pget_sym_k_c(hid_t_f *prp_id, int_f* ik, int_f* lk);
+H5_FCDLL int_f h5pset_istore_k_c(hid_t_f *prp_id, int_f* ik);
+H5_FCDLL int_f h5pget_istore_k_c(hid_t_f *prp_id, int_f* ik);
+H5_FCDLL int_f h5pget_driver_c(hid_t_f *prp_id, hid_t_f*driver);
+H5_FCDLL int_f h5pset_fapl_stdio_c(hid_t_f *prp_id);
+#ifdef NO_SUCH_F90_FUNCTION
+H5_FCDLL int_f h5pget_fapl_stdio_c(hid_t_f *prp_id, int_f* io);
+#endif
+H5_FCDLL int_f h5pset_fapl_sec2_c(hid_t_f *prp_id);
+#ifdef NO_SUCH_F90_FUNCTION
+H5_FCDLL int_f h5pget_fapl_sec2_c(hid_t_f *prp_id, int_f* sec2);
+#endif
+H5_FCDLL int_f h5pset_alignment_c(hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment);
+H5_FCDLL int_f h5pget_alignment_c(hid_t_f *prp_id, hsize_t_f* threshold, hsize_t_f* alignment);
+H5_FCDLL int_f h5pget_fapl_core_c(hid_t_f *prp_id, size_t_f* increment, int_f *flag);
+H5_FCDLL int_f h5pset_fapl_core_c(hid_t_f *prp_id, size_t_f* increment, int_f *flag);
+H5_FCDLL int_f h5pset_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist );
+H5_FCDLL int_f h5pget_fapl_family_c(hid_t_f *prp_id, hsize_t_f* memb_size, hid_t_f* memb_plist );
+H5_FCDLL int_f h5pset_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes, real_f* rdcc_w0);
+H5_FCDLL int_f h5pget_cache_c(hid_t_f *prp_id, int_f* mdc_nelmts, size_t_f* rdcc_nelmts, size_t_f* rdcc_nbytes, real_f* rdcc_w0);
+#ifdef NO_SUCH_F90_FUNCTION
+H5_FCDLL int_f h5pget_fapl_split_c(hid_t_f *prp_id, size_t_f* meta_ext_size , _fcd meta_ext, hid_t_f* meta_plist, size_t_f* raw_ext_size, _fcd raw_ext, hid_t_f * raw_plist);
+#endif
+H5_FCDLL int_f h5pset_fapl_split_c(hid_t_f *prp_id, int_f* meta_len, _fcd meta_ext, hid_t_f* meta_plist, int_f* raw_len, _fcd raw_ext, hid_t_f * raw_plist);
+H5_FCDLL int_f h5pset_gc_references_c(hid_t_f *prp_id, int_f* gc_references);
+H5_FCDLL int_f h5pget_gc_references_c(hid_t_f *prp_id, int_f* gc_references);
+H5_FCDLL int_f h5pset_layout_c(hid_t_f *prp_id, int_f* layout);
+H5_FCDLL int_f h5pget_layout_c(hid_t_f *prp_id, int_f* layout);
+H5_FCDLL int_f h5pset_filter_c(hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values );
+H5_FCDLL int_f h5premove_filter_c(hid_t_f *prp_id, int_f* filter);
+H5_FCDLL int_f h5pmodify_filter_c(hid_t_f *prp_id, int_f* filter, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values );
+H5_FCDLL int_f h5pget_nfilters_c(hid_t_f *prp_id, int_f* nfilters);
+H5_FCDLL int_f h5pget_filter_c(hid_t_f *prp_id, int_f* filter_number, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name, int_f* filter_id);
+H5_FCDLL int_f h5pget_filter_by_id_c(hid_t_f *prp_id, int_f* filter_id, int_f* flags, size_t_f* cd_nelmts, int_f* cd_values, size_t_f *namelen, _fcd name);
+H5_FCDLL int_f h5pset_external_c(hid_t_f *prp_id, _fcd name, int_f* namelen, off_t_f* offset, hsize_t_f*bytes);
+H5_FCDLL int_f h5pget_external_count_c(hid_t_f *prp_id, int_f* count);
+H5_FCDLL int_f h5pget_external_c(hid_t_f *prp_id, int_f *idx, size_t_f* name_size, _fcd name, off_t_f* offset, hsize_t_f*bytes);
+H5_FCDLL int_f h5pget_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right);
+H5_FCDLL int_f h5pset_btree_ratios_c(hid_t_f *prp_id, real_f* left, real_f* middle, real_f* right);
+H5_FCDLL int_f h5pset_fclose_degree_c(hid_t_f *fapl, int_f *degree);
+H5_FCDLL int_f h5pget_fclose_degree_c(hid_t_f *fapl, int_f *degree);
+H5_FCDLL int_f h5pget_buffer_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pset_buffer_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pset_alloc_time_c(hid_t_f *plist, int_f *flag);
+H5_FCDLL int_f h5pget_alloc_time_c(hid_t_f *plist, int_f *flag);
+H5_FCDLL int_f h5pset_fill_time_c(hid_t_f *plist, int_f *flag);
+H5_FCDLL int_f h5pget_fill_time_c(hid_t_f *plist, int_f *flag);
+H5_FCDLL int_f h5pset_meta_block_size_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pget_meta_block_size_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pset_sieve_buf_size_c(hid_t_f *plist, size_t_f *size);
+H5_FCDLL int_f h5pget_sieve_buf_size_c(hid_t_f *plist, size_t_f *size);
+H5_FCDLL int_f h5pset_small_data_block_size_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pget_small_data_block_size_c(hid_t_f *plist, hsize_t_f *size);
+H5_FCDLL int_f h5pset_hyper_vector_size_c(hid_t_f *plist, size_t_f *size);
+H5_FCDLL int_f h5pget_hyper_vector_size_c(hid_t_f *plist, size_t_f *size);
H5_FCDLL int_f h5pcreate_class_c(hid_t_f *parent, _fcd name, int_f *name_len, hid_t_f *cls,
H5P_cls_create_func_t create, void *create_data,
H5P_cls_copy_func_t copy, void *copy_data,
H5P_cls_close_func_t close, void *close_data);
-H5_FCDLL int_f nh5pcreate_class_f90_c(hid_t_f *parent, _fcd name, int_f *name_len, hid_t_f *cls);
H5_FCDLL int_f h5pregister_c(hid_t_f *cls, _fcd name, int_f * name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pregister_integer_c(hid_t_f *cls, _fcd name, int_f * name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pregister_real_c(hid_t_f *cls, _fcd name, int_f * name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pregister_double_c(hid_t_f *cls, _fcd name, int_f * name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pregisterc_c(hid_t_f *cls, _fcd name, int_f * name_len, size_t_f *size, _fcd value, int_f *value_len);
H5_FCDLL int_f h5pinsert_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pinsert_integer_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pinsert_real_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pinsert_double_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, void *value);
-H5_FCDLL int_f nh5pinsertc_c(hid_t_f *plist, _fcd name, int_f *name_len, size_t_f *size, _fcd value, int_f *value_len);
H5_FCDLL int_f h5pset_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pset_integer_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pset_real_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pset_double_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5psetc_c(hid_t_f *prp_id, _fcd name, int_f *name_len, _fcd value, int_f *value_len);
H5_FCDLL int_f h5pget_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pget_double_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pget_integer_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pget_real_c(hid_t_f *prp_id, _fcd name, int_f *name_len, void *value);
-H5_FCDLL int_f nh5pgetc_c(hid_t_f *prp_id, _fcd name, int_f *name_len, _fcd value, int_f *value_len);
-H5_FCDLL int_f nh5pexist_c(hid_t_f *prp_id, _fcd name, int_f *name_len);
-H5_FCDLL int_f nh5pget_size_c(hid_t_f *prp_id, _fcd name, int_f *name_len, size_t_f *size);
-H5_FCDLL int_f nh5pget_nprops_c(hid_t_f *prp_id, size_t_f *nprops);
-H5_FCDLL int_f nh5pget_class_parent_c(hid_t_f *prp_id, hid_t_f *parent_id);
-H5_FCDLL int_f nh5pisa_class_c(hid_t_f *plist, hid_t_f *pclass);
-H5_FCDLL int_f nh5pcopy_prop_c(hid_t_f *dst_id, hid_t_f *src_id, _fcd name, int_f *name_len);
-H5_FCDLL int_f nh5premove_c(hid_t_f *plid, _fcd name, int_f *name_len);
-H5_FCDLL int_f nh5punregister_c(hid_t_f *cls, _fcd name, int_f *name_len);
-H5_FCDLL int_f nh5pclose_class_c(hid_t_f * cls);
-H5_FCDLL int_f nh5pget_class_name_c(hid_t_f *prp_id, _fcd name, int_f *name_len);
-H5_FCDLL int_f nh5pset_shuffle_c ( hid_t_f *prp_id);
-H5_FCDLL int_f nh5pset_fletcher32_c ( hid_t_f *prp_id );
-H5_FCDLL int_f nh5pset_edc_check_c ( hid_t_f *prp_id, int_f *flag );
-H5_FCDLL int_f nh5pget_edc_check_c ( hid_t_f *prp_id, int_f *flag );
-H5_FCDLL int_f nh5pset_family_offset_c ( hid_t_f *prp_id , hsize_t_f *offset);
-H5_FCDLL int_f nh5pget_fapl_multi_c ( hid_t_f *prp_id , int_f *mem_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag, int_f *maxlen_out);
-H5_FCDLL int_f nh5pset_fapl_multi_c ( hid_t_f *prp_id , int_f *mem_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag);
-H5_FCDLL int_f nh5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag);
-H5_FCDLL int_f nh5pset_szip_c ( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block);
-H5_FCDLL int_f nh5pall_filters_avail_c ( hid_t_f *prp_id , int_f *status);
-H5_FCDLL int_f nh5pfill_value_defined_c ( hid_t_f *prp_id , int_f *flag);
-H5_FCDLL int_f nh5pget_attr_phase_change_c (hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense );
-H5_FCDLL int_f nh5pset_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags );
-H5_FCDLL int_f nh5pset_shared_mesg_nindexes_c(hid_t_f *plist_id, int_f *nindexes );
-H5_FCDLL int_f nh5pset_shared_mesg_index_c(hid_t_f *fcpl_id, int_f *index_num, int_f *mesg_type_flags, int_f *min_mesg_size);
-H5_FCDLL int_f nh5pget_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags);
-H5_FCDLL int_f nh5pset_libver_bounds_c(hid_t_f *fapl_id, int_f *low, int_f *high);
-H5_FCDLL int_f nh5pset_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags);
-H5_FCDLL int_f nh5pget_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense );
-H5_FCDLL int_f nh5pget_obj_track_times_c(hid_t_f *plist_id, int_f *flag);
-H5_FCDLL int_f nh5pset_obj_track_times_c(hid_t_f *plist_id, int_f *flag);
-H5_FCDLL int_f nh5pset_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group);
-H5_FCDLL int_f nh5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group);
-H5_FCDLL int_f nh5pget_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags);
-H5_FCDLL int_f nh5pset_char_encoding_c(hid_t_f *plist_id, int_f *encoding);
-H5_FCDLL int_f nh5pget_char_encoding_c(hid_t_f *plist_id, int_f *encoding);
-H5_FCDLL int_f nh5pset_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options);
-H5_FCDLL int_f nh5pget_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options);
-H5_FCDLL int_f nh5pget_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len, size_t_f *size);
-H5_FCDLL int_f nh5pset_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len);
-H5_FCDLL int_f nh5pget_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint);
-H5_FCDLL int_f nh5pget_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len);
-H5_FCDLL int_f nh5pset_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint);
-H5_FCDLL int_f nh5pset_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len);
-H5_FCDLL int_f nh5pset_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense );
-H5_FCDLL int_f nh5pset_fapl_direct_c(hid_t_f *fapl_id, size_t_f *alignment, size_t_f *block_size, size_t_f *cbuf_size );
-H5_FCDLL int_f nh5pget_fapl_direct_c(hid_t_f *fapl_id, size_t_f *alignment, size_t_f *block_size, size_t_f *cbuf_size );
-H5_FCDLL int_f nh5pset_attr_phase_change_c (hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense );
-H5_FCDLL int_f nh5pset_nbit_c(hid_t_f *plist_id );
-H5_FCDLL int_f nh5pset_scaleoffset_c(hid_t_f *plist_id, int_f *scale_type, int_f *scale_factor );
-H5_FCDLL int_f nh5pset_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks);
-H5_FCDLL int_f nh5pget_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks);
-H5_FCDLL int_f nh5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0);
-H5_FCDLL int_f nh5pget_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0);
-H5_FCDLL int_f nh5pget_mpio_actual_io_mode_c(hid_t_f *dxpl_id, int_f *actual_io_mode);
+H5_FCDLL int_f h5pexist_c(hid_t_f *prp_id, _fcd name, int_f *name_len);
+H5_FCDLL int_f h5pget_size_c(hid_t_f *prp_id, _fcd name, int_f *name_len, size_t_f *size);
+H5_FCDLL int_f h5pget_nprops_c(hid_t_f *prp_id, size_t_f *nprops);
+H5_FCDLL int_f h5pget_class_parent_c(hid_t_f *prp_id, hid_t_f *parent_id);
+H5_FCDLL int_f h5pisa_class_c(hid_t_f *plist, hid_t_f *pclass);
+H5_FCDLL int_f h5pcopy_prop_c(hid_t_f *dst_id, hid_t_f *src_id, _fcd name, int_f *name_len);
+H5_FCDLL int_f h5premove_c(hid_t_f *plid, _fcd name, int_f *name_len);
+H5_FCDLL int_f h5punregister_c(hid_t_f *cls, _fcd name, int_f *name_len);
+H5_FCDLL int_f h5pclose_class_c(hid_t_f * cls);
+H5_FCDLL int_f h5pget_class_name_c(hid_t_f *prp_id, _fcd name, int_f *name_len);
+H5_FCDLL int_f h5pset_shuffle_c( hid_t_f *prp_id);
+H5_FCDLL int_f h5pset_fletcher32_c( hid_t_f *prp_id );
+H5_FCDLL int_f h5pset_edc_check_c( hid_t_f *prp_id, int_f *flag );
+H5_FCDLL int_f h5pget_edc_check_c( hid_t_f *prp_id, int_f *flag );
+H5_FCDLL int_f h5pset_family_offset_c( hid_t_f *prp_id , hsize_t_f *offset);
+H5_FCDLL int_f h5pget_fapl_multi_c( hid_t_f *prp_id , int_f *mem_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag, int_f *maxlen_out);
+H5_FCDLL int_f h5pset_fapl_multi_c( hid_t_f *prp_id , int_f *mem_map, hid_t_f *memb_fapl, _fcd memb_name, int_f *len, int_f *lenmax, real_f *memb_addr, int_f *flag);
+H5_FCDLL int_f h5pset_fapl_multi_sc ( hid_t_f *prp_id , int_f *flag);
+H5_FCDLL int_f h5pset_szip_c( hid_t_f *prp_id , int_f *options_mask, int_f *pixels_per_block);
+H5_FCDLL int_f h5pall_filters_avail_c( hid_t_f *prp_id , int_f *status);
+H5_FCDLL int_f h5pfill_value_defined_c( hid_t_f *prp_id , int_f *flag);
+H5_FCDLL int_f h5pget_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense );
+H5_FCDLL int_f h5pset_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags );
+H5_FCDLL int_f h5pset_shared_mesg_nindexes_c(hid_t_f *plist_id, int_f *nindexes );
+H5_FCDLL int_f h5pset_shared_mesg_index_c(hid_t_f *fcpl_id, int_f *index_num, int_f *mesg_type_flags, int_f *min_mesg_size);
+H5_FCDLL int_f h5pget_attr_creation_order_c(hid_t_f *ocpl_id, int_f *crt_order_flags);
+H5_FCDLL int_f h5pset_libver_bounds_c(hid_t_f *fapl_id, int_f *low, int_f *high);
+H5_FCDLL int_f h5pset_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags);
+H5_FCDLL int_f h5pget_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense );
+H5_FCDLL int_f h5pget_obj_track_times_c(hid_t_f *plist_id, int_f *flag);
+H5_FCDLL int_f h5pset_obj_track_times_c(hid_t_f *plist_id, int_f *flag);
+H5_FCDLL int_f h5pset_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group);
+H5_FCDLL int_f h5pget_create_inter_group_c(hid_t_f *lcpl_id, int_f *crt_intermed_group);
+H5_FCDLL int_f h5pget_link_creation_order_c(hid_t_f *gcpl_id, int_f *crt_order_flags);
+H5_FCDLL int_f h5pset_char_encoding_c(hid_t_f *plist_id, int_f *encoding);
+H5_FCDLL int_f h5pget_char_encoding_c(hid_t_f *plist_id, int_f *encoding);
+H5_FCDLL int_f h5pset_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options);
+H5_FCDLL int_f h5pget_copy_object_c(hid_t_f *ocp_plist_id, int_f *copy_options);
+H5_FCDLL int_f h5pget_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len, size_t_f *size);
+H5_FCDLL int_f h5pset_data_transform_c(hid_t_f *plist_id, _fcd expression, int_f *expression_len);
+H5_FCDLL int_f h5pget_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint);
+H5_FCDLL int_f h5pget_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len);
+H5_FCDLL int_f h5pset_local_heap_size_hint_c(hid_t_f *gcpl_id, size_t_f *size_hint);
+H5_FCDLL int_f h5pset_est_link_info_c(hid_t_f *gcpl_id, int_f *est_num_entries, int_f *est_name_len);
+H5_FCDLL int_f h5pset_link_phase_change_c(hid_t_f *gcpl_id, int_f *max_compact, int_f *min_dense );
+H5_FCDLL int_f h5pset_fapl_direct_c(hid_t_f *fapl_id, size_t_f *alignment, size_t_f *block_size, size_t_f *cbuf_size );
+H5_FCDLL int_f h5pget_fapl_direct_c(hid_t_f *fapl_id, size_t_f *alignment, size_t_f *block_size, size_t_f *cbuf_size );
+H5_FCDLL int_f h5pset_attr_phase_change_c(hid_t_f *ocpl_id, int_f *max_compact, int_f *min_dense );
+H5_FCDLL int_f h5pset_nbit_c(hid_t_f *plist_id );
+H5_FCDLL int_f h5pset_scaleoffset_c(hid_t_f *plist_id, int_f *scale_type, int_f *scale_factor );
+H5_FCDLL int_f h5pset_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks);
+H5_FCDLL int_f h5pget_nlinks_c(hid_t_f *lapl_id, size_t_f *nlinks);
+H5_FCDLL int_f h5pset_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0);
+H5_FCDLL int_f h5pget_chunk_cache_c(hid_t_f *dapl_id, size_t_f *rdcc_nslots, size_t_f *rdcc_nbytes, real_f *rdcc_w0);
+#ifdef H5_HAVE_PARALLEL
+H5_FCDLL int_f h5pget_mpio_actual_io_mode_c(hid_t_f *dxpl_id, int_f *actual_io_mode);
+H5_FCDLL int_f h5pget_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info);
+H5_FCDLL int_f h5pset_fapl_mpio_c(hid_t_f *prp_id, int_f* comm, int_f* info);
+H5_FCDLL int_f h5pget_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode);
+H5_FCDLL int_f h5pset_dxpl_mpio_c(hid_t_f *prp_id, int_f* data_xfer_mode);
+#endif
/*
* Functions frome H5Rf.c
*/
-#define nh5rcreate_object_c H5_FC_FUNC_(h5rcreate_object_c, H5RCREATE_OBJECT_C)
-#define nh5rcreate_region_c H5_FC_FUNC_(h5rcreate_region_c, H5RCREATE_REGION_C)
-#define nh5rdereference_region_c H5_FC_FUNC_(h5rdereference_region_c, H5RDEREFERENCE_REGION_C)
-#define nh5rdereference_object_c H5_FC_FUNC_(h5rdereference_object_c, H5RDEREFERENCE_OBJECT_C)
-#define nh5rget_region_region_c H5_FC_FUNC_(h5rget_region_region_c, H5RGET_REGION_REGION_C)
-#define nh5rget_object_type_obj_c H5_FC_FUNC_(h5rget_object_type_obj_c, H5RGET_OBJECT_TYPE_OBJ_C)
-#define nh5rget_name_object_c H5_FC_FUNC_(h5rget_name_object_c, H5RGET_NAME_OBJECT_C)
-#define nh5rget_name_region_c H5_FC_FUNC_(h5rget_name_region_c, H5RGET_NAME_REGION_C)
-
-
-H5_FCDLL int_f nh5rcreate_object_c (haddr_t_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen);
-H5_FCDLL int_f nh5rcreate_region_c (int_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *space_id);
-H5_FCDLL int_f h5rcreate_ptr_c (void *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *ref_type, hid_t_f *space_id);
-H5_FCDLL int_f nh5rdereference_region_c (hid_t_f *dset_id, int_f *ref, hid_t_f *obj_id);
-H5_FCDLL int_f nh5rdereference_object_c (hid_t_f *dset_id, haddr_t_f *ref, hid_t_f *obj_id);
-H5_FCDLL int_f h5rdereference_ptr_c (hid_t_f *obj_id, int_f *ref_type, void *ref, hid_t_f *ref_obj_id);
-H5_FCDLL int_f nh5rget_region_region_c (hid_t_f *dset_id, int_f *ref, hid_t_f *space_id);
+H5_FCDLL int_f h5rcreate_region_c(int_f *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *space_id);
+H5_FCDLL int_f h5rcreate_ptr_c(void *ref, hid_t_f *loc_id, _fcd name, int_f *namelen, int_f *ref_type, hid_t_f *space_id);
+H5_FCDLL int_f h5rdereference_ptr_c(hid_t_f *obj_id, int_f *ref_type, void *ref, hid_t_f *ref_obj_id);
+H5_FCDLL int_f h5rget_region_region_c(hid_t_f *dset_id, int_f *ref, hid_t_f *space_id);
H5_FCDLL int_f h5rget_region_ptr_c(hid_t_f *dset_id, void *ref, hid_t_f *space_id);
-H5_FCDLL int_f nh5rget_object_type_obj_c (hid_t_f *dset_id, haddr_t_f *ref, int_f *obj_type);
-H5_FCDLL int_f nh5rget_name_object_c (hid_t_f *loc_id, haddr_t_f *ref, _fcd name, size_t_f *name_len, size_t_f *size_default);
-H5_FCDLL int_f nh5rget_name_region_c (hid_t_f *loc_id, int_f *ref, _fcd name, size_t_f *name_len, size_t_f *size_default);
-H5_FCDLL int_f h5rget_name_ptr_c (hid_t_f *loc_id, int_f *ref_type, void *ref, _fcd name, size_t_f *name_len, size_t_f *size_default);
-H5_FCDLL int_f h5rget_obj_type_c (hid_t_f *loc_id, int_f *ref_type, void *ref, int_f *obj_type);
+H5_FCDLL int_f h5rget_object_type_obj_c(hid_t_f *dset_id, haddr_t_f *ref, int_f *obj_type);
+H5_FCDLL int_f h5rget_name_ptr_c(hid_t_f *loc_id, int_f *ref_type, void *ref, _fcd name, size_t_f *name_len, size_t_f *size_default);
+H5_FCDLL int_f h5rget_obj_type_c(hid_t_f *loc_id, int_f *ref_type, void *ref, int_f *obj_type);
/*
* Functions from H5If.c
*/
-#define nh5iget_type_c H5_FC_FUNC_(h5iget_type_c, H5IGET_TYPE_C)
-#define nh5iget_name_c H5_FC_FUNC_(h5iget_name_c, H5IGET_NAME_C)
-#define nh5iinc_ref_c H5_FC_FUNC_(h5iinc_ref_c, H5IINC_REF_C)
-#define nh5idec_ref_c H5_FC_FUNC_(h5idec_ref_c, H5IDEC_REF_C)
-#define nh5iget_ref_c H5_FC_FUNC_(h5iget_ref_c, H5IGET_REF_C)
-#define nh5iget_file_id_c H5_FC_FUNC_(h5iget_file_id_c, H5IGET_FILE_ID_C)
-#define nh5iis_valid_c H5_FC_FUNC_(h5iis_valid_c, H5IIS_VALID_C)
-
-H5_FCDLL int_f nh5iget_type_c(hid_t_f *obj_id, int_f *type);
-H5_FCDLL int_f nh5iget_name_c(hid_t_f *obj_id, _fcd buf, size_t_f *buf_size, size_t_f *name_size);
-H5_FCDLL int_f nh5iinc_ref_c(hid_t_f *obj_id, int_f *ref_count);
-H5_FCDLL int_f nh5idec_ref_c(hid_t_f *obj_id, int_f *ref_count);
-H5_FCDLL int_f nh5iget_ref_c(hid_t_f *obj_id, int_f *ref_count);
-H5_FCDLL int_f nh5iget_file_id_c(hid_t_f *obj_id, hid_t_f *file_id);
-H5_FCDLL int_f nh5iis_valid_c(hid_t_f *obj_id, int_f *c_valid);
+H5_FCDLL int_f h5iget_type_c(hid_t_f *obj_id, int_f *type);
+H5_FCDLL int_f h5iget_name_c(hid_t_f *obj_id, _fcd buf, size_t_f *buf_size, size_t_f *name_size);
+H5_FCDLL int_f h5iinc_ref_c(hid_t_f *obj_id, int_f *ref_count);
+H5_FCDLL int_f h5idec_ref_c(hid_t_f *obj_id, int_f *ref_count);
+H5_FCDLL int_f h5iget_ref_c(hid_t_f *obj_id, int_f *ref_count);
+H5_FCDLL int_f h5iget_file_id_c(hid_t_f *obj_id, hid_t_f *file_id);
+H5_FCDLL int_f h5iis_valid_c(hid_t_f *obj_id, int_f *c_valid);
/*
* Functions from H5Ef.c
*/
-#define nh5eclear_c H5_FC_FUNC_(h5eclear_c, H5ECLEAR_C)
-#define nh5eprint_c1 H5_FC_FUNC_(h5eprint_c1, H5EPRINT_C1)
-#define nh5eprint_c2 H5_FC_FUNC_(h5eprint_c2, H5EPRINT_C2)
-#define nh5eget_major_c H5_FC_FUNC_(h5eget_major_c, H5EGET_MAJOR_C)
-#define nh5eget_minor_c H5_FC_FUNC_(h5eget_minor_c, H5EGET_MINOR_C)
-#define nh5eset_auto_c H5_FC_FUNC_(h5eset_auto_c, H5ESET_AUTO_C)
-#define nprocess_buffer H5_FC_FUNC_(process_buffer, PROCESS_BUFFER)
-
-H5_FCDLL int_f nh5eclear_c(hid_t_f *estack_id);
-H5_FCDLL int_f nh5eprint_c1(_fcd name, int_f* namelen);
-H5_FCDLL int_f nh5eprint_c2(void);
-H5_FCDLL int_f nh5eget_major_c(int_f* error_no, _fcd name, size_t_f* namelen);
-H5_FCDLL int_f nh5eget_minor_c(int_f* error_no, _fcd name, size_t_f* namelen);
-H5_FCDLL int_f nh5eset_auto_c(int_f* printflag);
+H5_FCDLL int_f h5eclear_c(hid_t_f *estack_id);
+H5_FCDLL int_f h5eprint_c1(_fcd name, int_f* namelen);
+H5_FCDLL int_f h5eprint_c2(void);
+H5_FCDLL int_f h5eget_major_c(int_f* error_no, _fcd name, size_t_f* namelen);
+H5_FCDLL int_f h5eget_minor_c(int_f* error_no, _fcd name, size_t_f* namelen);
H5_FCDLL int_f h5eset_auto2_c(int_f* printflag, hid_t_f *estack_id, H5E_auto2_t func, void *client_data);
-H5_FCDLL int_f nprocess_buffer(hid_t_f *estack_id,void **buffer);
/*
* Functions from H5f.c
*/
-#define nh5open_c H5_FC_FUNC_(h5open_c, H5OPEN_C)
-#define nh5close_c H5_FC_FUNC_(h5close_c, H5CLOSE_C)
-#define nh5init_types_c H5_FC_FUNC_(h5init_types_c, H5INIT_TYPES_C)
-#define nh5close_types_c H5_FC_FUNC_(h5close_types_c, H5CLOSE_TYPES_C)
-#define nh5init_flags_c H5_FC_FUNC_(h5init_flags_c, H5INIT_FLAGS_C)
-#define nh5init1_flags_c H5_FC_FUNC_(h5init1_flags_c, H5INIT1_FLAGS_C)
-#define nh5get_libversion_c H5_FC_FUNC_(h5get_libversion_c, H5GET_LIBVERSION_C)
-#define nh5check_version_c H5_FC_FUNC_(h5check_version_c, H5CHECK_VERSION_C)
-#define nh5garbage_collect_c H5_FC_FUNC_(h5garbage_collect_c, H5GARBAGE_COLLECT_C)
-#define nh5dont_atexit_c H5_FC_FUNC_(h5dont_atexit_c, H5DONT_ATEXIT_C)
-
-
-H5_FCDLL int_f nh5open_c(void);
-H5_FCDLL int_f nh5close_c(void);
-H5_FCDLL int_f nh5init_types_c(hid_t_f *types, hid_t_f *floatingtypes, hid_t_f *integertypes);
-H5_FCDLL int_f nh5close_types_c(hid_t_f *types, int_f *lentypes, hid_t_f *floatingtypes, int_f *floatinglen, hid_t_f *integertypes, int_f *integerlen);
-H5_FCDLL int_f nh5init_flags_c(int_f *h5d_flags, size_t_f *h5d_size_flags, int_f *h5e_flags, hid_t_f *h5e_hid_flags, int_f *h5f_flags,
+H5_FCDLL int_f h5open_c(void);
+H5_FCDLL int_f h5close_c(void);
+H5_FCDLL int_f h5init_types_c(hid_t_f *types, hid_t_f *floatingtypes, hid_t_f *integertypes);
+H5_FCDLL int_f h5close_types_c(hid_t_f *types, int_f *lentypes, hid_t_f *floatingtypes, int_f *floatinglen, hid_t_f *integertypes, int_f *integerlen);
+H5_FCDLL int_f h5init_flags_c(int_f *h5d_flags, size_t_f *h5d_size_flags, int_f *h5e_flags, hid_t_f *h5e_hid_flags, int_f *h5f_flags,
int_f *h5fd_flags, hid_t_f *h5fd_hid_flags,
int_f *h5g_flags, int_f *h5i_flags, int_f *h5l_flags, int_f *h5o_flags,
hid_t_f *h5p_flags, int_f *h5p_flags_int, int_f *h5r_flags, int_f *h5s_flags,
hsize_t_f *h5s_hsize_flags, int_f *h5t_flags, int_f *h5z_flags, int_f *h5_generic_flags);
-H5_FCDLL int_f nh5init1_flags_c(int_f *h5lib_flags);
-H5_FCDLL int_f nh5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum);
-H5_FCDLL int_f nh5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum);
-H5_FCDLL int_f nh5garbage_collect_c(void);
-H5_FCDLL int_f nh5dont_atexit_c(void);
+H5_FCDLL int_f h5init1_flags_c(int_f *h5lib_flags);
+H5_FCDLL int_f h5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum);
+H5_FCDLL int_f h5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum);
+H5_FCDLL int_f h5garbage_collect_c(void);
+H5_FCDLL int_f h5dont_atexit_c(void);
/*
* Functions from H5Zf.c
*/
-#define nh5zunregister_c H5_FC_FUNC_(h5zunregister_c, H5ZUNREGISTER_C)
-#define nh5zfilter_avail_c H5_FC_FUNC_(h5zfilter_avail_c, H5ZFILTER_AVAIL_C)
-#define nh5zget_filter_info_c H5_FC_FUNC_(h5zget_filter_info_c, H5ZGET_FILTER_INFO_C)
-
-
-H5_FCDLL int_f nh5zunregister_c (int_f *filter);
-H5_FCDLL int_f nh5zfilter_avail_c (int_f *filter, int_f *flag);
-H5_FCDLL int_f nh5zget_filter_info_c (int_f *filter, int_f *flag);
-
+H5_FCDLL int_f h5zunregister_c(int_f *filter);
+H5_FCDLL int_f h5zfilter_avail_c(int_f *filter, int_f *flag);
+H5_FCDLL int_f h5zget_filter_info_c(int_f *filter, int_f *flag);
/*
* Functions from H5Lf.c
*/
-#define nh5lcopy_c H5_FC_FUNC_(h5lcopy_c, H5LCOPY_C)
-#define nh5lcreate_external_c H5_FC_FUNC_(h5lcreate_external_c, H5LCREATE_EXTERNAL_C)
-#define nh5lcreate_hard_c H5_FC_FUNC_(h5lcreate_hard_c, H5LCREATE_HARD_C)
-#define nh5lcreate_soft_c H5_FC_FUNC_(h5lcreate_soft_c, H5LCREATE_SOFT_C)
-#define nh5ldelete_c H5_FC_FUNC_(h5ldelete_c, H5LDELETE_C)
-#define nh5ldelete_by_idx_c H5_FC_FUNC_(h5ldelete_by_idx_c, H5LDELETE_BY_IDX_C)
-#define nh5lexists_c H5_FC_FUNC_(h5lexists_c, H5LEXISTS_C)
-#define nh5lget_info_c H5_FC_FUNC_(h5lget_info_c, H5LGET_INFO_C)
-#define nh5lget_info_by_idx_c H5_FC_FUNC_(h5lget_info_by_idx_c, H5LGET_INFO_BY_IDX_C)
-#define nh5lis_registered_c H5_FC_FUNC_(h5lis_registered_c, H5LIS_REGISTERED_C)
-#define nh5lmove_c H5_FC_FUNC_(h5lmove_c, H5LMOVE_C)
-#define nh5lget_name_by_idx_c H5_FC_FUNC_(h5lget_name_by_idx_c, H5LGET_NAME_BY_IDX_C)
-#define nh5lget_val_c H5_FC_FUNC_(h5lget_val_c, H5LGET_VAL_C)
-H5_FCDLL int_f nh5lcopy_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
+H5_FCDLL int_f h5lcopy_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
_fcd dest_name, size_t_f *dest_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lcreate_external_c(_fcd file_name, size_t_f *file_namelen, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5lcreate_external_c(_fcd file_name, size_t_f *file_namelen, _fcd obj_name, size_t_f *obj_namelen,
hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lcreate_hard_c(hid_t_f *obj_loc_id, _fcd obj_name, size_t_f *obj_namelen,
+H5_FCDLL int_f h5lcreate_hard_c(hid_t_f *obj_loc_id, _fcd obj_name, size_t_f *obj_namelen,
hid_t_f *link_loc_id,
_fcd link_name, size_t_f *link_namelen,
hid_t_f *lcpl_id, hid_t_f *lapl_id );
-H5_FCDLL int_f nh5lcreate_soft_c(_fcd target_path, size_t_f *target_path_len,
+H5_FCDLL int_f h5lcreate_soft_c(_fcd target_path, size_t_f *target_path_len,
hid_t_f *link_loc_id,
_fcd link_name, size_t_f *link_name_len,
hid_t_f *lcpl_id, hid_t_f *lapl_id );
-H5_FCDLL int_f nh5ldelete_c( hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id );
-H5_FCDLL int_f nh5ldelete_by_idx_c (hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+H5_FCDLL int_f h5ldelete_c( hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id );
+H5_FCDLL int_f h5ldelete_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lexists_c (hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, int_f *link_exists);
-H5_FCDLL int_f nh5lget_info_c (hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
+H5_FCDLL int_f h5lexists_c(hid_t_f *loc_id, _fcd name, size_t_f *namelen, hid_t_f *lapl_id, int_f *link_exists);
+H5_FCDLL int_f h5lget_info_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
int_f *cset, int_f *corder, int_f *corder_valid, int_f *link_type,
haddr_t_f *address, size_t_f *val_size,
hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+H5_FCDLL int_f h5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n,
int_f *link_type, int_f *corder_valid, int_f *corder, int_f *cset, haddr_t_f *address, size_t_f *val_size, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lis_registered_c(int_f *link_cls_id);
-H5_FCDLL int_f nh5lmove_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
+H5_FCDLL int_f h5lis_registered_c(int_f *link_cls_id);
+H5_FCDLL int_f h5lmove_c(hid_t_f *src_loc_id, _fcd src_name, size_t_f *src_namelen, hid_t_f *dest_loc_id,
_fcd dest_name, size_t_f *dest_namelen, hid_t_f *lcpl_id, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lget_name_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
+H5_FCDLL int_f h5lget_name_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n,
size_t_f *size, _fcd name, hid_t_f *lapl_id);
-H5_FCDLL int_f nh5lget_val_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, size_t_f *size,
+H5_FCDLL int_f h5lget_val_c(hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen, size_t_f *size,
void *linkval_buff, hid_t_f *lapl_id) ;
H5_FCDLL int_f h5literate_c(hid_t_f *group_id, int_f *index_type, int_f *order, hsize_t_f *idx, H5L_iterate_t op, void *op_data );
diff --git a/fortran/src/H5fort_type_defines.h.in b/fortran/src/H5fort_type_defines.h.in
new file mode 100644
index 0000000..0e14e86
--- /dev/null
+++ b/fortran/src/H5fort_type_defines.h.in
@@ -0,0 +1,16 @@
+/* If you are reading this file and it has a '.h' suffix, it was automatically
+ * generated from the '.in' version. Make changes there.
+ */
+#define H5_FORTRAN_NATIVE_INTEGER_KIND @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+#define H5_FORTRAN_NATIVE_INTEGER_SIZEOF @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+#define H5_FORTRAN_NATIVE_REAL_KIND @PAC_FORTRAN_NATIVE_REAL_KIND@
+#define H5_FORTRAN_NATIVE_REAL_SIZEOF @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
+#define H5_FORTRAN_NATIVE_DOUBLE_KIND @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+#define H5_FORTRAN_NATIVE_DOUBLE_SIZEOF @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+#define H5_FORTRAN_INTEGER_KINDS @PAC_FC_ALL_INTEGER_KINDS@
+#define H5_FORTRAN_INTEGER_KINDS_SIZEOF @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+#define H5_FORTRAN_REAL_KINDS @PAC_FC_ALL_REAL_KINDS@
+#define H5_FORTRAN_REAL_KINDS_SIZEOF @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+#define H5_HAVE_Fortran_INTEGER_SIZEOF_16 @HAVE_Fortran_INTEGER_SIZEOF_16@
+#define H5_FORTRAN_HAVE_C_LONG_DOUBLE @FORTRAN_HAVE_C_LONG_DOUBLE@
+#define H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
diff --git a/fortran/src/H5match_types.c b/fortran/src/H5match_types.c
index c4b7f73..37509a0 100644
--- a/fortran/src/H5match_types.c
+++ b/fortran/src/H5match_types.c
@@ -9,7 +9,7 @@
* PURPOSE
* C Program to match C types to Fortran types.
* Creates the files H5f90i_gen.h for the C code and
- * H5fortran_types.f90 for the Fortran code.
+ * H5fortran_types.F90 for the Fortran code.
*
* COPYRIGHT
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -31,6 +31,7 @@
*/
#include <stdio.h>
+#include <string.h>
#include <assert.h>
#include "H5public.h"
@@ -45,12 +46,13 @@ FILE * c_header;
FILE * fort_header;
#define CFILE "H5f90i_gen.h"
-#define FFILE "H5fortran_types.f90"
+#define FFILE "H5fortran_types.F90"
/* Prototypes for the write routines */
-void writeTypedef(const char* c_typedef, const char* c_type, unsigned int size);
-void writeTypedefDefault(const char* c_typedef, unsigned int size);
-void writeToFiles(const char* c_typedef, const char* fortran_type, const char* c_type, int size, unsigned int kind);
+void writeTypedef(const char* c_typedef, const char* c_type, int size);
+void writeTypedefDefault(const char* c_typedef, int size);
+void writeToFiles(const char* c_typedef, const char* fortran_type, const char* c_type, int size, int kind);
+void writeToFilesChr(const char* c_typedef, const char* fortran_type, const char* c_type, int size, char* kind);
static void
initCfile(void)
@@ -100,6 +102,7 @@ initFfile(void)
!\n!\n\
! This file is automatically generated and contains HDF5 Fortran90 type definitions.\n!\n\
MODULE H5FORTRAN_TYPES\n\
+ USE ISO_C_BINDING\n\
!\n\
! HDF5 integers\n\
!\n");
@@ -119,253 +122,198 @@ endFfile(void)
}
/* Define a c_int_x type in the C header */
-void writeTypedef(const char* c_typedef, const char* c_type, unsigned int size)
+void writeTypedef(const char* c_typedef, const char* c_type, int size)
{
fprintf(c_header, "#define c_%s_%u %s\n", c_typedef, size, c_type);
}
/* Call this function if there is no matching C type for sizes > 1 */
-void writeTypedefDefault(const char* c_typedef, unsigned int size)
+void writeTypedefDefault(const char* c_typedef, int size)
{
assert(size %2 == 0);
- fprintf(c_header, "typedef struct {c_%s_%u a; c_%s_%u b;} c_%s_%u\n", c_typedef, size / 2, c_typedef, size / 2, c_typedef, size);
+ fprintf(c_header, "typedef struct {c_%s_%u a; c_%s_%u b;} c_%s_%u;\n", c_typedef, size / 2, c_typedef, size / 2, c_typedef, size);
}
/* Create matching Fortran and C types by writing to both files */
-void writeToFiles(const char* c_typedef, const char* fortran_type, const char* c_type, int size, unsigned int kind)
+void writeToFiles(const char* c_typedef, const char* fortran_type, const char* c_type, int size, int kind)
{
fprintf(fort_header, " INTEGER, PARAMETER :: %s = %u\n", fortran_type, kind);
fprintf(c_header, "typedef c_%s_%d %s;\n", c_typedef, size, c_type);
}
-
+void writeToFilesChr(const char* c_typedef, const char* fortran_type, const char* c_type, int size, char* kind)
+{
+ fprintf(fort_header, " INTEGER, PARAMETER :: %s = %s\n", fortran_type, kind);
+ fprintf(c_header, "typedef c_%s_%d %s;\n", c_typedef, size, c_type);
+}
int main(void)
{
- int FoundIntSize[4];
- unsigned FoundIntSizeKind[4];
- int FoundRealSize[3];
- unsigned FoundRealSizeKind[3];
- int i,j,flag;
- char chrA[20],chrB[20];
- int H5_C_HAS_REAL_NATIVE_16;
+ int FoundIntSize[10];
+ int FoundIntSizeKind[10];
+ int FoundRealSize[10];
+ int FoundRealSizeKind[10];
+ int i, j,flag;
+ char chrA[32],chrB[32];
+
+ int IntKinds[] = H5_FORTRAN_INTEGER_KINDS;
+ int IntKinds_SizeOf[] = H5_FORTRAN_INTEGER_KINDS_SIZEOF;
+ int RealKinds[] = H5_FORTRAN_REAL_KINDS;
+ int RealKinds_SizeOf[] = H5_FORTRAN_REAL_KINDS_SIZEOF;
+ char Real_C_TYPES[10][32];
+
+ int H5_FORTRAN_NUM_INTEGER_KINDS;
+ int H5_FORTRAN_NUM_REAL_KINDS;
+ int found_long_double = 0;
/* Open target files */
c_header = fopen(CFILE, "w");
fort_header = fopen(FFILE, "w");
- /* Default is C has 16 byte float */
- H5_C_HAS_REAL_NATIVE_16 = 1;
-
/* Write copyright, boilerplate to both files */
initCfile();
initFfile();
- /* First, define c_int_x */
-
-#if defined H5_FORTRAN_HAS_INTEGER_1_KIND
- if(sizeof(long long) == 1)
- writeTypedef("int", "long long", 1);
- else if(sizeof(long) == 1)
- writeTypedef("int", "long", 1);
- else if(sizeof(int) == 1)
- writeTypedef("int", "int", 1);
- else if(sizeof(short) == 1)
- writeTypedef("int", "short", 1);
- else
- writeTypedef("int", "char", 1);
- /* Actually, char is not necessarily one byte.
- * But if char isn't, then nothing is, so this
- * is as close as we can get. */
- if(sizeof(size_t) == 1)
- writeTypedef("size_t", "size_t", 1);
- if(sizeof(hsize_t) == 1)
- writeTypedef("hsize_t", "hsize_t", 1);
-#endif /*H5_FORTRAN_HAS_INTEGER_1_KIND*/
-
-#if defined H5_FORTRAN_HAS_INTEGER_2_KIND
- if(sizeof(long long) == 2)
- writeTypedef("int", "long long", 2);
- else if(sizeof(long) == 2)
- writeTypedef("int", "long", 2);
- else if(sizeof(int) == 2)
- writeTypedef("int", "int", 2);
- else if(sizeof(short) == 2)
- writeTypedef("int", "short", 2);
- else
- writeTypedefDefault("int",2);
-
- if(sizeof(size_t) == 2)
- writeTypedef("size_t", "size_t", 2);
- if(sizeof(hsize_t) == 2)
- writeTypedef("hsize_t", "hsize_t", 2);
-#endif /*H5_FORTRAN_HAS_INTEGER_2_KIND*/
-
-#if defined H5_FORTRAN_HAS_INTEGER_4_KIND
- if(sizeof(long long) == 4)
- writeTypedef("int", "long long", 4);
- else if(sizeof(long) == 4)
- writeTypedef("int", "long", 4);
- else if(sizeof(int) == 4)
- writeTypedef("int", "int", 4);
- else if(sizeof(short) == 4)
- writeTypedef("int", "short", 4);
- else
- writeTypedefDefault("int",4);
-
- if(sizeof(size_t) == 4)
- writeTypedef("size_t", "size_t", 4);
- if(sizeof(hsize_t) == 4)
- writeTypedef("hsize_t", "hsize_t", 4);
-
-#endif /*H5_FORTRAN_HAS_INTEGER_4_KIND*/
-
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND
- if(sizeof(long long) == 8)
- writeTypedef("int", "long long", 8);
- else if(sizeof(long) == 8)
- writeTypedef("int", "long", 8);
- else if(sizeof(int) == 8)
- writeTypedef("int", "int", 8);
- else if(sizeof(short) == 8)
- writeTypedef("int", "short", 8);
- else
- writeTypedefDefault("int",8);
-
- if(sizeof(size_t) == 8)
- writeTypedef("size_t", "size_t", 8);
- if(sizeof(hsize_t) == 8)
- writeTypedef("hsize_t", "hsize_t", 8);
-
-#endif /*H5_FORTRAN_HAS_INTEGER_8_KIND*/
-
- /* Define c_float_x */
-
-#if defined H5_FORTRAN_HAS_REAL_NATIVE_4_KIND || defined H5_FORTRAN_HAS_REAL_4_KIND
- if(sizeof(long double) == 4)
- writeTypedef("float", "long double", 4);
- else if(sizeof(double) == 4)
- writeTypedef("float", "double", 4);
- else if(sizeof(float) == 4)
- writeTypedef("float", "float", 4);
- else
- { printf("Fortran REAL is 4 bytes, no corresponding C floating type\n");
- printf("Quitting....\n");
- return -1;
- }
-#endif /*H5_FORTRAN_HAS_REAL_NATIVE_4_KIND*/
-
-#if defined H5_FORTRAN_HAS_REAL_NATIVE_8_KIND || defined H5_FORTRAN_HAS_REAL_8_KIND
- if(sizeof(long double) == 8)
- writeTypedef("float", "long double", 8);
- else if(sizeof(double) == 8)
- writeTypedef("float", "double", 8);
- else if(sizeof(float) == 8)
- writeTypedef("float", "float", 8);
- else
- { printf("Fortran REAL is 16 bytes, no corresponding C floating type\n");
- printf("Quitting....\n");
- return -1;
- }
-#endif /*H5_FORTRAN_HAS_REAL_NATIVE_8_KIND*/
-
-#if defined H5_FORTRAN_HAS_REAL_NATIVE_16_KIND || defined H5_FORTRAN_HAS_REAL_16_KIND
- if(sizeof(long double) == 16)
- writeTypedef("float", "long double", 16);
- else if(sizeof(double) == 16)
- writeTypedef("float", "double", 16);
- else if(sizeof(float) == 16)
- writeTypedef("float", "float", 16);
- else /*C has no 16 byte float so disable it in Fortran*/
- { printf("warning: Fortran REAL is 16 bytes, no corresponding C floating type\n");
- printf(" Disabling Fortran 16 byte REALs\n");
- H5_C_HAS_REAL_NATIVE_16 = 0;
- }
-#endif /*H5_FORTRAN_HAS_REAL_NATIVE_16_KIND*/
+ /* (a) define c_int_x */
+
+ H5_FORTRAN_NUM_INTEGER_KINDS = (int)(sizeof(IntKinds)/sizeof(IntKinds[0]));
+ H5_FORTRAN_NUM_REAL_KINDS = (int)(sizeof(RealKinds)/sizeof(RealKinds[0]));
+
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(sizeof(long long) == IntKinds_SizeOf[i])
+ writeTypedef("int", "long long", IntKinds[i]);
+ else if(sizeof(long) == IntKinds[i])
+ writeTypedef("int", "long", IntKinds[i]);
+ else if(sizeof(int) == IntKinds_SizeOf[i])
+ writeTypedef("int", "int", IntKinds[i]);
+ else if(sizeof(short) == IntKinds_SizeOf[i])
+ writeTypedef("int", "short", IntKinds[i]);
+ else
+ if(IntKinds_SizeOf[i] == 1) {
+ writeTypedef("int", "char", IntKinds[i]);
+ /* Actually, char is not necessarily one byte.
+ * But if char isn't, then nothing is, so this
+ * is as close as we can get. */
+ } else {
+ writeTypedefDefault("int",IntKinds[i]);
+ }
+ if(sizeof(size_t) == IntKinds_SizeOf[i])
+ writeTypedef("size_t", "size_t", IntKinds[i]);
+ if(sizeof(hsize_t) == IntKinds_SizeOf[i])
+ writeTypedef("hsize_t", "hsize_t", IntKinds[i]);
+ }
+
+ /* (b) Define c_float_x */
+
+ for(i=0;i< H5_FORTRAN_NUM_REAL_KINDS;i++) {
+ if (sizeof(float) == RealKinds_SizeOf[i]) {
+ writeTypedef("float", "float", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_FLOAT");
+ }
+ else if(sizeof(double) == RealKinds_SizeOf[i]) {
+ writeTypedef("float", "double", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_DOUBLE");
+ }
+#if H5_FORTRAN_HAVE_C_LONG_DOUBLE!=0
+ else if(sizeof(long double) == RealKinds_SizeOf[i] && found_long_double == 0) {
+ writeTypedef("float", "long double", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_LONG_DOUBLE");
+ found_long_double = 1;
+ }
+# ifdef H5_HAVE_FLOAT128
+ /* Don't select a higher precision than Fortran can support */
+ else if(sizeof(__float128) == RealKinds_SizeOf[i] && found_long_double == 1 && H5_PAC_FC_MAX_REAL_PRECISION > 28) {
+ writeTypedef("float", "__float128", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_FLOAT128");
+ }
+# else
+ else if(sizeof(long double) == RealKinds_SizeOf[i] && found_long_double == 1 && H5_PAC_FC_MAX_REAL_PRECISION > 28) {
+ writeTypedef("float", "long double", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_FLOAT128");
+ }
+# endif
+#else /* There is no C_LONG_DOUBLE intrinsic */
+# ifdef H5_HAVE_FLOAT128
+ /* Don't select a higher precision than Fortran can support */
+ else if(sizeof(__float128) == RealKinds_SizeOf[i] ) {
+ writeTypedef("float", "__float128", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_FLOAT128");
+ }
+# else
+ else if(sizeof(long double) == RealKinds_SizeOf[i] ) {
+ writeTypedef("float", "long double", RealKinds[i]);
+ strcpy(Real_C_TYPES[i], "C_FLOAT128");
+ }
+# endif
+#endif
+ else {
+ printf("\n **** HDF5 WARNING ****\n");
+ printf("Fortran REAL(KIND=%d) is %d Bytes, but no corresponding C float type exists of that size\n",RealKinds[i],RealKinds_SizeOf[i]);
+ printf(" !!! Fortran interfaces will not be generated for REAL(KIND=%d) !!!\n\n",RealKinds[i]);
+
+ RealKinds_SizeOf[i] = -1;
+ RealKinds[i] = -1;
+ }
+ }
/* Now begin defining fortran types. */
fprintf(c_header, "\n");
+
/* haddr_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_HADDR_T >= 8
- writeToFiles("int","HADDR_T", "haddr_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_HADDR_T >= 4
- writeToFiles("int","HADDR_T", "haddr_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_HADDR_T >= 2
- writeToFiles("int","HADDR_T", "haddr_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_HADDR_T >= 1
- writeToFiles("int","HADDR_T", "haddr_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#else
- /* Error: couldn't find a size for haddr_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_HADDR_T) {
+ writeToFiles("int","HADDR_T", "haddr_t_f", H5_SIZEOF_HADDR_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for haddr_t */
+ return -1;
+ }
/* hsize_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_HSIZE_T >= 8
- writeToFiles("hsize_t","HSIZE_T", "hsize_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_HSIZE_T >= 4
- writeToFiles("hsize_t","HSIZE_T", "hsize_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_HSIZE_T >= 2
- writeToFiles("hsize_t","HSIZE_T", "hsize_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_HSIZE_T >= 1
- writeToFiles("hsize_t","HSIZE_T", "hsize_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#else
- /* Error: couldn't find a size for hsize_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_HSIZE_T) {
+ writeToFiles("hsize_t","HSIZE_T", "hsize_t_f", H5_SIZEOF_HSIZE_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for hsize_t */
+ return -1;
+ }
/* hssize_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_HSSIZE_T >= 8
- writeToFiles("int","HSSIZE_T", "hssize_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_HSSIZE_T >= 4
- writeToFiles("int","HSSIZE_T", "hssize_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_HSSIZE_T >= 2
- writeToFiles("int","HSSIZE_T", "hssize_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_HSSIZE_T >= 1
- writeToFiles("int","HSSIZE_T", "hssize_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#else
- /* Error: couldn't find a size for hssize_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_HSSIZE_T) {
+ writeToFiles("int","HSSIZE_T", "hssize_t_f", H5_SIZEOF_HSSIZE_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for hssize_t */
+ return -1;
+ }
/* off_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_OFF_T >= 8
- writeToFiles("int","OFF_T", "off_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_OFF_T >= 4
- writeToFiles("int","OFF_T", "off_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_OFF_T >= 2
- writeToFiles("int","OFF_T", "off_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_OFF_T >= 1
- writeToFiles("int","OFF_T", "off_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#else
- /* Error: couldn't find a size for off_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_OFF_T) {
+ writeToFiles("int","OFF_T", "off_t_f", H5_SIZEOF_OFF_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for off_t */
+ return -1;
+ }
/* size_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_SIZE_T >= 8
- writeToFiles("size_t","SIZE_T", "size_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_SIZE_T >= 4
- writeToFiles("size_t","SIZE_T", "size_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_SIZE_T >= 2
- writeToFiles("size_t","SIZE_T", "size_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_SIZE_T >= 1
- writeToFiles("size_t","SIZE_T", "size_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#else
- /* Error: couldn't find a size for size_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_SIZE_T) {
+ writeToFiles("size_t","SIZE_T", "size_t_f", H5_SIZEOF_SIZE_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for size_t */
+ return -1;
+ }
/* int */
-#if defined H5_FORTRAN_HAS_NATIVE_8_KIND
- writeToFiles("int","Fortran_INTEGER", "int_f", 8, H5_FORTRAN_HAS_NATIVE_8_KIND);
-#elif defined H5_FORTRAN_HAS_NATIVE_4_KIND
- writeToFiles("int","Fortran_INTEGER", "int_f", 4, H5_FORTRAN_HAS_NATIVE_4_KIND);
-#elif defined H5_FORTRAN_HAS_NATIVE_2_KIND
- writeToFiles("int","Fortran_INTEGER", "int_f", 2, H5_FORTRAN_HAS_NATIVE_2_KIND);
-#elif defined H5_FORTRAN_HAS_NATIVE_1_KIND
- writeToFiles("int","Fortran_INTEGER", "int_f", 1, H5_FORTRAN_HAS_NATIVE_1_KIND);
-#else
- /* Error: couldn't find a size for int */
- return -1;
-#endif
+ writeToFiles("int","Fortran_INTEGER", "int_f", H5_FORTRAN_NATIVE_INTEGER_SIZEOF, H5_FORTRAN_NATIVE_INTEGER_KIND);
/* int_1, int_2, int_4, int_8 */
@@ -374,29 +322,20 @@ int main(void)
/* it a value of the next larger one, but if the next */
/* higher one is not available we assigned it the next lowest */
- FoundIntSize[0] = -1;
- FoundIntSize[1] = -2;
- FoundIntSize[2] = -4;
- FoundIntSize[3] = -8;
-#if defined H5_FORTRAN_HAS_INTEGER_1_KIND
- FoundIntSize[0] = 1;
- FoundIntSizeKind[0] = H5_FORTRAN_HAS_INTEGER_1_KIND;
-#endif
-#if defined H5_FORTRAN_HAS_INTEGER_2_KIND
- FoundIntSize[1] = 2;
- FoundIntSizeKind[1] = H5_FORTRAN_HAS_INTEGER_2_KIND;
-#endif
-#if defined H5_FORTRAN_HAS_INTEGER_4_KIND
- FoundIntSize[2] = 4;
- FoundIntSizeKind[2] = H5_FORTRAN_HAS_INTEGER_4_KIND;
-#endif
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND
- FoundIntSize[3] = 8;
- FoundIntSizeKind[3] = H5_FORTRAN_HAS_INTEGER_8_KIND ;
-#endif
+ FoundIntSize[0] = -1;
+ FoundIntSize[1] = -1;
+ FoundIntSize[2] = -1;
+ FoundIntSize[3] = -1;
+ FoundIntSize[4] = -1;
+
+ for(i=0;i<H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ FoundIntSize[i] = (int)IntKinds[i];
+ FoundIntSizeKind[i] = (int)IntKinds_SizeOf[i];
+/* writeToFiles("int",chrA, chrB, FoundIntSize[i], FoundIntSizeKind[i]); */
+ }
- for(i=0;i<4;i++) {
+ for(i=0;i<H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
if( FoundIntSize[i] > 0) /* Found the integer type */
{
sprintf(chrA, "Fortran_INTEGER_%d", FoundIntSize[i]);
@@ -443,129 +382,77 @@ int main(void)
/* it a value of the next larger one, but if the next */
/* higher one is not available we assigned it the next lowest */
- FoundRealSize[0] = -4;
- FoundRealSize[1] = -8;
- FoundRealSize[2] = -16;
-
-#if defined H5_FORTRAN_HAS_REAL_4_KIND
- FoundRealSize[0] = 4;
- FoundRealSizeKind[0] = H5_FORTRAN_HAS_REAL_4_KIND;
-#endif
-#if defined H5_FORTRAN_HAS_REAL_8_KIND
- FoundRealSize[1] = 8;
- FoundRealSizeKind[1] = H5_FORTRAN_HAS_REAL_8_KIND;
-#endif
-
-#if defined H5_FORTRAN_HAS_REAL_16_KIND
- if(H5_C_HAS_REAL_NATIVE_16 != 0) {
- FoundRealSize[2] = 16;
- FoundRealSizeKind[2] = H5_FORTRAN_HAS_REAL_16_KIND;
- }
-#endif
-
- for(i=0;i<3;i++) {
- if( FoundRealSize[i] > 0) /* Found the real type */
- {
- sprintf(chrA, "Fortran_REAL_%d", FoundRealSize[i]);
- sprintf(chrB, "real_%d_f", FoundRealSize[i]);
- writeToFiles("float",chrA, chrB, FoundRealSize[i], FoundRealSizeKind[i]);
- }
- else /* Did not find the real type */
- {
- flag = 0; /* flag indicating if found the next highest */
- for(j=i+1;j<3;j++) /* search for next highest */
- {
- if( FoundRealSize[j] > 0) /* Found the next highest */
- {
- sprintf(chrA, "Fortran_REAL_%d", (-1)*FoundRealSize[i]);
- sprintf(chrB, "real_%d_f", (-1)*FoundRealSize[i]);
- if(FoundRealSize[j]>4) {
- writeToFiles("float",chrA, chrB, FoundRealSize[j], FoundRealSizeKind[j]);
- flag = 1;
- }
- /* else { */
-/* writeToFiles("float", chrA, chrB, FoundRealSize[j]); */
-/* } */
- flag = 1;
- break;
- }
- }
- if(flag == 0) /* No higher one found, so find next lowest */
- {
- for(j=1;j>-1;j--) /* Search for next lowest */
- {
- if( FoundRealSize[j] > 0) /* Found the next lowest */
- {
- sprintf(chrA, "Fortran_REAL_%d", (-1)*FoundRealSize[i]);
- sprintf(chrB, "real_%d_f", (-1)*FoundRealSize[i]);
- if(FoundRealSize[j]>4)
- writeToFiles("float",chrA, chrB, FoundRealSize[j], FoundRealSizeKind[j]);
- /* else { */
-/* writeToFiles("float", chrA, chrB, FoundRealSize[j]); */
-/* } */
- flag = 1;
- break;
- }
- }
- }
- if(flag == 0) /* No higher or lower one found, indicating an error */
- return -1;
- }
+ FoundRealSize[0] = -1;
+ FoundRealSize[1] = -1;
+ FoundRealSize[2] = -1;
+ FoundRealSize[3] = -1;
+ FoundRealSize[4] = -1;
+
+ for(i=0;i<H5_FORTRAN_NUM_REAL_KINDS;i++) {
+ if (RealKinds[i] > 0) {
+ FoundRealSize[i] = (int)RealKinds[i];
+ FoundRealSizeKind[i] = (int)RealKinds_SizeOf[i];
+ sprintf(chrA, "Fortran_REAL_%s", Real_C_TYPES[i]);
+ sprintf(chrB, "real_%s_f", Real_C_TYPES[i]);
+ writeToFiles("float",chrA, chrB, RealKinds[i], RealKinds_SizeOf[i]);
}
+ }
/* hid_t */
-#if defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_HID_T >= 8
- writeToFiles("int","HID_T", "hid_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_4_KIND && H5_SIZEOF_HID_T >= 4
- writeToFiles("int","HID_T", "hid_t_f", 4, H5_FORTRAN_HAS_INTEGER_4_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_2_KIND && H5_SIZEOF_HID_T >= 2
- writeToFiles("int","HID_T", "hid_t_f", 2, H5_FORTRAN_HAS_INTEGER_2_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_1_KIND && H5_SIZEOF_HID_T >= 1
- writeToFiles("int","HID_T", "hid_t_f", 1, H5_FORTRAN_HAS_INTEGER_1_KIND);
-#elif defined H5_FORTRAN_HAS_INTEGER_8_KIND && H5_SIZEOF_HID_T >= 4
- writeToFiles("int","HID_T", "hid_t_f", 8, H5_FORTRAN_HAS_INTEGER_8_KIND);
-#else
- /* Error: couldn't find a size for hid_t */
- return -1;
-#endif
+ for(i=0;i< H5_FORTRAN_NUM_INTEGER_KINDS;i++) {
+ if(IntKinds_SizeOf[i] == H5_SIZEOF_HID_T) {
+ writeToFiles("int","HID_T", "hid_t_f", H5_SIZEOF_HID_T, IntKinds[i]);
+ break;
+ }
+ if(i == (H5_FORTRAN_NUM_INTEGER_KINDS-1) )
+ /* Error: couldn't find a size for hid_t */
+ return -1;
+ }
/* real_f */
-#if defined H5_FORTRAN_HAS_REAL_NATIVE_16_KIND
- if(H5_C_HAS_REAL_NATIVE_16 != 0) {
- writeToFiles("float","Fortran_REAL", "real_f", 16, H5_FORTRAN_HAS_REAL_NATIVE_16_KIND);
+ if(H5_FORTRAN_NATIVE_REAL_SIZEOF == sizeof(long double))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_LONG_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_REAL_SIZEOF == sizeof(double))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_REAL_SIZEOF == sizeof(float))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_FLOAT");
+ else {
+ /* No exact match, choose the next highest */
+ if(H5_FORTRAN_NATIVE_REAL_SIZEOF > sizeof(long double))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_LONG_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_REAL_SIZEOF > sizeof(double))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_REAL_SIZEOF > sizeof(float))
+ writeToFilesChr("float","Fortran_REAL", "real_f", H5_FORTRAN_NATIVE_REAL_KIND, "C_FLOAT");
+ else {
+ /* Error: couldn't find a size for real_f */
+ printf("Error: couldn't find a size for real_f \n");
+ return -1;
}
-#elif defined H5_FORTRAN_HAS_REAL_NATIVE_8_KIND
- writeToFiles("float", "Fortran_REAL", "real_f", 8, H5_FORTRAN_HAS_REAL_NATIVE_8_KIND);
-#elif defined H5_FORTRAN_HAS_REAL_NATIVE_4_KIND
- writeToFiles("float", "Fortran_REAL", "real_f", 4, H5_FORTRAN_HAS_REAL_NATIVE_4_KIND);
-#else
- /* Error: couldn't find a size for real_f */
- return -1;
-#endif
+ }
/* double_f */
-#if defined H5_FORTRAN_HAS_DOUBLE_NATIVE_16_KIND
- if(H5_C_HAS_REAL_NATIVE_16 != 0) { /* Check if C has 16 byte floats */
- writeToFiles("float", "Fortran_DOUBLE", "double_f", 16, H5_FORTRAN_HAS_DOUBLE_NATIVE_16_KIND);
- } else {
-#if defined H5_FORTRAN_HAS_REAL_NATIVE_8_KIND /* Fall back to 8 byte floats */
- writeToFiles("float", "Fortran_DOUBLE", "double_f", 8, H5_FORTRAN_HAS_REAL_NATIVE_8_KIND);
- }
-#elif defined H5_FORTRAN_HAS_REAL_NATIVE_4_KIND /* Fall back to 4 byte floats */
- writeToFiles("float", "Fortran_DOUBLE", "double_f", 4, H5_FORTRAN_HAS_REAL_NATIVE_4_KIND);
+ if(H5_FORTRAN_NATIVE_DOUBLE_SIZEOF == sizeof(long double))
+ writeToFilesChr("float","Fortran_DOUBLE", "double_f", H5_FORTRAN_NATIVE_DOUBLE_KIND, "C_LONG_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_DOUBLE_SIZEOF == sizeof(double))
+ writeToFilesChr("float","Fortran_DOUBLE", "double_f", H5_FORTRAN_NATIVE_DOUBLE_KIND, "C_DOUBLE");
+ else if(H5_FORTRAN_NATIVE_DOUBLE_SIZEOF == sizeof(float))
+ writeToFilesChr("float","Fortran_DOUBLE", "double_f", H5_FORTRAN_NATIVE_DOUBLE_KIND, "C_FLOAT");
+#ifdef H5_HAVE_FLOAT128
+ /* Don't select a higher precision than Fortran can support */
+ else if(sizeof(__float128) == H5_FORTRAN_NATIVE_DOUBLE_SIZEOF && H5_PAC_FC_MAX_REAL_PRECISION > 28) {
+ writeToFilesChr("float","Fortran_DOUBLE", "double_f", H5_FORTRAN_NATIVE_DOUBLE_KIND, "C_FLOAT128");
}
#else
- /* Error: couldn't find a size for double_f when fortran has 16 byte reals */
- return -1;
+ else if(sizeof(long double) == H5_FORTRAN_NATIVE_DOUBLE_SIZEOF && H5_PAC_FC_MAX_REAL_PRECISION > 28) {
+ writeToFilesChr("float","Fortran_DOUBLE", "double_f", H5_FORTRAN_NATIVE_DOUBLE_KIND, "C_FLOAT128");
}
#endif
-
-#elif defined H5_FORTRAN_HAS_DOUBLE_NATIVE_8_KIND
- writeToFiles("float", "Fortran_DOUBLE", "double_f", 8, H5_FORTRAN_HAS_DOUBLE_NATIVE_8_KIND);
-#else
- /* Error: couldn't find a size for real_f */
+ else {
+ /* Error: couldn't find a size for double_f */
+ printf("Error: couldn't find a size for double_f \n");
return -1;
-#endif
+ }
/* Need the buffer size for the fortran derive type 'hdset_reg_ref_t_f03'
* in order to be interoperable with C's structure, the C buffer size
@@ -574,12 +461,12 @@ int main(void)
fprintf(fort_header, " INTEGER, PARAMETER :: H5R_DSET_REG_REF_BUF_SIZE_F = %u\n", H5_SIZEOF_HADDR_T + 4 );
-
/* Close files */
endCfile();
endFfile();
fclose(c_header);
fclose(fort_header);
+
return 0;
}
diff --git a/fortran/src/H5test_kind.f90 b/fortran/src/H5test_kind.f90
deleted file mode 100644
index 1a1a0ec..0000000
--- a/fortran/src/H5test_kind.f90
+++ /dev/null
@@ -1,269 +0,0 @@
-!****p* Program/H5test_kind
-!
-! NAME
-! Executable: H5test_kind
-!
-! FILE
-! fortran/src/H5test_kind.f90
-!
-! PURPOSE
-! This stand alone program is used at build time to generate the program
-! H5fortran_detect.f90. It cycles through all the available KIND parameters for
-! integers and reals. The appropriate program and subroutines are then generated
-! depending on which of the KIND values are found.
-!
-! NOTES
-! This program is depreciated in favor of H5test_kind_SIZEOF.f90 and is only
-! used when the Fortran intrinsic function SIZEOF is not available. It generates
-! code that does not make use of SIZEOF in H5fortran_detect.f90 which is less
-! portable in comparison to using SIZEOF.
-!
-! The availability of SIZEOF is checked at configure time and the TRUE/FALSE
-! condition is set in the configure variable "FORTRAN_HAVE_SIZEOF".
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! AUTHOR
-! Elena Pourma
-!
-!*****
-
-PROGRAM test_kind
- IMPLICIT NONE
- INTEGER :: i, j, ii, ir, last, ikind_numbers(10), rkind_numbers(10)
- INTEGER :: ji, jr, jd
- last = -1
- ii = 0
- j = SELECTED_INT_KIND(18)
- DO i = 1,100
- j = SELECTED_INT_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ii = ii + 1
- ikind_numbers(ii) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
- last = -1
- ir = 0
- DO i = 1,100
- j = SELECTED_REAL_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ir = ir + 1
- rkind_numbers(ir) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
-! Generate program information:
-
-WRITE(*,'(40(A,/))') &
-'!****h* ROBODoc/H5fortran_detect.f90',&
-'!',&
-'! NAME',&
-'! H5fortran_detect',&
-'! ',&
-'! PURPOSE',&
-'! This stand alone program is used at build time to generate the header file',&
-'! H5fort_type_defines.h. The source code itself was automatically generated by',&
-'! the program H5test_kind.f90',&
-'!',&
-'! NOTES',&
-'! This source code does not make use of the Fortran intrinsic function SIZEOF because',&
-'! the availability of the intrinsic function was determined to be not available at',&
-'! configure time',&
-'!',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'! Copyright by The HDF Group. *',&
-'! Copyright by the Board of Trustees of the University of Illinois. *',&
-'! All rights reserved. *',&
-'! *',&
-'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
-'! terms governing use, modification, and redistribution, is contained in *',&
-'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
-'! of the source code distribution tree; Copyright.html can be found at the *',&
-'! root level of an installed copy of the electronic HDF5 document set and *',&
-'! is linked from the top-level documents page. It can also be found at *',&
-'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
-'! access to either file, you may request a copy from help@hdfgroup.org. *',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'!',&
-'! AUTHOR',&
-'! H5test_kind.f90',&
-'!',&
-'!*****'
-
-! Generate a program
-
- WRITE(*,*) "PROGRAM int_kind"
- WRITE(*,*) "WRITE(*,*) "" /*generating header file*/ """
- ji = 0
- WRITE(*, "("" CALL i"", i2.2,""()"")") ji
- jr = 0
- WRITE(*, "("" CALL r"", i2.2,""()"")") jr
- jd = 0
- WRITE(*, "("" CALL d"", i2.2,""()"")") jd
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" CALL i"", i2.2,""()"")") j
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" CALL r"", i2.2,""()"")") j
- ENDDO
- WRITE(*,*) "END PROGRAM int_kind"
- j = 0
- ji = KIND(1)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" INTEGER :: a = 0"
- WRITE(*,*)" INTEGER :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: jchr2"
- WRITE(*,*)" a_size = BIT_SIZE(a)"
- WRITE(*,*)" IF (a_size .EQ. 8) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_1_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" endif"
- WRITE(*,*)" IF (a_size .EQ. 16) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_2_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" endif"
- WRITE(*,*)" IF (a_size .EQ. 32) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_4_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 64) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_8_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 128) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_16_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jr = KIND(1.0)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" REAL :: b(32)"
- WRITE(*,*)" INTEGER :: a(1)"
- WRITE(*,*)" INTEGER :: a_size"
- WRITE(*,*)" INTEGER :: real_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: jchr2"
- WRITE(*,*)" a_size = BIT_SIZE(a(1)) ! Size in bits for integer"
- WRITE(*,*)" real_size = (SIZE(TRANSFER(b,a))*a_size)/SIZE(b)"
- WRITE(*,*)" IF (real_size .EQ. 32) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",jr
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_NATIVE_4_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (real_size .EQ. 64) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",jr
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_NATIVE_8_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (real_size .EQ. 128) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",jr
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_NATIVE_16_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jd = KIND(1.d0)
- WRITE(*, "("" SUBROUTINE d"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" DOUBLE PRECISION :: b=0"
- WRITE(*,*)" INTEGER :: a(8)=0"
- WRITE(*,*)" INTEGER :: a_size"
- WRITE(*,*)" INTEGER :: b_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: jchr2"
- WRITE(*,*)" a_size = BIT_SIZE(a(1))"
- WRITE(*,*)" b_size = SIZE(transfer(b,a))*a_size"
- WRITE(*,*)" IF (b_size .EQ. 64) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",jd
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_DOUBLE_NATIVE_8_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (b_size .EQ. 128) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",jd
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_DOUBLE_NATIVE_16_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" INTEGER(",j,") :: a = 0"
- WRITE(*,*)" INTEGER :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: jchr2"
- WRITE(*,*)" a_size = BIT_SIZE(a)"
- WRITE(*,*)" IF (a_size .EQ. 8) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_1_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 16) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_2_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 32) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_4_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 64) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_8_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (a_size .EQ. 128) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_16_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" RETURN"
- WRITE(*,*)" END SUBROUTINE"
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" REAL(KIND=",j,") :: b(32)"
- WRITE(*,*)" INTEGER :: a(1)"
- WRITE(*,*)" INTEGER :: a_size"
- WRITE(*,*)" INTEGER :: real_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: jchr2"
- WRITE(*,*)" a_size = BIT_SIZE(a(1)) ! Size in bits for integer"
- WRITE(*,*)" real_size = (SIZE(TRANSFER(b,a))*a_size)/SIZE(b)"
- WRITE(*,*)" IF (real_size .EQ. 32) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_4_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" IF (real_size .EQ. 64) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,*)' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_8_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" endif"
- WRITE(*,*)" IF (real_size .EQ. 128) THEN"
- WRITE(*,*)" WRITE(jchr2,'(I2)')",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_16_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" ENDIF"
- WRITE(*,*)" RETURN"
- WRITE(*,*)" END SUBROUTINE"
- ENDDO
-END PROGRAM test_kind
-
-
-
diff --git a/fortran/src/H5test_kind_SIZEOF.f90 b/fortran/src/H5test_kind_SIZEOF.f90
deleted file mode 100644
index 468086a..0000000
--- a/fortran/src/H5test_kind_SIZEOF.f90
+++ /dev/null
@@ -1,228 +0,0 @@
-!****p* Program/H5test_kind_SIZEOF
-!
-! NAME
-! Executable: H5test_kind
-!
-! FILE
-! fortran/src/H5test_kind_SIZEOF.f90
-!
-! PURPOSE
-! This stand alone program is used at build time to generate the program
-! H5fortran_detect.f90. It cycles through all the available KIND parameters for
-! integers and reals. The appropriate program and subroutines are then generated
-! depending on which of the KIND values are found.
-!
-! NOTES
-! This program is used in place of H5test_kind.f90 when the Fortran intrinsic
-! function SIZEOF is available. It generates code that makes use of SIZEOF in
-! H5fortran_detect.f90 which is a portable solution but is not standard
-! compliant. The program H5test_kind_C_SIZEOF uses F2008 standard intrinsic
-! function instead, which is the preferred method.
-!
-! The availability of SIZEOF is checked at configure time and the TRUE/FALSE
-! condition is set in the configure variable "FORTRAN_HAVE_SIZEOF".
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! AUTHOR
-! M. Scot Breitenfeld
-!
-!*****
-
-PROGRAM test_kind
- IMPLICIT NONE
- INTEGER :: i, j, ii, ir, last, ikind_numbers(10), rkind_numbers(10)
- INTEGER :: ji, jr, jd
- last = -1
- ii = 0
-
- ikind_numbers = 0
- rkind_numbers = 0
-
- DO i = 1,100
- j = SELECTED_INT_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ii = ii + 1
- ikind_numbers(ii) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
- last = -1
- ir = 0
- DO i = 1,100
- j = SELECTED_REAL_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ir = ir + 1
- rkind_numbers(ir) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
-! Generate program information:
-
-WRITE(*,'(40(A,/))') &
-'!****h* ROBODoc/H5fortran_detect.f90',&
-'!',&
-'! NAME',&
-'! H5fortran_detect',&
-'! ',&
-'! PURPOSE',&
-'! This stand alone program is used at build time to generate the header file',&
-'! H5fort_type_defines.h. The source code itself was automatically generated by',&
-'! the program H5test_kind_SIZEOF.f90',&
-'!',&
-'! NOTES',&
-'! This source code makes use of the Fortran intrinsic function SIZEOF because',&
-'! the availability of the intrinsic function was determined to be available at',&
-'! configure time',&
-'!',&
-'! COPYRIGHT',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'! Copyright by The HDF Group. *',&
-'! Copyright by the Board of Trustees of the University of Illinois. *',&
-'! All rights reserved. *',&
-'! *',&
-'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
-'! terms governing use, modification, and redistribution, is contained in *',&
-'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
-'! of the source code distribution tree; Copyright.html can be found at the *',&
-'! root level of an installed copy of the electronic HDF5 document set and *',&
-'! is linked from the top-level documents page. It can also be found at *',&
-'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
-'! access to either file, you may request a copy from help@hdfgroup.org. *',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'!',&
-'! AUTHOR',&
-'! H5test_kind_SIZEOF.f90',&
-'!',&
-'!*****'
-
-! GENERATE A PROGRAM
-!
-! (a) Generate the module
-
- WRITE(*,*) "MODULE H5test_kind_SIZEOF_mod"
- WRITE(*,*) "USE ISO_C_BINDING"
- WRITE(*,*) "IMPLICIT NONE"
- WRITE(*,*) "CONTAINS"
- j = 0
- ji = KIND(1)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" INTEGER :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = SIZEOF(a)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jr = 0
- j = KIND(1.0)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") jr
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" REAL :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = SIZEOF(a)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jd = 0
- j = KIND(1.d0)
- WRITE(*, "("" SUBROUTINE d"", i2.2,""()"")") jd
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" DOUBLE PRECISION :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = SIZEOF(a)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_DOUBLE_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,'(A,I0,A)')" INTEGER(KIND=",j,") :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = SIZEOF(a)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,'(A,I0,A)')" REAL(KIND= ",j,") :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = SIZEOF(a)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ", j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- ENDDO
- WRITE(*,*) "END MODULE H5test_kind_SIZEOF_mod"
- WRITE(*,*) ""
-
- ! (b) generate the main program
-
- WRITE(*,*) "PROGRAM H5test_kind_SIZEOF"
- WRITE(*,*) "USE H5test_kind_SIZEOF_mod"
- WRITE(*,*) "WRITE(*,*) "" /*generating header file*/ """
- ji = 0
- WRITE(*, "("" CALL i"", i2.2,""()"")") ji
- jr = 0
- WRITE(*, "("" CALL r"", i2.2,""()"")") jr
- jd = 0
- WRITE(*, "("" CALL d"", i2.2,""()"")") jd
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" CALL i"", i2.2,""()"")") j
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" CALL r"", i2.2,""()"")") j
- ENDDO
- WRITE(*,*) "END PROGRAM H5test_kind_SIZEOF"
-
-END PROGRAM test_kind
-
-
-
diff --git a/fortran/src/H5test_kind_STORAGE_SIZE.f90 b/fortran/src/H5test_kind_STORAGE_SIZE.f90
deleted file mode 100644
index 89c904c..0000000
--- a/fortran/src/H5test_kind_STORAGE_SIZE.f90
+++ /dev/null
@@ -1,230 +0,0 @@
-!****p* Program/H5test_kind_STORAGE_SIZE
-!
-! NAME
-! Executable: H5test_kind
-!
-! FILE
-! fortran/src/H5test_kind_STORAGE_SIZE.f90
-!
-! PURPOSE
-! This stand alone program is used at build time to generate the program
-! H5fortran_detect.f90. It cycles through all the available KIND parameters for
-! integers and reals. The appropriate program and subroutines are then generated
-! depending on which of the KIND values are found.
-!
-! NOTES
-! This program is used in place of H5test_kind.f90 or H5test_kind_SIZEOF.f90 when
-! the Fortran 2008 intrinsic function STORAGE_SIZE is available. It generates code
-! that makes use of STORAGE_SIZE in H5fortran_detect.f90, which will be standard
-! compliant. This program is the preferred method.
-!
-! The availability of STORAGE_SIZE is checked at configure time and the TRUE/FALSE
-! condition is set in the configure variable "FORTRAN_HAVE_STORAGE_SIZE".
-!
-! The use of C_SIZOF(X) is not used since the argument X must be an interoperable
-! data entity.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! AUTHOR
-! M. Scot Breitenfeld
-!
-!*****
-
-PROGRAM test_kind
- IMPLICIT NONE
- INTEGER :: i, j, ii, ir, last, ikind_numbers(10), rkind_numbers(10)
- INTEGER :: ji, jr, jd
- last = -1
- ii = 0
-
- ikind_numbers = 0
- rkind_numbers = 0
-
- DO i = 1,100
- j = SELECTED_INT_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ii = ii + 1
- ikind_numbers(ii) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
- last = -1
- ir = 0
- DO i = 1,100
- j = SELECTED_REAL_KIND(i)
- IF(j .NE. last) THEN
- IF(last .NE. -1) THEN
- ir = ir + 1
- rkind_numbers(ir) = last
- ENDIF
- last = j
- IF(j .EQ. -1) EXIT
- ENDIF
- ENDDO
-
-! Generate program information:
-
-WRITE(*,'(40(A,/))') &
-'!****h* ROBODoc/H5fortran_detect.f90',&
-'!',&
-'! NAME',&
-'! H5fortran_detect',&
-'! ',&
-'! PURPOSE',&
-'! This stand alone program is used at build time to generate the header file',&
-'! H5fort_type_defines.h. The source code itself was automatically generated by',&
-'! the program H5test_kind_STORAGE_SIZE.f90',&
-'!',&
-'! NOTES',&
-'! This source code makes use of the Fortran intrinsic function STORAGE_SIZE because',&
-'! the availability of the intrinsic function was determined to be available at',&
-'! configure time',&
-'!',&
-'! COPYRIGHT',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'! Copyright by The HDF Group. *',&
-'! Copyright by the Board of Trustees of the University of Illinois. *',&
-'! All rights reserved. *',&
-'! *',&
-'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
-'! terms governing use, modification, and redistribution, is contained in *',&
-'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
-'! of the source code distribution tree; Copyright.html can be found at the *',&
-'! root level of an installed copy of the electronic HDF5 document set and *',&
-'! is linked from the top-level documents page. It can also be found at *',&
-'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
-'! access to either file, you may request a copy from help@hdfgroup.org. *',&
-'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
-'!',&
-'! AUTHOR',&
-'! H5test_kind_C_SIZEOF.f90',&
-'!',&
-'!*****'
-
-! GENERATE A PROGRAM
-!
-! (a) Generate the module
-
- WRITE(*,*) "MODULE H5test_kind_STORAGE_SIZE_mod"
- WRITE(*,*) "USE ISO_C_BINDING"
- WRITE(*,*) "IMPLICIT NONE"
- WRITE(*,*) "CONTAINS"
- j = 0
- ji = KIND(1)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" INTEGER :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",ji
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jr = 0
- j = KIND(1.0)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") jr
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" REAL :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- jd = 0
- j = KIND(1.d0)
- WRITE(*, "("" SUBROUTINE d"", i2.2,""()"")") jd
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,*)" DOUBLE PRECISION :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_DOUBLE_NATIVE_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" SUBROUTINE i"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,'(A,I0,A)')" INTEGER(KIND=",j,") :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ",j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_INTEGER_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" SUBROUTINE r"", i2.2,""()"")") j
- WRITE(*,*)" IMPLICIT NONE"
- WRITE(*,'(A,I0,A)')" REAL(KIND= ",j,") :: a"
- WRITE(*,*)" INTEGER(C_SIZE_T) :: a_size"
- WRITE(*,*)" CHARACTER(LEN=2) :: ichr2, jchr2"
- WRITE(*,*)" a_size = STORAGE_SIZE(a, c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)"
- WRITE(*,*)" WRITE(ichr2,'(I2)') a_size"
- WRITE(*,'(A,I0)')" WRITE(jchr2,'(I2)') ", j
- WRITE(*,'(A)')' WRITE(*,*) "#define H5_FORTRAN_HAS_REAL_"'// &
- "//TRIM(ADJUSTL(ichr2))//"//'"_KIND "'//"//ADJUSTL(jchr2)"
- WRITE(*,*)" RETURN"
- WRITE(*,*)"END SUBROUTINE"
- ENDDO
- WRITE(*,*) "END MODULE H5test_kind_STORAGE_SIZE_mod"
- WRITE(*,*) ""
-
- ! (b) generate the main program
-
- WRITE(*,*) "PROGRAM H5test_kind_STORAGE_SIZE"
- WRITE(*,*) "USE H5test_kind_STORAGE_SIZE_mod"
- WRITE(*,*) "WRITE(*,*) "" /*generating header file*/ """
- ji = 0
- WRITE(*, "("" CALL i"", i2.2,""()"")") ji
- jr = 0
- WRITE(*, "("" CALL r"", i2.2,""()"")") jr
- jd = 0
- WRITE(*, "("" CALL d"", i2.2,""()"")") jd
- DO i = 1, ii
- j = ikind_numbers(i)
- WRITE(*, "("" CALL i"", i2.2,""()"")") j
- ENDDO
- DO i = 1, ir
- j = rkind_numbers(i)
- WRITE(*, "("" CALL r"", i2.2,""()"")") j
- ENDDO
- WRITE(*,*) "END PROGRAM H5test_kind_STORAGE_SIZE"
-
-END PROGRAM test_kind
-
-
-
diff --git a/fortran/src/HDF5.f90 b/fortran/src/HDF5.F90
index 75af333..64f5be6 100644
--- a/fortran/src/HDF5.f90
+++ b/fortran/src/HDF5.F90
@@ -26,31 +26,21 @@
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
!*****
-
MODULE HDF5
USE H5GLOBAL
USE H5F
- USE H5F_PROVISIONAL
USE H5G
USE H5E
- USE H5E_PROVISIONAL
USE H5I
USE H5L
- USE H5L_PROVISIONAL
USE H5S
USE H5D
- USE H5D_PROVISIONAL
USE H5A
- USE H5A_PROVISIONAL
USE H5T
- USE H5T_PROVISIONAL
USE H5O
- USE H5O_PROVISIONAL
USE H5P
- USE H5P_PROVISIONAL
USE H5R
- USE H5R_PROVISIONAL
USE H5Z
- USE H5_DBLE_INTERFACE
+ USE H5_gen
USE H5LIB
END MODULE HDF5
diff --git a/fortran/src/HDF5mpio.f90 b/fortran/src/HDF5mpio.f90
deleted file mode 100644
index b8fb645..0000000
--- a/fortran/src/HDF5mpio.f90
+++ /dev/null
@@ -1,55 +0,0 @@
-!****h* ROBODoc/HDF5 (mpio)
-!
-! NAME
-! HDF5
-!
-! PURPOSE
-! This is the main module used for linking to the Fortran parallel HDF library.
-! This file replaces HDF5.f90 when compiling the parallel library.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!*****
-
-MODULE HDF5
- USE H5GLOBAL
- USE H5F
- USE H5F_PROVISIONAL
- USE H5G
- USE H5E
- USE H5E_PROVISIONAL
- USE H5I
- USE H5L
- USE H5L_PROVISIONAL
- USE H5S
- USE H5D
- USE H5D_PROVISIONAL
- USE H5A
- USE H5A_PROVISIONAL
- USE H5T
- USE H5T_PROVISIONAL
- USE H5O
- USE H5O_PROVISIONAL
- USE H5P
- USE H5P_PROVISIONAL
- USE H5FDMPIO
- USE H5R
- USE H5R_PROVISIONAL
- USE H5Z
- USE H5_DBLE_INTERFACE
- USE H5LIB
-END MODULE HDF5
diff --git a/fortran/src/Makefile.am b/fortran/src/Makefile.am
index a4b3843..734f46e 100644
--- a/fortran/src/Makefile.am
+++ b/fortran/src/Makefile.am
@@ -42,42 +42,13 @@ else
AM_LDFLAGS+=-static
endif
-# Include HDF5.f90 if parallel is disabled, HDF5mpiof* if parallel is enabled
-if BUILD_PARALLEL_CONDITIONAL
- PARALLEL_COND_SRC = H5FDmpiof.c HDF5mpio.f90 H5FDmpioff.f90
-else
- PARALLEL_COND_SRC = HDF5.f90
-endif
-
-# Check if the compiler supports the Fortran 2003 standard
-# which should include the intrinsic module iso_c_binding
-if FORTRAN_2003_CONDITIONAL_F
- F_STATUS = _F03
-else
- F_STATUS = _F90
-endif
-
-# Condition for including/excluding the DBLE interfaces for when the
-# default REAL is of type DOUBLE PRECISION.
-# We do not include the double precision interfaces if the defaut REAL is
-# DOUBLE PRECISION since this would lead to a non-unique conflict with the
-# generic interfaces declared as REAL.
-if FORTRAN_DEFAULT_REALisDBLE_F
- F_DBLE = Exclude
-else
- F_DBLE = Include
-endif
-
# Source files for the library.
-libhdf5_fortran_la_SOURCES=H5f90global.f90 \
- H5fortran_types.f90 H5_ff$(F_STATUS).f90 H5_ff.f90 H5Aff.f90 H5Dff.f90 H5Eff.f90 \
- H5Fff.f90 H5Gff.f90 H5Iff.f90 H5Lff.f90 H5Off.f90 H5Pff.f90 H5Rff.f90 H5Sff.f90 \
- H5Tff.f90 H5Zff.f90 \
- H5_DBLE_Interface$(F_DBLE).f90 \
+libhdf5_fortran_la_SOURCES=H5f90global.F90 \
+ H5fortran_types.F90 H5_ff.F90 H5Aff.F90 H5Dff.F90 H5Eff.F90 \
+ H5Fff.F90 H5Gff.F90 H5Iff.F90 H5Lff.F90 H5Off.F90 H5Pff.F90 H5Rff.F90 H5Sff.F90 \
+ H5Tff.F90 H5Zff.F90 H5_gen.f90 \
H5f90kit.c H5_f.c H5Af.c H5Df.c H5Ef.c H5Ff.c H5Gf.c \
- H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c H5Tf.c H5Zf.c \
- H5Aff$(F_STATUS).f90 H5Dff$(F_STATUS).f90 H5Eff$(F_STATUS).f90 H5Fff$(F_STATUS).f90 H5Lff$(F_STATUS).f90 \
- H5Off$(F_STATUS).f90 H5Pff$(F_STATUS).f90 H5Rff$(F_STATUS).f90 H5Tff$(F_STATUS).f90 $(PARALLEL_COND_SRC)
+ H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c H5Tf.c H5Zf.c HDF5.f90
# HDF5 Fortran library depends on HDF5 Library.
libhdf5_fortran_la_LIBADD=$(LIBHDF5)
@@ -86,11 +57,10 @@ libhdf5_fortran_la_LIBADD=$(LIBHDF5)
# Remove it only when distclean.
DISTCLEANFILES=h5fc
-# H5fortran_types.f90 and H5f90i.h are automatically generaed by
+# H5fortran_types.F90 and H5f90i.h are automatically generaed by
# H5match_types, and must be cleaned explicitly. H5fort_type_defines.h
# is generated by H5fortran_detect
-MOSTLYCLEANFILES=H5fortran_types.f90 H5f90i_gen.h H5fort_type_defines.h \
- H5fortran_detect.f90
+MOSTLYCLEANFILES=H5fortran_types.F90 H5f90i_gen.h H5fort_type_defines.h
# Fortran module files can have different extensions and different names
# (e.g., different capitalizations) on different platforms. Write rules
@@ -136,55 +106,35 @@ endif
# programs.
# It's a bit tricky to make sure that Automake builds things in the right
# order (especially when using 'gmake -j ...')
-# H5test_kind is compiled and run to produce H5fortran_detect.f90.
-# H5fortran_detect is compiled and run to produce H5fort_type_defines.h.
-# H5match_types.c then includes this file and can be compiled into
+# H5_buildiface is compiled and run to produce H5_gen.F90.
+# H5match_types.c then includes H5fort_type_defines.h and can be compiled into
# H5match_types. When H5match_types is run, it creates H5f90i_gen.h
-# and H5fortran_types.f90, which are included in the Fortran library.
+# and H5fortran_types.F90, which are included in the Fortran library.
# These are the helper programs we need to build.
-noinst_PROGRAMS = H5match_types H5fortran_detect H5test_kind
+noinst_PROGRAMS = H5match_types H5_buildiface
# Tell Automake to create H5f90i_gen.h before it builds the library
# sources. When it creates H5f90i_gen.h, it will create
-# H5fortran_types.f90 as a side effect.
+# H5fortran_types.F90 as a side effect.
BUILT_SOURCES = H5f90i_gen.h
#Specify what Automake needs to create: first the H5fort_type_defines.h
# header, then H5match_types which includes that header, then
# it needs to run H5match_types.
-H5fortran_types.f90 H5f90i_gen.h: H5match_types$(EXEEXT)
+H5fortran_types.F90 H5f90i_gen.h: H5match_types$(EXEEXT)
$(RUNSERIAL) ./H5match_types$(EXEEXT)
-# H5fort_type_defines.h is created by running H5fortran_detect.
-# Obviously, H5fortran_detect needs to be built first.
-H5fort_type_defines.h: H5fortran_detect$(EXEEXT)
- $(RUNSERIAL) ./H5fortran_detect$(EXEEXT) > H5fort_type_defines.h
-
-H5match_types.$(OBJEXT): H5fort_type_defines.h
-
-# Automake knows how to build fortran programs if we tell it the source
-# files.
-H5fortran_detect_SOURCES = H5fortran_detect.f90
+# H5_buildiface.F90 generates all the APIs that have a KIND type associated
+# with them.
-# H5test_kind.f90 generates H5Fortran_detect.f90 depending on if
-# intrinsic function SIZEOF is available.
+H5_gen.F90: H5_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5_buildiface$(EXEEXT)
-H5fortran_detect.f90: H5test_kind$(EXEEXT)
- $(RUNSERIAL) ./H5test_kind$(EXEEXT) > H5fortran_detect.f90
-
-# H5test_kind.f90 is included in the distribution, and Automake knows
+# H5_buildiface.F90 is included in the distribution, and Automake knows
# how to compile a fortran program given its sources.
-if FORTRAN_HAVE_STORAGE_SIZE
- H5test_kind_SOURCES = H5test_kind_STORAGE_SIZE.f90
-else
-if FORTRAN_HAVE_SIZEOF
- H5test_kind_SOURCES = H5test_kind_SIZEOF.f90
-else
- H5test_kind_SOURCES = H5test_kind.f90
-endif
-endif
+H5_buildiface_SOURCES = H5_buildiface.F90
# Mark this directory as part of the Fortran API
FORTRAN_API=yes
@@ -193,51 +143,28 @@ FORTRAN_API=yes
# determining this automagically (like we do with the C files). So, when
# doing a parallel make, some modules could be made way before the
# modules they depend upon are actually made. *sigh*
-H5f90global.lo: $(srcdir)/H5f90global.f90 H5fortran_types.lo
-H5fortran_types.lo: H5fortran_types.f90
-H5fortran_detect.lo: H5fortran_detect.f90
-H5test_kind.lo: $(srcdir)/H5test_kind.f90
-H5test_kind_SIZEOF.lo: $(srcdir)/H5test_kind_SIZEOF.f90
-H5_ff$(F_STATUS).lo: $(srcdir)/H5_ff$(F_STATUS).f90 H5f90global.lo
-H5_ff.lo: $(srcdir)/H5_ff.f90 H5f90global.lo H5_ff$(F_STATUS).lo
-H5Aff.lo: $(srcdir)/H5Aff.f90 H5f90global.lo
-H5Dff.lo: $(srcdir)/H5Dff.f90 H5f90global.lo
-H5Aff$(F_STATUS).lo: $(srcdir)/H5Aff$(F_STATUS).f90 H5f90global.lo
-H5Dff$(F_STATUS).lo: $(srcdir)/H5Dff$(F_STATUS).f90 H5f90global.lo
-H5Eff$(F_STATUS).lo: $(srcdir)/H5Eff$(F_STATUS).f90 H5f90global.lo
-H5Fff$(F_STATUS).lo: $(srcdir)/H5Fff$(F_STATUS).f90 H5f90global.lo
-H5Lff$(F_STATUS).lo: $(srcdir)/H5Lff$(F_STATUS).f90 H5f90global.lo
-H5Off$(F_STATUS).lo: $(srcdir)/H5Off$(F_STATUS).f90 H5f90global.lo
-H5Pff$(F_STATUS).lo: $(srcdir)/H5Pff$(F_STATUS).f90 H5f90global.lo
-H5Rff$(F_STATUS).lo: $(srcdir)/H5Rff$(F_STATUS).f90 H5f90global.lo
-H5Tff$(F_STATUS).lo: $(srcdir)/H5Tff$(F_STATUS).f90 H5f90global.lo
-H5Eff.lo: $(srcdir)/H5Eff.f90 H5f90global.lo
-H5Fff.lo: $(srcdir)/H5Fff.f90 H5f90global.lo
-H5Gff.lo: $(srcdir)/H5Gff.f90 H5f90global.lo
-H5Iff.lo: $(srcdir)/H5Iff.f90 H5f90global.lo
-H5Lff.lo: $(srcdir)/H5Lff.f90 H5f90global.lo
-H5Off.lo: $(srcdir)/H5Off.f90 H5f90global.lo
-H5Pff.lo: $(srcdir)/H5Pff.f90 H5f90global.lo
-H5Rff.lo: $(srcdir)/H5Rff.f90 H5f90global.lo
-H5Sff.lo: $(srcdir)/H5Sff.f90 H5f90global.lo
-H5Tff.lo: $(srcdir)/H5Tff.f90 H5f90global.lo
-H5Zff.lo: $(srcdir)/H5Zff.f90 H5f90global.lo
-H5_DBLE_Interface$(F_DBLE).lo: $(srcdir)/H5_DBLE_Interface$(F_DBLE).f90 H5Aff$(F_STATUS).lo H5Dff$(F_STATUS).lo H5Fff$(F_STATUS).lo H5Eff$(F_STATUS).lo H5Pff$(F_STATUS).lo
-HDF5.lo: $(srcdir)/HDF5.f90 H5f90global.lo H5_ff$(F_STATUS).lo H5_ff.lo H5Aff.lo H5Aff$(F_STATUS).lo \
- H5Dff.lo H5Dff$(F_STATUS).lo \
- H5Eff.lo H5Eff$(F_STATUS).lo \
- H5Fff.lo H5Fff$(F_STATUS).lo H5Gff.lo H5Iff.lo H5Lff.lo H5Lff$(F_STATUS).lo \
- H5Off.lo H5Off$(F_STATUS).lo H5Pff.lo H5Pff$(F_STATUS).lo H5Rff$(F_STATUS).lo H5Rff.lo \
- H5Sff.lo H5Tff.lo H5Tff$(F_STATUS).lo H5Zff.lo \
- H5_DBLE_Interface$(F_DBLE).lo
-H5FDmpioff.lo: $(srcdir)/H5FDmpioff.f90 H5f90global.lo
-HDF5mpio.lo: $(srcdir)/H5FDmpioff.f90 H5f90global.lo H5_ff$(F_STATUS).lo H5_ff.lo \
- H5Aff.lo H5Aff$(F_STATUS).lo \
- H5Dff.lo H5Dff$(F_STATUS).lo \
- H5Eff.lo H5Eff$(F_STATUS).lo \
- H5Fff.lo H5Fff$(F_STATUS).lo H5Gff.lo H5Iff.lo H5Lff.lo H5Lff$(F_STATUS).lo \
- H5Off.lo H5Off$(F_STATUS).lo H5Pff.lo H5Pff$(F_STATUS).lo H5Rff$(F_STATUS).lo H5Rff.lo \
- H5Sff.lo H5Tff.lo H5Tff$(F_STATUS).lo H5Zff.lo \
- H5_DBLE_Interface$(F_DBLE).lo H5FDmpioff.lo
+H5f90global.lo: $(srcdir)/H5f90global.F90 H5fortran_types.lo
+H5_buildiface.lo: $(srcdir)/H5_buildiface.F90
+H5_ff.lo: $(srcdir)/H5_ff.F90 H5f90global.lo
+H5Aff.lo: $(srcdir)/H5Aff.F90 H5f90global.lo
+H5Dff.lo: $(srcdir)/H5Dff.F90 H5f90global.lo
+H5Eff.lo: $(srcdir)/H5Eff.F90 H5f90global.lo
+H5Fff.lo: $(srcdir)/H5Fff.F90 H5f90global.lo
+H5Gff.lo: $(srcdir)/H5Gff.F90 H5f90global.lo
+H5Iff.lo: $(srcdir)/H5Iff.F90 H5f90global.lo
+H5Lff.lo: $(srcdir)/H5Lff.F90 H5f90global.lo
+H5Off.lo: $(srcdir)/H5Off.F90 H5f90global.lo
+H5Pff.lo: $(srcdir)/H5Pff.F90 H5f90global.lo
+H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo
+H5Sff.lo: $(srcdir)/H5Sff.F90 H5f90global.lo
+H5Tff.lo: $(srcdir)/H5Tff.F90 H5f90global.lo
+H5Zff.lo: $(srcdir)/H5Zff.F90 H5f90global.lo
+H5_gen.lo: H5_gen.F90 H5f90global.lo H5Aff.lo H5Dff.lo H5Pff.lo
+HDF5.lo: $(srcdir)/HDF5.F90 H5f90global.lo H5_ff.lo H5Aff.lo \
+ H5Dff.lo \
+ H5Eff.lo \
+ H5Fff.lo H5Gff.lo H5Iff.lo H5Lff.lo \
+ H5Off.lo H5Pff.lo H5Rff.lo \
+ H5Sff.lo H5Tff.lo H5Zff.lo H5_gen.lo
include $(top_srcdir)/config/conclude.am
diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in
index aba85ec..9a1ce4f 100644
--- a/fortran/src/Makefile.in
+++ b/fortran/src/Makefile.in
@@ -99,16 +99,16 @@ host_triplet = @host@
DIST_COMMON = $(top_srcdir)/config/commence.am \
$(top_srcdir)/config/lt_vers.am \
$(top_srcdir)/config/conclude.am $(srcdir)/Makefile.in \
- $(srcdir)/Makefile.am $(top_srcdir)/bin/mkinstalldirs \
- $(srcdir)/h5fc.in $(top_srcdir)/bin/depcomp \
+ $(srcdir)/Makefile.am $(srcdir)/H5config_f.inc.in \
+ $(top_srcdir)/bin/mkinstalldirs $(srcdir)/h5fc.in \
+ $(srcdir)/H5fort_type_defines.h.in $(top_srcdir)/bin/depcomp \
$(top_srcdir)/bin/test-driver README
# Some Fortran compilers can't build shared libraries, so sometimes we
# want to build a shared C library and a static Fortran library. If so,
# pass the -static flag to the library linker.
@FORTRAN_SHARED_CONDITIONAL_FALSE@am__append_1 = -static
-noinst_PROGRAMS = H5match_types$(EXEEXT) H5fortran_detect$(EXEEXT) \
- H5test_kind$(EXEEXT)
+noinst_PROGRAMS = H5match_types$(EXEEXT) H5_buildiface$(EXEEXT)
TESTS =
subdir = fortran/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -117,8 +117,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
-CONFIG_CLEAN_FILES = h5fc
+CONFIG_HEADER = $(top_builddir)/src/H5config.h H5config_f.inc
+CONFIG_CLEAN_FILES = h5fc H5fort_type_defines.h
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
@@ -150,30 +150,12 @@ am__uninstall_files_from_dir = { \
am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
libhdf5_fortran_la_DEPENDENCIES = $(LIBHDF5)
-am__libhdf5_fortran_la_SOURCES_DIST = H5f90global.f90 \
- H5fortran_types.f90 H5_ff$(F_STATUS).f90 H5_ff.f90 H5Aff.f90 \
- H5Dff.f90 H5Eff.f90 H5Fff.f90 H5Gff.f90 H5Iff.f90 H5Lff.f90 \
- H5Off.f90 H5Pff.f90 H5Rff.f90 H5Sff.f90 H5Tff.f90 H5Zff.f90 \
- H5_DBLE_Interface$(F_DBLE).f90 H5f90kit.c H5_f.c H5Af.c H5Df.c \
- H5Ef.c H5Ff.c H5Gf.c H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c \
- H5Tf.c H5Zf.c H5Aff$(F_STATUS).f90 H5Dff$(F_STATUS).f90 \
- H5Eff$(F_STATUS).f90 H5Fff$(F_STATUS).f90 H5Lff$(F_STATUS).f90 \
- H5Off$(F_STATUS).f90 H5Pff$(F_STATUS).f90 H5Rff$(F_STATUS).f90 \
- H5Tff$(F_STATUS).f90 HDF5.f90 H5FDmpiof.c HDF5mpio.f90 \
- H5FDmpioff.f90
-@BUILD_PARALLEL_CONDITIONAL_FALSE@am__objects_1 = HDF5.lo
-@BUILD_PARALLEL_CONDITIONAL_TRUE@am__objects_1 = H5FDmpiof.lo \
-@BUILD_PARALLEL_CONDITIONAL_TRUE@ HDF5mpio.lo H5FDmpioff.lo
am_libhdf5_fortran_la_OBJECTS = H5f90global.lo H5fortran_types.lo \
- H5_ff$(F_STATUS).lo H5_ff.lo H5Aff.lo H5Dff.lo H5Eff.lo \
- H5Fff.lo H5Gff.lo H5Iff.lo H5Lff.lo H5Off.lo H5Pff.lo H5Rff.lo \
- H5Sff.lo H5Tff.lo H5Zff.lo H5_DBLE_Interface$(F_DBLE).lo \
- H5f90kit.lo H5_f.lo H5Af.lo H5Df.lo H5Ef.lo H5Ff.lo H5Gf.lo \
- H5If.lo H5Lf.lo H5Of.lo H5Pf.lo H5Rf.lo H5Sf.lo H5Tf.lo \
- H5Zf.lo H5Aff$(F_STATUS).lo H5Dff$(F_STATUS).lo \
- H5Eff$(F_STATUS).lo H5Fff$(F_STATUS).lo H5Lff$(F_STATUS).lo \
- H5Off$(F_STATUS).lo H5Pff$(F_STATUS).lo H5Rff$(F_STATUS).lo \
- H5Tff$(F_STATUS).lo $(am__objects_1)
+ H5_ff.lo H5Aff.lo H5Dff.lo H5Eff.lo H5Fff.lo H5Gff.lo H5Iff.lo \
+ H5Lff.lo H5Off.lo H5Pff.lo H5Rff.lo H5Sff.lo H5Tff.lo H5Zff.lo \
+ H5_gen.lo H5f90kit.lo H5_f.lo H5Af.lo H5Df.lo H5Ef.lo H5Ff.lo \
+ H5Gf.lo H5If.lo H5Lf.lo H5Of.lo H5Pf.lo H5Rf.lo H5Sf.lo \
+ H5Tf.lo H5Zf.lo HDF5.lo
libhdf5_fortran_la_OBJECTS = $(am_libhdf5_fortran_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -184,19 +166,12 @@ libhdf5_fortran_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=FC \
$(AM_FCFLAGS) $(FCFLAGS) $(libhdf5_fortran_la_LDFLAGS) \
$(LDFLAGS) -o $@
PROGRAMS = $(noinst_PROGRAMS)
-am_H5fortran_detect_OBJECTS = H5fortran_detect.$(OBJEXT)
-H5fortran_detect_OBJECTS = $(am_H5fortran_detect_OBJECTS)
-H5fortran_detect_LDADD = $(LDADD)
+am_H5_buildiface_OBJECTS = H5_buildiface.$(OBJEXT)
+H5_buildiface_OBJECTS = $(am_H5_buildiface_OBJECTS)
+H5_buildiface_LDADD = $(LDADD)
H5match_types_SOURCES = H5match_types.c
H5match_types_OBJECTS = H5match_types.$(OBJEXT)
H5match_types_LDADD = $(LDADD)
-am__H5test_kind_SOURCES_DIST = H5test_kind.f90 H5test_kind_SIZEOF.f90 \
- H5test_kind_STORAGE_SIZE.f90
-@FORTRAN_HAVE_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@am_H5test_kind_OBJECTS = H5test_kind.$(OBJEXT)
-@FORTRAN_HAVE_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@am_H5test_kind_OBJECTS = H5test_kind_SIZEOF.$(OBJEXT)
-@FORTRAN_HAVE_STORAGE_SIZE_TRUE@am_H5test_kind_OBJECTS = H5test_kind_STORAGE_SIZE.$(OBJEXT)
-H5test_kind_OBJECTS = $(am_H5test_kind_OBJECTS)
-H5test_kind_LDADD = $(LDADD)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -213,6 +188,24 @@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
+PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
+LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(FC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_FCFLAGS) $(FCFLAGS)
+AM_V_PPFC = $(am__v_PPFC_@AM_V@)
+am__v_PPFC_ = $(am__v_PPFC_@AM_DEFAULT_V@)
+am__v_PPFC_0 = @echo " PPFC " $@;
+am__v_PPFC_1 =
+FCLD = $(FC)
+FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_FCLD = $(am__v_FCLD_@AM_V@)
+am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
+am__v_FCLD_0 = @echo " FCLD " $@;
+am__v_FCLD_1 =
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
@@ -238,25 +231,17 @@ AM_V_FC = $(am__v_FC_@AM_V@)
am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
am__v_FC_0 = @echo " FC " $@;
am__v_FC_1 =
-FCLD = $(FC)
-FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_FCLD = $(am__v_FCLD_@AM_V@)
-am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
-am__v_FCLD_0 = @echo " FCLD " $@;
-am__v_FCLD_1 =
-SOURCES = $(libhdf5_fortran_la_SOURCES) $(H5fortran_detect_SOURCES) \
- H5match_types.c $(H5test_kind_SOURCES)
-DIST_SOURCES = $(am__libhdf5_fortran_la_SOURCES_DIST) \
- $(H5fortran_detect_SOURCES) H5match_types.c \
- $(am__H5test_kind_SOURCES_DIST)
+SOURCES = $(libhdf5_fortran_la_SOURCES) $(H5_buildiface_SOURCES) \
+ H5match_types.c
+DIST_SOURCES = $(libhdf5_fortran_la_SOURCES) $(H5_buildiface_SOURCES) \
+ H5match_types.c
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
+ $(LISP)H5config_f.inc.in
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
@@ -513,14 +498,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -530,13 +522,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -578,6 +569,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
@@ -733,34 +736,14 @@ lib_LTLIBRARIES = libhdf5_fortran.la
# Add libtool numbers to the HDF5 Fortran library (from config/lt_vers.am)
libhdf5_fortran_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
-@BUILD_PARALLEL_CONDITIONAL_FALSE@PARALLEL_COND_SRC = HDF5.f90
-
-# Include HDF5.f90 if parallel is disabled, HDF5mpiof* if parallel is enabled
-@BUILD_PARALLEL_CONDITIONAL_TRUE@PARALLEL_COND_SRC = H5FDmpiof.c HDF5mpio.f90 H5FDmpioff.f90
-@FORTRAN_2003_CONDITIONAL_F_FALSE@F_STATUS = _F90
-
-# Check if the compiler supports the Fortran 2003 standard
-# which should include the intrinsic module iso_c_binding
-@FORTRAN_2003_CONDITIONAL_F_TRUE@F_STATUS = _F03
-@FORTRAN_DEFAULT_REALisDBLE_F_FALSE@F_DBLE = Include
-
-# Condition for including/excluding the DBLE interfaces for when the
-# default REAL is of type DOUBLE PRECISION.
-# We do not include the double precision interfaces if the defaut REAL is
-# DOUBLE PRECISION since this would lead to a non-unique conflict with the
-# generic interfaces declared as REAL.
-@FORTRAN_DEFAULT_REALisDBLE_F_TRUE@F_DBLE = Exclude
# Source files for the library.
-libhdf5_fortran_la_SOURCES = H5f90global.f90 \
- H5fortran_types.f90 H5_ff$(F_STATUS).f90 H5_ff.f90 H5Aff.f90 H5Dff.f90 H5Eff.f90 \
- H5Fff.f90 H5Gff.f90 H5Iff.f90 H5Lff.f90 H5Off.f90 H5Pff.f90 H5Rff.f90 H5Sff.f90 \
- H5Tff.f90 H5Zff.f90 \
- H5_DBLE_Interface$(F_DBLE).f90 \
+libhdf5_fortran_la_SOURCES = H5f90global.F90 \
+ H5fortran_types.F90 H5_ff.F90 H5Aff.F90 H5Dff.F90 H5Eff.F90 \
+ H5Fff.F90 H5Gff.F90 H5Iff.F90 H5Lff.F90 H5Off.F90 H5Pff.F90 H5Rff.F90 H5Sff.F90 \
+ H5Tff.F90 H5Zff.F90 H5_gen.f90 \
H5f90kit.c H5_f.c H5Af.c H5Df.c H5Ef.c H5Ff.c H5Gf.c \
- H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c H5Tf.c H5Zf.c \
- H5Aff$(F_STATUS).f90 H5Dff$(F_STATUS).f90 H5Eff$(F_STATUS).f90 H5Fff$(F_STATUS).f90 H5Lff$(F_STATUS).f90 \
- H5Off$(F_STATUS).f90 H5Pff$(F_STATUS).f90 H5Rff$(F_STATUS).f90 H5Tff$(F_STATUS).f90 $(PARALLEL_COND_SRC)
+ H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c H5Tf.c H5Zf.c HDF5.f90
# HDF5 Fortran library depends on HDF5 Library.
@@ -770,12 +753,10 @@ libhdf5_fortran_la_LIBADD = $(LIBHDF5)
# Remove it only when distclean.
DISTCLEANFILES = h5fc
-# H5fortran_types.f90 and H5f90i.h are automatically generaed by
+# H5fortran_types.F90 and H5f90i.h are automatically generaed by
# H5match_types, and must be cleaned explicitly. H5fort_type_defines.h
# is generated by H5fortran_detect
-MOSTLYCLEANFILES = H5fortran_types.f90 H5f90i_gen.h H5fort_type_defines.h \
- H5fortran_detect.f90
-
+MOSTLYCLEANFILES = H5fortran_types.F90 H5f90i_gen.h H5fort_type_defines.h
@BUILD_PARALLEL_CONDITIONAL_FALSE@H5FC_NAME = h5fc
# Custom rule for installing h5fc, since it will be named h5pfc if hdf5
@@ -784,18 +765,12 @@ MOSTLYCLEANFILES = H5fortran_types.f90 H5f90i_gen.h H5fort_type_defines.h \
# Tell Automake to create H5f90i_gen.h before it builds the library
# sources. When it creates H5f90i_gen.h, it will create
-# H5fortran_types.f90 as a side effect.
+# H5fortran_types.F90 as a side effect.
BUILT_SOURCES = H5f90i_gen.h
-# Automake knows how to build fortran programs if we tell it the source
-# files.
-H5fortran_detect_SOURCES = H5fortran_detect.f90
-@FORTRAN_HAVE_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@H5test_kind_SOURCES = H5test_kind.f90
-@FORTRAN_HAVE_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@H5test_kind_SOURCES = H5test_kind_SIZEOF.f90
-
-# H5test_kind.f90 is included in the distribution, and Automake knows
+# H5_buildiface.F90 is included in the distribution, and Automake knows
# how to compile a fortran program given its sources.
-@FORTRAN_HAVE_STORAGE_SIZE_TRUE@H5test_kind_SOURCES = H5test_kind_STORAGE_SIZE.f90
+H5_buildiface_SOURCES = H5_buildiface.F90
# Mark this directory as part of the Fortran API
FORTRAN_API = yes
@@ -819,11 +794,11 @@ TEST_PROG_CHKEXE = $(TEST_PROG:=.chkexe_)
TEST_PROG_PARA_CHKEXE = $(TEST_PROG_PARA:=.chkexe_)
TEST_SCRIPT_CHKSH = $(TEST_SCRIPT:=.chkexe_)
TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
-all: $(BUILT_SOURCES)
+all: $(BUILT_SOURCES) H5config_f.inc
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
-.SUFFIXES: .c .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
+.SUFFIXES: .F90 .c .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence.am $(top_srcdir)/config/lt_vers.am $(top_srcdir)/config/conclude.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -855,8 +830,21 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+
+H5config_f.inc: stamp-h2
+ @test -f $@ || rm -f stamp-h2
+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h2
+
+stamp-h2: $(srcdir)/H5config_f.inc.in $(top_builddir)/config.status
+ @rm -f stamp-h2
+ cd $(top_builddir) && $(SHELL) ./config.status fortran/src/H5config_f.inc
+
+distclean-hdr:
+ -rm -f H5config_f.inc stamp-h2
h5fc: $(top_builddir)/config.status $(srcdir)/h5fc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+H5fort_type_defines.h: $(top_builddir)/config.status $(srcdir)/H5fort_type_defines.h.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
@@ -905,18 +893,14 @@ clean-noinstPROGRAMS:
echo " rm -f" $$list; \
rm -f $$list
-H5fortran_detect$(EXEEXT): $(H5fortran_detect_OBJECTS) $(H5fortran_detect_DEPENDENCIES) $(EXTRA_H5fortran_detect_DEPENDENCIES)
- @rm -f H5fortran_detect$(EXEEXT)
- $(AM_V_FCLD)$(FCLINK) $(H5fortran_detect_OBJECTS) $(H5fortran_detect_LDADD) $(LIBS)
+H5_buildiface$(EXEEXT): $(H5_buildiface_OBJECTS) $(H5_buildiface_DEPENDENCIES) $(EXTRA_H5_buildiface_DEPENDENCIES)
+ @rm -f H5_buildiface$(EXEEXT)
+ $(AM_V_FCLD)$(FCLINK) $(H5_buildiface_OBJECTS) $(H5_buildiface_LDADD) $(LIBS)
H5match_types$(EXEEXT): $(H5match_types_OBJECTS) $(H5match_types_DEPENDENCIES) $(EXTRA_H5match_types_DEPENDENCIES)
@rm -f H5match_types$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(H5match_types_OBJECTS) $(H5match_types_LDADD) $(LIBS)
-H5test_kind$(EXEEXT): $(H5test_kind_OBJECTS) $(H5test_kind_DEPENDENCIES) $(EXTRA_H5test_kind_DEPENDENCIES)
- @rm -f H5test_kind$(EXEEXT)
- $(AM_V_FCLD)$(FCLINK) $(H5test_kind_OBJECTS) $(H5test_kind_LDADD) $(LIBS)
-
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -926,7 +910,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5Af.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5Df.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5Ef.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5FDmpiof.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5Ff.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5Gf.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5If.Plo@am__quote@
@@ -941,6 +924,15 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5f90kit.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5match_types.Po@am__quote@
+.F90.o:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ $<
+
+.F90.obj:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.F90.lo:
+ $(AM_V_PPFC)$(LTPPFCCOMPILE) -c -o $@ $<
+
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@@ -1208,7 +1200,7 @@ check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) all-local
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) H5config_f.inc all-local
installdirs:
for dir in "$(DESTDIR)$(libdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -1259,7 +1251,7 @@ distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
- distclean-local distclean-tags
+ distclean-hdr distclean-local distclean-tags
dvi: dvi-am
@@ -1328,14 +1320,14 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-local
check-am clean clean-generic clean-libLTLIBRARIES \
clean-libtool clean-local clean-noinstPROGRAMS cscopelist-am \
ctags ctags-am distclean distclean-compile distclean-generic \
- distclean-libtool distclean-local distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-data-local install-dvi \
- install-dvi-am install-exec install-exec-am install-exec-local \
- install-html install-html-am install-info install-info-am \
- install-libLTLIBRARIES install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
+ distclean-hdr distclean-libtool distclean-local distclean-tags \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-data-local \
+ install-dvi install-dvi-am install-exec install-exec-am \
+ install-exec-local install-html install-html-am install-info \
+ install-info-am install-libLTLIBRARIES install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic maintainer-clean-local mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
mostlyclean-local pdf pdf-am ps ps-am recheck tags tags-am \
@@ -1401,72 +1393,42 @@ install-exec-local:
#Specify what Automake needs to create: first the H5fort_type_defines.h
# header, then H5match_types which includes that header, then
# it needs to run H5match_types.
-H5fortran_types.f90 H5f90i_gen.h: H5match_types$(EXEEXT)
+H5fortran_types.F90 H5f90i_gen.h: H5match_types$(EXEEXT)
$(RUNSERIAL) ./H5match_types$(EXEEXT)
-# H5fort_type_defines.h is created by running H5fortran_detect.
-# Obviously, H5fortran_detect needs to be built first.
-H5fort_type_defines.h: H5fortran_detect$(EXEEXT)
- $(RUNSERIAL) ./H5fortran_detect$(EXEEXT) > H5fort_type_defines.h
-
-H5match_types.$(OBJEXT): H5fort_type_defines.h
-
-# H5test_kind.f90 generates H5Fortran_detect.f90 depending on if
-# intrinsic function SIZEOF is available.
+# H5_buildiface.F90 generates all the APIs that have a KIND type associated
+# with them.
-H5fortran_detect.f90: H5test_kind$(EXEEXT)
- $(RUNSERIAL) ./H5test_kind$(EXEEXT) > H5fortran_detect.f90
+H5_gen.F90: H5_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5_buildiface$(EXEEXT)
# Hardcode the dependencies of these files. There isn't a known way of
# determining this automagically (like we do with the C files). So, when
# doing a parallel make, some modules could be made way before the
# modules they depend upon are actually made. *sigh*
-H5f90global.lo: $(srcdir)/H5f90global.f90 H5fortran_types.lo
-H5fortran_types.lo: H5fortran_types.f90
-H5fortran_detect.lo: H5fortran_detect.f90
-H5test_kind.lo: $(srcdir)/H5test_kind.f90
-H5test_kind_SIZEOF.lo: $(srcdir)/H5test_kind_SIZEOF.f90
-H5_ff$(F_STATUS).lo: $(srcdir)/H5_ff$(F_STATUS).f90 H5f90global.lo
-H5_ff.lo: $(srcdir)/H5_ff.f90 H5f90global.lo H5_ff$(F_STATUS).lo
-H5Aff.lo: $(srcdir)/H5Aff.f90 H5f90global.lo
-H5Dff.lo: $(srcdir)/H5Dff.f90 H5f90global.lo
-H5Aff$(F_STATUS).lo: $(srcdir)/H5Aff$(F_STATUS).f90 H5f90global.lo
-H5Dff$(F_STATUS).lo: $(srcdir)/H5Dff$(F_STATUS).f90 H5f90global.lo
-H5Eff$(F_STATUS).lo: $(srcdir)/H5Eff$(F_STATUS).f90 H5f90global.lo
-H5Fff$(F_STATUS).lo: $(srcdir)/H5Fff$(F_STATUS).f90 H5f90global.lo
-H5Lff$(F_STATUS).lo: $(srcdir)/H5Lff$(F_STATUS).f90 H5f90global.lo
-H5Off$(F_STATUS).lo: $(srcdir)/H5Off$(F_STATUS).f90 H5f90global.lo
-H5Pff$(F_STATUS).lo: $(srcdir)/H5Pff$(F_STATUS).f90 H5f90global.lo
-H5Rff$(F_STATUS).lo: $(srcdir)/H5Rff$(F_STATUS).f90 H5f90global.lo
-H5Tff$(F_STATUS).lo: $(srcdir)/H5Tff$(F_STATUS).f90 H5f90global.lo
-H5Eff.lo: $(srcdir)/H5Eff.f90 H5f90global.lo
-H5Fff.lo: $(srcdir)/H5Fff.f90 H5f90global.lo
-H5Gff.lo: $(srcdir)/H5Gff.f90 H5f90global.lo
-H5Iff.lo: $(srcdir)/H5Iff.f90 H5f90global.lo
-H5Lff.lo: $(srcdir)/H5Lff.f90 H5f90global.lo
-H5Off.lo: $(srcdir)/H5Off.f90 H5f90global.lo
-H5Pff.lo: $(srcdir)/H5Pff.f90 H5f90global.lo
-H5Rff.lo: $(srcdir)/H5Rff.f90 H5f90global.lo
-H5Sff.lo: $(srcdir)/H5Sff.f90 H5f90global.lo
-H5Tff.lo: $(srcdir)/H5Tff.f90 H5f90global.lo
-H5Zff.lo: $(srcdir)/H5Zff.f90 H5f90global.lo
-H5_DBLE_Interface$(F_DBLE).lo: $(srcdir)/H5_DBLE_Interface$(F_DBLE).f90 H5Aff$(F_STATUS).lo H5Dff$(F_STATUS).lo H5Fff$(F_STATUS).lo H5Eff$(F_STATUS).lo H5Pff$(F_STATUS).lo
-HDF5.lo: $(srcdir)/HDF5.f90 H5f90global.lo H5_ff$(F_STATUS).lo H5_ff.lo H5Aff.lo H5Aff$(F_STATUS).lo \
- H5Dff.lo H5Dff$(F_STATUS).lo \
- H5Eff.lo H5Eff$(F_STATUS).lo \
- H5Fff.lo H5Fff$(F_STATUS).lo H5Gff.lo H5Iff.lo H5Lff.lo H5Lff$(F_STATUS).lo \
- H5Off.lo H5Off$(F_STATUS).lo H5Pff.lo H5Pff$(F_STATUS).lo H5Rff$(F_STATUS).lo H5Rff.lo \
- H5Sff.lo H5Tff.lo H5Tff$(F_STATUS).lo H5Zff.lo \
- H5_DBLE_Interface$(F_DBLE).lo
-H5FDmpioff.lo: $(srcdir)/H5FDmpioff.f90 H5f90global.lo
-HDF5mpio.lo: $(srcdir)/H5FDmpioff.f90 H5f90global.lo H5_ff$(F_STATUS).lo H5_ff.lo \
- H5Aff.lo H5Aff$(F_STATUS).lo \
- H5Dff.lo H5Dff$(F_STATUS).lo \
- H5Eff.lo H5Eff$(F_STATUS).lo \
- H5Fff.lo H5Fff$(F_STATUS).lo H5Gff.lo H5Iff.lo H5Lff.lo H5Lff$(F_STATUS).lo \
- H5Off.lo H5Off$(F_STATUS).lo H5Pff.lo H5Pff$(F_STATUS).lo H5Rff$(F_STATUS).lo H5Rff.lo \
- H5Sff.lo H5Tff.lo H5Tff$(F_STATUS).lo H5Zff.lo \
- H5_DBLE_Interface$(F_DBLE).lo H5FDmpioff.lo
+H5f90global.lo: $(srcdir)/H5f90global.F90 H5fortran_types.lo
+H5_buildiface.lo: $(srcdir)/H5_buildiface.F90
+H5_ff.lo: $(srcdir)/H5_ff.F90 H5f90global.lo
+H5Aff.lo: $(srcdir)/H5Aff.F90 H5f90global.lo
+H5Dff.lo: $(srcdir)/H5Dff.F90 H5f90global.lo
+H5Eff.lo: $(srcdir)/H5Eff.F90 H5f90global.lo
+H5Fff.lo: $(srcdir)/H5Fff.F90 H5f90global.lo
+H5Gff.lo: $(srcdir)/H5Gff.F90 H5f90global.lo
+H5Iff.lo: $(srcdir)/H5Iff.F90 H5f90global.lo
+H5Lff.lo: $(srcdir)/H5Lff.F90 H5f90global.lo
+H5Off.lo: $(srcdir)/H5Off.F90 H5f90global.lo
+H5Pff.lo: $(srcdir)/H5Pff.F90 H5f90global.lo
+H5Rff.lo: $(srcdir)/H5Rff.F90 H5f90global.lo
+H5Sff.lo: $(srcdir)/H5Sff.F90 H5f90global.lo
+H5Tff.lo: $(srcdir)/H5Tff.F90 H5f90global.lo
+H5Zff.lo: $(srcdir)/H5Zff.F90 H5f90global.lo
+H5_gen.lo: H5_gen.F90 H5f90global.lo H5Aff.lo H5Dff.lo H5Pff.lo
+HDF5.lo: $(srcdir)/HDF5.F90 H5f90global.lo H5_ff.lo H5Aff.lo \
+ H5Dff.lo \
+ H5Eff.lo \
+ H5Fff.lo H5Gff.lo H5Iff.lo H5Lff.lo \
+ H5Off.lo H5Pff.lo H5Rff.lo \
+ H5Sff.lo H5Tff.lo H5Zff.lo H5_gen.lo
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
diff --git a/fortran/src/hdf5_fortrandll.def.in b/fortran/src/hdf5_fortrandll.def.in
index 48fb343..7b218ca 100644
--- a/fortran/src/hdf5_fortrandll.def.in
+++ b/fortran/src/hdf5_fortrandll.def.in
@@ -7,99 +7,13 @@ H5LIB_mp_H5CHECK_VERSION_F
H5LIB_mp_H5GARBAGE_COLLECT_F
H5LIB_mp_H5DONT_ATEXIT_F
H5LIB_mp_H5KIND_TO_TYPE
-@H5_NOF03EXP@H5LIB_PROVISIONAL_mp_H5OFFSETOF
-; H5_DBLE_INTERFACE
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_SCALAR
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_1
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_2
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_3
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_4
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_5
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_6
-H5_DBLE_INTERFACE_mp_H5AREAD_DOUBLE_7
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_SCALAR
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_1
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_2
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_3
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_4
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_5
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_6
-H5_DBLE_INTERFACE_mp_H5AWRITE_DOUBLE_7
-H5_DBLE_INTERFACE_mp_H5DFILL_DOUBLE
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_SCALAR
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_1
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_2
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_3
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_4
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_5
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_6
-H5_DBLE_INTERFACE_mp_H5DREAD_DOUBLE_7
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_SCALAR
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_1
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_2
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_3
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_4
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_5
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_6
-H5_DBLE_INTERFACE_mp_H5DWRITE_DOUBLE_7
-H5_DBLE_INTERFACE_mp_H5PGET_DOUBLE
-H5_DBLE_INTERFACE_mp_H5PSET_DOUBLE
-H5_DBLE_INTERFACE_mp_H5PSET_FILL_VALUE_DOUBLE
-H5_DBLE_INTERFACE_mp_H5PGET_FILL_VALUE_DOUBLE
-H5_DBLE_INTERFACE_mp_H5PINSERT_DOUBLE
-H5_DBLE_INTERFACE_mp_H5PREGISTER_DOUBLE
+H5LIB_mp_H5OFFSETOF
; H5A
+H5A_mp_H5AWRITE_CHAR_SCALAR
+H5A_mp_H5AREAD_CHAR_SCALAR
H5A_mp_H5ACREATE_F
H5A_mp_H5AOPEN_NAME_F
H5A_mp_H5AOPEN_IDX_F
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_SCALAR
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_1
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_2
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_3
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_4
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_5
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_6
-H5A_PROVISIONAL_mp_H5AWRITE_INTEGER_7
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_SCALAR
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_1
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_2
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_3
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_4
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_5
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_6
-H5A_PROVISIONAL_mp_H5AWRITE_REAL_7
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_SCALAR
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_1
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_2
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_3
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_4
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_5
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_6
-H5A_PROVISIONAL_mp_H5AWRITE_CHAR_7
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_SCALAR
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_1
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_2
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_3
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_4
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_5
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_6
-H5A_PROVISIONAL_mp_H5AREAD_INTEGER_7
-H5A_PROVISIONAL_mp_H5AREAD_REAL_SCALAR
-H5A_PROVISIONAL_mp_H5AREAD_REAL_1
-H5A_PROVISIONAL_mp_H5AREAD_REAL_2
-H5A_PROVISIONAL_mp_H5AREAD_REAL_3
-H5A_PROVISIONAL_mp_H5AREAD_REAL_4
-H5A_PROVISIONAL_mp_H5AREAD_REAL_5
-H5A_PROVISIONAL_mp_H5AREAD_REAL_6
-H5A_PROVISIONAL_mp_H5AREAD_REAL_7
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_SCALAR
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_1
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_2
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_3
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_4
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_5
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_6
-H5A_PROVISIONAL_mp_H5AREAD_CHAR_7
H5A_mp_H5AGET_SPACE_F
H5A_mp_H5AGET_TYPE_F
H5A_mp_H5AGET_NAME_F
@@ -122,64 +36,16 @@ H5A_mp_H5AEXISTS_F
H5A_mp_H5AEXISTS_BY_NAME_F
H5A_mp_H5AOPEN_BY_NAME_F
H5A_mp_H5ARENAME_F
-@H5_NOF03EXP@H5A_PROVISIONAL_mp_H5AWRITE_PTR
-@H5_NOF03EXP@H5A_PROVISIONAL_mp_H5AREAD_PTR
; H5D
H5D_mp_H5DCREATE_F
H5D_mp_H5DOPEN_F
H5D_mp_H5DCLOSE_F
-H5D_PROVISIONAL_mp_H5DWRITE_REFERENCE_OBJ
-H5D_PROVISIONAL_mp_H5DWRITE_REFERENCE_DSETREG
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_SCALAR
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_1
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_2
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_3
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_4
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_5
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_6
-H5D_PROVISIONAL_mp_H5DWRITE_INTEGER_7
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_SCALAR
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_1
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_2
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_3
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_4
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_5
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_6
-H5D_PROVISIONAL_mp_H5DWRITE_CHAR_7
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_SCALAR
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_1
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_2
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_3
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_4
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_5
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_6
-H5D_PROVISIONAL_mp_H5DWRITE_REAL_7
-H5D_PROVISIONAL_mp_H5DREAD_REFERENCE_OBJ
-H5D_PROVISIONAL_mp_H5DREAD_REFERENCE_DSETREG
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_SCALAR
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_1
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_2
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_3
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_4
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_5
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_6
-H5D_PROVISIONAL_mp_H5DREAD_INTEGER_7
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_SCALAR
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_1
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_2
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_3
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_4
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_5
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_6
-H5D_PROVISIONAL_mp_H5DREAD_CHAR_7
-H5D_PROVISIONAL_mp_H5DREAD_REAL_SCALAR
-H5D_PROVISIONAL_mp_H5DREAD_REAL_1
-H5D_PROVISIONAL_mp_H5DREAD_REAL_2
-H5D_PROVISIONAL_mp_H5DREAD_REAL_3
-H5D_PROVISIONAL_mp_H5DREAD_REAL_4
-H5D_PROVISIONAL_mp_H5DREAD_REAL_5
-H5D_PROVISIONAL_mp_H5DREAD_REAL_6
-H5D_PROVISIONAL_mp_H5DREAD_REAL_7
+H5D_mp_H5DWRITE_REFERENCE_OBJ
+H5D_mp_H5DWRITE_REFERENCE_DSETREG
+H5D_mp_H5DWRITE_CHAR_SCALAR
+H5D_mp_H5DREAD_REFERENCE_OBJ
+H5D_mp_H5DREAD_REFERENCE_DSETREG
+H5D_mp_H5DREAD_CHAR_SCALAR
H5D_mp_H5DGET_SPACE_F
H5D_mp_H5DGET_TYPE_F
H5D_mp_H5DSET_EXTENT_F
@@ -192,9 +58,8 @@ H5D_mp_H5DWRITE_VL_REAL
H5D_mp_H5DREAD_VL_REAL
H5D_mp_H5DWRITE_VL_STRING
H5D_mp_H5DREAD_VL_STRING
-H5D_PROVISIONAL_mp_H5DFILL_INTEGER
-H5D_PROVISIONAL_mp_H5DFILL_REAL
-H5D_PROVISIONAL_mp_H5DFILL_CHAR
+H5D_mp_H5DFILL_CHAR
+H5D_mp_H5DFILL_INTEGER
H5D_mp_H5DGET_SPACE_STATUS_F
H5D_mp_H5DCREATE_ANON_F
H5D_mp_H5DGET_SPACE_F
@@ -204,15 +69,15 @@ H5D_mp_H5DGET_CREATE_PLIST_F
H5D_mp_H5DGET_STORAGE_SIZE_F
H5D_mp_H5DVLEN_GET_MAX_LEN_F
H5D_mp_H5DGET_ACCESS_PLIST_F
-@H5_NOF03EXP@H5D_PROVISIONAL_mp_H5DWRITE_PTR
-@H5_NOF03EXP@H5D_PROVISIONAL_mp_H5DREAD_PTR
-@H5_NOF03EXP@H5D_PROVISIONAL_mp_H5DVLEN_RECLAIM_F
+H5D_mp_H5DWRITE_PTR
+H5D_mp_H5DREAD_PTR
+H5D_mp_H5DVLEN_RECLAIM_F
; H5E
H5E_mp_H5ECLEAR_F
H5E_mp_H5EPRINT_F
H5E_mp_H5EGET_MAJOR_F
H5E_mp_H5EGET_MINOR_F
-H5E_PROVISIONAL_mp_H5ESET_AUTO_F
+H5E_mp_H5ESET_AUTO_F
; H5F
H5F_mp_H5FCREATE_F
H5F_mp_H5FFLUSH_F
@@ -229,7 +94,7 @@ H5F_mp_H5FGET_ACCESS_PLIST_F
H5F_mp_H5FIS_HDF5_F
H5F_mp_H5FGET_NAME_F
H5F_mp_H5FGET_FILESIZE_F
-@H5_NOF03EXP@H5F_PROVISIONAL_mp_H5FGET_FILE_IMAGE_F
+H5F_mp_H5FGET_FILE_IMAGE_F
; H5G
H5G_mp_H5GOPEN_F
H5G_mp_H5GCREATE_F
@@ -291,8 +156,8 @@ H5L_mp_H5LGET_INFO_BY_IDX_F
H5L_mp_H5LIS_REGISTERED_F
H5L_mp_H5LMOVE_F
H5L_mp_H5LGET_NAME_BY_IDX_F
-@H5_NOF03EXP@H5L_PROVISIONAL_mp_H5LITERATE_F
-@H5_NOF03EXP@H5L_PROVISIONAL_mp_H5LITERATE_BY_NAME_F
+H5L_mp_H5LITERATE_F
+H5L_mp_H5LITERATE_BY_NAME_F
; H5O
H5O_mp_H5OCLOSE_F
H5O_mp_H5OCOPY_F
@@ -307,11 +172,11 @@ H5O_mp_H5OOPEN_BY_IDX_F
H5O_mp_H5OOPEN_F
H5O_mp_H5OSET_COMMENT_F
H5O_mp_H5OSET_COMMENT_BY_NAME_F
-@H5_NOF03EXP@H5O_PROVISIONAL_mp_H5OGET_INFO_BY_IDX_F
-@H5_NOF03EXP@H5O_PROVISIONAL_mp_H5OGET_INFO_BY_NAME_F
-@H5_NOF03EXP@H5O_PROVISIONAL_mp_H5OGET_INFO_F
-@H5_NOF03EXP@H5O_PROVISIONAL_mp_H5OVISIT_BY_NAME_F
-@H5_NOF03EXP@H5O_PROVISIONAL_mp_H5OVISIT_F
+H5O_mp_H5OGET_INFO_BY_IDX_F
+H5O_mp_H5OGET_INFO_BY_NAME_F
+H5O_mp_H5OGET_INFO_F
+H5O_mp_H5OVISIT_BY_NAME_F
+H5O_mp_H5OVISIT_F
; H5P
H5P_mp_H5PCREATE_F
H5P_mp_H5PSET_PRESERVE_F
@@ -322,12 +187,10 @@ H5P_mp_H5PCLOSE_F
H5P_mp_H5PSET_CHUNK_F
H5P_mp_H5PGET_CHUNK_F
H5P_mp_H5PSET_DEFLATE_F
-H5P_PROVISIONAL_mp_H5PSET_FILL_VALUE_INTEGER
-H5P_PROVISIONAL_mp_H5PGET_FILL_VALUE_INTEGER
-H5P_PROVISIONAL_mp_H5PSET_FILL_VALUE_REAL
-H5P_PROVISIONAL_mp_H5PGET_FILL_VALUE_REAL
-H5P_PROVISIONAL_mp_H5PSET_FILL_VALUE_CHAR
-H5P_PROVISIONAL_mp_H5PGET_FILL_VALUE_CHAR
+H5P_mp_H5PSET_FILL_VALUE_CHAR
+H5P_mp_H5PGET_FILL_VALUE_CHAR
+H5P_mp_H5PSET_FILL_VALUE_INTEGER
+H5P_mp_H5PGET_FILL_VALUE_INTEGER
H5P_mp_H5PGET_VERSION_F
H5P_mp_H5PSET_USERBLOCK_F
H5P_mp_H5PGET_USERBLOCK_F
@@ -379,12 +242,10 @@ H5P_mp_H5PSET_SMALL_DATA_BLOCK_SIZE_F
H5P_mp_H5PGET_SMALL_DATA_BLOCK_SIZE_F
H5P_mp_H5PSET_HYPER_VECTOR_SIZE_F
H5P_mp_H5PGET_HYPER_VECTOR_SIZE_F
-H5P_PROVISIONAL_mp_H5PSET_INTEGER
-H5P_PROVISIONAL_mp_H5PSET_REAL
-H5P_PROVISIONAL_mp_H5PSET_CHAR
-H5P_PROVISIONAL_mp_H5PGET_INTEGER
-H5P_PROVISIONAL_mp_H5PGET_REAL
-H5P_PROVISIONAL_mp_H5PGET_CHAR
+H5P_mp_H5PSET_CHAR
+H5P_mp_H5PSET_INTEGER
+H5P_mp_H5PGET_CHAR
+H5P_mp_H5PGET_INTEGER
H5P_mp_H5PEXIST_F
H5P_mp_H5PGET_SIZE_F
H5P_mp_H5PGET_NPROPS_F
@@ -395,13 +256,11 @@ H5P_mp_H5PCOPY_PROP_F
H5P_mp_H5PREMOVE_F
H5P_mp_H5PUNREGISTER_F
H5P_mp_H5PCLOSE_CLASS_F
-H5P_PROVISIONAL_mp_H5PCREATE_CLASS_F
-H5P_PROVISIONAL_mp_H5PREGISTER_INTEGER
-H5P_PROVISIONAL_mp_H5PREGISTER_REAL
-H5P_PROVISIONAL_mp_H5PREGISTER_CHAR
-H5P_PROVISIONAL_mp_H5PINSERT_INTEGER
-H5P_PROVISIONAL_mp_H5PINSERT_REAL
-H5P_PROVISIONAL_mp_H5PINSERT_CHAR
+H5P_mp_H5PCREATE_CLASS_F
+H5P_mp_H5PREGISTER_INTEGER
+H5P_mp_H5PREGISTER_CHAR
+H5P_mp_H5PINSERT_CHAR
+H5P_mp_H5PINSERT_INTEGER
H5P_mp_H5PSET_SHUFFLE_F
H5P_mp_H5PSET_EDC_CHECK_F
H5P_mp_H5PGET_EDC_CHECK_F
@@ -448,28 +307,34 @@ H5P_mp_H5PGET_NLINKS_F
H5P_mp_H5PGET_CREATE_INTER_GROUP_F
H5P_mp_H5PSET_CHUNK_CACHE_F
H5P_mp_H5PGET_CHUNK_CACHE_F
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PSET_FILL_VALUE_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PGET_FILL_VALUE_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PSET_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PGET_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PREGISTER_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PINSERT_PTR
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PGET_FILE_IMAGE_F
-@H5_NOF03EXP@H5P_PROVISIONAL_mp_H5PSET_FILE_IMAGE_F
+H5P_mp_H5PSET_FILL_VALUE_PTR
+H5P_mp_H5PGET_FILL_VALUE_PTR
+H5P_mp_H5PSET_PTR
+H5P_mp_H5PGET_PTR
+H5P_mp_H5PREGISTER_PTR
+H5P_mp_H5PINSERT_PTR
+H5P_mp_H5PGET_FILE_IMAGE_F
+H5P_mp_H5PSET_FILE_IMAGE_F
+; Parallel
+@H5_NOPAREXP@H5P_mp_H5PSET_FAPL_MPIO_F
+@H5_NOPAREXP@H5P_mp_H5PGET_FAPL_MPIO_F
+@H5_NOPAREXP@H5P_mp_H5PSET_DXPL_MPIO_F
+@H5_NOPAREXP@H5P_mp_H5PGET_DXPL_MPIO_F
+@H5_NOPAREXP@H5P_mp_H5PGET_MPIO_ACTUAL_IO_MODE_F
; H5R
-H5R_PROVISIONAL_mp_H5RCREATE_OBJECT_F
-H5R_PROVISIONAL_mp_H5RCREATE_REGION_F
-H5R_PROVISIONAL_mp_H5RDEREFERENCE_OBJECT_F
-H5R_PROVISIONAL_mp_H5RDEREFERENCE_REGION_F
-H5R_PROVISIONAL_mp_H5RGET_REGION_REGION_F
+H5R_mp_H5RCREATE_OBJECT_F
+H5R_mp_H5RCREATE_REGION_F
+H5R_mp_H5RDEREFERENCE_OBJECT_F
+H5R_mp_H5RDEREFERENCE_REGION_F
+H5R_mp_H5RGET_REGION_REGION_F
H5R_mp_H5RGET_OBJECT_TYPE_OBJ_F
-H5R_PROVISIONAL_mp_H5RGET_NAME_OBJECT_F
-H5R_PROVISIONAL_mp_H5RGET_NAME_REGION_F
-@H5_NOF03EXP@H5R_PROVISIONAL_mp_H5RGET_REGION_PTR_F
-@H5_NOF03EXP@H5R_PROVISIONAL_mp_H5RCREATE_PTR_F
-@H5_NOF03EXP@H5R_PROVISIONAL_mp_H5RDEREFERENCE_PTR_F
-@H5_NOF03EXP@H5R_PROVISIONAL_mp_H5RGET_NAME_PTR_F
-@H5_NOF03EXP@H5R_PROVISIONAL_mp_H5RGET_OBJ_TYPE_F
+H5R_mp_H5RGET_NAME_OBJECT_F
+H5R_mp_H5RGET_NAME_REGION_F
+H5R_mp_H5RGET_REGION_PTR_F
+H5R_mp_H5RCREATE_PTR_F
+H5R_mp_H5RDEREFERENCE_PTR_F
+H5R_mp_H5RGET_NAME_PTR_F
+H5R_mp_H5RGET_OBJ_TYPE_F
; H5S
H5S_mp_H5SCREATE_SIMPLE_F
H5S_mp_H5SCLOSE_F
@@ -558,17 +423,10 @@ H5T_mp_H5TENCODE_F
H5T_mp_H5TGET_CREATE_PLIST_F
H5T_mp_H5TCOMPILER_CONV_F
H5T_mp_H5TGET_NATIVE_TYPE_F
-@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TCONVERT_F
-@H5_F03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F
-@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F90
-@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F03
+H5T_mp_H5TCONVERT_F
+H5T_mp_H5TENUM_INSERT_F90
+H5T_mp_H5TENUM_INSERT_F03
; H5Z
H5Z_mp_H5ZUNREGISTER_F
H5Z_mp_H5ZFILTER_AVAIL_F
H5Z_mp_H5ZGET_FILTER_INFO_F
-; Parallel
-@H5_NOPAREXP@H5FDMPIO_mp_H5PSET_FAPL_MPIO_F
-@H5_NOPAREXP@H5FDMPIO_mp_H5PGET_FAPL_MPIO_F
-@H5_NOPAREXP@H5FDMPIO_mp_H5PSET_DXPL_MPIO_F
-@H5_NOPAREXP@H5FDMPIO_mp_H5PGET_DXPL_MPIO_F
-@H5_NOPAREXP@H5FDMPIO_mp_H5PGET_MPIO_ACTUAL_IO_MODE_F
diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt
index a2711c0..19d4975 100644
--- a/fortran/test/CMakeLists.txt
+++ b/fortran/test/CMakeLists.txt
@@ -39,26 +39,11 @@ if (BUILD_SHARED_LIBS)
)
endif (BUILD_SHARED_LIBS)
-# See if the F2008 intrinsic STORAGE_SIZE and C_SIZEOF are supported. If not then
-# fall back to F2003. If F2003 not supported then use F90 for the tests.
-
-set_source_files_properties (tf_F90.f90 tf_F03.f90 tf_F08.f90 tf.f90 PROPERTIES LANGUAGE Fortran)
-if (FORTRAN_HAVE_STORAGE_SIZE AND FORTRAN_HAVE_C_SIZEOF)
- add_library (${HDF5_F90_TEST_LIB_TARGET} STATIC tf_F08.f90 tf.f90)
- if (BUILD_SHARED_LIBS)
- add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED tf_F08.f90 tf.f90)
- endif (BUILD_SHARED_LIBS)
-elseif (HDF5_ENABLE_F2003)
- add_library (${HDF5_F90_TEST_LIB_TARGET} STATIC tf_F03.f90 tf.f90)
- if (BUILD_SHARED_LIBS)
- add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED tf_F03.f90 tf.f90)
- endif (BUILD_SHARED_LIBS)
-else (FORTRAN_HAVE_STORAGE_SIZE AND FORTRAN_HAVE_C_SIZEOF)
- add_library (${HDF5_F90_TEST_LIB_TARGET} STATIC tf_F90.f90 tf.f90)
- if (BUILD_SHARED_LIBS)
- add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED tf_F90.f90 tf.f90)
- endif (BUILD_SHARED_LIBS)
-endif (FORTRAN_HAVE_STORAGE_SIZE AND FORTRAN_HAVE_C_SIZEOF)
+set_source_files_properties (tf.F90 ${HDF5_F90_BINARY_DIR}/tf_gen.F90 PROPERTIES LANGUAGE Fortran)
+add_library (${HDF5_F90_TEST_LIB_TARGET} STATIC tf.F90 ${HDF5_F90_BINARY_DIR}/tf_gen.F90)
+if (BUILD_SHARED_LIBS)
+ add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED tf.F90 ${HDF5_F90_BINARY_DIR}/tf_gen.F90)
+endif (BUILD_SHARED_LIBS)
TARGET_FORTRAN_PROPERTIES (${HDF5_F90_TEST_LIB_TARGET} STATIC " " " ")
target_link_libraries (${HDF5_F90_TEST_LIB_TARGET}
@@ -108,6 +93,40 @@ if (BUILD_SHARED_LIBS)
endif (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
+# Setup the Fortran auto-detection utilities
+# H5_test_buildiface.F90 used to generate various KIND test interfaces
+#-----------------------------------------------------------------------------
+
+add_executable (H5_test_buildiface
+ ${HDF5_F90_SRC_DIR}/test/H5_test_buildiface.F90
+ )
+
+if (WIN32 AND MSVC)
+ if (BUILD_SHARED_LIBS)
+ set_target_properties (H5_test_buildiface
+ PROPERTIES
+ COMPILE_FLAGS "/MT"
+ )
+ endif (BUILD_SHARED_LIBS)
+ set_target_properties (H5_test_buildiface
+ PROPERTIES
+ LINK_FLAGS "/SUBSYSTEM:CONSOLE"
+ )
+endif (WIN32 AND MSVC)
+set_target_properties (H5_test_buildiface PROPERTIES
+ LINKER_LANGUAGE Fortran
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
+)
+
+set (CMD $<TARGET_FILE:H5_test_buildiface>)
+add_custom_command (
+ OUTPUT ${HDF5_F90_BINARY_DIR}/tf_gen.F90
+ COMMAND ${CMD}
+ WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}
+ DEPENDS H5_test_buildiface
+)
+
+#-----------------------------------------------------------------------------
# Add Tests
#-----------------------------------------------------------------------------
@@ -234,62 +253,60 @@ if (BUILD_SHARED_LIBS)
endif (BUILD_SHARED_LIBS)
#-- Adding test for fortranlib_test_F03
-if (HDF5_ENABLE_F2003)
- add_executable (fortranlib_test_F03
+add_executable (fortranlib_test_F03
+ fortranlib_test_F03.f90
+ tH5E_F03.f90
+ tH5F_F03.f90
+ tH5L_F03.f90
+ tH5O_F03.f90
+ tH5P_F03.f90
+ tH5T_F03.F90
+ tHDF5_F03.f90
+)
+TARGET_NAMING (fortranlib_test_F03 STATIC)
+TARGET_FORTRAN_PROPERTIES (fortranlib_test_F03 STATIC " " " ")
+target_link_libraries (fortranlib_test_F03
+ ${HDF5_F90_TEST_LIB_TARGET}
+ ${HDF5_F90_LIB_TARGET}
+ ${HDF5_LIB_TARGET}
+)
+if (WIN32 AND MSVC)
+ target_link_libraries (fortranlib_test_F03 "ws2_32.lib")
+endif (WIN32 AND MSVC)
+target_include_directories (fortranlib_test_F03 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
+set_target_properties (fortranlib_test_F03 PROPERTIES
+ LINKER_LANGUAGE Fortran
+ FOLDER test/fortran
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
+)
+if (BUILD_SHARED_LIBS)
+ add_executable (fortranlib_test_F03-shared
fortranlib_test_F03.f90
tH5E_F03.f90
tH5F_F03.f90
tH5L_F03.f90
tH5O_F03.f90
tH5P_F03.f90
- tH5T_F03.f90
+ tH5T_F03.F90
tHDF5_F03.f90
)
- TARGET_NAMING (fortranlib_test_F03 STATIC)
- TARGET_FORTRAN_PROPERTIES (fortranlib_test_F03 STATIC " " " ")
- target_link_libraries (fortranlib_test_F03
- ${HDF5_F90_TEST_LIB_TARGET}
- ${HDF5_F90_LIB_TARGET}
- ${HDF5_LIB_TARGET}
+ TARGET_NAMING (fortranlib_test_F03-shared SHARED)
+ TARGET_FORTRAN_PROPERTIES (fortranlib_test_F03-shared SHARED " " " ")
+ target_link_libraries (fortranlib_test_F03-shared
+ ${HDF5_F90_TEST_LIBSH_TARGET}
+ ${HDF5_F90_LIBSH_TARGET}
+ ${HDF5_LIBSH_TARGET}
)
if (WIN32 AND MSVC)
- target_link_libraries (fortranlib_test_F03 "ws2_32.lib")
+ target_link_libraries (fortranlib_test_F03-shared "ws2_32.lib")
endif (WIN32 AND MSVC)
- target_include_directories (fortranlib_test_F03 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
- set_target_properties (fortranlib_test_F03 PROPERTIES
+ target_include_directories (fortranlib_test_F03-shared PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
+ set_target_properties (fortranlib_test_F03-shared PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
- )
- if (BUILD_SHARED_LIBS)
- add_executable (fortranlib_test_F03-shared
- fortranlib_test_F03.f90
- tH5E_F03.f90
- tH5F_F03.f90
- tH5L_F03.f90
- tH5O_F03.f90
- tH5P_F03.f90
- tH5T_F03.f90
- tHDF5_F03.f90
- )
- TARGET_NAMING (fortranlib_test_F03-shared SHARED)
- TARGET_FORTRAN_PROPERTIES (fortranlib_test_F03-shared SHARED " " " ")
- target_link_libraries (fortranlib_test_F03-shared
- ${HDF5_F90_TEST_LIBSH_TARGET}
- ${HDF5_F90_LIBSH_TARGET}
- ${HDF5_LIBSH_TARGET}
- )
- if (WIN32 AND MSVC)
- target_link_libraries (fortranlib_test_F03-shared "ws2_32.lib")
- endif (WIN32 AND MSVC)
- target_include_directories (fortranlib_test_F03-shared PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
- set_target_properties (fortranlib_test_F03-shared PROPERTIES
- LINKER_LANGUAGE Fortran
- FOLDER test/fortran
- Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
- )
- endif (BUILD_SHARED_LIBS)
-endif (HDF5_ENABLE_F2003)
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
+)
+endif (BUILD_SHARED_LIBS)
#-- Adding test for fflush1
add_executable (fflush1 fflush1.f90)
diff --git a/fortran/test/H5_test_buildiface.F90 b/fortran/test/H5_test_buildiface.F90
new file mode 100644
index 0000000..30687df
--- /dev/null
+++ b/fortran/test/H5_test_buildiface.F90
@@ -0,0 +1,306 @@
+!****p* Program/H5_buildiface
+!
+! NAME
+! Executable: H5_buildiface
+!
+! FILE
+! fortran/src/H5_buildiface.f90
+!
+! PURPOSE
+! This stand alone program is used at build time to generate the program
+! H5fortran_detect.f90. It cycles through all the available KIND parameters for
+! integers and reals. The appropriate program and subroutines are then generated
+! depending on which of the KIND values are found.
+!
+! NOTES
+! This program uses the Fortran 2008 intrinsic function STORAGE_SIZE or SIZEOF
+! depending on availablity.It generates code that makes use of
+! STORAGE_SIZE/SIZEOF in H5fortran_detect.f90. STORAGE_SIZE is standard
+! compliant and should always be chosen over SIZEOF.
+!
+! The availability of STORAGE_SIZE/SIZEOF is checked at configure time and the TRUE/FALSE
+! condition is set in the configure variable "FORTRAN_HAVE_STORAGE_SIZE" or
+! "FORTRAN_HAVE_SIZEOF".
+!
+! The use of C_SIZOF(X) is not used since the argument X must be an interoperable
+! data entity.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! AUTHOR
+! M. Scot Breitenfeld
+!
+!*****
+
+#include <H5config_f.inc>
+
+PROGRAM H5_test_buildiface
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+
+! These values are valid REAL KINDs (with corresponding C float) found during configure
+ H5_H5CONFIG_F_NUM_RKIND
+ H5_H5CONFIG_F_RKIND
+! These values are valid INTEGER KINDs (with corresponding C integer) found during configure
+ H5_H5CONFIG_F_NUM_IKIND
+ H5_H5CONFIG_F_IKIND
+
+ INTEGER :: i, j, k
+ INTEGER :: ji, jr, jd
+#ifdef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+ REAL(KIND=C_LONG_DOUBLE) :: c_longdble
+#endif
+ REAL(KIND=C_DOUBLE) :: c_dble
+ REAL(KIND=C_FLOAT) :: c_flt
+ INTEGER :: sizeof_var
+ CHARACTER(LEN=2) :: chr2
+! subroutine rank of array being passed in
+ CHARACTER(LEN=2), DIMENSION(1:8), PARAMETER :: chr_rank=(/"_0","_1","_2","_3","_4","_5","_6","_7"/)
+! rank definitions
+ CHARACTER(LEN=70), DIMENSION(1:8), PARAMETER :: rank_dim_line=(/ &
+ ' ', &
+ ', DIMENSION(dims(1)) ', &
+ ', DIMENSION(dims(1),dims(2)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7))' &
+ /)
+! pointer to the buffer
+ CHARACTER(LEN=37), DIMENSION(1:8), PARAMETER :: f_ptr_line=(/ &
+ ' f_ptr = C_LOC(buf) ', &
+ ' f_ptr = C_LOC(buf(1)) ', &
+ ' f_ptr = C_LOC(buf(1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1,1))' &
+ /)
+
+! Generate Fortran Check routines for the tests KIND interfaces.
+
+ OPEN(11,FILE='tf_gen.F90')
+ WRITE(11,'(40(A,/))') &
+'!****h* ROBODoc/TH5_MISC_gen.F90',&
+'!',&
+'! NAME',&
+'! TH5_MISC_gen',&
+'! ',&
+'! PURPOSE',&
+'! This module is generated at build by H5_test_buildiface.F90 to handle checking ',&
+'! in the tests all the detected KINDs.',&
+'!',&
+'! COPYRIGHT',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'! Copyright by The HDF Group. *',&
+'! All rights reserved. *',&
+'! *',&
+'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
+'! terms governing use, modification, and redistribution, is contained in *',&
+'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
+'! of the source code distribution tree; Copyright.html can be found at the *',&
+'! root level of an installed copy of the electronic HDF5 document set and *',&
+'! is linked from the top-level documents page. It can also be found at *',&
+'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
+'! access to either file, you may request a copy from help@hdfgroup.org. *',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'!',&
+'! AUTHOR',&
+'! H5_test_buildiface.F90',&
+'!',&
+'!*****'
+
+ WRITE(11,'(a)') "MODULE TH5_MISC_gen"
+
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+
+! Interfaces for validating REALs, INTEGERs, CHARACTERs, LOGICALs
+
+ WRITE(11,'(A)') ' INTERFACE verify'
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE verify_real_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ DO i = 1, num_ikinds
+ j = ikind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE verify_integer_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " MODULE PROCEDURE verify_character"
+ WRITE(11,'(A)') " MODULE PROCEDURE verify_logical"
+ WRITE(11,'(A)') " END INTERFACE"
+
+ WRITE(11,'(A)') ' INTERFACE check_real_eq'
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ WRITE(11,'(A)') " MODULE PROCEDURE real_eq_kind_"//TRIM(ADJUSTL(chr2))
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+ WRITE(11,'(A)') 'CONTAINS'
+
+! ***************************
+! VALIDATE INTEGERS
+! ***************************
+ DO i = 1, num_ikinds
+ k = ikind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_integer_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE verify_integer_kind_'//TRIM(ADJUSTL(chr2))//'(string,value,correct_value,total_error)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*) :: string'
+ WRITE(11,'(A)') ' INTEGER(KIND='//TRIM(ADJUSTL(chr2))//') :: value, correct_value'
+ WRITE(11,'(A)') ' INTEGER :: total_error'
+ WRITE(11,'(A)') ' IF (value .NE. correct_value) THEN'
+ WRITE(11,'(A)') ' total_error=total_error+1'
+ WRITE(11,'(A)') ' WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string'
+ WRITE(11,'(A)') ' ENDIF'
+ WRITE(11,'(A)') ' END SUBROUTINE verify_integer_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! ***************************
+! VALIDATE REALS
+! ***************************
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_real_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE verify_real_kind_'//TRIM(ADJUSTL(chr2))//'(string,value,correct_value,total_error)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*) :: string'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//') :: value, correct_value'
+ WRITE(11,'(A)') ' INTEGER :: total_error'
+ WRITE(11,'(A)') ' IF (.NOT.real_eq_kind_'//TRIM(ADJUSTL(chr2))//'( value, correct_value) ) THEN'
+ WRITE(11,'(A)') ' total_error=total_error+1'
+ WRITE(11,'(A)') ' WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string'
+ WRITE(11,'(A)') ' ENDIF'
+ WRITE(11,'(A)') ' END SUBROUTINE verify_real_kind_'//TRIM(ADJUSTL(chr2))
+
+
+! ***********************************
+! TEST IF TWO REAL NUMBERS ARE EQUAL
+! ***********************************
+
+! [1] The test performed is
+!
+! ABS( x - y ) < ( ULP * SPACING( MAX(ABS(x),ABS(y)) ) )
+!
+! The numbers are considered equal if true
+!
+! The intrinsic function SPACING(x) returns the absolute spacing of numbers
+! near the value of x,
+!
+! { EXPONENT(x)-DIGITS(x)
+! { 2.0 for x /= 0
+! SPACING(x) = {
+! {
+! { TINY(x) for x == 0
+!
+! The ULP optional argument scales the comparison:
+!
+! Unit of data precision. The acronym stands for "unit in
+! the last place," the smallest possible increment or decrement
+! that can be made using a machine's floating point arithmetic.
+! A 0.5 ulp maximum error is the best you could hope for, since
+! this corresponds to always rounding to the nearest representable
+! floating-point number. Value must be positive - if a negative
+! value is supplied, the absolute value is used.
+! If not specified, the default value is 1.
+!
+! James Van Buskirk and James Giles suggested this method for floating
+! point comparisons in the comp.lang.fortran newsgroup.
+!
+! Reference: [1] Paul van Delst, paul.vandelst@ssec.wisc.edu
+
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: real_eq_kind_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') '!DEC$endif'
+ WRITE(11,'(A)') ' LOGICAL FUNCTION real_eq_kind_'//TRIM(ADJUSTL(chr2))//'(a,b,ulp)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT (in):: a,b'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//') :: Rel'
+ WRITE(11,'(A)') ' INTEGER, OPTIONAL, INTENT( IN ) :: ulp'
+ WRITE(11,'(A)') ' IF ( PRESENT( ulp ) ) Rel = REAL( ABS(ulp), '//TRIM(ADJUSTL(chr2))//')'
+ WRITE(11,'(A)') ' Rel = 1.0_'//TRIM(ADJUSTL(chr2))
+ WRITE(11,'(A)') ' real_eq_kind_'//TRIM(ADJUSTL(chr2))//' = ABS( a - b ) < ( Rel * SPACING( MAX(ABS(a),ABS(b)) ) )'
+ WRITE(11,'(A)') ' END FUNCTION real_eq_kind_'//TRIM(ADJUSTL(chr2))
+ ENDDO
+
+! ***************************
+! VALIDATE CHARACTER STRINGS
+! ***************************
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_character'
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE verify_character(string,value,correct_value,total_error)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' CHARACTER*(*) :: string'
+ WRITE(11,'(A)') ' CHARACTER*(*) :: value, correct_value'
+ WRITE(11,'(A)') ' INTEGER :: total_error'
+ WRITE(11,'(A)') ' IF (TRIM(value) .NE. TRIM(correct_value)) THEN'
+ WRITE(11,'(A)') ' total_error = total_error + 1'
+ WRITE(11,'(A)') ' WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string'
+ WRITE(11,'(A)') ' ENDIF'
+ WRITE(11,'(A)') ' END SUBROUTINE verify_character'
+
+! ***************************
+! VALIDATE LOGICAL
+! ***************************
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_logical'
+ WRITE(11,'(A)') '!DEC$endif'
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE verify_logical(string,value,correct_value,total_error)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*) :: string'
+ WRITE(11,'(A)') ' LOGICAL :: value, correct_value'
+ WRITE(11,'(A)') ' INTEGER :: total_error'
+ WRITE(11,'(A)') ' IF (value .NEQV. correct_value) THEN'
+ WRITE(11,'(A)') ' total_error = total_error + 1'
+ WRITE(11,'(A)') ' WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string'
+ WRITE(11,'(A)') ' ENDIF'
+
+ WRITE(11,'(A)') ' END SUBROUTINE verify_logical'
+
+ WRITE(11,'(A)') "END MODULE TH5_MISC_gen"
+
+ CLOSE(11)
+
+END PROGRAM H5_test_buildiface
+
+
+
diff --git a/fortran/test/Makefile.am b/fortran/test/Makefile.am
index 735ab7a..608b1e9 100644
--- a/fortran/test/Makefile.am
+++ b/fortran/test/Makefile.am
@@ -36,40 +36,12 @@ else
AM_LDFLAGS+=-static
endif
-# Check if the compiler supports the Fortran 2003 standard
-# which should include the intrinsic module iso_c_binding
-if FORTRAN_2003_CONDITIONAL_F
- ff_PREFIX = F03
-else
- ff_PREFIX = F90
-endif
-
# Our main targets, the tests themselves
-TEST_PROG=fortranlib_test fflush1 fflush2 fortranlib_test_1_8
-
-if FORTRAN_2003_CONDITIONAL_F
- TEST_PROG += fortranlib_test_F03
-endif
+TEST_PROG=fortranlib_test fflush1 fflush2 fortranlib_test_1_8 fortranlib_test_F03
check_PROGRAMS=$(TEST_PROG)
-if FORTRAN_HAVE_STORAGE_SIZE
-if FORTRAN_HAVE_C_SIZEOF
- libh5test_fortran_la_SOURCES = tf_F08.f90
-else
- libh5test_fortran_la_SOURCES = tf_F03.f90
-endif
-else
-if FORTRAN_2003_CONDITIONAL_F
- libh5test_fortran_la_SOURCES = tf_F03.f90
-else
- libh5test_fortran_la_SOURCES = tf_F90.f90
-endif
-endif
-
-# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be
-# compiled first
-libh5test_fortran_la_SOURCES += tf.f90 t.c
+libh5test_fortran_la_SOURCES = tf_gen.F90 tf.F90 t.c
# Source files are used for both the library and fortranlib_test.
# Automake will complain about this without the following workaround.
@@ -79,13 +51,11 @@ fortranlib_test_CFLAGS=$(AM_CFLAGS)
fortranlib_test_SOURCES = tH5F.f90 tH5D.f90 tH5R.f90 tH5S.f90 tH5T.f90 tH5VL.f90 tH5Z.f90 \
tH5Sselect.f90 tH5P.f90 tH5A.f90 tH5I.f90 tH5G.f90 tH5E.f90 tHDF5.f90 fortranlib_test.f90
-fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90\
+fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90 \
fortranlib_test_1_8.f90
-if FORTRAN_2003_CONDITIONAL_F
- fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \
- tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.f90 tHDF5_F03.f90 fortranlib_test_F03.f90
-endif
+fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \
+ tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.F90 tHDF5_F03.f90 fortranlib_test_F03.f90
fflush1_SOURCES=fflush1.f90
@@ -106,13 +76,32 @@ maintainer-clean-local: clean-local
distclean-local: clean-local
clean-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(RM) *.$(F9XMODEXT); \
+ $(RM) *.$(F9XMODEXT) tf_gen.F90; \
fi
# Mark this directory as part of the Fortran API (this affects output
# from tests in conclude.am)
FORTRAN_API=yes
+# helper program we need to build.
+noinst_PROGRAMS = H5_test_buildiface
+
+# H5_test_buildiface.F90 generates all the test APIs that have a KIND type associated
+# with them.
+
+tf_gen.F90: H5_test_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5_test_buildiface$(EXEEXT)
+
+# H5_test_buildiface.F90 is included in the distribution, and Automake knows
+# how to compile a fortran program given its sources.
+
+H5_test_buildiface_SOURCES = H5_test_buildiface.F90
+
+# The build of the H5_test_buildiface does depend on any libraries, so set it
+# to nothing.
+
+H5_test_buildiface_LDADD =
+
# fflush2 depends on files created by fflush1
fflush2.chkexe_: fflush1.chkexe_
diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in
index 4ec1ad5..4e9bbd6 100644
--- a/fortran/test/Makefile.in
+++ b/fortran/test/Makefile.in
@@ -14,6 +14,7 @@
@SET_MAKE@
+
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
@@ -87,9 +88,9 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
# want to build a shared C library and a static Fortran library. If so,
# pass the -static flag to the library linker.
@FORTRAN_SHARED_CONDITIONAL_FALSE@am__append_1 = -static
-@FORTRAN_2003_CONDITIONAL_F_TRUE@am__append_2 = fortranlib_test_F03
-check_PROGRAMS = $(am__EXEEXT_2)
-TESTS = $(am__EXEEXT_2)
+check_PROGRAMS = $(am__EXEEXT_1)
+noinst_PROGRAMS = H5_test_buildiface$(EXEEXT)
+TESTS = $(am__EXEEXT_1)
subdir = fortran/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
@@ -97,34 +98,25 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
libh5test_fortran_la_LIBADD =
-am__libh5test_fortran_la_SOURCES_DIST = tf_F90.f90 tf.f90 t.c \
- tf_F03.f90 tf_F08.f90
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@am_libh5test_fortran_la_OBJECTS = tf_F90.lo \
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ tf.lo \
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ t.lo
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@am_libh5test_fortran_la_OBJECTS = tf_F03.lo \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ tf.lo \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ t.lo
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@am_libh5test_fortran_la_OBJECTS = tf_F03.lo \
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ tf.lo \
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ t.lo
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@am_libh5test_fortran_la_OBJECTS = tf_F08.lo \
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ tf.lo \
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ t.lo
+am_libh5test_fortran_la_OBJECTS = tf_gen.lo tf.lo t.lo
libh5test_fortran_la_OBJECTS = $(am_libh5test_fortran_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
-@FORTRAN_2003_CONDITIONAL_F_TRUE@am__EXEEXT_1 = \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ fortranlib_test_F03$(EXEEXT)
-am__EXEEXT_2 = fortranlib_test$(EXEEXT) fflush1$(EXEEXT) \
- fflush2$(EXEEXT) fortranlib_test_1_8$(EXEEXT) $(am__EXEEXT_1)
+am__EXEEXT_1 = fortranlib_test$(EXEEXT) fflush1$(EXEEXT) \
+ fflush2$(EXEEXT) fortranlib_test_1_8$(EXEEXT) \
+ fortranlib_test_F03$(EXEEXT)
+PROGRAMS = $(noinst_PROGRAMS)
+am_H5_test_buildiface_OBJECTS = H5_test_buildiface.$(OBJEXT)
+H5_test_buildiface_OBJECTS = $(am_H5_test_buildiface_OBJECTS)
+H5_test_buildiface_DEPENDENCIES =
am_fflush1_OBJECTS = fflush1.$(OBJEXT)
fflush1_OBJECTS = $(am_fflush1_OBJECTS)
fflush1_LDADD = $(LDADD)
@@ -159,18 +151,10 @@ fortranlib_test_1_8_OBJECTS = $(am_fortranlib_test_1_8_OBJECTS)
fortranlib_test_1_8_LDADD = $(LDADD)
fortranlib_test_1_8_DEPENDENCIES = libh5test_fortran.la $(LIBH5TEST) \
$(LIBH5F) $(LIBHDF5)
-am__fortranlib_test_F03_SOURCES_DIST = tH5E_F03.f90 tH5F_F03.f90 \
- tH5L_F03.f90 tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.f90 \
- tHDF5_F03.f90 fortranlib_test_F03.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@am_fortranlib_test_F03_OBJECTS = \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5E_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5F_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5L_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5O_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5P_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5T_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tHDF5_F03.$(OBJEXT) \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ fortranlib_test_F03.$(OBJEXT)
+am_fortranlib_test_F03_OBJECTS = tH5E_F03.$(OBJEXT) tH5F_F03.$(OBJEXT) \
+ tH5L_F03.$(OBJEXT) tH5O_F03.$(OBJEXT) tH5P_F03.$(OBJEXT) \
+ tH5T_F03.$(OBJEXT) tHDF5_F03.$(OBJEXT) \
+ fortranlib_test_F03.$(OBJEXT)
fortranlib_test_F03_OBJECTS = $(am_fortranlib_test_F03_OBJECTS)
fortranlib_test_F03_LDADD = $(LDADD)
fortranlib_test_F03_DEPENDENCIES = libh5test_fortran.la $(LIBH5TEST) \
@@ -187,10 +171,28 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
+PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
+LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(FC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_FCFLAGS) $(FCFLAGS)
+AM_V_PPFC = $(am__v_PPFC_@AM_V@)
+am__v_PPFC_ = $(am__v_PPFC_@AM_DEFAULT_V@)
+am__v_PPFC_0 = @echo " PPFC " $@;
+am__v_PPFC_1 =
+FCLD = $(FC)
+FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_FCLD = $(am__v_FCLD_@AM_V@)
+am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
+am__v_FCLD_0 = @echo " FCLD " $@;
+am__v_FCLD_1 =
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
@@ -216,21 +218,14 @@ AM_V_FC = $(am__v_FC_@AM_V@)
am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
am__v_FC_0 = @echo " FC " $@;
am__v_FC_1 =
-FCLD = $(FC)
-FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_FCLD = $(am__v_FCLD_@AM_V@)
-am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
-am__v_FCLD_0 = @echo " FCLD " $@;
-am__v_FCLD_1 =
-SOURCES = $(libh5test_fortran_la_SOURCES) $(fflush1_SOURCES) \
+SOURCES = $(libh5test_fortran_la_SOURCES) \
+ $(H5_test_buildiface_SOURCES) $(fflush1_SOURCES) \
+ $(fflush2_SOURCES) $(fortranlib_test_SOURCES) \
+ $(fortranlib_test_1_8_SOURCES) $(fortranlib_test_F03_SOURCES)
+DIST_SOURCES = $(libh5test_fortran_la_SOURCES) \
+ $(H5_test_buildiface_SOURCES) $(fflush1_SOURCES) \
$(fflush2_SOURCES) $(fortranlib_test_SOURCES) \
$(fortranlib_test_1_8_SOURCES) $(fortranlib_test_F03_SOURCES)
-DIST_SOURCES = $(am__libh5test_fortran_la_SOURCES_DIST) \
- $(fflush1_SOURCES) $(fflush2_SOURCES) \
- $(fortranlib_test_SOURCES) $(fortranlib_test_1_8_SOURCES) \
- $(am__fortranlib_test_F03_SOURCES_DIST)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -522,14 +517,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -539,13 +541,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -587,6 +588,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
@@ -732,39 +745,10 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2 *.h5 *.raw
# The Fortran test library
noinst_LTLIBRARIES = libh5test_fortran.la
-@FORTRAN_2003_CONDITIONAL_F_FALSE@ff_PREFIX = F90
-
-# Check if the compiler supports the Fortran 2003 standard
-# which should include the intrinsic module iso_c_binding
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ff_PREFIX = F03
# Our main targets, the tests themselves
-TEST_PROG = fortranlib_test fflush1 fflush2 fortranlib_test_1_8 \
- $(am__append_2)
-
-# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be
-# compiled first
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@libh5test_fortran_la_SOURCES = tf_F90.f90 \
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ tf.f90 \
-@FORTRAN_2003_CONDITIONAL_F_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ t.c
-
-# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be
-# compiled first
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@libh5test_fortran_la_SOURCES = tf_F03.f90 \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ tf.f90 \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_FALSE@ t.c
-
-# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be
-# compiled first
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@libh5test_fortran_la_SOURCES = tf_F03.f90 \
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ tf.f90 \
-@FORTRAN_HAVE_C_SIZEOF_FALSE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ t.c
-
-# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be
-# compiled first
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@libh5test_fortran_la_SOURCES = tf_F08.f90 \
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ tf.f90 \
-@FORTRAN_HAVE_C_SIZEOF_TRUE@@FORTRAN_HAVE_STORAGE_SIZE_TRUE@ t.c
+TEST_PROG = fortranlib_test fflush1 fflush2 fortranlib_test_1_8 fortranlib_test_F03
+libh5test_fortran_la_SOURCES = tf_gen.F90 tf.F90 t.c
# Source files are used for both the library and fortranlib_test.
# Automake will complain about this without the following workaround.
@@ -773,11 +757,11 @@ fortranlib_test_CFLAGS = $(AM_CFLAGS)
fortranlib_test_SOURCES = tH5F.f90 tH5D.f90 tH5R.f90 tH5S.f90 tH5T.f90 tH5VL.f90 tH5Z.f90 \
tH5Sselect.f90 tH5P.f90 tH5A.f90 tH5I.f90 tH5G.f90 tH5E.f90 tHDF5.f90 fortranlib_test.f90
-fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90\
+fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90 \
fortranlib_test_1_8.f90
-@FORTRAN_2003_CONDITIONAL_F_TRUE@fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \
-@FORTRAN_2003_CONDITIONAL_F_TRUE@ tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.f90 tHDF5_F03.f90 fortranlib_test_F03.f90
+fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \
+ tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.F90 tHDF5_F03.f90 fortranlib_test_F03.f90
fflush1_SOURCES = fflush1.f90
fflush2_SOURCES = fflush2.f90
@@ -790,6 +774,14 @@ MOSTLYCLEANFILES = *.tmp
# from tests in conclude.am)
FORTRAN_API = yes
+# H5_test_buildiface.F90 is included in the distribution, and Automake knows
+# how to compile a fortran program given its sources.
+H5_test_buildiface_SOURCES = H5_test_buildiface.F90
+
+# The build of the H5_test_buildiface does depend on any libraries, so set it
+# to nothing.
+H5_test_buildiface_LDADD =
+
# Automake needs to be taught how to build lib, progs, and tests targets.
# These will be filled in automatically for the most part (e.g.,
# lib_LIBRARIES are built for lib target), but EXTRA_LIB, EXTRA_PROG, and
@@ -812,7 +804,7 @@ TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
all: all-am
.SUFFIXES:
-.SUFFIXES: .c .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
+.SUFFIXES: .F90 .c .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence.am $(top_srcdir)/config/conclude.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -868,6 +860,19 @@ clean-checkPROGRAMS:
echo " rm -f" $$list; \
rm -f $$list
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+
+H5_test_buildiface$(EXEEXT): $(H5_test_buildiface_OBJECTS) $(H5_test_buildiface_DEPENDENCIES) $(EXTRA_H5_test_buildiface_DEPENDENCIES)
+ @rm -f H5_test_buildiface$(EXEEXT)
+ $(AM_V_FCLD)$(FCLINK) $(H5_test_buildiface_OBJECTS) $(H5_test_buildiface_LDADD) $(LIBS)
+
fflush1$(EXEEXT): $(fflush1_OBJECTS) $(fflush1_DEPENDENCIES) $(EXTRA_fflush1_DEPENDENCIES)
@rm -f fflush1$(EXEEXT)
$(AM_V_FCLD)$(FCLINK) $(fflush1_OBJECTS) $(fflush1_LDADD) $(LIBS)
@@ -896,6 +901,15 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t.Plo@am__quote@
+.F90.o:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ $<
+
+.F90.obj:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.F90.lo:
+ $(AM_V_PPFC)$(LTPPFCCOMPILE) -c -o $@ $<
+
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@@ -1288,7 +1302,7 @@ check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
-all-am: Makefile $(LTLIBRARIES) all-local
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) all-local
installdirs:
install: install-am
install-exec: install-exec-am
@@ -1327,7 +1341,7 @@ maintainer-clean-generic:
clean: clean-am
clean-am: clean-checkPROGRAMS clean-generic clean-libtool clean-local \
- clean-noinstLTLIBRARIES mostlyclean-am
+ clean-noinstLTLIBRARIES clean-noinstPROGRAMS mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
@@ -1400,19 +1414,19 @@ uninstall-am:
.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-TESTS \
check-am clean clean-checkPROGRAMS clean-generic clean-libtool \
- clean-local clean-noinstLTLIBRARIES cscopelist-am ctags \
- ctags-am distclean distclean-compile distclean-generic \
- distclean-libtool distclean-local distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic maintainer-clean-local mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- mostlyclean-local pdf pdf-am ps ps-am recheck tags tags-am \
- uninstall uninstall-am
+ clean-local clean-noinstLTLIBRARIES clean-noinstPROGRAMS \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-local \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-local mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am recheck tags tags-am uninstall uninstall-am
#
@@ -1453,9 +1467,15 @@ maintainer-clean-local: clean-local
distclean-local: clean-local
clean-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(RM) *.$(F9XMODEXT); \
+ $(RM) *.$(F9XMODEXT) tf_gen.F90; \
fi
+# H5_test_buildiface.F90 generates all the test APIs that have a KIND type associated
+# with them.
+
+tf_gen.F90: H5_test_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5_test_buildiface$(EXEEXT)
+
# fflush2 depends on files created by fflush1
fflush2.chkexe_: fflush1.chkexe_
diff --git a/fortran/test/fflush2.f90 b/fortran/test/fflush2.f90
index 04ce439..4230832 100644
--- a/fortran/test/fflush2.f90
+++ b/fortran/test/fflush2.f90
@@ -27,152 +27,151 @@
!
!*****
- PROGRAM FFLUSH2EXAMPLE
-
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
- IMPLICIT NONE
-
- CHARACTER(LEN=7), PARAMETER :: filename = "fflush1"
- CHARACTER(LEN=80) :: fix_filename
-
- !
- !data space rank and dimensions
- !
- INTEGER, PARAMETER :: NX = 4
- INTEGER, PARAMETER :: NY = 5
-
- !
- ! File identifiers
- !
- INTEGER(HID_T) :: file_id
-
- !
- ! Group identifier
- !
- INTEGER(HID_T) :: gid
-
- !
- ! dataset identifier
- !
- INTEGER(HID_T) :: dset_id
-
-
- !
- ! data type identifier
- !
- INTEGER(HID_T) :: dtype_id
-
- !
- !flag to check operation success
- !
- INTEGER :: error
-
- !
- !general purpose integer
- !
- INTEGER :: i, j, total_error = 0
-
- !
- !data buffers
- !
- INTEGER, DIMENSION(NX,NY) :: data_out
- INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
- data_dims(1) = NX
- data_dims(2) = NY
-
- !
- !Initialize FORTRAN predifined datatypes
- !
- CALL h5open_f(error)
- CALL check("h5open_f",error,total_error)
-
- !
- !Open the file.
- !
- CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
- if (error .ne. 0) then
- write(*,*) "Cannot modify filename"
- CALL h5_exit_f (1)
- endif
- CALL h5fopen_f(fix_filename, H5F_ACC_RDONLY_F, file_id, error)
- CALL check("h5fopen_f",error,total_error)
-
- !
- !Open the dataset
- !
- CALL h5dopen_f(file_id, "/D", dset_id, error)
- CALL check("h5dopen_f",error,total_error)
-
- !
- !Get dataset's data type.
- !
- CALL h5dget_type_f(dset_id, dtype_id, error)
- CALL check("h5dget_type_f",error,total_error)
-
- !
- !Read the dataset.
- !
- CALL h5dread_f(dset_id, dtype_id, data_out, data_dims, error)
- CALL check("h5dread_f",error,total_error)
-
- !
- !Print the dataset.
- !
- do i = 1, NX
- write(*,*) (data_out(i,j), j = 1, NY)
- end do
-!
-!result of the print statement
-!
-! 0, 1, 2, 3, 4
-! 1, 2, 3, 4, 5
-! 2, 3, 4, 5, 6
-! 3, 4, 5, 6, 7
-
- !
- !Open the group.
- !
- CALL h5gopen_f(file_id, "G", gid, error)
- CALL check("h5gopen_f",error,total_error)
-
- !
- !In case error happens, exit.
- !
- IF (error == -1) CALL h5_exit_f (1)
- !
- !Close the datatype
- !
- CALL h5tclose_f(dtype_id, error)
- CALL check("h5tclose_f",error,total_error)
-
- !
- !Close the dataset.
- !
- CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f",error,total_error)
-
- !
- !Close the group.
- !
- CALL h5gclose_f(gid, error)
- CALL check("h5gclose_f",error,total_error)
-
- !
- !Close the file.
- !
- CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f",error,total_error)
-
- !
- !Close FORTRAN predifined datatypes
- !
- CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
- CALL h5close_f(error)
- CALL check("h5close_types_f",error,total_error)
-
- ! if errors detected, exit with non-zero code.
- IF (total_error .ne. 0) CALL h5_exit_f (1)
-
- END PROGRAM FFLUSH2EXAMPLE
+PROGRAM FFLUSH2EXAMPLE
+
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+
+ IMPLICIT NONE
+
+ CHARACTER(LEN=7), PARAMETER :: filename = "fflush1"
+ CHARACTER(LEN=80) :: fix_filename
+
+ !
+ !data space rank and dimensions
+ !
+ INTEGER, PARAMETER :: NX = 4
+ INTEGER, PARAMETER :: NY = 5
+
+ !
+ ! File identifiers
+ !
+ INTEGER(HID_T) :: file_id
+
+ !
+ ! Group identifier
+ !
+ INTEGER(HID_T) :: gid
+
+ !
+ ! dataset identifier
+ !
+ INTEGER(HID_T) :: dset_id
+
+
+ !
+ ! data type identifier
+ !
+ INTEGER(HID_T) :: dtype_id
+
+ !
+ !flag to check operation success
+ !
+ INTEGER :: error
+
+ !
+ !general purpose integer
+ !
+ INTEGER :: i, j, total_error = 0
+
+ !
+ !data buffers
+ !
+ INTEGER, DIMENSION(NX,NY) :: data_out
+ INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
+ data_dims(1) = NX
+ data_dims(2) = NY
+
+ !
+ !Initialize FORTRAN predifined datatypes
+ !
+ CALL h5open_f(error)
+ CALL check("h5open_f",error,total_error)
+
+ !
+ !Open the file.
+ !
+ CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
+ IF (error .NE. 0) THEN
+ WRITE(*,*) "Cannot modify filename"
+ CALL h5_exit_f (1)
+ ENDIF
+ CALL h5fopen_f(fix_filename, H5F_ACC_RDONLY_F, file_id, error)
+ CALL check("h5fopen_f",error,total_error)
+
+ !
+ !Open the dataset
+ !
+ CALL h5dopen_f(file_id, "/D", dset_id, error)
+ CALL check("h5dopen_f",error,total_error)
+
+ !
+ !Get dataset's data type.
+ !
+ CALL h5dget_type_f(dset_id, dtype_id, error)
+ CALL check("h5dget_type_f",error,total_error)
+ !
+ !Read the dataset.
+ !
+ CALL h5dread_f(dset_id, dtype_id, data_out, data_dims, error)
+ CALL check("h5dread_f",error,total_error)
+
+ !
+ !Print the dataset.
+ !
+ DO i = 1, NX
+ WRITE(*,*) (data_out(i,j), j = 1, NY)
+ END DO
+ !
+ !result of the print statement
+ !
+ ! 0, 1, 2, 3, 4
+ ! 1, 2, 3, 4, 5
+ ! 2, 3, 4, 5, 6
+ ! 3, 4, 5, 6, 7
+
+ !
+ !Open the group.
+ !
+ CALL h5gopen_f(file_id, "G", gid, error)
+ CALL check("h5gopen_f",error,total_error)
+
+ !
+ !In case error happens, exit.
+ !
+ IF (error == -1) CALL h5_exit_f (1)
+ !
+ !Close the datatype
+ !
+ CALL h5tclose_f(dtype_id, error)
+ CALL check("h5tclose_f",error,total_error)
+
+ !
+ !Close the dataset.
+ !
+ CALL h5dclose_f(dset_id, error)
+ CALL check("h5dclose_f",error,total_error)
+
+ !
+ !Close the group.
+ !
+ CALL h5gclose_f(gid, error)
+ CALL check("h5gclose_f",error,total_error)
+
+ !
+ !Close the file.
+ !
+ CALL h5fclose_f(file_id, error)
+ CALL check("h5fclose_f",error,total_error)
+
+ !
+ !Close FORTRAN predifined datatypes
+ !
+ CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
+ CALL h5close_f(error)
+ CALL check("h5close_types_f",error,total_error)
+
+ ! if errors detected, exit with non-zero code.
+ IF (total_error .ne. 0) CALL h5_exit_f (1)
+
+END PROGRAM FFLUSH2EXAMPLE
diff --git a/fortran/test/tH5A.f90 b/fortran/test/tH5A.f90
index e3b3b2a..5b814fa 100644
--- a/fortran/test/tH5A.f90
+++ b/fortran/test/tH5A.f90
@@ -29,6 +29,10 @@
!*****
MODULE TH5A
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE attribute_test(cleanup, total_error)
@@ -36,9 +40,6 @@ CONTAINS
! h5acreate_f, h5awrite_f, h5aclose_f,h5aread_f, h5aopen_name_f,
! h5aget_name_f,h5aget_space_f, h5aget_type_f,
!
-
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -309,7 +310,7 @@ CONTAINS
!
CALL h5aget_storage_size_f(attr_id, attr_storage, error)
CALL check("h5aget_storage_size_f",error,total_error)
-! CALL VERIFY("h5aget_storage_size_f",attr_storage,*SizeOf(attr_storage),total_error)
+! CALL verify("h5aget_storage_size_f",attr_storage,*SizeOf(attr_storage),total_error)
CALL h5aget_storage_size_f(attr2_id, attr_storage, error)
CALL check("h5aget_storage_size_f",error,total_error)
! CALL verify("h5aget_storage_size_f",attr_storage,1,total_error)
@@ -517,21 +518,15 @@ CONTAINS
data_dims(1) = 1
CALL h5aread_f(attr3_id, H5T_NATIVE_DOUBLE, aread_double_data, data_dims, error)
CALL check("h5aread_f",error,total_error)
+ CALL VERIFY("Read back double attrbute is wrong", aread_double_data(1),3.459_Fortran_DOUBLE,total_error)
- IF( .NOT.dreal_eq( REAL(aread_double_data(1),dp), 3.459_dp) )THEN
- WRITE(*,*) "Read back double attrbute is wrong", aread_double_data(1)
- total_error = total_error + 1
- ENDIF
!
!read the real attribute data back to memory
!
data_dims(1) = 1
CALL h5aread_f(attr4_id, H5T_NATIVE_REAL, aread_real_data, data_dims, error)
CALL check("h5aread_f",error,total_error)
- IF( .NOT.dreal_eq( REAL(aread_real_data(1),dp), 4.0_dp) )THEN
- WRITE(*,*) "Read back real attrbute is wrong", aread_real_data(1)
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY("Read back real attrbute is wrong", aread_real_data(1),4.0,total_error)
!
!read the Integer attribute data back to memory
!
diff --git a/fortran/test/tH5A_1_8.f90 b/fortran/test/tH5A_1_8.f90
index 8e20100..c70e288 100644
--- a/fortran/test/tH5A_1_8.f90
+++ b/fortran/test/tH5A_1_8.f90
@@ -32,6 +32,10 @@
!*****
MODULE TH5A_1_8
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE attribute_test_1_8(cleanup, total_error)
@@ -41,8 +45,6 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error)
! H5Pset_shared_mesg_index_f
!
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -199,8 +201,6 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
! Needed for get_info_by_name
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
@@ -350,7 +350,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
! Verify creation order of attribute
- CALL verifyLogical("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
+ CALL verify("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
CALL verify("H5Aget_info_by_name_f", corder, u, total_error)
@@ -363,7 +363,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
! Verify creation order of attribute
- CALL verifyLogical("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
+ CALL verify("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
CALL verify("H5Aget_info_by_name_f", corder, u, total_error)
END DO
@@ -389,8 +389,7 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error)
!** Tests storing attribute with "null" dataspace
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
+
IMPLICIT NONE
@@ -473,22 +472,22 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error)
CALL H5Sextent_equal_f(attr_sid, null_sid, equal, error)
CALL check("H5Sextent_equal_f",error,total_error)
- CALL Verifylogical("H5Sextent_equal_f",equal,.TRUE.,total_error)
+ CALL verify("H5Sextent_equal_f",equal,.TRUE.,total_error)
CALL h5aget_storage_size_f(attr, storage_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
- CALL VERIFY("h5aget_storage_size_f",INT(storage_size),0,total_error)
+ CALL verify("h5aget_storage_size_f",INT(storage_size),0,total_error)
CALL h5aget_info_f(attr, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f", error, total_error)
! Check the attribute's information
- CALL VERIFY("h5aget_info_f.corder",corder,0,total_error)
+ CALL verify("h5aget_info_f.corder",corder,0,total_error)
- CALL VERIFY("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
CALL h5aget_storage_size_f(attr, storage_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
- CALL VERIFY("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error)
+ CALL verify("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error)
CALL h5aclose_f(attr,error)
CALL check("h5aclose_f",error,total_error)
@@ -520,9 +519,6 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(SIZE_T), PARAMETER :: NAME_BUF_SIZE = 7
@@ -735,9 +731,6 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL :: new_format
@@ -859,24 +852,24 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, 0_hsize_t, &
f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
+ CALL verify("h5aget_info_by_idx_f",error,minusone,total_error)
! 2) call by passing an integer with the INT(,hsize_t) declaration
CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(0,hsize_t), &
f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
+ CALL verify("h5aget_info_by_idx_f",error,minusone,total_error)
! 3) call by passing a variable with the attribute hsize_t
CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, hzero, &
f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
+ CALL verify("h5aget_info_by_idx_f",error,minusone,total_error)
CALL h5aget_name_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
hzero, tmpname, error, size, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("h5aget_name_by_idx_f",error,minusone,total_error)
+ CALL verify("h5aget_name_by_idx_f",error,minusone,total_error)
! Create attributes, up to limit of compact form
@@ -941,9 +934,6 @@ END SUBROUTINE test_attr_info_by_idx
SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER :: error, total_error
@@ -974,7 +964,7 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
! Verify the name for new link, in increasing creation order
@@ -983,12 +973,12 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
n, tmpname, error, NAME_BUF_SIZE)
CALL check("h5aget_name_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_name_by_idx_f", INT(NAME_BUF_SIZE), 7, error)
+ CALL verify("h5aget_name_by_idx_f", INT(NAME_BUF_SIZE), 7, error)
IF(attrname.NE.tmpname)THEN
error = -1
ENDIF
- CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
+ CALL verify("h5aget_name_by_idx_f",error,0,total_error)
! Don't test "native" order if there is no creation order index, since
! * there's not a good way to easily predict the attribute's order in the name
@@ -999,13 +989,13 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,0,total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
! Verify the information for new attribute, in native creation order
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, n, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
! Verify the name for new link, in increasing native order
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, &
@@ -1015,14 +1005,14 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
WRITE(*,*) "ERROR: attribute name size wrong!"
error = -1
ENDIF
- CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
+ CALL verify("h5aget_name_by_idx_f",error,0,total_error)
END IF
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, n, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,0,total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
!EP CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, &
@@ -1033,41 +1023,41 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
! 2) call by passing an integer with the INT(,hsize_t) declaration
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, INT(0,HSIZE_T), &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
! 3) call by passing a variable with the attribute hsize_t
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
!EP CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_INC_F, 0_HSIZE_T, &
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_INC_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,0,total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_INC_F, n, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_DEC_F, n, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,0,total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
!EP CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_DEC_F, 0_HSIZE_T, &
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_NAME_F, H5_ITER_DEC_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
- CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+ CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
END SUBROUTINE attr_info_by_idx_check
@@ -1082,9 +1072,6 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fcpl
@@ -1371,7 +1358,7 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
! Check size of file
!filesize = h5_get_file_size(FILENAME);
- !VERIFY(filesize, empty_filesize, "h5_get_file_size");
+ !verify(filesize, empty_filesize, "h5_get_file_size");
ENDDO
! Close dataspaces
@@ -1392,9 +1379,6 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: new_format
@@ -1518,7 +1502,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
! Check for deleting non-existant attribute
!EP CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, 0_HSIZE_T,error, lapl_id=H5P_DEFAULT_F)
CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, hzero,error, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error)
+ CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
! Create attributes, up to limit of compact form
DO u = 0, max_compact - 1
@@ -1546,7 +1530,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
! Check for out of bound deletions
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(u,HSIZE_T), error, lapl_id=H5P_DEFAULT_F)
- CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error)
+ CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
ENDDO
@@ -1584,10 +1568,10 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
IF(new_format)THEN
IF(order.EQ.H5_ITER_INC_F)THEN
- CALL VERIFY("H5Aget_info_by_idx_f",corder,u + 1,total_error)
+ CALL verify("H5Aget_info_by_idx_f",corder,u + 1,total_error)
ENDIF
ELSE
- CALL VERIFY("H5Aget_info_by_idx_f",corder, max_compact-(u + 2),total_error)
+ CALL verify("H5Aget_info_by_idx_f",corder, max_compact-(u + 2),total_error)
ENDIF
! Verify the name for first attribute in appropriate order
@@ -1604,7 +1588,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
attrname = 'attr '//chr2
ENDIF
IF(TRIM(attrname).NE.TRIM(tmpname)) error = -1
- CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
+ CALL verify("h5aget_name_by_idx_f",error,0,total_error)
ENDDO
! Delete last attribute
@@ -1655,7 +1639,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
ENDDO
! Check for out of bound deletion
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(u,HSIZE_T), error)
- CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error)
+ CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
ENDDO
! Work on all the datasets
@@ -1684,10 +1668,10 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
f_corder_valid, corder, cset, data_size, error)
IF(new_format)THEN
IF(order.EQ.H5_ITER_INC_F)THEN
- CALL VERIFY("H5Aget_info_by_idx_f",corder,u + 1,total_error)
+ CALL verify("H5Aget_info_by_idx_f",corder,u + 1,total_error)
ENDIF
ELSE
- CALL VERIFY("H5Aget_info_by_idx_f",corder, ((max_compact * 2) - (u + 2)), total_error)
+ CALL verify("H5Aget_info_by_idx_f",corder, ((max_compact * 2) - (u + 2)), total_error)
ENDIF
! Verify the name for first attribute in appropriate order
@@ -1705,7 +1689,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
attrname = 'attr '//chr2
ENDIF
IF(TRIM(attrname).NE.TRIM(tmpname)) error = -1
- CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
+ CALL verify("h5aget_name_by_idx_f",error,0,total_error)
ENDDO
@@ -1716,7 +1700,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
! Check for deletion on empty attribute storage again
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), error)
- CALL VERIFY("H5Adelete_by_idx_f",error,minusone,total_error)
+ CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
ENDDO
! Close Datasets
@@ -1753,9 +1737,6 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fcpl
@@ -2030,9 +2011,6 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error)
!**
!***************************************************************
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fcpl
@@ -2169,7 +2147,7 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error)
! Check size of file
! filesize = h5_get_file_size(FILENAME);
- ! VERIFY(filesize, empty_filesize, "h5_get_file_size")
+ ! verify(filesize, empty_filesize, "h5_get_file_size")
END SUBROUTINE test_attr_dense_open
@@ -2182,9 +2160,6 @@ END SUBROUTINE test_attr_dense_open
SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: loc_id
@@ -2227,7 +2202,7 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
CALL h5aread_f(attr, H5T_NATIVE_INTEGER, value, data_dims, error)
CALL CHECK("H5Aread_F", error, total_error)
- CALL VERIFY("H5Aread_F", value, u, total_error)
+ CALL verify("H5Aread_F", value, u, total_error)
! Close attribute
CALL h5aclose_f(attr, error)
@@ -2259,7 +2234,7 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
data_dims(1) = 1
CALL h5aread_f(attr, H5T_NATIVE_INTEGER, value, data_dims, error)
CALL CHECK("H5Aread_f", error, total_error)
- CALL VERIFY("H5Aread_f", value, u, total_error)
+ CALL verify("H5Aread_f", value, u, total_error)
! Close attribute
@@ -2278,9 +2253,6 @@ END SUBROUTINE test_attr_dense_verify
SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fcpl
@@ -2314,14 +2286,14 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
! Get creation order indexing on object
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
- CALL VERIFY("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
+ CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
! Setting invalid combination of a attribute order creation order indexing on should fail
CALL H5Pset_attr_creation_order_f(dcpl, H5P_CRT_ORDER_INDEXED_F, error)
- CALL VERIFY("H5Pset_attr_creation_order_f",error , minusone, total_error)
+ CALL verify("H5Pset_attr_creation_order_f",error , minusone, total_error)
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
- CALL VERIFY("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
+ CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
! Set attribute creation order tracking & indexing for object
CALL h5pset_attr_creation_order_f(dcpl, IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), error)
@@ -2329,7 +2301,7 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
- CALL VERIFY("H5Pget_attr_creation_order_f",crt_order_flags , &
+ CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , &
IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), total_error)
! Create dataspace for dataset
@@ -2374,7 +2346,7 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
! Query the attribute creation properties
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
- CALL VERIFY("H5Pget_attr_creation_order_f",crt_order_flags , &
+ CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , &
IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), total_error )
! Close property list
@@ -2401,9 +2373,6 @@ END SUBROUTINE test_attr_corder_create_basic
SUBROUTINE test_attr_basic_write(fapl, total_error)
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -2512,7 +2481,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
CALL h5aget_storage_size_f(attr, attr_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
-!EP CALL VERIFY("h5aget_storage_size_f", INT(attr_size), 2*HSIZE_T, total_error)
+!EP CALL verify("h5aget_storage_size_f", INT(attr_size), 2*HSIZE_T, total_error)
! Read attribute information immediately, without closing attribute
@@ -2521,7 +2490,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
! Verify values read in
DO i = 1, ATTR1_DIM1
- CALL VERIFY('h5aread_f',attr_data1(i),read_data1(i), total_error)
+ CALL verify('h5aread_f',attr_data1(i),read_data1(i), total_error)
ENDDO
! CLOSE attribute
@@ -2570,7 +2539,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
size = 18
CALL H5Aget_name_f(attr, size, chr_exact_size, error)
CALL check('H5Aget_name_f',error,total_error)
- CALL VerifyString('H5Aget_name_f',chr_exact_size,ATTR_TMP_NAME, total_error)
+ CALL verify('H5Aget_name_f',chr_exact_size,ATTR_TMP_NAME, total_error)
! Close attribute
CALL h5aclose_f(attr, error)
@@ -2599,9 +2568,6 @@ END SUBROUTINE test_attr_basic_write
SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error)
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: new_format
@@ -2656,19 +2622,19 @@ SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error)
WRITE(chr5,'(I5.5)') u
attrname = 'attr '//chr5
CALL H5Aexists_f( gid, attrname, exists, error)
- CALL VerifyLogical("H5Aexists",exists,.FALSE.,total_error )
+ CALL verify("H5Aexists",exists,.FALSE.,total_error )
CALL H5Aexists_by_name_f(fid, GROUP1_NAME, attrname, exists, error, lapl_id = H5P_DEFAULT_F)
- CALL VerifyLogical("H5Aexists_by_name_f",exists,.FALSE.,total_error )
+ CALL verify("H5Aexists_by_name_f",exists,.FALSE.,total_error )
CALL h5acreate_f(gid, attrname, H5T_NATIVE_INTEGER, sid, aid, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
CALL H5Aexists_f(gid, attrname, exists, error)
- CALL VerifyLogical("H5Aexists",exists,.TRUE.,total_error )
+ CALL verify("H5Aexists",exists,.TRUE.,total_error )
CALL H5Aexists_by_name_f(fid, GROUP1_NAME, attrname, exists, error)
- CALL VerifyLogical("H5Aexists_by_name_f",exists,.TRUE.,total_error )
+ CALL verify("H5Aexists_by_name_f",exists,.TRUE.,total_error )
attr_data1(1) = u
data_dims(1) = 1
@@ -2680,10 +2646,10 @@ SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error)
CALL check("h5aclose_f",error,total_error)
CALL H5Aexists_f(gid, attrname, exists, error)
- CALL VerifyLogical("H5Aexists",exists,.TRUE.,total_error )
+ CALL verify("H5Aexists",exists,.TRUE.,total_error )
CALL H5Aexists_by_name_f(fid, GROUP1_NAME, attrname, exists, error)
- CALL VerifyLogical("H5Aexists_by_name_f",exists,.TRUE.,total_error )
+ CALL verify("H5Aexists_by_name_f",exists,.TRUE.,total_error )
ENDDO
@@ -2717,9 +2683,6 @@ END SUBROUTINE test_attr_many
SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fid
CHARACTER(LEN=*), INTENT(IN) :: dsetname
@@ -2757,13 +2720,13 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL check("h5aget_info_f",error,total_error)
! Check that the object's attributes are correct
- CALL VERIFY("h5aget_info_f.corder",corder,u,total_error)
- CALL Verifylogical("h5aget_info_f.corder_valid",f_corder_valid,.TRUE.,total_error)
- CALL VERIFY("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("h5aget_info_f.corder",corder,u,total_error)
+ CALL verify("h5aget_info_f.corder_valid",f_corder_valid,.TRUE.,total_error)
+ CALL verify("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
CALL h5aget_storage_size_f(attr_id, storage_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
- CALL VERIFY("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error)
+ CALL verify("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error)
! Close attribute
@@ -2778,12 +2741,12 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f",error,total_error)
! Check the attribute's information
- CALL VERIFY("h5aget_info_f",corder,u,total_error)
- CALL Verifylogical("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
- CALL VERIFY("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("h5aget_info_f",corder,u,total_error)
+ CALL verify("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
+ CALL verify("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
CALL h5aget_storage_size_f(attr_id, storage_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
- CALL VERIFY("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
+ CALL verify("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
! Close attribute
CALL h5aclose_f(attr_id, error)
@@ -2800,12 +2763,12 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL check("h5aget_info_f",error,total_error)
! Check the attribute's information
- CALL VERIFY("h5aget_info_f",corder,u,total_error)
- CALL Verifylogical("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
- CALL VERIFY("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("h5aget_info_f",corder,u,total_error)
+ CALL verify("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
+ CALL verify("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
CALL h5aget_storage_size_f(attr_id, storage_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
- CALL VERIFY("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
+ CALL verify("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
! Close attribute
CALL h5aclose_f(attr_id, error)
diff --git a/fortran/test/tH5D.f90 b/fortran/test/tH5D.f90
index c0eb8f9..b5febb3 100644
--- a/fortran/test/tH5D.f90
+++ b/fortran/test/tH5D.f90
@@ -36,503 +36,477 @@
!
MODULE TH5D
-CONTAINS
- SUBROUTINE datasettest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
- IMPLICIT NONE
- LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
-
- CHARACTER(LEN=5), PARAMETER :: filename = "dsetf" ! File name
- CHARACTER(LEN=80) :: fix_filename
- CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name
- CHARACTER(LEN=9), PARAMETER :: null_dsetname = "null_dset" ! Dataset name
-
- INTEGER(HID_T) :: file_id ! File identifier
- INTEGER(HID_T) :: dset_id ! Dataset identifier
- INTEGER(HID_T) :: null_dset ! Null dataset identifier
- INTEGER(HID_T) :: dspace_id ! Dataspace identifier
- INTEGER(HID_T) :: null_dspace ! Null dataspace identifier
- INTEGER(HID_T) :: dtype_id ! Datatype identifier
-
-
- INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/4,6/) ! Dataset dimensions
- INTEGER :: rank = 2 ! Dataset rank
-
- INTEGER, DIMENSION(4,6) :: dset_data, data_out ! Data buffers
- INTEGER :: error ! Error flag
-
- INTEGER :: i, j !general purpose integers
- INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
- INTEGER(HSIZE_T), DIMENSION(1) :: null_data_dim
- INTEGER :: null_dset_data = 1 ! null data
- INTEGER :: flag ! Space allocation status
-
- !
- ! Initialize the dset_data array.
- !
- do i = 1, 4
- do j = 1, 6
- dset_data(i,j) = (i-1)*6 + j;
- end do
- end do
-
-
- !
- ! Create a new file using default properties.
- !
- CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
- if (error .ne. 0) then
- write(*,*) "Cannot modify filename"
- stop
- endif
- CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
- CALL check("h5fcreate_f", error, total_error)
-
-
- !
- ! Create the dataspace.
- !
- CALL h5screate_simple_f(rank, dims, dspace_id, error)
- CALL check("h5screate_simple_f", error, total_error)
- !
- ! Create null dataspace.
- !
- CALL h5screate_f(H5S_NULL_F, null_dspace, error)
- CALL check("h5screate_simple_f", error, total_error)
-
-
- !
- ! Create the dataset with default properties.
- !
- CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dspace_id, &
- dset_id, error)
- CALL check("h5dcreate_f", error, total_error)
- !
- ! Create the null dataset.
- !
- CALL h5dcreate_f(file_id, null_dsetname, H5T_NATIVE_INTEGER, null_dspace, &
- null_dset, error)
- CALL check("h5dcreate_f", error, total_error)
-
- !
- ! Write the dataset.
- !
- data_dims(1) = 4
- data_dims(2) = 6
- CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error)
- CALL check("h5dwrite_f", error, total_error)
- !
- ! Write null dataset. Nothing can be written.
- !
- null_data_dim(1) = 1
- CALL h5dwrite_f(null_dset, H5T_NATIVE_INTEGER, null_dset_data, null_data_dim, error)
- CALL check("h5dwrite_f", error, total_error)
-
-
- !
- ! End access to the dataset and release resources used by it.
- !
- CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f", error, total_error)
- CALL h5dclose_f(null_dset, error)
- CALL check("h5dclose_f", error, total_error)
-
- !
- ! Terminate access to the data space.
- !
- CALL h5sclose_f(dspace_id, error)
- CALL check("h5sclose_f", error, total_error)
- CALL h5sclose_f(null_dspace, error)
- CALL check("h5sclose_f", error, total_error)
-
- !
- ! Close the file.
- !
- CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f", error, total_error)
-
- !
- ! Open the existing file.
- !
- CALL h5fopen_f (fix_filename, H5F_ACC_RDWR_F, file_id, error)
- CALL check("h5fopen_f", error, total_error)
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
- !
- ! Open the existing dataset.
- !
- CALL h5dopen_f(file_id, dsetname, dset_id, error)
- CALL check("h5dopen_f", error, total_error)
- CALL h5dopen_f(file_id, null_dsetname, null_dset, error)
- CALL check("h5dopen_f", error, total_error)
-
- ! Test whether space has been allocated for a dataset
- CALL h5dget_space_status_f(dset_id, flag, error)
- CALL check("h5dget_space_status_f",error, total_error)
- CALL verify("h5dget_space_status_f", flag, H5D_SPACE_STS_ALLOCATED_F, total_error)
-
- CALL h5dget_space_status_f(null_dset, flag, error)
- CALL check("h5dget_space_status_f",error, total_error)
- CALL verify("h5dget_space_status_f", flag, H5D_SPACE_STS_NOT_ALLOCATED_F, total_error)
-
-
- !
- ! Get the dataset type.
- !
- CALL h5dget_type_f(dset_id, dtype_id, error)
- CALL check("h5dget_type_f", error, total_error)
-
- !
- ! Get the data space.
- !
- CALL h5dget_space_f(dset_id, dspace_id, error)
- CALL check("h5dget_space_f", error, total_error)
-
- !
- ! Read the dataset.
- !
- CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error)
- CALL check("h5dread_f", error, total_error)
- !
- ! Read the null dataset. Nothing should be read.
- !
- CALL h5dread_f(null_dset, H5T_NATIVE_INTEGER, null_dset_data, null_data_dim, error)
- CALL check("h5dread_f", error, total_error)
-
- !
- !Compare the data.
- !
- do i = 1, 4
- do j = 1, 6
- IF (data_out(i,j) .NE. dset_data(i, j)) THEN
- write(*, *) "dataset test error occured"
- write(*,*) "data read is not the same as the data written"
- END IF
- end do
- end do
-
- !
- ! Check if no change to null_dset_data
- !
- IF (null_dset_data .NE. 1) THEN
- write(*, *) "null dataset test error occured"
+CONTAINS
+ SUBROUTINE datasettest(cleanup, total_error)
+
+ IMPLICIT NONE
+ LOGICAL, INTENT(IN) :: cleanup
+ INTEGER, INTENT(OUT) :: total_error
+
+ CHARACTER(LEN=5), PARAMETER :: filename = "dsetf" ! File name
+ CHARACTER(LEN=80) :: fix_filename
+ CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name
+ CHARACTER(LEN=9), PARAMETER :: null_dsetname = "null_dset" ! Dataset name
+
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER(HID_T) :: dset_id ! Dataset identifier
+ INTEGER(HID_T) :: null_dset ! Null dataset identifier
+ INTEGER(HID_T) :: dspace_id ! Dataspace identifier
+ INTEGER(HID_T) :: null_dspace ! Null dataspace identifier
+ INTEGER(HID_T) :: dtype_id ! Datatype identifier
+
+ INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/4,6/) ! Dataset dimensions
+ INTEGER :: rank = 2 ! Dataset rank
+
+ INTEGER, DIMENSION(4,6) :: dset_data, data_out ! Data buffers
+ INTEGER :: error ! Error flag
+
+ INTEGER :: i, j !general purpose integers
+ INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
+ INTEGER(HSIZE_T), DIMENSION(1) :: null_data_dim
+ INTEGER :: null_dset_data = 1 ! null data
+ INTEGER :: flag ! Space allocation status
+
+ !
+ ! Initialize the dset_data array.
+ !
+ DO i = 1, 4
+ DO j = 1, 6
+ dset_data(i,j) = (i-1)*6 + j;
+ END DO
+ END DO
+ !
+ ! Create a new file using default properties.
+ !
+ CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
+ IF (error .NE. 0) THEN
+ WRITE(*,*) "Cannot modify filename"
+ STOP
+ ENDIF
+ CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
+ CALL check("h5fcreate_f", error, total_error)
+ !
+ ! Create the dataspace.
+ !
+ CALL h5screate_simple_f(rank, dims, dspace_id, error)
+ CALL check("h5screate_simple_f", error, total_error)
+ !
+ ! Create null dataspace.
+ !
+ CALL h5screate_f(H5S_NULL_F, null_dspace, error)
+ CALL check("h5screate_simple_f", error, total_error)
+ !
+ ! Create the dataset with default properties.
+ !
+ CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dspace_id, &
+ dset_id, error)
+ CALL check("h5dcreate_f", error, total_error)
+ !
+ ! Create the null dataset.
+ !
+ CALL h5dcreate_f(file_id, null_dsetname, H5T_NATIVE_INTEGER, null_dspace, null_dset, error)
+ CALL check("h5dcreate_f", error, total_error)
+ !
+ ! Write the dataset.
+ !
+ data_dims(1) = 4
+ data_dims(2) = 6
+ CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error)
+ CALL check("h5dwrite_f", error, total_error)
+ !
+ ! Write null dataset. Nothing can be written.
+ !
+ null_data_dim(1) = 1
+ CALL h5dwrite_f(null_dset, H5T_NATIVE_INTEGER, null_dset_data, null_data_dim, error)
+ CALL check("h5dwrite_f", error, total_error)
+ !
+ ! End access to the dataset and release resources used by it.
+ !
+ CALL h5dclose_f(dset_id, error)
+ CALL check("h5dclose_f", error, total_error)
+ CALL h5dclose_f(null_dset, error)
+ CALL check("h5dclose_f", error, total_error)
+ !
+ ! Terminate access to the data space.
+ !
+ CALL h5sclose_f(dspace_id, error)
+ CALL check("h5sclose_f", error, total_error)
+ CALL h5sclose_f(null_dspace, error)
+ CALL check("h5sclose_f", error, total_error)
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, error)
+ CALL check("h5fclose_f", error, total_error)
+ !
+ ! Open the existing file.
+ !
+ CALL h5fopen_f (fix_filename, H5F_ACC_RDWR_F, file_id, error)
+ CALL check("h5fopen_f", error, total_error)
+ !
+ ! Open the existing dataset.
+ !
+ CALL h5dopen_f(file_id, dsetname, dset_id, error)
+ CALL check("h5dopen_f", error, total_error)
+ CALL h5dopen_f(file_id, null_dsetname, null_dset, error)
+ CALL check("h5dopen_f", error, total_error)
+
+ ! Test whether space has been allocated for a dataset
+ CALL h5dget_space_status_f(dset_id, flag, error)
+ CALL check("h5dget_space_status_f",error, total_error)
+ CALL VERIFY("h5dget_space_status_f", flag, H5D_SPACE_STS_ALLOCATED_F, total_error)
+
+ CALL h5dget_space_status_f(null_dset, flag, error)
+ CALL check("h5dget_space_status_f",error, total_error)
+ CALL VERIFY("h5dget_space_status_f", flag, H5D_SPACE_STS_NOT_ALLOCATED_F, total_error)
+ !
+ ! Get the dataset type.
+ !
+ CALL h5dget_type_f(dset_id, dtype_id, error)
+ CALL check("h5dget_type_f", error, total_error)
+ !
+ ! Get the data space.
+ !
+ CALL h5dget_space_f(dset_id, dspace_id, error)
+ CALL check("h5dget_space_f", error, total_error)
+ !
+ ! Read the dataset.
+ !
+ CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error)
+ CALL check("h5dread_f", error, total_error)
+ !
+ ! Read the null dataset. Nothing should be read.
+ !
+ CALL h5dread_f(null_dset, H5T_NATIVE_INTEGER, null_dset_data, null_data_dim, error)
+ CALL check("h5dread_f", error, total_error)
+ !
+ !Compare the data.
+ !
+ DO i = 1, 4
+ DO j = 1, 6
+ IF (data_out(i,j) .NE. dset_data(i, j)) THEN
+ WRITE(*, *) "dataset test error occured"
+ WRITE(*,*) "data read is not the same as the data written"
END IF
-
- !
- ! End access to the dataset and release resources used by it.
- !
- CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f", error, total_error)
- CALL h5dclose_f(null_dset, error)
- CALL check("h5dclose_f", error, total_error)
-
- !
- ! Terminate access to the data space.
- !
- CALL h5sclose_f(dspace_id, error)
- CALL check("h5sclose_f", error, total_error)
-
- !
- ! Terminate access to the data type.
- !
- CALL h5tclose_f(dtype_id, error)
- CALL check("h5tclose_f", error, total_error)
- !
- ! Close the file.
- !
- CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f", error, total_error)
- if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
- CALL check("h5_cleanup_f", error, total_error)
-
- RETURN
- END SUBROUTINE datasettest
-
+ END DO
+ END DO
+ !
+ ! Check if no change to null_dset_data
+ !
+ IF (null_dset_data .NE. 1) THEN
+ WRITE(*, *) "null dataset test error occured"
+ END IF
+ !
+ ! End access to the dataset and release resources used by it.
+ !
+ CALL h5dclose_f(dset_id, error)
+ CALL check("h5dclose_f", error, total_error)
+ CALL h5dclose_f(null_dset, error)
+ CALL check("h5dclose_f", error, total_error)
+ !
+ ! Terminate access to the data space.
+ !
+ CALL h5sclose_f(dspace_id, error)
+ CALL check("h5sclose_f", error, total_error)
+
+ !
+ ! Terminate access to the data type.
+ !
+ CALL h5tclose_f(dtype_id, error)
+ CALL check("h5tclose_f", error, total_error)
+ !
+ ! Close the file.
+ !
+ CALL h5fclose_f(file_id, error)
+ CALL check("h5fclose_f", error, total_error)
+ IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
+ CALL check("h5_cleanup_f", error, total_error)
+
+ RETURN
+ END SUBROUTINE datasettest
+
!
!the following subroutine tests h5dextend_f functionality
!
- SUBROUTINE extenddsettest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
- IMPLICIT NONE
-
- LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
-
- !
- !the dataset is stored in file "extf.h5"
- !
- CHARACTER(LEN=4), PARAMETER :: filename = "extf"
- CHARACTER(LEN=80) :: fix_filename
-
- !
- !dataset name is "ExtendibleArray"
- !
- CHARACTER(LEN=15), PARAMETER :: dsetname = "ExtendibleArray"
-
- !
- !dataset rank is 2
- !
- INTEGER :: RANK = 2
-
- INTEGER(HID_T) :: file_id ! File identifier
- INTEGER(HID_T) :: dset_id ! Dataset identifier
- INTEGER(HID_T) :: dataspace ! Dataspace identifier
- INTEGER(HID_T) :: memspace ! memory Dataspace identifier
- INTEGER(HID_T) :: crp_list ! dataset creatation property identifier
-
- !
- !dataset dimensions at creation time
- !
- INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/3,3/)
-
- !
- !data dimensions
- !
- INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/10,3/)
-
- !
- !Maximum dimensions
- !
- INTEGER(HSIZE_T), DIMENSION(2) :: maxdims
-
- !
- !data arrays for reading and writing
- !
- INTEGER, DIMENSION(10,3) :: data_in, data_out
-
- !
- !Size of data in the file
- !
- INTEGER(HSIZE_T), DIMENSION(2) :: size
-
- !
- !general purpose integer
- !
- INTEGER :: i, j
- INTEGER(HSIZE_T) :: ih, jh
-
- !
- !flag to check operation success
- !
- INTEGER :: error
-
- !
- !Variables used in reading data back
- !
- INTEGER(HSIZE_T), DIMENSION(2) :: dimsr, maxdimsr
- INTEGER :: rankr
- INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
-
- !
- !data initialization
- !
- do i = 1, 10
- do j = 1, 3
- data_in(i,j) = 2
- end do
- end do
-
- !
- !Initialize FORTRAN predifined datatypes
- !
+ SUBROUTINE extenddsettest(cleanup, total_error)
+
+ IMPLICIT NONE
+
+ LOGICAL, INTENT(IN) :: cleanup
+ INTEGER, INTENT(OUT) :: total_error
+
+ !
+ !the dataset is stored in file "extf.h5"
+ !
+ CHARACTER(LEN=4), PARAMETER :: filename = "extf"
+ CHARACTER(LEN=80) :: fix_filename
+
+ !
+ !dataset name is "ExtendibleArray"
+ !
+ CHARACTER(LEN=15), PARAMETER :: dsetname = "ExtendibleArray"
+
+ !
+ !dataset rank is 2
+ !
+ INTEGER :: RANK = 2
+
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER(HID_T) :: dset_id ! Dataset identifier
+ INTEGER(HID_T) :: dataspace ! Dataspace identifier
+ INTEGER(HID_T) :: memspace ! memory Dataspace identifier
+ INTEGER(HID_T) :: crp_list ! dataset creatation property identifier
+
+ !
+ !dataset dimensions at creation time
+ !
+ INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/3,3/)
+
+ !
+ !data dimensions
+ !
+ INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/10,3/)
+
+ !
+ !Maximum dimensions
+ !
+ INTEGER(HSIZE_T), DIMENSION(2) :: maxdims
+
+ !
+ !data arrays for reading and writing
+ !
+ INTEGER, DIMENSION(10,3) :: data_in, data_out
+
+ !
+ !Size of data in the file
+ !
+ INTEGER(HSIZE_T), DIMENSION(2) :: size
+
+ !
+ !general purpose integer
+ !
+ INTEGER :: i, j
+ INTEGER(HSIZE_T) :: ih, jh
+
+ !
+ !flag to check operation success
+ !
+ INTEGER :: error
+
+ !
+ !Variables used in reading data back
+ !
+ INTEGER(HSIZE_T), DIMENSION(2) :: dimsr, maxdimsr
+ INTEGER :: rankr
+ INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
+
+ !
+ !data initialization
+ !
+ DO i = 1, 10
+ DO j = 1, 3
+ data_in(i,j) = 2
+ END DO
+ END DO
+
+ !
+ !Initialize FORTRAN predifined datatypes
+ !
! CALL h5init_types_f(error)
! CALL check("h5init_types_f",error,total_error)
- !
- !Create a new file using default properties.
- !
- CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
- if (error .ne. 0) then
- write(*,*) "Cannot modify filename"
- stop
- endif
- CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
- CALL check("h5fcreate_f",error,total_error)
-
-
- !
- !Create the data space with unlimited dimensions.
- !
- maxdims = (/H5S_UNLIMITED_F, H5S_UNLIMITED_F/)
-
- CALL h5screate_simple_f(RANK, dims, dataspace, error, maxdims)
- CALL check("h5screate_simple_f",error,total_error)
-
- !
- !Modify dataset creation properties, i.e. enable chunking
- !
- CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error)
- CALL check("h5pcreat_f",error,total_error)
-
- CALL h5pset_chunk_f(crp_list, RANK, dims1, error)
- CALL check("h5pset_chunk_f",error,total_error)
-
- !
- !Create a dataset with 3X3 dimensions using cparms creation propertie .
- !
- CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dataspace, &
- dset_id, error, crp_list )
- CALL check("h5dcreate_f",error,total_error)
-
- !
- !Extend the dataset. This call assures that dataset is 3 x 3.
- !
- size(1) = 3
- size(2) = 3
- CALL h5dextend_f(dset_id, size, error)
- CALL check("h5dextend_f",error,total_error)
-
-
- !
- !Extend the dataset. Dataset becomes 10 x 3.
- !
- size(1) = 10;
- size(2) = 3;
- CALL h5dextend_f(dset_id, size, error)
- CALL check("h5dextend_f",error,total_error)
-
- !
- !Write the data of size 10X3 to the extended dataset.
- !
- data_dims(1) = 10
- data_dims(2) = 3
- CALL H5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data_in, data_dims, error)
- CALL check("h5dwrite_f",error,total_error)
-
- !
- !Close the dataspace for the dataset.
- !
- CALL h5sclose_f(dataspace, error)
- CALL check("h5sclose_f",error,total_error)
-
- !
- !Close the property list.
- !
- CALL h5pclose_f(crp_list, error)
- CALL check("h5pclose_f",error,total_error)
- !
- !Close the dataset.
- !
- CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f",error,total_error)
-
- !
- !Close the file.
- !
- CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f",error,total_error)
-
- !
- !read the data back
- !
- !Open the file.
- !
- CALL h5fopen_f (fix_filename, H5F_ACC_RDONLY_F, file_id, error)
- CALL check("hfopen_f",error,total_error)
-
- !
- !Open the dataset.
- !
- CALL h5dopen_f(file_id, dsetname, dset_id, error)
- CALL check("h5dopen_f",error,total_error)
-
- !
- !Get dataset's dataspace handle.
- !
- CALL h5dget_space_f(dset_id, dataspace, error)
- CALL check("h5dget_space_f",error,total_error)
-
- !
- !Get dataspace's rank.
- !
- CALL h5sget_simple_extent_ndims_f(dataspace, rankr, error)
- CALL check("h5sget_simple_extent_ndims_f",error,total_error)
- IF (rankr .NE. RANK) then
- write(*,*) "dataset rank error occured"
- stop
- END IF
-
- !
- !Get dataspace's dimensinons.
- !
- CALL h5sget_simple_extent_dims_f(dataspace, dimsr, maxdimsr, error)
- CALL check("h5sget_simple_extent_dims_f",error,total_error)
- IF ((dimsr(1) .NE. dims1(1)) .OR. (dimsr(2) .NE. dims1(2))) THEN
- write(*,*) "dataset dimensions error occured"
- stop
+ !
+ !Create a new file using default properties.
+ !
+ CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
+ IF (error .NE. 0) THEN
+ WRITE(*,*) "Cannot modify filename"
+ STOP
+ ENDIF
+ CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
+ CALL check("h5fcreate_f",error,total_error)
+
+ !
+ !Create the data space with unlimited dimensions.
+ !
+ maxdims = (/H5S_UNLIMITED_F, H5S_UNLIMITED_F/)
+
+ CALL h5screate_simple_f(RANK, dims, dataspace, error, maxdims)
+ CALL check("h5screate_simple_f",error,total_error)
+
+ !
+ !Modify dataset creation properties, i.e. enable chunking
+ !
+ CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error)
+ CALL check("h5pcreat_f",error,total_error)
+
+ CALL h5pset_chunk_f(crp_list, RANK, dims1, error)
+ CALL check("h5pset_chunk_f",error,total_error)
+
+ !
+ !Create a dataset with 3X3 dimensions using cparms creation propertie .
+ !
+ CALL h5dcreate_f(file_id, dsetname, H5T_NATIVE_INTEGER, dataspace, dset_id, error, crp_list )
+ CALL check("h5dcreate_f",error,total_error)
+
+ !
+ !Extend the dataset. This call assures that dataset is 3 x 3.
+ !
+ SIZE(1) = 3
+ SIZE(2) = 3
+ CALL h5dextend_f(dset_id, size, error)
+ CALL check("h5dextend_f",error,total_error)
+
+
+ !
+ !Extend the dataset. Dataset becomes 10 x 3.
+ !
+ SIZE(1) = 10;
+ SIZE(2) = 3;
+ CALL h5dextend_f(dset_id, size, error)
+ CALL check("h5dextend_f",error,total_error)
+
+ !
+ !Write the data of size 10X3 to the extended dataset.
+ !
+ data_dims(1) = 10
+ data_dims(2) = 3
+ CALL H5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data_in, data_dims, error)
+ CALL check("h5dwrite_f",error,total_error)
+
+ !
+ !Close the dataspace for the dataset.
+ !
+ CALL h5sclose_f(dataspace, error)
+ CALL check("h5sclose_f",error,total_error)
+
+ !
+ !Close the property list.
+ !
+ CALL h5pclose_f(crp_list, error)
+ CALL check("h5pclose_f",error,total_error)
+ !
+ !Close the dataset.
+ !
+ CALL h5dclose_f(dset_id, error)
+ CALL check("h5dclose_f",error,total_error)
+
+ !
+ !Close the file.
+ !
+ CALL h5fclose_f(file_id, error)
+ CALL check("h5fclose_f",error,total_error)
+
+ !
+ !read the data back
+ !
+ !Open the file.
+ !
+ CALL h5fopen_f (fix_filename, H5F_ACC_RDONLY_F, file_id, error)
+ CALL check("hfopen_f",error,total_error)
+
+ !
+ !Open the dataset.
+ !
+ CALL h5dopen_f(file_id, dsetname, dset_id, error)
+ CALL check("h5dopen_f",error,total_error)
+
+ !
+ !Get dataset's dataspace handle.
+ !
+ CALL h5dget_space_f(dset_id, dataspace, error)
+ CALL check("h5dget_space_f",error,total_error)
+
+ !
+ !Get dataspace's rank.
+ !
+ CALL h5sget_simple_extent_ndims_f(dataspace, rankr, error)
+ CALL check("h5sget_simple_extent_ndims_f",error,total_error)
+ IF (rankr .NE. RANK) THEN
+ WRITE(*,*) "dataset rank error occured"
+ STOP
+ END IF
+
+ !
+ !Get dataspace's dimensinons.
+ !
+ CALL h5sget_simple_extent_dims_f(dataspace, dimsr, maxdimsr, error)
+ CALL check("h5sget_simple_extent_dims_f",error,total_error)
+ IF ((dimsr(1) .NE. dims1(1)) .OR. (dimsr(2) .NE. dims1(2))) THEN
+ WRITE(*,*) "dataset dimensions error occured"
+ STOP
+ END IF
+
+ !
+ !Get creation property list.
+ !
+ CALL h5dget_create_plist_f(dset_id, crp_list, error)
+ CALL check("h5dget_create_plist_f",error,total_error)
+
+
+ !
+ !create memory dataspace.
+ !
+ CALL h5screate_simple_f(rankr, dimsr, memspace, error)
+ CALL check("h5screate_simple_f",error,total_error)
+
+ !
+ !Read data
+ !
+ CALL H5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, memspace, dataspace)
+ CALL check("h5dread_f",error,total_error)
+
+
+ !
+ !Compare the data.
+ !
+ DO ih = 1, dims1(1)
+ DO jh = 1, dims1(2)
+ IF (data_out(ih,jh) .NE. data_in(ih, jh)) THEN
+ WRITE(*, *) "extend dataset test error occured"
+ WRITE(*, *) "read value is not the same as the written values"
END IF
-
- !
- !Get creation property list.
- !
- CALL h5dget_create_plist_f(dset_id, crp_list, error)
- CALL check("h5dget_create_plist_f",error,total_error)
-
-
- !
- !create memory dataspace.
- !
- CALL h5screate_simple_f(rankr, dimsr, memspace, error)
- CALL check("h5screate_simple_f",error,total_error)
-
- !
- !Read data
- !
- CALL H5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, &
- memspace, dataspace)
- CALL check("h5dread_f",error,total_error)
-
-
- !
- !Compare the data.
- !
- do ih = 1, dims1(1)
- do jh = 1, dims1(2)
- IF (data_out(ih,jh) .NE. data_in(ih, jh)) THEN
- write(*, *) "extend dataset test error occured"
- write(*, *) "read value is not the same as the written values"
- END IF
- end do
- end do
-
- !
- !Close the dataspace for the dataset.
- !
- CALL h5sclose_f(dataspace, error)
- CALL check("h5sclose_f",error,total_error)
-
- !
- !Close the memspace for the dataset.
- !
- CALL h5sclose_f(memspace, error)
- CALL check("h5sclose_f",error,total_error)
-
- !
- !Close the property list.
- !
- CALL h5pclose_f(crp_list, error)
- CALL check("h5pclose_f",error,total_error)
-
- !
- !Close the dataset.
- !
- CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f",error,total_error)
-
- !
- !Close the file.
- !
- CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f",error,total_error)
- if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
- CALL check("h5_cleanup_f", error, total_error)
-
- RETURN
- END SUBROUTINE extenddsettest
+ END DO
+ END DO
+
+ !
+ !Close the dataspace for the dataset.
+ !
+ CALL h5sclose_f(dataspace, error)
+ CALL check("h5sclose_f",error,total_error)
+
+ !
+ !Close the memspace for the dataset.
+ !
+ CALL h5sclose_f(memspace, error)
+ CALL check("h5sclose_f",error,total_error)
+
+ !
+ !Close the property list.
+ !
+ CALL h5pclose_f(crp_list, error)
+ CALL check("h5pclose_f",error,total_error)
+
+ !
+ !Close the dataset.
+ !
+ CALL h5dclose_f(dset_id, error)
+ CALL check("h5dclose_f",error,total_error)
+
+ !
+ !Close the file.
+ !
+ CALL h5fclose_f(file_id, error)
+ CALL check("h5fclose_f",error,total_error)
+ IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
+ CALL check("h5_cleanup_f", error, total_error)
+
+ RETURN
+ END SUBROUTINE extenddsettest
END MODULE TH5D
diff --git a/fortran/test/tH5E_F03.f90 b/fortran/test/tH5E_F03.f90
index a7d45f2..63e70a3 100644
--- a/fortran/test/tH5E_F03.f90
+++ b/fortran/test/tH5E_F03.f90
@@ -36,6 +36,9 @@
! *****************************************
MODULE test_my_hdf5_error_handler
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
CONTAINS
@@ -49,8 +52,6 @@ CONTAINS
! This error function handle works with only version 2 error stack
- USE HDF5
- USE ISO_C_BINDING
IMPLICIT NONE
! estack_id is always passed from C as: H5E_DEFAULT
@@ -74,8 +75,6 @@ CONTAINS
! This error function handle works with only version 2 error stack
- USE HDF5
- USE ISO_C_BINDING
IMPLICIT NONE
! estack_id is always passed from C as: H5E_DEFAULT
@@ -102,8 +101,6 @@ CONTAINS
SUBROUTINE test_error(total_error)
- USE HDF5
- USE TH5_MISC
USE ISO_C_BINDING
USE test_my_hdf5_error_handler
@@ -147,15 +144,15 @@ SUBROUTINE test_error(total_error)
! Create the erring dataset
CALL h5dcreate_f(FAKE_ID,"a_dataset",H5T_NATIVE_INTEGER, space, dataset, error)
- CALL VERIFY("h5dcreate_f", error, -1, total_error)
+ CALL verify("h5dcreate_f", error, -1, total_error)
-!!$ CALL VERIFY("H5Eset_auto_f",my_hdf5_error_handler_data(1),10, total_error)
-!!$ CALL VERIFY("H5Eset_auto_f",my_hdf5_error_handler_data(2),20, total_error)
+!!$ CALL verify("H5Eset_auto_f",my_hdf5_error_handler_data(1),10, total_error)
+!!$ CALL verify("H5Eset_auto_f",my_hdf5_error_handler_data(2),20, total_error)
!!$ ! Test enabling and disabling default printing
!!$
!!$ CALL H5Eget_auto_f(H5E_DEFAULT_F, func1, f_ptr1, error)
-!!$ CALL VERIFY("H5Eget_auto_f", error, 0, total_error)
+!!$ CALL verify("H5Eget_auto_f", error, 0, total_error)
! PRINT*,c_associated(f_ptr1)
@@ -187,7 +184,7 @@ SUBROUTINE test_error(total_error)
CALL H5Eset_auto_f(1, error, H5E_DEFAULT_F, func, f_ptr)
CALL h5dcreate_f(FAKE_ID,"a_dataset",H5T_NATIVE_INTEGER, space, dataset, error)
- CALL VERIFY("h5dcreate_f", error, -1, total_error)
+ CALL verify("h5dcreate_f", error, -1, total_error)
! turn on automatic printing with h5eprint_f which prints an error stack in the default manner.
diff --git a/fortran/test/tH5F_F03.f90 b/fortran/test/tH5F_F03.f90
index c878a59..9e23d19 100644
--- a/fortran/test/tH5F_F03.f90
+++ b/fortran/test/tH5F_F03.f90
@@ -38,16 +38,17 @@
MODULE TH5F_F03
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+ USE ISO_C_BINDING
+
CONTAINS
SUBROUTINE test_get_file_image(total_error)
!
! Tests the wrapper for h5fget_file_image
!
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error ! returns error
@@ -128,8 +129,8 @@ SUBROUTINE test_get_file_image(total_error)
itmp_a = 1
CALL h5fget_file_image_f(file_id, f_ptr, itmp_a, error, image_size)
CALL check("h5fget_file_image_f",error, total_error)
- CALL VERIFY("h5fget_file_image_f", INT(itmp_a), 1, total_error) ! Routine should not change the value
- CALL VERIFY("h5fget_file_image_f", file_sz, INT(image_size), total_error)
+ CALL verify("h5fget_file_image_f", INT(itmp_a), 1, total_error) ! Routine should not change the value
+ CALL verify("h5fget_file_image_f", file_sz, INT(image_size), total_error)
! Allocate a buffer of the appropriate size
ALLOCATE(image_ptr(1:image_size))
diff --git a/fortran/test/tH5G_1_8.f90 b/fortran/test/tH5G_1_8.f90
index ab75163..ddc3736 100644
--- a/fortran/test/tH5G_1_8.f90
+++ b/fortran/test/tH5G_1_8.f90
@@ -31,11 +31,13 @@
MODULE TH5G_1_8
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE group_test(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -139,9 +141,6 @@ END SUBROUTINE group_test
SUBROUTINE group_info(cleanup, fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -269,7 +268,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! Check for out of bound query by index on empty group, should fail
CALL H5Gget_info_by_idx_f(group_id, ".", H5_INDEX_NAME_F, order, INT(0,HSIZE_T), &
storage_type, nlinks, max_corder, error)
- CALL VERIFY("H5Gget_info_by_idx_f", error, -1, total_error)
+ CALL verify("H5Gget_info_by_idx_f", error, -1, total_error)
! Create several links, up to limit of compact form
DO u = 0, max_compact-1
@@ -287,29 +286,29 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Gget_info_f", error, total_error)
! Check (new/empty) group's information
- CALL VERIFY("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_f", max_corder, 0, total_error)
- CALL VERIFY("H5Gget_info_f", nlinks, 0, total_error)
- CALL verifyLogical("H5Gget_info_f.mounted", mounted,.FALSE.,total_error)
+ CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_f", max_corder, 0, total_error)
+ CALL verify("H5Gget_info_f", nlinks, 0, total_error)
+ CALL verify("H5Gget_info_f.mounted", mounted,.FALSE.,total_error)
! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id, objname, storage_type, nlinks, max_corder, error, mounted=mounted)
CALL check("H5Gget_info_by_name_f", error, total_error)
! Check (new/empty) group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", max_corder, 0, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, 0, total_error)
- CALL verifyLogical("H5Gget_info_by_name_f.mounted", mounted,.FALSE.,total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f", max_corder, 0, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, 0, total_error)
+ CALL verify("H5Gget_info_by_name_f.mounted", mounted,.FALSE.,total_error)
! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id2, ".", storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name", error, total_error)
! Check (new/empty) group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", max_corder, 0, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, 0, total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f", max_corder, 0, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, 0, total_error)
! Create objects in new group created
DO v = 0, u
@@ -331,27 +330,27 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Gget_info_f", error, total_error)
! Check (new) group's information
- CALL VERIFY("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id, objname, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
! Check (new) group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f",max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f",max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id2, ".", storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
! Check (new) group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
! Retrieve group's information
IF(order.NE.H5_ITER_NATIVE_F)THEN
@@ -359,17 +358,17 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL H5Gget_info_by_idx_f(group_id, ".", idx_type, order, INT(u,HSIZE_T), &
storage_type, nlinks, max_corder, error,lapl_id=H5P_DEFAULT_F, mounted=mounted)
CALL check("H5Gget_info_by_idx_f", error, total_error)
- CALL verifyLogical("H5Gget_info_by_idx_f", mounted,.FALSE.,total_error)
+ CALL verify("H5Gget_info_by_idx_f", mounted,.FALSE.,total_error)
ELSE
CALL H5Gget_info_by_idx_f(group_id, ".", idx_type, order, INT(0,HSIZE_T), &
storage_type, nlinks, max_corder, error, mounted=mounted)
- CALL verifyLogical("H5Gget_info_by_idx_f", mounted,.FALSE.,total_error)
+ CALL verify("H5Gget_info_by_idx_f", mounted,.FALSE.,total_error)
CALL check("H5Gget_info_by_idx_f", error, total_error)
ENDIF
! Check (new) group's information
- CALL VERIFY("H5Gget_info_by_idx_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_idx_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_by_idx_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_by_idx_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_idx_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_by_idx_f", nlinks, u+1, total_error)
ENDIF
! Close group created
CALL H5Gclose_f(group_id2, error)
@@ -380,27 +379,27 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Gget_info_f", error, total_error)
! Check main group's information
- CALL VERIFY("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
! Retrieve main group's information, by name
CALL H5Gget_info_by_name_f(file_id, CORDER_GROUP_NAME, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
! Check main group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
! Retrieve main group's information, by name
CALL H5Gget_info_by_name_f(group_id, ".", storage_type, nlinks, max_corder, error, H5P_DEFAULT_F)
CALL check("H5Gget_info_by_name_f", error, total_error)
! Check main group's information
- CALL VERIFY("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_by_name_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
! Create soft link in another group, to objects in main group
valname = CORDER_GROUP_NAME//objname
@@ -412,9 +411,9 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Gget_info_f", error, total_error)
! Check soft link group's information
- CALL VERIFY("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
- CALL VERIFY("H5Gget_info_f", max_corder, u+1, total_error)
- CALL VERIFY("H5Gget_info_f", nlinks, u+1, total_error)
+ CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
+ CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
+ CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
ENDDO
! Close the groups
@@ -456,9 +455,6 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
SUBROUTINE timestamps(cleanup, fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -491,7 +487,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
! Check default timestamp information
- CALL VerifyLogical("H5Pget_obj_track_times",track_times,.TRUE.,total_error)
+ CALL verify("H5Pget_obj_track_times",track_times,.TRUE.,total_error)
! Set a non-default object timestamp setting
CALL H5Pset_obj_track_times_f(gcpl_id, .FALSE., error)
@@ -502,7 +498,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
! Check default timestamp information
- CALL VerifyLogical("H5Pget_obj_track_times",track_times,.FALSE.,total_error)
+ CALL verify("H5Pget_obj_track_times",track_times,.FALSE.,total_error)
! Create file
!h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
@@ -533,10 +529,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! Query & verify the object timestamp settings
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- CALL VerifyLogical("H5Pget_obj_track_times1",track_times,.FALSE.,total_error)
+ CALL verify("H5Pget_obj_track_times1",track_times,.FALSE.,total_error)
CALL H5Pget_obj_track_times_f(gcpl_id2, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- CALL VerifyLogical("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
+ CALL verify("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
! Query the object information for each group
! if(H5Oget_info(group_id, &oinfo) < 0) TEST_ERROR
@@ -593,10 +589,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- CALL VerifyLogical("H5Pget_obj_track_times1",track_times,.FALSE.,total_error)
+ CALL verify("H5Pget_obj_track_times1",track_times,.FALSE.,total_error)
CALL H5Pget_obj_track_times_f(gcpl_id2, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- CALL VerifyLogical("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
+ CALL verify("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
!!$
!!$ Query the object information for each group
!!$ if(H5Oget_info(group_id, &oinfo) < 0) TEST_ERROR
@@ -653,9 +649,6 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
SUBROUTINE mklinks(fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -711,12 +704,12 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
error, H5P_DEFAULT_F)
CALL check("H5Lget_info_f",error,total_error)
-! CALL VerifyLogical("H5Lget_info_by_idx_f11", f_corder_valid, .TRUE., total_error)
+! CALL verify("H5Lget_info_by_idx_f11", f_corder_valid, .TRUE., total_error)
- CALL VERIFY("H5Lget_info_by_idx_f", H5L_TYPE_SOFT_F, link_type, total_error)
- CALL VERIFY("H5Lget_info_by_idx_f", cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("H5Lget_info_by_idx_f", H5L_TYPE_SOFT_F, link_type, total_error)
+ CALL verify("H5Lget_info_by_idx_f", cset, H5T_CSET_ASCII_F, total_error)
! should be '/d1' + NULL character = 4
- CALL VERIFY("H5Lget_info_by_idx_f", INT(val_size), 4, total_error)
+ CALL verify("H5Lget_info_by_idx_f", INT(val_size), 4, total_error)
! Create a symbolic link to something that doesn't exist
@@ -749,9 +742,6 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
SUBROUTINE test_move_preserves(fapl_id, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl_id
@@ -798,14 +788,14 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL H5Pget_link_creation_order_f(fcpl_id, crt_order_flags, error)
CALL check("H5Pget_link_creation_order_f",error, total_error)
- CALL VERIFY("H5Pget_link_creation_order_f",crt_order_flags,0, total_error)
+ CALL verify("H5Pget_link_creation_order_f",crt_order_flags,0, total_error)
CALL H5Pset_link_creation_order_f(fcpl_id, H5P_CRT_ORDER_TRACKED_F, error)
CALL check("H5Pset_link_creation_order_f", error, total_error)
CALL H5Pget_link_creation_order_f(fcpl_id, crt_order_flags, error)
CALL check("H5Pget_link_creation_order_f",error, total_error)
- CALL VERIFY("H5Pget_link_creation_order_f",crt_order_flags, H5P_CRT_ORDER_TRACKED_F, total_error)
+ CALL verify("H5Pget_link_creation_order_f",crt_order_flags, H5P_CRT_ORDER_TRACKED_F, total_error)
! Create file
! (with creation order tracking for the root group)
@@ -835,10 +825,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! if(H5Oget_info_by_name(file_id, "group", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
old_cset = cset
- CALL VERIFY("H5Lget_info_f",old_cset,H5T_CSET_UTF8_F,total_error)
- CALL VerifyLogical("H5Lget_info_f",f_corder_valid,.TRUE.,total_error)
+ CALL verify("H5Lget_info_f",old_cset,H5T_CSET_UTF8_F,total_error)
+ CALL verify("H5Lget_info_f",f_corder_valid,.TRUE.,total_error)
old_corder = corder;
- CALL VERIFY("H5Lget_info_f",old_corder,0,total_error)
+ CALL verify("H5Lget_info_f",old_corder,0,total_error)
! old_modification_time = oinfo.mtime;
@@ -956,10 +946,6 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!
SUBROUTINE lifecycle(cleanup, fapl2, total_error)
-
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl2
@@ -1105,10 +1091,6 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
SUBROUTINE cklinks(fapl, total_error)
-! USE ISO_C_BINDING
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -1146,10 +1128,10 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
CALL H5Lexists_f(file,"d1",Lexists, error)
- CALL verifylogical("H5Lexists", Lexists,.TRUE.,total_error)
+ CALL verify("H5Lexists", Lexists,.TRUE.,total_error)
CALL H5Lexists_f(file,"grp1/hard",Lexists, error)
- CALL verifylogical("H5Lexists", Lexists,.TRUE.,total_error)
+ CALL verify("H5Lexists", Lexists,.TRUE.,total_error)
! Cleanup
CALL H5Fclose_f(file,error)
@@ -1176,9 +1158,6 @@ END SUBROUTINE cklinks
!
SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -1294,7 +1273,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
! Check for deletion on empty group
CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(0,HSIZE_T), error)
- CALL VERIFY("delete_by_idx.H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
+ CALL verify("delete_by_idx.H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
! Create several links, up to limit of compact form
DO u = 0, max_compact-1
! Make name for link
@@ -1319,7 +1298,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
htmp =9
!EP CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(u,HSIZE_T), error)
CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, htmp, error)
- CALL VERIFY("H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
+ CALL verify("H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
! Delete links from compact group
@@ -1340,21 +1319,21 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
CALL H5Iget_type_f(grp, id_type, error)
CALL check("H5Iget_type_f", error, total_error)
- CALL VERIFY("H5Iget_type_f", id_type, H5I_GROUP_F, total_error)
+ CALL verify("H5Iget_type_f", id_type, H5I_GROUP_F, total_error)
CALL H5Gclose_f(grp, error)
CALL check("H5Gclose_f", error, total_error)
- CALL VerifyLogical("H5Lget_info_by_idx_f", f_corder_valid, .TRUE., total_error)
+ CALL verify("H5Lget_info_by_idx_f", f_corder_valid, .TRUE., total_error)
- CALL VERIFY("H5Lget_info_by_idx_f", H5L_TYPE_HARD_F, link_type, total_error)
+ CALL verify("H5Lget_info_by_idx_f", H5L_TYPE_HARD_F, link_type, total_error)
IF(iorder.EQ.H5_ITER_INC_F)THEN
- CALL VERIFY("H5Lget_info_by_idx_f", corder, u+1, total_error)
+ CALL verify("H5Lget_info_by_idx_f", corder, u+1, total_error)
ELSE
- CALL VERIFY("H5Lget_info_by_idx_f", corder, (max_compact - (u + 2)), total_error)
+ CALL verify("H5Lget_info_by_idx_f", corder, (max_compact - (u + 2)), total_error)
ENDIF
- CALL VERIFY("H5Lget_info_by_idx_f",cset, H5T_CSET_ASCII_F, total_error)
+ CALL verify("H5Lget_info_by_idx_f",cset, H5T_CSET_ASCII_F, total_error)
@@ -1371,7 +1350,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
!!$ ENDIF
!!$ objname = 'fill '//chr2
!!$ PRINT*,objname, tmpname
-!!$ CALL verifyString("delete_by_idx.H5Lget_name_by_idx_f", objname, tmpname, total_error)
+!!$ CALL verify("delete_by_idx.H5Lget_name_by_idx_f", objname, tmpname, total_error)
ENDDO
! Close the group
@@ -1418,9 +1397,6 @@ END SUBROUTINE delete_by_idx
SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
hard_link, use_index, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: group_id
@@ -1455,14 +1431,14 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL H5Lget_info_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(0,HSIZE_T), &
link_type, f_corder_valid, corder, cset, address, val_size, error)
CALL check("H5Lget_info_by_idx_f", error, total_error)
- CALL VERIFY("H5Lget_info_by_idx_f", corder, 0, total_error)
+ CALL verify("H5Lget_info_by_idx_f", corder, 0, total_error)
! Verify the link information for new link, in increasing creation order
! HDmemset(&linfo, 0, sizeof(linfo));
CALL H5Lget_info_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), &
link_type, f_corder_valid, corder, cset, address, val_size, error)
CALL check("H5Lget_info_by_idx_f", error, total_error)
- CALL VERIFY("H5Lget_info_by_idx_f", corder, n, total_error)
+ CALL verify("H5Lget_info_by_idx_f", corder, n, total_error)
! Verify value for new soft link, in increasing creation order
!!$ IF(hard_link)THEN
@@ -1481,21 +1457,21 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname_small, error, size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
- CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:LEN(tmpname_small)), tmpname_small(1:LEN(tmpname_small)), total_error)
- CALL VERIFY("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
! try it with the correct size
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname, error, size=size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
- CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:LEN(tmpname)), tmpname(1:LEN(tmpname)), total_error)
- CALL VERIFY("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname_big, error, size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
- CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:7), tmpname_big(1:7), total_error)
- CALL VERIFY("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
+ CALL verify("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
! Try with a buffer set to small
@@ -1522,9 +1498,6 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
SUBROUTINE test_lcpl(cleanup, fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -1591,7 +1564,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
! * creation property list and is always ASCII.
!#define H5F_DEFAULT_CSET H5T_CSET_ASCII -- FROM H5Fprivate.h --
- CALL VERIFY("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
+ CALL verify("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
! Create and commit a datatype with the default LCPL
CALL h5tcopy_f(H5T_NATIVE_INTEGER, type_id, error)
@@ -1652,10 +1625,10 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
DO i = 1, 2
tmp1 = INT(dimsout(i))
tmp2 = INT(extend_dim(i))
- CALL VERIFY("H5Sget_simple_extent_dims", tmp1, tmp2, total_error)
+ CALL verify("H5Sget_simple_extent_dims", tmp1, tmp2, total_error)
tmp1 = INT(maxdimsout(i))
tmp2 = INT(dims(i))
- CALL VERIFY("H5Sget_simple_extent_dims", tmp1, tmp2, total_error)
+ CALL verify("H5Sget_simple_extent_dims", tmp1, tmp2, total_error)
ENDDO
! close data set
@@ -1722,7 +1695,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL H5Pget_char_encoding_f(lcpl_id, encoding, error)
CALL check("H5Pget_char_encoding_f", error, total_error)
- CALL VERIFY("H5Pget_char_encoding_f", encoding, H5T_CSET_UTF8_F, total_error)
+ CALL verify("H5Pget_char_encoding_f", encoding, H5T_CSET_UTF8_F, total_error)
! Check that its character encoding is UTF-8
CALL H5Lget_info_f(file_id, "dataset2", &
@@ -1744,7 +1717,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL H5Lexists_f(file_id,"/dataset2_link",Lexists, error)
CALL check("H5Lexists",error, total_error)
- CALL verifylogical("H5Lexists", Lexists,.TRUE.,total_error)
+ CALL verify("H5Lexists", Lexists,.TRUE.,total_error)
! Check that its character encoding is ASCII
CALL H5Lget_info_f(file_id, "/dataset2_link", &
@@ -1834,9 +1807,6 @@ END SUBROUTINE test_lcpl
SUBROUTINE objcopy(fapl, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
@@ -1867,7 +1837,7 @@ SUBROUTINE objcopy(fapl, total_error)
! Verify object copy flags
CALL H5Pget_copy_object_f(pid, cpy_flags, error)
CALL check("H5Pget_copy_object_f",error, total_error)
- CALL VERIFY("H5Pget_copy_object_f", cpy_flags, flag, total_error)
+ CALL verify("H5Pget_copy_object_f", cpy_flags, flag, total_error)
!!$
!!$ CALL test_copy_option(fcpl_src, fcpl_dst, my_fapl, H5O_COPY_WITHOUT_ATTR_FLAG,
@@ -1898,9 +1868,6 @@ END SUBROUTINE objcopy
SUBROUTINE lapl_nlinks( fapl, total_error)
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: fapl
INTEGER, INTENT(INOUT) :: total_error
@@ -1972,7 +1939,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
nlinks = 0
CALL H5Pget_nlinks_f(plist, nlinks, error)
CALL check("H5Pset_nlinks_f",error,total_error)
- CALL VERIFY("H5Pset_nlinks_f",INT(nlinks), 20, total_error)
+ CALL verify("H5Pset_nlinks_f",INT(nlinks), 20, total_error)
! Open object through what is normally too many soft links using
@@ -1984,7 +1951,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
! Check name
CALL h5iget_name_f(gid, objname, buf_size, name_len, error)
CALL check("h5iget_name_f",error,total_error)
- CALL VerifyString("h5iget_name_f", TRIM(objname),"/soft17", total_error)
+ CALL verify("h5iget_name_f", TRIM(objname),"/soft17", total_error)
! Create group using soft link
CALL H5Gcreate_f(gid, "new_soft", gid2, error)
CALL check("H5Gcreate_f", error, total_error)
@@ -2006,12 +1973,12 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
CALL H5Pget_nlinks_f(plist, nlinks, error)
CALL check("H5Pget_nlinks_f",error,total_error)
- CALL VERIFY("H5Pget_nlinks_f", INT(nlinks), 4, total_error)
+ CALL verify("H5Pget_nlinks_f", INT(nlinks), 4, total_error)
! Try opening through what is now too many soft links
CALL H5Oopen_f(fid,"soft5",gid,error,plist)
- CALL VERIFY("H5Oopen_f", error, -1, total_error) ! should fail
+ CALL verify("H5Oopen_f", error, -1, total_error) ! should fail
! Open object through lesser soft link
CALL H5Oopen_f(fid,"soft4",gid,error,plist)
@@ -2020,7 +1987,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
! Check name
CALL h5iget_name_f(gid, objname, buf_size, name_len, error)
CALL check("h5iget_name_f",error,total_error)
- CALL VerifyString("h5iget_name_f", TRIM(objname),"/soft4", total_error)
+ CALL verify("h5iget_name_f", TRIM(objname),"/soft4", total_error)
! Test other functions that should use a LAPL
nlinks = 20
diff --git a/fortran/test/tH5I.f90 b/fortran/test/tH5I.f90
index 088b4eb..97c48c6 100644
--- a/fortran/test/tH5I.f90
+++ b/fortran/test/tH5I.f90
@@ -27,6 +27,10 @@
!
!*****
MODULE TH5I
+
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
CONTAINS
@@ -34,8 +38,6 @@ CONTAINS
! This subroutine tests following functionalities: h5iget_type_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -88,7 +90,7 @@ CONTAINS
dtype = -1
CALL H5Iis_valid_f(dtype, tri_ret, error)
CALL check("H5Iis_valid_f", error, total_error)
- CALL VerifyLogical("H5Iis_valid_f", tri_ret, .FALSE., total_error)
+ CALL verify("H5Iis_valid_f", tri_ret, .FALSE., total_error)
! Create a datatype id
CALL H5Tcopy_f(H5T_NATIVE_INTEGER,dtype,error)
@@ -97,7 +99,7 @@ CONTAINS
! Check that the ID is valid
CALL H5Iis_valid_f(dtype, tri_ret, error)
CALL check("H5Iis_valid_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", tri_ret, .TRUE., total_error)
+ CALL verify("H5Tequal_f", tri_ret, .TRUE., total_error)
CALL H5Tclose_f(dtype, error)
CALL check("H5Tclose_f", error, total_error)
diff --git a/fortran/test/tH5L_F03.f90 b/fortran/test/tH5L_F03.f90
index 795f1e2..40afdbc 100644
--- a/fortran/test/tH5L_F03.f90
+++ b/fortran/test/tH5L_F03.f90
@@ -32,8 +32,10 @@
!*****
MODULE liter_cb_mod
- USE HDF5
- USE ISO_C_BINDING
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+ USE, INTRINSIC :: ISO_C_BINDING
IMPLICIT NONE
TYPE iter_enum
@@ -45,7 +47,7 @@ MODULE liter_cb_mod
! Custom group iteration callback data
TYPE, bind(c) :: iter_info
- CHARACTER(LEN=1), DIMENSION(1:10) :: name ! The name of the object
+ CHARACTER(KIND=C_CHAR), DIMENSION(1:10) :: name ! The name of the object
INTEGER(c_int) :: TYPE ! The TYPE of the object
INTEGER(c_int) :: command ! The TYPE of RETURN value
END TYPE iter_info
@@ -60,8 +62,6 @@ CONTAINS
INTEGER(KIND=C_INT) FUNCTION liter_cb(group, name, link_info, op_data) bind(C)
- USE HDF5
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER(HID_T), VALUE :: group
@@ -123,9 +123,6 @@ CONTAINS
!***************************************************************
SUBROUTINE test_iter_group(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
USE liter_cb_mod
IMPLICIT NONE
@@ -251,11 +248,11 @@ SUBROUTINE test_iter_group(total_error)
CALL H5Literate_f(file, H5_INDEX_NAME_F, H5_ITER_INC_F, idx, f1, f2, ret_value, error)
IF(error.LT.0) EXIT
! Verify return value from iterator gets propagated correctly
- CALL VERIFY("H5Literate", ret_value, 2, total_error)
+ CALL verify("H5Literate", ret_value, 2, total_error)
! Increment the number of times "2" is returned
i = i + 1
! Verify that the index is the correct value
- CALL VERIFY("H5Literate", INT(idx), INT(i), total_error)
+ CALL verify("H5Literate", INT(idx), INT(i), total_error)
IF(idx .GT.ndatasets+2)THEN
PRINT*,"ERROR: Group iteration function walked too far!"
ENDIF
@@ -264,14 +261,14 @@ SUBROUTINE test_iter_group(total_error)
DO j = 1, 10
ichr10(j:j) = info%name(j)(1:1)
ENDDO
- CALL verifystring("H5Literate_f", ichr10, lnames(INT(idx)), total_error)
+ CALL verify("H5Literate_f", ichr10, lnames(INT(idx)), total_error)
IF(i.EQ.52)EXIT ! prints out error message otherwise (for gcc/gfortran/g95) not intel (why) -FIXME- scot
END DO
! put check if did not walk far enough -scot FIXME
IF(i .NE. (NDATASETS + 2)) THEN
- CALL VERIFY("H5Literate_f", i, INT(NDATASETS + 2), total_error)
+ CALL verify("H5Literate_f", i, INT(NDATASETS + 2), total_error)
PRINT*,"ERROR: Group iteration function didn't perform multiple iterations correctly"
ENDIF
@@ -288,13 +285,13 @@ SUBROUTINE test_iter_group(total_error)
CALL H5Literate_f(file, H5_INDEX_NAME_F, H5_ITER_INC_F, idx, f1, f2, ret_value, error)
IF(error.LT.0) EXIT
- CALL VERIFY("H5Literate_f", ret_value, 1, total_error)
+ CALL verify("H5Literate_f", ret_value, 1, total_error)
! Increment the number of times "1" is returned
i = i + 1
! Verify that the index is the correct value
- CALL VERIFY("H5Literate_f", INT(idx), INT(i+10), total_error)
+ CALL verify("H5Literate_f", INT(idx), INT(i+10), total_error)
IF(idx .GT.ndatasets+2)THEN
PRINT*,"Group iteration function walked too far!"
@@ -304,7 +301,7 @@ SUBROUTINE test_iter_group(total_error)
ichr10(j:j) = info%name(j)(1:1)
ENDDO
! Verify that the correct name is retrieved
- CALL verifystring("H5Literate_f", ichr10, lnames(INT(idx)), total_error)
+ CALL verify("H5Literate_f", ichr10, lnames(INT(idx)), total_error)
IF(i.EQ.42)EXIT ! prints out error message otherwise (for gcc/gfortran/g95) not intel (why) -FIX- scot
ENDDO
diff --git a/fortran/test/tH5MISC_1_8.f90 b/fortran/test/tH5MISC_1_8.f90
index efaf594..ba3f095 100644
--- a/fortran/test/tH5MISC_1_8.f90
+++ b/fortran/test/tH5MISC_1_8.f90
@@ -25,11 +25,13 @@
!*****
MODULE TH5MISC_1_8
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE dtransform(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -57,22 +59,22 @@ SUBROUTINE dtransform(cleanup, total_error)
CALL H5Pget_data_transform_f(dxpl_id_c_to_f, ptrgetTest, error, size=size)
CALL check("dtransform.H5Pget_data_transform_f", error, total_error)
- CALL VerifyString("dtransform.H5Pget_data_transform_f", c_to_f, ptrgetTest, total_error)
- CALL VERIFY("dtransform.H5Pget_data_transform_f", INT(size),15, total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", c_to_f, ptrgetTest, total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", INT(size),15, total_error)
! check case when receiving buffer to small
CALL H5Pget_data_transform_f(dxpl_id_c_to_f, ptrgetTest_small, error, size=size)
CALL check("dtransform.H5Pget_data_transform_f", error, total_error)
- CALL VerifyString("dtransform.H5Pget_data_transform_f", c_to_f(1:7), ptrgetTest_small, total_error)
- CALL VERIFY("dtransform.H5Pget_data_transform_f", INT(size),15, total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", c_to_f(1:7), ptrgetTest_small, total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", INT(size),15, total_error)
! check case when receiving buffer to big
CALL H5Pget_data_transform_f(dxpl_id_c_to_f, ptrgetTest_big, error, size=size)
CALL check("dtransform.H5Pget_data_transform_f", error, total_error)
- CALL VerifyString("dtransform.H5Pget_data_transform_f", c_to_f(1:15), ptrgetTest_big(1:15), total_error)
- CALL VERIFY("dtransform.H5Pget_data_transform_f", INT(size), 15, total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", c_to_f(1:15), ptrgetTest_big(1:15), total_error)
+ CALL verify("dtransform.H5Pget_data_transform_f", INT(size), 15, total_error)
CALL H5Fclose_f(file_id, error)
CALL check("H5Fclose_f", error, total_error)
@@ -92,9 +94,6 @@ END SUBROUTINE dtransform
SUBROUTINE test_genprop_basic_class(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -117,7 +116,7 @@ SUBROUTINE test_genprop_basic_class(total_error)
cid1 = 456
CALL H5Pget_class_name_f(cid1, name, size, error)
- CALL VERIFY("H5Pget_class_name", error, -1, error)
+ CALL verify("H5Pget_class_name", error, -1, error)
! Create a new generic class, derived from the root of the class hierarchy
CALL H5Pcreate_class_f(H5P_ROOT_F, CLASS1_NAME, cid1, error)
@@ -126,8 +125,8 @@ SUBROUTINE test_genprop_basic_class(total_error)
! Check class name
CALL H5Pget_class_name_f(cid1, name, size, error)
CALL check("H5Pget_class_name", error, total_error)
- CALL VERIFY("H5Pget_class_name", size,7,error)
- CALL verifystring("H5Pget_class_name", name, CLASS1_NAME, error)
+ CALL verify("H5Pget_class_name", size,7,error)
+ CALL verify("H5Pget_class_name", name, CLASS1_NAME, error)
IF(error.NE.0)THEN
WRITE(*,*) 'Class names do not match! name=',name, 'CLASS1_NAME=',CLASS1_NAME
total_error = total_error + 1
@@ -136,8 +135,8 @@ SUBROUTINE test_genprop_basic_class(total_error)
! Check class name smaller buffer
CALL H5Pget_class_name_f(cid1, name_small, size, error)
CALL check("H5Pget_class_name", error, total_error)
- CALL VERIFY("H5Pget_class_name", size,7,error)
- CALL verifystring("H5Pget_class_name", name_small(1:4), CLASS1_NAME(1:4), error)
+ CALL verify("H5Pget_class_name", size,7,error)
+ CALL verify("H5Pget_class_name", name_small(1:4), CLASS1_NAME(1:4), error)
IF(error.NE.0)THEN
WRITE(*,*) 'Class names do not match! name=',name_small(1:4), 'CLASS1_NAME=',CLASS1_NAME(1:4)
total_error = total_error + 1
@@ -146,8 +145,8 @@ SUBROUTINE test_genprop_basic_class(total_error)
! Check class name bigger buffer
CALL H5Pget_class_name_f(cid1, name_big, size, error)
CALL check("H5Pget_class_name", error, total_error)
- CALL VERIFY("H5Pget_class_name", size,7,error)
- CALL verifystring("H5Pget_class_name", TRIM(name_big), TRIM(CLASS1_NAME), error)
+ CALL verify("H5Pget_class_name", size,7,error)
+ CALL verify("H5Pget_class_name", TRIM(name_big), TRIM(CLASS1_NAME), error)
IF(error.NE.0)THEN
WRITE(*,*) 'Class names do not match! name=',TRIM(name_small), 'CLASS1_NAME=',TRIM(CLASS1_NAME)
total_error = total_error + 1
@@ -160,13 +159,13 @@ SUBROUTINE test_genprop_basic_class(total_error)
! Verify class parent correct
CALL H5Pequal_f(cid2, H5P_ROOT_F, flag, error)
CALL check("H5Pequal_f", error, total_error)
- CALL verifylogical("H5Pequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Pequal_f", flag, .TRUE., total_error)
! Make certain false postives aren't being returned
CALL H5Pequal_f(cid2, H5P_FILE_CREATE_F, flag, error)
CALL check("H5Pequal_f", error, total_error)
- CALL verifylogical("H5Pequal_f", flag, .FALSE., total_error)
+ CALL verify("H5Pequal_f", flag, .FALSE., total_error)
! Close parent class
CALL H5Pclose_class_f(cid2, error)
@@ -187,8 +186,6 @@ SUBROUTINE test_h5s_encode(total_error)
!**
!***************************************************************
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -241,7 +238,7 @@ SUBROUTINE test_h5s_encode(total_error)
! Try decoding bogus buffer
CALL H5Sdecode_f(sbuf, decoded_sid1, error)
- CALL VERIFY("H5Sdecode", error, -1, total_error)
+ CALL verify("H5Sdecode", error, -1, total_error)
CALL H5Sencode_f(sid1, sbuf, sbuf_size, error)
CALL check("H5Sencode", error, total_error)
@@ -254,7 +251,7 @@ SUBROUTINE test_h5s_encode(total_error)
! Verify the decoded dataspace
CALL h5sget_simple_extent_npoints_f(decoded_sid1, n, error)
CALL check("h5sget_simple_extent_npoints_f", error, total_error)
- CALL VERIFY("h5sget_simple_extent_npoints_f", INT(n), INT(SPACE1_DIM1 * SPACE1_DIM2 * SPACE1_DIM3), &
+ CALL verify("h5sget_simple_extent_npoints_f", INT(n), INT(SPACE1_DIM1 * SPACE1_DIM2 * SPACE1_DIM3), &
total_error)
!
@@ -297,16 +294,16 @@ SUBROUTINE test_h5s_encode(total_error)
CALL H5Sget_simple_extent_type_f(decoded_sid3, space_type, error)
CALL check("H5Sget_simple_extent_type_f", error, total_error)
- CALL VERIFY("H5Sget_simple_extent_type_f", space_type, H5S_SCALAR_F, total_error)
+ CALL verify("H5Sget_simple_extent_type_f", space_type, H5S_SCALAR_F, total_error)
! Verify decoded dataspace
CALL h5sget_simple_extent_npoints_f(decoded_sid3, n, error)
CALL check("h5sget_simple_extent_npoints_f", error, total_error)
- CALL VERIFY("h5sget_simple_extent_npoints_f", INT(n), 1, total_error)
+ CALL verify("h5sget_simple_extent_npoints_f", INT(n), 1, total_error)
CALL H5Sget_simple_extent_ndims_f(decoded_sid3, rank, error)
CALL CHECK("H5Sget_simple_extent_ndims_f", error, total_error)
- CALL VERIFY("H5Sget_simple_extent_ndims_f", rank, 0, total_error )
+ CALL verify("H5Sget_simple_extent_ndims_f", rank, 0, total_error )
CALL h5sclose_f(sid3, error)
CALL check("h5sclose_f", error, total_error)
@@ -335,8 +332,6 @@ END SUBROUTINE test_h5s_encode
SUBROUTINE test_scaleoffset(cleanup, total_error )
- USE HDF5
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
diff --git a/fortran/test/tH5O.f90 b/fortran/test/tH5O.f90
index 99d4c22..51e1d64 100644
--- a/fortran/test/tH5O.f90
+++ b/fortran/test/tH5O.f90
@@ -28,11 +28,13 @@
!*****
MODULE TH5O
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE test_h5o(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -57,9 +59,6 @@ END SUBROUTINE test_h5o
SUBROUTINE test_h5o_link(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -157,7 +156,7 @@ SUBROUTINE test_h5o_link(total_error)
CALL H5Tcommitted_f(type_id, committed, error)
CALL check("H5Tcommitted_f",error,total_error)
- CALL verifyLogical("H5Tcommitted_f", committed, .TRUE., total_error)
+ CALL verify("H5Tcommitted_f", committed, .TRUE., total_error)
! Create a dataset with no name using the committed datatype
CALL H5Dcreate_anon_f(file_id, type_id, space_id, dset_id, error ) ! using no optional parameters
@@ -181,7 +180,7 @@ SUBROUTINE test_h5o_link(total_error)
! Verify the data
DO i = 1, TEST6_DIM1
DO j = 1, TEST6_DIM2
- CALL VERIFY("H5Dread_f",wdata(i,j),rdata(i,j),total_error)
+ CALL verify("H5Dread_f",wdata(i,j),rdata(i,j),total_error)
wdata(i,j) = i*j
ENDDO
ENDDO
@@ -229,7 +228,7 @@ SUBROUTINE test_h5o_link(total_error)
! Verify the data
DO i = 1, TEST6_DIM1
DO j = 1, TEST6_DIM2
- CALL VERIFY("H5Dread",wdata(i,j),rdata(i,j),total_error)
+ CALL verify("H5Dread",wdata(i,j),rdata(i,j),total_error)
ENDDO
ENDDO
! Close open IDs
@@ -464,7 +463,7 @@ SUBROUTINE test_h5o_link(total_error)
nlinks = 0
CALL h5pget_nlinks_f(plist, nlinks, error)
CALL check("h5pget_nlinks_f",error,total_error)
- CALL VERIFY("h5pget_nlinks_f", INT(nlinks), 2, total_error)
+ CALL verify("h5pget_nlinks_f", INT(nlinks), 2, total_error)
! See if the link exists
CALL h5oexists_by_name_f(file_id,"/G1_LINK", link_exists, error, plist)
@@ -578,9 +577,6 @@ END SUBROUTINE test_h5o_link
SUBROUTINE test_h5o_plist(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -631,18 +627,18 @@ SUBROUTINE test_h5o_plist(total_error)
! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(tcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
! Create a group, dataset, and committed datatype within the file,
! using the respective type of creation property lists.
@@ -700,18 +696,18 @@ SUBROUTINE test_h5o_plist(total_error)
! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(tcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
! Close current objects
CALL h5pclose_f(gcpl,error)
@@ -757,18 +753,18 @@ SUBROUTINE test_h5o_plist(total_error)
! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
CALL H5Pget_attr_phase_change_f(tcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
- CALL VERIFY("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
+ CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
! Close current objects
CALL h5pclose_f(gcpl,error)
diff --git a/fortran/test/tH5O_F03.f90 b/fortran/test/tH5O_F03.f90
index 8e014f4..834308b 100644
--- a/fortran/test/tH5O_F03.f90
+++ b/fortran/test/tH5O_F03.f90
@@ -31,7 +31,7 @@
MODULE visit_cb
USE HDF5
- USE ISO_C_BINDING
+ USE, INTRINSIC :: ISO_C_BINDING
IMPLICIT NONE
@@ -53,7 +53,7 @@ MODULE visit_cb
!
! Object visit structs
TYPE, bind(c) :: obj_visit_t
- CHARACTER(LEN=1), DIMENSION(1:180) :: path ! Path to object
+ CHARACTER(KIND=C_CHAR), DIMENSION(1:180) :: path ! Path to object
INTEGER :: type_obj ! type of object
END TYPE obj_visit_t
diff --git a/fortran/test/tH5P.f90 b/fortran/test/tH5P.f90
index 7dcc580..39d8c1e 100644
--- a/fortran/test/tH5P.f90
+++ b/fortran/test/tH5P.f90
@@ -27,6 +27,9 @@
!
!*****
MODULE TH5P
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
CONTAINS
@@ -36,8 +39,6 @@ SUBROUTINE external_test(cleanup, total_error)
! h5pset_external_f, h5pget_external_count_f,
! h5pget_external_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -153,8 +154,6 @@ SUBROUTINE external_test(cleanup, total_error)
END SUBROUTINE external_test
SUBROUTINE multi_file_test(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -421,10 +420,7 @@ END SUBROUTINE multi_file_test
! April 16, 2009
!-------------------------------------------------------------------------
!
-SUBROUTINE test_chunk_cache(cleanup, total_error)
-
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
+SUBROUTINE test_chunk_cache(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -470,19 +466,16 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Pget_cache_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl1, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_1), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_1), INT(nbytes_4), total_error)
-
- IF( .NOT.dreal_eq( REAL(w0_1,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", nslots_1, nslots_4, total_error)
+ CALL verify("H5Pget_chunk_cache_f", nbytes_1, nbytes_4, total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_1, w0_4, total_error)
! Set a lapl property on dapl1 (to verify inheritance)
CALL H5Pset_nlinks_f(dapl1, 134_size_t , error)
CALL check("H5Pset_nlinks_f", error, total_error)
CALL H5Pget_nlinks_f(dapl1, nlinks, error)
CALL check("H5Pget_nlinks_f", error, total_error)
- CALL VERIFY("H5Pget_nlinks_f", INT(nlinks), 134, total_error)
+ CALL verify("H5Pget_nlinks_f", INT(nlinks), 134, total_error)
CALL h5pcreate_f(H5P_FILE_ACCESS_F, fapl_local, error)
@@ -529,11 +522,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_2,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error)
@@ -561,11 +552,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_3), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_3,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f4", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_3), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_3, w0_4, total_error)
CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error)
@@ -581,11 +570,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_2,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error)
@@ -601,11 +588,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_2,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
! Don't close dapl2, we will use it in the next section
! Modify cache values on fapl_local
@@ -638,11 +623,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_2,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
! Test H5D_CHUNK_CACHE_NSLOTS_DEFAULT and H5D_CHUNK_CACHE_W0_DEFAULT
nslots_2 = H5D_CHUNK_CACHE_NSLOTS_DFLT_F
@@ -663,11 +646,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
CALL check("H5Pget_chunk_cache_f", error, total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nslots_3), INT(nslots_4), total_error)
- CALL VERIFY("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
- IF( .NOT.dreal_eq( REAL(w0_3,dp), REAL( w0_4, dp)) ) THEN
- CALL VERIFYlogical("H5Pget_chunk_cache_f", .TRUE., .FALSE., total_error)
- ENDIF
+ CALL verify("H5Pget_chunk_cache_f", INT(nslots_3), INT(nslots_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
+ CALL verify("H5Pget_chunk_cache_f", w0_3, w0_4, total_error)
! Close
diff --git a/fortran/test/tH5P_F03.f90 b/fortran/test/tH5P_F03.f90
index 56f9679..ec9fef2 100644
--- a/fortran/test/tH5P_F03.f90
+++ b/fortran/test/tH5P_F03.f90
@@ -52,8 +52,6 @@ CONTAINS
INTEGER FUNCTION test_genprop_cls_cb1_f(list_id, create_data ) bind(C)
- USE HDF5
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN), VALUE :: list_id
@@ -71,6 +69,11 @@ END MODULE test_genprop_cls_cb1_mod
MODULE TH5P_F03
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+ USE ISO_C_BINDING
+
CONTAINS
!-------------------------------------------------------------------------
@@ -92,9 +95,6 @@ CONTAINS
SUBROUTINE test_create(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -187,18 +187,12 @@ SUBROUTINE test_create(total_error)
CALL check("H5Pset_fill_value_f",error, total_error)
CALL h5pget_fill_value_f(dcpl, H5T_NATIVE_DOUBLE, dpfill, error)
CALL check("H5Pget_fill_value_f",error, total_error)
- IF(.NOT.dreal_eq( REAL(dpfill,dp), 1.0_dp))THEN
- PRINT*,"***ERROR: Returned wrong fill value (double)"
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY("***ERROR: Returned wrong fill value (double)", dpfill, 1.0_dp, total_error)
CALL H5Pset_fill_value_f(dcpl, H5T_NATIVE_REAL, 2.0, error)
CALL check("H5Pset_fill_value_f",error, total_error)
CALL h5pget_fill_value_f(dcpl, H5T_NATIVE_REAL, rfill, error)
CALL check("H5Pget_fill_value_f",error, total_error)
- IF(.NOT.dreal_eq( REAL(rfill,dp), REAL(2.0,dp)))THEN
- PRINT*,"***ERROR: Returned wrong fill value (real)"
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY("***ERROR: Returned wrong fill value (real)", rfill, 2.0, total_error)
! For the actual compound type
CALL H5Pset_fill_value_f(dcpl, comp_type_id, f_ptr, error)
@@ -234,10 +228,10 @@ SUBROUTINE test_create(total_error)
CALL H5Pget_fill_value_f(dcpl, comp_type_id, f_ptr, error)
CALL check("H5Pget_fill_value_f", error, total_error)
+ CALL verify("***ERROR: Returned wrong fill value", rd_c%a, fill_ctype%a, total_error)
+ CALL verify("***ERROR: Returned wrong fill value", rd_c%y, fill_ctype%y, total_error)
- IF( .NOT.dreal_eq( REAL(rd_c%a,dp), REAL(fill_ctype%a, dp)) .OR. &
- .NOT.dreal_eq( REAL(rd_c%y,dp), REAL(fill_ctype%y, dp)) .OR. &
- rd_c%x .NE. fill_ctype%x .OR. &
+ IF( rd_c%x .NE. fill_ctype%x .OR. &
rd_c%z .NE. fill_ctype%z )THEN
PRINT*,"***ERROR: Returned wrong fill value"
@@ -269,9 +263,6 @@ SUBROUTINE test_genprop_class_callback(total_error)
!
!
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
USE test_genprop_cls_cb1_mod
IMPLICIT NONE
@@ -330,7 +321,7 @@ SUBROUTINE test_genprop_class_callback(total_error)
! Check the number of properties in class
CALL h5pget_nprops_f(cid1, nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
- CALL VERIFY("h5pget_nprops_f", INT(nprops), 4, total_error)
+ CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
! Initialize class callback structs
@@ -350,12 +341,12 @@ SUBROUTINE test_genprop_class_callback(total_error)
! Check that the list's class is correct
CALL H5Pequal_f(cid2, cid1, flag, error)
CALL check("H5Pequal_f", error, total_error)
- CALL verifylogical("H5Pequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Pequal_f", flag, .TRUE., total_error)
! Check the class name
CALL H5Pget_class_name_f(cid2, CLASS1_NAME_BUF, CLASS1_NAME_SIZE, error)
CALL check("H5Pget_class_name_f", error, total_error)
- CALL verifystring("H5Pget_class_name_f", CLASS1_NAME_BUF, CLASS1_NAME, error)
+ CALL verify("H5Pget_class_name_f", CLASS1_NAME_BUF, CLASS1_NAME, error)
IF(error.NE.0)THEN
WRITE(*,*) 'Class names do not match! name=',CLASS1_NAME_BUF, 'CLASS1_NAME=',CLASS1_NAME
total_error = total_error + 1
@@ -365,42 +356,42 @@ SUBROUTINE test_genprop_class_callback(total_error)
CALL check("h5pclose_class_f", error, total_error)
! Verify that the creation callback occurred
- CALL VERIFY("h5pcreate_f", crt_cb_struct%count, 1, total_error)
- CALL VERIFY_INTEGER_HID_T("h5pcreate_f", crt_cb_struct%id, lid1, total_error)
+ CALL verify("h5pcreate_f", crt_cb_struct%count, 1, total_error)
+ CALL verify("h5pcreate_f", crt_cb_struct%id, lid1, total_error)
! Check the number of properties in list
CALL h5pget_nprops_f(lid1,nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
- CALL VERIFY("h5pget_nprops_f", INT(nprops), 4, total_error)
+ CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
! Create another property list from the class
CALL h5pcreate_f(cid1, lid2, error)
CALL check("h5pcreate_f", error, total_error)
! Verify that the creation callback occurred
- CALL VERIFY("h5pcreate_f", crt_cb_struct%count, 2, total_error)
- CALL VERIFY_INTEGER_HID_T("h5pcreate_f", crt_cb_struct%id, lid2, total_error)
+ CALL verify("h5pcreate_f", crt_cb_struct%count, 2, total_error)
+ CALL verify("h5pcreate_f", crt_cb_struct%id, lid2, total_error)
! Check the number of properties in list
CALL h5pget_nprops_f(lid2,nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
- CALL VERIFY("h5pget_nprops_f", INT(nprops), 4, total_error)
+ CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
! Close first list
CALL h5pclose_f(lid1, error);
CALL check("h5pclose_f", error, total_error)
! Verify that the close callback occurred
- CALL VERIFY("h5pcreate_f", cls_cb_struct%count, 1, total_error)
- CALL VERIFY_INTEGER_HID_T("h5pcreate_f", cls_cb_struct%id, lid1, total_error)
+ CALL verify("h5pcreate_f", cls_cb_struct%count, 1, total_error)
+ CALL verify("h5pcreate_f", cls_cb_struct%id, lid1, total_error)
! Close second list
CALL h5pclose_f(lid2, error);
CALL check("h5pclose_f", error, total_error)
! Verify that the close callback occurred
- CALL VERIFY("h5pcreate_f", cls_cb_struct%count, 2, total_error)
- CALL verify_INTEGER_HID_T("h5pcreate_f", cls_cb_struct%id, lid2, total_error)
+ CALL verify("h5pcreate_f", cls_cb_struct%count, 2, total_error)
+ CALL verify("h5pcreate_f", cls_cb_struct%id, lid2, total_error)
! Close class
CALL h5pclose_class_f(cid1, error)
@@ -423,8 +414,6 @@ END SUBROUTINE test_genprop_class_callback
SUBROUTINE test_h5p_file_image(total_error)
- USE HDF5
- USE TH5_MISC
USE, INTRINSIC :: iso_c_binding
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -475,11 +464,11 @@ SUBROUTINE test_h5p_file_image(total_error)
CALL check("h5pget_file_image_f", error, total_error)
! Check that sizes are the same, and that the buffers are identical but separate
- CALL VERIFY("h5pget_file_image_f", INT(temp_size), INT(size), total_error)
+ CALL verify("h5pget_file_image_f", INT(temp_size), INT(size), total_error)
! Verify the image data is correct
DO i = 1, count
- CALL VERIFY("h5pget_file_image_f", temp(i), buffer(i), total_error)
+ CALL verify("h5pget_file_image_f", temp(i), buffer(i), total_error)
ENDDO
END SUBROUTINE test_h5p_file_image
@@ -499,10 +488,6 @@ END SUBROUTINE test_h5p_file_image
!
SUBROUTINE external_test_offset(cleanup,total_error)
- USE ISO_C_BINDING
- USE TH5_MISC
- USE HDF5 ! This module contains all necessary modules
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tH5R.f90 b/fortran/test/tH5R.f90
index bd6264f..ef392b4 100644
--- a/fortran/test/tH5R.f90
+++ b/fortran/test/tH5R.f90
@@ -33,11 +33,13 @@
!
MODULE TH5R
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE refobjtest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -125,7 +127,6 @@ SUBROUTINE refobjtest(cleanup, total_error)
CALL check("h5tcopy_f",error,total_error)
CALL h5tcommit_f(file_id, "MyType", type_id, error)
CALL check("h5tcommit_f",error,total_error)
-
!
! Close dataspaces, groups and integer dataset
!
@@ -164,22 +165,22 @@ SUBROUTINE refobjtest(cleanup, total_error)
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),7, total_error)
- CALL VerifyString("H5Rget_name_f", buf, "/GROUP1", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),7, total_error)
+ CALL verify("H5Rget_name_f", buf, "/GROUP1", total_error)
! with buffer bigger then needed
CALL H5Rget_name_f(dsetr_id, ref(1), buf_big, error, buf_size )
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error)
- CALL VerifyString("H5Rget_name_f", TRIM(buf_big), "/GROUP1", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),7,total_error)
+ CALL verify("H5Rget_name_f", TRIM(buf_big), "/GROUP1", total_error)
! getting path to dataset in /Group1
CALL H5Rget_name_f(dsetr_id, ref(2), buf_big, error, buf_size )
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),14,total_error)
- CALL VerifyString("H5Rget_name_f", TRIM(buf_big), "/GROUP1/GROUP2", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),14,total_error)
+ CALL verify("H5Rget_name_f", TRIM(buf_big), "/GROUP1/GROUP2", total_error)
!
!Close the dataset
@@ -233,7 +234,6 @@ SUBROUTINE refobjtest(cleanup, total_error)
CALL h5fclose_f(file_id, error)
CALL check("h5fclose_f",error,total_error)
-
IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
RETURN
@@ -244,9 +244,6 @@ END SUBROUTINE refobjtest
! and h5rdereference_f functionalities
!
SUBROUTINE refregtest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-! use iso_c_binding ! NOTE: if this is uncommented, then need to move subroutine into another file.
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -408,23 +405,23 @@ SUBROUTINE refregtest(cleanup, total_error)
! Get name of the dataset the first region reference points to using H5Rget_name_f
CALL H5Rget_name_f(dsetr_id, ref_out(1), buf, error, buf_size )
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error)
- CALL VerifyString("H5Rget_name_f", buf, "/MATRIX", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),7,total_error)
+ CALL verify("H5Rget_name_f", buf, "/MATRIX", total_error)
! Get name of the dataset the first region reference points to using H5Rget_name_f
! buffer bigger then needed
CALL H5Rget_name_f(dsetr_id, ref_out(1), buf_big, error, buf_size )
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error)
- CALL VerifyString("H5Rget_name_f", TRIM(buf_big), "/MATRIX", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),7,total_error)
+ CALL verify("H5Rget_name_f", TRIM(buf_big), "/MATRIX", total_error)
! Get name of the dataset the first region reference points to using H5Rget_name_f
! buffer smaller then needed
CALL H5Rget_name_f(dsetr_id, ref_out(1), buf_small, error, buf_size )
CALL check("H5Rget_name_f", error, total_error)
- CALL VERIFY("H5Rget_name_f", INT(buf_size),7,total_error)
- CALL VerifyString("H5Rget_name_f", TRIM(buf_small), "/MAT", total_error)
+ CALL verify("H5Rget_name_f", INT(buf_size),7,total_error)
+ CALL verify("H5Rget_name_f", TRIM(buf_small), "/MAT", total_error)
!
! Dereference the first reference.
!
@@ -436,7 +433,7 @@ SUBROUTINE refregtest(cleanup, total_error)
! Get name of the dataset the second region reference points to using H5Rget_name_f
CALL H5Rget_name_f(dsetr_id, ref_out(2), buf, error) ! no optional size
CALL check("H5Rget_name_f", error, total_error)
- CALL VerifyString("H5Rget_name_f", TRIM(buf), "/MATRIX", total_error)
+ CALL verify("H5Rget_name_f", TRIM(buf), "/MATRIX", total_error)
!
! Read selected data from the dataset.
!
diff --git a/fortran/test/tH5S.f90 b/fortran/test/tH5S.f90
index eaaf29a..7223772 100644
--- a/fortran/test/tH5S.f90
+++ b/fortran/test/tH5S.f90
@@ -35,12 +35,14 @@
!*****
MODULE TH5S
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE dataspace_basic_test(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tH5Sselect.f90 b/fortran/test/tH5Sselect.f90
index 7d07308..aeb80e9 100644
--- a/fortran/test/tH5Sselect.f90
+++ b/fortran/test/tH5Sselect.f90
@@ -38,13 +38,14 @@
!*****
MODULE TH5SSELECT
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE test_select_hyperslab(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -699,8 +700,6 @@ CONTAINS
SUBROUTINE test_basic_select(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -1036,8 +1035,6 @@ CONTAINS
!***************************************************************
SUBROUTINE test_select_point(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -1140,9 +1137,9 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(1,i)), INT(coord1(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(2,i)), INT(coord1(2,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(3,i)), INT(coord1(3,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(1,i)), INT(coord1(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(2,i)), INT(coord1(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(3,i)), INT(coord1(3,i)), total_error)
ENDDO
CALL H5Sget_select_npoints_f(sid1, npoints, error)
@@ -1171,9 +1168,9 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(1,i)), INT(coord1(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(2,i)), INT(coord1(2,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord1(3,i)), INT(coord1(3,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(1,i)), INT(coord1(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(2,i)), INT(coord1(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord1(3,i)), INT(coord1(3,i)), total_error)
ENDDO
CALL H5Sget_select_npoints_f(sid1, npoints, error)
@@ -1202,8 +1199,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord2(1,i)), INT(coord2(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord2(2,i)), INT(coord2(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord2(1,i)), INT(coord2(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord2(2,i)), INT(coord2(2,i)), total_error)
ENDDO
!!$
@@ -1238,8 +1235,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord2(1,i)), INT(coord2(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord2(2,i)), INT(coord2(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord2(1,i)), INT(coord2(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord2(2,i)), INT(coord2(2,i)), total_error)
ENDDO
CALL H5Sget_select_npoints_f(sid2, npoints, error)
@@ -1284,8 +1281,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sget_select_elem_pointlist_f(sid2, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord3,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord3(1,i)), INT(coord3(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord3(2,i)), INT(coord3(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord3(1,i)), INT(coord3(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord3(2,i)), INT(coord3(2,i)), total_error)
ENDDO
CALL H5Sget_select_npoints_f(sid2, npoints, error)
@@ -1311,8 +1308,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sget_select_elem_pointlist_f(sid2, INT(POINT1_NPOINTS,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord3,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord3(1,i)), INT(coord3(1,i)), total_error)
- CALL VERIFY("h5sget_select_elem_pointlist_f", INT(temp_coord3(2,i)), INT(coord3(2,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord3(1,i)), INT(coord3(1,i)), total_error)
+ CALL verify("h5sget_select_elem_pointlist_f", INT(temp_coord3(2,i)), INT(coord3(2,i)), total_error)
ENDDO
CALL H5Sget_select_npoints_f(sid2, npoints, error)
@@ -1363,8 +1360,6 @@ END SUBROUTINE test_select_point
!***************************************************************
SUBROUTINE test_select_combine(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1400,7 +1395,7 @@ SUBROUTINE test_select_combine(total_error)
CALL H5Sget_select_type_f(all_id, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
! Copy base dataspace and set selection to "none"
CALL h5scopy_f(base_id, none_id, error)
@@ -1411,7 +1406,7 @@ SUBROUTINE test_select_combine(total_error)
CALL H5Sget_select_type_f(none_id, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_NONE_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_NONE_F), total_error)
! Copy "all" selection & space
CALL H5Scopy_f(all_id, space1, error)
@@ -1429,7 +1424,7 @@ SUBROUTINE test_select_combine(total_error)
! Verify that it's still "all" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1451,12 +1446,12 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the same at the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
! Retrieve the block defined
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
@@ -1464,10 +1459,10 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the correct block is defined
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1490,12 +1485,12 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is an inversion of the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there are two blocks
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
! Retrieve the block defined
@@ -1507,19 +1502,19 @@ SUBROUTINE test_select_combine(total_error)
! No guarantee is implied as the order in which blocks are listed.
! So this will ONLY work for square domains iblock(1:2) = (/5,5/)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 10, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(5,1,1)), 6, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(6,1,1)), 1, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(7,1,1)), 10, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(8,1,1)), 10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(5,1,1)), 6, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(6,1,1)), 1, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(7,1,1)), 10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(8,1,1)), 10, total_error)
! Otherwise make sure the "area" of the block is correct
area = (ABS(INT(blocks(1,1,1)-blocks(3,1,1)))+1)*(ABS(INT(blocks(2,1,1)-blocks(4,1,1)))+1)
area = area + (ABS(INT(blocks(5,1,1)-blocks(7,1,1)))+1)*(ABS(INT(blocks(6,1,1)-blocks(8,1,1)))+1)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", area, 80, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", area, 80, total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1542,12 +1537,12 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is an inversion of the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there are two blocks
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
! Retrieve the block defined
blocks = -1 ! Reset block list
@@ -1559,19 +1554,19 @@ SUBROUTINE test_select_combine(total_error)
! No guarantee is implied as the order in which blocks are listed.
! So this will ONLY work for square domains iblock(1:2) = (/5,5/)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)),10, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(5,1,1)), 6, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(6,1,1)), 1, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(7,1,1)),10, total_error)
-!!$ CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(8,1,1)),10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)),10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(5,1,1)), 6, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(6,1,1)), 1, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(7,1,1)),10, total_error)
+!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(8,1,1)),10, total_error)
! Otherwise make sure the "area" of the block is correct
area = (ABS(INT(blocks(1,1,1)-blocks(3,1,1)))+1)*(ABS(INT(blocks(2,1,1)-blocks(4,1,1)))+1)
area = area + (ABS(INT(blocks(5,1,1)-blocks(7,1,1)))+1)*(ABS(INT(blocks(6,1,1)-blocks(8,1,1)))+1)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", area, 80, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", area, 80, total_error)
! Close temporary dataspace
@@ -1594,7 +1589,7 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1617,13 +1612,13 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
! Retrieve the block defined
blocks = -1 ! Reset block list
@@ -1631,10 +1626,10 @@ SUBROUTINE test_select_combine(total_error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
! Verify that the correct block is defined
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1657,7 +1652,7 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1680,23 +1675,23 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
! Retrieve the block defined
blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
! Verify that the correct block is defined
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1719,7 +1714,7 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1741,12 +1736,12 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
- CALL VERIFY("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
+ CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
! Verify that there is ONLY one BLOCK
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
- CALL VERIFY("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
+ CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
! Retrieve the block defined
@@ -1757,10 +1752,10 @@ SUBROUTINE test_select_combine(total_error)
! Verify that the correct block is defined
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
- CALL VERIFY("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
+ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
! Close temporary dataspace
CALL h5sclose_f(space1, error)
@@ -1785,8 +1780,6 @@ END SUBROUTINE test_select_combine
!***************************************************************
SUBROUTINE test_select_bounds(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1817,10 +1810,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), SPACE11_DIM1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), SPACE11_DIM2, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1, hsize_t), total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2, hsize_t), total_error)
! Set offset for selection
offset(1:2) = 1
@@ -1831,10 +1824,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL verify("h5sget_select_bounds_f", INT(low_bounds(1)), 1, total_error)
- CALL verify("h5sget_select_bounds_f", INT(low_bounds(2)), 1, total_error)
- CALL verify("h5sget_select_bounds_f", INT(high_bounds(1)), SPACE11_DIM1, total_error)
- CALL verify("h5sget_select_bounds_f", INT(high_bounds(2)), SPACE11_DIM2, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 1_hsize_t, total_error)
+ CALL VERIFY("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1, hsize_t), total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2, hsize_t), total_error)
! Reset offset for selection
offset(1:2) = 0
@@ -1847,7 +1840,7 @@ SUBROUTINE test_select_bounds(total_error)
! Get bounds for 'none' selection, should fail
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
- CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error)
+ CALL verify("h5sget_select_bounds_f", error, -1, total_error)
! Set point selection
@@ -1863,10 +1856,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), INT(SPACE11_DIM1-4), total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), INT(SPACE11_DIM2-4), total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 3_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 3_hsize_t, total_error)
+ CALL VERIFY("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1-4,hsize_t), total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2-4,hsize_t), total_error)
! Set bad offset for selection
@@ -1876,7 +1869,7 @@ SUBROUTINE test_select_bounds(total_error)
! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
- CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error)
+ CALL verify("h5sget_select_bounds_f", error, -1, total_error)
! Set valid offset for selection
offset(1:2) = (/2,-2/)
@@ -1887,10 +1880,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 5, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), INT(SPACE11_DIM1-2), total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), INT(SPACE11_DIM2-6), total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 5_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1-2,hsize_t), total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2-6,hsize_t), total_error)
! Reset offset for selection
offset(1:2) = 0
@@ -1911,10 +1904,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), 37, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), 37, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 3_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 3_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), 37_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), 37_hsize_t, total_error)
! Set bad offset for selection
offset(1:2) = (/5,-5/)
@@ -1923,7 +1916,7 @@ SUBROUTINE test_select_bounds(total_error)
! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
- CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error)
+ CALL verify("h5sget_select_bounds_f", error, -1, total_error)
! Set valid offset for selection
offset(1:2) = (/5,-2/)
@@ -1934,10 +1927,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 8, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), 42, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), 35, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 8_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), 42_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), 35_hsize_t, total_error)
! Reset offset for selection
offset(1:2) = 0
@@ -1958,10 +1951,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 3, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), 50, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), 50, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 3_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 3_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), 50_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), 50_hsize_t, total_error)
! Set bad offset for selection
offset(1:2) = (/5,-5/)
@@ -1970,7 +1963,7 @@ SUBROUTINE test_select_bounds(total_error)
! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
- CALL VERIFY("h5sget_select_bounds_f", error, -1, total_error)
+ CALL verify("h5sget_select_bounds_f", error, -1, total_error)
! Set valid offset for selection
offset(1:2) = (/5,-2/)
@@ -1981,10 +1974,10 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(1)), 8, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(low_bounds(2)), 1, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(1)), 55, total_error)
- CALL VERIFY("h5sget_select_bounds_f", INT(high_bounds(2)), 48, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(1), 8_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", low_bounds(2), 1_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(1), 55_hsize_t, total_error)
+ CALL verify("h5sget_select_bounds_f", high_bounds(2), 48_hsize_t, total_error)
! Reset offset for selection
offset(1:2) = 0
diff --git a/fortran/test/tH5T.f90 b/fortran/test/tH5T.f90
index 7822c16..efbceea 100644
--- a/fortran/test/tH5T.f90
+++ b/fortran/test/tH5T.f90
@@ -29,6 +29,10 @@
MODULE TH5T
+ USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
+
CONTAINS
SUBROUTINE compoundtest(cleanup, total_error)
@@ -47,8 +51,6 @@ CONTAINS
! h5tget_class_f, h5tget_member_name_f, h5tget_member_offset_f, h5tget_member_type_f,
! h5tequal_f, h5tinsert_array_f, h5tcommit_f, h5tencode_f, h5tdecode_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -155,7 +157,6 @@ CONTAINS
CALL h5tclose_f(fixed_str2,error)
CALL check("h5tclose_f", error, total_error)
-
data_dims(1) = dimsize
!
! Initialize data buffer.
@@ -178,47 +179,47 @@ CONTAINS
! during write/read to/from dataset with compound datatype.
!
CALL h5pcreate_f(H5P_DATASET_XFER_F, plist_id, error)
- CALL check("h5pcreate_f", error, total_error)
+ CALL check("h5pcreate_f", error, total_error)
CALL h5pset_preserve_f(plist_id, flag, error)
- CALL check("h5pset_preserve_f", error, total_error)
+ CALL check("h5pset_preserve_f", error, total_error)
!
! Create a new file using default properties.
!
- CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
+ CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
if (error .ne. 0) then
write(*,*) "Cannot modify filename"
stop
endif
CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
- CALL check("h5fcreate_f", error, total_error)
+ CALL check("h5fcreate_f", error, total_error)
!
! Create the dataspace.
!
CALL h5screate_simple_f(rank, dims, dspace_id, error)
- CALL check("h5screate_simple_f", error, total_error)
+ CALL check("h5screate_simple_f", error, total_error)
!
! Create compound datatype.
!
! First calculate total size by calculating sizes of each member
!
CALL h5tcopy_f(H5T_NATIVE_CHARACTER, dt5_id, error)
- CALL check("h5tcopy_f", error, total_error)
+ CALL check("h5tcopy_f", error, total_error)
sizechar = 2
CALL h5tset_size_f(dt5_id, sizechar, error)
- CALL check("h5tset_size_f", error, total_error)
+ CALL check("h5tset_size_f", error, total_error)
CALL h5tget_size_f(dt5_id, type_sizec, error)
- CALL check("h5tget_size_f", error, total_error)
+ CALL check("h5tget_size_f", error, total_error)
CALL h5tget_size_f(H5T_NATIVE_INTEGER, type_sizei, error)
- CALL check("h5tget_size_f", error, total_error)
+ CALL check("h5tget_size_f", error, total_error)
CALL h5tget_size_f(H5T_NATIVE_DOUBLE, type_sized, error)
- CALL check("h5tget_size_f", error, total_error)
+ CALL check("h5tget_size_f", error, total_error)
CALL h5tget_size_f(H5T_NATIVE_REAL, type_sizer, error)
- CALL check("h5tget_size_f", error, total_error)
+ CALL check("h5tget_size_f", error, total_error)
!write(*,*) "get sizes", type_sizec, type_sizei, type_sizer, type_sized
type_size = type_sizec + type_sizei + type_sized + type_sizer
CALL h5tcreate_f(H5T_COMPOUND_F, type_size, dtype_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
!
! Insert memebers
!
@@ -226,19 +227,19 @@ CONTAINS
!
offset = 0
CALL h5tinsert_f(dtype_id, "char_field", offset, dt5_id, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! INTEGER member
!
offset = offset + type_sizec ! Offset of the second memeber is 2
CALL h5tinsert_f(dtype_id, "integer_field", offset, H5T_NATIVE_INTEGER, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! DOUBLE PRECISION member
!
offset = offset + type_sizei ! Offset of the third memeber is 6
CALL h5tinsert_f(dtype_id, "double_field", offset, H5T_NATIVE_DOUBLE, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! REAL member
!
@@ -250,123 +251,122 @@ CONTAINS
!
CALL h5dcreate_f(file_id, dsetname, dtype_id, dspace_id, &
dset_id, error)
- CALL check("h5dcreate_f", error, total_error)
+ CALL check("h5dcreate_f", error, total_error)
!
! Create memory types. We have to create a compound datatype
! for each member we want to write.
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sizec, dt1_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt1_id, "char_field", offset, dt5_id, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sizei, dt2_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt2_id, "integer_field", offset, H5T_NATIVE_INTEGER, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sized, dt3_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt3_id, "double_field", offset, H5T_NATIVE_DOUBLE, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sizer, dt4_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt4_id, "real_field", offset, H5T_NATIVE_REAL, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! Write data by fields in the datatype. Fields order is not important.
!
CALL h5dwrite_f(dset_id, dt4_id, real_member, data_dims, error, xfer_prp = plist_id)
- CALL check("h5dwrite_f", error, total_error)
+ CALL check("h5dwrite_f", error, total_error)
CALL h5dwrite_f(dset_id, dt1_id, char_member, data_dims, error, xfer_prp = plist_id)
- CALL check("h5dwrite_f", error, total_error)
+ CALL check("h5dwrite_f", error, total_error)
CALL h5dwrite_f(dset_id, dt3_id, double_member, data_dims, error, xfer_prp = plist_id)
- CALL check("h5dwrite_f", error, total_error)
+ CALL check("h5dwrite_f", error, total_error)
CALL h5dwrite_f(dset_id, dt2_id, int_member, data_dims, error, xfer_prp = plist_id)
- CALL check("h5dwrite_f", error, total_error)
+ CALL check("h5dwrite_f", error, total_error)
!
! End access to the dataset and release resources used by it.
!
CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f", error, total_error)
+ CALL check("h5dclose_f", error, total_error)
!
! Terminate access to the data space.
!
CALL h5sclose_f(dspace_id, error)
- CALL check("h5sclose_f", error, total_error)
+ CALL check("h5sclose_f", error, total_error)
!
! Terminate access to the datatype
!
CALL h5tclose_f(dtype_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt1_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt2_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt3_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt4_id, error)
- CALL check("h5tclose_f", error, total_error)
-
+ CALL check("h5tclose_f", error, total_error)
!
! Create and store compound datatype with the character and
! array members.
!
type_size = type_sizec + elements*type_sizer ! Size of compound datatype
CALL h5tcreate_f(H5T_COMPOUND_F, type_size, dtarray_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dtarray_id, "char_field", offset, H5T_NATIVE_CHARACTER, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
offset = type_sizec
CALL h5tarray_create_f(H5T_NATIVE_REAL, array_dims_range, array_dims, arrayt_id, error)
- CALL check("h5tarray_create_f", error, total_error)
+ CALL check("h5tarray_create_f", error, total_error)
CALL h5tinsert_f(dtarray_id,"array_field", offset, arrayt_id, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
CALL h5tcommit_f(file_id, "Compound_with_array_member", dtarray_id, error)
- CALL check("h5tcommit_f", error, total_error)
+ CALL check("h5tcommit_f", error, total_error)
CALL h5tclose_f(arrayt_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dtarray_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
!
! Close the file.
!
CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f", error, total_error)
+ CALL check("h5fclose_f", error, total_error)
!
! Open the file.
!
CALL h5fopen_f (fix_filename, H5F_ACC_RDWR_F, file_id, error)
- CALL check("h5fopen_f", error, total_error)
+ CALL check("h5fopen_f", error, total_error)
!
! Open the dataset.
!
CALL h5dopen_f(file_id, dsetname, dset_id, error)
- CALL check("h5dopen_f", error, total_error)
+ CALL check("h5dopen_f", error, total_error)
!
! Get datatype of the open dataset.
! Check it class, number of members, and member's names.
!
CALL h5dget_type_f(dset_id, dtype_id, error)
- CALL check("h5dget_type_f", error, total_error)
+ CALL check("h5dget_type_f", error, total_error)
CALL h5tget_class_f(dtype_id, class, error)
- CALL check("h5dget_class_f", error, total_error)
+ CALL check("h5dget_class_f", error, total_error)
if (class .ne. H5T_COMPOUND_F) then
write(*,*) " Wrong class type returned"
total_error = total_error + 1
endif
CALL h5tget_nmembers_f(dtype_id, num_members, error)
- CALL check("h5dget_nmembers_f", error, total_error)
+ CALL check("h5dget_nmembers_f", error, total_error)
if (num_members .ne. COMP_NUM_MEMBERS ) then
write(*,*) " Wrong number of members returned"
total_error = total_error + 1
@@ -377,11 +377,11 @@ CONTAINS
!
do i = 1, num_members
CALL h5tget_member_name_f(dtype_id, i-1, member_name, len, error)
- CALL check("h5tget_member_name_f", error, total_error)
+ CALL check("h5tget_member_name_f", error, total_error)
CALL h5tget_member_offset_f(dtype_id, i-1, offset_out, error)
- CALL check("h5tget_member_offset_f", error, total_error)
+ CALL check("h5tget_member_offset_f", error, total_error)
CALL h5tget_member_index_f(dtype_id, member_name(1:len), member_index, error)
- CALL check("h5tget_member_index_f", error, total_error)
+ CALL check("h5tget_member_index_f", error, total_error)
if(member_index .ne. i-1) then
write(*,*) "Index returned is incorrect"
write(*,*) member_index, i-1
@@ -394,16 +394,16 @@ CONTAINS
write(*,*) "Offset of the char member is incorrect"
total_error = total_error + 1
endif
- CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
- CALL check("h5tget_member_type_f", error, total_error)
- CALL h5tequal_f(membtype_id, dt5_id, flag, error)
- CALL check("h5tequal_f", error, total_error)
+ CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
+ CALL check("h5tget_member_type_f", error, total_error)
+ CALL h5tequal_f(membtype_id, dt5_id, flag, error)
+ CALL check("h5tequal_f", error, total_error)
if(.not. flag) then
write(*,*) "Wrong member type returned for character member"
total_error = total_error + 1
endif
- CALL h5tget_member_class_f(dtype_id, i-1, class, error)
- CALL check("h5tget_member_class_f",error, total_error)
+ CALL h5tget_member_class_f(dtype_id, i-1, class, error)
+ CALL check("h5tget_member_class_f",error, total_error)
if (class .ne. H5T_STRING_F) then
write(*,*) "Wrong class returned for character member"
total_error = total_error + 1
@@ -413,16 +413,16 @@ CONTAINS
write(*,*) "Offset of the integer member is incorrect"
total_error = total_error + 1
endif
- CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
- CALL check("h5tget_member_type_f", error, total_error)
- CALL h5tequal_f(membtype_id, H5T_NATIVE_INTEGER, flag, error)
- CALL check("h5tequal_f", error, total_error)
+ CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
+ CALL check("h5tget_member_type_f", error, total_error)
+ CALL h5tequal_f(membtype_id, H5T_NATIVE_INTEGER, flag, error)
+ CALL check("h5tequal_f", error, total_error)
if(.not. flag) then
write(*,*) "Wrong member type returned for integer memebr"
total_error = total_error + 1
endif
- CALL h5tget_member_class_f(dtype_id, i-1, class, error)
- CALL check("h5tget_member_class_f",error, total_error)
+ CALL h5tget_member_class_f(dtype_id, i-1, class, error)
+ CALL check("h5tget_member_class_f",error, total_error)
if (class .ne. H5T_INTEGER_F) then
write(*,*) "Wrong class returned for INTEGER member"
total_error = total_error + 1
@@ -432,16 +432,16 @@ CONTAINS
write(*,*) "Offset of the double precision member is incorrect"
total_error = total_error + 1
endif
- CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
- CALL check("h5tget_member_type_f", error, total_error)
- CALL h5tequal_f(membtype_id, H5T_NATIVE_DOUBLE, flag, error)
- CALL check("h5tequal_f", error, total_error)
+ CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
+ CALL check("h5tget_member_type_f", error, total_error)
+ CALL h5tequal_f(membtype_id, H5T_NATIVE_DOUBLE, flag, error)
+ CALL check("h5tequal_f", error, total_error)
if(.not. flag) then
write(*,*) "Wrong member type returned for double precision memebr"
total_error = total_error + 1
endif
- CALL h5tget_member_class_f(dtype_id, i-1, class, error)
- CALL check("h5tget_member_class_f",error, total_error)
+ CALL h5tget_member_class_f(dtype_id, i-1, class, error)
+ CALL check("h5tget_member_class_f",error, total_error)
if (class .ne. H5T_FLOAT_F) then
write(*,*) "Wrong class returned for double precision member"
total_error = total_error + 1
@@ -451,16 +451,16 @@ CONTAINS
write(*,*) "Offset of the real member is incorrect"
total_error = total_error + 1
endif
- CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
- CALL check("h5tget_member_type_f", error, total_error)
- CALL h5tequal_f(membtype_id, H5T_NATIVE_REAL, flag, error)
- CALL check("h5tequal_f", error, total_error)
+ CALL h5tget_member_type_f(dtype_id, i-1, membtype_id, error)
+ CALL check("h5tget_member_type_f", error, total_error)
+ CALL h5tequal_f(membtype_id, H5T_NATIVE_REAL, flag, error)
+ CALL check("h5tequal_f", error, total_error)
if(.not. flag) then
write(*,*) "Wrong member type returned for real memebr"
total_error = total_error + 1
endif
- CALL h5tget_member_class_f(dtype_id, i-1, class, error)
- CALL check("h5tget_member_class_f",error, total_error)
+ CALL h5tget_member_class_f(dtype_id, i-1, class, error)
+ CALL check("h5tget_member_class_f",error, total_error)
if (class .ne. H5T_FLOAT_F) then
write(*,*) "Wrong class returned for real member"
total_error = total_error + 1
@@ -476,22 +476,22 @@ CONTAINS
! Create memory datatype to read character member of the compound datatype.
!
CALL h5tcopy_f(H5T_NATIVE_CHARACTER, dt2_id, error)
- CALL check("h5tcopy_f", error, total_error)
+ CALL check("h5tcopy_f", error, total_error)
sizechar = 2
CALL h5tset_size_f(dt2_id, sizechar, error)
- CALL check("h5tset_size_f", error, total_error)
+ CALL check("h5tset_size_f", error, total_error)
CALL h5tget_size_f(dt2_id, type_size, error)
- CALL check("h5tget_size_f", error, total_error)
+ CALL check("h5tget_size_f", error, total_error)
CALL h5tcreate_f(H5T_COMPOUND_F, type_size, dt1_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt1_id, "char_field", offset, dt2_id, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! Read part of the dataset
!
CALL h5dread_f(dset_id, dt1_id, char_member_out, data_dims, error)
- CALL check("h5dread_f", error, total_error)
+ CALL check("h5dread_f", error, total_error)
do i = 1, dimsize
if (char_member_out(i) .ne. char_member(i)) then
write(*,*) " Wrong character data is read back "
@@ -500,15 +500,15 @@ CONTAINS
enddo
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sizei, dt5_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt5_id, "integer_field", offset, H5T_NATIVE_INTEGER, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! Read part of the dataset
!
CALL h5dread_f(dset_id, dt5_id, int_member_out, data_dims, error)
- CALL check("h5dread_f", error, total_error)
+ CALL check("h5dread_f", error, total_error)
do i = 1, dimsize
if (int_member_out(i) .ne. int_member(i)) then
write(*,*) " Wrong integer data is read back "
@@ -518,39 +518,33 @@ CONTAINS
!
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sized, dt3_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt3_id, "double_field", offset, H5T_NATIVE_DOUBLE, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! Read part of the dataset
!
CALL h5dread_f(dset_id, dt3_id, double_member_out, data_dims, error)
- CALL check("h5dread_f", error, total_error)
- do i = 1, dimsize
- IF( .NOT.dreal_eq( REAL(double_member_out(i),dp), REAL( double_member(i), dp)) ) THEN
- write(*,*) " Wrong double precision data is read back "
- total_error = total_error + 1
- endif
- enddo
+ CALL check("h5dread_f", error, total_error)
+ DO i = 1, dimsize
+ CALL VERIFY("h5dread_f:Wrong double precision data is read back", double_member_out(i), double_member(i), total_error)
+ ENDDO
!
!
CALL h5tcreate_f(H5T_COMPOUND_F, type_sizer, dt4_id, error)
- CALL check("h5tcreate_f", error, total_error)
+ CALL check("h5tcreate_f", error, total_error)
offset = 0
CALL h5tinsert_f(dt4_id, "real_field", offset, H5T_NATIVE_REAL, error)
- CALL check("h5tinsert_f", error, total_error)
+ CALL check("h5tinsert_f", error, total_error)
!
! Read part of the dataset
!
CALL h5dread_f(dset_id, dt4_id, real_member_out, data_dims, error)
- CALL check("h5dread_f", error, total_error)
- DO i = 1, dimsize
- IF( .NOT.dreal_eq( REAL(real_member_out(i),dp), REAL( real_member(i), dp)) ) THEN
- WRITE(*,*) " Wrong real precision data is read back "
- total_error = total_error + 1
- ENDIF
- ENDDO
+ CALL check("h5dread_f", error, total_error)
+ DO i = 1, dimsize
+ CALL VERIFY("h5dread_f:Wrong double precision data is read back", real_member_out(i), real_member(i), total_error)
+ ENDDO
!
! *-----------------------------------------------------------------------
! * Test encoding and decoding compound datatypes
@@ -565,7 +559,7 @@ CONTAINS
! Try decoding bogus buffer
CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error)
- CALL VERIFY("H5Tdecode_f", error, -1, total_error)
+ CALL verify("H5Tdecode_f", error, -1, total_error)
CALL H5Tencode_f(dtype_id, cmpd_buf, cmpd_buf_size, error)
CALL check("H5Tencode_f", error, total_error)
@@ -578,27 +572,27 @@ CONTAINS
CALL H5Tequal_f(decoded_tid1, dtype_id, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
!
! Close all open objects.
!
CALL h5dclose_f(dset_id, error)
- CALL check("h5dclose_f", error, total_error)
+ CALL check("h5dclose_f", error, total_error)
CALL h5tclose_f(dt1_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt2_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt3_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt4_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(dt5_id, error)
- CALL check("h5tclose_f", error, total_error)
+ CALL check("h5tclose_f", error, total_error)
CALL h5fclose_f(file_id, error)
- CALL check("h5fclose_f", error, total_error)
+ CALL check("h5fclose_f", error, total_error)
- if(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
- CALL check("h5_cleanup_f", error, total_error)
+ IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
+ CALL check("h5_cleanup_f", error, total_error)
RETURN
END SUBROUTINE compoundtest
@@ -614,9 +608,6 @@ CONTAINS
! H5tset_norm_f, H5tget_inpad_f, H5tset_inpad_f, H5tget_cset_f,
! H5tset_cset_f, H5tget_strpad_f, H5tset_strpad_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(OUT) :: total_error
@@ -902,7 +893,7 @@ CONTAINS
CALL check("H5Tget_order_f",error, total_error)
CALL H5Tget_order_f(H5T_NATIVE_INTEGER, order2, error)
CALL check("H5Tget_order_f",error, total_error)
- CALL VERIFY("H5Tget_native_type_f",order1, order2, total_error)
+ CALL verify("H5Tget_native_type_f",order1, order2, total_error)
! this test depends on whether -i8 was specified
@@ -910,11 +901,11 @@ CONTAINS
!!$ CALL check("H5Tget_size_f",error, total_error)
!!$ CALL H5Tget_size_f(H5T_STD_I32BE, type_size2, error)
!!$ CALL check("H5Tget_size_f",error, total_error)
-!!$ CALL VERIFY("H5Tget_native_type_f", INT(type_size1), INT(type_size2), total_error)
+!!$ CALL verify("H5Tget_native_type_f", INT(type_size1), INT(type_size2), total_error)
CALL H5Tget_class_f(native_type, class, error)
CALL check("H5Tget_class_f",error, total_error)
- CALL VERIFY("H5Tget_native_type_f", INT(class), INT(H5T_ENUM_F), total_error)
+ CALL verify("H5Tget_native_type_f", INT(class), INT(H5T_ENUM_F), total_error)
CALL h5dclose_f(dset_id,error)
CALL check("h5dclose_f", error, total_error)
@@ -972,8 +963,6 @@ CONTAINS
SUBROUTINE test_derived_flt(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -1060,24 +1049,24 @@ SUBROUTINE test_derived_flt(cleanup, total_error)
CALL check("H5Tget_fields_f", error, total_error)
IF(spos.NE.44 .OR. epos.NE.34 .OR. esize.NE.10 .OR. mpos.NE.3 .OR. msize.NE.31)THEN
- CALL VERIFY("H5Tget_fields_f", -1, 0, total_error)
+ CALL verify("H5Tget_fields_f", -1, 0, total_error)
ENDIF
CALL H5Tget_precision_f(tid1, precision1, error)
CALL check("H5Tget_precision_f", error, total_error)
- CALL VERIFY("H5Tget_precision_f", INT(precision1), 42, total_error)
+ CALL verify("H5Tget_precision_f", INT(precision1), 42, total_error)
CALL H5Tget_offset_f(tid1, offset1, error)
CALL check("H5Tget_offset_f", error, total_error)
- CALL VERIFY("H5Tget_offset_f", INT(offset1), 3, total_error)
+ CALL verify("H5Tget_offset_f", INT(offset1), 3, total_error)
CALL H5Tget_size_f(tid1, size1, error)
CALL check("H5Tget_size_f", error, total_error)
- CALL VERIFY("H5Tget_size_f", INT(size1), 7, total_error)
+ CALL verify("H5Tget_size_f", INT(size1), 7, total_error)
CALL H5Tget_ebias_f(tid1, ebias1, error)
CALL check("H5Tget_ebias_f", error, total_error)
- CALL VERIFY("H5Tget_ebias_f", INT(ebias1), 511, total_error)
+ CALL verify("H5Tget_ebias_f", INT(ebias1), 511, total_error)
!--------------------------------------------------------------------------
! * 2nd floating-point type
@@ -1121,24 +1110,24 @@ SUBROUTINE test_derived_flt(cleanup, total_error)
CALL check("H5Tget_fields_f", error, total_error)
IF(spos.NE.23 .OR. epos.NE.16 .OR. esize.NE.7 .OR. mpos.NE.0 .OR. msize.NE.16)THEN
- CALL VERIFY("H5Tget_fields_f", -1, 0, total_error)
+ CALL verify("H5Tget_fields_f", -1, 0, total_error)
ENDIF
CALL H5Tget_precision_f(tid2, precision2, error)
CALL check("H5Tget_precision_f", error, total_error)
- CALL VERIFY("H5Tget_precision_f", INT(precision2), 24, total_error)
+ CALL verify("H5Tget_precision_f", INT(precision2), 24, total_error)
CALL H5Tget_offset_f(tid2, offset2, error)
CALL check("H5Tget_offset_f", error, total_error)
- CALL VERIFY("H5Tget_offset_f", INT(offset2), 0, total_error)
+ CALL verify("H5Tget_offset_f", INT(offset2), 0, total_error)
CALL H5Tget_size_f(tid2, size2, error)
CALL check("H5Tget_size_f", error, total_error)
- CALL VERIFY("H5Tget_size_f", INT(size2), 3, total_error)
+ CALL verify("H5Tget_size_f", INT(size2), 3, total_error)
CALL H5Tget_ebias_f(tid2, ebias2, error)
CALL check("H5Tget_ebias_f", error, total_error)
- CALL VERIFY("H5Tget_ebias_f", INT(ebias2), 63, total_error)
+ CALL verify("H5Tget_ebias_f", INT(ebias2), 63, total_error)
CALL h5tclose_f(tid1, error)
CALL check("h5tclose_f", error, total_error)
diff --git a/fortran/test/tH5T_F03.f90 b/fortran/test/tH5T_F03.F90
index 32531b0..d50b76d 100644
--- a/fortran/test/tH5T_F03.f90
+++ b/fortran/test/tH5T_F03.F90
@@ -41,19 +41,19 @@
!**
!***************************************************************
!
+#include <H5config_f.inc>
MODULE TH5T_F03
USE HDF5
+ USE TH5_MISC
+ USE TH5_MISC_GEN
USE ISO_C_BINDING
CONTAINS
SUBROUTINE test_array_compound_atomic(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -201,7 +201,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
! Check the 1st field's name
CALL H5Tget_member_name_f(tid2, 0, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
- CALL verifystring("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
+ CALL verify("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
! Check the 1st field's offset
CALL H5Tget_member_offset_f(tid2, 0, off, error)
@@ -215,7 +215,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
CALL H5Tequal_f(mtid, H5T_NATIVE_INTEGER, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
@@ -223,7 +223,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
! Check the 2nd field's name
CALL H5Tget_member_name_f(tid2, 1, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
- CALL verifystring("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
+ CALL verify("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
! Check the 2nd field's offset
CALL H5Tget_member_offset_f(tid2, 1, off, error)
@@ -236,7 +236,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
CALL H5Tequal_f(mtid, H5T_NATIVE_REAL, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
@@ -258,10 +258,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
PRINT*, 'ERROR: Wrong integer data is read back by H5Dread_f '
total_error = total_error + 1
ENDIF
- IF( .NOT.dreal_eq( REAL(wdata(i,j)%f,dp), REAL( rdata(i,j)%f, dp)) ) THEN
- PRINT*, 'ERROR: Wrong real data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY('ERROR: Wrong real data is read back by H5Dread_f ',wdata(i,j)%f, rdata(i,j)%f, total_error)
ENDDO
ENDDO
@@ -288,9 +285,6 @@ END SUBROUTINE test_array_compound_atomic
!!$
SUBROUTINE test_array_compound_array(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -487,7 +481,7 @@ END SUBROUTINE test_array_compound_atomic
! Check the 1st field's name
CALL H5Tget_member_name_f(tid2, 0, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
- CALL verifystring("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
+ CALL verify("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
! Check the 1st field's offset
@@ -501,7 +495,7 @@ END SUBROUTINE test_array_compound_atomic
CALL H5Tequal_f(mtid, H5T_NATIVE_INTEGER, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
@@ -509,7 +503,7 @@ END SUBROUTINE test_array_compound_atomic
! Check the 2nd field's name
CALL H5Tget_member_name_f(tid2, 1, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
- CALL verifystring("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
+ CALL verify("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
! Check the 2nd field's offset
CALL H5Tget_member_offset_f(tid2, 1, off, error)
@@ -542,7 +536,7 @@ END SUBROUTINE test_array_compound_atomic
! Check the 3rd field's name
CALL H5Tget_member_name_f(tid2, 2, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
- CALL verifystring("H5Tget_member_name_f",mname(1:namelen),"c", total_error)
+ CALL verify("H5Tget_member_name_f",mname(1:namelen),"c", total_error)
! Check the 3rd field's offset
CALL H5Tget_member_offset_f(tid2, 2, off, error)
@@ -579,7 +573,7 @@ END SUBROUTINE test_array_compound_atomic
CALL H5Tequal_f(tid3, H5T_NATIVE_REAL, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
! Check the nested array's datatype
CALL H5Tget_super_f(mtid2, tid3, error)
@@ -587,7 +581,7 @@ END SUBROUTINE test_array_compound_atomic
CALL H5Tequal_f(tid3, atype_id, flag, error)
CALL check("H5Tequal_f", error, total_error)
- CALL VerifyLogical("H5Tequal_f", flag, .TRUE., total_error)
+ CALL verify("H5Tequal_f", flag, .TRUE., total_error)
! Close the array's base type datatype
CALL h5tclose_f(tid3, error)
@@ -656,9 +650,6 @@ END SUBROUTINE test_array_compound_atomic
!!$
SUBROUTINE test_array_bkg(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -739,10 +730,10 @@ END SUBROUTINE test_array_compound_atomic
CALL h5tget_size_f(H5T_NATIVE_INTEGER, type_sizei, error)
CALL check("h5tget_size_f", error, total_error)
IF(h5_sizeof(cf(1)%b(1)).EQ.4_size_t)THEN
- CALL h5tget_size_f(H5T_NATIVE_REAL_4, type_sizer, error)
+ CALL h5tget_size_f(H5T_NATIVE_REAL_C_FLOAT, type_sizer, error)
CALL check("h5tget_size_f", error, total_error)
ELSE IF(h5_sizeof(cf(1)%b(1)).EQ.8_size_t)THEN
- CALL h5tget_size_f(H5T_NATIVE_REAL_8, type_sizer, error)
+ CALL h5tget_size_f(H5T_NATIVE_REAL_C_DOUBLE, type_sizer, error)
CALL check("h5tget_size_f", error, total_error)
ENDIF
@@ -757,8 +748,8 @@ END SUBROUTINE test_array_compound_atomic
! Initialize the data type IDs
! ----------------------------
dtsinfo%datatype(1) = H5T_NATIVE_INTEGER;
- dtsinfo%datatype(2) = H5T_NATIVE_REAL_4;
- dtsinfo%datatype(3) = H5T_NATIVE_REAL_8;
+ dtsinfo%datatype(2) = H5T_NATIVE_REAL_C_FLOAT;
+ dtsinfo%datatype(3) = H5T_NATIVE_REAL_C_DOUBLE;
! Initialize the names of data members
@@ -828,14 +819,8 @@ END SUBROUTINE test_array_compound_atomic
PRINT*, 'ERROR: Wrong integer data is read back by H5Dread_f '
total_error = total_error + 1
ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%b(j),dp), REAL( cfr(i)%b(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong real data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%c(j),dp), REAL( cfr(i)%c(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong double data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY('ERROR: Wrong real data is read back by H5Dread_f ',cf(i)%b(j), cfr(i)%b(j), total_error)
+ CALL VERIFY('ERROR: Wrong double data is read back by H5Dread_f ',cf(i)%c(j), cfr(i)%c(j), total_error)
ENDDO
ENDDO
@@ -866,7 +851,7 @@ END SUBROUTINE test_array_compound_atomic
CALL h5tcreate_f(H5T_COMPOUND_F, sizeof_compound , type, error)
CALL check("h5tcreate_f", error, total_error)
- CALL h5tarray_create_f(H5T_NATIVE_REAL_4, 1, dima, array_dt, error)
+ CALL h5tarray_create_f(H5T_NATIVE_REAL_C_FLOAT, 1, dima, array_dt, error)
CALL check("h5tarray_create_f", error, total_error)
CALL h5tinsert_f(TYPE, "Two", 0_size_t, array_dt, error)
@@ -895,10 +880,7 @@ END SUBROUTINE test_array_compound_atomic
DO i = 1, LENGTH
DO j = 1, ALEN
- IF( .NOT.dreal_eq( REAL(fld(i)%b(j),dp), REAL( fldr(i)%b(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong real data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY('ERROR: Wrong real data is read back by H5Dread_f ',fld(i)%b(j), fldr(i)%b(j), total_error)
ENDDO
ENDDO
CALL h5tclose_f(TYPE,error)
@@ -922,18 +904,9 @@ END SUBROUTINE test_array_compound_atomic
DO i = 1, LENGTH
DO j = 1, ALEN
- IF( cf(i)%a(j) .NE. cfr(i)%a(j) )THEN
- PRINT*, 'ERROR: Wrong integer data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%b(j),dp), REAL(cfr(i)%b(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong real data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%c(j),dp), REAL(cfr(i)%c(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong double data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY('ERROR: Wrong integer data is read back by H5Dread_f ',cf(i)%a(j), cfr(i)%a(j), total_error)
+ CALL VERIFY('ERROR: Wrong real data is read back by H5Dread_f ',cf(i)%b(j),cfr(i)%b(j), total_error)
+ CALL VERIFY('ERROR: Wrong double data is read back by H5Dread_f ',cf(i)%c(j), cfr(i)%c(j), total_error)
ENDDO
ENDDO
@@ -980,18 +953,9 @@ END SUBROUTINE test_array_compound_atomic
DO i = 1, LENGTH
DO j = 1, ALEN
- IF( cf(i)%a(j) .NE. cfr(i)%a(j) )THEN
- PRINT*, 'ERROR: Wrong integer data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%b(j),dp), REAL(cfr(i)%b(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong real data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
- IF( .NOT.dreal_eq( REAL(cf(i)%c(j),dp), REAL(cfr(i)%c(j), dp)) ) THEN
- PRINT*, 'ERROR: Wrong double data is read back by H5Dread_f '
- total_error = total_error + 1
- ENDIF
+ CALL VERIFY('ERROR: Wrong integer data is read back by H5Dread_f ',cf(i)%a(j), cfr(i)%a(j), total_error)
+ CALL VERIFY('ERROR: Wrong real data is read back by H5Dread_f ',cf(i)%b(j),cfr(i)%b(j), total_error)
+ CALL VERIFY('ERROR: Wrong double data is read back by H5Dread_f ',cf(i)%c(j), cfr(i)%c(j), total_error)
ENDDO
ENDDO
@@ -1006,26 +970,49 @@ END SUBROUTINE test_array_compound_atomic
END SUBROUTINE test_array_bkg
-
-
SUBROUTINE test_h5kind_to_type(total_error)
- USE ISO_C_BINDING
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(Fortran_INTEGER_1) !should map to INTEGER*1 on most modern processors
- INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(Fortran_INTEGER_2) !should map to INTEGER*2 on most modern processors
- INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(Fortran_INTEGER_4) !should map to INTEGER*4 on most modern processors
- INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(Fortran_INTEGER_8) !should map to INTEGER*8 on most modern processors
-
- INTEGER, PARAMETER :: real_kind_7 = SELECTED_REAL_KIND(Fortran_REAL_4) !should map to REAL*4 on most modern processors
- INTEGER, PARAMETER :: real_kind_15 = SELECTED_REAL_KIND(Fortran_REAL_8) !should map to REAL*8 on most modern processors
+ INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(2) !should map to INTEGER*1 on most modern processors
+ INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(4) !should map to INTEGER*2 on most modern processors
+ INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
+ INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ INTEGER, PARAMETER :: int_kind_32 = SELECTED_INT_KIND(36) !should map to INTEGER*16 on most modern processors
+ INTEGER(int_kind_32), DIMENSION(1:4), TARGET :: dset_data_i32, data_out_i32
+ INTEGER(HID_T) :: dset_id32 ! Dataset identifier
+ CHARACTER(LEN=6), PARAMETER :: dsetname16 = "dset16" ! Dataset name
+#endif
+ INTEGER, PARAMETER :: real_kind_7 = C_FLOAT !should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: real_kind_15 = C_DOUBLE !should map to REAL*8 on most modern processors
+! Check if C has quad precision extension
+#if H5_HAVE_FLOAT128!=0
+! Check if Fortran supports quad precision
+# if H5_PAC_FC_MAX_REAL_PRECISION > 26
+ INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(31)
+# else
+ INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(15,307)
+# endif
+#else
+! Check if the default of long double is quad precision
+# if H5_PAC_C_MAX_REAL_PRECISION > 26
+# if H5_PAC_FC_MAX_REAL_PRECISION > 26
+ INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(31)
+# else
+ INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(15,307)
+# endif
+# else
+ INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(15,307)
+# endif
+#endif
+ REAL(real_kind_31), DIMENSION(1:4), TARGET :: dset_data_r31, data_out_r31
+ INTEGER(HID_T) :: dset_idr16 ! Dataset identifier
+ CHARACTER(LEN=7), PARAMETER :: dsetnamer16 = "dsetr16" ! Dataset name
+
CHARACTER(LEN=12), PARAMETER :: filename = "dsetf_F03.h5" ! File name
CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
CHARACTER(LEN=5), PARAMETER :: dsetname2 = "dset2" ! Dataset name
@@ -1067,14 +1054,17 @@ END SUBROUTINE test_array_compound_atomic
! Initialize the dset_data array.
!
DO i = 1, 4
- dset_data_i1(i) = i
- dset_data_i4(i) = i
- dset_data_i8(i) = i
- dset_data_i16(i) = i
-
- dset_data_r(i) = (i)*100.
- dset_data_r7(i) = (i)*100.
- dset_data_r15(i) = (i)*1000.
+ dset_data_i1(i) = HUGE(0_int_kind_1)-i
+ dset_data_i4(i) = HUGE(0_int_kind_4)-i
+ dset_data_i8(i) = HUGE(0_int_kind_8)-i
+ dset_data_i16(i) = HUGE(0_int_kind_16)-i
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ dset_data_i32(i) = HUGE(0_int_kind_32)-i
+#endif
+ dset_data_r(i) = 4.0*ATAN(1.0)-REAL(i-1)
+ dset_data_r7(i) = 4.0_real_kind_7*ATAN(1.0_real_kind_7)-REAL(i-1,real_kind_7)
+ dset_data_r15(i) = 4.0_real_kind_15*ATAN(1.0_real_kind_15)-REAL(i-1,real_kind_15)
+ dset_data_r31(i) = 4.0_real_kind_31*ATAN(1.0_real_kind_31)-REAL(i-1,real_kind_31)
END DO
@@ -1096,14 +1086,20 @@ END SUBROUTINE test_array_compound_atomic
CALL check("H5Dcreate_f",error, total_error)
CALL H5Dcreate_f(file_id, dsetname8, h5kind_to_type(int_kind_16,H5_INTEGER_KIND), dspace_id, dset_id16, error)
CALL check("H5Dcreate_f",error, total_error)
-
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ CALL H5Dcreate_f(file_id, dsetname16, h5kind_to_type(int_kind_32,H5_INTEGER_KIND), dspace_id, dset_id32, error)
+ CALL check("H5Dcreate_f",error, total_error)
+#endif
CALL H5Dcreate_f(file_id, dsetnamer, H5T_NATIVE_REAL, dspace_id, dset_idr, error)
CALL check("H5Dcreate_f",error, total_error)
CALL H5Dcreate_f(file_id, dsetnamer4, h5kind_to_type(real_kind_7,H5_REAL_KIND), dspace_id, dset_idr4, error)
CALL check("H5Dcreate_f",error, total_error)
CALL H5Dcreate_f(file_id, dsetnamer8, h5kind_to_type(real_kind_15,H5_REAL_KIND), dspace_id, dset_idr8, error)
CALL check("H5Dcreate_f",error, total_error)
-
+!#ifdef H5_HAVE_FLOAT128
+ CALL H5Dcreate_f(file_id, dsetnamer16, h5kind_to_type(real_kind_31,H5_REAL_KIND), dspace_id, dset_idr16, error)
+ CALL check("H5Dcreate_f",error, total_error)
+!#endif
!
! Write the dataset.
!
@@ -1119,6 +1115,11 @@ END SUBROUTINE test_array_compound_atomic
f_ptr = C_LOC(dset_data_i16(1))
CALL h5dwrite_f(dset_id16, h5kind_to_type(int_kind_16,H5_INTEGER_KIND), f_ptr, error)
CALL check("H5Dwrite_f",error, total_error)
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ f_ptr = C_LOC(dset_data_i32(1))
+ CALL h5dwrite_f(dset_id32, h5kind_to_type(int_kind_32,H5_INTEGER_KIND), f_ptr, error)
+ CALL check("H5Dwrite_f",error, total_error)
+#endif
f_ptr = C_LOC(dset_data_r(1))
CALL h5dwrite_f(dset_idr, H5T_NATIVE_REAL, f_ptr, error)
CALL check("H5Dwrite_f",error, total_error)
@@ -1128,6 +1129,11 @@ END SUBROUTINE test_array_compound_atomic
f_ptr = C_LOC(dset_data_r15(1))
CALL h5dwrite_f(dset_idr8, h5kind_to_type(real_kind_15,H5_REAL_KIND), f_ptr, error)
CALL check("H5Dwrite_f",error, total_error)
+!#ifdef H5_HAVE_FLOAT128
+ f_ptr = C_LOC(dset_data_r31(1))
+ CALL h5dwrite_f(dset_idr16, h5kind_to_type(real_kind_31,H5_REAL_KIND), f_ptr, error)
+ CALL check("H5Dwrite_f",error, total_error)
+!#endif
!
! Close the file
!
@@ -1155,6 +1161,11 @@ END SUBROUTINE test_array_compound_atomic
f_ptr = C_LOC(data_out_i16)
CALL h5dread_f(dset_id16, h5kind_to_type(int_kind_16,H5_INTEGER_KIND), f_ptr, error)
CALL check("h5dread_f",error, total_error)
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ f_ptr = C_LOC(data_out_i32)
+ CALL h5dread_f(dset_id32, h5kind_to_type(int_kind_32,H5_INTEGER_KIND), f_ptr, error)
+ CALL check("h5dread_f",error, total_error)
+#endif
f_ptr = C_LOC(data_out_r)
CALL h5dread_f(dset_idr, H5T_NATIVE_REAL, f_ptr, error)
CALL check("h5dread_f",error, total_error)
@@ -1164,20 +1175,25 @@ END SUBROUTINE test_array_compound_atomic
f_ptr = C_LOC(data_out_r15)
CALL h5dread_f(dset_idr8, h5kind_to_type(real_kind_15,H5_REAL_KIND), f_ptr, error)
CALL check("h5dread_f",error, total_error)
-
+ f_ptr = C_LOC(data_out_r31)
+ CALL h5dread_f(dset_idr16, h5kind_to_type(real_kind_31,H5_REAL_KIND), f_ptr, error)
+ CALL check("h5dread_f",error, total_error)
DO i = 1, 4
- CALL verify_Fortran_INTEGER_4("h5kind_to_type1",INT(dset_data_i1(i),int_kind_8),INT(data_out_i1(i),int_kind_8),total_error)
- CALL verify_Fortran_INTEGER_4("h5kind_to_type2",INT(dset_data_i4(i),int_kind_8),INT(data_out_i4(i),int_kind_8),total_error)
- CALL verify_Fortran_INTEGER_4("h5kind_to_type3",INT(dset_data_i8(i),int_kind_8),INT(data_out_i8(i),int_kind_8),total_error)
- CALL verify_Fortran_INTEGER_4("h5kind_to_type4",INT(dset_data_i16(i),int_kind_8),INT(data_out_i16(i),int_kind_8),total_error)
+ CALL verify("h5kind_to_type",dset_data_i1(i),data_out_i1(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_i4(i),data_out_i4(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_i8(i),data_out_i8(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_i16(i),data_out_i16(i),total_error)
- CALL verify_real_kind_7("h5kind_to_type5",REAL(dset_data_r(i),real_kind_7),REAL(data_out_r(i),real_kind_7),total_error)
- CALL verify_real_kind_7("h5kind_to_type6",REAL(dset_data_r7(i),real_kind_7),REAL(data_out_r7(i),real_kind_7),total_error)
- CALL verify_real_kind_7("h5kind_to_type7",REAL(dset_data_r15(i),real_kind_7),REAL(data_out_r15(i),real_kind_7),total_error)
-
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+ CALL verify("h5kind_to_type",dset_data_i32(i),data_out_i32(i),total_error)
+#endif
+ CALL verify("h5kind_to_type",dset_data_r(i),data_out_r(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_r7(i),data_out_r7(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_r15(i),data_out_r15(i),total_error)
+ CALL verify("h5kind_to_type",dset_data_r31(i),data_out_r31(i),total_error)
END DO
-
+
!
! Close the dataset.
!
@@ -1212,10 +1228,6 @@ END SUBROUTINE test_h5kind_to_type
!************************************************************
SUBROUTINE t_array(total_error)
- USE ISO_C_BINDING
- USE HDF5
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1300,8 +1312,8 @@ SUBROUTINE t_array(total_error)
CALL check("h5dget_type_f",error, error)
CALL H5Tget_array_dims_f(filetype, adims, error)
CALL check("h5dget_type_f",error, total_error)
- CALL VERIFY("H5Tget_array_dims_f", INT(adims(1)), adim0, total_error)
- CALL VERIFY("H5Tget_array_dims_f", INT(adims(2)), adim1, total_error)
+ CALL VERIFY("H5Tget_array_dims_f", adims(1), INT(adim0,hsize_t), total_error)
+ CALL VERIFY("H5Tget_array_dims_f", adims(2), INT(adim1,hsize_t), total_error)
!
! Get dataspace and allocate memory for read buffer. This is a
! three dimensional attribute when the array datatype is included.
@@ -1310,7 +1322,7 @@ SUBROUTINE t_array(total_error)
CALL check("H5Dget_space_f",error, error)
CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1),1:adims(1),1:adims(2)))
!
@@ -1355,10 +1367,6 @@ END SUBROUTINE t_array
SUBROUTINE t_enum(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1419,7 +1427,8 @@ SUBROUTINE t_enum(total_error)
! Insert enumerated value for memtype.
!
val(1) = i
- CALL H5Tenum_insert_f(memtype, TRIM(names(i+1)), C_LOC(val(1)), error)
+ f_ptr = C_LOC(val(1))
+ CALL H5Tenum_insert_f(memtype, TRIM(names(i+1)), f_ptr, error)
CALL check("H5Tenum_insert_f", error, total_error)
!
! Insert enumerated value for filetype. We must first convert
@@ -1478,8 +1487,8 @@ SUBROUTINE t_enum(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL h5sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(2)), dim1, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(2), INT(dim1,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1),1:dims(2)))
@@ -1501,7 +1510,7 @@ SUBROUTINE t_enum(total_error)
CALL h5tenum_nameof_f( memtype, rdata(i,j), NAME_BUF_SIZE, name, error)
CALL check("h5tenum_nameof_f",error, total_error)
idx = MOD( (j-1)*(i-1), PLASMA+1 ) + 1
- CALL verifystring("h5tenum_nameof_f",TRIM(name),TRIM(names(idx)), total_error)
+ CALL verify("h5tenum_nameof_f",TRIM(name),TRIM(names(idx)), total_error)
IF(total_error.NE.0) EXIT i_loop
ENDDO
ENDDO i_loop
@@ -1522,10 +1531,6 @@ END SUBROUTINE t_enum
SUBROUTINE t_bit(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1602,8 +1607,8 @@ SUBROUTINE t_bit(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(2)), dim1, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(2), INT(dim1,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1),1:dims(2)))
!
! Read the data.
@@ -1648,10 +1653,6 @@ END SUBROUTINE t_bit
SUBROUTINE t_opaque(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1746,19 +1747,19 @@ SUBROUTINE t_opaque(total_error)
CALL h5tget_tag_f(dtype, tag_sm, taglen, error)
CALL check("h5tget_tag_f",error, total_error)
CALL VERIFY("h5tget_tag_f", taglen, 15, total_error)
- CALL verifystring("h5tget_tag_f",tag_sm,"Character arra", total_error)
+ CALL verify("h5tget_tag_f",tag_sm,"Character arra", total_error)
! Test reading into a string that is exact
CALL h5tget_tag_f(dtype, tag_exact, taglen, error)
CALL check("h5tget_tag_f",error, total_error)
CALL VERIFY("h5tget_tag_f", taglen, 15, total_error)
- CALL verifystring("h5tget_tag_f",tag_exact,"Character array", total_error)
+ CALL verify("h5tget_tag_f",tag_exact,"Character array", total_error)
! Test reading into a string that is to big
CALL h5tget_tag_f(dtype, tag_big, taglen, error)
CALL check("h5tget_tag_f",error, total_error)
CALL VERIFY("h5tget_tag_f", taglen, 15, total_error)
- CALL verifystring("h5tget_tag_f",tag_big,"Character array ", total_error)
+ CALL verify("h5tget_tag_f",tag_big,"Character array ", total_error)
!
! Get dataspace and allocate memory for read buffer.
@@ -1767,7 +1768,7 @@ SUBROUTINE t_opaque(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL h5sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1)))
!
! Read the data.
@@ -1777,7 +1778,7 @@ SUBROUTINE t_opaque(total_error)
CALL check("H5Dread_f",error, total_error)
!
DO i = 1, dims(1)
- CALL verifystring("t_opaque",TRIM(rdata(i)),TRIM(wdata(i)), total_error)
+ CALL verify("t_opaque",TRIM(rdata(i)),TRIM(wdata(i)), total_error)
ENDDO
!
! Close and release resources.
@@ -1796,10 +1797,6 @@ END SUBROUTINE t_opaque
SUBROUTINE t_objref(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1892,7 +1889,7 @@ SUBROUTINE t_objref(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL h5sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
ALLOCATE(rdata(1:maxdims(1)))
!
@@ -1923,9 +1920,9 @@ SUBROUTINE t_objref(total_error)
! Print the object type and close the object.
!
IF(objtype.EQ.H5G_GROUP_F)THEN
- CALL verifystring("t_objref", name(1:name_size),"/G1", total_error)
+ CALL verify("t_objref", name(1:name_size),"/G1", total_error)
ELSE IF(objtype.EQ.H5G_DATASET_F)THEN
- CALL verifystring("t_objref", name(1:name_size),"/DS2", total_error)
+ CALL verify("t_objref", name(1:name_size),"/DS2", total_error)
ELSE
total_error = total_error + 1
ENDIF
@@ -1949,10 +1946,6 @@ END SUBROUTINE t_objref
SUBROUTINE t_regref(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -2075,7 +2068,7 @@ SUBROUTINE t_regref(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL h5sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1)))
CALL h5sclose_f(space, error)
CALL check("h5sclose_f",error, total_error)
@@ -2108,7 +2101,7 @@ SUBROUTINE t_regref(total_error)
CALL H5Iget_name_f(dset2, name, 80_size_t, size, error)
CALL check("H5Iget_name_f",error, total_error)
CALL VERIFY("H5Iget_name_f", INT(size), LEN_TRIM(name), total_error)
- CALL verifystring("H5Iget_name_f",name(1:size),TRIM(name), total_error)
+ CALL verify("H5Iget_name_f",name(1:size),TRIM(name), total_error)
!
! Allocate space for the read buffer.
!
@@ -2126,7 +2119,7 @@ SUBROUTINE t_regref(total_error)
f_ptr = C_LOC(rdata2(1)(1:1))
CALL h5dread_f( dset2, H5T_NATIVE_INTEGER_1, f_ptr, error, memspace, space)
CALL check("H5Dread_f",error, total_error)
- CALL verifystring("h5dread_f",rdata2(1)(1:npoints),TRIM(chrref_correct(i)), total_error)
+ CALL verify("h5dread_f",rdata2(1)(1:npoints),TRIM(chrref_correct(i)), total_error)
CALL H5Sclose_f(space, error)
CALL check("h5sclose_f",error, total_error)
@@ -2149,10 +2142,6 @@ END SUBROUTINE t_regref
SUBROUTINE t_vlen(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -2307,10 +2296,6 @@ END SUBROUTINE t_vlen
SUBROUTINE t_vlstring(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -2409,7 +2394,7 @@ SUBROUTINE t_vlstring(total_error)
! Output the data to the screen.
!
DO i = 1, dims(1)
- CALL verifystring("h5dopen_f",TRIM(rdata(i)),TRIM(wdata(i)) , total_error)
+ CALL verify("h5dopen_f",TRIM(rdata(i)),TRIM(wdata(i)) , total_error)
END DO
DEALLOCATE(rdata)
@@ -2428,10 +2413,6 @@ SUBROUTINE t_vlstring_readwrite(total_error)
! test writing and reading vl string using h5dread_f and h5dwrite_f, C_LOC and C_F_POINTER
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -2611,7 +2592,7 @@ SUBROUTINE t_vlstring_readwrite(total_error)
IF(DATA(len+1:len+1).EQ.C_NULL_CHAR.OR.len.GE.8) EXIT
len = len + 1
ENDDO
- CALL verifystring("h5dread_f",data(1:len), data_w(i)(1:len), total_error)
+ CALL verify("h5dread_f",data(1:len), data_w(i)(1:len), total_error)
END DO
DEALLOCATE(rdata)
@@ -2659,7 +2640,7 @@ SUBROUTINE t_vlstring_readwrite(total_error)
IF(DATA(len+1:len+1).EQ.C_NULL_CHAR.OR.len.GE.8) EXIT
len = len + 1
ENDDO
- CALL verifystring("h5dread_f",DATA(1:len), data2D_w(i,j)(1:len), total_error)
+ CALL verify("h5dread_f",DATA(1:len), data2D_w(i,j)(1:len), total_error)
ENDDO
END DO
@@ -2679,10 +2660,6 @@ END SUBROUTINE t_vlstring_readwrite
SUBROUTINE t_string(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -2766,7 +2743,7 @@ SUBROUTINE t_string(total_error)
CALL check("H5Dget_space_f",error, total_error)
CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
- CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), dim0, total_error)
+ CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
ALLOCATE(rdata(1:dims(1)))
!
@@ -2784,7 +2761,7 @@ SUBROUTINE t_string(total_error)
CALL check("H5Dread_f",error, total_error)
DO i = 1, dims(1)
- CALL verifystring("h5dread_f",TRIM(rdata(i)),TRIM(wdata(i)) , total_error)
+ CALL verify("h5dread_f",TRIM(rdata(i)),TRIM(wdata(i)) , total_error)
END DO
DEALLOCATE(rdata)
@@ -2806,8 +2783,6 @@ END SUBROUTINE t_string
SUBROUTINE vl_test_special_char(total_error)
- USE HDF5
- USE TH5_MISC
IMPLICIT NONE
! INTERFACE
@@ -2909,9 +2884,6 @@ END SUBROUTINE vl_test_special_char
SUBROUTINE setup_buffer(data_in, line_lengths, char_type)
- USE HDF5
- USE ISO_C_BINDING
-
IMPLICIT NONE
! Creates a simple "Data_in" consisting of the letters of the alphabet,
@@ -2973,12 +2945,8 @@ END SUBROUTINE setup_buffer
SUBROUTINE test_nbit(total_error )
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
-
IMPLICIT NONE
- INTEGER, PARAMETER :: wp = SELECTED_REAL_KIND(Fortran_REAL_4) !should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: wp = C_FLOAT !should map to REAL*4 on most modern processors
INTEGER, INTENT(INOUT) :: total_error
INTEGER(hid_t) :: file
@@ -3068,8 +3036,10 @@ SUBROUTINE test_nbit(total_error )
!
i_loop: DO i = 1, dims(1)
j_loop: DO j = 1, dims(2)
+
IF(.NOT.(orig_data(i,j).EQ.orig_data(i,j))) CYCLE ! skip IF value is NaN
- IF( .NOT.dreal_eq( REAL(new_data(i,j),dp), REAL( orig_data(i,j), dp)) ) THEN
+
+ IF( .NOT.check_real_eq( new_data(i,j), orig_data(i,j)) ) THEN
total_error = total_error + 1
WRITE(*,'(" Read different values than written.")')
WRITE(*,'(" At index ", 2(1X,I0))') i, j
@@ -3117,18 +3087,15 @@ SUBROUTINE t_enum_conv(total_error)
! No reliance on C tests.
!-------------------------------------------------------------------------
!
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(Fortran_INTEGER_4) !should map to INTEGER*4 on most modern processors
- INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(Fortran_INTEGER_8)!should map to INTEGER*8 on most modern processors
+ INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
+ INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
- INTEGER, PARAMETER :: real_kind_7 = SELECTED_REAL_KIND(Fortran_REAL_4) !should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: real_kind_7 = C_FLOAT !should map to REAL*4 on most modern processors
INTEGER(hid_t) :: cwg=-1, dtype=-1, space=-1, dset=-1 ! Handles
INTEGER(hid_t) :: file ! Handles
@@ -3188,20 +3155,25 @@ SUBROUTINE t_enum_conv(total_error)
!
! Initialize enum data.
!
+
val = E1_RED
CALL H5Tenum_insert_f(dtype, "RED", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_GREEN
- CALL H5Tenum_insert_f(dtype, "GREEN", C_LOC(val), error)
+ f_ptr = C_LOC(val)
+ CALL H5Tenum_insert_f(dtype, "GREEN", f_ptr, error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_BLUE
- CALL H5Tenum_insert_f(dtype, "BLUE", C_LOC(val), error)
+ f_ptr = C_LOC(val)
+ CALL H5Tenum_insert_f(dtype, "BLUE", f_ptr, error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_WHITE
- CALL H5Tenum_insert_f(dtype, "WHITE", C_LOC(val), error)
+ f_ptr = C_LOC(val)
+ CALL H5Tenum_insert_f(dtype, "WHITE", f_ptr, error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_BLACK
- CALL H5Tenum_insert_f(dtype, "BLACK", C_LOC(val), error)
+ f_ptr = C_LOC(val)
+ CALL H5Tenum_insert_f(dtype, "BLACK", f_ptr, error)
CALL check("h5tenum_insert_f",error, total_error)
!
! Create dataspace. Setting maximum size to be the current size.
@@ -3268,8 +3240,8 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to (SELECTED_INT_KIND(Fortran_INTEGER_4)) number.
- ! Read enum data back as (SELECTED_INT_KIND(Fortran_INTEGER_4)) number
+ ! Test converting the data to (SELECTED_INT_KIND(9)) number.
+ ! Read enum data back as (SELECTED_INT_KIND(9)) number
m_baset = h5kind_to_type(int_kind_8, H5_INTEGER_KIND) ! Memory base type
f_ptr = C_LOC(data_i8(1))
@@ -3285,8 +3257,8 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to (SELECTED_INT_KIND(Fortran_INTEGER_8)) number.
- ! Read enum data back as (SELECTED_INT_KIND(Fortran_INTEGER_8)) number
+ ! Test converting the data to (SELECTED_INT_KIND(18)) number.
+ ! Read enum data back as (SELECTED_INT_KIND(18)) number
m_baset = h5kind_to_type(int_kind_16, H5_INTEGER_KIND) ! Memory base type
f_ptr = C_LOC(data_i16(1))
@@ -3302,8 +3274,8 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to SELECTED_REAL_KIND(Fortran_REAL_4) number.
- ! Read enum data back as SELECTED_REAL_KIND(Fortran_REAL_4) number
+ ! Test converting the data to C_FLOAT number.
+ ! Read enum data back as C_FLOAT number
m_baset = h5kind_to_type(KIND(data_r7(1)), H5_REAL_KIND) ! Memory base type
f_ptr = C_LOC(data_r7(1))
@@ -3380,10 +3352,10 @@ SUBROUTINE t_enum_conv(total_error)
CALL check("h5dclose_f", error, total_error)
!*********************************************************
- !* Dataset of real SELECTED_REAL_KIND(Fortran_REAL_4) type
+ !* Dataset of real C_FLOAT type
!*********************************************************
- ! Create a dataset of SELECTED_REAL_KIND(Fortran_REAL_4) and write enum data to it
+ ! Create a dataset of C_FLOAT and write enum data to it
m_baset = h5kind_to_type(KIND(data_r7(1)), H5_REAL_KIND) ! Memory base type
CALL h5dcreate_f(cwg, "color_table4", m_baset, space, dset, error)
CALL check("h5dcreate_f", error, total_error)
@@ -3408,10 +3380,10 @@ SUBROUTINE t_enum_conv(total_error)
CALL check("h5dclose_f", error, total_error)
! *****************************************************************
- ! * Dataset of integer SELECTED_INT_KIND(Fortran_INTEGER_8) type
+ ! * Dataset of integer SELECTED_INT_KIND(18) type
! *****************************************************************
- ! Create a integer dataset of (SELECTED_INT_KIND(Fortran_INTEGER_8)) and write enum data to it
+ ! Create a integer dataset of (SELECTED_INT_KIND(18)) and write enum data to it
m_baset = h5kind_to_type(KIND(data_i16(1)), H5_INTEGER_KIND) ! Memory base type
CALL h5dcreate_f(cwg, "color_table5", m_baset, space, dset, error)
CALL check("h5dcreate_f", error, total_error)
diff --git a/fortran/test/tH5VL.f90 b/fortran/test/tH5VL.f90
index 651ca75..834fbde 100644
--- a/fortran/test/tH5VL.f90
+++ b/fortran/test/tH5VL.f90
@@ -28,12 +28,13 @@
!*****
MODULE TH5VL
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+ USE TH5_MISC_GEN
CONTAINS
SUBROUTINE vl_test_integer(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -194,8 +195,6 @@ CONTAINS
END SUBROUTINE vl_test_integer
SUBROUTINE vl_test_real(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
@@ -328,18 +327,15 @@ CONTAINS
CALL h5dread_vl_f(dset_id, vltype_id, vl_real_data_out, data_dims, len_out, &
error, mem_space_id = dspace_id, file_space_id = dspace_id)
CALL check("h5dread_real_f", error, total_error)
- do ih = 1, data_dims(2)
- do jh = 1, len_out(ih)
- IF( .NOT.dreal_eq( REAL(vl_real_data(jh,ih),dp), REAL(vl_real_data_out(jh,ih), dp)) ) THEN
- total_error = total_error + 1
- WRITE(*,*) "h5dread_vl_f returned incorrect data"
- ENDIF
- enddo
- if (len(ih) .ne. len_out(ih)) then
- total_error = total_error + 1
- write(*,*) "h5dread_vl_f returned incorrect data"
- endif
- enddo
+ DO ih = 1, data_dims(2)
+ DO jh = 1, len_out(ih)
+ CALL VERIFY("h5dread_vl_f returned incorrect data",vl_real_data(jh,ih),vl_real_data_out(jh,ih), total_error)
+ ENDDO
+ IF (LEN(ih) .NE. len_out(ih)) THEN
+ total_error = total_error + 1
+ WRITE(*,*) "h5dread_vl_f returned incorrect data"
+ ENDIF
+ ENDDO
!
@@ -367,8 +363,6 @@ CONTAINS
END SUBROUTINE vl_test_real
SUBROUTINE vl_test_string(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tHDF5.f90 b/fortran/test/tHDF5.f90
index e73fed2..d12bb25 100644
--- a/fortran/test/tHDF5.f90
+++ b/fortran/test/tHDF5.f90
@@ -29,6 +29,7 @@
MODULE THDF5
USE TH5_MISC
+ USE TH5_MISC_GEN
USE TH5A
USE TH5D
USE TH5E
diff --git a/fortran/test/tf.f90 b/fortran/test/tf.F90
index 450daf2..7d67f30 100644
--- a/fortran/test/tf.f90
+++ b/fortran/test/tf.F90
@@ -27,43 +27,35 @@
! h5_cleanup_f, h5_exit_f, h5_env_nocleanup_f,dreal_eqv
!
!*****
-MODULE TH5_MISC
- USE TH5_MISC_PROVISIONAL
+#include "H5config_f.inc"
- IMPLICIT NONE
+MODULE TH5_MISC
-CONTAINS
+ USE, INTRINSIC :: ISO_C_BINDING
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: dreal_eq
-!DEC$endif
- LOGICAL FUNCTION dreal_eq(a,b)
-
- ! Check if two double precision reals are equivalent
- REAL(dp), INTENT (in):: a,b
- REAL(dp), PARAMETER :: eps = 1.e-8
- dreal_eq = ABS(a-b) .LT. eps
+ IMPLICIT NONE
- END FUNCTION dreal_eq
+ INTEGER, PARAMETER :: sp = SELECTED_REAL_KIND(5) ! This should map to REAL*4 on most modern processors
+ INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(10) ! This should map to REAL*8 on most modern processors
+
+ ! generic compound datatype
+ TYPE, BIND(C) :: comp_datatype
+ REAL :: a
+ INTEGER :: x
+ DOUBLE PRECISION :: y
+ CHARACTER(KIND=C_CHAR) :: z
+ END TYPE comp_datatype
+
+ PUBLIC :: H5_SIZEOF
+ INTERFACE H5_SIZEOF
+ MODULE PROCEDURE H5_SIZEOF_CMPD
+ MODULE PROCEDURE H5_SIZEOF_CHR
+ MODULE PROCEDURE H5_SIZEOF_I
+ MODULE PROCEDURE H5_SIZEOF_SP,H5_SIZEOF_DP
+ END INTERFACE
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verify_real_kind_7
-!DEC$endif
- SUBROUTINE verify_real_kind_7(string,value,correct_value,total_error)
- USE HDF5
- INTEGER, PARAMETER :: real_kind_7 = SELECTED_REAL_KIND(Fortran_REAL_4) !should map to REAL*4 on most modern processors
- CHARACTER(LEN=*) :: string
- REAL(real_kind_7) :: value, correct_value
- INTEGER :: total_error
- IF (.NOT.dreal_eq( REAL(value,dp), REAL(correct_value, dp)) ) THEN
- total_error=total_error+1
- WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verify_real_kind_7
+CONTAINS
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_TEST_DLL)
@@ -118,84 +110,6 @@ CONTAINS
RETURN
END SUBROUTINE check
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verify
-!DEC$endif
- SUBROUTINE VERIFY(string,value,correct_value,total_error)
- CHARACTER(LEN=*) :: string
- INTEGER :: value, correct_value, total_error
- IF (value .NE. correct_value) THEN
- total_error=total_error+1
- WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verify
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verify_INTEGER_HID_T
-!DEC$endif
- SUBROUTINE verify_INTEGER_HID_T(string,value,correct_value,total_error)
- USE HDF5
- CHARACTER(LEN=*) :: string
- INTEGER(HID_T) :: value, correct_value
- INTEGER :: total_error
- IF (value .NE. correct_value) THEN
- total_error=total_error+1
- WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verify_INTEGER_HID_T
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verify_Fortran_INTEGER_4
-!DEC$endif
- SUBROUTINE verify_Fortran_INTEGER_4(string,value,correct_value,total_error)
- USE HDF5
- INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(Fortran_INTEGER_4) ! should map to INTEGER*4 on most modern processors
- CHARACTER(LEN=*) :: string
- INTEGER(int_kind_8) :: value, correct_value
- INTEGER :: total_error
- IF (value .NE. correct_value) THEN
- total_error=total_error+1
- WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verify_Fortran_INTEGER_4
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verifyLogical
-!DEC$endif
- SUBROUTINE verifyLogical(string,value,correct_value,total_error)
- CHARACTER(LEN=*) :: string
- LOGICAL :: value, correct_value
- INTEGER :: total_error
- IF (value .NEQV. correct_value) THEN
- total_error = total_error + 1
- WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verifyLogical
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: verifyString
-!DEC$endif
- SUBROUTINE verifyString(string, value,correct_value,total_error)
- CHARACTER*(*) :: string
- CHARACTER*(*) :: value, correct_value
- INTEGER :: total_error
- IF (TRIM(value) .NE. TRIM(correct_value)) THEN
- total_error = total_error + 1
- WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string
- ENDIF
- RETURN
- END SUBROUTINE verifyString
-
-
!----------------------------------------------------------------------
! Name: h5_fixname_f
!
@@ -390,4 +304,109 @@ CONTAINS
IF(status.EQ.1) HDF5_NOCLEANUP = .TRUE.
END SUBROUTINE h5_env_nocleanup_f
+
+! ---------------------------------------------------------------------------------------------------
+! H5_SIZEOF routines
+!
+! NOTES
+! (1) The Sun/Oracle compiler has the following restrictions on the SIZEOF intrinsic function:
+!
+! "The SIZEOF intrinsic cannot be applied to arrays of an assumed size, characters of a
+! length that is passed, or subroutine calls or names. SIZEOF returns default INTEGER*4 data.
+! If compiling for a 64-bit environment, the compiler will issue a warning if the result overflows
+! the INTEGER*4 data range. To use SIZEOF in a 64-bit environment with arrays larger
+! than the INTEGER*4 limit (2 Gbytes), the SIZEOF function and
+! the variables receiving the result must be declared INTEGER*8."
+!
+! Thus, we can not overload the H5_SIZEOF function to handle arrays (as used in tH5P_F03.f90), or
+! characters that do not have a set length (as used in tH5P_F03.f90), sigh...
+!
+! (2) F08+TS29113 requires C interoperable variable as argument for C_SIZEOF.
+!
+! (3) Unfortunately we need to wrap the C_SIZEOF/STORAGE_SIZE functions to handle different
+! data types from the various tests.
+!
+! ---------------------------------------------------------------------------------------------------
+
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
+!DEC$attributes dllexport :: h5_sizeof_cmpd
+!DEC$endif
+ INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CMPD(a)
+ IMPLICIT NONE
+ TYPE(comp_datatype), INTENT(in) :: a
+
+#ifdef H5_FORTRAN_FORTRAN_HAVE_C_SIZEOF
+ H5_SIZEOF_CMPD = C_SIZEOF(a)
+#else
+ H5_SIZEOF_CMPD = SIZEOF(a)
+#endif
+
+ END FUNCTION H5_SIZEOF_CMPD
+
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
+!DEC$attributes dllexport :: h5_sizeof_chr
+!DEC$endif
+ INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CHR(a)
+ IMPLICIT NONE
+ CHARACTER(LEN=1), INTENT(in) :: a
+
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ H5_SIZEOF_CHR = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
+#else
+ H5_SIZEOF_CHR = SIZEOF(a)
+#endif
+
+ END FUNCTION H5_SIZEOF_CHR
+
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
+!DEC$attributes dllexport :: h5_sizeof_i
+!DEC$endif
+ INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_I(a)
+ IMPLICIT NONE
+ INTEGER, INTENT(in):: a
+
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ H5_SIZEOF_I = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
+#else
+ H5_SIZEOF_I = SIZEOF(a)
+#endif
+
+ END FUNCTION H5_SIZEOF_I
+
+
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
+!DEC$attributes dllexport :: h5_sizeof_sp
+!DEC$endif
+ INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_SP(a)
+ IMPLICIT NONE
+ REAL(sp), INTENT(in):: a
+
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ H5_SIZEOF_SP = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
+#else
+ H5_SIZEOF_SP = SIZEOF(a)
+#endif
+
+ END FUNCTION H5_SIZEOF_SP
+
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
+!DEC$attributes dllexport :: h5_sizeof_dp
+!DEC$endif
+ INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_DP(a)
+ IMPLICIT NONE
+ REAL(dp), INTENT(in):: a
+
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ H5_SIZEOF_DP = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
+#else
+ H5_SIZEOF_DP = SIZEOF(a)
+#endif
+
+ END FUNCTION H5_SIZEOF_DP
+
END MODULE TH5_MISC
diff --git a/fortran/test/tf_F03.f90 b/fortran/test/tf_F03.f90
deleted file mode 100644
index b3f1399..0000000
--- a/fortran/test/tf_F03.f90
+++ /dev/null
@@ -1,128 +0,0 @@
-!****h* root/fortran/test/tf_F03.f90
-!
-! NAME
-! tf_F03.f90
-!
-! FUNCTION
-! Contains functions that are part of the F2003 standard, and are not F2008 compliant.
-! Needed by the hdf5 fortran tests.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! CONTAINS SUBROUTINES
-! H5_SIZEOF
-!
-! NOTES
-! The Sun/Oracle compiler has the following restrictions on the SIZEOF intrinsic function:
-!
-! "The SIZEOF intrinsic cannot be applied to arrays of an assumed size, characters of a
-! length that is passed, or subroutine calls or names. SIZEOF returns default INTEGER*4 data.
-! If compiling for a 64-bit environment, the compiler will issue a warning if the result overflows
-! the INTEGER*4 data range. To use SIZEOF in a 64-bit environment with arrays larger
-! than the INTEGER*4 limit (2 Gbytes), the SIZEOF function and
-! the variables receiving the result must be declared INTEGER*8."
-!
-! Thus, we can not overload the H5_SIZEOF function to handle arrays (as used in tH5P_F03.f90), or
-! characters that do not have a set length (as used in tH5P_F03.f90), sigh...
-!
-!*****
-MODULE TH5_MISC_PROVISIONAL
-
- USE ISO_C_BINDING
- IMPLICIT NONE
-
- INTEGER, PARAMETER :: sp = SELECTED_REAL_KIND(5) ! This should map to REAL*4 on most modern processors
- INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(10) ! This should map to REAL*8 on most modern processors
-
- ! generic compound datatype
- TYPE, BIND(C) :: comp_datatype
- REAL :: a
- INTEGER :: x
- DOUBLE PRECISION :: y
- CHARACTER(LEN=1) :: z
- END TYPE comp_datatype
-
- PUBLIC :: H5_SIZEOF
- INTERFACE H5_SIZEOF
- MODULE PROCEDURE H5_SIZEOF_CMPD
- MODULE PROCEDURE H5_SIZEOF_I, H5_SIZEOF_CHR
- MODULE PROCEDURE H5_SIZEOF_SP,H5_SIZEOF_DP
- END INTERFACE
-
-CONTAINS
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_cmpd
- !DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CMPD(a)
- IMPLICIT NONE
- TYPE(comp_datatype), INTENT(in) :: a
-
- H5_SIZEOF_CMPD = SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_CMPD
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_chr
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CHR(a)
- IMPLICIT NONE
- CHARACTER(LEN=1), INTENT(in):: a
-
- H5_SIZEOF_CHR = SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_CHR
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_i
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_I(a)
- IMPLICIT NONE
- INTEGER, INTENT(in):: a
-
- H5_SIZEOF_I = SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_I
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_sp
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_SP(a)
- IMPLICIT NONE
- REAL(sp), INTENT(in):: a
-
- H5_SIZEOF_SP = SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_SP
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_dp
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_DP(a)
- IMPLICIT NONE
- REAL(dp), INTENT(in):: a
-
- H5_SIZEOF_DP = SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_DP
-
-END MODULE TH5_MISC_PROVISIONAL
diff --git a/fortran/test/tf_F08.f90 b/fortran/test/tf_F08.f90
deleted file mode 100644
index 20c2859..0000000
--- a/fortran/test/tf_F08.f90
+++ /dev/null
@@ -1,128 +0,0 @@
-!****h* root/fortran/test/tf_F08.f90
-!
-! NAME
-! tf_F08.f90
-!
-! FUNCTION
-! Contains functions that are part of the F2008 standard and needed by
-! the hdf5 fortran tests.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-! CONTAINS SUBROUTINES
-! H5_SIZEOF
-!
-! NOTES
-! This file contains "sizeof" functions that are F2008 standard compliant
-! and replace the non-standard 'SIZEOF' functions found in the file tf_F03.
-! Unfortunity we need to wrap the C_SIZEOF/STORAGE_SIZE functions to handle different
-! data types from the various tests.
-!
-! F08+TS29113 requires C interoperable variable as argument for C_SIZEOF.
-!
-! This file will be build instead of tf_F03.f90 if the intrinsic fortran
-! function C_SIZEOF/STORAGE_SIZE is found during configure.
-!
-!*****
-MODULE TH5_MISC_PROVISIONAL
-
- USE ISO_C_BINDING
- IMPLICIT NONE
-
- INTEGER, PARAMETER :: sp = SELECTED_REAL_KIND(5) ! This should map to REAL*4 on most modern processors
- INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(10) ! This should map to REAL*8 on most modern processors
-
- ! generic compound datatype
- TYPE, BIND(C) :: comp_datatype
- REAL :: a
- INTEGER :: x
- DOUBLE PRECISION :: y
- CHARACTER(LEN=1) :: z
- END TYPE comp_datatype
-
- PUBLIC :: H5_SIZEOF
- INTERFACE H5_SIZEOF
- MODULE PROCEDURE H5_SIZEOF_CMPD
- MODULE PROCEDURE H5_SIZEOF_CHR
- MODULE PROCEDURE H5_SIZEOF_I
- MODULE PROCEDURE H5_SIZEOF_SP,H5_SIZEOF_DP
- END INTERFACE
-
-CONTAINS
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_cmpd
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CMPD(a)
- IMPLICIT NONE
- TYPE(comp_datatype), INTENT(in) :: a
-
- H5_SIZEOF_CMPD = C_SIZEOF(a)
-
- END FUNCTION H5_SIZEOF_CMPD
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_chr
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CHR(a)
- IMPLICIT NONE
- CHARACTER(LEN=*), INTENT(in) :: a
-
- H5_SIZEOF_CHR = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
-
- END FUNCTION H5_SIZEOF_CHR
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_i
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_I(a)
- IMPLICIT NONE
- INTEGER, INTENT(in):: a
-
- H5_SIZEOF_I = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
-
- END FUNCTION H5_SIZEOF_I
-
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_sp
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_SP(a)
- IMPLICIT NONE
- REAL(sp), INTENT(in):: a
-
- H5_SIZEOF_SP = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
-
- END FUNCTION H5_SIZEOF_SP
-
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_TEST_DLL)
-!DEC$attributes dllexport :: h5_sizeof_dp
-!DEC$endif
- INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_DP(a)
- IMPLICIT NONE
- REAL(dp), INTENT(in):: a
-
- H5_SIZEOF_DP = storage_size(a, c_size_t)/storage_size(c_char_'a',c_size_t)
-
- END FUNCTION H5_SIZEOF_DP
-
-END MODULE TH5_MISC_PROVISIONAL
diff --git a/fortran/test/tf_F90.f90 b/fortran/test/tf_F90.f90
deleted file mode 100644
index 11a047c..0000000
--- a/fortran/test/tf_F90.f90
+++ /dev/null
@@ -1,33 +0,0 @@
-!****h* root/fortran/test/tf_F90.f90
-!
-! NAME
-! tf_F90.f90
-!
-! FUNCTION
-! Module for when the compiler is not F2003 or F2008 compliant.
-! Needed by tf.f90 for the test programs.
-!
-! COPYRIGHT
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!*****
-MODULE TH5_MISC_PROVISIONAL
- IMPLICIT NONE
-
- INTEGER, PARAMETER :: sp = KIND(0.0)
- INTEGER, PARAMETER :: dp = KIND(0.D0)
-
-END MODULE TH5_MISC_PROVISIONAL
diff --git a/fortran/testpar/Makefile.in b/fortran/testpar/Makefile.in
index f16dfff..073194a 100644
--- a/fortran/testpar/Makefile.in
+++ b/fortran/testpar/Makefile.in
@@ -114,7 +114,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = parallel_test$(EXEEXT)
@@ -140,7 +141,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS)
LTFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=compile $(FC) $(AM_FCFLAGS) $(FCFLAGS)
@@ -448,14 +449,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -465,13 +473,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -513,6 +520,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/Makefile.in b/hl/Makefile.in
index 60c9453..b5fbb46 100644
--- a/hl/Makefile.in
+++ b/hl/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -452,14 +453,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -469,13 +477,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -517,6 +524,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/c++/Makefile.in b/hl/c++/Makefile.in
index 278f97b..831dadc 100644
--- a/hl/c++/Makefile.in
+++ b/hl/c++/Makefile.in
@@ -106,7 +106,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -448,14 +449,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -465,13 +473,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -513,6 +520,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/c++/examples/Makefile.in b/hl/c++/examples/Makefile.in
index 5bad31f..67a14ca 100644
--- a/hl/c++/examples/Makefile.in
+++ b/hl/c++/examples/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-hlc++-ex.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -395,14 +396,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -412,13 +420,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -460,6 +467,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in
index 742b35c..043a25a 100644
--- a/hl/c++/src/Makefile.in
+++ b/hl/c++/src/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -165,7 +166,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -451,14 +452,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -468,13 +476,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -516,6 +523,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/c++/test/Makefile.in b/hl/c++/test/Makefile.in
index b7d7d09..4f88242 100644
--- a/hl/c++/test/Makefile.in
+++ b/hl/c++/test/Makefile.in
@@ -107,7 +107,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = ptableTest$(EXEEXT)
@@ -132,7 +133,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -448,14 +449,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -465,13 +473,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -513,6 +520,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/examples/Makefile.in b/hl/examples/Makefile.in
index f0bf099..ccf2308 100644
--- a/hl/examples/Makefile.in
+++ b/hl/examples/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-hlc-ex.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -395,14 +396,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -412,13 +420,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -460,6 +467,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/fortran/Makefile.in b/hl/fortran/Makefile.in
index 4651579..6d87e82 100644
--- a/hl/fortran/Makefile.in
+++ b/hl/fortran/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -452,14 +453,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -469,13 +477,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -517,6 +524,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/fortran/examples/Makefile.in b/hl/fortran/examples/Makefile.in
index e229f12..71e70dd 100644
--- a/hl/fortran/examples/Makefile.in
+++ b/hl/fortran/examples/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = run-hlfortran-ex.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -395,14 +396,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -412,13 +420,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -460,6 +467,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
index 2af665c..9d110a8 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -2,6 +2,41 @@ cmake_minimum_required (VERSION 3.1.0)
PROJECT(HDF5_HL_F90_SRC C CXX Fortran)
#-----------------------------------------------------------------------------
+# configure def file for shared libs on windows
+if (WIN32)
+ if (BUILD_SHARED_LIBS)
+ if (MSVC)
+ configure_file (${HDF5_HL_F90_SRC_SOURCE_DIR}/hdf5_hl_fortrandll.def.in ${HDF5_HL_F90_SRC_BINARY_DIR}/hdf5_hl_fortrandll.def @ONLY)
+ endif (MSVC)
+ endif (BUILD_SHARED_LIBS)
+endif (WIN32)
+
+#-----------------------------------------------------------------------------
+# Generate the H5LT and H5TB REAL APIs
+#-----------------------------------------------------------------------------
+
+add_executable (H5HL_buildiface
+ ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5HL_buildiface.F90
+ )
+
+if (WIN32 AND MSVC)
+ if (BUILD_SHARED_LIBS)
+ set_target_properties (H5HL_buildiface
+ PROPERTIES
+ COMPILE_FLAGS "/MT"
+ )
+ endif (BUILD_SHARED_LIBS)
+ set_target_properties (H5HL_buildiface
+ PROPERTIES
+ LINK_FLAGS "/SUBSYSTEM:CONSOLE"
+ )
+endif (WIN32 AND MSVC)
+set_target_properties (H5HL_buildiface PROPERTIES
+ LINKER_LANGUAGE Fortran
+ Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
+)
+
+#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
INCLUDE_DIRECTORIES (
@@ -56,14 +91,37 @@ endif (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
# Fortran Modules
#-----------------------------------------------------------------------------
+set (HDF5_HL_F90_F_BASE_SRCS
+ ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5DSff.F90
+ ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5TBff.F90
+ ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTff.F90
+ ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMff.F90
+)
set (HDF5_HL_F90_F_SRCS
- ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5DSff.f90
- ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5TBff.f90
- ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTff.f90
- ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMff.f90
+ ${HDF5_HL_F90_F_BASE_SRCS}
+
+ # generated files
+ ${HDF5_HL_F90_SRC_BINARY_DIR}/H5LTff_gen.F90
+ ${HDF5_HL_F90_SRC_BINARY_DIR}/H5TBff_gen.F90
)
+
set_source_files_properties (${HDF5_HL_F90_F_SRCS} PROPERTIES LANGUAGE Fortran)
+set_source_files_properties (
+ ${HDF5_HL_F90_SRC_BINARY_DIR}/H5LTff_gen.F90
+ ${HDF5_HL_F90_SRC_BINARY_DIR}/H5TBff_gen.F90
+ PROPERTIES GENERATED TRUE
+)
+
+set (CMD $<TARGET_FILE:H5HL_buildiface>)
+add_custom_target (H5HLgen ALL
+ COMMAND ${CMD}
+#v3.2 BYPRODUCT ${HDF5_HL_F90_SRC_BINARY_DIR}/H5LTff_gen.F90
+#v3.2 ${HDF5_HL_F90_SRC_BINARY_DIR}/H5TBff_gen.F90
+ WORKING_DIRECTORY ${HDF5_HL_F90_SRC_BINARY_DIR}
+ DEPENDS ${HDF5_HL_F90_F_BASE_SRCS}
+)
+
add_library (${HDF5_HL_F90_LIB_TARGET} STATIC ${HDF5_HL_F90_F_SRCS})
TARGET_FORTRAN_PROPERTIES (${HDF5_HL_F90_LIB_TARGET} STATIC " " " ")
target_link_libraries (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
@@ -86,7 +144,7 @@ if (BUILD_SHARED_LIBS)
add_library (${HDF5_HL_F90_LIBSH_TARGET} SHARED ${HDF5_HL_F90_F_SRCS})
set (SHARED_LINK_FLAGS " ")
if (WIN32 AND MSVC)
- set (SHARED_LINK_FLAGS "/DLL")
+ set (SHARED_LINK_FLAGS "/DLL /DEF:${HDF5_HL_F90_SRC_BINARY_DIR}/hdf5_hl_fortrandll.def")
endif (WIN32 AND MSVC)
TARGET_FORTRAN_PROPERTIES (${HDF5_HL_F90_LIBSH_TARGET} SHARED " " ${SHARED_LINK_FLAGS})
target_link_libraries (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET})
@@ -128,7 +186,9 @@ endif (BUILD_SHARED_LIBS)
set (mod_files
${MOD_BUILD_DIR}/h5ds.mod
${MOD_BUILD_DIR}/h5tb.mod
+ ${MOD_BUILD_DIR}/h5tb_const.mod
${MOD_BUILD_DIR}/h5lt.mod
+ ${MOD_BUILD_DIR}/h5lt_const.mod
${MOD_BUILD_DIR}/h5im.mod
)
@@ -149,7 +209,7 @@ if (HDF5_EXPORTED_TARGETS)
INSTALL_TARGET_PDB (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
#INSTALL_TARGET_PDB (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
endif (BUILD_SHARED_LIBS)
-
+
install (
TARGETS
${install_targets}
diff --git a/hl/fortran/src/H5DSfc.c b/hl/fortran/src/H5DSfc.c
index 1de3fff..af054e0 100644
--- a/hl/fortran/src/H5DSfc.c
+++ b/hl/fortran/src/H5DSfc.c
@@ -35,7 +35,7 @@
*-------------------------------------------------------------------------
*/
int_f
-nh5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
+h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
{
char *c_dimname = NULL;
int_f ret_value = 0;
@@ -61,7 +61,7 @@ nh5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
return ret_value;
-} /* end nh5dsset_scale_c() */
+} /* end h5dsset_scale_c() */
/*-------------------------------------------------------------------------
@@ -80,7 +80,7 @@ nh5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
+h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
{
int_f ret_value = 0;
@@ -94,7 +94,7 @@ nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
done:
return ret_value;
-} /* end nh5dsattach_scale_c() */
+} /* end h5dsattach_scale_c() */
/*-------------------------------------------------------------------------
@@ -113,7 +113,7 @@ nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
+h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
{
int_f ret_value = 0;
@@ -127,7 +127,7 @@ nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
done:
return ret_value;
-} /* end nh5dsdetach_scale_c() */
+} /* end h5dsdetach_scale_c() */
/*-------------------------------------------------------------------------
@@ -146,7 +146,7 @@ nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
+h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
{
int_f ret_value = 0;
htri_t c_is_attached;
@@ -163,7 +163,7 @@ nh5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
done:
return ret_value;
-} /* end nh5dsis_attached_c() */
+} /* end h5dsis_attached_c() */
/*-------------------------------------------------------------------------
* Function: H5DSis_scale_c
@@ -181,7 +181,7 @@ nh5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsis_scale_c( hid_t_f *did, int_f *is_scale)
+h5dsis_scale_c( hid_t_f *did, int_f *is_scale)
{
int_f ret_value = 0;
htri_t c_is_scale;
@@ -198,7 +198,7 @@ nh5dsis_scale_c( hid_t_f *did, int_f *is_scale)
done:
return ret_value;
-} /* end nh5dsis_scale_c() */
+} /* end h5dsis_scale_c() */
/*-------------------------------------------------------------------------
@@ -217,7 +217,7 @@ nh5dsis_scale_c( hid_t_f *did, int_f *is_scale)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
+h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
{
char *c_label = NULL;
int_f ret_value = 0;
@@ -242,7 +242,7 @@ nh5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
return ret_value;
-} /* end nh5dsset_label_c() */
+} /* end h5dsset_label_c() */
/*-------------------------------------------------------------------------
* Function: h5dsget_label_c
@@ -260,7 +260,7 @@ nh5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
*-------------------------------------------------------------------------
*/
int_f
-nh5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size)
+h5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size)
{
char *c_label = NULL;
ssize_t size_c = -1;
@@ -291,7 +291,7 @@ done:
if(c_label) HDfree(c_label);
return ret_value;
-} /* end nh5dsget_label_c() */
+} /* end h5dsget_label_c() */
/*-------------------------------------------------------------------------
* Function: h5dsget_scale_name_c
@@ -309,7 +309,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-nh5dsget_scale_name_c(hid_t_f *did, _fcd name, size_t_f *size)
+h5dsget_scale_name_c(hid_t_f *did, _fcd name, size_t_f *size)
{
char *c_scale_name = NULL;
ssize_t size_c = -1;
@@ -338,7 +338,7 @@ done:
if(c_scale_name) HDfree(c_scale_name);
return ret_value;
-} /* end nh5dsget_scale_name_c() */
+} /* end h5dsget_scale_name_c() */
/*-------------------------------------------------------------------------
* Function: H5DSget_num_scales_c
@@ -356,7 +356,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-nh5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
+h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
{
int_f ret_value = 0;
@@ -370,4 +370,4 @@ nh5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
done:
return ret_value;
-} /* end nh5dsget_num_scales_c() */
+} /* end h5dsget_num_scales_c() */
diff --git a/hl/fortran/src/H5DSff.f90 b/hl/fortran/src/H5DSff.F90
index 04540a6..00cf4d8 100644
--- a/hl/fortran/src/H5DSff.f90
+++ b/hl/fortran/src/H5DSff.F90
@@ -19,12 +19,12 @@
MODULE h5ds
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR, C_FLOAT, C_DOUBLE, C_LOC, C_CHAR
USE h5fortran_types
USE hdf5
CONTAINS
-
!-------------------------------------------------------------------------
! Function: H5DSset_scale_f
!
@@ -60,16 +60,13 @@ CONTAINS
INTEGER(SIZE_T) :: dimname_len ! length of dimname (if present)
INTERFACE
- INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len )
-
- USE h5global
+ INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len) &
+ BIND(C,NAME='h5dsset_scale_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSSET_SCALE_C'::h5dsset_scale_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dimname
INTEGER(hid_t), INTENT(in) :: dsid ! The dataset to be made a Dimension Scale
- CHARACTER(LEN=*), INTENT(in) :: dimname ! The dimension name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dimname ! The dimension name
INTEGER(SIZE_T), INTENT(in) :: dimname_len
END FUNCTION H5DSset_scale_c
END INTERFACE
@@ -117,13 +114,10 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx )
-
- USE h5global
+ INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx) &
+ BIND(C,NAME='h5dsattach_scale_c')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSATTACH_SCALE_C':: h5dsattach_scale_c
- !DEC$ENDIF
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached
INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with.
@@ -170,13 +164,10 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx )
-
- USE h5global
+ INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx) &
+ BIND(C,NAME='h5dsdetach_scale_c')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSDETACH_SCALE_C':: h5dsdetach_scale_c
- !DEC$ENDIF
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached
INTEGER , INTENT(in) :: idx ! the dimension of did to detach
@@ -227,13 +218,10 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached )
-
- USE h5global
+ INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached) &
+ BIND(C,NAME='h5dsis_attached_c')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSIS_ATTACHED_C':: h5dsis_attached_c
- !DEC$ENDIF
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached
INTEGER , INTENT(in) :: idx ! the dimension of did to detach
@@ -292,14 +280,11 @@ CONTAINS
INTEGER :: c_is_scale
INTERFACE
- INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale)
-
- USE h5global
+ INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale) &
+ BIND(C,NAME='h5dsis_scale_c')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSIS_SCALE_C':: h5dsis_scale_c
- !DEC$ENDIF
- INTEGER(hid_t), INTENT(in) :: did ! the data set to query
+ INTEGER(hid_t), INTENT(in) :: did
INTEGER, INTENT(out) :: c_is_scale
END FUNCTION H5DSis_scale_c
END INTERFACE
@@ -352,17 +337,14 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len)
-
- USE h5global
+ INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len) &
+ BIND(C,NAME='h5dsset_label_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSSET_LABEL_C'::h5dsset_label_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: label
INTEGER(hid_t), INTENT(in) :: did ! The dataset
INTEGER , INTENT(in) :: idx ! The dimension
- CHARACTER(LEN=*), INTENT(in) :: label ! The label
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label
INTEGER(SIZE_T), INTENT(in) :: label_len ! Length of label
END FUNCTION H5DSset_label_c
END INTERFACE
@@ -410,17 +392,14 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSget_label_c(did, idx, label, size)
-
- USE h5global
+ INTEGER FUNCTION H5DSget_label_c(did, idx, label, size) &
+ BIND(C,NAME='h5dsget_label_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_LABEL_C'::h5dsget_label_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: label
INTEGER(hid_t), INTENT(in) :: did ! The dataget
INTEGER , INTENT(in) :: idx ! The dimension
- CHARACTER(LEN=*), INTENT(in) :: label ! The label
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label
INTEGER(SIZE_T), INTENT(inout) :: size ! Length of label
END FUNCTION H5DSget_label_c
END INTERFACE
@@ -466,16 +445,13 @@ CONTAINS
INTEGER :: errcode ! Error code
INTERFACE
- INTEGER FUNCTION H5DSget_scale_name_c(did, name, size)
-
- USE h5global
+ INTEGER FUNCTION H5DSget_scale_name_c(did, name, size) &
+ bind(c,name='h5dsget_scale_name_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_SCALE_NAME_C'::h5dsget_scale_name_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
INTEGER(hid_t), INTENT(in) :: did ! The dataget
- CHARACTER(LEN=*), INTENT(out) :: name ! The name
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(out) :: name ! The name
INTEGER(SIZE_T), INTENT(inout) :: size ! Length of name
END FUNCTION H5DSget_scale_name_c
END INTERFACE
@@ -518,13 +494,10 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales)
-
- USE h5global
+ INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales) &
+ BIND(C,NAME='h5dsget_num_scales_c')
+ IMPORT :: HID_T
IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_NUM_SCALES_C':: h5dsget_num_scales_c
- !DEC$ENDIF
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER , INTENT(in) :: idx ! the dimension of did to query
INTEGER , INTENT(out) :: num_scales ! the number of Dimension Scales associated with did
diff --git a/hl/fortran/src/H5HL_buildiface.F90 b/hl/fortran/src/H5HL_buildiface.F90
new file mode 100644
index 0000000..0e85e27
--- /dev/null
+++ b/hl/fortran/src/H5HL_buildiface.F90
@@ -0,0 +1,683 @@
+!****p* Program/H5HL_buildiface
+!
+! NAME
+! Executable: H5HL_buildiface
+!
+! FILE
+! fortran/src/H5HL_buildiface.f90
+!
+! PURPOSE
+! This stand alone program is used at build time to generate the program
+! H5HL_gen.f90. It cycles through all the available KIND parameters for
+! integers and reals. The appropriate program and subroutines are then generated
+! depending on which of the KIND values are found.
+!
+! NOTES
+! This program uses the Fortran 2008 intrinsic function STORAGE_SIZE or SIZEOF
+! depending on availablity.It generates code that makes use of
+! STORAGE_SIZE/SIZEOF in H5fortran_detect.f90. STORAGE_SIZE is standard
+! compliant and should always be chosen over SIZEOF.
+!
+! The availability of STORAGE_SIZE/SIZEOF is checked at configure time and the TRUE/FALSE
+! condition is set in the configure variable "FORTRAN_HAVE_STORAGE_SIZE" or
+! "FORTRAN_HAVE_SIZEOF".
+!
+! The use of C_SIZOF(X) is not used since the argument X must be an interoperable
+! data entity.
+!
+! COPYRIGHT
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+! AUTHOR
+! M. Scot Breitenfeld
+!
+!*****
+
+#include <H5config_f.inc>
+
+PROGRAM H5HL_buildiface
+ USE, INTRINSIC :: ISO_C_BINDING
+ IMPLICIT NONE
+
+! These values are valid REAL KINDs (with corresponding C float) found during configure
+ H5_H5CONFIG_F_NUM_RKIND
+ H5_H5CONFIG_F_RKIND
+! These values are valid INTEGER KINDs (with corresponding C float) found during configure
+ H5_H5CONFIG_F_NUM_IKIND
+ H5_H5CONFIG_F_IKIND
+
+ INTEGER :: i, j, k
+ INTEGER :: ji, jr, jd
+#ifdef H5_FORTRAN_HAVE_C_LONG_DOUBLE
+ REAL(KIND=C_LONG_DOUBLE) :: c_longdble
+#endif
+ REAL(KIND=C_DOUBLE) :: c_dble
+ REAL(KIND=C_FLOAT) :: c_flt
+ INTEGER :: sizeof_var
+ CHARACTER(LEN=2) :: chr2
+! subroutine rank of array being passed in
+ CHARACTER(LEN=2), DIMENSION(1:8), PARAMETER :: chr_rank=(/"_0","_1","_2","_3","_4","_5","_6","_7"/)
+! rank definitions
+ CHARACTER(LEN=70), DIMENSION(1:8), PARAMETER :: rank_dim_line=(/ &
+ ' ', &
+ ', DIMENSION(dims(1)) ', &
+ ', DIMENSION(dims(1),dims(2)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) ', &
+ ', DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7))' &
+ /)
+! pointer to the buffer
+ CHARACTER(LEN=37), DIMENSION(1:8), PARAMETER :: f_ptr_line=(/ &
+ ' f_ptr = C_LOC(buf) ', &
+ ' f_ptr = C_LOC(buf(1)) ', &
+ ' f_ptr = C_LOC(buf(1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1)) ', &
+ ' f_ptr = C_LOC(buf(1,1,1,1,1,1,1))' &
+ /)
+
+! Generate Fortran H5LT* interfaces having multiple KIND interfaces.
+!
+! Developer's notes:
+!
+! Only interfaces with arrays of rank 7 and less are provided. Even-though the F2008
+! standard extended the maximum rank to 15, it was decided that they should use the
+! new APIs to handle those use cases. Handling rank 7 and less is for backward compatibility
+! with the Fortran 90/95 APIs codes which could never handle rank 8-15 array sizes.
+
+ OPEN(11,FILE='H5LTff_gen.F90')
+ WRITE(11,'(40(A,/))') &
+'!****h* ROBODoc/H5LTff_gen.F90',&
+'!',&
+'! NAME',&
+'! H5LTff_gen',&
+'! ',&
+'! PURPOSE',&
+'! This module is generated at build by H5HL_buildiface.F90 to handle all the',&
+'! detected REAL/INTEGER KINDs for APIs being passed those KINDs. Currently these ',&
+'! are H5LT and H5TB APIs',&
+'!',&
+'! COPYRIGHT',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'! Copyright by The HDF Group. *',&
+'! All rights reserved. *',&
+'! *',&
+'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
+'! terms governing use, modification, and redistribution, is contained in *',&
+'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
+'! of the source code distribution tree; Copyright.html can be found at the *',&
+'! root level of an installed copy of the electronic HDF5 document set and *',&
+'! is linked from the top-level documents page. It can also be found at *',&
+'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
+'! access to either file, you may request a copy from help@hdfgroup.org. *',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'!',&
+'! AUTHOR',&
+'! H5HL_buildiface.F90',&
+'!',&
+'!*****'
+
+ WRITE(11,'(a)') "MODULE H5LT"
+
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' USE h5fortran_types'
+ WRITE(11,'(A)') ' USE H5LT_CONST'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+!***************
+! H5LT INTERFACES
+!***************
+!
+! H5LTmake_dataset_f
+!
+ WRITE(11,'(A)') " INTERFACE h5ltmake_dataset_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltmake_dataset_real_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5ltread_dataset_f
+ WRITE(11,'(A)') " INTERFACE h5ltread_dataset_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltread_dataset_real_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5ltmake_dataset_float_f
+ WRITE(11,'(A)') " INTERFACE h5ltmake_dataset_float_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltmake_dataset_float_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5ltmake_dataset_double_f
+ WRITE(11,'(A)') " INTERFACE h5ltmake_dataset_double_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltmake_dataset_double_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5ltread_dataset_float_f
+ WRITE(11,'(A)') " INTERFACE h5ltread_dataset_float_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltread_dataset_float_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5ltread_dataset_double_f
+ WRITE(11,'(A)') " INTERFACE h5ltread_dataset_double_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ DO k = 1, 8
+ WRITE(11,'(A)') " MODULE PROCEDURE h5ltread_dataset_double_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ ENDDO
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+ WRITE(11,'(A)') 'CONTAINS'
+
+!**********************
+! H5LT APIs
+!**********************
+!
+! h5ltmake_dataset_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltmake_dataset_real_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,rank,dims,type_id,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER, INTENT(IN) :: rank'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' INTEGER(hid_t), INTENT(in) :: type_id'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltmake_dataset_real_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+! h5ltread_dataset_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltread_dataset_real_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltread_dataset_real_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,type_id,buf,dims,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER(hid_t), INTENT(in) :: type_id'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltread_dataset_real_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+! h5ltmake_dataset_float_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltmake_dataset_float_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,rank,dims,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER, INTENT(IN) :: rank'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltmake_dataset_float_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+! h5ltread_dataset_float_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltread_dataset_float_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltread_dataset_float_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,buf,dims,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltread_dataset_float_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+! h5ltmake_dataset_double_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltmake_dataset_double_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,rank,dims,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER, INTENT(IN) :: rank'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltmake_dataset_double_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+! h5ltread_dataset_double_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ DO j = 1, 8
+
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5ltread_dataset_double_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5ltread_dataset_double_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,buf,dims,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN)'//TRIM(rank_dim_line(j))//', TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5ltread_dataset_double_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+ ENDDO
+
+ WRITE(11,'(A)') 'END MODULE H5LT' ! change this to be generic MSB
+
+ CLOSE(11)
+
+! Generate Fortran H5TB* interfaces having multiple KIND interfaces.
+
+
+ OPEN(11,FILE='H5TBff_gen.F90')
+ WRITE(11,'(40(A,/))') &
+'!****h* ROBODoc/H5TBff_gen.F90',&
+'!',&
+'! NAME',&
+'! H5TBff_gen',&
+'! ',&
+'! PURPOSE',&
+'! This module is generated at build by H5HL_buildiface.F90 to handle all the',&
+'! detected REAL/INTEGER KINDs for APIs being passed those KINDs. Currently these ',&
+'! are H5LT and H5TB APIs',&
+'!',&
+'! COPYRIGHT',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'! Copyright by The HDF Group. *',&
+'! All rights reserved. *',&
+'! *',&
+'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
+'! terms governing use, modification, and redistribution, is contained in *',&
+'! the files COPYING and Copyright.html. COPYING can be found at the root *',&
+'! of the source code distribution tree; Copyright.html can be found at the *',&
+'! root level of an installed copy of the electronic HDF5 document set and *',&
+'! is linked from the top-level documents page. It can also be found at *',&
+'! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *',&
+'! access to either file, you may request a copy from help@hdfgroup.org. *',&
+'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
+'!',&
+'! AUTHOR',&
+'! H5HL_buildiface.F90',&
+'!',&
+'!*****'
+
+ WRITE(11,'(a)') "MODULE H5TB"
+
+ WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
+ WRITE(11,'(A)') ' USE h5fortran_types'
+ WRITE(11,'(A)') ' USE H5TB_CONST'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+
+!***************
+! H5TB INTERFACES
+!***************
+
+! h5tbwrite_field_name_f
+ WRITE(11,'(A)') " INTERFACE h5tbwrite_field_name_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ k =2
+ WRITE(11,'(A)') " MODULE PROCEDURE h5tbwrite_field_name_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5tbread_field_name_f
+ WRITE(11,'(A)') " INTERFACE h5tbread_field_name_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ k = 2
+ WRITE(11,'(A)') " MODULE PROCEDURE h5tbread_field_name_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5tbwrite_field_index_f
+ WRITE(11,'(A)') " INTERFACE h5tbwrite_field_index_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ k = 2
+ WRITE(11,'(A)') " MODULE PROCEDURE h5tbwrite_field_index_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5tbread_field_index_f
+ WRITE(11,'(A)') " INTERFACE h5tbread_field_index_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ k = 2
+ WRITE(11,'(A)') " MODULE PROCEDURE h5tbread_field_index_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+! h5tbinsert_field_f
+ WRITE(11,'(A)') " INTERFACE h5tbinsert_field_f"
+ DO i = 1, num_rkinds
+ j = rkind(i)
+ WRITE(chr2,'(I2)') j
+ k = 2
+ WRITE(11,'(A)') " MODULE PROCEDURE h5tbinsert_field_kind_"//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(k)
+ END DO
+ WRITE(11,'(A)') " END INTERFACE"
+
+ WRITE(11,'(A)') 'CONTAINS'
+
+ !**********************
+ ! H5TB APIs
+ !**********************
+
+ ! h5tbwrite_field_name_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ j = 2
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5tbwrite_field_name_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5tbwrite_field_name_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(in) :: field_name'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: start'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: nrecords'
+ WRITE(11,'(A)') ' INTEGER(size_t), INTENT(in) :: type_size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN), DIMENSION(*), TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen1'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' namelen1 = LEN(field_name)'
+ WRITE(11,'(A)') &
+ ' errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5tbwrite_field_name_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+
+ ! h5tbread_field_name_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ j = 2
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5tbread_field_name_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5tbread_field_name_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(in) :: field_name'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: start'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: nrecords'
+ WRITE(11,'(A)') ' INTEGER(size_t), INTENT(in) :: type_size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN), DIMENSION(*), TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen1'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' namelen1 = LEN(field_name)'
+ WRITE(11,'(A)') &
+ ' errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5tbread_field_name_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+
+ ! h5tbwrite_field_index_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ j = 2
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5tbwrite_field_index_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5tbwrite_field_index_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER, INTENT(in) :: field_index'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: start'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: nrecords'
+ WRITE(11,'(A)') ' INTEGER(size_t), INTENT(in) :: type_size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN), DIMENSION(*), TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') &
+ ' errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5tbwrite_field_index_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+
+ ! h5tbread_field_index_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ j = 2
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5tbread_field_index_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5tbread_field_index_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t) , INTENT(IN) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(IN) :: dset_name'
+ WRITE(11,'(A)') ' INTEGER, INTENT(in) :: field_index'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: start'
+ WRITE(11,'(A)') ' INTEGER(hsize_t), INTENT(in) :: nrecords'
+ WRITE(11,'(A)') ' INTEGER(size_t), INTENT(in) :: type_size'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'),INTENT(IN), DIMENSION(*), TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER :: errcode '
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') &
+ ' errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5tbread_field_index_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+
+ ! h5tbinsert_field_f
+ DO i = 1, num_rkinds
+ k = rkind(i)
+ WRITE(chr2,'(I2)') k
+ j = 2
+! DLL definitions for windows
+ WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_HL_DLL)'
+ WRITE(11,'(A)') '!DEC$attributes dllexport :: h5tbinsert_field_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ WRITE(11,'(A)') '!DEC$endif'
+
+! Subroutine API
+ WRITE(11,'(A)') ' SUBROUTINE h5tbinsert_field_kind_'//TRIM(ADJUSTL(chr2))&
+ &//'_rank'//chr_rank(j)//'(loc_id,dset_name,field_name,field_type,field_index,buf,errcode)'
+ WRITE(11,'(A)') ' IMPLICIT NONE'
+ WRITE(11,'(A)') ' INTEGER(hid_t), INTENT(in) :: loc_id'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(in) :: dset_name'
+ WRITE(11,'(A)') ' CHARACTER(LEN=*), INTENT(in) :: field_name'
+ WRITE(11,'(A)') ' INTEGER(hid_t), INTENT(in) :: field_type'
+ WRITE(11,'(A)') ' INTEGER, INTENT(in) :: field_index'
+ WRITE(11,'(A)') ' REAL(KIND='//TRIM(ADJUSTL(chr2))//'), INTENT(in), DIMENSION(*), TARGET :: buf'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen'
+ WRITE(11,'(A)') ' INTEGER(size_t) :: namelen1'
+ WRITE(11,'(A)') ' INTEGER :: errcode'
+ WRITE(11,'(A)') ' TYPE(C_PTR) :: f_ptr'
+
+ WRITE(11,'(A)') f_ptr_line(j)
+ WRITE(11,'(A)') ' namelen = LEN(dset_name)'
+ WRITE(11,'(A)') ' namelen1 = LEN(field_name)'
+ WRITE(11,'(A)') &
+ ' errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,field_type,field_index,f_ptr)'
+ WRITE(11,'(A)') ' END SUBROUTINE h5tbinsert_field_kind_'//TRIM(ADJUSTL(chr2))//'_rank'//chr_rank(j)
+ ENDDO
+
+ WRITE(11,'(A)') 'END MODULE H5TB'
+
+ CLOSE(11)
+
+END PROGRAM H5HL_buildiface
+
+
+
diff --git a/hl/fortran/src/H5IMfc.c b/hl/fortran/src/H5IMfc.c
index 6acd410..7ad50d6 100644
--- a/hl/fortran/src/H5IMfc.c
+++ b/hl/fortran/src/H5IMfc.c
@@ -39,7 +39,7 @@
*/
int_f
-nh5immake_image_8bit_c (hid_t_f *loc_id,
+h5immake_image_8bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -100,7 +100,7 @@ done:
*/
int_f
-nh5imread_image_c (hid_t_f *loc_id,
+h5imread_image_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *buf)
@@ -153,7 +153,7 @@ done:
*/
int_f
-nh5immake_image_24bit_c (hid_t_f *loc_id,
+h5immake_image_24bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -222,7 +222,7 @@ done:
*/
int_f
-nh5imget_image_info_c(hid_t_f *loc_id,
+h5imget_image_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -307,7 +307,7 @@ done:
*/
int_f
-nh5imis_image_c(hid_t_f *loc_id,
+h5imis_image_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name)
{
@@ -356,7 +356,7 @@ nh5imis_image_c(hid_t_f *loc_id,
*/
int_f
-nh5immake_palette_c (hid_t_f *loc_id,
+h5immake_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -411,7 +411,7 @@ done:
*/
int_f
-nh5imlink_palette_c (hid_t_f *loc_id,
+h5imlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -476,7 +476,7 @@ done:
*/
int_f
-nh5imunlink_palette_c (hid_t_f *loc_id,
+h5imunlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -542,7 +542,7 @@ done:
*/
int_f
-nh5imget_npalettes_c(hid_t_f *loc_id,
+h5imget_npalettes_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *npals)
@@ -604,7 +604,7 @@ done:
int_f
-nh5imget_palette_info_c(hid_t_f *loc_id,
+h5imget_palette_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -671,7 +671,7 @@ done:
int_f
-nh5imget_palette_c(hid_t_f *loc_id,
+h5imget_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -729,7 +729,7 @@ done:
*/
int_f
-nh5imis_palette_c(hid_t_f *loc_id,
+h5imis_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name)
{
diff --git a/hl/fortran/src/H5IMff.F90 b/hl/fortran/src/H5IMff.F90
new file mode 100644
index 0000000..4408dda
--- /dev/null
+++ b/hl/fortran/src/H5IMff.F90
@@ -0,0 +1,667 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+!
+! This file contains FORTRAN interfaces for H5IM functions
+!
+! NOTES
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new function here then you MUST add the function name to the
+! Windows dll file 'hdf5_hl_fortrandll.def.in' in the hl/fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+
+MODULE h5im
+ USE, INTRINSIC :: ISO_C_BINDING
+ USE h5fortran_types
+ USE hdf5
+CONTAINS
+
+!-------------------------------------------------------------------------
+! Function: h5immake_image_8bit_f
+!
+! Purpose: Creates and writes an image an 8 bit image
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5immake_image_8bit_f(loc_id,&
+ dset_name,&
+ width,&
+ height,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: width ! width of image
+ INTEGER(hsize_t), INTENT(in) :: height ! height of image
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf) &
+ BIND(C,NAME='h5immake_image_8bit_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in) :: width ! width of image
+ INTEGER(hsize_t), INTENT(in) :: height ! height of image
+ INTEGER , INTENT(in), DIMENSION(*) :: buf ! buffer
+ END FUNCTION h5immake_image_8bit_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf)
+
+ END SUBROUTINE h5immake_image_8bit_f
+
+!-------------------------------------------------------------------------
+! Function: h5imread_image_f
+!
+! Purpose: Reads image data from disk.
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+ SUBROUTINE h5imread_image_f(loc_id,&
+ dset_name,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imread_image_c(loc_id,namelen,dset_name,buf) &
+ BIND(C,NAME='h5imread_image_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! buffer
+ END FUNCTION h5imread_image_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imread_image_c(loc_id,namelen,dset_name,buf)
+
+ END SUBROUTINE h5imread_image_f
+
+!-------------------------------------------------------------------------
+! Function: h5immake_image_24bit_f
+!
+! Purpose: Creates and writes an image a 24 bit image
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5immake_image_24bit_f(loc_id,&
+ dset_name,&
+ width,&
+ height,&
+ il,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: width ! width of image
+ INTEGER(hsize_t), INTENT(in) :: height ! height of image
+ CHARACTER(len=*), INTENT(in) :: il ! interlace
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5immake_image_24bit_c(loc_id,namelen,dset_name,ILEN,il,width,height,buf) &
+ BIND(C,NAME='h5immake_image_24bit_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in) :: width ! width of image
+ INTEGER(hsize_t), INTENT(in) :: height ! height of image
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: il ! interlace
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! buffer
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: ILEN ! name length
+
+ END FUNCTION h5immake_image_24bit_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ ILEN = LEN(il)
+ errcode = h5immake_image_24bit_c(loc_id,namelen,dset_name,ILEN,il,width,height,buf)
+
+ END SUBROUTINE h5immake_image_24bit_f
+
+!-------------------------------------------------------------------------
+! Function: h5imget_image_info_f
+!
+! Purpose: Gets information about an image dataset (dimensions, interlace mode
+! and number of associated palettes).
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imget_image_info_f(loc_id,&
+ dset_name,&
+ width,&
+ height,&
+ planes,&
+ interlace,&
+ npals,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: width ! width of image
+ INTEGER(hsize_t), INTENT(inout) :: height ! height of image
+ INTEGER(hsize_t), INTENT(inout) :: planes ! color planes
+ INTEGER(hsize_t), INTENT(inout) :: npals ! palettes
+ CHARACTER(len=*), INTENT(inout) :: interlace ! interlace
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ILEN,interlace) &
+ BIND(C,NAME='h5imget_image_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(inout) :: width ! width of image
+ INTEGER(hsize_t), INTENT(inout) :: height ! height of image
+ INTEGER(hsize_t), INTENT(inout) :: planes ! color planes
+ INTEGER(hsize_t), INTENT(inout) :: npals ! palettes
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(inout) :: interlace ! interlace
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+ END FUNCTION h5imget_image_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ ILEN = LEN(interlace)
+ errcode = h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ILEN,interlace)
+
+ END SUBROUTINE h5imget_image_info_f
+
+!-------------------------------------------------------------------------
+! Function: h5imis_image_f
+!
+! Purpose: Inquires if a dataset is an image
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ INTEGER FUNCTION h5imis_image_f(loc_id,&
+ dset_name)
+
+ IMPLICIT NONE
+
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imis_image_c(loc_id,namelen,dset_name) &
+ BIND(C,NAME='h5imis_image_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ END FUNCTION h5imis_image_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imis_image_c(loc_id,namelen,dset_name)
+ h5imis_image_f = errcode
+
+ END FUNCTION h5imis_image_f
+
+
+!-------------------------------------------------------------------------
+! Function: h5immake_palette_f
+!
+! Purpose: Creates and writes a palette
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5immake_palette_f(loc_id,&
+ dset_name,&
+ pal_dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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), DIMENSION(*) :: pal_dims ! dimensions
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf) &
+ BIND(C,NAME='h5immake_palette_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in), DIMENSION(*) :: pal_dims ! dimensions
+ INTEGER, INTENT(in), DIMENSION(*) :: buf ! buffer
+ END FUNCTION h5immake_palette_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf)
+
+ END SUBROUTINE h5immake_palette_f
+
+!-------------------------------------------------------------------------
+! Function: h5imlink_palette_f
+!
+! Purpose: This function attaches a palette to an existing image dataset
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imlink_palette_f(loc_id,&
+ dset_name,&
+ pal_name,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: pal_name ! palette name
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imlink_palette_c(loc_id,namelen,dset_name,ILEN,pal_name) &
+ BIND(C,NAME='h5imlink_palette_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: pal_name ! palette name
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+ END FUNCTION h5imlink_palette_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ ILEN = LEN(pal_name)
+ errcode = h5imlink_palette_c(loc_id,namelen,dset_name,ILEN,pal_name)
+
+ END SUBROUTINE h5imlink_palette_f
+
+
+!-------------------------------------------------------------------------
+! Function: h5imunlink_palette_f
+!
+! Purpose: This function dettaches a palette to an existing image dataset
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imunlink_palette_f(loc_id,&
+ dset_name,&
+ pal_name,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: pal_name ! palette name
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imunlink_palette_c(loc_id,namelen,dset_name,ILEN,pal_name) &
+ BIND(C,NAME='h5imunlink_palette_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: pal_name ! palette name
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: ILEN ! name length
+ END FUNCTION h5imunlink_palette_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ ILEN = LEN(pal_name)
+ errcode = h5imunlink_palette_c(loc_id,namelen,dset_name,ILEN,pal_name)
+
+ END SUBROUTINE h5imunlink_palette_f
+
+!-------------------------------------------------------------------------
+! Function: h5imget_npalettes_f
+!
+! Purpose: Gets the number of palettes associated to an image
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 05, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imget_npalettes_f(loc_id,&
+ dset_name,&
+ npals,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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) :: npals ! palettes
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imget_npalettes_c(loc_id,namelen,dset_name,npals) &
+ BIND(C,NAME='h5imget_npalettes_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(inout) :: npals ! palettes
+ INTEGER(size_t) :: namelen ! name length
+ END FUNCTION h5imget_npalettes_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imget_npalettes_c(loc_id,namelen,dset_name,npals)
+
+ END SUBROUTINE h5imget_npalettes_f
+
+
+!-------------------------------------------------------------------------
+! Function: h5imget_palette_info_f
+!
+! Purpose: Get palette information
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imget_palette_info_f(loc_id,&
+ dset_name,&
+ pal_number,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: pal_number ! palette number
+ INTEGER(hsize_t), DIMENSION(*), INTENT(inout) :: dims ! dimensions
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims) &
+ BIND(C,NAME='h5imget_palette_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: pal_number ! palette number
+ INTEGER(hsize_t), DIMENSION(*), INTENT(inout) :: dims ! dimensions
+ INTEGER(size_t) :: namelen ! name length
+ END FUNCTION h5imget_palette_info_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims)
+
+ END SUBROUTINE h5imget_palette_info_f
+
+!-------------------------------------------------------------------------
+! Function: h5imget_palette_f
+!
+! Purpose: Reads palette
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5imget_palette_f(loc_id,&
+ dset_name,&
+ pal_number,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: pal_number ! palette number
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf) &
+ BIND(C,NAME='h5imget_palette_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: pal_number ! palette number
+ INTEGER, INTENT(inout), DIMENSION(*) :: buf ! buffer
+ END FUNCTION h5imget_palette_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf)
+
+ END SUBROUTINE h5imget_palette_f
+
+
+!-------------------------------------------------------------------------
+! Function: h5imis_palette_f
+!
+! Purpose: Inquires if a dataset is a palette
+!
+! Return: true, false, fail
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ INTEGER FUNCTION h5imis_palette_f(loc_id,&
+ dset_name)
+
+ IMPLICIT NONE
+
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5imis_palette_c(loc_id,namelen,dset_name) &
+ BIND(C,NAME='h5imis_palette_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ END FUNCTION h5imis_palette_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ errcode = h5imis_palette_c(loc_id,namelen,dset_name)
+ h5imis_palette_f = errcode
+
+ END FUNCTION h5imis_palette_f
+
+END MODULE H5IM
+
+
+
+
+
diff --git a/hl/fortran/src/H5IMff.f90 b/hl/fortran/src/H5IMff.f90
deleted file mode 100644
index 50c6d8b..0000000
--- a/hl/fortran/src/H5IMff.f90
+++ /dev/null
@@ -1,783 +0,0 @@
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!
-! This file contains FORTRAN90 interfaces for H5IM functions
-!
-
-module h5im
-use h5fortran_types
-use hdf5
-contains
-
-
-!-------------------------------------------------------------------------
-! Function: h5immake_image_8bit_f
-!
-! Purpose: Creates and writes an image an 8 bit image
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5immake_image_8bit_f(loc_id,&
- dset_name,&
- width,&
- height,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5immake_image_8bit_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) :: width ! width of image
- integer(hsize_t), intent(in) :: height ! height of image
- integer, intent(in), dimension(*) :: buf ! buffer
- integer :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- interface
- integer function h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_IMAGE_8BIT_C'::h5immake_image_8bit_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in) :: width ! width of image
- integer(hsize_t), intent(in) :: height ! height of image
- integer , intent(in), dimension(*) :: buf ! buffer
- end function h5immake_image_8bit_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf)
-
-end subroutine h5immake_image_8bit_f
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5imread_image_f
-!
-! Purpose: Reads image data from disk.
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-
-subroutine h5imread_image_f(loc_id,&
- dset_name,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imread_image_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), dimension(*) :: buf ! buffer
- integer :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- interface
- integer function h5imread_image_c(loc_id,namelen,dset_name,buf)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMREAD_IMAGE_C'::h5imread_image_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(inout), dimension(*) :: buf ! buffer
- end function h5imread_image_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imread_image_c(loc_id,namelen,dset_name,buf)
-
-end subroutine h5imread_image_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5immake_image_24bit_f
-!
-! Purpose: Creates and writes an image a 24 bit image
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5immake_image_24bit_f(loc_id,&
- dset_name,&
- width,&
- height,&
- il,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5immake_image_24bit_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) :: width ! width of image
- integer(hsize_t), intent(in) :: height ! height of image
- character(len=*), intent(in) :: il ! interlace
- integer, intent(in), dimension(*) :: buf ! buffer
- integer :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
-
- interface
- integer function h5immake_image_24bit_c(loc_id,namelen,dset_name,ilen,il,width,height,buf)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_IMAGE_24BIT_C'::h5immake_image_24bit_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: il
- 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) :: width ! width of image
- integer(hsize_t), intent(in) :: height ! height of image
- character(len=*), intent(in) :: il ! interlace
- integer, intent(in), dimension(*) :: buf ! buffer
- integer(size_t) :: namelen ! length of name buffer
- integer(size_t) :: ilen ! name length
-
- end function h5immake_image_24bit_c
- end interface
-
- namelen = len(dset_name)
- ilen = len(il)
- errcode = h5immake_image_24bit_c(loc_id,namelen,dset_name,ilen,il,width,height,buf)
-
-end subroutine h5immake_image_24bit_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5imget_image_info_f
-!
-! Purpose: Gets information about an image dataset (dimensions, interlace mode
-! and number of associated palettes).
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5imget_image_info_f(loc_id,&
- dset_name,&
- width,&
- height,&
- planes,&
- interlace,&
- npals,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imget_image_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(inout) :: width ! width of image
- integer(hsize_t), intent(inout) :: height ! height of image
- integer(hsize_t), intent(inout) :: planes ! color planes
- integer(hsize_t), intent(inout) :: npals ! palettes
- character(len=*), intent(inout) :: interlace ! interlace
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
-
- interface
- integer function h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ilen,interlace)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_IMAGE_INFO_C'::h5imget_image_info_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: interlace
- 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) :: width ! width of image
- integer(hsize_t), intent(inout) :: height ! height of image
- integer(hsize_t), intent(inout) :: planes ! color planes
- integer(hsize_t), intent(inout) :: npals ! palettes
- character(len=*), intent(inout) :: interlace ! interlace
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
- end function h5imget_image_info_c
- end interface
-
- namelen = len(dset_name)
- ilen = len(interlace)
- errcode = h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ilen,interlace)
-
-end subroutine h5imget_image_info_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5imis_image_f
-!
-! Purpose: Inquires if a dataset is an image
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-integer function h5imis_image_f(loc_id,&
- dset_name)
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imis_image_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(size_t) :: namelen ! name length
-
- interface
- integer function h5imis_image_c(loc_id,namelen,dset_name)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMIS_IMAGE_C'::h5imis_image_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- end function h5imis_image_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imis_image_c(loc_id,namelen,dset_name)
- h5imis_image_f = errcode
-
-end function h5imis_image_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5immake_palette_f
-!
-! Purpose: Creates and writes a palette
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5immake_palette_f(loc_id,&
- dset_name,&
- pal_dims,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5immake_palette_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), dimension(*) :: pal_dims ! dimensions
- integer, intent(in), dimension(*) :: buf ! buffer
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
-
- interface
- integer function h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_PALETTE_C'::h5immake_palette_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer(hsize_t), intent(in), dimension(*) :: pal_dims ! dimensions
- integer, intent(in), dimension(*) :: buf ! buffer
- end function h5immake_palette_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf)
-
-end subroutine h5immake_palette_f
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5imlink_palette_f
-!
-! Purpose: This function attaches a palette to an existing image dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5imlink_palette_f(loc_id,&
- dset_name,&
- pal_name,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imlink_palette_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) :: pal_name ! palette name
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
-
- interface
- integer function h5imlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMLINK_PALETTE_C'::h5imlink_palette_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: pal_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) :: pal_name ! palette name
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
- end function h5imlink_palette_c
- end interface
-
- namelen = len(dset_name)
- ilen = len(pal_name)
- errcode = h5imlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
-
-end subroutine h5imlink_palette_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5imunlink_palette_f
-!
-! Purpose: This function dettaches a palette to an existing image dataset
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5imunlink_palette_f(loc_id,&
- dset_name,&
- pal_name,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imunlink_palette_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) :: pal_name ! palette name
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
-
- interface
- integer function h5imunlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMUNLINK_PALETTE_C'::h5imunlink_palette_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- !DEC$ATTRIBUTES reference :: pal_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) :: pal_name ! palette name
- integer(size_t) :: namelen ! name length
- integer(size_t) :: ilen ! name length
- end function h5imunlink_palette_c
- end interface
-
- namelen = len(dset_name)
- ilen = len(pal_name)
- errcode = h5imunlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
-
-end subroutine h5imunlink_palette_f
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5imget_npalettes_f
-!
-! Purpose: Gets the number of palettes associated to an image
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 05, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5imget_npalettes_f(loc_id,&
- dset_name,&
- npals,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imget_npalettes_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(inout) :: npals ! palettes
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
-
- interface
- integer function h5imget_npalettes_c(loc_id,namelen,dset_name,npals)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_NPALETTES_C'::h5imget_npalettes_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) :: npals ! palettes
- integer(size_t) :: namelen ! name length
- end function h5imget_npalettes_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imget_npalettes_c(loc_id,namelen,dset_name,npals)
-
-end subroutine h5imget_npalettes_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5imget_palette_info_f
-!
-! Purpose: Get palette information
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-subroutine h5imget_palette_info_f(loc_id,&
- dset_name,&
- pal_number,&
- dims,&
- errcode )
-
- implicit none
-
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imget_palette_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, intent(in) :: pal_number ! palette number
- integer(hsize_t), dimension(*), intent(inout) :: dims ! dimensions
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
-
- interface
- integer function h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_PALETTE_INFO_C'::h5imget_palette_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, intent(in) :: pal_number ! palette number
- integer(hsize_t), dimension(*), intent(inout) :: dims ! dimensions
- integer(size_t) :: namelen ! name length
- end function h5imget_palette_info_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims)
-
-end subroutine h5imget_palette_info_f
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5imget_palette_f
-!
-! Purpose: Reads palette
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-
-subroutine h5imget_palette_f(loc_id,&
- dset_name,&
- pal_number,&
- buf,&
- errcode )
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imget_palette_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(in) :: pal_number ! palette number
- integer, intent(inout), dimension(*) :: buf ! buffer
- integer :: errcode ! error code
- integer(size_t) :: namelen ! name length
-
- interface
- integer function h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_PALETTE_C'::h5imget_palette_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- integer, intent(in) :: pal_number ! palette number
- integer, intent(inout), dimension(*) :: buf ! buffer
- end function h5imget_palette_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf)
-
-end subroutine h5imget_palette_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5imis_palette_f
-!
-! Purpose: Inquires if a dataset is a palette
-!
-! Return: true, false, fail
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-integer function h5imis_palette_f(loc_id,&
- dset_name)
-
- implicit none
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5imis_palette_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(size_t) :: namelen ! name length
-
- interface
- integer function h5imis_palette_c(loc_id,namelen,dset_name)
- use h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMIS_PALETTE_C'::h5imis_palette_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: dset_name
- integer(hid_t), intent(in) :: loc_id ! file or group identifier
- integer(size_t) :: namelen ! length of name buffer
- character(len=*), intent(in) :: dset_name ! name of the dataset
- end function h5imis_palette_c
- end interface
-
- namelen = len(dset_name)
- errcode = h5imis_palette_c(loc_id,namelen,dset_name)
- h5imis_palette_f = errcode
-
-end function h5imis_palette_f
-
-
-! end
-!
-end module H5IM
-
-
-
-
-
diff --git a/hl/fortran/src/H5LTf90proto.h b/hl/fortran/src/H5LTf90proto.h
index 532d9d8..20d043e 100644
--- a/hl/fortran/src/H5LTf90proto.h
+++ b/hl/fortran/src/H5LTf90proto.h
@@ -30,219 +30,49 @@ H5_FCDLL void HD5packFstring (char *src, char *dest, size_t len);
/*
* Functions from H5DSfc.c
*/
-
-#define nh5dsset_scale_c H5_FC_FUNC_(h5dsset_scale_c, H5DSSET_SCALE_C)
-#define nh5dsattach_scale_c H5_FC_FUNC_(h5dsattach_scale_c, H5DSATTACH_SCALE_C)
-#define nh5dsdetach_scale_c H5_FC_FUNC_(h5dsdetach_scale_c, H5DSDETACH_SCALE_C)
-#define nh5dsis_attached_c H5_FC_FUNC_(h5dsis_attached_c, H5DSIS_ATTACHED_C)
-#define nh5dsis_scale_c H5_FC_FUNC_(h5dsis_scale_c, H5DSIS_SCALE_C)
-#define nh5dsset_label_c H5_FC_FUNC_(h5dsset_label_c, H5DSSET_LABEL_C)
-#define nh5dsget_label_c H5_FC_FUNC_(h5dsget_label_c, H5DSGET_LABEL_C)
-#define nh5dsget_scale_name_c H5_FC_FUNC_(h5dsget_scale_name_c,H5DSGET_SCALE_NAME_C)
-#define nh5dsget_num_scales_c H5_FC_FUNC_(h5dsget_num_scales_c,H5DSGET_NUM_SCALES_C)
-
-
-/*
- * Functions from H5LTfc.c
- */
-#define nh5ltmake_dataset_c H5_FC_FUNC_(h5ltmake_dataset_c, H5LTMAKE_DATASET_C)
-#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)
-
-#define nh5ltset_attribute_int_c H5_FC_FUNC_(h5ltset_attribute_int_c, H5LTSET_ATTRIBUTE_INT_C)
-#define nh5ltset_attribute_float_c H5_FC_FUNC_(h5ltset_attribute_float_c, H5LTSET_ATTRIBUTE_FLOAT_C)
-#define nh5ltset_attribute_double_c H5_FC_FUNC_(h5ltset_attribute_double_c, H5LTSET_ATTRIBUTE_DOUBLE_C)
-#define nh5ltset_attribute_string_c H5_FC_FUNC_(h5ltset_attribute_string_c, H5LTSET_ATTRIBUTE_STRING_C)
-
-#define nh5ltget_attribute_int_c H5_FC_FUNC_(h5ltget_attribute_int_c, H5LTGET_ATTRIBUTE_INT_C)
-#define nh5ltget_attribute_float_c H5_FC_FUNC_(h5ltget_attribute_float_c, H5LTGET_ATTRIBUTE_FLOAT_C)
-#define nh5ltget_attribute_double_c H5_FC_FUNC_(h5ltget_attribute_double_c, H5LTGET_ATTRIBUTE_DOUBLE_C)
-#define nh5ltget_attribute_string_c H5_FC_FUNC_(h5ltget_attribute_string_c, H5LTGET_ATTRIBUTE_STRING_C)
-
-#define nh5ltget_dataset_ndims_c H5_FC_FUNC_(h5ltget_dataset_ndims_c, H5LTGET_DATASET_NDIMS_C)
-#define nh5ltfind_dataset_c H5_FC_FUNC_(h5ltfind_dataset_c, H5LTFIND_DATASET_C)
-#define nh5ltget_dataset_info_c H5_FC_FUNC_(h5ltget_dataset_info_c, H5LTGET_DATASET_INFO_C)
-
-#define nh5ltget_attribute_ndims_c H5_FC_FUNC_(h5ltget_attribute_ndims_c, H5LTGET_ATTRIBUTE_NDIMS_C)
-#define nh5ltget_attribute_info_c H5_FC_FUNC_(h5ltget_attribute_info_c, H5LTGET_ATTRIBUTE_INFO_C)
-#define nh5ltpath_valid_c H5_FC_FUNC_(h5ltpath_valid_c, H5LTPATH_VALID_C)
-
-/*-------------------------------------------------------------------------
-* Image
-*-------------------------------------------------------------------------
-*/
-#define nh5immake_image_8bit_c H5_FC_FUNC_(h5immake_image_8bit_c, H5IMMAKE_IMAGE_8BIT_C)
-#define nh5immake_image_24bit_c H5_FC_FUNC_(h5immake_image_24bit_c, H5IMMAKE_IMAGE_24BIT_C)
-#define nh5imread_image_c H5_FC_FUNC_(h5imread_image_c, H5IMREAD_IMAGE_C)
-#define nh5imget_image_info_c H5_FC_FUNC_(h5imget_image_info_c, H5IMGET_IMAGE_INFO_C)
-#define nh5imis_image_c H5_FC_FUNC_(h5imis_image_c, H5IMIS_IMAGE_C)
-#define nh5immake_palette_c H5_FC_FUNC_(h5immake_palette_c, H5IMMAKE_PALETTE_C)
-#define nh5imlink_palette_c H5_FC_FUNC_(h5imlink_palette_c, H5IMLINK_PALETTE_C)
-#define nh5imunlink_palette_c H5_FC_FUNC_(h5imunlink_palette_c, H5IMUNLINK_PALETTE_C)
-#define nh5imget_npalettes_c H5_FC_FUNC_(h5imget_npalettes_c, H5IMGET_NPALETTES_C)
-#define nh5imget_palette_info_c H5_FC_FUNC_(h5imget_palette_info_c, H5IMGET_PALETTE_INFO_C)
-#define nh5imget_palette_c H5_FC_FUNC_(h5imget_palette_c, H5IMGET_PALETTE_C)
-#define nh5imis_palette_c H5_FC_FUNC_(h5imis_palette_c, H5IMIS_PALETTE_C)
-
-/*-------------------------------------------------------------------------
-* Table
-*-------------------------------------------------------------------------
-*/
-#define nh5tbmake_table_c H5_FC_FUNC_(h5tbmake_table_c, H5TBMAKE_TABLE_C)
-#define nh5tbwrite_field_name_c H5_FC_FUNC_(h5tbwrite_field_name_c, H5TBWRITE_FIELD_NAME_C)
-#define nh5tbwrite_field_name_int_c H5_FC_FUNC_(h5tbwrite_field_name_int_c, H5TBWRITE_FIELD_NAME_INT_C)
-#define nh5tbwrite_field_name_fl_c H5_FC_FUNC_(h5tbwrite_field_name_fl_c, H5TBWRITE_FIELD_NAME_FL_C)
-#define nh5tbwrite_field_name_dl_c H5_FC_FUNC_(h5tbwrite_field_name_dl_c, H5TBWRITE_FIELD_NAME_DL_C)
-#define nh5tbwrite_field_name_st_c H5_FC_FUNC_(h5tbwrite_field_name_st_c, H5TBWRITE_FIELD_NAME_ST_C)
-#define nh5tbread_field_name_c H5_FC_FUNC_(h5tbread_field_name_c, H5TBREAD_FIELD_NAME_C)
-#define nh5tbread_field_name_int_c H5_FC_FUNC_(h5tbread_field_name_int_c, H5TBREAD_FIELD_NAME_INT_C)
-#define nh5tbread_field_name_fl_c H5_FC_FUNC_(h5tbread_field_name_fl_c, H5TBREAD_FIELD_NAME_FL_C)
-#define nh5tbread_field_name_dl_c H5_FC_FUNC_(h5tbread_field_name_dl_c, H5TBREAD_FIELD_NAME_DL_C)
-#define nh5tbread_field_name_st_c H5_FC_FUNC_(h5tbread_field_name_st_c, H5TBREAD_FIELD_NAME_ST_C)
-#define nh5tbwrite_field_index_c H5_FC_FUNC_(h5tbwrite_field_index_c, H5TBWRITE_FIELD_INDEX_C)
-#define nh5tbwrite_field_index_int_c H5_FC_FUNC_(h5tbwrite_field_index_int_c, H5TBWRITE_FIELD_INDEX_INT_C)
-#define nh5tbwrite_field_index_fl_c H5_FC_FUNC_(h5tbwrite_field_index_fl_c, H5TBWRITE_FIELD_INDEX_FL_C)
-#define nh5tbwrite_field_index_dl_c H5_FC_FUNC_(h5tbwrite_field_index_dl_c, H5TBWRITE_FIELD_INDEX_DL_C)
-#define nh5tbwrite_field_index_st_c H5_FC_FUNC_(h5tbwrite_field_index_st_c, H5TBWRITE_FIELD_INDEX_ST_C)
-#define nh5tbread_field_index_c H5_FC_FUNC_(h5tbread_field_index_c, H5TBREAD_FIELD_INDEX_C)
-#define nh5tbread_field_index_int_c H5_FC_FUNC_(h5tbread_field_index_int_c, H5TBREAD_FIELD_INDEX_INT_C)
-#define nh5tbread_field_index_fl_c H5_FC_FUNC_(h5tbread_field_index_fl_c, H5TBREAD_FIELD_INDEX_FL_C)
-#define nh5tbread_field_index_dl_c H5_FC_FUNC_(h5tbread_field_index_dl_c, H5TBREAD_FIELD_INDEX_DL_C)
-#define nh5tbread_field_index_st_c H5_FC_FUNC_(h5tbread_field_index_st_c, H5TBREAD_FIELD_INDEX_ST_C)
-#define nh5tbinsert_field_c H5_FC_FUNC_(h5tbinsert_field_c, H5TBINSERT_FIELD_C)
-#define nh5tbinsert_field_int_c H5_FC_FUNC_(h5tbinsert_field_int_c, H5TBINSERT_FIELD_INT_C)
-#define nh5tbinsert_field_fl_c H5_FC_FUNC_(h5tbinsert_field_fl_c, H5TBINSERT_FIELD_FL_C)
-#define nh5tbinsert_field_dl_c H5_FC_FUNC_(h5tbinsert_field_dl_c, H5TBINSERT_FIELD_DL_C)
-#define nh5tbinsert_field_st_c H5_FC_FUNC_(h5tbinsert_field_st_c, H5TBINSERT_FIELD_ST_C)
-#define nh5tbdelete_field_c H5_FC_FUNC_(h5tbdelete_field_c, H5TBDELETE_FIELD_C)
-#define nh5tbget_table_info_c H5_FC_FUNC_(h5tbget_table_info_c, H5TBGET_TABLE_INFO_C)
-#define nh5tbget_field_info_c H5_FC_FUNC_(h5tbget_field_info_c, H5TBGET_FIELD_INFO_C)
-
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen);
+h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
+h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
+h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *c_is_attached);
+h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *c_is_attached);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsis_scale_c(hid_t_f *did, int_f *is_scale);
+h5dsis_scale_c(hid_t_f *did, int_f *is_scale);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen);
+h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size);
+h5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsget_scale_name_c(hid_t_f *did, _fcd label, size_t_f *size);
+h5dsget_scale_name_c(hid_t_f *did, _fcd label, size_t_f *size);
HDF5_HL_F90CSTUBDLL
int_f
-nh5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales);
+h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales);
+/*
+ * Functions from H5LTfc.c
+ */
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_c (hid_t_f *loc_id,
+h5ltmake_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank,
@@ -252,909 +82,58 @@ nh5ltmake_dataset_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_int1_c (hid_t_f *loc_id,
- size_t_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_int2_c (hid_t_f *loc_id,
- size_t_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_int3_c (hid_t_f *loc_id,
- size_t_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_int4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_fl2_c (hid_t_f *loc_id,
- size_t_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_fl3_c (hid_t_f *loc_id,
- size_t_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_fl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_dl2_c (hid_t_f *loc_id,
- size_t_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_dl3_c (hid_t_f *loc_id,
- size_t_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_dl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_nint4_c (hid_t_f *loc_id,
- size_t_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_nint5_c (hid_t_f *loc_id,
- size_t_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_nint6_c (hid_t_f *loc_id,
- size_t_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_nint7_c (hid_t_f *loc_id,
- size_t_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_nfl1_c (hid_t_f *loc_id,
- size_t_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_nfl2_c (hid_t_f *loc_id,
- size_t_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_nfl3_c (hid_t_f *loc_id,
- size_t_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_nfl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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_nfl6_c (hid_t_f *loc_id,
- size_t_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_nfl7_c (hid_t_f *loc_id,
- size_t_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_ndl1_c (hid_t_f *loc_id,
- size_t_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_ndl2_c (hid_t_f *loc_id,
- size_t_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_ndl3_c (hid_t_f *loc_id,
- size_t_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_ndl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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_ndl7_c (hid_t_f *loc_id,
- size_t_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,
+h5ltread_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_int1_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_int2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_int3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_int4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_fl2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_fl3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_fl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_dl2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_dl3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_dl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nint2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nint3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nint4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nfl2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nfl3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_nfl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_ndl2_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_ndl3_c (hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltread_dataset_ndl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltset_attribute_float_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltset_attribute_double_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *size,
- void *buf);
+ void *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltset_attribute_string_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *buflen,
- void *buf);
+h5ltset_attribute_c(hid_t_f *loc_id,
+ size_t_f *namelen,
+ _fcd dsetname,
+ size_t_f *attrnamelen,
+ _fcd attrname,
+ size_t_f *size,
+ void *buf, char *dtype, size_t_f *sizeof_val);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_attribute_int_c(hid_t_f *loc_id,
+h5ltget_attribute_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
_fcd attrname,
- void *buf);
+ void *buf, char* dtype, size_t_f *sizeof_val);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_attribute_float_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- void *buf);
+h5ltget_attribute_string_c(hid_t_f *loc_id,
+ size_t_f *namelen,
+ _fcd dsetname,
+ size_t_f *attrnamelen,
+ _fcd attrname,
+ _fcd buf,
+ size_t_f *buf_size);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_attribute_double_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltget_attribute_string_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- _fcd buf,
- size_t_f *buf_size);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5ltget_dataset_ndims_c(hid_t_f *loc_id,
+h5ltget_dataset_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltfind_dataset_c(hid_t_f *loc_id,
+h5ltfind_dataset_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_dataset_info_c(hid_t_f *loc_id,
+h5ltget_dataset_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -1163,7 +142,7 @@ nh5ltget_dataset_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_attribute_ndims_c(hid_t_f *loc_id,
+h5ltget_attribute_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -1171,7 +150,7 @@ nh5ltget_attribute_ndims_c(hid_t_f *loc_id,
int_f *rank);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltget_attribute_info_c(hid_t_f *loc_id,
+h5ltget_attribute_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *attrnamelen,
@@ -1182,7 +161,7 @@ nh5ltget_attribute_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltmake_dataset_string_c (hid_t_f *loc_id,
+h5ltmake_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *buflen,
@@ -1190,14 +169,14 @@ nh5ltmake_dataset_string_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltread_dataset_string_c (hid_t_f *loc_id,
+h5ltread_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
char *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5ltpath_valid_c(hid_t_f *loc_id,
+h5ltpath_valid_c(hid_t_f *loc_id,
_fcd path,
size_t_f *pathlen,
int_f *check_object_valid_c);
@@ -1206,10 +185,9 @@ nh5ltpath_valid_c(hid_t_f *loc_id,
* Image
*-------------------------------------------------------------------------
*/
-
HDF5_HL_F90CSTUBDLL
int_f
-nh5immake_image_8bit_c (hid_t_f *loc_id,
+h5immake_image_8bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -1217,14 +195,14 @@ nh5immake_image_8bit_c (hid_t_f *loc_id,
int_f *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5imread_image_c (hid_t_f *loc_id,
+h5imread_image_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5immake_image_24bit_c (hid_t_f *loc_id,
+h5immake_image_24bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -1234,7 +212,7 @@ nh5immake_image_24bit_c (hid_t_f *loc_id,
void *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5imget_image_info_c(hid_t_f *loc_id,
+h5imget_image_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -1247,14 +225,14 @@ nh5imget_image_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imis_image_c(hid_t_f *loc_id,
+h5imis_image_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
HDF5_HL_F90CSTUBDLL
int_f
-nh5immake_palette_c (hid_t_f *loc_id,
+h5immake_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -1262,7 +240,7 @@ nh5immake_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imlink_palette_c (hid_t_f *loc_id,
+h5imlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -1270,7 +248,7 @@ nh5imlink_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imunlink_palette_c (hid_t_f *loc_id,
+h5imunlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -1278,7 +256,7 @@ nh5imunlink_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imget_npalettes_c(hid_t_f *loc_id,
+h5imget_npalettes_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *npals);
@@ -1286,7 +264,7 @@ nh5imget_npalettes_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imget_palette_info_c(hid_t_f *loc_id,
+h5imget_palette_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -1294,7 +272,7 @@ nh5imget_palette_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imget_palette_c(hid_t_f *loc_id,
+h5imget_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -1302,7 +280,7 @@ nh5imget_palette_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5imis_palette_c(hid_t_f *loc_id,
+h5imis_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
@@ -1315,7 +293,7 @@ nh5imis_palette_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbmake_table_c(size_t_f *namelen1,
+h5tbmake_table_c(size_t_f *namelen1,
_fcd name1,
hid_t_f *loc_id,
size_t_f *namelen,
@@ -1333,7 +311,7 @@ nh5tbmake_table_c(size_t_f *namelen1,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbwrite_field_name_c(hid_t_f *loc_id,
+h5tbwrite_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -1343,57 +321,11 @@ nh5tbwrite_field_name_c(hid_t_f *loc_id,
size_t_f *type_size,
void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_name_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_name_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_name_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_name_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbread_field_name_c(hid_t_f *loc_id,
+h5tbread_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -1403,57 +335,11 @@ nh5tbread_field_name_c(hid_t_f *loc_id,
size_t_f *type_size,
void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_name_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_name_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_name_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_name_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbwrite_field_index_c(hid_t_f *loc_id,
+h5tbwrite_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -1464,51 +350,7 @@ nh5tbwrite_field_index_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbwrite_field_index_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_index_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_index_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbwrite_field_index_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_index_c(hid_t_f *loc_id,
+h5tbread_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -1519,51 +361,7 @@ nh5tbread_field_index_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbread_field_index_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_index_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_index_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbread_field_index_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf);
-
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbinsert_field_c(hid_t_f *loc_id,
+h5tbinsert_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -1574,47 +372,7 @@ nh5tbinsert_field_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbinsert_field_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbinsert_field_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbinsert_field_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbinsert_field_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf);
-HDF5_HL_F90CSTUBDLL
-int_f
-nh5tbdelete_field_c(hid_t_f *loc_id,
+h5tbdelete_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -1623,7 +381,7 @@ nh5tbdelete_field_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbget_table_info_c(hid_t_f *loc_id,
+h5tbget_table_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
@@ -1631,7 +389,7 @@ nh5tbget_table_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-nh5tbget_field_info_c(hid_t_f *loc_id,
+h5tbget_field_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
diff --git a/hl/fortran/src/H5LTfc.c b/hl/fortran/src/H5LTfc.c
index 1e0a236..c955590 100644
--- a/hl/fortran/src/H5LTfc.c
+++ b/hl/fortran/src/H5LTfc.c
@@ -39,7 +39,7 @@
*/
int_f
-nh5ltmake_dataset_c (hid_t_f *loc_id,
+h5ltmake_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank,
@@ -89,468 +89,6 @@ done:
return ret_value;
}
-int_f
-nh5ltmake_dataset_int1_c (hid_t_f *loc_id,
- size_t_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_int2_c (hid_t_f *loc_id,
- size_t_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_int3_c (hid_t_f *loc_id,
- size_t_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_int4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_fl2_c (hid_t_f *loc_id,
- size_t_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_fl3_c (hid_t_f *loc_id,
- size_t_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_fl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_dl2_c (hid_t_f *loc_id,
- size_t_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_dl3_c (hid_t_f *loc_id,
- size_t_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_dl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_nint2_c (hid_t_f *loc_id,
- size_t_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_nint3_c (hid_t_f *loc_id,
- size_t_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_nint4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_nfl2_c (hid_t_f *loc_id,
- size_t_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_nfl3_c (hid_t_f *loc_id,
- size_t_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_nfl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_ndl2_c (hid_t_f *loc_id,
- size_t_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_ndl3_c (hid_t_f *loc_id,
- size_t_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_ndl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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
*
@@ -571,12 +109,11 @@ nh5ltmake_dataset_ndl7_c (hid_t_f *loc_id,
*/
int_f
-nh5ltread_dataset_c (hid_t_f *loc_id,
+h5ltread_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hid_t_f *type_id,
- void *buf,
- hsize_t_f *dims)
+ void *buf)
{
int ret_value = -1;
herr_t ret;
@@ -611,426 +148,6 @@ done:
return ret_value;
}
-int_f
-nh5ltread_dataset_int1_c (hid_t_f *loc_id,
- size_t_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_int2_c (hid_t_f *loc_id,
- size_t_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_int3_c (hid_t_f *loc_id,
- size_t_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_int4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_fl2_c (hid_t_f *loc_id,
- size_t_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_fl3_c (hid_t_f *loc_id,
- size_t_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_fl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_dl2_c (hid_t_f *loc_id,
- size_t_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_dl3_c (hid_t_f *loc_id,
- size_t_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_dl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_nint2_c (hid_t_f *loc_id,
- size_t_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_nint3_c (hid_t_f *loc_id,
- size_t_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_nint4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_nfl2_c (hid_t_f *loc_id,
- size_t_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_nfl3_c (hid_t_f *loc_id,
- size_t_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_nfl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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_ndl2_c (hid_t_f *loc_id,
- size_t_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_ndl3_c (hid_t_f *loc_id,
- size_t_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_ndl4_c (hid_t_f *loc_id,
- size_t_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,
- size_t_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,
- size_t_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,
- size_t_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
*
@@ -1051,7 +168,7 @@ nh5ltread_dataset_ndl7_c (hid_t_f *loc_id,
*/
int_f
-nh5ltmake_dataset_string_c (hid_t_f *loc_id,
+h5ltmake_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *buflen,
@@ -1116,7 +233,7 @@ done:
*/
int_f
-nh5ltread_dataset_string_c (hid_t_f *loc_id,
+h5ltread_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
char *buf)
@@ -1152,8 +269,6 @@ done:
return ret_value;
}
-
-
/*-------------------------------------------------------------------------
* Function: H5LTset_attribute_int_c
*
@@ -1174,19 +289,20 @@ done:
*/
int_f
-nh5ltset_attribute_int_c(hid_t_f *loc_id,
+h5ltset_attribute_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
_fcd attrname,
size_t_f *size,
- void *buf)
+ void *buf, char *dtype, size_t_f *sizeof_val)
{
int ret_value = -1;
herr_t ret;
hid_t c_loc_id;
char *c_name = NULL;
char *c_attrname = NULL;
+ char *c_buf = NULL;
size_t c_size;
/*
@@ -1206,17 +322,36 @@ nh5ltset_attribute_int_c(hid_t_f *loc_id,
c_loc_id = (hid_t)*loc_id;
c_size = (size_t)*size;
- if (sizeof(int_f) == sizeof(int))
- ret = H5LTset_attribute_int(c_loc_id,c_name,c_attrname,(const int *)buf,c_size);
- else if (sizeof(int_f) == sizeof(long))
- ret = H5LTset_attribute_long(c_loc_id,c_name,c_attrname,(const long *)buf,c_size);
- else if (sizeof(int_f) == sizeof(long long))
- ret = H5LTset_attribute_long_long(c_loc_id,c_name,c_attrname,(const long long *)buf,c_size);
- else
- goto done;
-
+ if( HDstrncmp(dtype,"I",1) == 0 ) {
+ if ((size_t)*sizeof_val == sizeof(int))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_INT, (const int *)buf);
+ else if ((size_t)*sizeof_val == sizeof(long))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_LONG, (const long *)buf);
+ else if ((size_t)*sizeof_val == sizeof(long long))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_LLONG, (const long long *)buf);
+ else
+ goto done;
+ } else if ( HDstrncmp(dtype,"R",1) == 0 ) {
+ if((size_t)*sizeof_val == sizeof(float))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_FLOAT, (const float *)buf);
+ else if((size_t)*sizeof_val == sizeof(double))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_DOUBLE, (const double *)buf);
+#if H5_SIZEOF_LONG_DOUBLE !=0
+ else if((size_t)*sizeof_val == sizeof(long double))
+ ret = H5LT_set_attribute_numerical(c_loc_id,c_name,c_attrname, c_size, H5T_NATIVE_LDOUBLE, (const long double *)buf);
+#endif
+ else
+ goto done;
+ } else if ( HDstrncmp(dtype,"C",1) == 0 ) {
+
+ c_buf = (char *)HD5f2cstring((_fcd)buf, c_size);
+ if (c_buf == NULL)
+ goto done;
+
+ ret = H5LTset_attribute_string(c_loc_id,c_name,c_attrname,c_buf);
+ }
if (ret < 0)
- goto done;
+ goto done;
ret_value = 0;
@@ -1225,217 +360,6 @@ done:
HDfree(c_name);
if(c_attrname!=NULL)
HDfree(c_attrname);
-
- return ret_value;
-}
-
-/*-------------------------------------------------------------------------
-* Function: H5LTset_attribute_float_c
-*
-* Purpose: Call H5LTset_attribute_float
-*
-* Return: Success: 0, Failure: -1
-*
-* Programmer: pvn@ncsa.uiuc.edu
-*
-* Date: October 05, 2004
-*
-* Comments:
-*
-* Modifications:
-*
-*
-*-------------------------------------------------------------------------
-*/
-
-int_f
-nh5ltset_attribute_float_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *size,
- void *buf)
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_loc_id;
- char *c_name = NULL;
- char *c_attrname = NULL;
- size_t c_size;
-
- /*
- * convert FORTRAN name to C name
- */
- c_name = (char *)HD5f2cstring(dsetname, (size_t)*namelen);
- if (c_name == NULL)
- goto done;
-
- c_attrname = (char *)HD5f2cstring(attrname, (size_t)*attrnamelen);
- if (c_attrname == NULL)
- goto done;
-
- /*
- * Call H5LTset_attribute_float function.
- */
- c_loc_id = (hid_t)*loc_id;
- c_size = (size_t)*size;
-
- ret = H5LTset_attribute_float(c_loc_id,c_name,c_attrname,(float *)buf,c_size);
-
- if (ret < 0)
- goto done;
-
- ret_value = 0;
-
-done:
- if(c_name!=NULL)
- HDfree(c_name);
- if(c_attrname!=NULL)
- HDfree(c_attrname);
-
- return ret_value;
-}
-
-
-/*-------------------------------------------------------------------------
-* Function: H5LTset_attribute_double_c
-*
-* Purpose: Call H5LTset_attribute_double
-*
-* Return: Success: 0, Failure: -1
-*
-* Programmer: pvn@ncsa.uiuc.edu
-*
-* Date: October 05, 2004
-*
-* Comments:
-*
-* Modifications:
-*
-*
-*-------------------------------------------------------------------------
-*/
-
-int_f
-nh5ltset_attribute_double_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *size,
- void *buf)
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_loc_id;
- char *c_name = NULL;
- char *c_attrname = NULL;
- size_t c_size;
-
- /*
- * Convert FORTRAN name to C name
- */
- c_name = (char *)HD5f2cstring(dsetname, (size_t)*namelen);
- if (c_name == NULL)
- goto done;
-
- c_attrname = (char *)HD5f2cstring(attrname, (size_t)*attrnamelen);
- if (c_attrname == NULL)
- goto done;
-
- /*
- * Call H5LTset_attribute_double function.
- */
- c_loc_id = (hid_t)*loc_id;
- c_size = (size_t)*size;
-
- ret = H5LTset_attribute_double(c_loc_id,c_name,c_attrname,(double *)buf,c_size);
-
- if (ret < 0)
- goto done;
-
- ret_value = 0;
-
-
-done:
- if(c_name!=NULL)
- HDfree(c_name);
- if(c_attrname!=NULL)
- HDfree(c_attrname);
-
- return ret_value;
-}
-
-/*-------------------------------------------------------------------------
-* Function: H5LTset_attribute_string_c
-*
-* Purpose: Call H5LTset_attribute_string
-*
-* Return: Success: 0, Failure: -1
-*
-* Programmer: pvn@ncsa.uiuc.edu
-*
-* Date: October 05, 2004
-*
-* Comments:
-*
-* Modifications:
-*
-*
-*-------------------------------------------------------------------------
-*/
-
-int_f
-nh5ltset_attribute_string_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- size_t_f *buflen,
- void *buf)
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_loc_id;
- char *c_name = NULL;
- char *c_attrname = NULL;
- char *c_buf = NULL;
-
- /*
- * convert FORTRAN name to C name
- */
- c_name = (char *)HD5f2cstring(dsetname, (size_t)*namelen);
- if (c_name == NULL)
- goto done;
-
- c_attrname = (char *)HD5f2cstring(attrname, (size_t)*attrnamelen);
- if (c_attrname == NULL)
- goto done;
-
- c_buf = (char *)HD5f2cstring((_fcd)buf, (size_t)*buflen);
- if (c_buf == NULL)
- goto done;
-
-
- /*
- * call H5LTset_attribute_string function.
- */
- c_loc_id = (hid_t)*loc_id;
-
- ret = H5LTset_attribute_string(c_loc_id,c_name,c_attrname,c_buf);
-
- if (ret < 0)
- goto done;
-
- ret_value = 0;
-
-
-done:
- if(c_name!=NULL)
- HDfree(c_name);
- if(c_attrname!=NULL)
- HDfree(c_attrname);
if(c_buf!=NULL)
HDfree(c_buf);
@@ -1443,7 +367,7 @@ done:
}
/*-------------------------------------------------------------------------
-* Function: H5LTget_attribute_int_c
+* Function: H5LTget_attribute_c
*
* Purpose: Call H5LTget_attribute_int
*
@@ -1462,12 +386,12 @@ done:
*/
int_f
-nh5ltget_attribute_int_c(hid_t_f *loc_id,
+h5ltget_attribute_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
_fcd attrname,
- void *buf)
+ void *buf, char *dtype, size_t_f *sizeof_val)
{
int ret_value = -1;
herr_t ret;
@@ -1491,153 +415,33 @@ nh5ltget_attribute_int_c(hid_t_f *loc_id,
*/
c_loc_id = (hid_t)*loc_id;
- if(sizeof(int_f) == sizeof(int))
- ret = H5LTget_attribute_int(c_loc_id,c_name,c_attrname,(int *)buf);
- else if (sizeof(int_f) == sizeof(long))
- ret = H5LTget_attribute_long(c_loc_id,c_name,c_attrname,(long *)buf);
- else if (sizeof(int_f) == sizeof(long long))
- ret = H5LTget_attribute_long_long(c_loc_id,c_name,c_attrname,(long long *)buf);
- else
- goto done;
-
- if (ret < 0)
+ if( HDstrncmp(dtype,"I",1) == 0) {
+ if((size_t)*sizeof_val == sizeof(int))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_INT,buf);
+ else if ((size_t)*sizeof_val == sizeof(long))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_LONG,buf);
+ else if ((size_t)*sizeof_val == sizeof(long long))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_LLONG,buf);
+ else
+ goto done;
+ } else if ( HDstrncmp(dtype,"R",1) == 0 ) {
+ if((size_t)*sizeof_val == sizeof(float))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_FLOAT,buf);
+ else if((size_t)*sizeof_val == sizeof(double))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_DOUBLE,buf);
+#if H5_SIZEOF_LONG_DOUBLE !=0
+ else if((size_t)*sizeof_val == sizeof(long double))
+ ret = H5LTget_attribute(c_loc_id,c_name,c_attrname,H5T_NATIVE_LDOUBLE,buf);
+#endif
+ else
goto done;
-
- ret_value = 0;
-
-done:
- if(c_name!=NULL)
- HDfree(c_name);
- if(c_attrname!=NULL)
- HDfree(c_attrname);
-
-
- return ret_value;
-}
-
-
-/*-------------------------------------------------------------------------
-* Function: H5LTget_attribute_float_c
-*
-* Purpose: Call H5LTget_attribute_float
-*
-* Return: Success: 0, Failure: -1
-*
-* Programmer: pvn@ncsa.uiuc.edu
-*
-* Date: October 05, 2004
-*
-* Comments:
-*
-* Modifications:
-*
-*
-*-------------------------------------------------------------------------
-*/
-
-int_f
-nh5ltget_attribute_float_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- void *buf)
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_loc_id;
- char *c_name = NULL;
- char *c_attrname = NULL;
-
- /*
- * convert FORTRAN name to C name
- */
- c_name = (char *)HD5f2cstring(dsetname, (size_t)*namelen);
- if (c_name == NULL)
- goto done;
-
- c_attrname = (char *)HD5f2cstring(attrname, (size_t)*attrnamelen);
- if (c_attrname == NULL)
- goto done;
-
- /*
- * call H5LTget_attribute_int function.
- */
- c_loc_id = (hid_t)*loc_id;
-
- ret = H5LTget_attribute_float(c_loc_id,c_name,c_attrname,(float*)buf);
-
- if (ret < 0)
- goto done;
-
- ret_value = 0;
-
-done:
- if(c_name!=NULL)
- HDfree(c_name);
- if(c_attrname!=NULL)
- HDfree(c_attrname);
-
- return ret_value;
-}
-
-/*-------------------------------------------------------------------------
-* Function: H5LTget_attribute_double_c
-*
-* Purpose: Call H5LTget_attribute_double
-*
-* Return: Success: 0, Failure: -1
-*
-* Programmer: pvn@ncsa.uiuc.edu
-*
-* Date: October 05, 2004
-*
-* Comments:
-*
-* Modifications:
-*
-*
-*-------------------------------------------------------------------------
-*/
-
-int_f
-nh5ltget_attribute_double_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd dsetname,
- size_t_f *attrnamelen,
- _fcd attrname,
- void *buf)
-{
- int ret_value = -1;
- herr_t ret;
- hid_t c_loc_id;
- char *c_name = NULL;
- char *c_attrname = NULL;
-
- /*
- * convert FORTRAN name to C name
- */
- c_name = (char *)HD5f2cstring(dsetname, (size_t)*namelen);
- if (c_name == NULL)
- goto done;
-
- c_attrname = (char *)HD5f2cstring(attrname, (size_t)*attrnamelen);
- if (c_attrname == NULL)
- goto done;
-
- /*
- * call H5LTget_attribute_int function.
- */
- c_loc_id = (hid_t)*loc_id;
-
- ret = H5LTget_attribute_double(c_loc_id,c_name,c_attrname,(double *)buf);
-
+ }
+
if (ret < 0)
goto done;
ret_value = 0;
-
done:
if(c_name!=NULL)
HDfree(c_name);
@@ -1667,7 +471,7 @@ done:
*/
int_f
-nh5ltget_attribute_string_c(hid_t_f *loc_id,
+h5ltget_attribute_string_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -1742,7 +546,7 @@ done:
*/
int_f
-nh5ltget_dataset_ndims_c(hid_t_f *loc_id,
+h5ltget_dataset_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank)
@@ -1802,7 +606,7 @@ done:
*/
int_f
-nh5ltfind_dataset_c(hid_t_f *loc_id,
+h5ltfind_dataset_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name)
{
@@ -1850,7 +654,7 @@ nh5ltfind_dataset_c(hid_t_f *loc_id,
*/
int_f
-nh5ltget_dataset_info_c(hid_t_f *loc_id,
+h5ltget_dataset_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -1929,7 +733,7 @@ done:
*/
int_f
-nh5ltget_attribute_ndims_c(hid_t_f *loc_id,
+h5ltget_attribute_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -1998,7 +802,7 @@ done:
*/
int_f
-nh5ltget_attribute_info_c(hid_t_f *loc_id,
+h5ltget_attribute_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *attrnamelen,
@@ -2087,7 +891,7 @@ done:
*/
int_f
-nh5ltpath_valid_c(hid_t_f *loc_id,
+h5ltpath_valid_c(hid_t_f *loc_id,
_fcd path,
size_t_f *pathlen,
int_f *check_object_valid_c)
diff --git a/hl/fortran/src/H5LTff.F90 b/hl/fortran/src/H5LTff.F90
new file mode 100644
index 0000000..ffc7ab5
--- /dev/null
+++ b/hl/fortran/src/H5LTff.F90
@@ -0,0 +1,1912 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+!
+! This file contains FORTRAN interfaces for H5LT functions
+!
+! NOTES
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new function here then you MUST add the function name to the
+! Windows dll file 'hdf5_hl_fortrandll.def.in' in the hl/fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+
+#include <H5config_f.inc>
+
+MODULE H5LT_CONST
+ USE, INTRINSIC :: ISO_C_BINDING
+ 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_ptr
+ 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_ptr
+ 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 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
+ INTEGER FUNCTION h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) &
+ BIND(C,NAME='h5ltmake_dataset_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER, INTENT(in) :: rank ! rank
+ INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer buf
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ END FUNCTION h5ltmake_dataset_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,buf) &
+ BIND(C,NAME='h5ltread_dataset_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ END FUNCTION h5ltread_dataset_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf,dtype, SizeOf_buf) &
+ BIND(C,NAME='h5ltset_attribute_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: attrlen ! length of attr name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: attr_name ! name of the attribute
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dtype ! flag indicating the datatype of the
+ ! the buffer:
+ ! R=Real, D=DOUBLE, I=Interger, C=Character
+ INTEGER(size_t) :: SizeOf_buf ! Sizeof the buf datatype
+ END FUNCTION h5ltset_attribute_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,dtype, SizeOf_buf) &
+ BIND(C,NAME='h5ltget_attribute_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: attrlen ! length of attr name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: attr_name ! name of the attribute
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dtype ! flag indicating the datatype of the
+ ! the buffer:
+ ! R=Real, D=DOUBLE, I=Interger
+ INTEGER(size_t) :: SizeOf_buf ! Sizeof the buf datatype
+ END FUNCTION h5ltget_attribute_c
+ END INTERFACE
+
+CONTAINS
+ !-------------------------------------------------------------------------
+ ! Make/Read dataset functions
+ !-------------------------------------------------------------------------
+
+ !-------------------------------------------------------------------------
+ ! Function(s): h5ltmake_dataset_f_ptr
+ !
+ ! Purpose: Creates and writes a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: APR 29, 2015
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_ptr(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ TYPE(C_PTR) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
+
+ END SUBROUTINE h5ltmake_dataset_f_ptr
+
+ !-------------------------------------------------------------------------
+ ! Function(s): h5ltmake_dataset_f_int(1-7)
+ !
+ ! 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: Changed to passing C_PTR.
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltmake_dataset_f_int1(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER, INTENT(in), DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int1
+
+ SUBROUTINE h5ltmake_dataset_f_int2(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int2
+
+ SUBROUTINE h5ltmake_dataset_f_int3(loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int3
+
+ SUBROUTINE h5ltmake_dataset_f_int4(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int4
+
+ SUBROUTINE h5ltmake_dataset_f_int5(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int5
+
+ SUBROUTINE h5ltmake_dataset_f_int6(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int6
+
+ SUBROUTINE h5ltmake_dataset_f_int7(loc_id, dset_name, rank, dims, &
+ type_id, buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf ! data buffer
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_f_int7
+
+
+ !-------------------------------------------------------------------------
+ ! Function(s): h5ltread_dataset_f_ptr
+ !
+ ! Purpose: Read a dataset of a type TYPE_ID
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: Apr 29, 2015
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltread_dataset_f_ptr(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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
+ TYPE(C_PTR) :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id, buf)
+
+ END SUBROUTINE h5ltread_dataset_f_ptr
+
+ !-------------------------------------------------------------------------
+ ! Function(s): h5ltread_dataset_f_int(1-7)
+ !
+ ! 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
+ 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 buffer buf
+ INTEGER, INTENT(inout), DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ 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
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_f_int2
+
+ SUBROUTINE h5ltread_dataset_f_int3(loc_id,&
+ dset_name,&
+ type_id,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_f_int3
+
+ SUBROUTINE h5ltread_dataset_f_int4(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_f_int4
+
+ SUBROUTINE h5ltread_dataset_f_int5(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ 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
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_f_int6
+
+ SUBROUTINE h5ltread_dataset_f_int7(loc_id, dset_name, type_id, buf, &
+ dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_f_int7
+
+
+ !-------------------------------------------------------------------------
+ ! 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
+ 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 buffer buf
+ INTEGER, INTENT(in), DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,h5t_native_integer,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_1
+
+ SUBROUTINE h5ltmake_dataset_int_f_2 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_2
+
+ SUBROUTINE h5ltmake_dataset_int_f_3 (loc_id,&
+ dset_name,&
+ rank,&
+ dims,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_3
+
+ SUBROUTINE h5ltmake_dataset_int_f_4(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_4
+
+ SUBROUTINE h5ltmake_dataset_int_f_5(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_5
+
+ SUBROUTINE h5ltmake_dataset_int_f_6(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_6
+
+ SUBROUTINE h5ltmake_dataset_int_f_7(loc_id, dset_name, rank, dims, &
+ buf, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(in), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltmake_dataset_int_f_7
+
+ !-------------------------------------------------------------------------
+ ! Function(s): h5ltread_dataset_int_f_(1-7)
+ !
+ ! 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
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_1
+
+ SUBROUTINE h5ltread_dataset_int_f_2(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_2
+
+ SUBROUTINE h5ltread_dataset_int_f_3(loc_id,&
+ dset_name,&
+ buf,&
+ dims,&
+ errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_3
+
+ SUBROUTINE h5ltread_dataset_int_f_4(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_4
+
+ SUBROUTINE h5ltread_dataset_int_f_5(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_5
+
+ SUBROUTINE h5ltread_dataset_int_f_6(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_f_6
+
+ SUBROUTINE h5ltread_dataset_int_f_7(loc_id, dset_name, buf, dims, errcode )
+
+ IMPLICIT NONE
+ 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 buffer buf
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER, INTENT(inout), &
+ DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1,1,1,1,1,1,1))
+
+ namelen = LEN(dset_name)
+ errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,f_ptr)
+
+ END SUBROUTINE h5ltread_dataset_int_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
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: buflen ! buffer length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf) &
+ BIND(C,NAME='h5ltmake_dataset_string_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: buflen ! length of data buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf) &
+ BIND(C,NAME='h5ltread_dataset_string_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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_f
+ !
+ ! Purpose: Create and write an attribute
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: May 4, 2015
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltset_attribute_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf,&
+ buf_type, SizeOf_buf_type, &
+ size,&
+ errcode )
+
+ IMPLICIT NONE
+ 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
+ TYPE(C_PTR) :: buf ! data buffer
+ CHARACTER(LEN=*), INTENT(in) :: buf_type !
+ INTEGER(size_t), INTENT(in) :: size ! size of attribute array
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+
+ CHARACTER(KIND=C_CHAR) :: buf_type_uppercase
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+
+ buf_type_uppercase(1:1) = buf_type(1:1)
+ IF(buf_type_uppercase(1:1).EQ.'i')THEN
+ buf_type_uppercase(1:1) = 'I'
+ ELSE IF(buf_type_uppercase(1:1).EQ.'r')THEN
+ buf_type_uppercase(1:1) = 'R'
+ ELSE IF(buf_type_uppercase(1:1).EQ.'c')THEN
+ buf_type_uppercase(1:1) = 'C'
+ ENDIF
+
+ errcode = h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,size,&
+ buf,buf_type_uppercase(1:1)//C_NULL_CHAR, SizeOf_buf_type)
+
+ END SUBROUTINE h5ltset_attribute_f
+
+ !-------------------------------------------------------------------------
+ ! 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
+ 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, DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ f_ptr = C_LOC(buf(1:1))
+
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf_type = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf(1))
+#endif
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,size,&
+ f_ptr,'I'//C_NULL_CHAR,SizeOf_buf_type)
+
+ 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
+ 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(KIND=C_FLOAT), INTENT(in), DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ f_ptr = C_LOC(buf(1))
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf_type = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf(1))
+#endif
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,size,&
+ f_ptr,'R'//C_NULL_CHAR, SizeOf_buf_type)
+
+ 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
+ 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(KIND=C_DOUBLE), INTENT(in), DIMENSION(*), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ f_ptr = C_LOC(buf(1))
+
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf_type = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf(1))
+#endif
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,size,&
+ f_ptr,'R'//C_NULL_CHAR,SizeOf_buf_type)
+
+ 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
+ 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=*), DIMENSION(*), INTENT(in), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ INTEGER(size_t) :: buflen ! data buffer length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ f_ptr = C_LOC(buf(1)(1:1))
+
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf_type = STORAGE_SIZE(buf(1)(1:1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf(1:1)(1:1))
+#endif
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ buflen = LEN(buf)
+ errcode = h5ltset_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,&
+ f_ptr,'C'//C_NULL_CHAR, SizeOf_buf_type)
+
+ END SUBROUTINE h5ltset_attribute_string_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_f
+ !
+ ! Purpose: Reads an attribute named ATTR_NAME
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: Apr 29, 2015
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltget_attribute_f(loc_id,&
+ dset_name,&
+ attr_name,&
+ buf, buf_type, SizeOf_buf_type, &
+ errcode )
+
+ IMPLICIT NONE
+ 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(out) :: errcode ! error code
+ CHARACTER(LEN=*), INTENT(in) :: buf_type
+ TYPE(C_PTR) :: buf! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ CHARACTER(KIND=C_CHAR) :: buf_type_uppercase
+ INTEGER(size_t) :: SizeOf_buf_type
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+
+ buf_type_uppercase(1:1) = buf_type(1:1)
+ IF(buf_type_uppercase(1:1).EQ.'i')THEN
+ buf_type_uppercase(1:1) = 'I'
+ ELSE IF(buf_type_uppercase(1:1).EQ.'r')THEN
+ buf_type_uppercase(1:1) = 'R'
+ ELSE IF(buf_type_uppercase(1:1).EQ.'c')THEN
+ buf_type_uppercase(1:1) = 'C'
+ ENDIF
+ errcode = h5ltget_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name, &
+ buf, buf_type_uppercase//C_NULL_CHAR, SizeOf_buf_type)
+
+
+ END SUBROUTINE h5ltget_attribute_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
+ 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(*), TARGET :: buf! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf
+
+ f_ptr = C_LOC(buf(1))
+
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf = SIZEOF(buf(1))
+#endif
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,f_ptr,'I'//C_NULL_CHAR, SizeOf_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
+ 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(KIND=C_FLOAT), INTENT(inout), DIMENSION(*), TARGET :: buf
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf
+
+ f_ptr = C_LOC(buf(1))
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf = SIZEOF(buf(1))
+#endif
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,f_ptr,'R'//C_NULL_CHAR, SizeOf_buf)
+
+ END SUBROUTINE h5ltget_attribute_float_f
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltget_attribute_c_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
+ 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(KIND=C_DOUBLE),INTENT(inout),DIMENSION(*), TARGET :: buf
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ TYPE(C_PTR) :: f_ptr
+ INTEGER(size_t) :: SizeOf_buf
+
+ f_ptr = C_LOC(buf(1))
+#if H5_FORTRAN_HAVE_STORAGE_SIZE!=0
+ SizeOf_buf = STORAGE_SIZE(buf(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf = SIZEOF(buf(1))
+#endif
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ errcode = h5ltget_attribute_c(loc_id,namelen,dset_name,attrlen,attr_name,f_ptr,'R'//C_NULL_CHAR, SizeOf_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
+ 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
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+ INTEGER(size_t) :: buf_size ! buf size
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,buf_size) &
+ BIND(C,NAME='h5ltget_attribute_string_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: attrlen ! length of attr name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: attr_name ! name of the attribute
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(inout) :: buf ! data buffer
+ INTEGER(size_t) :: buf_size ! data buffer size
+ END FUNCTION h5ltget_attribute_string_c
+ END INTERFACE
+
+ namelen = LEN(dset_name)
+ attrlen = LEN(attr_name)
+ buf_size = LEN(buf)
+
+ errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,buf_size)
+
+ 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
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank) &
+ BIND(C,NAME='h5ltget_dataset_ndims_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltfind_dataset_c(loc_id,namelen,dset_name) &
+ BIND(C,NAME='h5ltfind_dataset_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size) &
+ BIND(C,NAME='h5ltget_dataset_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank) &
+ BIND(C,NAME='h5ltget_attribute_ndims_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: attrlen ! length of attr name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: attrlen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size) &
+ BIND(C,NAME='h5ltget_attribute_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ INTEGER(size_t) :: namelen ! length of name buffer
+ INTEGER(size_t) :: attrlen ! length of attr name buffer
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+
+ !-------------------------------------------------------------------------
+ ! Function: h5ltpath_valid_f
+ !
+ ! Purpose: Validates a path
+ !
+ ! Return: Success: 0, Failure: -1
+ !
+ ! Programmer: M. Scot Breitenfeld
+ !
+ ! Date: February 18, 2012
+ !
+ ! Comments:
+ !
+ ! Modifications:
+ !
+ !-------------------------------------------------------------------------
+
+ SUBROUTINE h5ltpath_valid_f(loc_id, path, check_object_valid, path_valid, errcode)
+
+ IMPLICIT NONE
+ INTEGER(hid_t) , INTENT(IN) :: loc_id ! An identifier of an object in the file.
+ CHARACTER(LEN=*), INTENT(IN) :: path ! Path to the object to check, relative to loc_id.
+ LOGICAL , INTENT(IN) :: check_object_valid ! Indicates whether to check if the final component
+ ! of the path resolves to a valid object
+ LOGICAL , INTENT(OUT) :: path_valid ! Object status
+ INTEGER , INTENT(OUT) :: errcode ! Error code: 0 on success and -1 on failure
+
+ INTEGER(size_t) :: pathlen
+ INTEGER :: check_object_valid_c
+ INTEGER :: status
+
+ INTERFACE
+ INTEGER FUNCTION h5ltpath_valid_c(loc_id, path, pathlen, check_object_valid_c) &
+ BIND(C,NAME='h5ltpath_valid_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: path
+ INTEGER(size_t) :: pathlen
+ INTEGER :: check_object_valid_c
+ END FUNCTION h5ltpath_valid_c
+ END INTERFACE
+
+ ! Initialize
+ path_valid = .FALSE.
+ errcode = 0
+
+ check_object_valid_c = 0
+ IF(check_object_valid) check_object_valid_c = 1
+
+ pathlen = LEN(path)
+ status = h5ltpath_valid_c(loc_id, path, pathlen, check_object_valid_c)
+
+ IF(status.EQ.1)THEN
+ path_valid = .TRUE.
+ ELSE IF(status.LT.0)THEN
+ errcode = -1
+ ENDIF
+
+ END SUBROUTINE h5ltpath_valid_f
+
+END MODULE H5LT_CONST
+
+
+
+
+
+
diff --git a/hl/fortran/src/H5LTff.f90 b/hl/fortran/src/H5LTff.f90
deleted file mode 100644
index 9393f7f..0000000
--- a/hl/fortran/src/H5LTff.f90
+++ /dev/null
@@ -1,6490 +0,0 @@
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!
-! This file contains FORTRAN90 interfaces for 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_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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(LEN=*), INTENT(IN) :: dset_name ! name of the dataset
- INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- DOUBLE PRECISION, INTENT(inout), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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 buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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 buffer buf
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset
- INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the buffer 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: buflen ! buffer length
-
- INTERFACE
- INTEGER FUNCTION h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: buflen ! length 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_HL_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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
- INTEGER(size_t) :: buflen ! data buffer length
-
- INTERFACE
- INTEGER FUNCTION h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length of attr name buffer
- INTEGER(size_t) :: 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
- INTEGER(size_t) :: buf_size ! buf size
-
- INTERFACE
- INTEGER FUNCTION h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,buf_size)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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
- INTEGER(size_t) :: buf_size ! data buffer size
- END FUNCTION h5ltget_attribute_string_c
- END INTERFACE
-
- namelen = LEN(dset_name)
- attrlen = LEN(attr_name)
- buf_size = LEN(buf)
-
- errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,buf_size)
-
- 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_HL_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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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_HL_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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltfind_dataset_c(loc_id,namelen,dset_name)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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_HL_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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: attrlen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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_HL_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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! length of name buffer
- INTEGER(size_t) :: attrlen ! length 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
-
- !-------------------------------------------------------------------------
- ! Function: h5ltpath_valid_f
- !
- ! Purpose: Validates a path
- !
- ! Return: Success: 0, Failure: -1
- !
- ! Programmer: M. Scot Breitenfeld
- !
- ! Date: February 18, 2012
- !
- ! Comments:
- !
- ! Modifications:
- !
- !-------------------------------------------------------------------------
-
- SUBROUTINE h5ltpath_valid_f(loc_id, path, check_object_valid, path_valid, errcode)
-
- IMPLICIT NONE
- !
- !This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_HL_DLL)
- !DEC$attributes dllexport :: h5ltpath_valid_f
- !DEC$endif
- !
- INTEGER(hid_t) , INTENT(IN) :: loc_id ! An identifier of an object in the file.
- CHARACTER(LEN=*), INTENT(IN) :: path ! Path to the object to check, relative to loc_id.
- LOGICAL , INTENT(IN) :: check_object_valid ! Indicates whether to check if the final component
- ! of the path resolves to a valid object
- LOGICAL , INTENT(OUT) :: path_valid ! Object status
- INTEGER , INTENT(OUT) :: errcode ! Error code: 0 on success and -1 on failure
-
- INTEGER(size_t) :: pathlen
- INTEGER :: check_object_valid_c
- INTEGER :: status
-
- INTERFACE
- INTEGER FUNCTION h5ltpath_valid_c(loc_id, path, pathlen, check_object_valid_c)
- USE h5global
- IMPLICIT NONE
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTPATH_VALID_C'::h5ltpath_valid_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: path
- INTEGER(hid_t), INTENT(in) :: loc_id
- CHARACTER(len=*), INTENT(in) :: path
- INTEGER(size_t) :: pathlen
- INTEGER :: check_object_valid_c
- END FUNCTION h5ltpath_valid_c
- END INTERFACE
-
- ! Initialize
- path_valid = .FALSE.
- errcode = 0
-
- check_object_valid_c = 0
- IF(check_object_valid) check_object_valid_c = 1
-
- pathlen = LEN(path)
- status = h5ltpath_valid_c(loc_id, path, pathlen, check_object_valid_c)
-
- IF(status.EQ.1)THEN
- path_valid = .TRUE.
- ELSE IF(status.LT.0)THEN
- errcode = -1
- ENDIF
-
- END SUBROUTINE h5ltpath_valid_f
- ! end
- !
-END MODULE H5LT
-
-
-
-
-
-
diff --git a/hl/fortran/src/H5TBfc.c b/hl/fortran/src/H5TBfc.c
index bf058fd..99a7800 100644
--- a/hl/fortran/src/H5TBfc.c
+++ b/hl/fortran/src/H5TBfc.c
@@ -37,7 +37,7 @@
*-------------------------------------------------------------------------
*/
int_f
-nh5tbmake_table_c(size_t_f *namelen1,
+h5tbmake_table_c(size_t_f *namelen1,
_fcd name1,
hid_t_f *loc_id,
size_t_f *namelen,
@@ -133,7 +133,7 @@ done:
HDfree(c_field_types);
return ret_value;
-} /* end nh5tbmake_table_c() */
+} /* end h5tbmake_table_c() */
/*-------------------------------------------------------------------------
* Function: h5tbwrite_field_name_c
@@ -151,7 +151,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-nh5tbwrite_field_name_c(hid_t_f *loc_id,
+h5tbwrite_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -190,65 +190,6 @@ done:
return ret_value;
}
-int_f
-nh5tbwrite_field_name_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_name_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_name_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_name_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
/*-------------------------------------------------------------------------
* Function: h5tbread_field_name_c
@@ -266,7 +207,7 @@ nh5tbwrite_field_name_st_c(hid_t_f *loc_id,
*-------------------------------------------------------------------------
*/
int_f
-nh5tbread_field_name_c(hid_t_f *loc_id,
+h5tbread_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -305,66 +246,6 @@ done:
return ret_value;
}
-int_f
-nh5tbread_field_name_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_name_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_name_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_name_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_name_c(loc_id, namelen, name, namelen1, field_name,
- start, nrecords, type_size, buf);
-}
-
/*-------------------------------------------------------------------------
* Function: h5tbwrite_field_index_c
*
@@ -381,7 +262,7 @@ nh5tbread_field_name_st_c(hid_t_f *loc_id,
*-------------------------------------------------------------------------
*/
int_f
-nh5tbwrite_field_index_c(hid_t_f *loc_id,
+h5tbwrite_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -416,62 +297,6 @@ done:
return ret_value;
}
-int_f
-nh5tbwrite_field_index_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_index_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_index_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbwrite_field_index_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbwrite_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
/*-------------------------------------------------------------------------
* Function: h5tbread_field_index_c
*
@@ -488,7 +313,7 @@ nh5tbwrite_field_index_st_c(hid_t_f *loc_id,
*-------------------------------------------------------------------------
*/
int_f
-nh5tbread_field_index_c(hid_t_f *loc_id,
+h5tbread_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -522,62 +347,6 @@ done:
return ret_value;
}
-int_f
-nh5tbread_field_index_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_index_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_index_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
-int_f
-nh5tbread_field_index_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- int_f *field_index,
- hsize_t_f *start,
- hsize_t_f *nrecords,
- size_t_f *type_size,
- void *buf)
-{
- return nh5tbread_field_index_c(loc_id, namelen, name, field_index, start,
- nrecords, type_size, buf);
-}
-
/*-------------------------------------------------------------------------
* Function: h5tbinsert_field_c
*
@@ -594,7 +363,7 @@ nh5tbread_field_index_st_c(hid_t_f *loc_id,
*-------------------------------------------------------------------------
*/
int_f
-nh5tbinsert_field_c(hid_t_f *loc_id,
+h5tbinsert_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -631,62 +400,6 @@ done:
return ret_value;
}
-int_f
-nh5tbinsert_field_int_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf)
-{
- return nh5tbinsert_field_c(loc_id, namelen, name, namelen1, field_name,
- field_type, position, buf);
-}
-
-int_f
-nh5tbinsert_field_fl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf)
-{
- return nh5tbinsert_field_c(loc_id, namelen, name, namelen1, field_name,
- field_type, position, buf);
-}
-
-int_f
-nh5tbinsert_field_dl_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf)
-{
- return nh5tbinsert_field_c(loc_id, namelen, name, namelen1, field_name,
- field_type, position, buf);
-}
-
-int_f
-nh5tbinsert_field_st_c(hid_t_f *loc_id,
- size_t_f *namelen,
- _fcd name,
- size_t_f *namelen1,
- _fcd field_name,
- hid_t_f *field_type,
- int_f *position,
- void *buf)
-{
- return nh5tbinsert_field_c(loc_id, namelen, name, namelen1, field_name,
- field_type, position, buf);
-}
-
/*-------------------------------------------------------------------------
* Function: h5tbdelete_field_c
*
@@ -703,7 +416,7 @@ nh5tbinsert_field_st_c(hid_t_f *loc_id,
*-------------------------------------------------------------------------
*/
int_f
-nh5tbdelete_field_c(hid_t_f *loc_id,
+h5tbdelete_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -752,7 +465,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-nh5tbget_table_info_c(hid_t_f *loc_id,
+h5tbget_table_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
@@ -802,7 +515,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-nh5tbget_field_info_c(hid_t_f *loc_id,
+h5tbget_field_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
diff --git a/hl/fortran/src/H5TBff.F90 b/hl/fortran/src/H5TBff.F90
new file mode 100644
index 0000000..448d607
--- /dev/null
+++ b/hl/fortran/src/H5TBff.F90
@@ -0,0 +1,848 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! Copyright by The HDF Group. *
+! Copyright by the Board of Trustees of the University of Illinois. *
+! All rights reserved. *
+! *
+! This file is part of HDF5. The full HDF5 copyright notice, including *
+! terms governing use, modification, and redistribution, is contained in *
+! the files COPYING and Copyright.html. COPYING can be found at the root *
+! of the source code distribution tree; Copyright.html can be found at the *
+! root level of an installed copy of the electronic HDF5 document set and *
+! is linked from the top-level documents page. It can also be found at *
+! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+! access to either file, you may request a copy from help@hdfgroup.org. *
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+!
+!
+! This file contains FORTRAN interfaces for H5TB functions
+!
+!
+! NOTES
+!
+! _____ __ __ _____ ____ _____ _______ _ _ _______
+! |_ _| \/ | __ \ / __ \| __ \__ __|/\ | \ | |__ __|
+! **** | | | \ / | |__) | | | | |__) | | | / \ | \| | | | ****
+! **** | | | |\/| | ___/| | | | _ / | | / /\ \ | . ` | | | ****
+! **** _| |_| | | | | | |__| | | \ \ | |/ ____ \| |\ | | | ****
+! |_____|_| |_|_| \____/|_| \_\ |_/_/ \_\_| \_| |_|
+!
+! If you add a new function here then you MUST add the function name to the
+! Windows dll file 'hdf5_hl_fortrandll.def.in' in the hl/fortran/src directory.
+! This is needed for Windows based operating systems.
+!
+#include "H5config_f.inc"
+
+MODULE h5tb_CONST
+
+ USE, INTRINSIC :: ISO_C_BINDING
+ USE h5fortran_types
+ USE hdf5
+
+ INTERFACE h5tbwrite_field_name_f
+ MODULE PROCEDURE h5tbwrite_field_name_f_int
+ 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_string
+ END INTERFACE
+
+ INTERFACE h5tbwrite_field_index_f
+ MODULE PROCEDURE h5tbwrite_field_index_f_int
+ 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_string
+ END INTERFACE
+
+ INTERFACE h5tbinsert_field_f
+ MODULE PROCEDURE h5tbinsert_field_f_int
+ MODULE PROCEDURE h5tbinsert_field_f_string
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ start,nrecords,type_size,buf) &
+ BIND(C,NAME='h5tbwrite_field_name_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ END FUNCTION h5tbwrite_field_name_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name, &
+ start,nrecords,type_size,buf) &
+ BIND(C,NAME='h5tbread_field_name_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ END FUNCTION h5tbread_field_name_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,buf) &
+ BIND(C,NAME='h5tbwrite_field_index_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ END FUNCTION h5tbwrite_field_index_c
+ END INTERFACE
+
+ INTERFACE
+ INTEGER FUNCTION h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,buf) &
+ BIND(C,NAME='h5tbread_field_index_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ END FUNCTION h5tbread_field_index_c
+ END INTERFACE
+
+
+ INTERFACE
+ INTEGER FUNCTION h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ field_type,field_index,buf) &
+ BIND(C,NAME='h5tbinsert_field_c')
+ IMPORT :: C_CHAR, C_PTR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: field_name ! name of the field
+ INTEGER(hid_t), INTENT(in) :: field_type ! field type
+ INTEGER, INTENT(in) :: field_index ! field_index
+ TYPE(C_PTR), VALUE :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length length
+ END FUNCTION h5tbinsert_field_c
+ END INTERFACE
+
+CONTAINS
+
+!-------------------------------------------------------------------------
+! Function: h5tbmake_table_f
+!
+! Purpose: Make a table
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 06, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbmake_table_f(table_title,&
+ loc_id,&
+ dset_name,&
+ nfields,&
+ nrecords,&
+ type_size,&
+ field_names,&
+ field_offset,&
+ field_types,&
+ chunk_size,&
+ compress,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ INTEGER :: errcode ! error code
+ INTEGER(size_t), DIMENSION(1:nfields) :: char_len_field_names ! field name lengths
+ INTEGER(size_t) :: max_char_size_field_names ! character len of field names
+ INTEGER(hsize_t) :: 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) &
+ BIND(C,NAME='h5tbmake_table_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: table_title ! name of the dataset
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), 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(KIND=C_CHAR), 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ INTEGER(size_t), DIMENSION(nfields) :: char_len_field_names ! field name's lengths
+ INTEGER(size_t) :: max_char_size_field_names ! 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,&
+ 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)
+
+ END SUBROUTINE h5tbmake_table_f
+
+!-------------------------------------------------------------------------
+! Function: h5tbwrite_field_name_f_int
+!
+! Purpose: Writes one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 12, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbwrite_field_name_f_int(loc_id,&
+ dset_name,&
+ field_name,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbwrite_field_name_f_int
+
+
+ SUBROUTINE h5tbwrite_field_name_f_string(loc_id,&
+ dset_name,&
+ field_name,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)(1:1))
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbwrite_field_name_f_string
+
+
+!-------------------------------------------------------------------------
+! Function: h5tbread_field_name_f_int
+!
+! Purpose: Reads one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 12, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbread_field_name_f_int(loc_id,&
+ dset_name,&
+ field_name,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)) ! name length
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbread_field_name_f_int
+
+ SUBROUTINE h5tbread_field_name_f_string(loc_id,&
+ dset_name,&
+ field_name,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)(1:1))
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbread_field_name_f_string
+
+
+!-------------------------------------------------------------------------
+! Function: h5tbwrite_field_index_f_int
+!
+! Purpose: Writes one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 12, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbwrite_field_index_f_int(loc_id,&
+ dset_name,&
+ field_index,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+
+ namelen = LEN(dset_name)
+
+ errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbwrite_field_index_f_int
+
+ SUBROUTINE h5tbwrite_field_index_f_string(loc_id,&
+ dset_name,&
+ field_index,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)(1:1))
+ namelen = LEN(dset_name)
+
+ errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbwrite_field_index_f_string
+
+
+!-------------------------------------------------------------------------
+! Function: h5tbread_field_index_f_int
+!
+! Purpose: Reads one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 12, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbread_field_index_f_int(loc_id,&
+ dset_name,&
+ field_index,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+ namelen = LEN(dset_name)
+
+ errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbread_field_index_f_int
+
+ SUBROUTINE h5tbread_field_index_f_string(loc_id,&
+ dset_name,&
+ field_index,&
+ start,&
+ nrecords,&
+ type_size,&
+ buf,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER :: errcode ! error code
+ INTEGER(size_t) :: namelen ! name length
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)(1:1))
+ namelen = LEN(dset_name)
+
+ errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,&
+ start,nrecords,type_size,f_ptr)
+
+ END SUBROUTINE h5tbread_field_index_f_string
+
+!-------------------------------------------------------------------------
+! Function: h5tbinsert_field_f
+!
+! Purpose: Inserts one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 13, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbinsert_field_f_int(loc_id,&
+ dset_name,&
+ field_name,&
+ field_type,&
+ field_index,&
+ buf,&
+ errcode )
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ INTEGER :: errcode ! error code
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1))
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ field_type,field_index,f_ptr)
+
+ END SUBROUTINE h5tbinsert_field_f_int
+
+ SUBROUTINE h5tbinsert_field_f_string(loc_id,&
+ dset_name,&
+ field_name,&
+ field_type,&
+ field_index,&
+ buf,&
+ errcode )
+ IMPLICIT NONE
+ 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(*), TARGET :: buf ! data buffer
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ INTEGER :: errcode ! error code
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(buf(1)(1:1))
+
+ namelen = LEN(dset_name)
+ namelen1 = LEN(field_name)
+
+ errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,&
+ field_type,field_index,f_ptr)
+
+ END SUBROUTINE h5tbinsert_field_f_string
+
+!-------------------------------------------------------------------------
+! Function: h5tbdelete_field_f
+!
+! Purpose: Inserts one field
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 13, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbdelete_field_f(loc_id,&
+ dset_name,&
+ field_name,&
+ errcode )
+ IMPLICIT NONE
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length
+ INTEGER :: errcode ! error code
+
+
+ INTERFACE
+ INTEGER FUNCTION h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name) &
+ BIND(C,NAME='h5tbdelete_field_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: dset_name ! name of the dataset
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: field_name ! name of the field
+ INTEGER(size_t) :: namelen ! name length
+ INTEGER(size_t) :: namelen1 ! name length length
+ END FUNCTION h5tbdelete_field_c
+ END INTERFACE
+
+ 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
+
+!-------------------------------------------------------------------------
+! Function: h5tbget_table_info_f
+!
+! Purpose: Gets the number of records and fields of a table
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 13, 2004
+!
+! Comments:
+!
+! Modifications:
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbget_table_info_f(loc_id,&
+ dset_name,&
+ nfields,&
+ nrecords,&
+ errcode )
+
+ IMPLICIT NONE
+ 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(size_t) :: namelen ! name length
+
+ INTERFACE
+ INTEGER FUNCTION h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords) &
+ BIND(C,NAME='h5tbget_table_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(inout):: nfields ! nfields
+ INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords
+ INTEGER(size_t) :: 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
+
+
+!-------------------------------------------------------------------------
+! Function: h5tbget_field_info_f
+!
+! Purpose: Get information about fields
+!
+! Return: Success: 0, Failure: -1
+!
+! Programmer: pvn@ncsa.uiuc.edu
+!
+! Date: October 13, 2004
+!
+! Comments:
+!
+! Modifications:
+! Added optional parameter for returning the maximum character length
+! in the field name array. March 3, 2011
+!
+!-------------------------------------------------------------------------
+
+ SUBROUTINE h5tbget_field_info_f(loc_id,&
+ dset_name,&
+ nfields,&
+ field_names,&
+ field_sizes,&
+ field_offsets,&
+ type_size,&
+ errcode, maxlen_out )
+
+ IMPLICIT NONE
+ 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(size_t) :: namelen ! name length
+ INTEGER(size_t), DIMENSION(nfields) :: namelen2 ! name lengths
+ INTEGER(hsize_t) :: i ! general purpose integer
+ INTEGER(size_t) :: maxlen
+ INTEGER(size_t) :: 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) &
+ BIND(C,NAME='h5tbget_field_info_c')
+ IMPORT :: C_CHAR
+ IMPORT :: HID_T, SIZE_T, HSIZE_T
+ IMPLICIT NONE
+ INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dset_name ! name of the dataset
+ INTEGER(hsize_t), INTENT(in):: nfields ! nfields
+ CHARACTER(KIND=C_CHAR), 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(size_t) :: namelen ! name length
+ INTEGER(size_t) :: maxlen ! maxiumum length of input field names
+ INTEGER(size_t), DIMENSION(1:nfields) :: namelen2 ! name lengths
+ INTEGER(size_t) :: 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_CONST
+
+
+
+
+
+
diff --git a/hl/fortran/src/H5TBff.f90 b/hl/fortran/src/H5TBff.f90
deleted file mode 100644
index 5846f49..0000000
--- a/hl/fortran/src/H5TBff.f90
+++ /dev/null
@@ -1,1900 +0,0 @@
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-! Copyright by The HDF Group. *
-! Copyright by the Board of Trustees of the University of Illinois. *
-! All rights reserved. *
-! *
-! This file is part of HDF5. The full HDF5 copyright notice, including *
-! terms governing use, modification, and redistribution, is contained in *
-! the files COPYING and Copyright.html. COPYING can be found at the root *
-! of the source code distribution tree; Copyright.html can be found at the *
-! root level of an installed copy of the electronic HDF5 document set and *
-! is linked from the top-level documents page. It can also be found at *
-! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
-! access to either file, you may request a copy from help@hdfgroup.org. *
-! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-!
-!
-! This file contains FORTRAN90 interfaces for H5TB functions
-!
-
-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 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 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
-
-
-CONTAINS
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbmake_table_f
-!
-! Purpose: Make a table
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 06, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbmake_table_f(table_title,&
- loc_id,&
- dset_name,&
- nfields,&
- nrecords,&
- type_size,&
- field_names,&
- field_offset,&
- field_types,&
- chunk_size,&
- compress,&
- errcode )
-
- IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbmake_table_f
-!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(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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
- INTEGER(size_t), DIMENSION(1:nfields) :: char_len_field_names ! field name lengths
- INTEGER(size_t) :: max_char_size_field_names ! character len of field names
- INTEGER(hsize_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER(size_t), DIMENSION(nfields) :: char_len_field_names ! field name's lengths
- INTEGER(size_t) :: max_char_size_field_names ! 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,&
- 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)
-
-END SUBROUTINE h5tbmake_table_f
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_name_f_int
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_name_f_int(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_name_f_int
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_name_f_float
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_name_f_float(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_name_f_float
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_name_f_double
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_name_f_double(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_name_f_double
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_name_f_string
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_name_f_string(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_name_f_string
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_name_f_int
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_name_f_int(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_name_f_int
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_name_f_float
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_name_f_float(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_name_f_float
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_name_f_double
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_name_f_double(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_name_f_double
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_name_f_string
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_name_f_string(loc_id,&
- dset_name,&
- field_name,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_name_f_string
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_index_f_int
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_index_f_int(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_index_f_int
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_index_f_float
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_index_f_float(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_index_f_float
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_index_f_double
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_index_f_double(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_index_f_double
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbwrite_field_index_f_string
-!
-! Purpose: Writes one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbwrite_field_index_f_string(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbwrite_field_index_f_string
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_index_f_int
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_index_f_int(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport ::h5tbread_field_index_f_int
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_index_f_float
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_index_f_float(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_index_f_float
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_index_f_double
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_index_f_double(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_index_f_double
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-!-------------------------------------------------------------------------
-! Function: h5tbread_field_index_f_string
-!
-! Purpose: Reads one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 12, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbread_field_index_f_string(loc_id,&
- dset_name,&
- field_index,&
- start,&
- nrecords,&
- type_size,&
- buf,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbread_field_index_f_string
-!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(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,&
- start,nrecords,type_size,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbinsert_field_f_int
-!
-! Purpose: Inserts one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbinsert_field_f_int(loc_id,&
- dset_name,&
- field_name,&
- field_type,&
- field_index,&
- buf,&
- errcode )
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbinsert_field_f_int
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
-
-
- INTERFACE
- INTEGER FUNCTION h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,&
- field_type,field_index,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbinsert_field_f_float
-!
-! Purpose: Inserts one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbinsert_field_f_float(loc_id,&
- dset_name,&
- field_name,&
- field_type,&
- field_index,&
- buf,&
- errcode )
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbinsert_field_f_float
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
-
-
- INTERFACE
- INTEGER FUNCTION h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- field_type,field_index,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbinsert_field_f_double
-!
-! Purpose: Inserts one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbinsert_field_f_double(loc_id,&
- dset_name,&
- field_name,&
- field_type,&
- field_index,&
- buf,&
- errcode )
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbinsert_field_f_double
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
-
-
- INTERFACE
- INTEGER FUNCTION h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,&
- field_type,field_index,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbinsert_field_f_string
-!
-! Purpose: Inserts one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbinsert_field_f_string(loc_id,&
- dset_name,&
- field_name,&
- field_type,&
- field_index,&
- buf,&
- errcode )
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbinsert_field_f_string
-!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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
-
-
- INTERFACE
- INTEGER FUNCTION h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,&
- field_type,field_index,buf)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: 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
-
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbdelete_field_f
-!
-! Purpose: Inserts one field
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbdelete_field_f(loc_id,&
- dset_name,&
- field_name,&
- errcode )
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbdelete_field_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) :: field_name ! name of the field
- INTEGER(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length
- INTEGER :: errcode ! error code
-
-
- INTERFACE
- INTEGER FUNCTION h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name)
-
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: namelen1 ! name length length
- END FUNCTION h5tbdelete_field_c
- END INTERFACE
-
- 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
-
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbget_table_info_f
-!
-! Purpose: Gets the number of records and fields of a table
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbget_table_info_f(loc_id,&
- dset_name,&
- nfields,&
- nrecords,&
- errcode )
-
- IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5tbget_table_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(inout):: nfields ! nfields
- INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords
- INTEGER :: errcode ! error code
- INTEGER(size_t) :: namelen ! name length
-
- INTERFACE
- INTEGER FUNCTION h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords)
- USE h5global
- IMPLICIT NONE
- !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(size_t) :: 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
-
-
-!-------------------------------------------------------------------------
-! Function: h5tbget_field_info_f
-!
-! Purpose: Get information about fields
-!
-! Return: Success: 0, Failure: -1
-!
-! Programmer: pvn@ncsa.uiuc.edu
-!
-! Date: October 13, 2004
-!
-! Comments:
-!
-! Modifications:
-! Added optional parameter for returning the maximum character length
-! in the field name array. March 3, 2011
-!
-!-------------------------------------------------------------------------
-
-SUBROUTINE h5tbget_field_info_f(loc_id,&
- dset_name,&
- nfields,&
- field_names,&
- field_sizes,&
- field_offsets,&
- type_size,&
- errcode, maxlen_out )
-
- IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_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, OPTIONAL :: maxlen_out ! maximum character len of the field names
- INTEGER(size_t) :: namelen ! name length
- INTEGER(size_t), DIMENSION(nfields) :: namelen2 ! name lengths
- INTEGER(hsize_t) :: i ! general purpose integer
- INTEGER(size_t) :: maxlen
- INTEGER(size_t) :: 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
- IMPLICIT NONE
- !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(size_t) :: namelen ! name length
- INTEGER(size_t) :: maxlen ! maxiumum length of input field names
- INTEGER(size_t), DIMENSION(1:nfields) :: namelen2 ! name lengths
- INTEGER(size_t) :: 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/src/Makefile.am b/hl/fortran/src/Makefile.am
index c8c4541..6457f81 100644
--- a/hl/fortran/src/Makefile.am
+++ b/hl/fortran/src/Makefile.am
@@ -42,12 +42,12 @@ endif
# Source files for the library
#if BUILD_PARALLEL_CONDITIONAL
-# PARALLEL_COND_SRC=HDFDmpiof.c HDF5mpio.f90
+# PARALLEL_COND_SRC=HDFDmpiof.c HDF5mpio.F90
#endif
# List sources to include in the HDF5 HL Fortran library.
-libhdf5hl_fortran_la_SOURCES=H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
- H5DSff.f90 H5LTff.f90 H5IMff.f90 H5TBff.f90
+libhdf5hl_fortran_la_SOURCES=H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
+ H5DSff.F90 H5LTff.F90 H5TBff.F90 H5IMff.F90 H5LTff_gen.F90 H5TBff_gen.F90
# HDF5 HL Fortran library depends on HDF5 Library.
libhdf5hl_fortran_la_LIBADD=$(LIBH5_HL) $(LIBH5F)
@@ -60,7 +60,7 @@ maintainer-clean-local: clean-local
distclean-local: clean-local
clean-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(RM) *.$(F9XMODEXT); \
+ $(RM) *.$(F9XMODEXT) H5LTff_gen.F90 H5TBff_gen.F90; \
fi
install-data-local:
@@ -75,13 +75,31 @@ uninstall-local:
fi; \
fi
+# These are the helper programs we need to build.
+noinst_PROGRAMS = H5HL_buildiface
+
+# H5HL_buildiface.F90 generates all the APIs that have a KIND type associated
+# with them.
+
+H5LTff_gen.F90: H5HL_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5HL_buildiface$(EXEEXT)
+
+H5TBff_gen.F90: H5HL_buildiface$(EXEEXT)
+
+#H5TBff_gen.F90: H5HL_buildiface$(EXEEXT)
+
+# H5HL_buildiface.F90 is included in the distribution, and Automake knows
+# how to compile a fortran program given its sources.
+
+H5HL_buildiface_SOURCES = H5HL_buildiface.F90
# Hardcode the dependencies of these files. There isn't a known way of
# determining this automagically (like we do with the C files). So, when
# doing a parallel make, some modules could be made way before the
# modules they depend upon are actually made. *sigh*
-H5DSff.lo: $(srcdir)/H5DSff.f90
-H5LTff.lo: $(srcdir)/H5LTff.f90
-H5IMff.lo: $(srcdir)/H5IMff.f90
-H5TBff.lo: $(srcdir)/H5TBff.f90
-
+H5DSff.lo: $(srcdir)/H5DSff.F90
+H5LTff.lo: $(srcdir)/H5LTff.F90
+H5IMff.lo: $(srcdir)/H5IMff.F90
+H5TBff.lo: $(srcdir)/H5TBff.F90
+H5LTff_gen.lo: H5LTff.lo H5LTff_gen.F90
+H5TBff_gen.lo: H5TBff.lo H5LTff_gen.F90 H5TBff_gen.F90
include $(top_srcdir)/config/conclude.am
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index 029e5a1..956eda8 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -31,6 +31,7 @@
#
# HDF5 High-Level Fortran Makefile(.in)
+
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
@@ -105,6 +106,7 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
# want to build a shared C library and a static Fortran library. If so,
# pass the -static flag to the library linker.
@FORTRAN_SHARED_CONDITIONAL_FALSE@am__append_1 = -static
+noinst_PROGRAMS = H5HL_buildiface$(EXEEXT)
TESTS =
subdir = hl/fortran/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -113,7 +115,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -147,7 +150,8 @@ am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
libhdf5hl_fortran_la_DEPENDENCIES = $(LIBH5_HL) $(LIBH5F)
am_libhdf5hl_fortran_la_OBJECTS = H5DSfc.lo H5LTfc.lo H5IMfc.lo \
- H5IMcc.lo H5TBfc.lo H5DSff.lo H5LTff.lo H5IMff.lo H5TBff.lo
+ H5IMcc.lo H5TBfc.lo H5DSff.lo H5LTff.lo H5TBff.lo H5IMff.lo \
+ H5LTff_gen.lo H5TBff_gen.lo
libhdf5hl_fortran_la_OBJECTS = $(am_libhdf5hl_fortran_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -157,6 +161,10 @@ libhdf5hl_fortran_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=FC \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(FCLD) \
$(AM_FCFLAGS) $(FCFLAGS) $(libhdf5hl_fortran_la_LDFLAGS) \
$(LDFLAGS) -o $@
+PROGRAMS = $(noinst_PROGRAMS)
+am_H5HL_buildiface_OBJECTS = H5HL_buildiface.$(OBJEXT)
+H5HL_buildiface_OBJECTS = $(am_H5HL_buildiface_OBJECTS)
+H5HL_buildiface_LDADD = $(LDADD)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -169,10 +177,28 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
+PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
+LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(FC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_FCFLAGS) $(FCFLAGS)
+AM_V_PPFC = $(am__v_PPFC_@AM_V@)
+am__v_PPFC_ = $(am__v_PPFC_@AM_DEFAULT_V@)
+am__v_PPFC_0 = @echo " PPFC " $@;
+am__v_PPFC_1 =
+FCLD = $(FC)
+FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_FCLD = $(am__v_FCLD_@AM_V@)
+am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
+am__v_FCLD_0 = @echo " FCLD " $@;
+am__v_FCLD_1 =
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
@@ -191,23 +217,9 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
-FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS)
-LTFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=compile $(FC) $(AM_FCFLAGS) $(FCFLAGS)
-AM_V_FC = $(am__v_FC_@AM_V@)
-am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
-am__v_FC_0 = @echo " FC " $@;
-am__v_FC_1 =
-FCLD = $(FC)
-FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_FCLD = $(am__v_FCLD_@AM_V@)
-am__v_FCLD_ = $(am__v_FCLD_@AM_DEFAULT_V@)
-am__v_FCLD_0 = @echo " FCLD " $@;
-am__v_FCLD_1 =
-SOURCES = $(libhdf5hl_fortran_la_SOURCES)
-DIST_SOURCES = $(libhdf5hl_fortran_la_SOURCES)
+SOURCES = $(libhdf5hl_fortran_la_SOURCES) $(H5HL_buildiface_SOURCES)
+DIST_SOURCES = $(libhdf5hl_fortran_la_SOURCES) \
+ $(H5HL_buildiface_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -469,14 +481,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -486,13 +505,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -534,6 +552,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
@@ -691,17 +721,23 @@ libhdf5hl_fortran_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVI
# Source files for the library
#if BUILD_PARALLEL_CONDITIONAL
-# PARALLEL_COND_SRC=HDFDmpiof.c HDF5mpio.f90
+# PARALLEL_COND_SRC=HDFDmpiof.c HDF5mpio.F90
#endif
# List sources to include in the HDF5 HL Fortran library.
-libhdf5hl_fortran_la_SOURCES = H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
- H5DSff.f90 H5LTff.f90 H5IMff.f90 H5TBff.f90
+libhdf5hl_fortran_la_SOURCES = H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
+ H5DSff.F90 H5LTff.F90 H5TBff.F90 H5IMff.F90 H5LTff_gen.F90 H5TBff_gen.F90
# HDF5 HL Fortran library depends on HDF5 Library.
libhdf5hl_fortran_la_LIBADD = $(LIBH5_HL) $(LIBH5F)
+#H5TBff_gen.F90: H5HL_buildiface$(EXEEXT)
+
+# H5HL_buildiface.F90 is included in the distribution, and Automake knows
+# how to compile a fortran program given its sources.
+H5HL_buildiface_SOURCES = H5HL_buildiface.F90
+
# Automake needs to be taught how to build lib, progs, and tests targets.
# These will be filled in automatically for the most part (e.g.,
# lib_LIBRARIES are built for lib target), but EXTRA_LIB, EXTRA_PROG, and
@@ -724,7 +760,7 @@ TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
all: all-am
.SUFFIXES:
-.SUFFIXES: .c .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
+.SUFFIXES: .F90 .c .lo .log .o .obj .sh .sh$(EXEEXT) .trs
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence.am $(top_srcdir)/config/lt_vers.am $(top_srcdir)/config/conclude.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -795,6 +831,19 @@ clean-libLTLIBRARIES:
libhdf5hl_fortran.la: $(libhdf5hl_fortran_la_OBJECTS) $(libhdf5hl_fortran_la_DEPENDENCIES) $(EXTRA_libhdf5hl_fortran_la_DEPENDENCIES)
$(AM_V_FCLD)$(libhdf5hl_fortran_la_LINK) -rpath $(libdir) $(libhdf5hl_fortran_la_OBJECTS) $(libhdf5hl_fortran_la_LIBADD) $(LIBS)
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+
+H5HL_buildiface$(EXEEXT): $(H5HL_buildiface_OBJECTS) $(H5HL_buildiface_DEPENDENCIES) $(EXTRA_H5HL_buildiface_DEPENDENCIES)
+ @rm -f H5HL_buildiface$(EXEEXT)
+ $(AM_V_FCLD)$(FCLINK) $(H5HL_buildiface_OBJECTS) $(H5HL_buildiface_LDADD) $(LIBS)
+
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -807,6 +856,15 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5LTfc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/H5TBfc.Plo@am__quote@
+.F90.o:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ $<
+
+.F90.obj:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.F90.lo:
+ $(AM_V_PPFC)$(LTPPFCCOMPILE) -c -o $@ $<
+
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@@ -828,15 +886,6 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
-.f90.o:
- $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
-
-.f90.obj:
- $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) `$(CYGPATH_W) '$<'`
-
-.f90.lo:
- $(AM_V_FC)$(LTFCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
-
mostlyclean-libtool:
-rm -f *.lo
@@ -1073,7 +1122,7 @@ distdir: $(DISTFILES)
check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
-all-am: Makefile $(LTLIBRARIES) all-local
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) all-local
installdirs:
for dir in "$(DESTDIR)$(libdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -1114,7 +1163,7 @@ maintainer-clean-generic:
clean: clean-am
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool clean-local \
- mostlyclean-am
+ clean-noinstPROGRAMS mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
@@ -1187,8 +1236,8 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-local
.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-TESTS \
check-am clean clean-generic clean-libLTLIBRARIES \
- clean-libtool clean-local cscopelist-am ctags ctags-am \
- distclean distclean-compile distclean-generic \
+ clean-libtool clean-local clean-noinstPROGRAMS cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-local distclean-tags distdir dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-data-local install-dvi \
@@ -1236,7 +1285,7 @@ maintainer-clean-local: clean-local
distclean-local: clean-local
clean-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(RM) *.$(F9XMODEXT); \
+ $(RM) *.$(F9XMODEXT) H5LTff_gen.F90 H5TBff_gen.F90; \
fi
install-data-local:
@@ -1251,14 +1300,23 @@ uninstall-local:
fi; \
fi
+# H5HL_buildiface.F90 generates all the APIs that have a KIND type associated
+# with them.
+
+H5LTff_gen.F90: H5HL_buildiface$(EXEEXT)
+ $(RUNSERIAL) ./H5HL_buildiface$(EXEEXT)
+
+H5TBff_gen.F90: H5HL_buildiface$(EXEEXT)
# Hardcode the dependencies of these files. There isn't a known way of
# determining this automagically (like we do with the C files). So, when
# doing a parallel make, some modules could be made way before the
# modules they depend upon are actually made. *sigh*
-H5DSff.lo: $(srcdir)/H5DSff.f90
-H5LTff.lo: $(srcdir)/H5LTff.f90
-H5IMff.lo: $(srcdir)/H5IMff.f90
-H5TBff.lo: $(srcdir)/H5TBff.f90
+H5DSff.lo: $(srcdir)/H5DSff.F90
+H5LTff.lo: $(srcdir)/H5LTff.F90
+H5IMff.lo: $(srcdir)/H5IMff.F90
+H5TBff.lo: $(srcdir)/H5TBff.F90
+H5LTff_gen.lo: H5LTff.lo H5LTff_gen.F90
+H5TBff_gen.lo: H5TBff.lo H5LTff_gen.F90 H5TBff_gen.F90
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
diff --git a/hl/fortran/src/hdf5_hl_fortrandll.def.in b/hl/fortran/src/hdf5_hl_fortrandll.def.in
new file mode 100644
index 0000000..9a1231a
--- /dev/null
+++ b/hl/fortran/src/hdf5_hl_fortrandll.def.in
@@ -0,0 +1,88 @@
+EXPORTS
+; H5DS
+H5DS_mp_H5DSSET_SCALE_F
+H5DS_mp_H5DSATTACH_SCALE_F
+H5DS_mp_H5DSDETACH_SCALE_F
+H5DS_mp_H5DSIS_ATTACHED_F
+H5DS_mp_H5DSIS_SCALE_F
+H5DS_mp_H5DSSET_LABEL_F
+H5DS_mp_H5DSGET_LABEL_F
+H5DS_mp_H5DSGET_SCALE_NAME_F
+H5DS_mp_H5DSGET_NUM_SCALES_F
+; H5IM
+H5IM_mp_H5IMMAKE_IMAGE_8BIT_F
+H5IM_mp_H5IMREAD_IMAGE_F
+H5IM_mp_H5IMMAKE_IMAGE_24BIT_F
+H5IM_mp_H5IMGET_IMAGE_INFO_F
+H5IM_mp_H5IMIS_IMAGE_F
+H5IM_mp_H5IMMAKE_PALETTE_F
+H5IM_mp_H5IMLINK_PALETTE_F
+H5IM_mp_H5IMUNLINK_PALETTE_F
+H5IM_mp_H5IMGET_NPALETTES_F
+H5IM_mp_H5IMGET_PALETTE_INFO_F
+H5IM_mp_H5IMGET_PALETTE_F
+H5IM_mp_H5IMIS_PALETTE_F
+; H5LT
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_PTR
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT1
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT2
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT3
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT4
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT5
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT6
+H5LT_CONST_mp_H5LTMAKE_DATASET_F_INT7
+H5LT_CONST_mp_H5LTREAD_DATASET_F_PTR
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT1
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT2
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT3
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT4
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT5
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT6
+H5LT_CONST_mp_H5LTREAD_DATASET_F_INT7
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_1
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_2
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_3
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_4
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_5
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_6
+H5LT_CONST_mp_H5LTMAKE_DATASET_INT_F_7
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_1
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_2
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_3
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_4
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_5
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_6
+H5LT_CONST_mp_H5LTREAD_DATASET_INT_F_7
+H5LT_CONST_mp_H5LTMAKE_DATASET_STRING_F
+H5LT_CONST_mp_H5LTREAD_DATASET_STRING_F
+H5LT_CONST_mp_H5LTSET_ATTRIBUTE_F
+H5LT_CONST_mp_H5LTSET_ATTRIBUTE_INT_F
+H5LT_CONST_mp_H5LTSET_ATTRIBUTE_FLOAT_F
+H5LT_CONST_mp_H5LTSET_ATTRIBUTE_DOUBLE_F
+H5LT_CONST_mp_H5LTSET_ATTRIBUTE_STRING_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_INT_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_FLOAT_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_DOUBLE_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_STRING_F
+H5LT_CONST_mp_H5LTGET_DATASET_NDIMS_F
+H5LT_CONST_mp_H5LTFIND_DATASET_F
+H5LT_CONST_mp_H5LTGET_DATASET_INFO_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_NDIMS_F
+H5LT_CONST_mp_H5LTGET_ATTRIBUTE_INFO_F
+H5LT_CONST_mp_H5LTPATH_VALID_F
+; H5TB
+H5TB_CONST_mp_H5TBMAKE_TABLE_F
+H5TB_CONST_mp_H5TBWRITE_FIELD_NAME_F_INT
+H5TB_CONST_mp_H5TBWRITE_FIELD_NAME_F_STRING
+H5TB_CONST_mp_H5TBREAD_FIELD_NAME_F_INT
+H5TB_CONST_mp_H5TBREAD_FIELD_NAME_F_STRING
+H5TB_CONST_mp_H5TBWRITE_FIELD_INDEX_F_INT
+H5TB_CONST_mp_H5TBWRITE_FIELD_INDEX_F_STRING
+H5TB_CONST_mp_H5TBREAD_FIELD_INDEX_F_INT
+H5TB_CONST_mp_H5TBREAD_FIELD_INDEX_F_STRING
+H5TB_CONST_mp_H5TBINSERT_FIELD_F_INT
+H5TB_CONST_mp_H5TBINSERT_FIELD_F_STRING
+H5TB_CONST_mp_H5TBDELETE_FIELD_F
+H5TB_CONST_mp_H5TBGET_TABLE_INFO_F
+H5TB_CONST_mp_H5TBGET_FIELD_INFO_F
diff --git a/hl/fortran/test/CMakeLists.txt b/hl/fortran/test/CMakeLists.txt
index 4918e06..a1d1386 100644
--- a/hl/fortran/test/CMakeLists.txt
+++ b/hl/fortran/test/CMakeLists.txt
@@ -7,7 +7,7 @@ PROJECT (HDF5_HL_FORTRAN_TESTS C CXX Fortran)
INCLUDE_DIRECTORIES (${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} ${HDF5_F90_SRC_DIR}/src)
#-- Adding test for hl_f90_tstds
-add_executable (hl_f90_tstds tstds.f90)
+add_executable (hl_f90_tstds tstds.F90)
TARGET_NAMING (hl_f90_tstds STATIC)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstds STATIC " " " ")
target_link_libraries (hl_f90_tstds ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
@@ -15,7 +15,7 @@ target_include_directories (hl_f90_tstds PRIVATE ${CMAKE_Fortran_MODULE_DIRECTOR
set_target_properties (hl_f90_tstds PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstds PROPERTIES FOLDER test/hl/fortran)
if (BUILD_SHARED_LIBS)
- add_executable (hl_f90_tstds-shared tstds.f90)
+ add_executable (hl_f90_tstds-shared tstds.F90)
TARGET_NAMING (hl_f90_tstds-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstds-shared SHARED " " " ")
target_link_libraries (hl_f90_tstds-shared ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET})
@@ -28,7 +28,7 @@ if (BUILD_SHARED_LIBS)
endif (BUILD_SHARED_LIBS)
#-- Adding test for hl_f90_tstlite
-add_executable (hl_f90_tstlite tstlite.f90)
+add_executable (hl_f90_tstlite tstlite.F90)
TARGET_NAMING (hl_f90_tstlite STATIC)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstlite STATIC " " " ")
target_link_libraries (hl_f90_tstlite ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
@@ -36,7 +36,7 @@ target_include_directories (hl_f90_tstlite PRIVATE ${CMAKE_Fortran_MODULE_DIRECT
set_target_properties (hl_f90_tstlite PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstlite PROPERTIES FOLDER test/hl/fortran)
if (BUILD_SHARED_LIBS)
- add_executable (hl_f90_tstlite-shared tstlite.f90)
+ add_executable (hl_f90_tstlite-shared tstlite.F90)
TARGET_NAMING (hl_f90_tstlite-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstlite-shared SHARED " " " ")
target_link_libraries (hl_f90_tstlite-shared ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET})
@@ -49,7 +49,7 @@ if (BUILD_SHARED_LIBS)
endif (BUILD_SHARED_LIBS)
#-- Adding test for hl_f90_tstimage
-add_executable (hl_f90_tstimage tstimage.f90)
+add_executable (hl_f90_tstimage tstimage.F90)
TARGET_NAMING (hl_f90_tstimage STATIC)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstimage STATIC " " " ")
target_link_libraries (hl_f90_tstimage ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
@@ -57,7 +57,7 @@ target_include_directories (hl_f90_tstimage PRIVATE ${CMAKE_Fortran_MODULE_DIREC
set_target_properties (hl_f90_tstimage PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstimage PROPERTIES FOLDER test/hl/fortran)
if (BUILD_SHARED_LIBS)
- add_executable (hl_f90_tstimage-shared tstimage.f90)
+ add_executable (hl_f90_tstimage-shared tstimage.F90)
TARGET_NAMING (hl_f90_tstimage-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstimage-shared SHARED " " " ")
target_link_libraries (hl_f90_tstimage-shared ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET})
@@ -70,7 +70,7 @@ if (BUILD_SHARED_LIBS)
endif (BUILD_SHARED_LIBS)
#-- Adding test for hl_f90_tsttable
-add_executable (hl_f90_tsttable tsttable.f90)
+add_executable (hl_f90_tsttable tsttable.F90)
TARGET_NAMING (hl_f90_tsttable STATIC)
TARGET_FORTRAN_PROPERTIES (hl_f90_tsttable STATIC " " " ")
target_link_libraries (hl_f90_tsttable ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
@@ -78,7 +78,7 @@ target_include_directories (hl_f90_tsttable PRIVATE ${CMAKE_Fortran_MODULE_DIREC
set_target_properties (hl_f90_tsttable PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tsttable PROPERTIES FOLDER test/hl/fortran)
if (BUILD_SHARED_LIBS)
- add_executable (hl_f90_tsttable-shared tsttable.f90)
+ add_executable (hl_f90_tsttable-shared tsttable.F90)
TARGET_NAMING (hl_f90_tsttable-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tsttable-shared SHARED " " " ")
target_link_libraries (hl_f90_tsttable-shared ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET})
diff --git a/hl/fortran/test/Makefile.am b/hl/fortran/test/Makefile.am
index fa3a803..18fdaf3 100644
--- a/hl/fortran/test/Makefile.am
+++ b/hl/fortran/test/Makefile.am
@@ -39,10 +39,10 @@ check_PROGRAMS=$(TEST_PROG)
LDADD= $(LIBH5F_HL) $(LIBH5F) $(LIBH5_HL) $(LIBHDF5)
# Source files for the programs
-tstds_SOURCES=tstds.f90
-tstlite_SOURCES=tstlite.f90
-tstimage_SOURCES=tstimage.f90
-tsttable_SOURCES=tsttable.f90
+tstds_SOURCES=tstds.F90
+tstlite_SOURCES=tstlite.F90
+tstimage_SOURCES=tstimage.F90
+tsttable_SOURCES=tsttable.F90
# Temporary files.
CHECK_CLEANFILES+=dsetf[1-5].h5 f1img.h5 f1tab.h5 tstds.h5
diff --git a/hl/fortran/test/Makefile.in b/hl/fortran/test/Makefile.in
index 6725d26..ee4b206 100644
--- a/hl/fortran/test/Makefile.in
+++ b/hl/fortran/test/Makefile.in
@@ -112,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = tstds$(EXEEXT) tstlite$(EXEEXT) tstimage$(EXEEXT) \
@@ -149,14 +150,17 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
-FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS)
-LTFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=compile $(FC) $(AM_FCFLAGS) $(FCFLAGS)
-AM_V_FC = $(am__v_FC_@AM_V@)
-am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
-am__v_FC_0 = @echo " FC " $@;
-am__v_FC_1 =
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
+PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
+LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(FC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_FCFLAGS) $(FCFLAGS)
+AM_V_PPFC = $(am__v_PPFC_@AM_V@)
+am__v_PPFC_ = $(am__v_PPFC_@AM_DEFAULT_V@)
+am__v_PPFC_0 = @echo " PPFC " $@;
+am__v_PPFC_1 =
FCLD = $(FC)
FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
@@ -460,14 +464,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -477,13 +488,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -525,6 +535,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
@@ -674,10 +696,10 @@ TEST_PROG = tstds tstlite tstimage tsttable
LDADD = $(LIBH5F_HL) $(LIBH5F) $(LIBH5_HL) $(LIBHDF5)
# Source files for the programs
-tstds_SOURCES = tstds.f90
-tstlite_SOURCES = tstlite.f90
-tstimage_SOURCES = tstimage.f90
-tsttable_SOURCES = tsttable.f90
+tstds_SOURCES = tstds.F90
+tstlite_SOURCES = tstlite.F90
+tstimage_SOURCES = tstimage.F90
+tsttable_SOURCES = tsttable.F90
# Mark this directory as part of the Fortran API (this affects output
# from tests in conclude.am)
@@ -705,7 +727,7 @@ TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
all: all-am
.SUFFIXES:
-.SUFFIXES: .f90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
+.SUFFIXES: .F90 .lo .log .o .obj .sh .sh$(EXEEXT) .trs
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence.am $(top_srcdir)/config/conclude.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -769,14 +791,14 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
-.f90.o:
- $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
+.F90.o:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ $<
-.f90.obj:
- $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) `$(CYGPATH_W) '$<'`
+.F90.obj:
+ $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-.f90.lo:
- $(AM_V_FC)$(LTFCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
+.F90.lo:
+ $(AM_V_PPFC)$(LTPPFCCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
diff --git a/hl/fortran/test/tstds.f90 b/hl/fortran/test/tstds.F90
index cbf6c38..cbf6c38 100644
--- a/hl/fortran/test/tstds.f90
+++ b/hl/fortran/test/tstds.F90
diff --git a/hl/fortran/test/tstimage.f90 b/hl/fortran/test/tstimage.F90
index 0bff6b2..0bff6b2 100644
--- a/hl/fortran/test/tstimage.f90
+++ b/hl/fortran/test/tstimage.F90
diff --git a/hl/fortran/test/tstlite.f90 b/hl/fortran/test/tstlite.F90
index d035b89..0eb005b 100644
--- a/hl/fortran/test/tstlite.f90
+++ b/hl/fortran/test/tstlite.F90
@@ -16,6 +16,7 @@
!
! This file contains the FORTRAN90 tests for H5LT
!
+#include <H5config_f.inc>
PROGRAM lite_test
@@ -38,6 +39,7 @@ END PROGRAM lite_test
SUBROUTINE test_dataset1D()
+USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -55,11 +57,12 @@ 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
+DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: buf3 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: bufr3 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER :: i ! general purpose integer
-
+TYPE(C_PTR) :: f_ptr
+integer(HID_T) :: mytype
CALL test_begin(' Make/Read datasets (1D) ')
@@ -101,7 +104,7 @@ CALL h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr1, dims, err
!
DO i = 1, DIM1
IF ( buf1(i) .NE. bufr1(i) ) THEN
- PRINT *, 'read buffer differs from write buffer'
+ PRINT *, 'read buffer differs from write buffer (I)'
PRINT *, bufr1(i), ' and ', buf1(i)
STOP
ENDIF
@@ -126,7 +129,7 @@ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_REAL, bufr2, dims, errcod
!
DO i = 1, DIM1
IF ( buf2(i) .NE. bufr2(i) ) THEN
- PRINT *, 'read buffer differs from write buffer'
+ PRINT *, 'read buffer differs from write buffer (R)'
PRINT *, bufr2(i), ' and ', buf2(i)
STOP
ENDIF
@@ -139,19 +142,26 @@ END DO
!
! write dataset.
!
-CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_DOUBLE, buf3, errcode)
-
+f_ptr = C_LOC(buf3(1))
+mytype = h5kind_to_type(KIND(buf3(1)), H5_REAL_KIND)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, &
+ mytype, f_ptr, errcode)
+!CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_DOUBLE, buf3, errcode)
+! h5kind_to_type(KIND(buf3(1)), H5_REAL_KIND)
!
! read dataset.
!
-CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_DOUBLE, bufr3, dims, errcode)
+f_ptr = C_LOC(bufr3(1))
+CALL h5ltread_dataset_f(file_id, dsetname3, &
+ h5kind_to_type(KIND(bufr3(1)), H5_REAL_KIND), f_ptr, 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 *, 'read buffer differs from write buffer (D)'
PRINT *, bufr3(i), ' and ', buf3(i)
STOP
ENDIF
@@ -179,6 +189,7 @@ END SUBROUTINE test_dataset1D
SUBROUTINE test_dataset2D()
+USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -199,12 +210,13 @@ 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
+REAL, DIMENSION(DIM1,DIM2), TARGET :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2), TARGET :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2), TARGET :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2), TARGET :: buf4r ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER(HSIZE_T) :: i, j, n ! general purpose integers
+TYPE(C_PTR) :: f_ptr
CALL test_begin(' Make/Read datasets (2D) ')
@@ -296,12 +308,16 @@ END DO
!
! write dataset.
!
-CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
+f_ptr = C_LOC(buf3(1,1))
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, f_ptr, 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)
+f_ptr = C_LOC(buf3r(1,1))
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
+!CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
@@ -323,12 +339,16 @@ END DO
!
! write dataset.
!
-CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
+f_ptr = C_LOC(buf4(1,1))
+CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, f_ptr, 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)
+f_ptr = C_LOC(buf4r(1,1))
+CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
+
+!CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
!
! compare read and write buffers.
@@ -366,7 +386,7 @@ END SUBROUTINE test_dataset2D
SUBROUTINE test_dataset3D()
-
+USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -387,16 +407,16 @@ 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
+REAL, DIMENSION(DIM1,DIM2,DIM3), TARGET :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2,DIM3), TARGET :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3), TARGET :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3), TARGET :: buf4r ! Data buffer
INTEGER :: rank = 3 ! Dataset rank
INTEGER :: errcode ! Error flag
INTEGER(HSIZE_T) :: i, j, k, n ! general purpose integers
INTEGER :: type_class
INTEGER(SIZE_T) :: type_size
-
+TYPE(C_PTR) :: f_ptr
CALL test_begin(' Make/Read datasets (3D) ')
@@ -492,12 +512,16 @@ END DO
!
! write dataset.
!
-CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
+f_ptr = C_LOC(buf3(1,1,1))
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, f_ptr, 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)
+f_ptr = C_LOC(buf3r(1,1,1))
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
+!CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
@@ -521,12 +545,14 @@ END DO
!
! write dataset.
!
-CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
+f_ptr = C_LOC(buf4(1,1,1))
+CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, f_ptr, errcode)
!
! read dataset.
!
-CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
+f_ptr = C_LOC(buf4r(1,1,1))
+CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
!
! compare read and write buffers.
@@ -578,6 +604,7 @@ END SUBROUTINE test_dataset3D
SUBROUTINE test_datasetND(rank)
+ USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -598,36 +625,37 @@ SUBROUTINE test_datasetND(rank)
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(HSIZE_T), DIMENSION(7) :: dimsr ! Dataset dimensions
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibuf_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibufr_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: ibuf_5 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: 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(:,:,:,:), TARGET :: rbuf_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:), TARGET :: rbufr_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: rbuf_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: rbufr_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:), TARGET :: rbuf_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:), TARGET :: rbufr_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:), TARGET :: rbuf_7 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:), TARGET :: rbufr_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:), TARGET :: dbuf_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:), TARGET :: dbufr_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: dbuf_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:), TARGET :: dbufr_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:), TARGET :: dbuf_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:), TARGET :: dbufr_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:), TARGET :: dbuf_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:), TARGET :: dbufr_7 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER(HSIZE_T) :: i, j, k, l, m, n, o, nn ! general purpose integers
INTEGER :: type_class
INTEGER(SIZE_T) :: type_size
CHARACTER(LEN=1) :: ichr1
+ TYPE(C_PTR) :: f_ptr
WRITE(ichr1,'(I1.1)') rank
CALL test_begin(' Make/Read datasets ('//ichr1//'D) ')
@@ -768,7 +796,8 @@ SUBROUTINE test_datasetND(rank)
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)
+ f_ptr = C_LOC(ibuf_5(1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, f_ptr, 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
@@ -782,7 +811,8 @@ SUBROUTINE test_datasetND(rank)
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)
+ f_ptr = C_LOC(ibufr_5(1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, f_ptr, 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
@@ -842,13 +872,20 @@ SUBROUTINE test_datasetND(rank)
! write dataset.
!
IF(rank.EQ.4)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_4, errcode)
+ f_ptr = C_LOC(rbuf_4(1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, f_ptr, errcode)
+ ! 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)
+ f_ptr = C_LOC(rbuf_5(1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, f_ptr, errcode)
ELSE IF(rank.EQ.6)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_6, errcode)
+ f_ptr = C_LOC(rbuf_6(1,1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, f_ptr, errcode)
+ !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)
+ f_ptr = C_LOC(rbuf_7(1,1,1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, f_ptr, errcode)
+ !CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_7, errcode)
ENDIF
@@ -856,13 +893,17 @@ SUBROUTINE test_datasetND(rank)
! read dataset.
!
IF(rank.EQ.4)THEN
- CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_4, dims(1:rank), errcode)
+ f_ptr = C_LOC(rbufr_4(1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
ELSE IF(rank.EQ.5)THEN
- CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_5, dims(1:rank), errcode)
+ f_ptr = C_LOC(rbufr_5(1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
ELSE IF(rank.EQ.6)THEN
- CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_6, dims(1:rank), errcode)
+ f_ptr = C_LOC(rbufr_6(1,1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
ELSE IF(rank.EQ.7)THEN
- CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_7, dims(1:rank), errcode)
+ f_ptr = C_LOC(rbufr_7(1,1,1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
ENDIF
!
@@ -919,13 +960,17 @@ SUBROUTINE test_datasetND(rank)
! write dataset.
!
IF(rank.EQ.4)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_4, errcode)
+ f_ptr = C_LOC(dbuf_4(1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.5)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_5, errcode)
+ f_ptr = C_LOC(dbuf_5(1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.6)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_6, errcode)
+ f_ptr = C_LOC(dbuf_6(1,1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.7)THEN
- CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_7, errcode)
+ f_ptr = C_LOC(dbuf_7(1,1,1,1,1,1,1))
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, f_ptr, errcode)
ENDIF
@@ -933,13 +978,17 @@ SUBROUTINE test_datasetND(rank)
! read dataset.
!
IF(rank.EQ.4)THEN
- CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_4, dims(1:rank), errcode)
+ f_ptr = C_LOC(dbufr_4(1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.5)THEN
- CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_5, dims(1:rank), errcode)
+ f_ptr = C_LOC(dbufr_5(1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.6)THEN
- CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_6, dims(1:rank), errcode)
+ f_ptr = C_LOC(dbufr_6(1,1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
ELSE IF(rank.EQ.7)THEN
- CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_7, dims(1:rank), errcode)
+ f_ptr = C_LOC(dbufr_7(1,1,1,1,1,1,1))
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
ENDIF
!
@@ -1036,6 +1085,7 @@ END SUBROUTINE test_datasetND
SUBROUTINE test_datasets()
+ USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -1058,10 +1108,10 @@ SUBROUTINE test_datasets()
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
+ REAL, DIMENSION(DIM1), TARGET :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1) , TARGET :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: bufr4 ! Data buffer
INTEGER :: i, n ! general purpose integer
INTEGER :: has ! general purpose integer
INTEGER :: type_class
@@ -1069,6 +1119,7 @@ SUBROUTINE test_datasets()
LOGICAL :: path_valid ! status of the path
CHARACTER(LEN=6) :: chr_exact
CHARACTER(LEN=8) :: chr_lg
+ TYPE(C_PTR) :: f_ptr
!
! Initialize FORTRAN predefined datatypes.
@@ -1131,12 +1182,14 @@ SUBROUTINE test_datasets()
!
! write dataset.
!
- CALL h5ltmake_dataset_float_f(file_id, dsetname3, rank, dims, buf3, errcode)
+ f_ptr = C_LOC(buf3(1))
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, f_ptr, errcode)
!
! read dataset.
!
- CALL h5ltread_dataset_float_f(file_id, dsetname3, bufr3, dims, errcode)
+ f_ptr = C_LOC(bufr3(1))
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
!
! compare read and write buffers.
@@ -1161,13 +1214,18 @@ SUBROUTINE test_datasets()
!
! write dataset.
!
+ !f_ptr = C_LOC(buf4(1))
+ !CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, f_ptr, errcode)
CALL h5ltmake_dataset_double_f(file_id, dsetname4, rank, dims, buf4, errcode)
!
! read dataset.
!
+ !f_ptr = C_LOC(buf4(1))
+ !CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, f_ptr, errcode)
CALL h5ltread_dataset_double_f(file_id, dsetname4, bufr4, dims, errcode)
+
!
! compare read and write buffers.
!
@@ -1335,6 +1393,7 @@ END SUBROUTINE test_datasets
SUBROUTINE test_attributes()
+ USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -1358,10 +1417,10 @@ SUBROUTINE test_attributes()
! CHARACTER(LEN=18) :: bufr_c_lg ! 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
+ REAL, DIMENSION(DIM1), target :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1), target :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: bufr4 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER :: i, n ! general purpose integer
INTEGER(SIZE_T) size ! size of attribute array
@@ -1373,7 +1432,8 @@ SUBROUTINE test_attributes()
INTEGER :: rank = 1 ! Dataset rank
CHARACTER(LEN=5), PARAMETER :: dsetname1 = "dset1" ! Dataset name
INTEGER, DIMENSION(DIM1) :: buf ! Data buffer
-
+ INTEGER(SIZE_T) :: SizeOf_buf_type
+ TYPE(C_PTR) :: f_ptr
!
! Initialize FORTRAN predefined datatypes.
@@ -1441,11 +1501,26 @@ SUBROUTINE test_attributes()
!
! write attribute.
!
- CALL h5ltset_attribute_float_f(file_id,dsetname1,attrname3,buf3,size,errcode)
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ SizeOf_buf_type = STORAGE_SIZE(buf3(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf3(1))
+#endif
+ f_ptr = C_LOC(buf3(1))
+ CALL h5ltset_attribute_f(file_id,dsetname1,attrname3,f_ptr,"REAL", SizeOf_buf_type, size,errcode)
+ !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)
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ SizeOf_buf_type = STORAGE_SIZE(bufr3(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(bufr3(1))
+#endif
+
+ f_ptr = C_LOC(bufr3(1))
+ CALL h5ltget_attribute_f(file_id,dsetname1,attrname3,f_ptr,"REAL",SizeOf_buf_type,errcode)
+ !CALL h5ltget_attribute_float_f(file_id,dsetname1,attrname3,bufr3,errcode)
!
! compare read and write buffers.
@@ -1464,17 +1539,36 @@ SUBROUTINE test_attributes()
! double
!-------------------------------------------------------------------------
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ SizeOf_buf_type = STORAGE_SIZE(buf4(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(buf4(1))
+#endif
+
+ IF(SizeOf_buf_type.LT.16)THEN ! MSB can't handle 16 byte reals
+
CALL test_begin(' Set/Get attributes double ')
-
+
!
! write attribute.
!
- CALL h5ltset_attribute_double_f(file_id,dsetname1,attrname4,buf4,size,errcode)
+ f_ptr = C_LOC(buf4(1))
+ CALL h5ltset_attribute_f(file_id,dsetname1,attrname4,f_ptr,"real", SizeOf_buf_type, size, errcode)
+
+! CALL h5ltset_attribute_double_f(file_id,dsetname1,attrname4,buf4, size, errcode)
!
! read attribute.
!
- CALL h5ltget_attribute_double_f(file_id,dsetname1,attrname4,bufr4,errcode)
+
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ SizeOf_buf_type = STORAGE_SIZE(bufr4(1), c_size_t)/STORAGE_SIZE(c_char_'a',c_size_t)
+#else
+ SizeOf_buf_type = SIZEOF(bufr4(1))
+#endif
+
+ f_ptr = C_LOC(bufr4(1))
+ CALL h5ltget_attribute_f(file_id,dsetname1,attrname4,f_ptr,"REAL",SizeOf_buf_type,errcode)
!
! compare read and write buffers.
@@ -1489,6 +1583,8 @@ SUBROUTINE test_attributes()
CALL passed()
+ ENDIF
+
!-------------------------------------------------------------------------
! string
!-------------------------------------------------------------------------
@@ -1604,11 +1700,6 @@ SUBROUTINE test_attributes()
!
END SUBROUTINE test_attributes
-
-
-
-
-
!-------------------------------------------------------------------------
! test_begin
!-------------------------------------------------------------------------
diff --git a/hl/fortran/test/tsttable.f90 b/hl/fortran/test/tsttable.F90
index bb88abf..74029a5 100644
--- a/hl/fortran/test/tsttable.f90
+++ b/hl/fortran/test/tsttable.F90
@@ -16,12 +16,12 @@
!
! This file contains the FORTRAN90 tests for H5LT
!
+#include <H5config_f.inc>
PROGRAM table_test
CALL test_table1()
-
END PROGRAM table_test
@@ -71,7 +71,24 @@ SUBROUTINE test_table1()
INTEGER(SIZE_T), DIMENSION(1:nfields) :: field_sizesr ! field sizes
INTEGER(SIZE_T) :: type_sizeout = 0 ! size of the datatype
INTEGER :: maxlen = 0 ! max chararter length of a field name
-
+ INTEGER :: Cs_sizeof_double = H5_SIZEOF_DOUBLE ! C's sizeof double
+ INTEGER :: SIZEOF_X
+ LOGICAL :: Exclude_double
+
+ ! Find size of DOUBLE PRECISION
+#ifdef H5_FORTRAN_HAVE_STORAGE_SIZE
+ SIZEOF_X = storage_size(bufd(1))/storage_size(c_char_'a')
+#else
+ SIZEOF_X = SIZEOF(bufd(1))
+#endif
+
+ ! If Fortran DOUBLE PRECISION and C DOUBLE sizeofs don't match then disable
+ ! creating a DOUBLE RECISION field, and instead create a REAL field. This
+ ! is needed to handle when DOUBLE PRECISION is promoted via a compiler flag.
+ Exclude_double = .FALSE.
+ IF(Cs_sizeof_double.NE.SIZEOF_X)THEN
+ Exclude_double = .TRUE.
+ ENDIF
!
! Initialize the data arrays.
@@ -111,7 +128,11 @@ SUBROUTINE test_table1()
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)
+ IF(exclude_double)THEN
+ CALL h5tget_size_f(H5T_NATIVE_REAL, type_sized, errcode)
+ ELSE
+ CALL h5tget_size_f(H5T_NATIVE_DOUBLE, type_sized, errcode)
+ ENDIF
CALL h5tget_size_f(H5T_NATIVE_REAL, type_sizer, errcode)
type_size = type_sizec + type_sizei + type_sized + type_sizer
@@ -120,7 +141,11 @@ SUBROUTINE test_table1()
!
field_types(1) = type_id_c
field_types(2) = H5T_NATIVE_INTEGER
- field_types(3) = H5T_NATIVE_DOUBLE
+ IF(exclude_double)THEN
+ field_types(3) = H5T_NATIVE_REAL
+ ELSE
+ field_types(3) = H5T_NATIVE_DOUBLE
+ ENDIF
field_types(4) = H5T_NATIVE_REAL
!
@@ -168,9 +193,13 @@ SUBROUTINE test_table1()
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)
+ IF(exclude_double)THEN
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
+ bufr,errcode)
+ ELSE
+ CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
+ bufd,errcode)
+ ENDIF
CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
bufr,errcode)
@@ -214,7 +243,6 @@ SUBROUTINE test_table1()
CALL h5tbread_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
bufir,errcode)
-
!
! compare read and write buffers.
!
@@ -226,19 +254,39 @@ SUBROUTINE test_table1()
ENDIF
END DO
- CALL h5tbread_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
- bufdr,errcode)
+ IF(exclude_double)THEN
+
+ CALL h5tbread_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
+ bufrr,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
+ 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
+
+ ELSE
+ 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
+ ENDIF
+
+
CALL h5tbread_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
bufrr,errcode)
@@ -254,9 +302,9 @@ SUBROUTINE test_table1()
ENDIF
END DO
-
CALL passed()
+
!-------------------------------------------------------------------------
! write field
!-------------------------------------------------------------------------
@@ -269,8 +317,13 @@ SUBROUTINE test_table1()
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)
+ IF(exclude_double)THEN
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
+ bufr,errcode)
+ ELSE
+ CALL h5tbwrite_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
+ bufd,errcode)
+ ENDIF
CALL h5tbwrite_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
bufr,errcode)
@@ -308,20 +361,35 @@ SUBROUTINE test_table1()
STOP
ENDIF
END DO
-
- 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
+ IF(exclude_double)THEN
+ CALL h5tbread_field_index_f(file_id,dsetname1,3,start,nrecords,type_sized,&
+ 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
+ ELSE
+ 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
+ ENDIF
CALL h5tbread_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
bufrr,errcode)
diff --git a/hl/src/Makefile.in b/hl/src/Makefile.in
index d5b0b1e..8039d15 100644
--- a/hl/src/Makefile.in
+++ b/hl/src/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -165,7 +166,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -450,14 +451,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -467,13 +475,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -515,6 +522,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/test/Makefile.in b/hl/test/Makefile.in
index 6fc324b..4614152 100644
--- a/hl/test/Makefile.in
+++ b/hl/test/Makefile.in
@@ -112,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = H5srcdir_str.h
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = test_lite$(EXEEXT) test_image$(EXEEXT) \
@@ -168,7 +169,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -487,14 +488,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -504,13 +512,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -552,6 +559,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/tools/Makefile.in b/hl/tools/Makefile.in
index 77049d3..653c273 100644
--- a/hl/tools/Makefile.in
+++ b/hl/tools/Makefile.in
@@ -106,7 +106,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -449,14 +450,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -466,13 +474,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -514,6 +521,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/hl/tools/gif2h5/Makefile.in b/hl/tools/gif2h5/Makefile.in
index 3da84e1..6ebf126 100644
--- a/hl/tools/gif2h5/Makefile.in
+++ b/hl/tools/gif2h5/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = h52giftest.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -150,7 +151,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -463,14 +464,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -480,13 +488,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -528,6 +535,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/m4/aclocal_fc.m4 b/m4/aclocal_fc.m4
index cda2fee..b7ce048 100644
--- a/m4/aclocal_fc.m4
+++ b/m4/aclocal_fc.m4
@@ -63,6 +63,20 @@ dnl was required" problem when libtool is also used
dnl [1] MPICH.org
dnl
+dnl See if the fortran compiler supports the intrinsic module "ISO_FORTRAN_ENV"
+
+AC_DEFUN([PAC_PROG_FC_ISO_FORTRAN_ENV],[
+ HAVE_ISO_FORTRAN_ENV="no"
+ AC_MSG_CHECKING([if Fortran compiler supports intrinsic module ISO_FORTRAN_ENV])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ PROGRAM main
+ USE, INTRINSIC :: ISO_FORTRAN_ENV
+ END PROGRAM
+ ])],[AC_MSG_RESULT([yes])
+ HAVE_ISO_FORTRAN_ENV="yes"],
+ [AC_MSG_RESULT([no])])
+])
+
dnl See if the fortran compiler supports the intrinsic function "SIZEOF"
AC_DEFUN([PAC_PROG_FC_SIZEOF],[
@@ -111,38 +125,56 @@ AC_DEFUN([PAC_PROG_FC_STORAGE_SIZE],[
])
-dnl Check to see if -r8 was specified to determine if we need to
-dnl compile the DOUBLE PRECISION interfaces.
+dnl Check to see C_LONG_DOUBLE is available
+
+AC_DEFUN([PAC_PROG_FC_HAVE_C_LONG_DOUBLE],[
+ HAVE_C_LONG_DOUBLE_FORTRAN="no"
+ AC_MSG_CHECKING([if Fortran compiler supports intrinsic C_LONG_DOUBLE])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ PROGRAM main
+ USE ISO_C_BINDING
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END PROGRAM
+ ])], [AC_MSG_RESULT([yes])
+ HAVE_C_LONG_DOUBLE_FORTRAN="yes"],
+ [AC_MSG_RESULT([no])])
+])
+
+dnl Check if C_LONG_DOUBLE is different from C_DOUBLE
-AC_DEFUN([PAC_PROG_FC_DEFAULT_REALisDBLE],[
- FORTRAN_DEFAULT_REALisDBLE="no"
- AC_MSG_CHECKING([if Fortran default REAL is DOUBLE PRECISION])
+if test "X$FORTRAN_HAVE_C_LONG_DOUBLE" = "Xyes"; then
+AC_DEFUN([PAC_PROG_FC_C_LONG_DOUBLE_EQ_C_DOUBLE],[
+ C_LONG_DOUBLE_IS_UNIQUE_FORTRAN="no"
+ AC_MSG_CHECKING([if Fortran C_LONG_DOUBLE is different from C_DOUBLE])
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
MODULE type_mod
+ USE ISO_C_BINDING
INTERFACE h5t
- MODULE PROCEDURE h5t_real
- MODULE PROCEDURE h5t_dble
+ MODULE PROCEDURE h5t_c_double
+ MODULE PROCEDURE h5t_c_long_double
END INTERFACE
CONTAINS
- SUBROUTINE h5t_real(r)
- REAL :: r
- END SUBROUTINE h5t_real
- SUBROUTINE h5t_dble(d)
- DOUBLE PRECISION :: d
- END SUBROUTINE h5t_dble
+ SUBROUTINE h5t_c_double(r)
+ REAL(KIND=C_DOUBLE) :: r
+ END SUBROUTINE h5t_c_double
+ SUBROUTINE h5t_c_long_double(d)
+ REAL(KIND=C_LONG_DOUBLE) :: d
+ END SUBROUTINE h5t_c_long_double
END MODULE type_mod
PROGRAM main
+ USE ISO_C_BINDING
USE type_mod
- REAL :: r
- DOUBLE PRECISION :: d
+ REAL(KIND=C_DOUBLE) :: r
+ REAL(KIND=C_LONG_DOUBLE) :: d
CALL h5t(r)
CALL h5t(d)
END PROGRAM main
- ])], [AC_MSG_RESULT([no])],
- [AC_MSG_RESULT([yes])
- FORTRAN_DEFAULT_REALisDBLE="yes"])
+ ])], [AC_MSG_RESULT([yes])
+ C_LONG_DOUBLE_IS_UNIQUE_FORTRAN="yes"],
+ [AC_MSG_RESULT([no])])
])
+fi
dnl Checking if the compiler supports the required Fortran 2003 features and
dnl disable Fortran 2003 if it does not.
@@ -152,7 +184,6 @@ AC_DEFUN([PAC_PROG_FC_HAVE_F2003_REQUIREMENTS],[
dnl --------------------------------------------------------------------
dnl Default for FORTRAN 2003 compliant compilers
dnl
- HAVE_FORTRAN_2003="no"
HAVE_F2003_REQUIREMENTS="no"
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[
@@ -280,4 +311,280 @@ dnl Try link a simple MPI program.
dnl Change to the C language
AC_LANG_POP(Fortran)
])
+
+dnl ------------------------------------------------------
+dnl Determine the available KINDs for REALs and INTEGERs
+dnl ------------------------------------------------------
+dnl
+dnl This is a runtime test.
+dnl
+AC_DEFUN([PAC_FC_AVAIL_KINDS],[
+AC_LANG_PUSH([Fortran])
+rm -f pac_fconftest.out
+
+AC_RUN_IFELSE([
+ AC_LANG_SOURCE([
+ PROGRAM main
+ IMPLICIT NONE
+ INTEGER :: ik, k, lastkind, max_decimal_prec
+ INTEGER :: num_rkinds, num_ikinds
+ num_ikinds = 0
+ lastkind=SELECTED_INT_KIND(1)
+ OPEN(8, FILE='pac_fconftest.out', form='formatted')
+ ! Find integer KINDs
+ DO ik=2,36
+ k = SELECTED_INT_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1) THEN
+ num_ikinds = num_ikinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ ! Find real KINDs
+ num_rkinds = 0
+ lastkind=SELECTED_REAL_KIND(1)
+ max_decimal_prec = 1
+ DO ik=2,36
+ k = SELECTED_REAL_KIND(ik)
+ IF (k .NE. lastkind) THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)',ADVANCE='NO') lastkind
+ lastkind = k
+ IF(k.GT.0) WRITE(8,'(A)',ADVANCE='NO') ','
+ max_decimal_prec = ik
+ ENDIF
+ IF (k .LE. 0) EXIT
+ ENDDO
+ IF (lastkind.NE.-1)THEN
+ num_rkinds = num_rkinds + 1
+ WRITE(8,'(I0)') lastkind
+ ELSE
+ WRITE(8,'()')
+ ENDIF
+ WRITE(8,'(I0)') max_decimal_prec
+ WRITE(8,'(I0)') num_ikinds
+ WRITE(8,'(I0)') num_rkinds
+ END
+ ])
+],[
+ if test -s pac_fconftest.out ; then
+ dnl The output from the above program will be:
+ dnl -- LINE 1 -- valid integer kinds (comma seperated list)
+ dnl -- LINE 2 -- valid real kinds (comma seperated list)
+ dnl -- LINE 3 -- max decimal precision for reals
+ dnl -- LINE 4 -- number of valid integer kinds
+ dnl -- LINE 5 -- number of valid real kinds
+
+ pac_validIntKinds="`perl -ne '$. == 1 && print && exit' pac_fconftest.out`"
+ pac_validRealKinds="`perl -ne '$. == 2 && print && exit' pac_fconftest.out`"
+ PAC_FC_MAX_REAL_PRECISION="`perl -ne '$. == 3 && print && exit' pac_fconftest.out`"
+ AC_DEFINE_UNQUOTED([PAC_FC_MAX_REAL_PRECISION], $PAC_FC_MAX_REAL_PRECISION, [Define Fortran Maximum Real Decimal Precision])
+
+ PAC_FC_ALL_INTEGER_KINDS="{`echo $pac_validIntKinds`}"
+ PAC_FC_ALL_REAL_KINDS="{`echo $pac_validRealKinds`}"
+
+ H5CONFIG_F_NUM_IKIND="INTEGER, PARAMETER :: num_ikinds = `perl -ne '$. == 4 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_IKIND="INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/`echo $pac_validIntKinds`/)"
+ H5CONFIG_F_NUM_RKIND="INTEGER, PARAMETER :: num_rkinds = `perl -ne '$. == 5 && print && exit' pac_fconftest.out`"
+ H5CONFIG_F_RKIND="INTEGER, DIMENSION(1:num_rkinds) :: rkind = (/`echo $pac_validRealKinds`/)"
+
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_NUM_RKIND], $H5CONFIG_F_NUM_RKIND, [Define number of valid Fortran REAL KINDs])
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_NUM_IKIND], $H5CONFIG_F_NUM_IKIND, [Define number of valid Fortran INTEGER KINDs])
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_RKIND], $H5CONFIG_F_RKIND, [Define valid Fortran REAL KINDs])
+ AC_DEFINE_UNQUOTED([H5CONFIG_F_IKIND], $H5CONFIG_F_IKIND, [Define valid Fortran INTEGER KINDs])
+
+ AC_MSG_CHECKING([for Fortran INTEGER KINDs])
+ AC_MSG_RESULT([$PAC_FC_ALL_INTEGER_KINDS])
+ AC_MSG_CHECKING([for Fortran REAL KINDs])
+ AC_MSG_RESULT([$PAC_FC_ALL_REAL_KINDS])
+ AC_MSG_CHECKING([for Fortran REALs maximum decimal precision])
+ AC_MSG_RESULT([$PAC_FC_MAX_REAL_PRECISION])
+ else
+ AC_MSG_RESULT([Error])
+ AC_MSG_WARN([No output from test program!])
+ fi
+ rm -f pac_fconftest.out
+],[
+ AC_MSG_RESULT([Error])
+ AC_MSG_WARN([Failed to run program to determine available KINDs])
+],[])
+
+AC_LANG_POP([Fortran])
+])
+AC_DEFUN([PAC_FC_SIZEOF_INT_KINDS],[
+AC_REQUIRE([PAC_FC_AVAIL_KINDS])
+AC_MSG_CHECKING([sizeof of available INTEGER KINDs])
+AC_LANG_PUSH([Fortran])
+pack_int_sizeof=""
+rm -f pac_fconftest.out
+
+for kind in `echo $pac_validIntKinds | perl -pe 's/,/ /g'`; do
+ AC_LANG_CONFTEST([
+ AC_LANG_SOURCE([
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER (KIND=$kind) a
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,'(I0)') $FC_SIZEOF_A
+ CLOSE(8)
+ END
+ ])
+ ])
+ AC_RUN_IFELSE([],[
+ if test -s pac_fconftest.out ; then
+ sizes="`cat pac_fconftest.out`"
+ pack_int_sizeof="$pack_int_sizeof $sizes,"
+ else
+ AC_MSG_WARN([No output from test program!])
+ fi
+ rm -f pac_fconftest.out
+ ],[
+ AC_MSG_WARN([Fortran program fails to build or run!])
+ ],[
+ pack_int_sizeof="$2"
+ ])
+done
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF="{`echo $pack_int_sizeof | perl -pe 's/,$//' | perl -pe 's/ //g'`}"
+AC_MSG_RESULT([$PAC_FC_ALL_INTEGER_KINDS_SIZEOF])
+AC_LANG_POP([Fortran])
+])
+
+AC_DEFUN([PAC_FC_SIZEOF_REAL_KINDS],[
+AC_REQUIRE([PAC_FC_AVAIL_KINDS])
+AC_MSG_CHECKING([sizeof of available REAL KINDs])
+AC_LANG_PUSH([Fortran])
+pack_real_sizeof=""
+rm -f pac_fconftest.out
+for kind in `echo $pac_validRealKinds| perl -pe 's/,/ /g'`; do
+ AC_LANG_CONFTEST([
+ AC_LANG_SOURCE([
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ REAL (KIND=$kind) :: a
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,'(I0)') $FC_SIZEOF_A
+ CLOSE(8)
+ END
+ ])
+ ])
+ AC_RUN_IFELSE([],[
+ if test -s pac_fconftest.out ; then
+ sizes="`cat pac_fconftest.out`"
+ pack_real_sizeof="$pack_real_sizeof $sizes,"
+ else
+ AC_MSG_WARN([No output from test program!])
+ fi
+ rm -f pac_fconftest.out
+ ],[
+ AC_MSG_WARN([Fortran program fails to build or run!])
+ ],[
+ pack_real_sizeof="$2"
+ ])
+done
+PAC_FC_ALL_REAL_KINDS_SIZEOF="{`echo $pack_real_sizeof | perl -pe 's/,$//' | perl -pe 's/ //g'`}"
+AC_MSG_RESULT([$PAC_FC_ALL_REAL_KINDS_SIZEOF])
+AC_LANG_POP([Fortran])
+])
+
+AC_DEFUN([PAC_FC_NATIVE_INTEGER],[
+AC_REQUIRE([PAC_FC_AVAIL_KINDS])
+AC_MSG_CHECKING([sizeof of native KINDS])
+AC_LANG_PUSH([Fortran])
+pack_int_sizeof=""
+rm -f pac_fconftest.out
+ AC_LANG_CONFTEST([
+ AC_LANG_SOURCE([
+ PROGRAM main
+ USE ISO_C_BINDING
+ IMPLICIT NONE
+ INTEGER a
+ REAL b
+ DOUBLE PRECISION c
+ OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
+ WRITE(8,*) $FC_SIZEOF_A
+ WRITE(8,*) kind(a)
+ WRITE(8,*) $FC_SIZEOF_B
+ WRITE(8,*) kind(b)
+ WRITE(8,*) $FC_SIZEOF_C
+ WRITE(8,*) kind(c)
+ CLOSE(8)
+ END
+ ])
+ ])
+ AC_RUN_IFELSE([],[
+ if test -s pac_fconftest.out ; then
+ PAC_FORTRAN_NATIVE_INTEGER_KIND="`perl -ne '$. == 1 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_INTEGER_SIZEOF="`perl -ne '$. == 2 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_REAL_KIND="`perl -ne '$. == 3 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_REAL_SIZEOF="`perl -ne '$. == 4 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_DOUBLE_KIND="`perl -ne '$. == 5 && print && exit' pac_fconftest.out`"
+ PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF="`perl -ne '$. == 6 && print && exit' pac_fconftest.out`"
+ else
+ AC_MSG_WARN([No output from test program!])
+ fi
+ rm -f pac_fconftest.out
+ ],[
+ AC_MSG_WARN([Fortran program fails to build or run!])
+ ],[
+ pack_int_sizeof="$2"
+ ])
+AC_MSG_RESULT([$pack_int_sizeof])
+AC_LANG_POP([Fortran])
+])
+
+AC_DEFUN([PAC_FC_LDBL_DIG],[
+AC_MSG_CHECKING([maximum decimal precision for C])
+rm -f pac_Cconftest.out
+ AC_LANG_CONFTEST([
+ AC_LANG_PROGRAM([
+ #include <float.h>
+ #include <stdio.h>
+ #define CHECK_FLOAT128 $ac_cv_sizeof___float128
+ #if CHECK_FLOAT128!=0
+ # if $HAVE_QUADMATH!=0
+ #include <quadmath.h>
+ # endif
+ # ifdef FLT128_DIG
+ #define C_FLT128_DIG FLT128_DIG
+ # else
+ #define C_FLT128_DIG 0
+ # endif
+ #else
+ #define C_FLT128_DIG 0
+ #endif
+ #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+ #define C_LDBL_DIG DECIMAL_DIG
+ #else
+ #define C_LDBL_DIG LDBL_DIG
+ #endif
+ ],[[
+ FILE * pFile;
+ pFile = fopen("pac_Cconftest.out","w");
+ fprintf(pFile, "%d\n%d\n", C_LDBL_DIG, C_FLT128_DIG);
+ ]])
+ ])
+ AC_RUN_IFELSE([],[
+ if test -s pac_Cconftest.out ; then
+ LDBL_DIG="`perl -ne '$. == 1 && print && exit' pac_Cconftest.out`"
+ FLT128_DIG="`perl -ne '$. == 2 && print && exit' pac_Cconftest.out`"
+ else
+ AC_MSG_WARN([No output from test program!])
+ fi
+ rm -f pac_Cconftest.out
+ ],[
+ AC_MSG_ERROR([C program fails to build or run!])
+ ],[])
+])
+
+
diff --git a/src/H5config.h.in b/src/H5config.h.in
index c0f4466..ad8dcf9 100644
--- a/src/H5config.h.in
+++ b/src/H5config.h.in
@@ -30,6 +30,39 @@
/* As FC_FUNC, but for C identifiers containing underscores. */
#undef FC_FUNC_
+/* Define if Fortran C_LONG_DOUBLE is different from C_DOUBLE */
+#undef FORTRAN_C_LONG_DOUBLE_IS_UNIQUE
+
+/* Define if we have Fortran C_LONG_DOUBLE */
+#undef FORTRAN_HAVE_C_LONG_DOUBLE
+
+/* Define if we have Fortran intrinsic C_SIZEOF */
+#undef FORTRAN_HAVE_C_SIZEOF
+
+/* Define if we have Fortran intrinsic SIZEOF */
+#undef FORTRAN_HAVE_SIZEOF
+
+/* Define if we have Fortran intrinsic STORAGE_SIZE */
+#undef FORTRAN_HAVE_STORAGE_SIZE
+
+/* Determine the size of C long double */
+#undef FORTRAN_SIZEOF_LONG_DOUBLE
+
+/* Define valid Fortran INTEGER KINDs */
+#undef H5CONFIG_F_IKIND
+
+/* Define number of valid Fortran INTEGER KINDs */
+#undef H5CONFIG_F_NUM_IKIND
+
+/* Define number of valid Fortran REAL KINDs */
+#undef H5CONFIG_F_NUM_RKIND
+
+/* Define valid Fortran REAL KINDs */
+#undef H5CONFIG_F_RKIND
+
+/* Define valid Fortran REAL KINDs Sizeof */
+#undef H5CONFIG_F_RKIND_SIZEOF
+
/* Define to 1 if you have the `alarm' function. */
#undef HAVE_ALARM
@@ -82,6 +115,9 @@
/* Define if support for szip filter is enabled */
#undef HAVE_FILTER_SZIP
+/* Determine if __float128 is available */
+#undef HAVE_FLOAT128
+
/* Define to 1 if you have the `fork' function. */
#undef HAVE_FORK
@@ -112,6 +148,9 @@
/* Define if the compiler understands the __FUNCTION__ keyword */
#undef HAVE_FUNCTION
+/* Determine if INTEGER*16 is available */
+#undef HAVE_Fortran_INTEGER_SIZEOF_16
+
/* Define to 1 if you have the `GetConsoleScreenBufferInfo' function. */
#undef HAVE_GETCONSOLESCREENBUFFERINFO
@@ -212,6 +251,9 @@
/* Define to 1 if you have the <pthread.h> header file. */
#undef HAVE_PTHREAD_H
+/* Define to 1 if you have the <quadmath.h> header file. */
+#undef HAVE_QUADMATH_H
+
/* Define to 1 if you have the `random' function. */
#undef HAVE_RANDOM
@@ -418,6 +460,12 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
+/* Determine the maximum decimal precision in C */
+#undef PAC_C_MAX_REAL_PRECISION
+
+/* Define Fortran Maximum Real Decimal Precision */
+#undef PAC_FC_MAX_REAL_PRECISION
+
/* Width for printf() for type `long long' or `__int64', use `ll' */
#undef PRINTF_LL_WIDTH
@@ -535,6 +583,12 @@
/* The size of `unsigned', as computed by sizeof. */
#undef SIZEOF_UNSIGNED
+/* The size of `_Quad', as computed by sizeof. */
+#undef SIZEOF__QUAD
+
+/* The size of `__float128', as computed by sizeof. */
+#undef SIZEOF___FLOAT128
+
/* The size of `__int64', as computed by sizeof. */
#undef SIZEOF___INT64
diff --git a/src/Makefile.in b/src/Makefile.in
index 8a60a77..5f2ef19 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -114,7 +114,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = H5config.h
+CONFIG_HEADER = H5config.h $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = libhdf5.settings
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -228,7 +228,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -513,14 +513,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -530,13 +537,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -578,6 +584,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/src/libhdf5.settings.in b/src/libhdf5.settings.in
index 1eed645..2355543 100644
--- a/src/libhdf5.settings.in
+++ b/src/libhdf5.settings.in
@@ -39,7 +39,6 @@ Languages:
----------
Fortran: @HDF_FORTRAN@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran Compiler: @FC_VERSION@
-@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran 2003 Compiler: @HAVE_FORTRAN_2003@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ Fortran Flags: @FCFLAGS@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ H5 Fortran Flags: @H5_FCFLAGS@
@BUILD_FORTRAN_CONDITIONAL_TRUE@ AM Fortran Flags: @AM_FCFLAGS@
diff --git a/test/Makefile.in b/test/Makefile.in
index 8b36650..d3f1b86 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -120,7 +120,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testcheck_version.sh testerror.sh H5srcdir_str.h \
testlibinfo.sh testlinks_env.sh test_plugin.sh
CONFIG_CLEAN_VPATH_FILES =
@@ -535,7 +536,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -855,14 +856,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -872,13 +880,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -920,6 +927,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/testpar/Makefile.in b/testpar/Makefile.in
index dc339cd..5797dfc 100644
--- a/testpar/Makefile.in
+++ b/testpar/Makefile.in
@@ -108,7 +108,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = t_mpi$(EXEEXT) testphdf5$(EXEEXT) t_cache$(EXEEXT) \
@@ -170,7 +171,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -482,14 +483,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -499,13 +507,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -547,6 +554,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/Makefile.in b/tools/Makefile.in
index 974e6b4..0f5684d 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -106,7 +106,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -449,14 +450,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -466,13 +474,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -514,6 +521,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5copy/Makefile.in b/tools/h5copy/Makefile.in
index e128cfe..1b50662 100644
--- a/tools/h5copy/Makefile.in
+++ b/tools/h5copy/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5copy.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -143,7 +144,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -457,14 +458,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -474,13 +482,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -522,6 +529,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5diff/Makefile.in b/tools/h5diff/Makefile.in
index c95967d..7b4d121 100644
--- a/tools/h5diff/Makefile.in
+++ b/tools/h5diff/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5diff.sh testph5diff.sh
CONFIG_CLEAN_VPATH_FILES =
@BUILD_PARALLEL_CONDITIONAL_TRUE@am__EXEEXT_1 = ph5diff$(EXEEXT)
@@ -148,7 +149,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -464,14 +465,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -481,13 +489,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -529,6 +536,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5dump/Makefile.in b/tools/h5dump/Makefile.in
index 7371adf..9865e3a 100644
--- a/tools/h5dump/Makefile.in
+++ b/tools/h5dump/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5dump.sh testh5dumppbits.sh testh5dumpxml.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -149,7 +150,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -463,14 +464,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -480,13 +488,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -528,6 +535,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5import/Makefile.in b/tools/h5import/Makefile.in
index 0778fc2..d6e784a 100644
--- a/tools/h5import/Makefile.in
+++ b/tools/h5import/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = h5importtestutil.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -143,7 +144,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -457,14 +458,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -474,13 +482,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -522,6 +529,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5jam/Makefile.in b/tools/h5jam/Makefile.in
index ed8151f..c915437 100644
--- a/tools/h5jam/Makefile.in
+++ b/tools/h5jam/Makefile.in
@@ -110,7 +110,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5jam.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -157,7 +158,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -469,14 +470,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -486,13 +494,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -534,6 +541,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5ls/Makefile.in b/tools/h5ls/Makefile.in
index c77784e..8fb9822 100644
--- a/tools/h5ls/Makefile.in
+++ b/tools/h5ls/Makefile.in
@@ -109,7 +109,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5ls.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -137,7 +138,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -449,14 +450,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -466,13 +474,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -514,6 +521,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5repack/Makefile.in b/tools/h5repack/Makefile.in
index 6d1bfd6..c0b6685 100644
--- a/tools/h5repack/Makefile.in
+++ b/tools/h5repack/Makefile.in
@@ -113,7 +113,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = h5repack.sh h5repack_plugin.sh
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -192,7 +193,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -481,14 +482,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -498,13 +506,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -546,6 +553,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/h5stat/Makefile.in b/tools/h5stat/Makefile.in
index 1bbefe9..6bf37f3 100644
--- a/tools/h5stat/Makefile.in
+++ b/tools/h5stat/Makefile.in
@@ -111,7 +111,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = testh5stat.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"
@@ -172,7 +173,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -459,14 +460,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -476,13 +484,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -524,6 +531,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/lib/Makefile.in b/tools/lib/Makefile.in
index 0b531b3..fcfb019 100644
--- a/tools/lib/Makefile.in
+++ b/tools/lib/Makefile.in
@@ -108,7 +108,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
@@ -135,7 +136,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -446,14 +447,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -463,13 +471,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -511,6 +518,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/misc/Makefile.in b/tools/misc/Makefile.in
index 1b8e0eb..2688e8d 100644
--- a/tools/misc/Makefile.in
+++ b/tools/misc/Makefile.in
@@ -112,7 +112,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES = h5cc testh5mkgrp.sh testh5repart.sh
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"
@@ -195,7 +196,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -484,14 +485,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -501,13 +509,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -549,6 +556,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
diff --git a/tools/perform/Makefile.in b/tools/perform/Makefile.in
index 325bc4d..4804533 100644
--- a/tools/perform/Makefile.in
+++ b/tools/perform/Makefile.in
@@ -116,7 +116,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/src/H5config.h
+CONFIG_HEADER = $(top_builddir)/src/H5config.h \
+ $(top_builddir)/fortran/src/H5config_f.inc
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
@@ -171,7 +172,7 @@ AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/fortran/src
depcomp = $(SHELL) $(top_srcdir)/bin/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
@@ -488,14 +489,21 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
-FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
+FORTRAN_C_LONG_DOUBLE_IS_UNIQUE = @FORTRAN_C_LONG_DOUBLE_IS_UNIQUE@
+FORTRAN_HAVE_C_LONG_DOUBLE = @FORTRAN_HAVE_C_LONG_DOUBLE@
+FORTRAN_SIZEOF_LONG_DOUBLE = @FORTRAN_SIZEOF_LONG_DOUBLE@
FSEARCH_DIRS = @FSEARCH_DIRS@
GREP = @GREP@
+H5CONFIG_F_IKIND = @H5CONFIG_F_IKIND@
+H5CONFIG_F_NUM_IKIND = @H5CONFIG_F_NUM_IKIND@
+H5CONFIG_F_NUM_RKIND = @H5CONFIG_F_NUM_RKIND@
+H5CONFIG_F_RKIND = @H5CONFIG_F_RKIND@
+H5CONFIG_F_RKIND_SIZEOF = @H5CONFIG_F_RKIND_SIZEOF@
H5_CFLAGS = @H5_CFLAGS@
H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
@@ -505,13 +513,12 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
+HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_PTHREAD = @HAVE_PTHREAD@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
-HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
@@ -553,6 +560,18 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PAC_C_MAX_REAL_PRECISION = @PAC_C_MAX_REAL_PRECISION@
+PAC_FC_ALL_INTEGER_KINDS = @PAC_FC_ALL_INTEGER_KINDS@
+PAC_FC_ALL_INTEGER_KINDS_SIZEOF = @PAC_FC_ALL_INTEGER_KINDS_SIZEOF@
+PAC_FC_ALL_REAL_KINDS = @PAC_FC_ALL_REAL_KINDS@
+PAC_FC_ALL_REAL_KINDS_SIZEOF = @PAC_FC_ALL_REAL_KINDS_SIZEOF@
+PAC_FC_MAX_REAL_PRECISION = @PAC_FC_MAX_REAL_PRECISION@
+PAC_FORTRAN_NATIVE_DOUBLE_KIND = @PAC_FORTRAN_NATIVE_DOUBLE_KIND@
+PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF = @PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF@
+PAC_FORTRAN_NATIVE_INTEGER_KIND = @PAC_FORTRAN_NATIVE_INTEGER_KIND@
+PAC_FORTRAN_NATIVE_INTEGER_SIZEOF = @PAC_FORTRAN_NATIVE_INTEGER_SIZEOF@
+PAC_FORTRAN_NATIVE_REAL_KIND = @PAC_FORTRAN_NATIVE_REAL_KIND@
+PAC_FORTRAN_NATIVE_REAL_SIZEOF = @PAC_FORTRAN_NATIVE_REAL_SIZEOF@
PARALLEL = @PARALLEL@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@