summaryrefslogtreecommitdiffstats
path: root/hl/fortran
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2015-08-11 01:22:33 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2015-08-11 01:22:33 (GMT)
commit3b4696ccd16c2b98e2700a46bf7a5c76ef4a9764 (patch)
treef301ab5333168d7bfa691bee703dd076f569fc46 /hl/fortran
parent415eb5512b0726716b5f8f72de3dda11ecff8091 (diff)
downloadhdf5-3b4696ccd16c2b98e2700a46bf7a5c76ef4a9764.zip
hdf5-3b4696ccd16c2b98e2700a46bf7a5c76ef4a9764.tar.gz
hdf5-3b4696ccd16c2b98e2700a46bf7a5c76ef4a9764.tar.bz2
[svn-r27489] reverted merge of branch
Diffstat (limited to 'hl/fortran')
-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
26 files changed, 12359 insertions, 4987 deletions
diff --git a/hl/fortran/Makefile.in b/hl/fortran/Makefile.in
index 6d87e82..4651579 100644
--- a/hl/fortran/Makefile.in
+++ b/hl/fortran/Makefile.in
@@ -110,8 +110,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 = $(top_builddir)/src/H5config.h \
- $(top_builddir)/fortran/src/H5config_f.inc
+CONFIG_HEADER = $(top_builddir)/src/H5config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -453,21 +452,14 @@ 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,12 +469,13 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
+HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
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,18 +517,6 @@ 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 71e70dd..e229f12 100644
--- a/hl/fortran/examples/Makefile.in
+++ b/hl/fortran/examples/Makefile.in
@@ -111,8 +111,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 = $(top_builddir)/src/H5config.h \
- $(top_builddir)/fortran/src/H5config_f.inc
+CONFIG_HEADER = $(top_builddir)/src/H5config.h
CONFIG_CLEAN_FILES = run-hlfortran-ex.sh
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
@@ -396,21 +395,14 @@ 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@
@@ -420,12 +412,13 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
+HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
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@
@@ -467,18 +460,6 @@ 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 9d110a8..2af665c 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -2,41 +2,6 @@ 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 (
@@ -91,37 +56,14 @@ 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_F_BASE_SRCS}
-
- # generated files
- ${HDF5_HL_F90_SRC_BINARY_DIR}/H5LTff_gen.F90
- ${HDF5_HL_F90_SRC_BINARY_DIR}/H5TBff_gen.F90
+ ${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_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})
@@ -144,7 +86,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 /DEF:${HDF5_HL_F90_SRC_BINARY_DIR}/hdf5_hl_fortrandll.def")
+ set (SHARED_LINK_FLAGS "/DLL")
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})
@@ -186,9 +128,7 @@ 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
)
@@ -209,7 +149,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 af054e0..1de3fff 100644
--- a/hl/fortran/src/H5DSfc.c
+++ b/hl/fortran/src/H5DSfc.c
@@ -35,7 +35,7 @@
*-------------------------------------------------------------------------
*/
int_f
-h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
+nh5dsset_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 @@ h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
return ret_value;
-} /* end h5dsset_scale_c() */
+} /* end nh5dsset_scale_c() */
/*-------------------------------------------------------------------------
@@ -80,7 +80,7 @@ h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen)
*-------------------------------------------------------------------------
*/
int_f
-h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
+nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
{
int_f ret_value = 0;
@@ -94,7 +94,7 @@ h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
done:
return ret_value;
-} /* end h5dsattach_scale_c() */
+} /* end nh5dsattach_scale_c() */
/*-------------------------------------------------------------------------
@@ -113,7 +113,7 @@ h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
*-------------------------------------------------------------------------
*/
int_f
-h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
+nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
{
int_f ret_value = 0;
@@ -127,7 +127,7 @@ h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
done:
return ret_value;
-} /* end h5dsdetach_scale_c() */
+} /* end nh5dsdetach_scale_c() */
/*-------------------------------------------------------------------------
@@ -146,7 +146,7 @@ h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx)
*-------------------------------------------------------------------------
*/
int_f
-h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
+nh5dsis_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 @@ h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
done:
return ret_value;
-} /* end h5dsis_attached_c() */
+} /* end nh5dsis_attached_c() */
/*-------------------------------------------------------------------------
* Function: H5DSis_scale_c
@@ -181,7 +181,7 @@ h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *is_attached)
*-------------------------------------------------------------------------
*/
int_f
-h5dsis_scale_c( hid_t_f *did, int_f *is_scale)
+nh5dsis_scale_c( hid_t_f *did, int_f *is_scale)
{
int_f ret_value = 0;
htri_t c_is_scale;
@@ -198,7 +198,7 @@ h5dsis_scale_c( hid_t_f *did, int_f *is_scale)
done:
return ret_value;
-} /* end h5dsis_scale_c() */
+} /* end nh5dsis_scale_c() */
/*-------------------------------------------------------------------------
@@ -217,7 +217,7 @@ h5dsis_scale_c( hid_t_f *did, int_f *is_scale)
*-------------------------------------------------------------------------
*/
int_f
-h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
+nh5dsset_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 @@ h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
return ret_value;
-} /* end h5dsset_label_c() */
+} /* end nh5dsset_label_c() */
/*-------------------------------------------------------------------------
* Function: h5dsget_label_c
@@ -260,7 +260,7 @@ h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen)
*-------------------------------------------------------------------------
*/
int_f
-h5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size)
+nh5dsget_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 h5dsget_label_c() */
+} /* end nh5dsget_label_c() */
/*-------------------------------------------------------------------------
* Function: h5dsget_scale_name_c
@@ -309,7 +309,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5dsget_scale_name_c(hid_t_f *did, _fcd name, size_t_f *size)
+nh5dsget_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 h5dsget_scale_name_c() */
+} /* end nh5dsget_scale_name_c() */
/*-------------------------------------------------------------------------
* Function: H5DSget_num_scales_c
@@ -356,7 +356,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
+nh5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
{
int_f ret_value = 0;
@@ -370,4 +370,4 @@ h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales)
done:
return ret_value;
-} /* end h5dsget_num_scales_c() */
+} /* end nh5dsget_num_scales_c() */
diff --git a/hl/fortran/src/H5DSff.F90 b/hl/fortran/src/H5DSff.f90
index 00cf4d8..04540a6 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,13 +60,16 @@ CONTAINS
INTEGER(SIZE_T) :: dimname_len ! length of dimname (if present)
INTERFACE
- INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len) &
- BIND(C,NAME='h5dsset_scale_c')
- IMPORT :: C_CHAR
- IMPORT :: HID_T, SIZE_T
+ INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len )
+
+ USE h5global
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(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dimname ! The dimension name
+ CHARACTER(LEN=*), INTENT(in) :: dimname ! The dimension name
INTEGER(SIZE_T), INTENT(in) :: dimname_len
END FUNCTION H5DSset_scale_c
END INTERFACE
@@ -114,10 +117,13 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx) &
- BIND(C,NAME='h5dsattach_scale_c')
- IMPORT :: HID_T
+ INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx )
+
+ USE h5global
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.
@@ -164,10 +170,13 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx) &
- BIND(C,NAME='h5dsdetach_scale_c')
- IMPORT :: HID_T
+ INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx )
+
+ USE h5global
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
@@ -218,10 +227,13 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached) &
- BIND(C,NAME='h5dsis_attached_c')
- IMPORT :: HID_T
+ INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached )
+
+ USE h5global
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
@@ -280,11 +292,14 @@ CONTAINS
INTEGER :: c_is_scale
INTERFACE
- INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale) &
- BIND(C,NAME='h5dsis_scale_c')
- IMPORT :: HID_T
+ INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale)
+
+ USE h5global
IMPLICIT NONE
- INTEGER(hid_t), INTENT(in) :: did
+ !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, INTENT(out) :: c_is_scale
END FUNCTION H5DSis_scale_c
END INTERFACE
@@ -337,14 +352,17 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len) &
- BIND(C,NAME='h5dsset_label_c')
- IMPORT :: C_CHAR
- IMPORT :: HID_T, SIZE_T
+ INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len)
+
+ USE h5global
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(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label
+ CHARACTER(LEN=*), INTENT(in) :: label ! The label
INTEGER(SIZE_T), INTENT(in) :: label_len ! Length of label
END FUNCTION H5DSset_label_c
END INTERFACE
@@ -392,14 +410,17 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSget_label_c(did, idx, label, size) &
- BIND(C,NAME='h5dsget_label_c')
- IMPORT :: C_CHAR
- IMPORT :: HID_T, SIZE_T
+ INTEGER FUNCTION H5DSget_label_c(did, idx, label, size)
+
+ USE h5global
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(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label
+ CHARACTER(LEN=*), INTENT(in) :: label ! The label
INTEGER(SIZE_T), INTENT(inout) :: size ! Length of label
END FUNCTION H5DSget_label_c
END INTERFACE
@@ -445,13 +466,16 @@ CONTAINS
INTEGER :: errcode ! Error code
INTERFACE
- INTEGER FUNCTION H5DSget_scale_name_c(did, name, size) &
- bind(c,name='h5dsget_scale_name_c')
- IMPORT :: C_CHAR
- IMPORT :: HID_T, SIZE_T
+ INTEGER FUNCTION H5DSget_scale_name_c(did, name, size)
+
+ USE h5global
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(KIND=C_CHAR), DIMENSION(*), INTENT(out) :: name ! The name
+ CHARACTER(LEN=*), INTENT(out) :: name ! The name
INTEGER(SIZE_T), INTENT(inout) :: size ! Length of name
END FUNCTION H5DSget_scale_name_c
END INTERFACE
@@ -494,10 +518,13 @@ CONTAINS
INTEGER :: c_idx
INTERFACE
- INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales) &
- BIND(C,NAME='h5dsget_num_scales_c')
- IMPORT :: HID_T
+ INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales)
+
+ USE h5global
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
deleted file mode 100644
index 0e85e27..0000000
--- a/hl/fortran/src/H5HL_buildiface.F90
+++ /dev/null
@@ -1,683 +0,0 @@
-!****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 7ad50d6..6acd410 100644
--- a/hl/fortran/src/H5IMfc.c
+++ b/hl/fortran/src/H5IMfc.c
@@ -39,7 +39,7 @@
*/
int_f
-h5immake_image_8bit_c (hid_t_f *loc_id,
+nh5immake_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
-h5imread_image_c (hid_t_f *loc_id,
+nh5imread_image_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *buf)
@@ -153,7 +153,7 @@ done:
*/
int_f
-h5immake_image_24bit_c (hid_t_f *loc_id,
+nh5immake_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
-h5imget_image_info_c(hid_t_f *loc_id,
+nh5imget_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
-h5imis_image_c(hid_t_f *loc_id,
+nh5imis_image_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name)
{
@@ -356,7 +356,7 @@ h5imis_image_c(hid_t_f *loc_id,
*/
int_f
-h5immake_palette_c (hid_t_f *loc_id,
+nh5immake_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -411,7 +411,7 @@ done:
*/
int_f
-h5imlink_palette_c (hid_t_f *loc_id,
+nh5imlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -476,7 +476,7 @@ done:
*/
int_f
-h5imunlink_palette_c (hid_t_f *loc_id,
+nh5imunlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -542,7 +542,7 @@ done:
*/
int_f
-h5imget_npalettes_c(hid_t_f *loc_id,
+nh5imget_npalettes_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *npals)
@@ -604,7 +604,7 @@ done:
int_f
-h5imget_palette_info_c(hid_t_f *loc_id,
+nh5imget_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
-h5imget_palette_c(hid_t_f *loc_id,
+nh5imget_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -729,7 +729,7 @@ done:
*/
int_f
-h5imis_palette_c(hid_t_f *loc_id,
+nh5imis_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
deleted file mode 100644
index 4408dda..0000000
--- a/hl/fortran/src/H5IMff.F90
+++ /dev/null
@@ -1,667 +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 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
new file mode 100644
index 0000000..50c6d8b
--- /dev/null
+++ b/hl/fortran/src/H5IMff.f90
@@ -0,0 +1,783 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! 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 20d043e..532d9d8 100644
--- a/hl/fortran/src/H5LTf90proto.h
+++ b/hl/fortran/src/H5LTf90proto.h
@@ -30,49 +30,219 @@ 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
-h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen);
+nh5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
+nh5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
+nh5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *c_is_attached);
+nh5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *c_is_attached);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsis_scale_c(hid_t_f *did, int_f *is_scale);
+nh5dsis_scale_c(hid_t_f *did, int_f *is_scale);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen);
+nh5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size);
+nh5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsget_scale_name_c(hid_t_f *did, _fcd label, size_t_f *size);
+nh5dsget_scale_name_c(hid_t_f *did, _fcd label, size_t_f *size);
HDF5_HL_F90CSTUBDLL
int_f
-h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales);
+nh5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales);
-/*
- * Functions from H5LTfc.c
- */
HDF5_HL_F90CSTUBDLL
int_f
-h5ltmake_dataset_c (hid_t_f *loc_id,
+nh5ltmake_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank,
@@ -82,58 +252,909 @@ h5ltmake_dataset_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5ltread_dataset_c (hid_t_f *loc_id,
+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,
size_t_f *namelen,
_fcd name,
hid_t_f *type_id,
- void *buf);
+ 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
-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);
+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
-h5ltget_attribute_c(hid_t_f *loc_id,
+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,
- void *buf, char* dtype, size_t_f *sizeof_val);
+ 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
-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);
+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);
HDF5_HL_F90CSTUBDLL
int_f
-h5ltget_dataset_ndims_c(hid_t_f *loc_id,
+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);
+
+
+HDF5_HL_F90CSTUBDLL
+int_f
+nh5ltget_attribute_int_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_float_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_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,
size_t_f *namelen,
_fcd name,
int_f *rank);
HDF5_HL_F90CSTUBDLL
int_f
-h5ltfind_dataset_c(hid_t_f *loc_id,
+nh5ltfind_dataset_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
HDF5_HL_F90CSTUBDLL
int_f
-h5ltget_dataset_info_c(hid_t_f *loc_id,
+nh5ltget_dataset_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -142,7 +1163,7 @@ h5ltget_dataset_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5ltget_attribute_ndims_c(hid_t_f *loc_id,
+nh5ltget_attribute_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -150,7 +1171,7 @@ h5ltget_attribute_ndims_c(hid_t_f *loc_id,
int_f *rank);
HDF5_HL_F90CSTUBDLL
int_f
-h5ltget_attribute_info_c(hid_t_f *loc_id,
+nh5ltget_attribute_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *attrnamelen,
@@ -161,7 +1182,7 @@ h5ltget_attribute_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5ltmake_dataset_string_c (hid_t_f *loc_id,
+nh5ltmake_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *buflen,
@@ -169,14 +1190,14 @@ h5ltmake_dataset_string_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5ltread_dataset_string_c (hid_t_f *loc_id,
+nh5ltread_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
char *buf);
HDF5_HL_F90CSTUBDLL
int_f
-h5ltpath_valid_c(hid_t_f *loc_id,
+nh5ltpath_valid_c(hid_t_f *loc_id,
_fcd path,
size_t_f *pathlen,
int_f *check_object_valid_c);
@@ -185,9 +1206,10 @@ h5ltpath_valid_c(hid_t_f *loc_id,
* Image
*-------------------------------------------------------------------------
*/
+
HDF5_HL_F90CSTUBDLL
int_f
-h5immake_image_8bit_c (hid_t_f *loc_id,
+nh5immake_image_8bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -195,14 +1217,14 @@ h5immake_image_8bit_c (hid_t_f *loc_id,
int_f *buf);
HDF5_HL_F90CSTUBDLL
int_f
-h5imread_image_c (hid_t_f *loc_id,
+nh5imread_image_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *buf);
HDF5_HL_F90CSTUBDLL
int_f
-h5immake_image_24bit_c (hid_t_f *loc_id,
+nh5immake_image_24bit_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -212,7 +1234,7 @@ h5immake_image_24bit_c (hid_t_f *loc_id,
void *buf);
HDF5_HL_F90CSTUBDLL
int_f
-h5imget_image_info_c(hid_t_f *loc_id,
+nh5imget_image_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *width,
@@ -225,14 +1247,14 @@ h5imget_image_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imis_image_c(hid_t_f *loc_id,
+nh5imis_image_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
HDF5_HL_F90CSTUBDLL
int_f
-h5immake_palette_c (hid_t_f *loc_id,
+nh5immake_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -240,7 +1262,7 @@ h5immake_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imlink_palette_c (hid_t_f *loc_id,
+nh5imlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -248,7 +1270,7 @@ h5imlink_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imunlink_palette_c (hid_t_f *loc_id,
+nh5imunlink_palette_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *ilen,
@@ -256,7 +1278,7 @@ h5imunlink_palette_c (hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imget_npalettes_c(hid_t_f *loc_id,
+nh5imget_npalettes_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *npals);
@@ -264,7 +1286,7 @@ h5imget_npalettes_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imget_palette_info_c(hid_t_f *loc_id,
+nh5imget_palette_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -272,7 +1294,7 @@ h5imget_palette_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imget_palette_c(hid_t_f *loc_id,
+nh5imget_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *pal_number,
@@ -280,7 +1302,7 @@ h5imget_palette_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5imis_palette_c(hid_t_f *loc_id,
+nh5imis_palette_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name);
@@ -293,7 +1315,7 @@ h5imis_palette_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbmake_table_c(size_t_f *namelen1,
+nh5tbmake_table_c(size_t_f *namelen1,
_fcd name1,
hid_t_f *loc_id,
size_t_f *namelen,
@@ -311,7 +1333,7 @@ h5tbmake_table_c(size_t_f *namelen1,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbwrite_field_name_c(hid_t_f *loc_id,
+nh5tbwrite_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -321,11 +1343,57 @@ h5tbwrite_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
-h5tbread_field_name_c(hid_t_f *loc_id,
+nh5tbread_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -335,11 +1403,57 @@ h5tbread_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
-h5tbwrite_field_index_c(hid_t_f *loc_id,
+nh5tbwrite_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -350,7 +1464,51 @@ h5tbwrite_field_index_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbread_field_index_c(hid_t_f *loc_id,
+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,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -361,7 +1519,51 @@ h5tbread_field_index_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbinsert_field_c(hid_t_f *loc_id,
+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,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -372,7 +1574,47 @@ h5tbinsert_field_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbdelete_field_c(hid_t_f *loc_id,
+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,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -381,7 +1623,7 @@ h5tbdelete_field_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbget_table_info_c(hid_t_f *loc_id,
+nh5tbget_table_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
@@ -389,7 +1631,7 @@ h5tbget_table_info_c(hid_t_f *loc_id,
HDF5_HL_F90CSTUBDLL
int_f
-h5tbget_field_info_c(hid_t_f *loc_id,
+nh5tbget_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 c955590..1e0a236 100644
--- a/hl/fortran/src/H5LTfc.c
+++ b/hl/fortran/src/H5LTfc.c
@@ -39,7 +39,7 @@
*/
int_f
-h5ltmake_dataset_c (hid_t_f *loc_id,
+nh5ltmake_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank,
@@ -89,6 +89,468 @@ 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
*
@@ -109,11 +571,12 @@ done:
*/
int_f
-h5ltread_dataset_c (hid_t_f *loc_id,
+nh5ltread_dataset_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hid_t_f *type_id,
- void *buf)
+ void *buf,
+ hsize_t_f *dims)
{
int ret_value = -1;
herr_t ret;
@@ -148,6 +611,426 @@ 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
*
@@ -168,7 +1051,7 @@ done:
*/
int_f
-h5ltmake_dataset_string_c (hid_t_f *loc_id,
+nh5ltmake_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *buflen,
@@ -233,7 +1116,7 @@ done:
*/
int_f
-h5ltread_dataset_string_c (hid_t_f *loc_id,
+nh5ltread_dataset_string_c (hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
char *buf)
@@ -269,6 +1152,8 @@ done:
return ret_value;
}
+
+
/*-------------------------------------------------------------------------
* Function: H5LTset_attribute_int_c
*
@@ -289,20 +1174,19 @@ done:
*/
int_f
-h5ltset_attribute_c(hid_t_f *loc_id,
+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, char *dtype, size_t_f *sizeof_val)
+ 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;
size_t c_size;
/*
@@ -322,36 +1206,17 @@ h5ltset_attribute_c(hid_t_f *loc_id,
c_loc_id = (hid_t)*loc_id;
c_size = (size_t)*size;
- 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 (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 (ret < 0)
- goto done;
+ goto done;
ret_value = 0;
@@ -360,6 +1225,217 @@ 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);
@@ -367,7 +1443,7 @@ done:
}
/*-------------------------------------------------------------------------
-* Function: H5LTget_attribute_c
+* Function: H5LTget_attribute_int_c
*
* Purpose: Call H5LTget_attribute_int
*
@@ -386,12 +1462,12 @@ done:
*/
int_f
-h5ltget_attribute_c(hid_t_f *loc_id,
+nh5ltget_attribute_int_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
_fcd attrname,
- void *buf, char *dtype, size_t_f *sizeof_val)
+ void *buf)
{
int ret_value = -1;
herr_t ret;
@@ -415,28 +1491,15 @@ h5ltget_attribute_c(hid_t_f *loc_id,
*/
c_loc_id = (hid_t)*loc_id;
- 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
+ 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)
goto done;
@@ -448,6 +1511,139 @@ done:
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);
+ if(c_attrname!=NULL)
+ HDfree(c_attrname);
+
return ret_value;
}
@@ -471,7 +1667,7 @@ done:
*/
int_f
-h5ltget_attribute_string_c(hid_t_f *loc_id,
+nh5ltget_attribute_string_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -546,7 +1742,7 @@ done:
*/
int_f
-h5ltget_dataset_ndims_c(hid_t_f *loc_id,
+nh5ltget_dataset_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *rank)
@@ -606,7 +1802,7 @@ done:
*/
int_f
-h5ltfind_dataset_c(hid_t_f *loc_id,
+nh5ltfind_dataset_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name)
{
@@ -654,7 +1850,7 @@ h5ltfind_dataset_c(hid_t_f *loc_id,
*/
int_f
-h5ltget_dataset_info_c(hid_t_f *loc_id,
+nh5ltget_dataset_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *dims,
@@ -733,7 +1929,7 @@ done:
*/
int_f
-h5ltget_attribute_ndims_c(hid_t_f *loc_id,
+nh5ltget_attribute_ndims_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd dsetname,
size_t_f *attrnamelen,
@@ -802,7 +1998,7 @@ done:
*/
int_f
-h5ltget_attribute_info_c(hid_t_f *loc_id,
+nh5ltget_attribute_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *attrnamelen,
@@ -891,7 +2087,7 @@ done:
*/
int_f
-h5ltpath_valid_c(hid_t_f *loc_id,
+nh5ltpath_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
deleted file mode 100644
index ffc7ab5..0000000
--- a/hl/fortran/src/H5LTff.F90
+++ /dev/null
@@ -1,1912 +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 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
new file mode 100644
index 0000000..9393f7f
--- /dev/null
+++ b/hl/fortran/src/H5LTff.f90
@@ -0,0 +1,6490 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! 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 99a7800..bf058fd 100644
--- a/hl/fortran/src/H5TBfc.c
+++ b/hl/fortran/src/H5TBfc.c
@@ -37,7 +37,7 @@
*-------------------------------------------------------------------------
*/
int_f
-h5tbmake_table_c(size_t_f *namelen1,
+nh5tbmake_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 h5tbmake_table_c() */
+} /* end nh5tbmake_table_c() */
/*-------------------------------------------------------------------------
* Function: h5tbwrite_field_name_c
@@ -151,7 +151,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbwrite_field_name_c(hid_t_f *loc_id,
+nh5tbwrite_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -190,6 +190,65 @@ 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
@@ -207,7 +266,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbread_field_name_c(hid_t_f *loc_id,
+nh5tbread_field_name_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -246,6 +305,66 @@ 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
*
@@ -262,7 +381,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbwrite_field_index_c(hid_t_f *loc_id,
+nh5tbwrite_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -297,6 +416,62 @@ 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
*
@@ -313,7 +488,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbread_field_index_c(hid_t_f *loc_id,
+nh5tbread_field_index_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
int_f *field_index,
@@ -347,6 +522,62 @@ 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
*
@@ -363,7 +594,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbinsert_field_c(hid_t_f *loc_id,
+nh5tbinsert_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -400,6 +631,62 @@ 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
*
@@ -416,7 +703,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbdelete_field_c(hid_t_f *loc_id,
+nh5tbdelete_field_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
size_t_f *namelen1,
@@ -465,7 +752,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbget_table_info_c(hid_t_f *loc_id,
+nh5tbget_table_info_c(hid_t_f *loc_id,
size_t_f *namelen,
_fcd name,
hsize_t_f *nfields,
@@ -515,7 +802,7 @@ done:
*-------------------------------------------------------------------------
*/
int_f
-h5tbget_field_info_c(hid_t_f *loc_id,
+nh5tbget_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
deleted file mode 100644
index 448d607..0000000
--- a/hl/fortran/src/H5TBff.F90
+++ /dev/null
@@ -1,848 +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 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
new file mode 100644
index 0000000..5846f49
--- /dev/null
+++ b/hl/fortran/src/H5TBff.f90
@@ -0,0 +1,1900 @@
+! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+! 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 6457f81..c8c4541 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 H5TBff.F90 H5IMff.F90 H5LTff_gen.F90 H5TBff_gen.F90
+libhdf5hl_fortran_la_SOURCES=H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
+ H5DSff.f90 H5LTff.f90 H5IMff.f90 H5TBff.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) H5LTff_gen.F90 H5TBff_gen.F90; \
+ $(RM) *.$(F9XMODEXT); \
fi
install-data-local:
@@ -75,31 +75,13 @@ 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
-H5LTff_gen.lo: H5LTff.lo H5LTff_gen.F90
-H5TBff_gen.lo: H5TBff.lo H5LTff_gen.F90 H5TBff_gen.F90
+H5DSff.lo: $(srcdir)/H5DSff.f90
+H5LTff.lo: $(srcdir)/H5LTff.f90
+H5IMff.lo: $(srcdir)/H5IMff.f90
+H5TBff.lo: $(srcdir)/H5TBff.f90
+
include $(top_srcdir)/config/conclude.am
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index 956eda8..029e5a1 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -31,7 +31,6 @@
#
# HDF5 High-Level Fortran Makefile(.in)
-
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
@@ -106,7 +105,6 @@ 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
@@ -115,8 +113,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 = $(top_builddir)/src/H5config.h \
- $(top_builddir)/fortran/src/H5config_f.inc
+CONFIG_HEADER = $(top_builddir)/src/H5config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
@@ -150,8 +147,7 @@ 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 H5TBff.lo H5IMff.lo \
- H5LTff_gen.lo H5TBff_gen.lo
+ H5IMcc.lo H5TBfc.lo H5DSff.lo H5LTff.lo H5IMff.lo H5TBff.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@)
@@ -161,10 +157,6 @@ 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
@@ -177,28 +169,10 @@ 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 -I$(top_builddir)/fortran/src
+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) \
@@ -217,9 +191,23 @@ 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 =
-SOURCES = $(libhdf5hl_fortran_la_SOURCES) $(H5HL_buildiface_SOURCES)
-DIST_SOURCES = $(libhdf5hl_fortran_la_SOURCES) \
- $(H5HL_buildiface_SOURCES)
+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)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -481,21 +469,14 @@ 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,12 +486,13 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
+HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
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,18 +534,6 @@ 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@
@@ -721,23 +691,17 @@ 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 H5TBff.F90 H5IMff.F90 H5LTff_gen.F90 H5TBff_gen.F90
+libhdf5hl_fortran_la_SOURCES = H5DSfc.c H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c \
+ H5DSff.f90 H5LTff.f90 H5IMff.f90 H5TBff.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
@@ -760,7 +724,7 @@ TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
all: all-am
.SUFFIXES:
-.SUFFIXES: .F90 .c .lo .log .o .obj .sh .sh$(EXEEXT) .trs
+.SUFFIXES: .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 \
@@ -831,19 +795,6 @@ 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)
@@ -856,15 +807,6 @@ 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
@@ -886,6 +828,15 @@ 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
@@ -1122,7 +1073,7 @@ distdir: $(DISTFILES)
check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) all-local
+all-am: Makefile $(LTLIBRARIES) all-local
installdirs:
for dir in "$(DESTDIR)$(libdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -1163,7 +1114,7 @@ maintainer-clean-generic:
clean: clean-am
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool clean-local \
- clean-noinstPROGRAMS mostlyclean-am
+ mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
@@ -1236,8 +1187,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 clean-noinstPROGRAMS cscopelist-am \
- ctags ctags-am distclean distclean-compile distclean-generic \
+ clean-libtool clean-local 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 \
@@ -1285,7 +1236,7 @@ maintainer-clean-local: clean-local
distclean-local: clean-local
clean-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(RM) *.$(F9XMODEXT) H5LTff_gen.F90 H5TBff_gen.F90; \
+ $(RM) *.$(F9XMODEXT); \
fi
install-data-local:
@@ -1300,23 +1251,14 @@ 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
-H5LTff_gen.lo: H5LTff.lo H5LTff_gen.F90
-H5TBff_gen.lo: H5TBff.lo H5LTff_gen.F90 H5TBff_gen.F90
+H5DSff.lo: $(srcdir)/H5DSff.f90
+H5LTff.lo: $(srcdir)/H5LTff.f90
+H5IMff.lo: $(srcdir)/H5IMff.f90
+H5TBff.lo: $(srcdir)/H5TBff.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
deleted file mode 100644
index 9a1231a..0000000
--- a/hl/fortran/src/hdf5_hl_fortrandll.def.in
+++ /dev/null
@@ -1,88 +0,0 @@
-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 a1d1386..4918e06 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 18fdaf3..fa3a803 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 ee4b206..6725d26 100644
--- a/hl/fortran/test/Makefile.in
+++ b/hl/fortran/test/Makefile.in
@@ -112,8 +112,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 = $(top_builddir)/src/H5config.h \
- $(top_builddir)/fortran/src/H5config_f.inc
+CONFIG_HEADER = $(top_builddir)/src/H5config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = tstds$(EXEEXT) tstlite$(EXEEXT) tstimage$(EXEEXT) \
@@ -150,17 +149,14 @@ 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 -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 =
+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 =
FCLD = $(FC)
FCLINK = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) \
@@ -464,21 +460,14 @@ 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@
@@ -488,12 +477,13 @@ H5_LDFLAGS = @H5_LDFLAGS@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
-HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
+HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
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@
@@ -535,18 +525,6 @@ 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@
@@ -696,10 +674,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)
@@ -727,7 +705,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 \
@@ -791,14 +769,14 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
-.F90.o:
- $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ $<
+.f90.o:
+ $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
-.F90.obj:
- $(AM_V_PPFC)$(PPFCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+.f90.obj:
+ $(AM_V_FC)$(FCCOMPILE) -c -o $@ $(FCFLAGS_f90) `$(CYGPATH_W) '$<'`
-.F90.lo:
- $(AM_V_PPFC)$(LTPPFCCOMPILE) -c -o $@ $<
+.f90.lo:
+ $(AM_V_FC)$(LTFCCOMPILE) -c -o $@ $(FCFLAGS_f90) $<
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 0eb005b..d035b89 100644
--- a/hl/fortran/test/tstlite.F90
+++ b/hl/fortran/test/tstlite.f90
@@ -16,7 +16,6 @@
!
! This file contains the FORTRAN90 tests for H5LT
!
-#include <H5config_f.inc>
PROGRAM lite_test
@@ -39,7 +38,6 @@ END PROGRAM lite_test
SUBROUTINE test_dataset1D()
-USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -57,12 +55,11 @@ 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), TARGET :: buf3 ! Data buffer
-DOUBLE PRECISION, DIMENSION(DIM1), TARGET :: bufr3 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1) :: buf3 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1) :: bufr3 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER :: i ! general purpose integer
-TYPE(C_PTR) :: f_ptr
-integer(HID_T) :: mytype
+
CALL test_begin(' Make/Read datasets (1D) ')
@@ -104,7 +101,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 (I)'
+ PRINT *, 'read buffer differs from write buffer'
PRINT *, bufr1(i), ' and ', buf1(i)
STOP
ENDIF
@@ -129,7 +126,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 (R)'
+ PRINT *, 'read buffer differs from write buffer'
PRINT *, bufr2(i), ' and ', buf2(i)
STOP
ENDIF
@@ -142,26 +139,19 @@ END DO
!
! write dataset.
!
-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)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_DOUBLE, buf3, errcode)
+
!
! read dataset.
!
-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)
+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 (D)'
+ PRINT *, 'read buffer differs from write buffer'
PRINT *, bufr3(i), ' and ', buf3(i)
STOP
ENDIF
@@ -189,7 +179,6 @@ END SUBROUTINE test_dataset1D
SUBROUTINE test_dataset2D()
-USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -210,13 +199,12 @@ 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), 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
+REAL, DIMENSION(DIM1,DIM2) :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2) :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2) :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2) :: buf4r ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER(HSIZE_T) :: i, j, n ! general purpose integers
-TYPE(C_PTR) :: f_ptr
CALL test_begin(' Make/Read datasets (2D) ')
@@ -308,16 +296,12 @@ END DO
!
! write dataset.
!
-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)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
!
! read dataset.
!
-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)
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
@@ -339,16 +323,12 @@ END DO
!
! write dataset.
!
-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)
+CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims, H5T_NATIVE_DOUBLE, buf4, errcode)
!
! read dataset.
-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)
+!
+CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, buf4r, dims, errcode)
!
! compare read and write buffers.
@@ -386,7 +366,7 @@ END SUBROUTINE test_dataset2D
SUBROUTINE test_dataset3D()
-USE, INTRINSIC :: ISO_C_BINDING
+
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -407,16 +387,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), 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
+REAL, DIMENSION(DIM1,DIM2,DIM3) :: buf3 ! Data buffer
+REAL, DIMENSION(DIM1,DIM2,DIM3) :: buf3r ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3) :: buf4 ! Data buffer
+DOUBLE PRECISION, DIMENSION(DIM1,DIM2,DIM3) :: buf4r ! Data buffer
INTEGER :: rank = 3 ! Dataset rank
INTEGER :: errcode ! Error flag
INTEGER(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) ')
@@ -512,16 +492,12 @@ END DO
!
! write dataset.
!
-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)
+CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, buf3, errcode)
!
! read dataset.
!
-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)
+CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, buf3r, dims, errcode)
!
! compare read and write buffers.
@@ -545,14 +521,12 @@ END DO
!
! write dataset.
!
-f_ptr = C_LOC(buf4(1,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.
!
-f_ptr = C_LOC(buf4r(1,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.
@@ -604,7 +578,6 @@ END SUBROUTINE test_dataset3D
SUBROUTINE test_datasetND(rank)
- USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -625,37 +598,36 @@ 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(:,:,:,:,:), 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(HSIZE_T), DIMENSION(7) :: dimsr ! Dataset dimensions
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibuf_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:) :: ibufr_4 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ibuf_5 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ibufr_5 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: ibuf_6 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: ibufr_6 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: ibuf_7 ! Data buffer
+ INTEGER, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: ibufr_7 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: rbuf_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: rbufr_4 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: rbuf_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: rbufr_5 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: rbuf_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: rbufr_6 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: rbuf_7 ! Data buffer
+ REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: rbufr_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:) :: dbuf_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:) :: dbufr_4 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: dbuf_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: dbufr_5 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: dbuf_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:) :: dbufr_6 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: dbuf_7 ! Data buffer
+ DOUBLE PRECISION, ALLOCATABLE, DIMENSION(:,:,:,:,:,:,:) :: dbufr_7 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER(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) ')
@@ -796,8 +768,7 @@ 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
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_5, errcode)
ELSE IF(rank.EQ.6)THEN
CALL h5ltmake_dataset_f(file_id, dsetname2, rank, dims(1:rank), H5T_NATIVE_INTEGER, ibuf_6, errcode)
ELSE IF(rank.EQ.7)THEN
@@ -811,8 +782,7 @@ 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
- f_ptr = C_LOC(ibufr_5(1,1,1,1,1))
- CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, f_ptr, errcode)
+ CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_5, dims(1:rank), errcode)
ELSE IF(rank.EQ.6)THEN
CALL h5ltread_dataset_f(file_id, dsetname2, H5T_NATIVE_INTEGER, ibufr_6, dims(1:rank), errcode)
ELSE IF(rank.EQ.7)THEN
@@ -872,20 +842,13 @@ SUBROUTINE test_datasetND(rank)
! write dataset.
!
IF(rank.EQ.4)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_4, errcode)
ELSE IF(rank.EQ.5)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_5, errcode)
ELSE IF(rank.EQ.6)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_6, errcode)
ELSE IF(rank.EQ.7)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims(1:rank), H5T_NATIVE_REAL, rbuf_7, errcode)
ENDIF
@@ -893,17 +856,13 @@ SUBROUTINE test_datasetND(rank)
! read dataset.
!
IF(rank.EQ.4)THEN
- f_ptr = C_LOC(rbufr_4(1,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, rbufr_4, dims(1:rank), errcode)
ELSE IF(rank.EQ.5)THEN
- f_ptr = C_LOC(rbufr_5(1,1,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, rbufr_5, dims(1:rank), errcode)
ELSE IF(rank.EQ.6)THEN
- 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)
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_6, dims(1:rank), errcode)
ELSE IF(rank.EQ.7)THEN
- 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)
+ CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, rbufr_7, dims(1:rank), errcode)
ENDIF
!
@@ -960,17 +919,13 @@ SUBROUTINE test_datasetND(rank)
! write dataset.
!
IF(rank.EQ.4)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_4, errcode)
ELSE IF(rank.EQ.5)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_5, errcode)
ELSE IF(rank.EQ.6)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_6, errcode)
ELSE IF(rank.EQ.7)THEN
- 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)
+ CALL h5ltmake_dataset_f(file_id, dsetname4, rank, dims(1:rank), H5T_NATIVE_DOUBLE, dbuf_7, errcode)
ENDIF
@@ -978,17 +933,13 @@ SUBROUTINE test_datasetND(rank)
! read dataset.
!
IF(rank.EQ.4)THEN
- f_ptr = C_LOC(dbufr_4(1,1,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, dbufr_4, dims(1:rank), errcode)
ELSE IF(rank.EQ.5)THEN
- f_ptr = C_LOC(dbufr_5(1,1,1,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, dbufr_5, dims(1:rank), errcode)
ELSE IF(rank.EQ.6)THEN
- 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)
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_6, dims(1:rank), errcode)
ELSE IF(rank.EQ.7)THEN
- 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)
+ CALL h5ltread_dataset_f(file_id, dsetname4, H5T_NATIVE_DOUBLE, dbufr_7, dims(1:rank), errcode)
ENDIF
!
@@ -1085,7 +1036,6 @@ END SUBROUTINE test_datasetND
SUBROUTINE test_datasets()
- USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -1108,10 +1058,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), 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
+ REAL, DIMENSION(DIM1) :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1) :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: bufr4 ! Data buffer
INTEGER :: i, n ! general purpose integer
INTEGER :: has ! general purpose integer
INTEGER :: type_class
@@ -1119,7 +1069,6 @@ 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.
@@ -1182,14 +1131,12 @@ SUBROUTINE test_datasets()
!
! write dataset.
!
- f_ptr = C_LOC(buf3(1))
- CALL h5ltmake_dataset_f(file_id, dsetname3, rank, dims, H5T_NATIVE_REAL, f_ptr, errcode)
+ CALL h5ltmake_dataset_float_f(file_id, dsetname3, rank, dims, buf3, errcode)
!
! read dataset.
!
- f_ptr = C_LOC(bufr3(1))
- CALL h5ltread_dataset_f(file_id, dsetname3, H5T_NATIVE_REAL, f_ptr, errcode)
+ CALL h5ltread_dataset_float_f(file_id, dsetname3, bufr3, dims, errcode)
!
! compare read and write buffers.
@@ -1214,18 +1161,13 @@ 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.
!
@@ -1393,7 +1335,6 @@ END SUBROUTINE test_datasets
SUBROUTINE test_attributes()
- USE, INTRINSIC :: ISO_C_BINDING
USE H5LT ! module of H5LT
USE HDF5 ! module of HDF5 library
@@ -1417,10 +1358,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), 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
+ REAL, DIMENSION(DIM1) :: buf3 ! Data buffer
+ REAL, DIMENSION(DIM1) :: bufr3 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: buf4 ! Data buffer
+ DOUBLE PRECISION, DIMENSION(DIM1) :: bufr4 ! Data buffer
INTEGER :: errcode ! Error flag
INTEGER :: i, n ! general purpose integer
INTEGER(SIZE_T) size ! size of attribute array
@@ -1432,8 +1373,7 @@ 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.
@@ -1501,26 +1441,11 @@ SUBROUTINE test_attributes()
!
! write attribute.
!
-#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)
+ CALL h5ltset_attribute_float_f(file_id,dsetname1,attrname3,buf3,size,errcode)
!
! read attribute.
!
-#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)
+ CALL h5ltget_attribute_float_f(file_id,dsetname1,attrname3,bufr3,errcode)
!
! compare read and write buffers.
@@ -1539,36 +1464,17 @@ 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.
!
- 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)
+ CALL h5ltset_attribute_double_f(file_id,dsetname1,attrname4,buf4,size,errcode)
!
! read attribute.
!
-
-#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)
+ CALL h5ltget_attribute_double_f(file_id,dsetname1,attrname4,bufr4,errcode)
!
! compare read and write buffers.
@@ -1583,8 +1489,6 @@ SUBROUTINE test_attributes()
CALL passed()
- ENDIF
-
!-------------------------------------------------------------------------
! string
!-------------------------------------------------------------------------
@@ -1700,6 +1604,11 @@ SUBROUTINE test_attributes()
!
END SUBROUTINE test_attributes
+
+
+
+
+
!-------------------------------------------------------------------------
! test_begin
!-------------------------------------------------------------------------
diff --git a/hl/fortran/test/tsttable.F90 b/hl/fortran/test/tsttable.f90
index 74029a5..bb88abf 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,24 +71,7 @@ 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.
@@ -128,11 +111,7 @@ 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)
- 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_DOUBLE, type_sized, errcode)
CALL h5tget_size_f(H5T_NATIVE_REAL, type_sizer, errcode)
type_size = type_sizec + type_sizei + type_sized + type_sizer
@@ -141,11 +120,7 @@ SUBROUTINE test_table1()
!
field_types(1) = type_id_c
field_types(2) = H5T_NATIVE_INTEGER
- IF(exclude_double)THEN
- field_types(3) = H5T_NATIVE_REAL
- ELSE
- field_types(3) = H5T_NATIVE_DOUBLE
- ENDIF
+ field_types(3) = H5T_NATIVE_DOUBLE
field_types(4) = H5T_NATIVE_REAL
!
@@ -193,13 +168,9 @@ SUBROUTINE test_table1()
CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(2),start,nrecords,type_sizei,&
bufi,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(3),start,nrecords,type_sized,&
+ bufd,errcode)
CALL h5tbwrite_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
bufr,errcode)
@@ -243,6 +214,7 @@ 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.
!
@@ -254,39 +226,19 @@ SUBROUTINE test_table1()
ENDIF
END DO
- IF(exclude_double)THEN
-
- CALL h5tbread_field_name_f(file_id,dsetname1,field_names(3),start,nrecords,type_sized,&
- bufrr,errcode)
+ 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 ( 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
-
-
+ DO i = 1, nrecords
+ IF ( bufdr(i) .NE. bufd(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufdr(i), ' and ', bufd(i)
+ STOP
+ ENDIF
+ END DO
CALL h5tbread_field_name_f(file_id,dsetname1,field_names(4),start,nrecords,type_sizer,&
bufrr,errcode)
@@ -302,8 +254,8 @@ SUBROUTINE test_table1()
ENDIF
END DO
- CALL passed()
+ CALL passed()
!-------------------------------------------------------------------------
! write field
@@ -317,13 +269,8 @@ SUBROUTINE test_table1()
CALL h5tbwrite_field_index_f(file_id,dsetname1,2,start,nrecords,type_sizei,&
bufi,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,3,start,nrecords,type_sized,&
+ bufd,errcode)
CALL h5tbwrite_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
bufr,errcode)
@@ -361,35 +308,20 @@ SUBROUTINE test_table1()
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,3,start,nrecords,type_sized,&
+ bufdr,errcode)
+
+ !
+ ! compare read and write buffers.
+ !
+ DO i = 1, nrecords
+ IF ( bufdr(i) .NE. bufd(i) ) THEN
+ PRINT *, 'read buffer differs from write buffer'
+ PRINT *, bufdr(i), ' and ', bufd(i)
+ STOP
+ ENDIF
+ END DO
CALL h5tbread_field_index_f(file_id,dsetname1,4,start,nrecords,type_sizer,&
bufrr,errcode)