summaryrefslogtreecommitdiffstats
path: root/fortran/test
diff options
context:
space:
mode:
authorLarry Knox <lrknox@hdfgroup.org>2021-07-06 18:21:42 (GMT)
committerLarry Knox <lrknox@hdfgroup.org>2021-07-06 18:21:42 (GMT)
commit820695a78e3a277daea1bdcbb8ad54b8ee6650a5 (patch)
treefe7545305c0a77db3b9671e5a82fdffc4b2cc82e /fortran/test
parent9f13ecfa2e93840d1cc45dbf0bfcf8b955814931 (diff)
parent18bbd3f0a7f14adeebf8f342ed242ff191f9b7c5 (diff)
downloadhdf5-hdf5-1_12_1.zip
hdf5-hdf5-1_12_1.tar.gz
hdf5-hdf5-1_12_1.tar.bz2
Merge remote-tracking branch 'origin/hdf5_1_12_1' into 1.12/master forhdf5-1_12_1
HDF5 1.12.1 release.
Diffstat (limited to 'fortran/test')
-rw-r--r--fortran/test/CMakeLists.txt265
-rw-r--r--fortran/test/CMakeTests.cmake2
-rw-r--r--fortran/test/H5_test_buildiface.F9020
-rw-r--r--fortran/test/Makefile.am4
-rw-r--r--fortran/test/Makefile.in85
-rw-r--r--fortran/test/fflush1.F904
-rw-r--r--fortran/test/fflush2.F902
-rw-r--r--fortran/test/fortranlib_test.F9028
-rw-r--r--fortran/test/fortranlib_test_1_8.F902
-rw-r--r--fortran/test/fortranlib_test_F03.F9018
-rw-r--r--fortran/test/t.c2
-rw-r--r--fortran/test/t.h2
-rw-r--r--fortran/test/tH5A.F904
-rw-r--r--fortran/test/tH5A_1_8.F90638
-rw-r--r--fortran/test/tH5D.F90116
-rw-r--r--fortran/test/tH5E.F902
-rw-r--r--fortran/test/tH5E_F03.F908
-rw-r--r--fortran/test/tH5F.F9014
-rw-r--r--fortran/test/tH5F_F03.F9030
-rw-r--r--fortran/test/tH5G.F902
-rw-r--r--fortran/test/tH5G_1_8.F90584
-rw-r--r--fortran/test/tH5I.F9022
-rw-r--r--fortran/test/tH5L_F03.F9078
-rw-r--r--fortran/test/tH5MISC_1_8.F9078
-rw-r--r--fortran/test/tH5O.F90140
-rw-r--r--fortran/test/tH5O_F03.F9032
-rw-r--r--fortran/test/tH5P.F90213
-rw-r--r--fortran/test/tH5P_F03.F90222
-rw-r--r--fortran/test/tH5R.F9016
-rw-r--r--fortran/test/tH5S.F906
-rw-r--r--fortran/test/tH5Sselect.F90440
-rw-r--r--fortran/test/tH5T.F9036
-rw-r--r--fortran/test/tH5T_F03.F90610
-rw-r--r--fortran/test/tH5VL.F906
-rw-r--r--fortran/test/tH5Z.F902
-rw-r--r--fortran/test/tHDF5.F902
-rw-r--r--fortran/test/tHDF5_1_8.F902
-rw-r--r--fortran/test/tHDF5_F03.F904
-rw-r--r--fortran/test/tf.F9032
-rw-r--r--fortran/test/vol_connector.F9010
40 files changed, 1906 insertions, 1877 deletions
diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt
index 5657323..1e879e7 100644
--- a/fortran/test/CMakeLists.txt
+++ b/fortran/test/CMakeLists.txt
@@ -9,12 +9,11 @@ project (HDF5_FORTRAN_TESTS C Fortran)
add_executable (H5_test_buildiface ${HDF5_F90_SRC_DIR}/test/H5_test_buildiface.F90)
target_include_directories (H5_test_buildiface
PRIVATE
- ${HDF5_BINARY_DIR} ${HDF5_F90_BINARY_DIR}
+ ${HDF5_SRC_BINARY_DIR} ${HDF5_F90_BINARY_DIR}
)
#if (BUILD_SHARED_LIBS)
# target_compile_definitions(H5_test_buildiface
-# PRIVATE
-# $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:/MT>
+# PRIVATE $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:/MT>
# )
#endif ()
if(MSVC)
@@ -43,12 +42,13 @@ endif ()
# Add Test Lib
#-----------------------------------------------------------------------------
if (NOT BUILD_SHARED_LIBS)
- add_library (${HDF5_F90_C_TEST_LIB_TARGET} STATIC t.c)
+ add_library (${HDF5_F90_C_TEST_LIB_TARGET} STATIC t.c t.h)
set_source_files_properties (t.c PROPERTIES LANGUAGE C)
target_include_directories (${HDF5_F90_C_TEST_LIB_TARGET}
- PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_DIR};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
+ target_compile_options(${HDF5_F90_C_TEST_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
TARGET_C_PROPERTIES (${HDF5_F90_C_TEST_LIB_TARGET} STATIC)
target_link_libraries (${HDF5_F90_C_TEST_LIB_TARGET}
PRIVATE ${HDF5_F90_C_LIB_TARGET}
@@ -60,14 +60,13 @@ if (NOT BUILD_SHARED_LIBS)
LINKER_LANGUAGE C
)
else ()
- add_library (${HDF5_F90_C_TEST_LIBSH_TARGET} SHARED t.c)
+ add_library (${HDF5_F90_C_TEST_LIBSH_TARGET} SHARED t.c t.h)
target_include_directories (${HDF5_F90_C_TEST_LIBSH_TARGET}
- PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_DIR};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
- target_compile_definitions(${HDF5_F90_C_TEST_LIBSH_TARGET}
- PUBLIC "H5_BUILT_AS_DYNAMIC_LIB"
- )
+ target_compile_options(${HDF5_F90_C_TEST_LIBSH_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
+ target_compile_definitions(${HDF5_F90_C_TEST_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
TARGET_C_PROPERTIES (${HDF5_F90_C_TEST_LIBSH_TARGET} SHARED)
target_link_libraries (${HDF5_F90_C_TEST_LIBSH_TARGET}
PRIVATE ${HDF5_F90_C_LIBSH_TARGET}
@@ -80,28 +79,39 @@ else ()
)
endif ()
+#-----------------------------------------------------------------------------
+# Add Target to clang-format
+#-----------------------------------------------------------------------------
+if (HDF5_ENABLE_FORMATTERS)
+ if (NOT BUILD_SHARED_LIBS)
+ clang_format (HDF5_FORTRAN_TESTS_FORMAT ${HDF5_F90_C_TEST_LIB_TARGET})
+ else ()
+ clang_format (HDF5_FORTRAN_TESTS_FORMAT ${HDF5_F90_C_TEST_LIBSH_TARGET})
+ endif ()
+endif ()
+
if (NOT BUILD_SHARED_LIBS)
- add_custom_command (
- OUTPUT ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90
+ add_custom_command (TARGET H5_test_buildiface POST_BUILD
+ BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90
COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:H5_test_buildiface>
WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static
DEPENDS H5_test_buildiface
- COMMENT "Generating the tf_gen.F90 file"
+ COMMENT "Generating the tf_gen.F90 static file"
)
add_custom_target (H5testgen ALL
- DEPENDS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90
+ DEPENDS H5_test_buildiface ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90
)
set_source_files_properties (${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 PROPERTIES GENERATED TRUE)
else ()
- add_custom_command (
- OUTPUT ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90
+ add_custom_command (TARGET H5_test_buildiface POST_BUILD
+ BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90
COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:H5_test_buildiface>
WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared
DEPENDS H5_test_buildiface
COMMENT "Generating the tf_gen.F90 shared file"
)
add_custom_target (H5testgenSH ALL
- DEPENDS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90
+ DEPENDS H5_test_buildiface ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90
)
set_source_files_properties (${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 PROPERTIES GENERATED TRUE)
endif ()
@@ -129,26 +139,18 @@ endif ()
if (NOT BUILD_SHARED_LIBS)
add_library (${HDF5_F90_TEST_LIB_TARGET} STATIC ${HDF5_F90_TF_SOURCES})
target_include_directories (${HDF5_F90_TEST_LIB_TARGET}
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static"
- INTERFACE
- "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include/static>"
+ PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static"
+ INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include/static>"
)
+ target_compile_options(${HDF5_F90_TEST_LIB_TARGET} PRIVATE "${HDF5_CMAKE_Fortran_FLAGS}")
target_compile_definitions(${HDF5_F90_TEST_LIB_TARGET}
PRIVATE
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:HDF5F90_WINDOWS>
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
- target_link_libraries (${HDF5_F90_TEST_LIB_TARGET}
- PUBLIC
- ${HDF5_F90_C_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET}
- )
-# set_property(TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-# )
-# set_property(TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-# )
+ target_link_libraries (${HDF5_F90_TEST_LIB_TARGET} PUBLIC ${HDF5_F90_C_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET})
+# set_property(TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+# set_property(TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET ${HDF5_F90_TEST_LIB_TARGET} PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
@@ -162,31 +164,20 @@ if (NOT BUILD_SHARED_LIBS)
else ()
add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED ${HDF5_F90_TF_SOURCES_SHARED})
target_include_directories (${HDF5_F90_TEST_LIBSH_TARGET}
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared"
- INTERFACE
- "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include/shared>"
+ PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared"
+ INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include/shared>"
)
+ target_compile_options(${HDF5_F90_TEST_LIBSH_TARGET} PRIVATE "${HDF5_CMAKE_Fortran_FLAGS}")
target_compile_definitions(${HDF5_F90_TEST_LIBSH_TARGET}
- PUBLIC
- "H5_BUILT_AS_DYNAMIC_LIB"
+ PUBLIC "H5_BUILT_AS_DYNAMIC_LIB"
PRIVATE
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:BUILD_HDF5_TEST_DLL;HDF5F90_WINDOWS>
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
- target_link_libraries (${HDF5_F90_TEST_LIBSH_TARGET}
- PUBLIC
- ${HDF5_F90_C_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET}
- )
-# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-# )
-# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-# )
-# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-DLL">
-# )
+ target_link_libraries (${HDF5_F90_TEST_LIBSH_TARGET} PUBLIC ${HDF5_F90_C_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
+# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
+# set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-DLL">)
if(MSVC)
set_property(TARGET ${HDF5_F90_TEST_LIBSH_TARGET} PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS} -DLL")
endif()
@@ -223,26 +214,17 @@ add_executable (testhdf5_fortran
)
target_compile_options(testhdf5_fortran
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET testhdf5_fortran APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET testhdf5_fortran APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET testhdf5_fortran APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET testhdf5_fortran APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET testhdf5_fortran PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (testhdf5_fortran
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static"
- )
- target_link_libraries (testhdf5_fortran
- PRIVATE
- ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (testhdf5_fortran PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static")
+ target_link_libraries (testhdf5_fortran PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (testhdf5_fortran PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -250,14 +232,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (testhdf5_fortran ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (testhdf5_fortran
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared"
- )
- target_link_libraries (testhdf5_fortran
- PRIVATE
- ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (testhdf5_fortran PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared")
+ target_link_libraries (testhdf5_fortran PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (testhdf5_fortran PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -277,26 +253,17 @@ add_executable (testhdf5_fortran_1_8
)
target_compile_options(testhdf5_fortran_1_8
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET testhdf5_fortran_1_8 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET testhdf5_fortran_1_8 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET testhdf5_fortran_1_8 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET testhdf5_fortran_1_8 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET testhdf5_fortran_1_8 PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (testhdf5_fortran_1_8
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static"
- )
- target_link_libraries (testhdf5_fortran_1_8
- PRIVATE
- ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (testhdf5_fortran_1_8 PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static")
+ target_link_libraries (testhdf5_fortran_1_8 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (testhdf5_fortran_1_8 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -304,14 +271,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (testhdf5_fortran_1_8 ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (testhdf5_fortran_1_8
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared"
- )
- target_link_libraries (testhdf5_fortran_1_8
- PRIVATE
- ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (testhdf5_fortran_1_8 PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared")
+ target_link_libraries (testhdf5_fortran_1_8 PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (testhdf5_fortran_1_8 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -333,26 +294,17 @@ add_executable (fortranlib_test_F03
)
target_compile_options(fortranlib_test_F03
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET fortranlib_test_F03 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET fortranlib_test_F03 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET fortranlib_test_F03 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET fortranlib_test_F03 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET fortranlib_test_F03 PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (fortranlib_test_F03
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static"
- )
- target_link_libraries (fortranlib_test_F03
- PRIVATE
- ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fortranlib_test_F03 PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/static;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static")
+ target_link_libraries (fortranlib_test_F03 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fortranlib_test_F03 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -360,14 +312,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (fortranlib_test_F03 ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (fortranlib_test_F03
- PRIVATE
- "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared"
- )
- target_link_libraries (fortranlib_test_F03
- PRIVATE
- ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fortranlib_test_F03 PRIVATE "${CMAKE_Fortran_MODULE_DIRECTORY}/shared;${HDF5_F90_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared")
+ target_link_libraries (fortranlib_test_F03 PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fortranlib_test_F03 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -380,26 +326,17 @@ endif ()
add_executable (fflush1 fflush1.F90)
target_compile_options(fflush1
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET fflush1 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET fflush1 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET fflush1 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET fflush1 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET fflush1 PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (fflush1
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/static
- )
- target_link_libraries (fflush1
- PRIVATE
- ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fflush1 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
+ target_link_libraries (fflush1 PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fflush1 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -407,14 +344,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (fflush1 ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (fflush1
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
- )
- target_link_libraries (fflush1
- PRIVATE
- ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fflush1 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
+ target_link_libraries (fflush1 PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fflush1 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -427,26 +358,17 @@ endif ()
add_executable (fflush2 fflush2.F90)
target_compile_options (fflush2
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET fflush2 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET fflush2 APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET fflush2 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET fflush2 APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET fflush2 PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (fflush2
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/static
- )
- target_link_libraries (fflush2
- PRIVATE
- ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fflush2 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
+ target_link_libraries (fflush2 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fflush2 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -454,14 +376,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (fflush2 ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (fflush2
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
- )
- target_link_libraries (fflush2
- PRIVATE
- ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (fflush2 PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
+ target_link_libraries (fflush2 PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (fflush2 PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -474,26 +390,17 @@ endif ()
add_executable (vol_connector vol_connector.F90)
target_compile_options(vol_connector
PRIVATE
+ "${HDF5_CMAKE_Fortran_FLAGS}"
$<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_COMPILE_FLAGS}>
)
-#set_property(TARGET vol_connector APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">
-#)
-#set_property(TARGET vol_connector APPEND PROPERTY
-# LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>
-#)
+#set_property(TARGET vol_connector APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:"-SUBSYSTEM:CONSOLE">)
+#set_property(TARGET vol_connector APPEND PROPERTY LINK_FLAGS $<$<STREQUAL:"x${CMAKE_Fortran_SIMULATE_ID}","xMSVC">:${WIN_LINK_FLAGS}>)
if(MSVC)
set_property(TARGET vol_connector PROPERTY LINK_FLAGS "/SUBSYSTEM:CONSOLE ${WIN_LINK_FLAGS}")
endif()
if (NOT BUILD_SHARED_LIBS)
- target_include_directories (vol_connector
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/static
- )
- target_link_libraries (vol_connector
- PRIVATE
- ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (vol_connector PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
+ target_link_libraries (vol_connector PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_LIB_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (vol_connector PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
@@ -501,14 +408,8 @@ if (NOT BUILD_SHARED_LIBS)
)
add_dependencies (vol_connector ${HDF5_F90_TEST_LIB_TARGET})
else ()
- target_include_directories (vol_connector
- PRIVATE
- ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
- )
- target_link_libraries (vol_connector
- PRIVATE
- ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>
- )
+ target_include_directories (vol_connector PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared)
+ target_link_libraries (vol_connector PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$<PLATFORM_ID:Windows>:ws2_32.lib>)
set_target_properties (vol_connector PROPERTIES
LINKER_LANGUAGE Fortran
FOLDER test/fortran
diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake
index df5c76c..0588416 100644
--- a/fortran/test/CMakeTests.cmake
+++ b/fortran/test/CMakeTests.cmake
@@ -5,7 +5,7 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
-# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
+# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
diff --git a/fortran/test/H5_test_buildiface.F90 b/fortran/test/H5_test_buildiface.F90
index 636ded4..94beab1 100644
--- a/fortran/test/H5_test_buildiface.F90
+++ b/fortran/test/H5_test_buildiface.F90
@@ -13,8 +13,8 @@
! 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
+! 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.
!
@@ -34,7 +34,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -81,7 +81,7 @@ PROGRAM H5_test_buildiface
'! This file is part of HDF5. The full HDF5 copyright notice, including *',&
'! terms governing use, modification, and redistribution, is contained in *',&
'! the COPYING file, which can be found at the root of the source code *',&
-'! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *',&
+'! distribution tree, or in https://www.hdfgroup.org/licenses. *',&
'! If you do not have access to either file, you may request a copy from *',&
'! help@hdfgroup.org. *',&
'! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',&
@@ -94,7 +94,7 @@ PROGRAM H5_test_buildiface
WRITE(11,'(a)') "MODULE TH5_MISC_gen"
WRITE(11,'(A)') ' USE, INTRINSIC :: ISO_C_BINDING'
-
+
! Interfaces for validating REALs, INTEGERs, CHARACTERs, LOGICALs
WRITE(11,'(A)') ' INTERFACE verify'
@@ -156,8 +156,8 @@ PROGRAM H5_test_buildiface
WRITE(11,'(A)') '!DEC$if defined(BUILD_HDF5_TEST_DLL)'
WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_real_kind_'//TRIM(ADJUSTL(chr2))
WRITE(11,'(A)') '!DEC$endif'
-
-! Subroutine API
+
+! Subroutine API
WRITE(11,'(A)') ' SUBROUTINE verify_real_kind_'//TRIM(ADJUSTL(chr2))//'(string,value,correct_value,total_error)'
WRITE(11,'(A)') ' IMPLICIT NONE'
WRITE(11,'(A)') ' CHARACTER(LEN=*) :: string'
@@ -186,7 +186,7 @@ PROGRAM H5_test_buildiface
! { EXPONENT(x)-DIGITS(x)
! { 2.0 for x /= 0
! SPACING(x) = {
-! {
+! {
! { TINY(x) for x == 0
!
! The ULP optional argument scales the comparison:
@@ -228,7 +228,7 @@ PROGRAM H5_test_buildiface
WRITE(11,'(A)') '!DEC$attributes dllexport :: verify_character'
WRITE(11,'(A)') '!DEC$endif'
-! Subroutine API
+! Subroutine API
WRITE(11,'(A)') ' SUBROUTINE verify_character(string,value,correct_value,total_error)'
WRITE(11,'(A)') ' IMPLICIT NONE'
WRITE(11,'(A)') ' CHARACTER*(*) :: string'
@@ -258,7 +258,7 @@ PROGRAM H5_test_buildiface
WRITE(11,'(A)') ' total_error = total_error + 1'
WRITE(11,'(A)') ' WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string'
WRITE(11,'(A)') ' ENDIF'
-
+
WRITE(11,'(A)') ' END SUBROUTINE verify_logical'
WRITE(11,'(A)') "END MODULE TH5_MISC_gen"
diff --git a/fortran/test/Makefile.am b/fortran/test/Makefile.am
index f0d7f03..f57c774 100644
--- a/fortran/test/Makefile.am
+++ b/fortran/test/Makefile.am
@@ -6,7 +6,7 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
-# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
+# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
@@ -91,7 +91,7 @@ tf_gen.F90: H5_test_buildiface$(EXEEXT)
H5_test_buildiface_SOURCES = H5_test_buildiface.F90
-# The build of the H5_test_buildiface does not depend on any libraries, so set it
+# The build of the H5_test_buildiface does not depend on any libraries, so set it
# to nothing.
H5_test_buildiface_LDADD =
diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in
index ecb2b91..36e8685 100644
--- a/fortran/test/Makefile.in
+++ b/fortran/test/Makefile.in
@@ -111,6 +111,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
$(top_srcdir)/m4/ax_check_junit.m4 \
$(top_srcdir)/m4/ax_java_options.m4 \
$(top_srcdir)/m4/ax_jni_include_dir.m4 \
+ $(top_srcdir)/m4/ax_prog_doxygen.m4 \
$(top_srcdir)/m4/ax_prog_jar.m4 \
$(top_srcdir)/m4/ax_prog_java.m4 \
$(top_srcdir)/m4/ax_prog_java_works.m4 \
@@ -476,7 +477,7 @@ AMTAR = @AMTAR@
# H5_CFLAGS holds flags that should be used when building hdf5,
# but which should not be exported to h5cc for building other programs.
-# AM_CFLAGS is an automake construct which should be used by Makefiles
+# AM_CFLAGS is an automake construct which should be used by Makefiles
# instead of CFLAGS, as CFLAGS is reserved solely for the user to define.
# This applies to FCFLAGS, CXXFLAGS, CPPFLAGS, and LDFLAGS as well.
AM_CFLAGS = @AM_CFLAGS@ @H5_CFLAGS@
@@ -505,6 +506,7 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@
CC_VERSION = @CC_VERSION@
CFLAGS = @CFLAGS@
+CLANG_SANITIZE_CHECKS = @CLANG_SANITIZE_CHECKS@
CODESTACK = @CODESTACK@
CONFIG_DATE = @CONFIG_DATE@
CONFIG_MODE = @CONFIG_MODE@
@@ -521,11 +523,54 @@ DEFAULT_API_VERSION = @DEFAULT_API_VERSION@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DEPRECATED_SYMBOLS = @DEPRECATED_SYMBOLS@
-DEV_WARNINGS = @DEV_WARNINGS@
+DESIRED_FILE_LOCKING = @DESIRED_FILE_LOCKING@
+DIAGS = @DIAGS@
DIRECT_VFD = @DIRECT_VFD@
DLLTOOL = @DLLTOOL@
+DOXYGEN_EXAMPLES_DIRECTORY = @DOXYGEN_EXAMPLES_DIRECTORY@
+DOXYGEN_EXTERNAL_SEARCH = @DOXYGEN_EXTERNAL_SEARCH@
+DOXYGEN_HTML_EXTRA_FILES = @DOXYGEN_HTML_EXTRA_FILES@
+DOXYGEN_HTML_EXTRA_STYLESHEET = @DOXYGEN_HTML_EXTRA_STYLESHEET@
+DOXYGEN_HTML_FOOTER = @DOXYGEN_HTML_FOOTER@
+DOXYGEN_HTML_HEADER = @DOXYGEN_HTML_HEADER@
+DOXYGEN_INCLUDE_ALIASES = @DOXYGEN_INCLUDE_ALIASES@
+DOXYGEN_INPUT_DIRECTORY = @DOXYGEN_INPUT_DIRECTORY@
+DOXYGEN_LAYOUT_FILE = @DOXYGEN_LAYOUT_FILE@
+DOXYGEN_MACRO_EXPANSION = @DOXYGEN_MACRO_EXPANSION@
+DOXYGEN_OPTIMIZE_OUTPUT_FOR_C = @DOXYGEN_OPTIMIZE_OUTPUT_FOR_C@
+DOXYGEN_OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
+DOXYGEN_PACKAGE = @DOXYGEN_PACKAGE@
+DOXYGEN_PAPER_SIZE = @DOXYGEN_PAPER_SIZE@
+DOXYGEN_PROJECT_BRIEF = @DOXYGEN_PROJECT_BRIEF@
+DOXYGEN_PROJECT_LOGO = @DOXYGEN_PROJECT_LOGO@
+DOXYGEN_SEARCHENGINE_URL = @DOXYGEN_SEARCHENGINE_URL@
+DOXYGEN_SERVER_BASED_SEARCH = @DOXYGEN_SERVER_BASED_SEARCH@
+DOXYGEN_VERSION_STRING = @DOXYGEN_VERSION_STRING@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
+DX_CONFIG = @DX_CONFIG@
+DX_DOCDIR = @DX_DOCDIR@
+DX_DOT = @DX_DOT@
+DX_DOXYGEN = @DX_DOXYGEN@
+DX_DVIPS = @DX_DVIPS@
+DX_EGREP = @DX_EGREP@
+DX_ENV = @DX_ENV@
+DX_FLAG_chi = @DX_FLAG_chi@
+DX_FLAG_chm = @DX_FLAG_chm@
+DX_FLAG_doc = @DX_FLAG_doc@
+DX_FLAG_dot = @DX_FLAG_dot@
+DX_FLAG_html = @DX_FLAG_html@
+DX_FLAG_man = @DX_FLAG_man@
+DX_FLAG_pdf = @DX_FLAG_pdf@
+DX_FLAG_ps = @DX_FLAG_ps@
+DX_FLAG_rtf = @DX_FLAG_rtf@
+DX_FLAG_xml = @DX_FLAG_xml@
+DX_HHC = @DX_HHC@
+DX_LATEX = @DX_LATEX@
+DX_MAKEINDEX = @DX_MAKEINDEX@
+DX_PDFLATEX = @DX_PDFLATEX@
+DX_PERL = @DX_PERL@
+DX_PROJECT = @DX_PROJECT@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
@@ -559,6 +604,7 @@ H5_CPPFLAGS = @H5_CPPFLAGS@
H5_CXXFLAGS = @H5_CXXFLAGS@
H5_FCFLAGS = @H5_FCFLAGS@
H5_FORTRAN_SHARED = @H5_FORTRAN_SHARED@
+H5_IS_DARWIN = @H5_IS_DARWIN@
H5_JAVACFLAGS = @H5_JAVACFLAGS@
H5_JAVAFLAGS = @H5_JAVAFLAGS@
H5_JNIFLAGS = @H5_JNIFLAGS@
@@ -569,6 +615,7 @@ HAVE_DMALLOC = @HAVE_DMALLOC@
HAVE_Fortran_INTEGER_SIZEOF_16 = @HAVE_Fortran_INTEGER_SIZEOF_16@
HAVE_LIBHDFS = @HAVE_LIBHDFS@
HAVE_PTHREAD = @HAVE_PTHREAD@
+HDF5_DOXYGEN = @HDF5_DOXYGEN@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF5_TESTS = @HDF5_TESTS@
@@ -581,6 +628,7 @@ HL = @HL@
HL_FOR = @HL_FOR@
HSIZE_T = @HSIZE_T@
HSSIZE_T = @HSSIZE_T@
+IGNORE_DISABLED_FILE_LOCKS = @IGNORE_DISABLED_FILE_LOCKS@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -618,6 +666,7 @@ MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MAP_API = @MAP_API@
MEMORYALLOCSANITYCHECK = @MEMORYALLOCSANITYCHECK@
+MIRROR_VFD = @MIRROR_VFD@
MKDIR_P = @MKDIR_P@
MPE = @MPE@
NM = @NM@
@@ -654,6 +703,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
PREADWRITE = @PREADWRITE@
PROFILING = @PROFILING@
RANLIB = @RANLIB@
+RECURSIVE_RW_LOCKS = @RECURSIVE_RW_LOCKS@
ROOT = @ROOT@
ROS3_VFD = @ROS3_VFD@
RUNPARALLEL = @RUNPARALLEL@
@@ -677,6 +727,7 @@ TIME = @TIME@
TR = @TR@
TRACE_API = @TRACE_API@
UNAME_INFO = @UNAME_INFO@
+USE_FILE_LOCKING = @USE_FILE_LOCKING@
USE_FILTER_DEFLATE = @USE_FILTER_DEFLATE@
USE_FILTER_SZIP = @USE_FILTER_SZIP@
USINGMEMCHECKER = @USINGMEMCHECKER@
@@ -769,15 +820,15 @@ LIBH5_HL = $(top_builddir)/hl/src/libhdf5_hl.la
LIBH5F_HL = $(top_builddir)/hl/fortran/src/libhdf5hl_fortran.la
LIBH5CPP_HL = $(top_builddir)/hl/c++/src/libhdf5_hl_cpp.la
-# Note that in svn revision 19400 the '/' after DESTDIR in H5* variables below
-# has been removed. According to the official description of DESTDIR by Gnu at
-# http://www.gnu.org/prep/standards/html_node/DESTDIR.html, DESTDIR is
-# prepended to the normal and complete install path that it precedes for the
-# purpose of installing in a temporary directory which is useful for building
-# rpms and other packages. The '/' after ${DESTDIR} will be followed by another
-# '/' at the beginning of the normal install path. When DESTDIR is empty the
-# path then begins with '//', which is incorrect and causes problems at least for
-# Cygwin.
+# Note that in svn revision 19400 the '/' after DESTDIR in H5* variables below
+# has been removed. According to the official description of DESTDIR by Gnu at
+# http://www.gnu.org/prep/standards/html_node/DESTDIR.html, DESTDIR is
+# prepended to the normal and complete install path that it precedes for the
+# purpose of installing in a temporary directory which is useful for building
+# rpms and other packages. The '/' after ${DESTDIR} will be followed by another
+# '/' at the beginning of the normal install path. When DESTDIR is empty the
+# path then begins with '//', which is incorrect and causes problems at least for
+# Cygwin.
# Scripts used to build examples
# If only shared libraries have been installed, have h5cc build examples with
@@ -831,7 +882,7 @@ FORTRAN_API = yes
# how to compile a fortran program given its sources.
H5_test_buildiface_SOURCES = H5_test_buildiface.F90
-# The build of the H5_test_buildiface does not depend on any libraries, so set it
+# The build of the H5_test_buildiface does not depend on any libraries, so set it
# to nothing.
H5_test_buildiface_LDADD =
PPFCCOMPILE = $(FC) $(FCDEFS) $(DEFAULT_INCLUDES) $(FCINCLUDES) $(AM_FCCPPFLAGS) $(FCCPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
@@ -848,7 +899,7 @@ LIB = $(lib_LIBRARIES) $(lib_LTLIBRARIES) $(noinst_LIBRARIES) \
PROGS = $(bin_PROGRAMS) $(bin_SCRIPTS) $(noinst_PROGRAMS) $(noinst_SCRIPTS) \
$(EXTRA_PROG)
-chk_TESTS = $(check_PROGRAMS) $(check_SCRIPTS) $(EXTRA_TEST)
+chk_TESTS = $(check_PROGRAMS) $(check_SCRIPTS) $(EXTRA_TEST)
TEST_EXTENSIONS = .sh
SH_LOG_COMPILER = $(SHELL)
AM_SH_LOG_FLAGS =
@@ -1406,7 +1457,7 @@ uninstall-am:
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
-# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
+# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -1420,9 +1471,9 @@ uninstall-am:
# commands that should be executed even if a file with the same name already
# exists.
.PHONY: build-check-clean build-check-p build-check-s build-lib build-progs \
- build-tests check-clean check-install check-p check-s check-vfd \
- check-passthrough-vol install-doc lib progs tests uninstall-doc \
- _exec_check-s _test help
+ build-tests check-clean check-install check-p check-s check-vfd \
+ check-passthrough-vol install-doc lib progs tests uninstall-doc \
+ _exec_check-s _test help trace doxygen
help:
@$(top_srcdir)/bin/makehelp
diff --git a/fortran/test/fflush1.F90 b/fortran/test/fflush1.F90
index bd1f551..c192d93 100644
--- a/fortran/test/fflush1.F90
+++ b/fortran/test/fflush1.F90
@@ -6,7 +6,7 @@
! FUNCTION
! This is the first half of a two-part test that makes sure
! that a file can be read after an application crashes as long
-! as the file was flushed first. We simulate by exit the
+! as the file was flushed first. We simulate by exit the
! the program using stop statement
!
! COPYRIGHT
@@ -18,7 +18,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/fflush2.F90 b/fortran/test/fflush2.F90
index 278f73d..dc3bc85 100644
--- a/fortran/test/fflush2.F90
+++ b/fortran/test/fflush2.F90
@@ -18,7 +18,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/fortranlib_test.F90 b/fortran/test/fortranlib_test.F90
index 8d5b32b..eff4657 100644
--- a/fortran/test/fortranlib_test.F90
+++ b/fortran/test/fortranlib_test.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -81,7 +81,7 @@ PROGRAM fortranlibtest
CALL file_space("file_space",cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' File free space test', total_error)
-!
+!
! '========================================='
! 'Testing DATASET Interface '
! '========================================='
@@ -97,7 +97,7 @@ PROGRAM fortranlibtest
CALL test_userblock_offset(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Dataset offset with user block', total_error)
-!
+!
! '========================================='
! 'Testing DATASPACE Interface '
! '========================================='
@@ -106,7 +106,7 @@ PROGRAM fortranlibtest
CALL dataspace_basic_test(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Basic dataspace test', total_error)
-!
+!
! '========================================='
! 'Testing REFERENCE Interface '
! '========================================='
@@ -119,7 +119,7 @@ PROGRAM fortranlibtest
CALL refregtest(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Reference to dataset region test', total_error)
-!
+!
! '========================================='
! 'Testing selection functionalities '
! '========================================='
@@ -148,8 +148,8 @@ PROGRAM fortranlibtest
ret_total_error = 0
CALL test_select_bounds(ret_total_error)
CALL write_test_status(ret_total_error, ' Selection bounds test ', total_error)
-
-!
+
+!
! '========================================='
! 'Testing DATATYPE interface '
! '========================================='
@@ -169,7 +169,7 @@ PROGRAM fortranlibtest
CALL test_derived_flt(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Derived float datatype test', total_error)
-!
+!
! '========================================='
! 'Testing PROPERTY interface '
! '========================================='
@@ -183,10 +183,14 @@ PROGRAM fortranlibtest
CALL write_test_status(ret_total_error, ' Multi file driver test', total_error)
ret_total_error = 0
- CALL test_chunk_cache (cleanup, ret_total_error)
+ CALL test_chunk_cache(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Dataset chunk cache configuration', total_error)
-!
+ ret_total_error = 0
+ CALL test_misc_properties(cleanup, ret_total_error)
+ CALL write_test_status(ret_total_error, ' Miscellaneous properties', total_error)
+
+!
! '========================================='
! 'Testing ATTRIBUTE interface '
! '========================================='
@@ -195,7 +199,7 @@ PROGRAM fortranlibtest
CALL attribute_test(cleanup, ret_total_error)
CALL write_test_status(ret_total_error, ' Attribute test', total_error)
-!
+!
! '========================================='
! 'Testing IDENTIFIER interface '
! '========================================='
@@ -217,7 +221,7 @@ PROGRAM fortranlibtest
CALL write_test_status(ret_total_error, ' SZIP filter test', total_error)
ENDIF
-!
+!
! '========================================='
! 'Testing GROUP interface '
! '========================================='
diff --git a/fortran/test/fortranlib_test_1_8.F90 b/fortran/test/fortranlib_test_1_8.F90
index 1306da5..64acba1 100644
--- a/fortran/test/fortranlib_test_1_8.F90
+++ b/fortran/test/fortranlib_test_1_8.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/fortranlib_test_F03.F90 b/fortran/test/fortranlib_test_F03.F90
index 808cb4d..b310bfe 100644
--- a/fortran/test/fortranlib_test_F03.F90
+++ b/fortran/test/fortranlib_test_F03.F90
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -24,7 +24,7 @@
!*****
PROGRAM fortranlibtest_F03
-
+
USE HDF5
USE THDF5_F03
@@ -48,7 +48,7 @@ PROGRAM fortranlibtest_F03
IF(total_error .EQ. 0) THEN
WRITE(*, '(" FORTRANLIB_TEST is linked with HDF5 Library version ")', advance="NO")
WRITE(*, '(I0)', advance="NO") majnum
- WRITE(*, '(".")', advance="NO")
+ WRITE(*, '(".")', advance="NO")
WRITE(*, '(I0)', advance="NO") minnum
WRITE(*, '(" release ")', advance="NO")
WRITE(*, '(I0)') relnum
@@ -77,11 +77,11 @@ PROGRAM fortranlibtest_F03
ret_total_error = 0
CALL t_enum(ret_total_error)
- CALL write_test_status(ret_total_error, ' Testing writing/reading enum dataset, using C_LOC', total_error)
+ CALL write_test_status(ret_total_error, ' Testing writing/reading enum dataset, using C_LOC', total_error)
ret_total_error = 0
CALL t_enum_conv(ret_total_error)
- CALL write_test_status(ret_total_error, ' Testing enumeration conversions', total_error)
+ CALL write_test_status(ret_total_error, ' Testing enumeration conversions', total_error)
ret_total_error = 0
CALL t_bit(ret_total_error)
@@ -89,7 +89,7 @@ PROGRAM fortranlibtest_F03
ret_total_error = 0
CALL t_opaque(ret_total_error)
- CALL write_test_status(ret_total_error, ' Testing writing/reading opaque datatypes, using C_LOC', total_error)
+ CALL write_test_status(ret_total_error, ' Testing writing/reading opaque datatypes, using C_LOC', total_error)
ret_total_error = 0
CALL t_objref(ret_total_error)
@@ -97,7 +97,7 @@ PROGRAM fortranlibtest_F03
ret_total_error = 0
CALL t_regref(ret_total_error)
- CALL write_test_status(ret_total_error, ' Testing writing/reading region references, using C_LOC', total_error)
+ CALL write_test_status(ret_total_error, ' Testing writing/reading region references, using C_LOC', total_error)
ret_total_error = 0
CALL t_vlen(ret_total_error)
@@ -150,7 +150,7 @@ PROGRAM fortranlibtest_F03
ret_total_error = 0
CALL test_h5p_file_image(ret_total_error)
CALL write_test_status(ret_total_error, ' Testing h5pset/get file image', total_error)
-
+
! write(*,*)
! write(*,*) '========================================='
! write(*,*) 'Testing OBJECT interface '
@@ -188,7 +188,7 @@ PROGRAM fortranlibtest_F03
WRITE(*, fmt = '(i4)', advance='NO') total_error
WRITE(*, fmt = '(12a)' ) ' error(s) ! '
WRITE(*,*) ' ============================================ '
-
+
CALL h5close_f(error)
! if errors detected, exit with non-zero code.
diff --git a/fortran/test/t.c b/fortran/test/t.c
index 26cb2c0..6dce111 100644
--- a/fortran/test/t.c
+++ b/fortran/test/t.c
@@ -15,7 +15,7 @@
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/t.h b/fortran/test/t.h
index aa28ef1..2066552 100644
--- a/fortran/test/t.h
+++ b/fortran/test/t.h
@@ -6,7 +6,7 @@
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
diff --git a/fortran/test/tH5A.F90 b/fortran/test/tH5A.F90
index 1e6fdeb..4d56bed 100644
--- a/fortran/test/tH5A.F90
+++ b/fortran/test/tH5A.F90
@@ -15,13 +15,13 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! CONTAINS SUBROUTINES
-! attribute_test
+! attribute_test
!
!
!*****
diff --git a/fortran/test/tH5A_1_8.F90 b/fortran/test/tH5A_1_8.F90
index f2f11aa..4e02c58 100644
--- a/fortran/test/tH5A_1_8.F90
+++ b/fortran/test/tH5A_1_8.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,7 +25,7 @@
! test_attr_create_by_name, test_attr_info_by_idx, attr_info_by_idx_check,
! test_attr_shared_rename, test_attr_delete_by_idx, test_attr_shared_delete,
! test_attr_dense_open, test_attr_dense_verify, test_attr_corder_create_basic,
-! test_attr_basic_write, test_attr_many, attr_open_check,
+! test_attr_basic_write, test_attr_many, attr_open_check,
!
!*****
MODULE TH5A_1_8
@@ -157,7 +157,7 @@ SUBROUTINE attribute_test_1_8(cleanup, total_error)
' - Testing creating attributes by name', &
total_error)
- ! More complex tests with both "new format" and "shared" attributes
+ ! More complex tests with both "new format" and "shared" attributes
IF( use_shared(j) ) THEN
ret_total_error = 0
CALL test_attr_shared_rename(my_fcpl, my_fapl, ret_total_error)
@@ -243,17 +243,17 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
data_dims = 0
! WRITE(*,*) " - Testing Compact Storage of Attributes with Creation Order Info"
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
CALL H5Pset_attr_creation_order_f(dcpl, IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), error)
CALL check("H5Pset_attr_creation_order",error,total_error)
- ! Query the attribute creation properties
+ ! Query the attribute creation properties
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
@@ -279,7 +279,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
my_dataset = dset3
END SELECT
DO u = 0, max_compact - 1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
@@ -296,7 +296,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
END DO
END DO
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dset1, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dset2, error)
@@ -304,15 +304,15 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
CALL h5dclose_f(dset3, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl, error)
CALL check("h5pclose_f",error,total_error)
@@ -339,34 +339,34 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
DO u = 0,max_compact-1
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
- ! Retrieve information for attribute
+ ! Retrieve information for attribute
CALL H5Aget_info_by_name_f(my_dataset, ".", attrname, &
f_corder_valid, corder, cset, data_size, error, lapl_id = H5P_DEFAULT_F ) !with optional
CALL check("H5Aget_info_by_name_f", error, total_error)
- ! Verify creation order of attribute
+ ! Verify creation order of attribute
CALL verify("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
CALL verify("H5Aget_info_by_name_f", corder, u, total_error)
- ! Retrieve information for attribute
+ ! Retrieve information for attribute
CALL H5Aget_info_by_name_f(my_dataset, ".", attrname, &
f_corder_valid, corder, cset, data_size, error) ! without optional
CALL check("H5Aget_info_by_name_f", error, total_error)
- ! Verify creation order of attribute
+ ! Verify creation order of attribute
CALL verify("H5Aget_info_by_name_f", f_corder_valid, .TRUE., total_error)
CALL verify("H5Aget_info_by_name_f", corder, u, total_error)
END DO
END DO
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dset1, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dset2, error)
@@ -374,7 +374,7 @@ SUBROUTINE test_attr_corder_create_compact(fcpl,fapl, total_error)
CALL h5dclose_f(dset3, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
@@ -423,33 +423,33 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error)
data_dims = 0
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error)
CALL check("h5open_f",error,total_error)
- ! Create dataspace for dataset attributes
+ ! Create dataspace for dataset attributes
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create "null" dataspace for attribute
+ ! Create "null" dataspace for attribute
CALL h5screate_f(H5S_NULL_F, null_sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error)
CALL check("h5dcreate_f",error,total_error)
- ! Add attribute with 'null' dataspace
+ ! Add attribute with 'null' dataspace
- ! Create attribute
+ ! Create attribute
CALL h5acreate_f(dataset, "null attr", H5T_NATIVE_INTEGER, null_sid, attr, error)
CALL check("h5acreate_f",error,total_error)
- ! Try to read data from the attribute
- ! (shouldn't fail, but should leave buffer alone)
+ ! Try to read data from the attribute
+ ! (shouldn't fail, but should leave buffer alone)
value(1) = 103
data_dims(1) = 1
CALL h5aread_f(attr, H5T_NATIVE_INTEGER, value, data_dims, error)
@@ -457,7 +457,7 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error)
CALL verify("h5aread_f",value(1),103,total_error)
! Try to read data from the attribute again but
-! for a scalar
+! for a scalar
value_scalar = 104
data_dims(1) = 1
@@ -479,7 +479,7 @@ SUBROUTINE test_attr_null_space(fcpl, fapl, total_error)
CALL h5aget_info_f(attr, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f", error, total_error)
- ! Check the attribute's information
+ ! Check the attribute's information
CALL verify("h5aget_info_f.corder",corder,0,total_error)
CALL verify("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
@@ -557,32 +557,32 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
data_dims = 0
- ! Create dataspace for dataset & attributes
+ ! Create dataspace for dataset & attributes
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Query the attribute creation properties
+ ! Query the attribute creation properties
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Loop over using index for creation order value
+ ! Loop over using index for creation order value
DO i = 1, 2
- ! Print appropriate test message
+ ! Print appropriate test message
IF(use_index(i))THEN
WRITE(*,*) " - Testing Creating Attributes By Name w/Creation Order Index"
ELSE
WRITE(*,*) " - Testing Creating Attributes By Name w/o Creation Order Index"
ENDIF
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Set attribute creation order tracking & indexing for object
+ ! Set attribute creation order tracking & indexing for object
IF(new_format)THEN
IF(use_index(i))THEN
@@ -596,7 +596,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
ENDIF
- ! Create datasets
+ ! Create datasets
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error, dcpl_id=dcpl )
CALL check("h5dcreate_f2",error,total_error)
@@ -608,7 +608,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
CALL check("h5dcreate_f4",error,total_error)
- ! Work on all the datasets
+ ! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
SELECT CASE (curr_dset)
@@ -626,39 +626,39 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
END SELECT
- ! Create attributes, up to limit of compact form
+ ! Create attributes, up to limit of compact form
DO u = 0, max_compact - 1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
CALL H5Acreate_by_name_f(fid, dsetname, attrname, H5T_NATIVE_INTEGER, sid, &
attr, error, lapl_id=H5P_DEFAULT_F, acpl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F)
CALL check("H5Acreate_by_name_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Verify information for NEW attribute
+ ! Verify information for NEW attribute
CALL attr_info_by_idx_check(my_dataset, attrname, INT(u,HSIZE_T), use_index(i), total_error)
! CALL check("FAILED IN attr_info_by_idx_check",total_error)
ENDDO
- ! Test opening attributes stored compactly
+ ! Test opening attributes stored compactly
CALL attr_open_check(fid, dsetname, my_dataset, u, total_error)
ENDDO
- ! Work on all the datasets
+ ! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
SELECT CASE (curr_dset)
CASE (0)
@@ -672,7 +672,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
dsetname = DSET3_NAME
END SELECT
- ! Create more attributes, to push into dense form
+ ! Create more attributes, to push into dense form
DO u = max_compact, max_compact* 2 - 1
WRITE(chr2,'(I2.2)') u
@@ -682,12 +682,12 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
attr, error, lapl_id=H5P_DEFAULT_F)
CALL check("H5Acreate_by_name",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
@@ -695,7 +695,7 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
ENDDO
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dset1, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dset2, error)
@@ -704,16 +704,16 @@ SUBROUTINE test_attr_create_by_name(new_format,fcpl,fapl, total_error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
ENDDO
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl, error)
CALL check("h5pclose_f",error,total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
@@ -781,31 +781,31 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
data_dims = 0
- ! Create dataspace for dataset & attributes
+ ! Create dataspace for dataset & attributes
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Query the attribute creation properties
+ ! Query the attribute creation properties
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Loop over using index for creation order value
+ ! Loop over using index for creation order value
DO i = 1, 2
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Set attribute creation order tracking & indexing for object
+ ! Set attribute creation order tracking & indexing for object
IF(new_format)THEN
IF(use_index(i))THEN
Input1 = H5P_CRT_ORDER_INDEXED_F
@@ -816,7 +816,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL check("H5Pset_attr_creation_order",error,total_error)
ENDIF
- ! Create datasets
+ ! Create datasets
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error )
CALL check("h5dcreate_f",error,total_error)
@@ -827,7 +827,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL h5dcreate_f(fid, DSET3_NAME, H5T_NATIVE_CHARACTER, sid, dset3, error )
CALL check("h5dcreate_f",error,total_error)
- ! Work on all the datasets
+ ! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
@@ -840,7 +840,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
my_dataset = dset3
END SELECT
- ! Check for query on non-existant attribute
+ ! Check for query on non-existant attribute
n = 0
@@ -870,10 +870,10 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL verify("h5aget_name_by_idx_f",error,minusone,total_error)
- ! Create attributes, up to limit of compact form
+ ! Create attributes, up to limit of compact form
DO j = 0, max_compact-1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') j
attrname = 'attr '//chr2
@@ -881,19 +881,19 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = j
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Verify information for new attribute
+ ! Verify information for new attribute
!EP CALL attr_info_by_idx_check(my_dataset, attrname, INT(j,HSIZE_T), use_index(i), total_error )
htmp = j
@@ -905,7 +905,7 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
ENDDO
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dset1, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dset2, error)
@@ -913,17 +913,17 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
CALL h5dclose_f(dset3, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
END DO
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl,error)
CALL check("h5pclose_f", error, total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
@@ -950,13 +950,13 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
INTEGER(HSIZE_T) :: hzero = 0_HSIZE_T
- ! Verify the information for first attribute, in increasing creation order
+ ! Verify the information for first attribute, in increasing creation order
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
- ! Verify the information for new attribute, in increasing creation order
+ ! Verify the information for new attribute, in increasing creation order
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, n, &
f_corder_valid, corder, cset, data_size, error)
@@ -964,7 +964,7 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
CALL check("h5aget_info_by_idx_f",error,total_error)
CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
- ! Verify the name for new link, in increasing creation order
+ ! Verify the name for new link, in increasing creation order
! Try with the correct buffer size
@@ -981,21 +981,21 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
! Don't test "native" order if there is no creation order index, since
! * there's not a good way to easily predict the attribute's order in the name
! * index.
- !
+ !
IF (use_index) THEN
- ! Verify the information for first attribute, in native creation order
+ ! Verify the information for first attribute, in native creation order
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
CALL verify("h5aget_info_by_idx_f",corder,0,total_error)
- ! Verify the information for new attribute, in native creation order
+ ! Verify the information for new attribute, in native creation order
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, n, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
CALL verify("h5aget_info_by_idx_f",corder,INT(n),total_error)
- ! Verify the name for new link, in increasing native order
+ ! Verify the name for new link, in increasing native order
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, &
n, tmpname, error) ! check with no optional parameters
CALL check("h5aget_name_by_idx_f",error,total_error)
@@ -1113,114 +1113,114 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
INTEGER(HSIZE_T), DIMENSION(1) :: adims2 = (/1/) ! Attribute dimension
INTEGER :: arank = 1 ! Attribure rank
- ! Initialize "big" attribute data
+ ! Initialize "big" attribute data
- ! Create dataspace for dataset
+ ! Create dataspace for dataset
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create "big" dataspace for "large" attributes
+ ! Create "big" dataspace for "large" attributes
CALL h5screate_simple_f(arank, adims2, big_sid, error)
CALL check("h5screate_simple_f",error,total_error)
- ! Loop over type of shared components
+ ! Loop over type of shared components
DO test_shared = 0, 2
- ! Make copy of file creation property list
+ ! Make copy of file creation property list
CALL H5Pcopy_f(fcpl, my_fcpl, error)
CALL check("H5Pcopy",error,total_error)
- ! Set up datatype for attributes
+ ! Set up datatype for attributes
CALL H5Tcopy_f(H5T_NATIVE_INTEGER, attr_tid, error)
CALL check("H5Tcopy",error,total_error)
- ! Special setup for each type of shared components
+ ! Special setup for each type of shared components
IF( test_shared .EQ. 0) THEN
- ! Make attributes > 500 bytes shared
+ ! Make attributes > 500 bytes shared
CALL H5Pset_shared_mesg_nindexes_f(my_fcpl,1,error)
CALL check("H5Pset_shared_mesg_nindexes_f",error, total_error)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error)
CALL check(" H5Pset_shared_mesg_index_f",error, total_error)
ELSE
- ! Set up copy of file creation property list
+ ! Set up copy of file creation property list
CALL H5Pset_shared_mesg_nindexes_f(my_fcpl,3,error)
- ! Make attributes > 500 bytes shared
+ ! Make attributes > 500 bytes shared
CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error)
- ! Make datatypes & dataspaces > 1 byte shared (i.e. all of them :-)
+ ! Make datatypes & dataspaces > 1 byte shared (i.e. all of them :-)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 1, H5O_SHMESG_DTYPE_FLAG_F, 1,error)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 2, H5O_SHMESG_SDSPACE_FLAG_F, 1,error)
ENDIF
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, my_fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Close FCPL copy
+ ! Close FCPL copy
CALL h5pclose_f(my_fcpl, error)
CALL check("h5pclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error,fapl)
CALL check("h5open_f",error,total_error)
- ! Commit datatype to file
+ ! Commit datatype to file
IF(test_shared.EQ.2) THEN
CALL H5Tcommit_f(fid, TYPE1_NAME, attr_tid, error, H5P_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("H5Tcommit",error,total_error)
ENDIF
- ! Set up to query the object creation properties
+ ! Set up to query the object creation properties
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Create datasets
+ ! Create datasets
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, dcpl_id=dcpl )
CALL check("h5dcreate_f",error,total_error)
CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dataset2, error, dcpl_id=dcpl )
CALL check("h5dcreate_f",error,total_error)
- ! Retrieve limits for compact/dense attribute storage
+ ! Retrieve limits for compact/dense attribute storage
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl,error)
CALL check("h5pclose_f", error, total_error)
- ! Add attributes to each dataset, until after converting to dense storage
+ ! Add attributes to each dataset, until after converting to dense storage
DO u = 0, (max_compact * 2) - 1
- ! Create attribute name
+ ! Create attribute name
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
- ! Alternate between creating "small" & "big" attributes
+ ! Alternate between creating "small" & "big" attributes
IF(MOD(u+1,2).EQ.0)THEN
- ! Create "small" attribute on first dataset
+ ! Create "small" attribute on first dataset
CALL h5acreate_f(dataset, attrname, attr_tid, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u + 1
data_dims(1) = 1
CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
ELSE
- ! Create "big" attribute on first dataset
+ ! Create "big" attribute on first dataset
CALL h5acreate_f(dataset, attrname, attr_tid, big_sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
data_dims(1) = 1
attr_integer_data(1) = u + 1
@@ -1229,19 +1229,19 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
ENDIF
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Alternate between creating "small" & "big" attributes
+ ! Alternate between creating "small" & "big" attributes
IF(MOD(u+1,2).EQ.0)THEN
- ! Create "small" attribute on second dataset
+ ! Create "small" attribute on second dataset
CALL h5acreate_f(dataset2, attrname, attr_tid, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u + 1
data_dims(1) = 1
@@ -1249,12 +1249,12 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
CALL check("h5awrite_f",error,total_error)
ELSE
- ! Create "big" attribute on second dataset
+ ! Create "big" attribute on second dataset
CALL h5acreate_f(dataset2, attrname, attr_tid, big_sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
-! Write data into the attribute
+! Write data into the attribute
attr_integer_data(1) = u + 1
@@ -1263,103 +1263,103 @@ SUBROUTINE test_attr_shared_rename( fcpl, fapl, total_error)
! CALL check("h5awrite_f",error,total_error)
-! Check refcount for attribute
+! Check refcount for attribute
ENDIF
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Create new attribute name
+ ! Create new attribute name
WRITE(chr2,'(I2.2)') u
attrname2 = 'new attr '//chr2
- ! Change second dataset's attribute's name
+ ! Change second dataset's attribute's name
CALL H5Arename_by_name_f(fid, DSET2_NAME, attrname, attrname2, error, lapl_id=H5P_DEFAULT_F)
CALL check("H5Arename_by_name_f",error,total_error)
- ! Check refcount on attributes now
+ ! Check refcount on attributes now
- ! Check refcount on renamed attribute
+ ! Check refcount on renamed attribute
CALL H5Aopen_f(dataset2, attrname2, attr, error, aapl_id=H5P_DEFAULT_F)
CALL check("H5Aopen_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Check refcount on original attribute
+ ! Check refcount on original attribute
CALL H5Aopen_f(dataset, attrname, attr, error)
CALL check("H5Aopen",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Change second dataset's attribute's name back to original
+ ! Change second dataset's attribute's name back to original
CALL H5Arename_by_name_f(fid, DSET2_NAME, attrname2, attrname, error)
CALL check("H5Arename_by_name_f",error,total_error)
- ! Check refcount on attributes now
+ ! Check refcount on attributes now
- ! Check refcount on renamed attribute
+ ! Check refcount on renamed attribute
CALL H5Aopen_f(dataset2, attrname, attr, error)
CALL check("H5Aopen",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Check refcount on original attribute
+ ! Check refcount on original attribute
- ! Check refcount on renamed attribute
+ ! Check refcount on renamed attribute
CALL H5Aopen_f(dataset, attrname, attr, error)
CALL check("H5Aopen",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
- ! Close attribute's datatype
+ ! Close attribute's datatype
CALL h5tclose_f(attr_tid, error)
CALL check("h5tclose_f",error,total_error)
- ! Close attribute's datatype
+ ! Close attribute's datatype
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dataset2, error)
CALL check("h5dclose_f",error,total_error)
- ! Unlink datasets with attributes
+ ! Unlink datasets with attributes
CALL H5Ldelete_f(fid, DSET1_NAME, error, H5P_DEFAULT_F)
CALL check("HLdelete",error,total_error)
CALL H5Ldelete_f(fid, DSET2_NAME, error)
CALL check("HLdelete",error,total_error)
- ! Unlink committed datatype
+ ! Unlink committed datatype
IF(test_shared == 2)THEN
CALL H5Ldelete_f(fid, TYPE1_NAME, error)
CALL check("HLdelete_f",error,total_error)
ENDIF
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Check size of file
+ ! Check size of file
!filesize = h5_get_file_size(FILENAME);
!verify(filesize, empty_filesize, "h5_get_file_size");
ENDDO
- ! Close dataspaces
+ ! Close dataspaces
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
CALL h5sclose_f(big_sid, error)
@@ -1384,9 +1384,9 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
INTEGER(HID_T), INTENT(IN) :: fapl
INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=8) :: FileName = "tattr.h5"
- INTEGER(HID_T) :: fid ! HDF5 File ID
- INTEGER(HID_T) :: dcpl ! Dataset creation property list ID
- INTEGER(HID_T) :: sid ! Dataspace ID
+ INTEGER(HID_T) :: fid ! HDF5 File ID
+ INTEGER(HID_T) :: dcpl ! Dataset creation property list ID
+ INTEGER(HID_T) :: sid ! Dataspace ID
CHARACTER(LEN=8) :: DSET1_NAME = "Dataset1"
CHARACTER(LEN=8) :: DSET2_NAME = "Dataset2"
@@ -1424,40 +1424,40 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
INTEGER :: idx_type
INTEGER :: order
- INTEGER :: u ! Local index variable
+ INTEGER :: u ! Local index variable
INTEGER :: Input1
INTEGER(HSIZE_T) :: hzero = 0_HSIZE_T
INTEGER :: minusone = -1
data_dims = 0
- ! Create dataspace for dataset & attributes
+ ! Create dataspace for dataset & attributes
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Query the attribute creation properties
+ ! Query the attribute creation properties
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Loop over operating on different indices on link fields
+ ! Loop over operating on different indices on link fields
DO idx_type = H5_INDEX_NAME_F, H5_INDEX_CRT_ORDER_F
- ! Loop over operating in different orders
+ ! Loop over operating in different orders
DO order = H5_ITER_INC_F, H5_ITER_DEC_F
- ! Loop over using index for creation order value
+ ! Loop over using index for creation order value
DO i = 1, 2
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Set attribute creation order tracking & indexing for object
+ ! Set attribute creation order tracking & indexing for object
IF(new_format)THEN
IF(use_index(i))THEN
@@ -1471,7 +1471,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
ENDIF
- ! Create datasets
+ ! Create datasets
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dset1, error, dcpl )
CALL check("h5dcreate_f2",error,total_error)
@@ -1482,7 +1482,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL h5dcreate_f(fid, DSET3_NAME, H5T_NATIVE_CHARACTER, sid, dset3, error, dcpl )
CALL check("h5dcreate_f4",error,total_error)
- ! Work on all the datasets
+ ! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
SELECT CASE (curr_dset)
@@ -1497,36 +1497,36 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
END SELECT
- ! Check for deleting non-existant attribute
+ ! Check for deleting non-existant attribute
!EP CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, 0_HSIZE_T,error, lapl_id=H5P_DEFAULT_F)
CALL H5Adelete_by_idx_f(my_dataset, '.', idx_type, order, hzero,error, lapl_id=H5P_DEFAULT_F)
CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
- ! Create attributes, up to limit of compact form
+ ! Create attributes, up to limit of compact form
DO u = 0, max_compact - 1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
CALL h5acreate_f(my_dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Verify information for new attribute
+ ! Verify information for new attribute
CALL attr_info_by_idx_check(my_dataset, attrname, INT(u,HSIZE_T), use_index(i), total_error )
ENDDO
- ! Check for out of bound deletions
+ ! Check for out of bound deletions
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(u,HSIZE_T), error, lapl_id=H5P_DEFAULT_F)
CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
@@ -1545,11 +1545,11 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
! CALL HDassert(0.AND."Toomanydatasets!")
END SELECT
- ! Delete attributes from compact storage
+ ! Delete attributes from compact storage
DO u = 0, max_compact - 2
- ! Delete first attribute in appropriate order
+ ! Delete first attribute in appropriate order
!EP CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, 0_HSIZE_T, error)
@@ -1557,7 +1557,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL check("H5Adelete_by_idx_f",error,total_error)
- ! Verify the attribute information for first attribute in appropriate order
+ ! Verify the attribute information for first attribute in appropriate order
! HDmemset(&ainfo, 0, sizeof(ainfo));
!EP CALL h5aget_info_by_idx_f(my_dataset, ".", idx_type, order, 0_HSIZE_T, &
@@ -1572,7 +1572,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL verify("H5Aget_info_by_idx_f",corder, max_compact-(u + 2),total_error)
ENDIF
- ! Verify the name for first attribute in appropriate order
+ ! Verify the name for first attribute in appropriate order
size = 7 ! *CHECK* IF NOT THE SAME SIZE
CALL h5aget_name_by_idx_f(my_dataset, ".", idx_type, order,INT(0,hsize_t), &
@@ -1589,7 +1589,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL verify("h5aget_name_by_idx_f",error,0,total_error)
ENDDO
- ! Delete last attribute
+ ! Delete last attribute
!EP CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, 0_HSIZE_T, error)
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, hzero, error)
@@ -1597,7 +1597,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
ENDDO
-! Work on all the datasets
+! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
SELECT CASE (curr_dset)
@@ -1611,11 +1611,11 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
! CALL HDassert(0.AND."Toomanydatasets!")
END SELECT
- ! Create more attributes, to push into dense form
+ ! Create more attributes, to push into dense form
DO u = 0, (max_compact * 2) - 1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
@@ -1623,24 +1623,24 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
- ! Check for out of bound deletion
+ ! Check for out of bound deletion
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(u,HSIZE_T), error)
CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
ENDDO
- ! Work on all the datasets
+ ! Work on all the datasets
DO curr_dset = 0,NUM_DSETS-1
SELECT CASE (curr_dset)
@@ -1652,15 +1652,15 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
my_dataset = dset3
END SELECT
- ! Delete attributes from dense storage
+ ! Delete attributes from dense storage
DO u = 0, (max_compact * 2) - 1 - 1
- ! Delete first attribute in appropriate order
+ ! Delete first attribute in appropriate order
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), error)
CALL check("H5Adelete_by_idx_f",error,total_error)
- ! Verify the attribute information for first attribute in appropriate order
+ ! Verify the attribute information for first attribute in appropriate order
CALL h5aget_info_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), &
f_corder_valid, corder, cset, data_size, error)
@@ -1672,7 +1672,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL verify("H5Aget_info_by_idx_f",corder, ((max_compact * 2) - (u + 2)), total_error)
ENDIF
- ! Verify the name for first attribute in appropriate order
+ ! Verify the name for first attribute in appropriate order
! HDmemset(tmpname, 0, (size_t)NAME_BUF_SIZE);
size = 7 ! *CHECK* if not the correct size
@@ -1691,17 +1691,17 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
ENDDO
- ! Delete last attribute
+ ! Delete last attribute
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), error, lapl_id=H5P_DEFAULT_F)
CALL check("H5Adelete_by_idx_f",error,total_error)
- ! Check for deletion on empty attribute storage again
+ ! Check for deletion on empty attribute storage again
CALL H5Adelete_by_idx_f(my_dataset, ".", idx_type, order, INT(0,HSIZE_T), error)
CALL verify("H5Adelete_by_idx_f",error,minusone,total_error)
ENDDO
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dset1, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dset2, error)
@@ -1709,18 +1709,18 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
CALL h5dclose_f(dset3, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
ENDDO
ENDDO
ENDDO
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl,error)
CALL check("h5pclose_f", error, total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
@@ -1775,77 +1775,77 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
INTEGER(HSIZE_T), DIMENSION(1) :: adims2 = (/1/) ! Attribute dimension
INTEGER :: arank = 1 ! Attribure rank
- ! Output message about test being performed
+ ! Output message about test being performed
- ! Initialize "big" attribute DATA
- ! Create dataspace for dataset
+ ! Initialize "big" attribute DATA
+ ! Create dataspace for dataset
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create "big" dataspace for "large" attributes
+ ! Create "big" dataspace for "large" attributes
CALL h5screate_simple_f(arank, adims2, big_sid, error)
CALL check("h5screate_simple_f",error,total_error)
- ! Loop over type of shared components
+ ! Loop over type of shared components
DO test_shared = 0, 2
- ! Make copy of file creation property list
+ ! Make copy of file creation property list
CALL H5Pcopy_f(fcpl, my_fcpl, error)
CALL check("H5Pcopy",error,total_error)
- ! Set up datatype for attributes
+ ! Set up datatype for attributes
CALL H5Tcopy_f(H5T_NATIVE_INTEGER, attr_tid, error)
CALL check("H5Tcopy",error,total_error)
- ! Special setup for each type of shared components
+ ! Special setup for each type of shared components
IF( test_shared .EQ. 0) THEN
- ! Make attributes > 500 bytes shared
+ ! Make attributes > 500 bytes shared
CALL H5Pset_shared_mesg_nindexes_f(my_fcpl,1,error)
CALL check("H5Pset_shared_mesg_nindexes_f",error, total_error)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error)
CALL check(" H5Pset_shared_mesg_index_f",error, total_error)
ELSE
- ! Set up copy of file creation property list
+ ! Set up copy of file creation property list
CALL H5Pset_shared_mesg_nindexes_f(my_fcpl,3,error)
- ! Make attributes > 500 bytes shared
+ ! Make attributes > 500 bytes shared
CALL H5Pset_shared_mesg_index_f(my_fcpl, 0, H5O_SHMESG_ATTR_FLAG_F, 500,error)
- ! Make datatypes & dataspaces > 1 byte shared (i.e. all of them :-)
+ ! Make datatypes & dataspaces > 1 byte shared (i.e. all of them :-)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 1, H5O_SHMESG_DTYPE_FLAG_F, 1,error)
CALL H5Pset_shared_mesg_index_f(my_fcpl, 2, H5O_SHMESG_SDSPACE_FLAG_F, 1,error)
ENDIF
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, my_fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Close FCPL copy
+ ! Close FCPL copy
CALL h5pclose_f(my_fcpl, error)
CALL check("h5pclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error,fapl)
CALL check("h5open_f",error,total_error)
- ! Commit datatype to file
+ ! Commit datatype to file
IF(test_shared.EQ.2) THEN
CALL H5Tcommit_f(fid, TYPE1_NAME, attr_tid, error, H5P_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("H5Tcommit",error,total_error)
ENDIF
- ! Set up to query the object creation properties
+ ! Set up to query the object creation properties
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Create datasets
+ ! Create datasets
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, dcpl_id=dcpl )
CALL check("h5dcreate_f",error,total_error)
@@ -1853,42 +1853,42 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
CALL h5dcreate_f(fid, DSET2_NAME, H5T_NATIVE_CHARACTER, sid, dataset2, error, dcpl_id=dcpl )
CALL check("h5dcreate_f",error,total_error)
- ! Retrieve limits for compact/dense attribute storage
+ ! Retrieve limits for compact/dense attribute storage
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl,error)
CALL check("h5pclose_f", error, total_error)
- ! Add attributes to each dataset, until after converting to dense storage
+ ! Add attributes to each dataset, until after converting to dense storage
DO u = 0, (max_compact * 2) - 1
- ! Create attribute name
+ ! Create attribute name
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
- ! Alternate between creating "small" & "big" attributes
+ ! Alternate between creating "small" & "big" attributes
IF(MOD(u+1,2).EQ.0)THEN
- ! Create "small" attribute on first dataset
+ ! Create "small" attribute on first dataset
CALL h5acreate_f(dataset, attrname, attr_tid, sid, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u + 1
data_dims(1) = 1
CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
ELSE
- ! Create "big" attribute on first dataset
+ ! Create "big" attribute on first dataset
CALL h5acreate_f(dataset, attrname, attr_tid, big_sid, attr, error)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u + 1
data_dims(1) = 1
@@ -1897,31 +1897,31 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
ENDIF
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Alternate between creating "small" & "big" attributes
+ ! Alternate between creating "small" & "big" attributes
IF(MOD(u+1,2).EQ.0)THEN
- ! Create "small" attribute on second dataset
+ ! Create "small" attribute on second dataset
CALL h5acreate_f(dataset2, attrname, attr_tid, sid, attr, error)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
attr_integer_data(1) = u + 1
data_dims(1) = 1
CALL h5awrite_f(attr, attr_tid, attr_integer_data, data_dims, error)
CALL check("h5awrite_f",error,total_error)
ELSE
- ! Create "big" attribute on second dataset
+ ! Create "big" attribute on second dataset
CALL h5acreate_f(dataset2, attrname, attr_tid, big_sid, attr, error, acpl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
-! Write data into the attribute
+! Write data into the attribute
attr_integer_data(1) = u + 1
@@ -1930,21 +1930,21 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
CALL check("h5awrite_f",error,total_error)
ENDIF
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
- ! Delete attributes from second dataset
+ ! Delete attributes from second dataset
DO u = 0, max_compact*2-1
- ! Create attribute name
+ ! Create attribute name
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
- ! Delete second dataset's attribute
+ ! Delete second dataset's attribute
CALL H5Adelete_by_name_f(fid, DSET2_NAME, attrname,error,lapl_id=H5P_DEFAULT_F)
CALL check("H5Adelete_by_name", error, total_error)
@@ -1952,31 +1952,31 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
CALL check("h5aopen_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
- ! Close attribute's datatype
+ ! Close attribute's datatype
CALL h5tclose_f(attr_tid, error)
CALL check("h5tclose_f",error,total_error)
- ! Close Datasets
+ ! Close Datasets
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
CALL h5dclose_f(dataset2, error)
CALL check("h5dclose_f",error,total_error)
- ! Unlink datasets WITH attributes
+ ! Unlink datasets WITH attributes
CALL h5ldelete_f(fid, DSET1_NAME, error, H5P_DEFAULT_F)
CALL check("H5Ldelete_f", error, total_error)
CALL h5ldelete_f(fid, DSET2_NAME, error)
CALL check("H5Ldelete_f", error, total_error)
- ! Unlink committed datatype
+ ! Unlink committed datatype
IF( test_shared == 2) THEN
CALL h5ldelete_f(fid, TYPE1_NAME, error)
@@ -1984,13 +1984,13 @@ SUBROUTINE test_attr_shared_delete(fcpl, fapl, total_error)
ENDIF
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
ENDDO
- ! Close dataspaces
+ ! Close dataspaces
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
CALL h5sclose_f(big_sid, error)
@@ -2040,73 +2040,73 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error)
data_dims = 0
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error, fapl)
CALL check("h5open_f",error,total_error)
- ! Create dataspace for dataset
+ ! Create dataspace for dataset
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Query the group creation properties
+ ! Query the group creation properties
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Enable creation order tracking on attributes, so creation order tests work
+ ! Enable creation order tracking on attributes, so creation order tests work
CALL H5Pset_attr_creation_order_f(dcpl, H5P_CRT_ORDER_TRACKED_F, error)
CALL check("H5Pset_attr_creation_order",error,total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, &
lcpl_id=H5P_DEFAULT_F, dcpl_id=dcpl, dapl_id=H5P_DEFAULT_F)
CALL check("h5dcreate_f",error,total_error)
- ! Retrieve limits for compact/dense attribute storage
+ ! Retrieve limits for compact/dense attribute storage
CALL H5Pget_attr_phase_change_f(dcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f",error,total_error)
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl, error)
CALL check("h5pclose_f",error,total_error)
- ! Add attributes, until just before converting to dense storage
+ ! Add attributes, until just before converting to dense storage
DO u = 0, max_compact - 1
- ! Create attribute
+ ! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
CALL h5acreate_f(dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, aapl_id=H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Verify attributes written so far
+ ! Verify attributes written so far
CALL test_attr_dense_verify(dataset, u, total_error)
ENDDO
!
-! Add one more attribute, to push into "dense" storage
-! Create attribute
+! Add one more attribute, to push into "dense" storage
+! Create attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
@@ -2114,36 +2114,36 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error)
CALL h5acreate_f(dataset, attrname, H5T_NATIVE_INTEGER, sid, attr, error, aapl_id=H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write data into the attribute
+ ! Write data into the attribute
data_dims(1) = 1
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, u, data_dims, error)
CALL check("h5awrite_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
- ! Verify all the attributes written
+ ! Verify all the attributes written
! ret = test_attr_dense_verify(dataset, (u + 1));
! CHECK(ret, FAIL, "test_attr_dense_verify");
- ! CLOSE Dataset
+ ! CLOSE Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
- ! Unlink dataset with attributes
+ ! Unlink dataset with attributes
CALL h5ldelete_f(fid, DSET1_NAME, error, H5P_DEFAULT_F)
CALL check("H5Ldelete_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Check size of file
+ ! Check size of file
! filesize = h5_get_file_size(FILENAME);
! verify(filesize, empty_filesize, "h5_get_file_size")
@@ -2179,21 +2179,21 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
data_dims = 0
- ! Retrieve the current # of reported errors
+ ! Retrieve the current # of reported errors
! old_nerrs = GetTestNumErrs();
- ! Re-open all the attributes by name and verify the data
+ ! Re-open all the attributes by name and verify the data
DO u = 0, max_attr -1
- ! Open attribute
+ ! Open attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
CALL h5aopen_f(loc_id, attrname, attr, error)
CALL check("h5aopen_f",error,total_error)
- ! Read data from the attribute
+ ! Read data from the attribute
! value = 103
data_dims(1) = 1
@@ -2202,22 +2202,22 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
CALL CHECK("H5Aread_F", error, total_error)
CALL verify("H5Aread_F", value, u, total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
- ! Re-open all the attributes by index and verify the data
+ ! Re-open all the attributes by index and verify the data
DO u=0, max_attr-1
- ! Open attribute
+ ! Open attribute
CALL H5Aopen_by_idx_f(loc_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(u,HSIZE_T), &
attr, error, aapl_id=H5P_DEFAULT_F)
- ! Verify Name
+ ! Verify Name
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
@@ -2228,14 +2228,14 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
WRITE(*,*) 'ERROR: attribute name different: attr_name = ',check_name, ', should be ', attrname
total_error = total_error + 1
ENDIF
- ! Read data from the attribute
+ ! Read data from the attribute
data_dims(1) = 1
CALL h5aread_f(attr, H5T_NATIVE_INTEGER, value, data_dims, error)
CALL CHECK("H5Aread_f", error, total_error)
CALL verify("H5Aread_f", value, u, total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
@@ -2270,30 +2270,30 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
INTEGER :: crt_order_flags
INTEGER :: minusone = -1
- ! Output message about test being performed
+ ! Output message about test being performed
! WRITE(*,*) " - Testing Basic Code for Attributes with Creation Order Info"
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F,dcpl,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Get creation order indexing on object
+ ! Get creation order indexing on object
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
- ! Setting invalid combination of a attribute order creation order indexing on should fail
+ ! Setting invalid combination of a attribute order creation order indexing on should fail
CALL H5Pset_attr_creation_order_f(dcpl, H5P_CRT_ORDER_INDEXED_F, error)
CALL verify("H5Pset_attr_creation_order_f",error , minusone, total_error)
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , 0, total_error)
- ! Set attribute creation order tracking & indexing for object
+ ! Set attribute creation order tracking & indexing for object
CALL h5pset_attr_creation_order_f(dcpl, IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), error)
CALL check("H5Pset_attr_creation_order_f",error,total_error)
@@ -2302,60 +2302,60 @@ SUBROUTINE test_attr_corder_create_basic( fcpl, fapl, total_error )
CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , &
IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), total_error)
- ! Create dataspace for dataset
+ ! Create dataspace for dataset
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid, DSET1_NAME, H5T_NATIVE_CHARACTER, sid, dataset, error, &
lcpl_id=H5P_DEFAULT_F, dapl_id=H5P_DEFAULT_F, dcpl_id=dcpl)
CALL check("h5dcreate_f",error,total_error)
- ! Close dataspace
+ ! Close dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl, error)
CALL check("h5pclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error, fapl)
CALL check("h5open_f",error,total_error)
- ! Open dataset created
+ ! Open dataset created
CALL h5dopen_f(fid, DSET1_NAME, dataset, error, H5P_DEFAULT_F )
CALL check("h5dopen_f",error,total_error)
- ! Retrieve dataset creation property list for group
+ ! Retrieve dataset creation property list for group
CALL H5Dget_create_plist_f(dataset, dcpl, error)
CALL check("H5Dget_create_plist_f",error,total_error)
- ! Query the attribute creation properties
+ ! Query the attribute creation properties
CALL H5Pget_attr_creation_order_f(dcpl, crt_order_flags, error)
CALL check("H5Pget_attr_creation_order_f",error,total_error)
CALL verify("H5Pget_attr_creation_order_f",crt_order_flags , &
IOR(H5P_CRT_ORDER_TRACKED_F, H5P_CRT_ORDER_INDEXED_F), total_error )
- ! Close property list
+ ! Close property list
CALL h5pclose_f(dcpl, error)
CALL check("h5pclose_f",error,total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
@@ -2418,97 +2418,97 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
attr_data1a(3) = -99890
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid1, error, H5P_DEFAULT_F, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Create dataspace for dataset
+ ! Create dataspace for dataset
CALL h5screate_simple_f(rank1, dims1, sid1, error, maxdims1)
CALL check("h5screate_simple_f",error,total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid1, DSET1_NAME, H5T_NATIVE_CHARACTER, sid1, dataset, error, H5P_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F )
CALL check("h5dcreate_f",error,total_error)
- ! Create dataspace for attribute
+ ! Create dataspace for attribute
CALL h5screate_simple_f(ATTR1_RANK, dimsa, sid2, error)
CALL check("h5screate_simple_f",error,total_error)
- ! Try to create an attribute on the file (should create an attribute on root group)
+ ! Try to create an attribute on the file (should create an attribute on root group)
CALL h5acreate_f(fid1, ATTR1_NAME, H5T_NATIVE_INTEGER, sid2, attr, error, aapl_id=H5P_DEFAULT_F, acpl_id=H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Open the root group
+ ! Open the root group
CALL H5Gopen_f(fid1, "/", group, error, H5P_DEFAULT_F)
CALL check("H5Gopen_f",error,total_error)
- ! Open attribute again
+ ! Open attribute again
CALL h5aopen_f(group, ATTR1_NAME, attr, error)
CALL check("h5aopen_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Close root group
+ ! Close root group
CALL H5Gclose_f(group, error)
CALL check("h5gclose_f",error,total_error)
- ! Create an attribute for the dataset
+ ! Create an attribute for the dataset
CALL h5acreate_f(dataset, ATTR1_NAME, H5T_NATIVE_INTEGER, sid2, attr, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write attribute information
+ ! Write attribute information
CALL h5awrite_f(attr, H5T_NATIVE_INTEGER, attr_data1, dimsa, error)
CALL check("h5awrite_f",error,total_error)
- ! Create an another attribute for the dataset
+ ! Create an another attribute for the dataset
CALL h5acreate_f(dataset, ATTR1A_NAME, H5T_NATIVE_INTEGER, sid2, attr2, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5acreate_f",error,total_error)
- ! Write attribute information
+ ! Write attribute information
CALL h5awrite_f(attr2, H5T_NATIVE_INTEGER, attr_data1a, dimsa, error)
CALL check("h5awrite_f",error,total_error)
- ! Check storage size for attribute
+ ! Check storage size for attribute
CALL h5aget_storage_size_f(attr, attr_size, error)
CALL check("h5aget_storage_size_f",error,total_error)
!EP CALL verify("h5aget_storage_size_f", INT(attr_size), 2*HSIZE_T, total_error)
- ! Read attribute information immediately, without closing attribute
+ ! Read attribute information immediately, without closing attribute
CALL h5aread_f(attr, H5T_NATIVE_INTEGER, read_data1, dimsa, error)
CALL check("h5aread_f",error,total_error)
- ! Verify values read in
+ ! Verify values read in
DO i = 1, ATTR1_DIM1
CALL verify('h5aread_f',attr_data1(i),read_data1(i), total_error)
ENDDO
- ! CLOSE attribute
+ ! CLOSE attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr2, error)
CALL check("h5aclose_f",error,total_error)
- ! change attribute name
+ ! change attribute name
CALL H5Arename_f(dataset, ATTR1_NAME, ATTR_TMP_NAME, error)
CALL check("H5Arename_f", error, total_error)
- ! Open attribute again
+ ! Open attribute again
CALL h5aopen_f(dataset, ATTR_TMP_NAME, attr, error)
CALL check("h5aopen_f",error,total_error)
- ! Verify new attribute name
+ ! Verify new attribute name
! Set a deliberately small size
check_name = ' ' ! need to initialize or does not pass test
@@ -2539,7 +2539,7 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
CALL check('H5Aget_name_f',error,total_error)
CALL verify('H5Aget_name_f',chr_exact_size,ATTR_TMP_NAME, total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr, error)
CALL check("h5aclose_f",error,total_error)
@@ -2547,11 +2547,11 @@ SUBROUTINE test_attr_basic_write(fapl, total_error)
CALL check("h5sclose_f",error,total_error)
CALL h5sclose_f(sid2, error)
CALL check("h5sclose_f",error,total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1, error)
CALL check("h5fclose_f",error,total_error)
@@ -2594,20 +2594,20 @@ SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error)
data_dims = 0
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, fcpl, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Create dataspace for attribute
+ ! Create dataspace for attribute
CALL h5screate_f(H5S_SCALAR_F, sid, error)
CALL check("h5screate_f",error,total_error)
- ! Create group for attributes
+ ! Create group for attributes
CALL H5Gcreate_f(fid, GROUP1_NAME, gid, error)
CALL check("H5Gcreate_f", error, total_error)
- ! Create many attributes
+ ! Create many attributes
IF(new_format)THEN
nattr = 250
@@ -2651,15 +2651,15 @@ SUBROUTINE test_attr_many(new_format, fcpl, fapl, total_error)
ENDDO
- ! Close group
+ ! Close group
CALL H5Gclose_f(gid, error)
CALL check("h5gclose_f",error,total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Close dataspaces
+ ! Close dataspaces
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f",error,total_error)
@@ -2677,7 +2677,7 @@ END SUBROUTINE test_attr_many
! * March 21, 2008
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
@@ -2699,10 +2699,10 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
INTEGER(HSIZE_T) :: storage_size ! attributes storage requirements
CHARACTER(LEN=2) :: chr2
INTEGER(HID_T) attr_id
- ! Open each attribute on object by index and check that it's the correct one
+ ! Open each attribute on object by index and check that it's the correct one
DO u = 0, max_attrs-1
- ! Open the attribute
+ ! Open the attribute
WRITE(chr2,'(I2.2)') u
attrname = 'attr '//chr2
@@ -2712,12 +2712,12 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL check("h5aopen_f",error,total_error)
- ! Get the attribute's information
+ ! Get the attribute's information
CALL h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f",error,total_error)
- ! Check that the object's attributes are correct
+ ! Check that the object's attributes are correct
CALL verify("h5aget_info_f.corder",corder,u,total_error)
CALL verify("h5aget_info_f.corder_valid",f_corder_valid,.TRUE.,total_error)
CALL verify("h5aget_info_f.cset", cset, H5T_CSET_ASCII_F, total_error)
@@ -2727,18 +2727,18 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL verify("h5aget_info_f.data_size", INT(data_size), INT(storage_size), total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr_id, error)
CALL check("h5aclose_f",error,total_error)
- ! Open the attribute
+ ! Open the attribute
CALL H5Aopen_by_name_f(obj_id, ".", attrname, attr_id, error, lapl_id=H5P_DEFAULT_F, aapl_id=H5P_DEFAULT_F)
CALL check("H5Aopen_by_name_f", error, total_error)
CALL h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f",error,total_error)
- ! Check the attribute's information
+ ! Check the attribute's information
CALL verify("h5aget_info_f",corder,u,total_error)
CALL verify("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
CALL verify("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
@@ -2746,21 +2746,21 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL check("h5aget_storage_size_f",error,total_error)
CALL verify("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr_id, error)
CALL check("h5aclose_f",error,total_error)
- ! Open the attribute
+ ! Open the attribute
CALL H5Aopen_by_name_f(fid, dsetname, attrname, attr_id, error)
CALL check("H5Aopen_by_name_f", error, total_error)
- ! Get the attribute's information
+ ! Get the attribute's information
CALL h5aget_info_f(attr_id, f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_f",error,total_error)
- ! Check the attribute's information
+ ! Check the attribute's information
CALL verify("h5aget_info_f",corder,u,total_error)
CALL verify("h5aget_info_f",f_corder_valid,.TRUE.,total_error)
CALL verify("h5aget_info_f", cset, H5T_CSET_ASCII_F, total_error)
@@ -2768,7 +2768,7 @@ SUBROUTINE attr_open_check(fid, dsetname, obj_id, max_attrs, total_error )
CALL check("h5aget_storage_size_f",error,total_error)
CALL verify("h5aget_info_f", INT(data_size), INT(storage_size), total_error)
- ! Close attribute
+ ! Close attribute
CALL h5aclose_f(attr_id, error)
CALL check("h5aclose_f",error,total_error)
ENDDO
diff --git a/fortran/test/tH5D.F90 b/fortran/test/tH5D.F90
index 7001b98..006d62a 100644
--- a/fortran/test/tH5D.F90
+++ b/fortran/test/tH5D.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -44,31 +44,31 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(OUT) :: total_error
-
+
CHARACTER(LEN=5), PARAMETER :: filename = "dsetf" ! File name
CHARACTER(LEN=80) :: fix_filename
CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name
CHARACTER(LEN=9), PARAMETER :: null_dsetname = "null_dset" ! Dataset name
-
+
INTEGER(HID_T) :: file_id ! File identifier
INTEGER(HID_T) :: dset_id ! Dataset identifier
INTEGER(HID_T) :: null_dset ! Null dataset identifier
INTEGER(HID_T) :: dspace_id ! Dataspace identifier
INTEGER(HID_T) :: null_dspace ! Null dataspace identifier
INTEGER(HID_T) :: dtype_id ! Datatype identifier
-
+
INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/4,6/) ! Dataset dimensions
INTEGER :: rank = 2 ! Dataset rank
-
+
INTEGER, DIMENSION(4,6) :: dset_data, data_out ! Data buffers
INTEGER :: error ! Error flag
-
+
INTEGER :: i, j !general purpose integers
INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
INTEGER(HSIZE_T), DIMENSION(1) :: null_data_dim
INTEGER :: null_dset_data = 1 ! null data
INTEGER :: flag ! Space allocation status
-
+
!
! Initialize the dset_data array.
!
@@ -157,10 +157,10 @@ CONTAINS
CALL h5dget_space_status_f(dset_id, flag, error)
CALL check("h5dget_space_status_f",error, total_error)
CALL VERIFY("h5dget_space_status_f", flag, H5D_SPACE_STS_ALLOCATED_F, total_error)
-
+
CALL h5dget_space_status_f(null_dset, flag, error)
CALL check("h5dget_space_status_f",error, total_error)
- CALL VERIFY("h5dget_space_status_f", flag, H5D_SPACE_STS_NOT_ALLOCATED_F, total_error)
+ CALL VERIFY("h5dget_space_status_f", flag, H5D_SPACE_STS_NOT_ALLOCATED_F, total_error)
!
! Get the dataset type.
!
@@ -210,7 +210,7 @@ CONTAINS
!
CALL h5sclose_f(dspace_id, error)
CALL check("h5sclose_f", error, total_error)
-
+
!
! Terminate access to the data type.
!
@@ -223,86 +223,86 @@ CONTAINS
CALL check("h5fclose_f", error, total_error)
IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
-
+
RETURN
END SUBROUTINE datasettest
-
+
!
!the following subroutine tests h5dextend_f functionality
!
SUBROUTINE extenddsettest(cleanup, total_error)
-
+
IMPLICIT NONE
-
+
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(OUT) :: total_error
-
+
!
!the dataset is stored in file "extf.h5"
!
CHARACTER(LEN=4), PARAMETER :: filename = "extf"
CHARACTER(LEN=80) :: fix_filename
-
+
!
!dataset name is "ExtendibleArray"
!
CHARACTER(LEN=15), PARAMETER :: dsetname = "ExtendibleArray"
-
+
!
!dataset rank is 2
!
INTEGER :: RANK = 2
-
+
INTEGER(HID_T) :: file_id ! File identifier
INTEGER(HID_T) :: dset_id ! Dataset identifier
INTEGER(HID_T) :: dataspace ! Dataspace identifier
INTEGER(HID_T) :: memspace ! memory Dataspace identifier
INTEGER(HID_T) :: crp_list ! dataset creatation property identifier
-
+
!
!dataset dimensions at creation time
!
INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/3,3/)
-
+
!
!data dimensions
!
INTEGER(HSIZE_T), DIMENSION(2) :: dims1 = (/10,3/)
-
+
!
!Maximum dimensions
!
INTEGER(HSIZE_T), DIMENSION(2) :: maxdims
-
+
!
!data arrays for reading and writing
!
INTEGER, DIMENSION(10,3) :: data_in, data_out
-
+
!
!Size of data in the file
!
INTEGER(HSIZE_T), DIMENSION(2) :: size
-
+
!
!general purpose integer
!
INTEGER :: i, j
INTEGER(HSIZE_T) :: ih, jh
-
+
!
!flag to check operation success
!
INTEGER :: error
-
+
!
!Variables used in reading data back
!
INTEGER(HSIZE_T), DIMENSION(2) :: dimsr, maxdimsr
INTEGER :: rankr
INTEGER(HSIZE_T), DIMENSION(2) :: data_dims
-
+
!
!data initialization
!
@@ -311,7 +311,7 @@ CONTAINS
data_in(i,j) = 2
END DO
END DO
-
+
!
!Initialize FORTRAN predifined datatypes
!
@@ -328,24 +328,24 @@ CONTAINS
ENDIF
CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
CALL check("h5fcreate_f",error,total_error)
-
+
!
!Create the data space with unlimited dimensions.
!
maxdims = (/H5S_UNLIMITED_F, H5S_UNLIMITED_F/)
-
+
CALL h5screate_simple_f(RANK, dims, dataspace, error, maxdims)
CALL check("h5screate_simple_f",error,total_error)
-
+
!
!Modify dataset creation properties, i.e. enable chunking
!
CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error)
CALL check("h5pcreate_f",error,total_error)
-
+
CALL h5pset_chunk_f(crp_list, RANK, dims1, error)
CALL check("h5pset_chunk_f",error,total_error)
-
+
!
!Create a dataset with 3X3 dimensions using cparms creation propertie .
!
@@ -359,8 +359,8 @@ CONTAINS
SIZE(2) = 3
CALL h5dextend_f(dset_id, size, error)
CALL check("h5dextend_f",error,total_error)
-
-
+
+
!
!Extend the dataset. Dataset becomes 10 x 3.
!
@@ -368,7 +368,7 @@ CONTAINS
SIZE(2) = 3;
CALL h5dextend_f(dset_id, size, error)
CALL check("h5dextend_f",error,total_error)
-
+
!
!Write the data of size 10X3 to the extended dataset.
!
@@ -376,13 +376,13 @@ CONTAINS
data_dims(2) = 3
CALL H5dwrite_f(dset_id, H5T_NATIVE_INTEGER, data_in, data_dims, error)
CALL check("h5dwrite_f",error,total_error)
-
+
!
!Close the dataspace for the dataset.
!
CALL h5sclose_f(dataspace, error)
CALL check("h5sclose_f",error,total_error)
-
+
!
!Close the property list.
!
@@ -393,13 +393,13 @@ CONTAINS
!
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f",error,total_error)
-
+
!
!Close the file.
!
CALL h5fclose_f(file_id, error)
CALL check("h5fclose_f",error,total_error)
-
+
!
!read the data back
!
@@ -407,19 +407,19 @@ CONTAINS
!
CALL h5fopen_f (fix_filename, H5F_ACC_RDONLY_F, file_id, error)
CALL check("hfopen_f",error,total_error)
-
+
!
!Open the dataset.
!
CALL h5dopen_f(file_id, dsetname, dset_id, error)
CALL check("h5dopen_f",error,total_error)
-
+
!
!Get dataset's dataspace handle.
!
CALL h5dget_space_f(dset_id, dataspace, error)
CALL check("h5dget_space_f",error,total_error)
-
+
!
!Get dataspace's rank.
!
@@ -429,7 +429,7 @@ CONTAINS
WRITE(*,*) "dataset rank error occured"
STOP
END IF
-
+
!
!Get dataspace's dimensinons.
!
@@ -439,27 +439,27 @@ CONTAINS
WRITE(*,*) "dataset dimensions error occured"
STOP
END IF
-
+
!
!Get creation property list.
!
CALL h5dget_create_plist_f(dset_id, crp_list, error)
CALL check("h5dget_create_plist_f",error,total_error)
-
+
!
!create memory dataspace.
!
CALL h5screate_simple_f(rankr, dimsr, memspace, error)
CALL check("h5screate_simple_f",error,total_error)
-
+
!
!Read data
!
CALL H5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error, memspace, dataspace)
CALL check("h5dread_f",error,total_error)
-
+
!
!Compare the data.
!
@@ -471,31 +471,31 @@ CONTAINS
END IF
END DO
END DO
-
+
!
!Close the dataspace for the dataset.
!
CALL h5sclose_f(dataspace, error)
CALL check("h5sclose_f",error,total_error)
-
+
!
!Close the memspace for the dataset.
!
CALL h5sclose_f(memspace, error)
CALL check("h5sclose_f",error,total_error)
-
+
!
!Close the property list.
!
CALL h5pclose_f(crp_list, error)
CALL check("h5pclose_f",error,total_error)
-
+
!
!Close the dataset.
!
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f",error,total_error)
-
+
!
!Close the file.
!
@@ -503,7 +503,7 @@ CONTAINS
CALL check("h5fclose_f",error,total_error)
IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
-
+
RETURN
END SUBROUTINE extenddsettest
@@ -549,7 +549,7 @@ CONTAINS
DO i = 1, dset_dim1
DO j = 1, dset_dim2
n = n + 1
- data_in(i,j) = n
+ data_in(i,j) = n
END DO
END DO
CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file, error, fcpl)
@@ -557,7 +557,7 @@ CONTAINS
! Create the data space
dims(1:2) = (/dset_dim1,dset_dim2/)
-
+
CALL h5screate_simple_f(2, dims, space, error)
CALL check("h5screate_simple_f",error,total_error)
@@ -596,7 +596,7 @@ CONTAINS
total_error = total_error + 1
RETURN
ENDIF
- ! The pos= specifier illustrates that positions are in bytes,
+ ! The pos= specifier illustrates that positions are in bytes,
! starting from byte 1 (as opposed to C, where they start from byte 0)
READ(10, POS=offset+1, IOSTAT=ios) rdata
IF(ios.NE.0)THEN
@@ -625,7 +625,7 @@ CONTAINS
CALL check("h5_cleanup_f", error, total_error)
IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
-
+
END SUBROUTINE test_userblock_offset
END MODULE TH5D
diff --git a/fortran/test/tH5E.F90 b/fortran/test/tH5E.F90
index 3cda6e1..e5400fd 100644
--- a/fortran/test/tH5E.F90
+++ b/fortran/test/tH5E.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tH5E_F03.F90 b/fortran/test/tH5E_F03.F90
index 1878966..35dde67 100644
--- a/fortran/test/tH5E_F03.F90
+++ b/fortran/test/tH5E_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5E APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -168,10 +168,10 @@ SUBROUTINE test_error(total_error)
!!$#ifdef H5_USE_16_API
!!$ if (old_func != (H5E_auto_t)H5Eprint)
!!$ TEST_ERROR;
-!!$#else H5_USE_16_API
+!!$#else H5_USE_16_API
!!$ if (old_func != (H5E_auto2_t)H5Eprint2)
!!$ TEST_ERROR;
-!!$#endif H5_USE_16_API
+!!$#endif H5_USE_16_API
! set the customized error handling routine
diff --git a/fortran/test/tH5F.F90 b/fortran/test/tH5F.F90
index b898c21..f4a3232 100644
--- a/fortran/test/tH5F.F90
+++ b/fortran/test/tH5F.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,10 +25,10 @@
!
!*****
!
-! In the mountingtest subroutine we create one file with a group in it,
+! In the mountingtest subroutine we create one file with a group in it,
! and another file with a dataset. Mounting is used to
-! access the dataset from the second file as a member of a group
-! in the first file.
+! access the dataset from the second file as a member of a group
+! in the first file.
MODULE TH5F
@@ -148,7 +148,7 @@ CONTAINS
CALL check(" h5tcopy_f",error,total_error)
CALL h5tcopy_f(H5T_NATIVE_CHARACTER, t4, error)
CALL check(" h5tcopy_f",error,total_error)
-
+
CALL h5fget_obj_count_f(INT(H5F_OBJ_ALL_F,HID_T), H5F_OBJ_ALL_F, obj_count, error)
CALL check(" h5fget_obj_count_f",error,total_error)
@@ -280,7 +280,7 @@ CONTAINS
IF(obj_count.NE.1)THEN
total_error = total_error + 1
- ENDIF
+ ENDIF
CALL h5fopen_f (fix_filename2, H5F_ACC_RDWR_F, file2_id, error)
CALL check("h5fopen_f",error,total_error)
@@ -290,7 +290,7 @@ CONTAINS
IF(obj_count.NE.2)THEN
total_error = total_error + 1
- ENDIF
+ ENDIF
!
!Check file numbers
diff --git a/fortran/test/tH5F_F03.F90 b/fortran/test/tH5F_F03.F90
index 8cc6b83..ea21396 100644
--- a/fortran/test/tH5F_F03.F90
+++ b/fortran/test/tH5F_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5F APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -37,8 +37,8 @@
MODULE TH5F_F03
USE HDF5
- USE TH5_MISC
- USE TH5_MISC_GEN
+ USE TH5_MISC
+ USE TH5_MISC_GEN
USE ISO_C_BINDING
CONTAINS
@@ -79,21 +79,21 @@ SUBROUTINE test_get_file_image(total_error)
CALL h5fcreate_f("tget_file_image.h5", H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl)
CALL check("h5fcreate_f", error, total_error)
- ! Set up data space for new data set
+ ! Set up data space for new data set
dims(1:2) = (/10,10/)
-
+
CALL h5screate_simple_f(2, dims, space_id, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(file_id, "dset 0", H5T_NATIVE_INTEGER, space_id, dset_id, error)
CALL check("h5dcreate_f", error, total_error)
- ! Write some data to the data set
+ ! Write some data to the data set
DO i = 1, 100
data(i) = INT(i)
ENDDO
-
+
f_ptr = C_LOC(data(1))
CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, f_ptr, error)
CALL check("h5dwrite_f",error, total_error)
@@ -102,7 +102,7 @@ SUBROUTINE test_get_file_image(total_error)
CALL h5fflush_f(file_id, H5F_SCOPE_GLOBAL_F, error)
CALL check("h5fflush_f",error, total_error)
- ! Open the test file using standard I/O calls
+ ! Open the test file using standard I/O calls
OPEN(UNIT=10,FILE='tget_file_image.h5', ACCESS='STREAM')
! Get the size of the test file
!
@@ -110,8 +110,8 @@ SUBROUTINE test_get_file_image(total_error)
! may be larger. This is OK, as long as (in this specialized instance)
! the remainder of the file is all '\0's.
!
- ! With latest mods to truncate call in core file drive,
- ! file size should match image size; get the file size
+ ! With latest mods to truncate call in core file drive,
+ ! file size should match image size; get the file size
INQUIRE(UNIT=10, SIZE=file_sz)
CLOSE(UNIT=10)
@@ -131,7 +131,7 @@ SUBROUTINE test_get_file_image(total_error)
CALL verify("h5fget_file_image_f", INT(itmp_a), 1, total_error) ! Routine should not change the value
CALL verify("h5fget_file_image_f", file_sz, INT(image_size), total_error)
- ! Allocate a buffer of the appropriate size
+ ! Allocate a buffer of the appropriate size
ALLOCATE(image_ptr(1:image_size))
! Load the image of the file into the buffer
@@ -139,7 +139,7 @@ SUBROUTINE test_get_file_image(total_error)
CALL h5fget_file_image_f(file_id, f_ptr, image_size, error)
CALL check("h5fget_file_image_f",error, total_error)
- ! Close dset and space
+ ! Close dset and space
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f", error, total_error)
CALL h5sclose_f(space_id, error)
@@ -151,7 +151,7 @@ SUBROUTINE test_get_file_image(total_error)
! Allocate a buffer for the test file image
ALLOCATE(file_image_ptr(1:image_size))
- ! Open the test file using standard I/O calls
+ ! Open the test file using standard I/O calls
OPEN(UNIT=10,FILE='tget_file_image.h5', FORM='UNFORMATTED', ACCESS='STREAM')
! Read the test file from disk into the buffer
diff --git a/fortran/test/tH5G.F90 b/fortran/test/tH5G.F90
index 0b6cc1a..194f266 100644
--- a/fortran/test/tH5G.F90
+++ b/fortran/test/tH5G.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tH5G_1_8.F90 b/fortran/test/tH5G_1_8.F90
index 58431a1..534a2d4 100644
--- a/fortran/test/tH5G_1_8.F90
+++ b/fortran/test/tH5G_1_8.F90
@@ -15,14 +15,14 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! CONTAINS SUBROUTINES
! group_test, group_info, timestamps, mklinks, test_move_preserves, lifecycle
-! cklinks, delete_by_idx, link_info_by_idx_check, test_lcpl, objcopy,
+! cklinks, delete_by_idx, link_info_by_idx_check, test_lcpl, objcopy,
! lapl_nlinks
!
!*****
@@ -41,7 +41,7 @@ SUBROUTINE group_test(cleanup, total_error)
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(HID_T) :: fapl, fapl2, my_fapl ! File access property lists
+ INTEGER(HID_T) :: fapl, fapl2, my_fapl ! File access property lists
INTEGER :: error, ret_total_error
@@ -49,15 +49,15 @@ SUBROUTINE group_test(cleanup, total_error)
CALL H5Pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL check("H5Pcreate_f",error, total_error)
- ! Copy the file access property list
+ ! Copy the file access property list
CALL H5Pcopy_f(fapl, fapl2, error)
CALL check("H5Pcopy_f",error, total_error)
- ! Set the "use the latest version of the format" bounds for creating objects in the file
+ ! Set the "use the latest version of the format" bounds for creating objects in the file
CALL H5Pset_libver_bounds_f(fapl2, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error)
CALL check("H5Pset_libver_bounds_f",error, total_error)
- ! Check for FAPL to USE
+ ! Check for FAPL to USE
my_fapl = fapl2
ret_total_error = 0
@@ -135,7 +135,7 @@ END SUBROUTINE group_test
! * February 18, 2008
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE group_info(cleanup, fapl, total_error)
@@ -143,21 +143,21 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
- INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
+ INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
- INTEGER :: max_compact ! Maximum # of links to store in group compactly
- INTEGER :: min_dense ! Minimum # of links to store in group "densely"
+ INTEGER :: max_compact ! Maximum # of links to store in group compactly
+ INTEGER :: min_dense ! Minimum # of links to store in group "densely"
- INTEGER :: idx_type ! Type of index to operate on
- INTEGER :: order, iorder ! Order within in the index
- LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) ! Use index on creation order values
+ INTEGER :: idx_type ! Type of index to operate on
+ INTEGER :: order, iorder ! Order within in the index
+ LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./) ! Use index on creation order values
CHARACTER(LEN=6), PARAMETER :: prefix = 'links0'
- CHARACTER(LEN=9), PARAMETER :: filename = prefix//'.h5' ! File name
+ CHARACTER(LEN=9), PARAMETER :: filename = prefix//'.h5' ! File name
INTEGER :: Input1
- INTEGER(HID_T) :: group_id ! Group ID
- INTEGER(HID_T) :: soft_group_id ! Group ID for soft links
+ INTEGER(HID_T) :: group_id ! Group ID
+ INTEGER(HID_T) :: soft_group_id ! Group ID for soft links
- INTEGER :: i ! Local index variables
+ INTEGER :: i ! Local index variables
INTEGER :: storage_type ! Type of storage for links in group:
! H5G_STORAGE_TYPE_COMPACT: Compact storage
! H5G_STORAGE_TYPE_DENSE: Indexed storage
@@ -165,34 +165,34 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
INTEGER :: nlinks ! Number of links in group
INTEGER :: max_corder ! Current maximum creation order value for group
- INTEGER :: u,v ! Local index variables
+ INTEGER :: u,v ! Local index variables
CHARACTER(LEN=2) :: chr2
- INTEGER(HID_T) :: group_id2, group_id3 ! Group IDs
- CHARACTER(LEN=7) :: objname ! Object name
- CHARACTER(LEN=7) :: objname2 ! Object name
- CHARACTER(LEN=19) :: valname ! Link value
+ INTEGER(HID_T) :: group_id2, group_id3 ! Group IDs
+ CHARACTER(LEN=7) :: objname ! Object name
+ CHARACTER(LEN=7) :: objname2 ! Object name
+ CHARACTER(LEN=19) :: valname ! Link value
CHARACTER(LEN=12), PARAMETER :: CORDER_GROUP_NAME = "corder_group"
CHARACTER(LEN=17), PARAMETER :: CORDER_SOFT_GROUP_NAME = "corder_soft_group"
- INTEGER(HID_T) :: file_id ! File ID
- INTEGER :: error ! Generic return value
+ INTEGER(HID_T) :: file_id ! File ID
+ INTEGER :: error ! Generic return value
LOGICAL :: mounted
LOGICAL :: cleanup
- ! Create group creation property list
+ ! Create group creation property list
CALL H5Pcreate_f(H5P_GROUP_CREATE_F, gcpl_id, error )
CALL check("H5Pcreate_f", error, total_error)
- ! Query the group creation properties
+ ! Query the group creation properties
CALL H5Pget_link_phase_change_f(gcpl_id, max_compact, min_dense, error)
CALL check("H5Pget_link_phase_change_f", error, total_error)
- ! Loop over operating on different indices on link fields
+ ! Loop over operating on different indices on link fields
DO idx_type = H5_INDEX_NAME_F, H5_INDEX_CRT_ORDER_F
- ! Loop over operating in different orders
+ ! Loop over operating in different orders
DO iorder = H5_ITER_INC_F, H5_ITER_NATIVE_F
- ! Loop over using index for creation order value
+ ! Loop over using index for creation order value
DO i = 1, 2
- ! Print appropriate test message
+ ! Print appropriate test message
IF(idx_type == H5_INDEX_CRT_ORDER_F)THEN
IF(iorder == H5_ITER_INC_F)THEN
order = H5_ITER_INC_F
@@ -241,11 +241,11 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
ENDIF
END IF
- ! Create file
+ ! Create file
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl)
CALL check("H5Fcreate_f", error, total_error)
- ! Set creation order tracking & indexing on group
+ ! Set creation order tracking & indexing on group
IF(use_index(i))THEN
Input1 = H5P_CRT_ORDER_INDEXED_F
ELSE
@@ -254,103 +254,103 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL H5Pset_link_creation_order_f(gcpl_id, IOR(H5P_CRT_ORDER_TRACKED_F, Input1), error)
CALL check("H5Pset_link_creation_order_f", error, total_error)
- ! Create group with creation order tracking on
+ ! Create group with creation order tracking on
CALL H5Gcreate_f(file_id, CORDER_GROUP_NAME, group_id, error, gcpl_id=gcpl_id)
CALL check("H5Gcreate_f", error, total_error)
- ! Create group with creation order tracking on for soft links
+ ! Create group with creation order tracking on for soft links
CALL H5Gcreate_f(file_id, CORDER_SOFT_GROUP_NAME, soft_group_id, error, &
OBJECT_NAMELEN_DEFAULT_F, H5P_DEFAULT_F, gcpl_id)
CALL check("H5Gcreate_f", error, total_error)
- ! Check for out of bound query by index on empty group, should fail
+ ! Check for out of bound query by index on empty group, should fail
CALL H5Gget_info_by_idx_f(group_id, ".", H5_INDEX_NAME_F, order, INT(0,HSIZE_T), &
storage_type, nlinks, max_corder, error)
CALL verify("H5Gget_info_by_idx_f", error, -1, total_error)
- ! Create several links, up to limit of compact form
+ ! Create several links, up to limit of compact form
DO u = 0, max_compact-1
- ! Make name for link
+ ! Make name for link
WRITE(chr2,'(I2.2)') u
objname = 'fill '//chr2
- ! Create hard link, with group object
+ ! Create hard link, with group object
CALL H5Gcreate_f(group_id, objname, group_id2, error, OBJECT_NAMELEN_DEFAULT_F, H5P_DEFAULT_F, gcpl_id)
CALL check("H5Gcreate_f", error, total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_f(group_id2, storage_type, nlinks, max_corder, error, mounted)
CALL check("H5Gget_info_f", error, total_error)
- ! Check (new/empty) group's information
+ ! Check (new/empty) group's information
CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_f", max_corder, 0, total_error)
CALL verify("H5Gget_info_f", nlinks, 0, total_error)
CALL verify("H5Gget_info_f.mounted", mounted,.FALSE.,total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id, objname, storage_type, nlinks, max_corder, error, mounted=mounted)
CALL check("H5Gget_info_by_name_f", error, total_error)
- ! Check (new/empty) group's information
+ ! Check (new/empty) group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f", max_corder, 0, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, 0, total_error)
CALL verify("H5Gget_info_by_name_f.mounted", mounted,.FALSE.,total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id2, ".", storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name", error, total_error)
- ! Check (new/empty) group's information
+ ! Check (new/empty) group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f", max_corder, 0, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, 0, total_error)
- ! Create objects in new group created
+ ! Create objects in new group created
DO v = 0, u
- ! Make name for link
+ ! Make name for link
WRITE(chr2,'(I2.2)') v
objname2 = 'fill '//chr2
- ! Create hard link, with group object
+ ! Create hard link, with group object
CALL H5Gcreate_f(group_id2, objname2, group_id3, error )
CALL check("H5Gcreate_f", error, total_error)
- ! Close group created
+ ! Close group created
CALL H5Gclose_f(group_id3, error)
CALL check("H5Gclose_f", error, total_error)
ENDDO
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_f(group_id2, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_f", error, total_error)
- ! Check (new) group's information
+ ! Check (new) group's information
CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id, objname, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
- ! Check (new) group's information
+ ! Check (new) group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f",max_corder, u+1, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
CALL H5Gget_info_by_name_f(group_id2, ".", storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
- ! Check (new) group's information
+ ! Check (new) group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
- ! Retrieve group's information
+ ! Retrieve group's information
IF(order.NE.H5_ITER_NATIVE_F)THEN
IF(order.EQ.H5_ITER_INC_F) THEN
CALL H5Gget_info_by_idx_f(group_id, ".", idx_type, order, INT(u,HSIZE_T), &
@@ -363,72 +363,72 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL verify("H5Gget_info_by_idx_f", mounted,.FALSE.,total_error)
CALL check("H5Gget_info_by_idx_f", error, total_error)
ENDIF
- ! Check (new) group's information
+ ! Check (new) group's information
CALL verify("H5Gget_info_by_idx_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_idx_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_by_idx_f", nlinks, u+1, total_error)
ENDIF
- ! Close group created
+ ! Close group created
CALL H5Gclose_f(group_id2, error)
CALL check("H5Gclose_f", error, total_error)
- ! Retrieve main group's information
+ ! Retrieve main group's information
CALL H5Gget_info_f(group_id, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_f", error, total_error)
- ! Check main group's information
+ ! Check main group's information
CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
- ! Retrieve main group's information, by name
+ ! Retrieve main group's information, by name
CALL H5Gget_info_by_name_f(file_id, CORDER_GROUP_NAME, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_by_name_f", error, total_error)
- ! Check main group's information
+ ! Check main group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
- ! Retrieve main group's information, by name
+ ! Retrieve main group's information, by name
CALL H5Gget_info_by_name_f(group_id, ".", storage_type, nlinks, max_corder, error, H5P_DEFAULT_F)
CALL check("H5Gget_info_by_name_f", error, total_error)
- ! Check main group's information
+ ! Check main group's information
CALL verify("H5Gget_info_by_name_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_by_name_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_by_name_f", nlinks, u+1, total_error)
- ! Create soft link in another group, to objects in main group
+ ! Create soft link in another group, to objects in main group
valname = CORDER_GROUP_NAME//objname
CALL H5Lcreate_soft_f(valname, soft_group_id, objname, error, H5P_DEFAULT_F, H5P_DEFAULT_F)
- ! Retrieve soft link group's information, by name
+ ! Retrieve soft link group's information, by name
CALL H5Gget_info_f(soft_group_id, storage_type, nlinks, max_corder, error)
CALL check("H5Gget_info_f", error, total_error)
- ! Check soft link group's information
+ ! Check soft link group's information
CALL verify("H5Gget_info_f", storage_type, H5G_STORAGE_TYPE_COMPACT_F, total_error)
CALL verify("H5Gget_info_f", max_corder, u+1, total_error)
CALL verify("H5Gget_info_f", nlinks, u+1, total_error)
ENDDO
- ! Close the groups
+ ! Close the groups
CALL H5Gclose_f(group_id, error)
CALL check("H5Gclose_f", error, total_error)
CALL H5Gclose_f(soft_group_id, error)
CALL check("H5Gclose_f", error, total_error)
- ! Close the file
+ ! Close the file
CALL H5Fclose_f(file_id, error)
CALL check("H5Fclose_f", error, total_error)
ENDDO
ENDDO
ENDDO
- ! Free resources
+ ! Free resources
CALL H5Pclose_f(gcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
@@ -449,7 +449,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! * February 20, 2008
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE timestamps(cleanup, fapl, total_error)
@@ -457,15 +457,15 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
- INTEGER(HID_T) :: file_id ! File ID
- INTEGER(HID_T) :: group_id ! Group ID
- INTEGER(HID_T) :: group_id2 ! Group ID
- INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
- INTEGER(HID_T) :: gcpl_id2 ! Group creation property list ID
+ INTEGER(HID_T) :: file_id ! File ID
+ INTEGER(HID_T) :: group_id ! Group ID
+ INTEGER(HID_T) :: group_id2 ! Group ID
+ INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
+ INTEGER(HID_T) :: gcpl_id2 ! Group creation property list ID
CHARACTER(LEN=6), PARAMETER :: prefix = 'links9'
- CHARACTER(LEN=9), PARAMETER :: filename = prefix//'.h5' ! File name
- ! Timestamp macros
+ CHARACTER(LEN=9), PARAMETER :: filename = prefix//'.h5' ! File name
+ ! Timestamp macros
CHARACTER(LEN=10), PARAMETER :: TIMESTAMP_GROUP_1="timestamp1"
CHARACTER(LEN=10), PARAMETER :: TIMESTAMP_GROUP_2="timestamp2"
LOGICAL :: track_times
@@ -473,58 +473,58 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
INTEGER :: error
- ! Print test message
+ ! Print test message
! WRITE(*,*) "timestamps on objects"
- ! Create group creation property list
+ ! Create group creation property list
CALL H5Pcreate_f(H5P_GROUP_CREATE_F, gcpl_id, error )
CALL check("H5Pcreate_f", error, total_error)
- ! Query the object timestamp setting
+ ! Query the object timestamp setting
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- ! Check default timestamp information
+ ! Check default timestamp information
CALL verify("H5Pget_obj_track_times",track_times,.TRUE.,total_error)
- ! Set a non-default object timestamp setting
+ ! Set a non-default object timestamp setting
CALL H5Pset_obj_track_times_f(gcpl_id, .FALSE., error)
CALL check("H5Pset_obj_track_times_f", error, total_error)
- ! Query the object timestamp setting
+ ! Query the object timestamp setting
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
- ! Check default timestamp information
+ ! Check default timestamp information
CALL verify("H5Pget_obj_track_times",track_times,.FALSE.,total_error)
- ! Create file
+ ! Create file
!h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl)
CALL check("h5fcreate_f",error,total_error)
- ! Create group with non-default object timestamp setting
+ ! Create group with non-default object timestamp setting
CALL h5gcreate_f(file_id, TIMESTAMP_GROUP_1, group_id, error, &
OBJECT_NAMELEN_DEFAULT_F, H5P_DEFAULT_F, gcpl_id, H5P_DEFAULT_F)
CALL check("h5fcreate_f",error,total_error)
- ! Close the group creation property list
+ ! Close the group creation property list
CALL H5Pclose_f(gcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
- ! Create group with default object timestamp setting
+ ! Create group with default object timestamp setting
CALL h5gcreate_f(file_id, TIMESTAMP_GROUP_2, group_id2, error, &
OBJECT_NAMELEN_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5fcreate_f",error,total_error)
- ! Retrieve the new groups' creation properties
+ ! Retrieve the new groups' creation properties
CALL H5Gget_create_plist_f(group_id, gcpl_id, error)
CALL check("H5Gget_create_plist", error, total_error)
CALL H5Gget_create_plist_f(group_id2, gcpl_id2, error)
CALL check("H5Gget_create_plist", error, total_error)
- ! Query & verify the object timestamp settings
+ ! Query & verify the object timestamp settings
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
CALL verify("H5Pget_obj_track_times1",track_times,.FALSE.,total_error)
@@ -532,11 +532,11 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
CALL verify("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
-! Query the object information for each group
+! Query the object information for each group
! if(H5Oget_info(group_id, &oinfo) < 0) TEST_ERROR
! if(H5Oget_info(group_id2, &oinfo2) < 0) TEST_ERROR
-!!$ Sanity check object information for each group
+!!$ Sanity check object information for each group
!!$ if(oinfo.atime != 0) TEST_ERROR
!!$ if(oinfo.mtime != 0) TEST_ERROR
!!$ if(oinfo.ctime != 0) TEST_ERROR
@@ -550,40 +550,40 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(oinfo.hdr.space.total >= oinfo2.hdr.space.total) TEST_ERROR
!!$ if(oinfo.hdr.space.meta >= oinfo2.hdr.space.meta) TEST_ERROR
- ! Close the property lists
+ ! Close the property lists
CALL H5Pclose_f(gcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(gcpl_id2, error)
CALL check("H5Pclose_f", error, total_error)
- ! Close the groups
+ ! Close the groups
CALL H5Gclose_f(group_id, error)
CALL check("H5Gclose_f", error, total_error)
CALL H5Gclose_f(group_id2, error)
CALL check("H5Gclose_f", error, total_error)
- ! Close the file
+ ! Close the file
CALL H5Fclose_f(file_id, error)
CALL check("H5Fclose_f", error, total_error)
- ! Re-open the file
+ ! Re-open the file
CALL h5fopen_f(FileName, H5F_ACC_RDONLY_F, file_id, error, H5P_DEFAULT_F)
CALL check("h5fopen_f",error,total_error)
- ! Open groups
+ ! Open groups
CALL H5Gopen_f(file_id, TIMESTAMP_GROUP_1, group_id, error) ! with no optional param.
CALL check("H5Gopen_f", error, total_error)
CALL H5Gopen_f(file_id, TIMESTAMP_GROUP_2, group_id2, error, H5P_DEFAULT_F) ! with optional param.
CALL check("H5Gopen_f", error, total_error)
- ! Retrieve the new groups' creation properties
+ ! Retrieve the new groups' creation properties
CALL H5Gget_create_plist_f(group_id, gcpl_id, error)
CALL check("H5Gget_create_plist", error, total_error)
CALL H5Gget_create_plist_f(group_id2, gcpl_id2, error)
CALL check("H5Gget_create_plist", error, total_error)
- ! Query & verify the object timestamp settings
+ ! Query & verify the object timestamp settings
CALL H5Pget_obj_track_times_f(gcpl_id, track_times, error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
@@ -592,11 +592,11 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Pget_obj_track_times_f", error, total_error)
CALL verify("H5Pget_obj_track_times2",track_times,.TRUE.,total_error)
!!$
-!!$ Query the object information for each group
+!!$ Query the object information for each group
!!$ if(H5Oget_info(group_id, &oinfo) < 0) TEST_ERROR
!!$ if(H5Oget_info(group_id2, &oinfo2) < 0) TEST_ERROR
!!$
-!!$ Sanity check object information for each group
+!!$ Sanity check object information for each group
!!$ if(oinfo.atime != 0) TEST_ERROR
!!$ if(oinfo.mtime != 0) TEST_ERROR
!!$ if(oinfo.ctime != 0) TEST_ERROR
@@ -610,19 +610,19 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(oinfo.hdr.space.total >= oinfo2.hdr.space.total) TEST_ERROR
!!$ if(oinfo.hdr.space.meta >= oinfo2.hdr.space.meta) TEST_ERROR
- ! Close the property lists
+ ! Close the property lists
CALL H5Pclose_f(gcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(gcpl_id2, error)
CALL check("H5Pclose_f", error, total_error)
- ! Close the groups
+ ! Close the groups
CALL H5Gclose_f(group_id, error)
CALL check("H5Gclose_f", error, total_error)
CALL H5Gclose_f(group_id2, error)
CALL check("H5Gclose_f", error, total_error)
- ! Close the file
+ ! Close the file
CALL H5Fclose_f(file_id, error)
CALL check("H5Fclose_f", error, total_error)
@@ -643,7 +643,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE mklinks(fapl, total_error)
@@ -671,29 +671,29 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
WRITE(*,*) "link creation (w/new group format)"
- ! Create a file
+ ! Create a file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, file, error, H5P_DEFAULT_F, fapl)
CALL check("mklinks.h5fcreate_f",error,total_error)
CALL h5screate_simple_f(arank, adims2, scalar, error)
CALL check("mklinks.h5screate_simple_f",error,total_error)
- ! Create a group
+ ! Create a group
CALL H5Gcreate_f(file, "grp1", grp, error)
CALL check("H5Gcreate_f", error, total_error)
CALL H5Gclose_f(grp, error)
CALL check("h5gclose_f",error,total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(file, "d1", H5T_NATIVE_INTEGER, scalar, d1, error)
CALL check("h5dcreate_f",error,total_error)
CALL h5dclose_f(d1, error)
CALL check("h5dclose_f",error,total_error)
- ! Create a hard link
+ ! Create a hard link
CALL H5Lcreate_hard_f(file, "d1", INT(H5L_SAME_LOC_F,HID_T), "grp1/hard", error)
CALL check("H5Lcreate_hard_f", error, total_error)
- ! Create a symbolic link
+ ! Create a symbolic link
CALL H5Lcreate_soft_f("/d1", file, "grp1/soft",error)
CALL check("H5Lcreate_soft_f", error, total_error)
@@ -709,14 +709,14 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! should be '/d1' + NULL character = 4
CALL verify("H5Lget_info_by_idx_f", INT(val_size), 4, total_error)
- ! Create a symbolic link to something that doesn't exist
+ ! Create a symbolic link to something that doesn't exist
CALL H5Lcreate_soft_f("foobar", file, "grp1/dangle",error)
- ! Create a recursive symbolic link
+ ! Create a recursive symbolic link
CALL H5Lcreate_soft_f("/grp1/recursive", file, "/grp1/recursive",error)
- ! Close
+ ! Close
CALL h5sclose_f(scalar, error)
CALL check("h5sclose_f",error,total_error)
CALL h5fclose_f(file, error)
@@ -736,7 +736,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE test_move_preserves(fapl_id, total_error)
@@ -746,20 +746,20 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
INTEGER(HID_T):: file_id
INTEGER(HID_T):: group_id
- INTEGER(HID_T):: fcpl_id ! Group creation property list ID
+ INTEGER(HID_T):: fcpl_id ! Group creation property list ID
INTEGER(HID_T):: lcpl_id
!H5O_info_t oinfo;
!H5L_info_t linfo;
INTEGER :: old_cset
INTEGER :: old_corder
!H5T_cset_t old_cset;
- !int64_t old_corder; Creation order value of link
+ !int64_t old_corder; Creation order value of link
!time_t old_modification_time;
!time_t curr_time;
- !unsigned crt_order_flags; Status of creation order info for GCPL
+ !unsigned crt_order_flags; Status of creation order info for GCPL
!char filename[1024];
- INTEGER :: crt_order_flags ! Status of creation order info for GCPL
+ INTEGER :: crt_order_flags ! Status of creation order info for GCPL
CHARACTER(LEN=12), PARAMETER :: filename = 'TestLinks.h5'
INTEGER :: cset ! Indicates the character set used for the link’s name.
@@ -779,7 +779,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! Create a file creation property list with creation order stored for links
! * in the root group
- !
+ !
CALL H5Pcreate_f(H5P_FILE_CREATE_F, fcpl_id, error)
CALL check("H5Pcreate_f",error, total_error)
@@ -795,26 +795,26 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
CALL check("H5Pget_link_creation_order_f",error, total_error)
CALL verify("H5Pget_link_creation_order_f",crt_order_flags, H5P_CRT_ORDER_TRACKED_F, total_error)
- ! Create file
- ! (with creation order tracking for the root group)
+ ! Create file
+ ! (with creation order tracking for the root group)
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, file_id, error, fcpl_id, fapl_id)
CALL check("h5fcreate_f",error,total_error)
- ! Create a link creation property list with the UTF-8 character encoding
+ ! Create a link creation property list with the UTF-8 character encoding
CALL H5Pcreate_f(H5P_LINK_CREATE_F, lcpl_id, error)
CALL check("H5Pcreate_f",error, total_error)
CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error)
CALL check("H5Pset_char_encoding_f",error, total_error)
- ! Create a group with that lcpl
+ ! Create a group with that lcpl
CALL H5Gcreate_f(file_id, "group", group_id, error,lcpl_id=lcpl_id, gcpl_id=H5P_DEFAULT_F, gapl_id=H5P_DEFAULT_F)
CALL check("H5Gcreate_f", error, total_error)
CALL H5Gclose_f(group_id, error)
CALL check("H5Gclose_f", error, total_error)
- ! Get the group's link's information
+ ! Get the group's link's information
CALL H5Lget_info_f(file_id, "group", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error, H5P_DEFAULT_F)
@@ -830,18 +830,18 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! old_modification_time = oinfo.mtime;
-! If this test happens too quickly, the times will all be the same. Make sure the time changes.
+! If this test happens too quickly, the times will all be the same. Make sure the time changes.
! curr_time = HDtime(NULL);
! while(HDtime(NULL) <= curr_time)
! ;
-! Close the file and reopen it
+! Close the file and reopen it
CALL H5Fclose_f(file_id, error)
CALL check("H5Fclose_f", error, total_error)
!!$ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR
!!$
-!!$ Get the link's character set & modification time . They should be unchanged
+!!$ Get the link's character set & modification time . They should be unchanged
!!$ if(H5Lget_info(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -849,7 +849,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(linfo.corder_valid != TRUE) TEST_ERROR
!!$ if(old_corder != linfo.corder) TEST_ERROR
!!$
-!!$ Create a new link to the group. It should have a different creation order value but the same modification time
+!!$ Create a new link to the group. It should have a different creation order value but the same modification time
!!$ if(H5Lcreate_hard(file_id, "group", file_id, "group2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group2", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -862,7 +862,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ Copy the first link to a UTF-8 name.
!!$ * Its creation order value should be different, but modification time
!!$ * should not change.
-!!$
+!!$
!!$ if(H5Lcopy(file_id, "group", file_id, "group_copied", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group_copied", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -870,10 +870,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(linfo.corder_valid != TRUE) TEST_ERROR
!!$ if(linfo.corder != 2) TEST_ERROR
!!$
-!!$ Check that its character encoding is UTF-8
+!!$ Check that its character encoding is UTF-8
!!$ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
!!$
-!!$ Move the link with the default property list.
+!!$ Move the link with the default property list.
!!$ if(H5Lmove(file_id, "group_copied", file_id, "group_copied2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group_copied2", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -881,10 +881,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(linfo.corder_valid != TRUE) TEST_ERROR
!!$ if(linfo.corder != 3) TEST_ERROR
!!$
-!!$ Check that its character encoding is not UTF-8
+!!$ Check that its character encoding is not UTF-8
!!$ if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR
!!$
-!!$ Check that the original link is unchanged
+!!$ Check that the original link is unchanged
!!$ if(H5Oget_info_by_name(file_id, "group", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
!!$ if(H5Lget_info(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
@@ -894,7 +894,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$
!!$ Move the first link to a UTF-8 name.
!!$ * Its creation order value will change, but modification time should not
-!!$ * change.
+!!$ * change.
!!$ if(H5Lmove(file_id, "group", file_id, "group_moved", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group_moved", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -902,10 +902,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(linfo.corder_valid != TRUE) TEST_ERROR
!!$ if(linfo.corder != 4) TEST_ERROR
!!$
-!!$ Check that its character encoding is UTF-8
+!!$ Check that its character encoding is UTF-8
!!$ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
!!$
-!!$ Move the link again using the default property list.
+!!$ Move the link again using the default property list.
!!$ if(H5Lmove(file_id, "group_moved", file_id, "group_moved_again", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(H5Oget_info_by_name(file_id, "group_moved_again", &oinfo, H5P_DEFAULT) < 0) TEST_ERROR
!!$ if(old_modification_time != oinfo.mtime) TEST_ERROR
@@ -913,10 +913,10 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
!!$ if(linfo.corder_valid != TRUE) TEST_ERROR
!!$ if(linfo.corder != 5) TEST_ERROR
!!$
-!!$ Check that its character encoding is not UTF-8
+!!$ Check that its character encoding is not UTF-8
!!$ if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR
- ! Close open IDs
+ ! Close open IDs
CALL H5Pclose_f(fcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(lcpl_id, error)
@@ -941,7 +941,7 @@ SUBROUTINE group_info(cleanup, fapl, total_error)
! * Monday, October 17, 2005
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE lifecycle(cleanup, fapl2, total_error)
IMPLICIT NONE
@@ -951,14 +951,14 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
INTEGER, PARAMETER :: NAME_BUF_SIZE =7
- INTEGER(HID_T) :: fid ! File ID
- INTEGER(HID_T) :: gid ! Group ID
- INTEGER(HID_T) :: gcpl ! Group creation property list ID
- INTEGER(size_t) :: lheap_size_hint ! Local heap size hint
- INTEGER :: max_compact ! Maximum # of links to store in group compactly
- INTEGER :: min_dense ! Minimum # of links to store in group "densely"
- INTEGER :: est_num_entries ! Estimated # of entries in group
- INTEGER :: est_name_len ! Estimated length of entry name
+ INTEGER(HID_T) :: fid ! File ID
+ INTEGER(HID_T) :: gid ! Group ID
+ INTEGER(HID_T) :: gcpl ! Group creation property list ID
+ INTEGER(size_t) :: lheap_size_hint ! Local heap size hint
+ INTEGER :: max_compact ! Maximum # of links to store in group compactly
+ INTEGER :: min_dense ! Minimum # of links to store in group "densely"
+ INTEGER :: est_num_entries ! Estimated # of entries in group
+ INTEGER :: est_name_len ! Estimated length of entry name
CHARACTER(LEN=NAME_BUF_SIZE) :: filename = 'fixx.h5'
INTEGER(SIZE_T) :: LIFECYCLE_LOCAL_HEAP_SIZE_HINT = 256
INTEGER :: LIFECYCLE_MAX_COMPACT = 4
@@ -975,29 +975,29 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
! WRITE(*,*) 'group lifecycle'
- ! Create file
+ ! Create file
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, fid, error, access_prp=fapl2)
CALL check("H5Fcreate_f",error,total_error)
- ! Close file
+ ! Close file
CALL H5Fclose_f(fid,error)
CALL check("H5Fclose_f",error,total_error)
- ! Get size of file as empty
+ ! Get size of file as empty
! if((empty_size = h5_get_file_size(filename)) < 0) TEST_ERROR
- ! Re-open file
+ ! Re-open file
CALL H5Fopen_f(filename, H5F_ACC_RDWR_F, fid, error,access_prp=fapl2)
CALL check("H5Fopen_f",error,total_error)
- ! Set up group creation property list
+ ! Set up group creation property list
CALL H5Pcreate_f(H5P_GROUP_CREATE_F,gcpl,error)
CALL check("H5Pcreate_f",error,total_error)
- ! Query default group creation property settings
+ ! Query default group creation property settings
CALL H5Pget_local_heap_size_hint_f(gcpl, lheap_size_hint, error)
CALL check("H5Pget_local_heap_size_hint_f",error,total_error)
CALL verify("H5Pget_local_heap_size_hint_f", INT(lheap_size_hint),0,total_error)
@@ -1014,7 +1014,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
CALL verify("H5Pget_est_link_info_f", est_name_len, H5G_CRT_GINFO_EST_NAME_LEN,total_error)
- ! Set GCPL parameters
+ ! Set GCPL parameters
CALL H5Pset_local_heap_size_hint_f(gcpl, LIFECYCLE_LOCAL_HEAP_SIZE_HINT, error)
CALL check("H5Pset_local_heap_size_hint_f", error, total_error)
@@ -1023,12 +1023,12 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
CALL H5Pset_est_link_info_f(gcpl, LIFECYCLE_EST_NUM_ENTRIES, LIFECYCLE_EST_NAME_LEN, error)
CALL check("H5Pset_est_link_info_f", error, total_error)
- ! Create group for testing lifecycle
+ ! Create group for testing lifecycle
CALL H5Gcreate_f(fid, LIFECYCLE_TOP_GROUP, gid, error, gcpl_id=gcpl)
CALL check("H5Gcreate_f", error, total_error)
- ! Query group creation property settings
+ ! Query group creation property settings
CALL H5Pget_local_heap_size_hint_f(gcpl, lheap_size_hint, error)
CALL check("H5Pget_local_heap_size_hint_f",error,total_error)
@@ -1046,20 +1046,20 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
- ! Close top group
+ ! Close top group
CALL H5Gclose_f(gid, error)
CALL check("H5Gclose_f", error, total_error)
- ! Unlink top group
+ ! Unlink top group
CALL H5Ldelete_f(fid, LIFECYCLE_TOP_GROUP, error)
CALL check("H5Ldelete_f", error, total_error)
- ! Close GCPL
+ ! Close GCPL
CALL H5Pclose_f(gcpl, error)
CALL check("H5Pclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL H5Fclose_f(fid,error)
CALL check("H5Fclose_f",error,total_error)
@@ -1084,7 +1084,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
! * Modifications: Modified original C code
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE cklinks(fapl, total_error)
@@ -1104,25 +1104,25 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
LOGICAL :: Lexists
- ! Open the file
+ ! Open the file
CALL H5Fopen_f(filename, H5F_ACC_RDONLY_F, file, error,access_prp=fapl)
CALL check("H5Fopen_f",error,total_error)
- ! Hard link
+ ! Hard link
!!$ IF(H5Oget_info_by_name(file, "d1", &oinfo1, H5P_DEFAULT) < 0) FAIL_STACK_ERROR
!!$ IF(H5Oget_info_by_name(file, "grp1/hard", &oinfo2, H5P_DEFAULT) < 0) FAIL_STACK_ERROR
!!$ IF(H5O_TYPE_DATASET != oinfo2.type) {
!!$ H5_FAILED();
!!$ printf(" %d: Unexpected object type should have been a dataset\n", __LINE__);
!!$ TEST_ERROR
-!!$ } end if
+!!$ } end if
!!$ if(H5F_addr_ne(oinfo1.addr, oinfo2.addr)) {
!!$ H5_FAILED();
!!$ puts(" Hard link test failed. Link seems not to point to the ");
!!$ puts(" expected file location.");
!!$ TEST_ERROR
-!!$ } end if
+!!$ } end if
CALL H5Lexists_f(file,"d1",Lexists, error)
@@ -1131,7 +1131,7 @@ SUBROUTINE lifecycle(cleanup, fapl2, total_error)
CALL H5Lexists_f(file,"grp1/hard",Lexists, error)
CALL verify("H5Lexists", Lexists,.TRUE.,total_error)
- ! Cleanup
+ ! Cleanup
CALL H5Fclose_f(file,error)
CALL check("H5Fclose_f",error,total_error)
@@ -1153,25 +1153,25 @@ END SUBROUTINE cklinks
! * March 3, 2008
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T), INTENT(IN) :: fapl
- INTEGER(HID_T) :: file_id ! File ID
- INTEGER(HID_T) :: group_id ! Group ID
- INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
+ INTEGER(HID_T) :: file_id ! File ID
+ INTEGER(HID_T) :: group_id ! Group ID
+ INTEGER(HID_T) :: gcpl_id ! Group creation property list ID
- INTEGER :: idx_type ! Type of index to operate on
+ INTEGER :: idx_type ! Type of index to operate on
LOGICAL, DIMENSION(1:2) :: use_index = (/.FALSE.,.TRUE./)
- ! Use index on creation order values
- INTEGER :: max_compact ! Maximum # of links to store in group compactly
- INTEGER :: min_dense ! Minimum # of links to store in group "densely"
+ ! Use index on creation order values
+ INTEGER :: max_compact ! Maximum # of links to store in group compactly
+ INTEGER :: min_dense ! Minimum # of links to store in group "densely"
- CHARACTER(LEN=7) :: objname ! Object name
- CHARACTER(LEN=8) :: filename = 'file0.h5' ! File name
+ CHARACTER(LEN=7) :: objname ! Object name
+ CHARACTER(LEN=8) :: filename = 'file0.h5' ! File name
CHARACTER(LEN=12), PARAMETER :: CORDER_GROUP_NAME = "corder_group"
LOGICAL :: f_corder_valid ! Indicates whether the creation order data is valid for this attribute
@@ -1181,11 +1181,11 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
INTEGER :: link_type
TYPE(H5O_TOKEN_T_F) :: token
- INTEGER :: u ! Local index variable
+ INTEGER :: u ! Local index variable
INTEGER :: Input1, i
INTEGER(HID_T) :: group_id2
INTEGER(HID_T) :: grp
- INTEGER :: iorder ! Order within in the index
+ INTEGER :: iorder ! Order within in the index
CHARACTER(LEN=2) :: chr2
INTEGER :: error
INTEGER :: id_type
@@ -1203,13 +1203,13 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
fix_filename2(i:i) = " "
ENDDO
- ! Loop over operating on different indices on link fields
+ ! Loop over operating on different indices on link fields
DO idx_type = H5_INDEX_NAME_F, H5_INDEX_CRT_ORDER_F
- ! Loop over operating in different orders
+ ! Loop over operating in different orders
DO iorder = H5_ITER_INC_F, H5_ITER_DEC_F
- ! Loop over using index for creation order value
+ ! Loop over using index for creation order value
DO i = 1, 2
- ! Print appropriate test message
+ ! Print appropriate test message
!!$ IF(idx_type == H5_INDEX_CRT_ORDER_F)THEN
!!$ IF(iorder == H5_ITER_INC_F)THEN
!!$ IF(use_index(i))THEN
@@ -1240,15 +1240,15 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
!!$ ENDIF
!!$ ENDIF
- ! Create file
+ ! Create file
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, access_prp=fapl)
CALL check("delete_by_idx.H5Fcreate_f", error, total_error)
- ! Create group creation property list
+ ! Create group creation property list
CALL H5Pcreate_f(H5P_GROUP_CREATE_F, gcpl_id, error )
CALL check("delete_by_idx.H5Pcreate_f", error, total_error)
- ! Set creation order tracking & indexing on group
+ ! Set creation order tracking & indexing on group
IF(use_index(i))THEN
Input1 = H5P_CRT_ORDER_INDEXED_F
ELSE
@@ -1258,54 +1258,54 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
CALL H5Pset_link_creation_order_f(gcpl_id, IOR(H5P_CRT_ORDER_TRACKED_F, Input1), error)
CALL check("delete_by_idx.H5Pset_link_creation_order_f", error, total_error)
- ! Create group with creation order tracking on
+ ! Create group with creation order tracking on
CALL H5Gcreate_f(file_id, CORDER_GROUP_NAME, group_id, error, gcpl_id=gcpl_id)
CALL check("delete_by_idx.H5Gcreate_f", error, total_error)
- ! Query the group creation properties
+ ! Query the group creation properties
CALL H5Pget_link_phase_change_f(gcpl_id, max_compact, min_dense, error)
CALL check("delete_by_idx.H5Pget_link_phase_change_f", error, total_error)
- ! Delete links from one end
+ ! Delete links from one end
- ! Check for deletion on empty group
+ ! Check for deletion on empty group
CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(0,HSIZE_T), error)
CALL verify("delete_by_idx.H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
- ! Create several links, up to limit of compact form
+ ! Create several links, up to limit of compact form
DO u = 0, max_compact-1
- ! Make name for link
+ ! Make name for link
WRITE(chr2,'(I2.2)') u
objname = 'fill '//chr2
- ! Create hard link, with group object
+ ! Create hard link, with group object
CALL H5Gcreate_f(group_id, objname, group_id2, error)
CALL check("delete_by_idx.H5Gcreate_f", error, total_error)
CALL H5Gclose_f(group_id2, error)
CALL check("delete_by_idx.H5Gclose_f", error, total_error)
- ! Verify link information for new link
+ ! Verify link information for new link
CALL link_info_by_idx_check(group_id, objname, u, &
.TRUE., use_index(i), total_error)
ENDDO
- ! Verify state of group (compact)
+ ! Verify state of group (compact)
! IF(H5G_has_links_test(group_id, NULL) != TRUE) TEST_ERROR
- ! Check for out of bound deletion
+ ! Check for out of bound deletion
htmp =9
!EP CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(u,HSIZE_T), error)
CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, htmp, error)
CALL verify("H5Ldelete_by_idx_f", error, -1, total_error) ! test should fail (error = -1)
- ! Delete links from compact group
+ ! Delete links from compact group
DO u = 0, (max_compact - 1) -1
- ! Delete first link in appropriate order
+ ! Delete first link in appropriate order
CALL H5Ldelete_by_idx_f(group_id, ".", idx_type, iorder, INT(0,HSIZE_T), error)
CALL check("H5Ldelete_by_idx_f", error, total_error)
- ! Verify the link information for first link in appropriate order
+ ! Verify the link information for first link in appropriate order
! HDmemset(&linfo, 0, sizeof(linfo));
CALL H5Lget_info_by_idx_f(group_id, ".", idx_type, iorder, INT(0,HSIZE_T), &
@@ -1335,7 +1335,7 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
- ! Verify the name for first link in appropriate order
+ ! Verify the name for first link in appropriate order
! HDmemset(tmpname, 0, (size_t)NAME_BUF_SIZE);
!!$ size_tmp = 20
!!$ CALL H5Lget_name_by_idx_f(group_id, ".", idx_type, order, INT(0,HSIZE_T), size_tmp, tmpname, error)
@@ -1351,15 +1351,15 @@ SUBROUTINE delete_by_idx(cleanup, fapl, total_error)
!!$ CALL verify("delete_by_idx.H5Lget_name_by_idx_f", objname, tmpname, total_error)
ENDDO
- ! Close the group
+ ! Close the group
CALL H5Gclose_f(group_id, error)
CALL check("delete_by_idx.H5Gclose_f", error, total_error)
- ! Close the group creation property list
+ ! Close the group creation property list
CALL H5Pclose_f(gcpl_id, error)
CALL check("delete_by_idx.H5Pclose_f", error, total_error)
- ! Close the file
+ ! Close the file
CALL H5Fclose_f(file_id, error)
CALL check("delete_by_idx.H5Fclose_f", error, total_error)
@@ -1391,7 +1391,7 @@ END SUBROUTINE delete_by_idx
! * Tuesday, November 7, 2006
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
hard_link, use_index, total_error)
@@ -1410,35 +1410,35 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
TYPE(H5O_TOKEN_T_F) :: token
INTEGER(SIZE_T) :: val_size ! Indicates the size, in the number of characters, of the attribute
- CHARACTER(LEN=7) :: tmpname ! Temporary link name
- CHARACTER(LEN=3) :: tmpname_small ! to small temporary link name
- CHARACTER(LEN=10) :: tmpname_big ! to big temporary link name
+ CHARACTER(LEN=7) :: tmpname ! Temporary link name
+ CHARACTER(LEN=3) :: tmpname_small ! to small temporary link name
+ CHARACTER(LEN=10) :: tmpname_big ! to big temporary link name
- CHARACTER(LEN=7) :: valname ! Link value name
+ CHARACTER(LEN=7) :: valname ! Link value name
CHARACTER(LEN=2) :: chr2
INTEGER(SIZE_T) :: size_tmp
INTEGER :: error
- ! Make link value for increasing/native order queries
+ ! Make link value for increasing/native order queries
WRITE(chr2,'(I2.2)') n
valname = 'valn.'//chr2
- ! Verify the link information for first link, in increasing creation order
+ ! Verify the link information for first link, in increasing creation order
! HDmemset(&linfo, 0, sizeof(linfo));
CALL H5Lget_info_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(0,HSIZE_T), &
link_type, f_corder_valid, corder, cset, token, val_size, error)
CALL check("H5Lget_info_by_idx_f", error, total_error)
CALL verify("H5Lget_info_by_idx_f", corder, 0, total_error)
- ! Verify the link information for new link, in increasing creation order
+ ! Verify the link information for new link, in increasing creation order
! HDmemset(&linfo, 0, sizeof(linfo));
CALL H5Lget_info_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), &
link_type, f_corder_valid, corder, cset, token, val_size, error)
CALL check("H5Lget_info_by_idx_f", error, total_error)
CALL verify("H5Lget_info_by_idx_f", corder, n, total_error)
- ! Verify value for new soft link, in increasing creation order
+ ! Verify value for new soft link, in increasing creation order
!!$ IF(hard_link)THEN
!!$ ! HDmemset(tmpval, 0, (size_t)NAME_BUF_SIZE);
!!$
@@ -1448,7 +1448,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
!!$! IF(HDstrcmp(valname, tmpval)) TEST_ERROR
!!$ ENDIF
- ! Verify the name for new link, in increasing creation order
+ ! Verify the name for new link, in increasing creation order
! HDmemset(tmpname, 0, (size_t)NAME_BUF_SIZE);
! The actual size of tmpname should be 7
@@ -1492,7 +1492,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE test_lcpl(cleanup, fapl, total_error)
@@ -1537,34 +1537,34 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
! Actually, intermediate group creation is tested elsewhere (tmisc).
- ! * Here we only need to test the character encoding property
+ ! * Here we only need to test the character encoding property
- ! Create file
+ ! Create file
! h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl)
CALL check("H5Fcreate_f", error, total_error)
- ! Create and link a group with the default LCPL
+ ! Create and link a group with the default LCPL
CALL H5Gcreate_f(file_id, "/group", group_id, error)
CALL check("H5Gcreate_f", error, total_error)
- ! Check that its character encoding is the default
+ ! Check that its character encoding is the default
CALL H5Lget_info_f(file_id, "group", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error, H5P_DEFAULT_F)
! File-wide default character encoding can not yet be set via the file
-! * creation property list and is always ASCII.
+! * creation property list and is always ASCII.
!#define H5F_DEFAULT_CSET H5T_CSET_ASCII -- FROM H5Fprivate.h --
CALL verify("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
- ! Create and commit a datatype with the default LCPL
+ ! Create and commit a datatype with the default LCPL
CALL h5tcopy_f(H5T_NATIVE_INTEGER, type_id, error)
CALL check("h5tcopy_f",error,total_error)
CALL h5tcommit_f(file_id, "/type", type_id, error)
@@ -1573,19 +1573,19 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL check("h5tclose_f", error, total_error)
- ! Check that its character encoding is the default
+ ! Check that its character encoding is the default
CALL H5Lget_info_f(file_id, "type", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
CALL check("h5tclose_f", error, total_error)
! File-wide default character encoding can not yet be set via the file
-! * creation property list and is always ASCII.
+! * creation property list and is always ASCII.
!#define H5F_DEFAULT_CSET H5T_CSET_ASCII -- FROM H5Fprivate.h --
CALL verify("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
- ! Create a dataspace
+ ! Create a dataspace
CALL h5screate_simple_f(2, dims, space_id, error)
CALL check("h5screate_simple_f",error,total_error)
CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error)
@@ -1595,7 +1595,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL h5pcreate_f(H5P_DATASET_CREATE_F, crp_list, error)
CALL h5pset_chunk_f(crp_list, 2, dims, error)
- ! Create a dataset using the default LCPL
+ ! Create a dataset using the default LCPL
CALL h5dcreate_f(file_id, "/dataset", H5T_NATIVE_INTEGER, space_id, dset_id, error, crp_list)
CALL check("h5dcreate_f", error, total_error)
@@ -1607,10 +1607,10 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL H5Dopen_f(file_id, "/dataset", dset_id, error)
CALL check("h5dopen_f", error, total_error)
- ! Extend the dataset
+ ! Extend the dataset
CALL H5Dset_extent_f(dset_id, extend_dim, error)
CALL check("H5Dset_extent_f", error, total_error)
- ! Verify the dataspaces
+ ! Verify the dataspaces
!
!Get dataset's dataspace handle.
!
@@ -1629,37 +1629,37 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Sget_simple_extent_dims", tmp1, tmp2, total_error)
ENDDO
- ! close data set
+ ! close data set
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f", error, total_error)
- ! Check that its character encoding is the default
+ ! Check that its character encoding is the default
CALL H5Lget_info_f(file_id, "dataset", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
CALL check("H5Lget_info_f", error, total_error)
! File-wide default character encoding can not yet be set via the file
-! * creation property list and is always ASCII.
+! * creation property list and is always ASCII.
!#define H5F_DEFAULT_CSET H5T_CSET_ASCII -- FROM H5Fprivate.h --
CALL verify("h5tclose_f",cset, H5T_CSET_ASCII_F,total_error)
- ! Create a link creation property list with the UTF-8 character encoding
+ ! Create a link creation property list with the UTF-8 character encoding
CALL H5Pcreate_f(H5P_LINK_CREATE_F,lcpl_id,error)
CALL check("h5Pcreate_f",error,total_error)
CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error)
CALL check("H5Pset_char_encoding_f",error, total_error)
- ! Create and link a group with the new LCPL
+ ! Create and link a group with the new LCPL
CALL H5Gcreate_f(file_id, "/group2", group_id, error,lcpl_id=lcpl_id)
CALL check("H5Gcreate_f", error, total_error)
CALL H5Gclose_f(group_id, error)
CALL check("H5Gclose_f", error, total_error)
- ! Check that its character encoding is UTF-8
+ ! Check that its character encoding is UTF-8
CALL H5Lget_info_f(file_id, "group2", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
@@ -1667,7 +1667,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f",cset, H5T_CSET_UTF8_F,total_error)
- ! Create and commit a datatype with the new LCPL
+ ! Create and commit a datatype with the new LCPL
CALL h5tcopy_f(H5T_NATIVE_INTEGER, type_id, error)
CALL check("h5tcopy_f",error,total_error)
@@ -1677,14 +1677,14 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL check("h5tclose_f", error, total_error)
- ! Check that its character encoding is UTF-8
+ ! Check that its character encoding is UTF-8
CALL H5Lget_info_f(file_id, "type2", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
CALL check("H5Lget_info_f", error, total_error)
CALL verify("H5Lget_info_f",cset, H5T_CSET_UTF8_F,total_error)
- ! Create a dataset using the new LCPL
+ ! Create a dataset using the new LCPL
CALL h5dcreate_f(file_id, "/dataset2", H5T_NATIVE_INTEGER, space_id, dset_id, error,lcpl_id=lcpl_id)
CALL check("h5dcreate_f", error, total_error)
@@ -1695,14 +1695,14 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL check("H5Pget_char_encoding_f", error, total_error)
CALL verify("H5Pget_char_encoding_f", encoding, H5T_CSET_UTF8_F, total_error)
- ! Check that its character encoding is UTF-8
+ ! Check that its character encoding is UTF-8
CALL H5Lget_info_f(file_id, "dataset2", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
CALL check("H5Lget_info_f", error, total_error)
CALL verify("H5Lget_info_f2",cset, H5T_CSET_UTF8_F,total_error)
- ! Create a new link to the dataset with a different character encoding.
+ ! Create a new link to the dataset with a different character encoding.
CALL H5Pclose_f(lcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
@@ -1717,14 +1717,14 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL check("H5Lexists",error, total_error)
CALL verify("H5Lexists", Lexists,.TRUE.,total_error)
- ! Check that its character encoding is ASCII
+ ! Check that its character encoding is ASCII
CALL H5Lget_info_f(file_id, "/dataset2_link", &
cset, corder, f_corder_valid, link_type, token, val_size, &
error)
CALL check("H5Lget_info_f", error, total_error)
CALL verify("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
- ! Check that the first link's encoding hasn't changed
+ ! Check that the first link's encoding hasn't changed
CALL H5Lget_info_f(file_id, "/dataset2", &
cset, corder, f_corder_valid, link_type, token, val_size, &
@@ -1733,8 +1733,8 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f3",cset, H5T_CSET_UTF8_F,total_error)
- ! Make sure that LCPLs work properly for other API calls:
- ! H5Lcreate_soft
+ ! Make sure that LCPLs work properly for other API calls:
+ ! H5Lcreate_soft
CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error)
CALL check("H5Pset_char_encoding_f",error, total_error)
@@ -1748,7 +1748,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f",cset, H5T_CSET_UTF8_F,total_error)
- ! H5Lmove
+ ! H5Lmove
CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_ASCII_F, error)
CALL check("H5Pset_char_encoding_f",error, total_error)
@@ -1762,7 +1762,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f",cset, H5T_CSET_ASCII_F,total_error)
- ! H5Lcopy
+ ! H5Lcopy
CALL H5Pset_char_encoding_f(lcpl_id, H5T_CSET_UTF8_F, error)
CALL check("H5Pset_char_encoding_f",error, total_error)
@@ -1776,7 +1776,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f",cset, H5T_CSET_UTF8_F,total_error)
- ! H5Lcreate_external
+ ! H5Lcreate_external
CALL H5Lcreate_external_f("filename", "path", file_id, "extlink", error, lcpl_id)
CALL check("H5Lcreate_external_f", error, total_error)
@@ -1788,7 +1788,7 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
CALL verify("H5Lget_info_f",cset, H5T_CSET_UTF8_F,total_error)
- ! Close open IDs
+ ! Close open IDs
CALL H5Pclose_f(lcpl_id, error)
CALL check("H5Pclose_f", error, total_error)
@@ -1817,22 +1817,22 @@ SUBROUTINE objcopy(fapl, total_error)
flag = H5O_COPY_SHALLOW_HIERARCHY_F
-! Copy the file access property list
+! Copy the file access property list
CALL H5Pcopy_f(fapl, fapl2, error)
CALL check("H5Pcopy_f", error, total_error)
-! Set the "use the latest version of the format" bounds for creating objects in the file
+! Set the "use the latest version of the format" bounds for creating objects in the file
CALL H5Pset_libver_bounds_f(fapl2, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error)
- ! create property to pass copy options
+ ! create property to pass copy options
CALL h5pcreate_f(H5P_OBJECT_COPY_F, pid, error)
CALL check("h5pcreate_f",error, total_error)
- ! set options for object copy
+ ! set options for object copy
CALL H5Pset_copy_object_f(pid, flag, error)
CALL check("H5Pset_copy_object_f",error, total_error)
- ! Verify object copy flags
+ ! Verify object copy flags
CALL H5Pget_copy_object_f(pid, cpy_flags, error)
CALL check("H5Pget_copy_object_f",error, total_error)
CALL verify("H5Pget_copy_object_f", cpy_flags, flag, total_error)
@@ -1862,7 +1862,7 @@ END SUBROUTINE objcopy
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE lapl_nlinks( fapl, total_error)
@@ -1872,30 +1872,30 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
INTEGER :: error
- INTEGER(HID_T) :: fid = (-1) ! File ID
- INTEGER(HID_T) :: gid = (-1), gid2 = (-1) ! Group IDs
- INTEGER(HID_T) :: plist = (-1) ! lapl ID
- INTEGER(HID_T) :: tid = (-1) ! Other IDs
- INTEGER(HID_T) :: gapl = (-1), dapl = (-1), tapl = (-1) ! Other property lists
+ INTEGER(HID_T) :: fid = (-1) ! File ID
+ INTEGER(HID_T) :: gid = (-1), gid2 = (-1) ! Group IDs
+ INTEGER(HID_T) :: plist = (-1) ! lapl ID
+ INTEGER(HID_T) :: tid = (-1) ! Other IDs
+ INTEGER(HID_T) :: gapl = (-1), dapl = (-1), tapl = (-1) ! Other property lists
- CHARACTER(LEN=7) :: objname ! Object name
- INTEGER(size_t) :: name_len ! Length of object name
+ CHARACTER(LEN=7) :: objname ! Object name
+ INTEGER(size_t) :: name_len ! Length of object name
CHARACTER(LEN=12) :: filename = 'TestLinks.h5'
- INTEGER(size_t) :: nlinks ! nlinks for H5Pset_nlinks
+ INTEGER(size_t) :: nlinks ! nlinks for H5Pset_nlinks
INTEGER(size_t) :: buf_size = 7
! WRITE(*,*) "adjusting nlinks with LAPL (w/new group format)"
- ! Create file
+ ! Create file
CALL h5fcreate_f(FileName, H5F_ACC_TRUNC_F, fid, error, access_prp=fapl)
CALL check(" lapl_nlinks.h5fcreate_f",error,total_error)
- ! Create group with short name in file (used as target for links)
+ ! Create group with short name in file (used as target for links)
CALL H5Gcreate_f(fid, "final", gid, error)
CALL check(" lapl_nlinks.H5Gcreate_f", error, total_error)
- ! Create chain of soft links to existing object (limited)
+ ! Create chain of soft links to existing object (limited)
CALL H5Lcreate_soft_f("final", fid, "soft1", error)
CALL H5Lcreate_soft_f("soft1", fid, "soft2", error)
CALL H5Lcreate_soft_f("soft2", fid, "soft3", error)
@@ -1914,26 +1914,26 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
CALL H5Lcreate_soft_f("soft15", fid, "soft16", error)
CALL H5Lcreate_soft_f("soft16", fid, "soft17", error)
- ! Close objects
+ ! Close objects
CALL H5Gclose_f(gid, error)
CALL check("h5gclose_f",error,total_error)
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Open file
+ ! Open file
CALL h5fopen_f(FileName, H5F_ACC_RDWR_F, fid, error, fapl)
CALL check("h5open_f",error,total_error)
- ! Create LAPL with higher-than-usual nlinks value
- ! Create a non-default lapl with udata set to point to the first group
+ ! Create LAPL with higher-than-usual nlinks value
+ ! Create a non-default lapl with udata set to point to the first group
CALL H5Pcreate_f(H5P_LINK_ACCESS_F,plist,error)
CALL check("h5Pcreate_f",error,total_error)
nlinks = 20
CALL H5Pset_nlinks_f(plist, nlinks, error)
CALL check("H5Pset_nlinks_f",error,total_error)
- ! Ensure that nlinks was set successfully
+ ! Ensure that nlinks was set successfully
nlinks = 0
CALL H5Pget_nlinks_f(plist, nlinks, error)
CALL check("H5Pset_nlinks_f",error,total_error)
@@ -1941,71 +1941,71 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
! Open object through what is normally too many soft links using
- ! * new property list
+ ! * new property list
CALL H5Oopen_f(fid,"soft17",gid,error,plist)
CALL check("H5Oopen_f",error,total_error)
- ! Check name
+ ! Check name
CALL h5iget_name_f(gid, objname, buf_size, name_len, error)
CALL check("h5iget_name_f",error,total_error)
CALL verify("h5iget_name_f", TRIM(objname),"/soft17", total_error)
- ! Create group using soft link
+ ! Create group using soft link
CALL H5Gcreate_f(gid, "new_soft", gid2, error)
CALL check("H5Gcreate_f", error, total_error)
- ! Close groups
+ ! Close groups
CALL H5Gclose_f(gid2, error)
CALL check("H5Gclose_f", error, total_error)
CALL H5Gclose_f(gid, error)
CALL check("H5Gclose_f", error, total_error)
- ! Set nlinks to a smaller number
+ ! Set nlinks to a smaller number
nlinks = 4
CALL H5Pset_nlinks_f(plist, nlinks, error)
CALL check("H5Pset_nlinks_f", error, total_error)
- ! Ensure that nlinks was set successfully
+ ! Ensure that nlinks was set successfully
nlinks = 0
CALL H5Pget_nlinks_f(plist, nlinks, error)
CALL check("H5Pget_nlinks_f",error,total_error)
CALL verify("H5Pget_nlinks_f", INT(nlinks), 4, total_error)
- ! Try opening through what is now too many soft links
+ ! Try opening through what is now too many soft links
CALL H5Oopen_f(fid,"soft5",gid,error,plist)
CALL verify("H5Oopen_f", error, -1, total_error) ! should fail
- ! Open object through lesser soft link
+ ! Open object through lesser soft link
CALL H5Oopen_f(fid,"soft4",gid,error,plist)
CALL check("H5Oopen_",error,total_error)
- ! Check name
+ ! Check name
CALL h5iget_name_f(gid, objname, buf_size, name_len, error)
CALL check("h5iget_name_f",error,total_error)
CALL verify("h5iget_name_f", TRIM(objname),"/soft4", total_error)
- ! Test other functions that should use a LAPL
+ ! Test other functions that should use a LAPL
nlinks = 20
CALL H5Pset_nlinks_f(plist, nlinks, error)
CALL check("H5Pset_nlinks_f", error, total_error)
! Try copying and moving when both src and dst contain many soft links
! * using a non-default LAPL
- !
+ !
CALL H5Lcopy_f(fid, "soft17", fid, "soft17/newer_soft", error, H5P_DEFAULT_F, plist)
CALL check("H5Lcopy_f",error,total_error)
CALL H5Lmove_f(fid, "soft17/newer_soft", fid, "soft17/newest_soft", error, lapl_id=plist)
CALL check("H5Lmove_f",error, total_error)
- ! H5Olink
+ ! H5Olink
CALL H5Olink_f(gid, fid, "soft17/link_to_group", error, H5P_DEFAULT_F, plist)
CALL check("H5Olink_f", error, total_error)
- ! H5Lcreate_hard and H5Lcreate_soft
+ ! H5Lcreate_hard and H5Lcreate_soft
CALL H5Lcreate_hard_f(fid, "soft17", fid, "soft17/link2_to_group", error, H5P_DEFAULT_F, plist)
CALL check("H5Lcreate_hard_f", error, total_error)
@@ -2013,27 +2013,27 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
CALL H5Lcreate_soft_f("/soft4", fid, "soft17/soft_link",error, H5P_DEFAULT_F, plist)
CALL check("H5Lcreate_soft_f", error, total_error)
- ! H5Ldelete
+ ! H5Ldelete
CALL h5ldelete_f(fid, "soft17/soft_link", error, plist)
CALL check("H5Ldelete_f", error, total_error)
-!!$ H5Lget_val and H5Lget_info
+!!$ H5Lget_val and H5Lget_info
!!$ if(H5Lget_val(fid, "soft17", NULL, (size_t)0, plist) < 0) TEST_ERROR
!!$ if(H5Lget_info(fid, "soft17", NULL, plist) < 0) TEST_ERROR
!!$
- ! H5Lcreate_external and H5Lcreate_ud
+ ! H5Lcreate_external and H5Lcreate_ud
CALL H5Lcreate_external_f("filename", "path", fid, "soft17/extlink", error, H5P_DEFAULT_F, plist)
CALL check("H5Lcreate_external_f", error, total_error)
!!$ if(H5Lregister(UD_rereg_class) < 0) TEST_ERROR
!!$ if(H5Lcreate_ud(fid, "soft17/udlink", UD_HARD_TYPE, NULL, (size_t)0, H5P_DEFAULT, plist) < 0) TEST_ERROR
!!$
- ! Close plist
+ ! Close plist
CALL h5pclose_f(plist, error)
CALL check("h5pclose_f", error, total_error)
- ! Create a datatype and dataset as targets inside the group
+ ! Create a datatype and dataset as targets inside the group
CALL h5tcopy_f(H5T_NATIVE_INTEGER, tid, error)
CALL check("h5tcopy_f",error,total_error)
CALL h5tcommit_f(gid, "datatype", tid, error)
@@ -2048,12 +2048,12 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
!!$ if((did = H5Dcreate2(gid, "dataset", H5T_NATIVE_INT, sid, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
!!$ if(H5Dclose(did) < 0) TEST_ERROR
!!$
- ! Close group
+ ! Close group
CALL h5gclose_f(gid, error)
CALL check("h5gclose_f",error,total_error)
!!$
-!!$ Try to open the objects using too many symlinks with default *APLs
+!!$ Try to open the objects using too many symlinks with default *APLs
!!$ H5E_BEGIN_TRY {
!!$ if((gid = H5Gopen2(fid, "soft17", H5P_DEFAULT)) >= 0)
!!$ FAIL_PUTS_ERROR(" Should have failed for too many nested links.")
@@ -2063,7 +2063,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
!!$ FAIL_PUTS_ERROR(" Should have failed for too many nested links.")
!!$ } H5E_END_TRY
!!$
- ! Create property lists with nlinks set
+ ! Create property lists with nlinks set
CALL H5Pcreate_f(H5P_GROUP_ACCESS_F,gapl,error)
CALL check("h5Pcreate_f",error,total_error)
@@ -2083,7 +2083,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
! We should now be able to use these property lists to open each kind
! * of object.
- !
+ !
CALL H5Gopen_f(fid, "soft17", gid, error, gapl)
CALL check("H5Gopen_f",error,total_error)
@@ -2093,7 +2093,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
!!$ if((did = H5Dopen2(fid, "soft17/dataset", dapl)) < 0) TEST_ERROR
- ! Close objects
+ ! Close objects
CALL h5gclose_f(gid, error)
CALL check("h5gclose_f",error,total_error)
@@ -2102,7 +2102,7 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
!!$ if(H5Dclose(did) < 0) TEST_ERROR
!!$
- ! Close plists
+ ! Close plists
CALL h5pclose_f(gapl, error)
CALL check("h5pclose_f", error, total_error)
@@ -2111,11 +2111,11 @@ SUBROUTINE lapl_nlinks( fapl, total_error)
!!$ if(H5Pclose(dapl) < 0) TEST_ERROR
!!$
-!!$ Unregister UD hard link class
+!!$ Unregister UD hard link class
!!$ if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
!!$
- ! Close file
+ ! Close file
CALL H5Fclose_f(fid, error)
CALL check("H5Fclose_f", error, total_error)
diff --git a/fortran/test/tH5I.F90 b/fortran/test/tH5I.F90
index 5ce37fd..06c46bd 100644
--- a/fortran/test/tH5I.F90
+++ b/fortran/test/tH5I.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,8 +25,8 @@
!
!*****
MODULE TH5I
-
- USE HDF5 ! This module contains all necessary modules
+
+ USE HDF5 ! This module contains all necessary modules
USE TH5_MISC
USE TH5_MISC_GEN
@@ -87,21 +87,21 @@ CONTAINS
! check that the ID is not valid
dtype = -1
CALL H5Iis_valid_f(dtype, tri_ret, error)
- CALL check("H5Iis_valid_f", error, total_error)
+ CALL check("H5Iis_valid_f", error, total_error)
CALL verify("H5Iis_valid_f", tri_ret, .FALSE., total_error)
-
+
! Create a datatype id
CALL H5Tcopy_f(H5T_NATIVE_INTEGER,dtype,error)
- CALL check("H5Tcopy_f", error, total_error)
-
+ CALL check("H5Tcopy_f", error, total_error)
+
! Check that the ID is valid
CALL H5Iis_valid_f(dtype, tri_ret, error)
- CALL check("H5Iis_valid_f", error, total_error)
+ CALL check("H5Iis_valid_f", error, total_error)
CALL verify("H5Tequal_f", tri_ret, .TRUE., total_error)
-
+
CALL H5Tclose_f(dtype, error)
- CALL check("H5Tclose_f", error, total_error)
-
+ CALL check("H5Tclose_f", error, total_error)
+
!
! Create a new file using default properties.
!
diff --git a/fortran/test/tH5L_F03.F90 b/fortran/test/tH5L_F03.F90
index bdb5c55..a4e960b 100644
--- a/fortran/test/tH5L_F03.F90
+++ b/fortran/test/tH5L_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5L APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -30,8 +30,8 @@
!*****
MODULE liter_cb_mod
- USE HDF5
- USE TH5_MISC
+ USE HDF5
+ USE TH5_MISC
USE TH5_MISC_GEN
USE, INTRINSIC :: ISO_C_BINDING
IMPLICIT NONE
@@ -43,11 +43,11 @@ MODULE liter_cb_mod
INTEGER RET_CHANGE2
END TYPE iter_enum
- ! Custom group iteration callback data
+ ! Custom group iteration callback data
TYPE, bind(c) :: iter_info
- CHARACTER(KIND=C_CHAR), DIMENSION(1:10) :: name ! The name of the object
- INTEGER(c_int) :: TYPE ! The TYPE of the object
- INTEGER(c_int) :: command ! The TYPE of RETURN value
+ CHARACTER(KIND=C_CHAR), DIMENSION(1:10) :: name ! The name of the object
+ INTEGER(c_int) :: TYPE ! The TYPE of the object
+ INTEGER(c_int) :: command ! The TYPE of RETURN value
END TYPE iter_info
CONTAINS
@@ -73,7 +73,7 @@ CONTAINS
INTEGER, SAVE :: count
INTEGER, SAVE :: count2
-!!$
+!!$
!!$ iter_info *info = (iter_info *)op_data;
!!$ static int count = 0;
!!$ static int count2 = 0;
@@ -126,17 +126,17 @@ SUBROUTINE test_iter_group(total_error)
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T) :: fapl
- INTEGER(HID_T) :: file ! File ID
- INTEGER(hid_t) :: dataset ! Dataset ID
- INTEGER(hid_t) :: datatype ! Common datatype ID
- INTEGER(hid_t) :: filespace ! Common dataspace ID
- INTEGER(hid_t) :: grp ! Group ID
- INTEGER i,j ! counting variable
- INTEGER(hsize_t) idx ! Index in the group
+ INTEGER(HID_T) :: file ! File ID
+ INTEGER(hid_t) :: dataset ! Dataset ID
+ INTEGER(hid_t) :: datatype ! Common datatype ID
+ INTEGER(hid_t) :: filespace ! Common dataspace ID
+ INTEGER(hid_t) :: grp ! Group ID
+ INTEGER i,j ! counting variable
+ INTEGER(hsize_t) idx ! Index in the group
CHARACTER(LEN=11) :: DATAFILE = "titerate.h5"
INTEGER, PARAMETER :: ndatasets = 50
- CHARACTER(LEN=10) :: name ! temporary name buffer
- CHARACTER(LEN=10), DIMENSION(1:ndatasets+2) :: lnames ! Names of the links created
+ CHARACTER(LEN=10) :: name ! temporary name buffer
+ CHARACTER(LEN=10), DIMENSION(1:ndatasets+2) :: lnames ! Names of the links created
TYPE(iter_info), TARGET :: info
@@ -147,15 +147,15 @@ SUBROUTINE test_iter_group(total_error)
CHARACTER(LEN=2) :: ichr2
CHARACTER(LEN=10) :: ichr10
- ! Get the default FAPL
+ ! Get the default FAPL
CALL H5Pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL check("h5pcreate_f", error, total_error)
- ! Set the "use the latest version of the format" bounds for creating objects in the file
+ ! Set the "use the latest version of the format" bounds for creating objects in the file
CALL H5Pset_libver_bounds_f(fapl, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error)
CALL check("H5Pset_libver_bounds_f",error, total_error)
- ! Create the test file with the datasets
+ ! Create the test file with the datasets
CALL h5fcreate_f(DATAFILE, H5F_ACC_TRUNC_F, file, error, H5P_DEFAULT_F, fapl)
CALL check("h5fcreate_f", error, total_error)
@@ -190,12 +190,12 @@ SUBROUTINE test_iter_group(total_error)
ENDDO
- ! Create a group and named datatype under root group for testing
+ ! Create a group and named datatype under root group for testing
CALL H5Gcreate_f(file, "grp0000000", grp, error)
CALL check("H5Gcreate_f", error, total_error)
- lnames(ndatasets+2) = "grp0000000"
+ lnames(ndatasets+2) = "grp0000000"
!!$
!!$ lnames[NDATASETS] = HDstrdup("grp");
@@ -205,9 +205,9 @@ SUBROUTINE test_iter_group(total_error)
CALL H5Tcommit_f(file, "dtype00000", datatype, error)
CALL check("H5Tcommit_f", error, total_error)
- lnames(ndatasets+1) = "dtype00000"
+ lnames(ndatasets+1) = "dtype00000"
- ! Close everything up
+ ! Close everything up
CALL H5Tclose_f(datatype, error)
CALL check("H5Tclose_f", error, total_error)
@@ -221,11 +221,11 @@ SUBROUTINE test_iter_group(total_error)
CALL H5Fclose_f(file, error)
CALL check("H5Fclose_f", error, total_error)
- ! Iterate through the datasets in the root group in various ways
+ ! Iterate through the datasets in the root group in various ways
CALL H5Fopen_f(DATAFILE, H5F_ACC_RDONLY_F, file, error, access_prp=fapl)
CALL check("h5fopen_f", error, total_error)
- ! Test all objects in group, when callback always returns 0
+ ! Test all objects in group, when callback always returns 0
info%command = 0
idx = 0
CALL H5Literate_f(file, H5_INDEX_NAME_F, H5_ITER_INC_F, idx, f1, f2, ret_value, error)
@@ -234,28 +234,28 @@ SUBROUTINE test_iter_group(total_error)
CALL verify("H5Literate_f", error, -1, total_error)
ENDIF
- ! Test all objects in group, when callback always returns 1
- ! This also tests the "restarting" ability, because the index changes
+ ! Test all objects in group, when callback always returns 1
+ ! This also tests the "restarting" ability, because the index changes
info%command = 2
idx = 0
i = 0
f1 = C_FUNLOC(liter_cb)
f2 = C_LOC(info)
- DO
+ DO
CALL H5Literate_f(file, H5_INDEX_NAME_F, H5_ITER_INC_F, idx, f1, f2, ret_value, error)
IF(error.LT.0) EXIT
- ! Verify return value from iterator gets propagated correctly
+ ! Verify return value from iterator gets propagated correctly
CALL verify("H5Literate", ret_value, 2, total_error)
- ! Increment the number of times "2" is returned
+ ! Increment the number of times "2" is returned
i = i + 1
- ! Verify that the index is the correct value
+ ! Verify that the index is the correct value
CALL verify("H5Literate", INT(idx), INT(i), total_error)
IF(idx .GT.ndatasets+2)THEN
PRINT*,"ERROR: Group iteration function walked too far!"
ENDIF
- ! Verify the correct name is retrieved
+ ! Verify the correct name is retrieved
DO j = 1, 10
ichr10(j:j) = info%name(j)(1:1)
ENDDO
@@ -270,8 +270,8 @@ SUBROUTINE test_iter_group(total_error)
PRINT*,"ERROR: Group iteration function didn't perform multiple iterations correctly"
ENDIF
- ! Test all objects in group, when callback changes return value
- ! This also tests the "restarting" ability, because the index changes
+ ! Test all objects in group, when callback changes return value
+ ! This also tests the "restarting" ability, because the index changes
info%command = 3
idx = 0
@@ -285,10 +285,10 @@ SUBROUTINE test_iter_group(total_error)
IF(error.LT.0) EXIT
CALL verify("H5Literate_f", ret_value, 1, total_error)
- ! Increment the number of times "1" is returned
+ ! Increment the number of times "1" is returned
i = i + 1
- ! Verify that the index is the correct value
+ ! Verify that the index is the correct value
CALL verify("H5Literate_f", INT(idx), INT(i+10), total_error)
IF(idx .GT.ndatasets+2)THEN
@@ -298,7 +298,7 @@ SUBROUTINE test_iter_group(total_error)
DO j = 1, 10
ichr10(j:j) = info%name(j)(1:1)
ENDDO
- ! Verify that the correct name is retrieved
+ ! Verify that the correct name is retrieved
CALL verify("H5Literate_f", ichr10, lnames(INT(idx)), total_error)
IF(i.EQ.42)EXIT ! prints out error message otherwise (for gcc/gfortran/g95) not intel (why) -FIX- scot
ENDDO
diff --git a/fortran/test/tH5MISC_1_8.F90 b/fortran/test/tH5MISC_1_8.F90
index b8c777c..c294f21 100644
--- a/fortran/test/tH5MISC_1_8.F90
+++ b/fortran/test/tH5MISC_1_8.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -95,18 +95,18 @@ SUBROUTINE test_genprop_basic_class(total_error)
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(HID_T) :: cid1 ! Generic Property class ID
- INTEGER(HID_T) :: cid2 ! Generic Property class ID
+ INTEGER(HID_T) :: cid1 ! Generic Property class ID
+ INTEGER(HID_T) :: cid2 ! Generic Property class ID
CHARACTER(LEN=7) :: CLASS1_NAME = "Class 1"
- CHARACTER(LEN=7) :: name ! Name of class
- CHARACTER(LEN=10) :: name_big ! Name of class bigger buffer
+ CHARACTER(LEN=7) :: name ! Name of class
+ CHARACTER(LEN=10) :: name_big ! Name of class bigger buffer
CHARACTER(LEN=4) :: name_small ! Name of class smaller buffer
INTEGER :: error
INTEGER :: size
LOGICAL :: flag
- ! Output message about test being performed
+ ! Output message about test being performed
!WRITE(*,*) "Testing Basic Generic Property List Class Creation Functionality"
@@ -116,11 +116,11 @@ SUBROUTINE test_genprop_basic_class(total_error)
CALL H5Pget_class_name_f(cid1, name, size, error)
CALL verify("H5Pget_class_name", error, -1, error)
- ! Create a new generic class, derived from the root of the class hierarchy
+ ! Create a new generic class, derived from the root of the class hierarchy
CALL H5Pcreate_class_f(H5P_ROOT_F, CLASS1_NAME, cid1, error)
CALL check("H5Pcreate_class", error, total_error)
- ! Check class name
+ ! Check class name
CALL H5Pget_class_name_f(cid1, name, size, error)
CALL check("H5Pget_class_name", error, total_error)
CALL verify("H5Pget_class_name", size,7,error)
@@ -150,27 +150,27 @@ SUBROUTINE test_genprop_basic_class(total_error)
total_error = total_error + 1
ENDIF
- ! Check class parent
+ ! Check class parent
CALL H5Pget_class_parent_f(cid1, cid2, error)
CALL check("H5Pget_class_parent_f", error, total_error)
- ! Verify class parent correct
+ ! Verify class parent correct
CALL H5Pequal_f(cid2, H5P_ROOT_F, flag, error)
CALL check("H5Pequal_f", error, total_error)
CALL verify("H5Pequal_f", flag, .TRUE., total_error)
- ! Make certain false postives aren't being returned
+ ! Make certain false postives aren't being returned
CALL H5Pequal_f(cid2, H5P_FILE_CREATE_F, flag, error)
CALL check("H5Pequal_f", error, total_error)
CALL verify("H5Pequal_f", flag, .FALSE., total_error)
- ! Close parent class
+ ! Close parent class
CALL H5Pclose_class_f(cid2, error)
CALL check("H5Pclose_class_f", error, total_error)
- ! Close class
+ ! Close class
CALL H5Pclose_class_f(cid1, error)
CALL check("H5Pclose_class_f", error, total_error)
@@ -187,17 +187,17 @@ SUBROUTINE test_h5s_encode(total_error)
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(hid_t) :: sid1, sid3! Dataspace ID
+ INTEGER(hid_t) :: sid1, sid3! Dataspace ID
INTEGER(hid_t) :: decoded_sid1, decoded_sid3
INTEGER(hid_t) :: fapl ! File access property
- INTEGER :: rank ! LOGICAL rank of dataspace
+ INTEGER :: rank ! LOGICAL rank of dataspace
INTEGER(size_t) :: new_size = 0, old_size = 0, orig_size=0, scalar_size=0
! Make sure the size is large
CHARACTER(LEN=288) :: sbuf
CHARACTER(LEN=288) :: scalar_buf
- INTEGER(hsize_t) :: n ! Number of dataspace elements
+ INTEGER(hsize_t) :: n ! Number of dataspace elements
INTEGER(hsize_t), DIMENSION(1:3) :: start = (/0, 0, 0/)
INTEGER(hsize_t), DIMENSION(1:3) :: stride = (/2, 5, 3/)
@@ -217,7 +217,7 @@ SUBROUTINE test_h5s_encode(total_error)
!-------------------------------------------------------------------------
! * Test encoding and decoding of simple dataspace and hyperslab selection.
! *-------------------------------------------------------------------------
- !
+ !
CALL H5Screate_simple_f(SPACE1_RANK, dims1, sid1, error)
CALL check("H5Screate_simple", error, total_error)
@@ -227,13 +227,13 @@ SUBROUTINE test_h5s_encode(total_error)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Encode simple data space in a buffer
+ ! Encode simple data space in a buffer
! Find the buffer size without fapl
CALL H5Sencode_f(sid1, sbuf, orig_size, error)
CALL check("H5Sencode_f", error, total_error)
CALL verify("H5Sencode_f", INT(orig_size), 279, total_error)
-
+
! Create file access property list
CALL h5pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL check("h5pcreate_f", error, total_error)
@@ -252,7 +252,7 @@ SUBROUTINE test_h5s_encode(total_error)
CALL check("H5Sencode_f", error, total_error)
CALL verify("H5Sencode_f", INT(new_size), 101, total_error)
- ! Try decoding bogus buffer
+ ! Try decoding bogus buffer
CALL H5Sdecode_f(sbuf, decoded_sid1, error)
CALL verify("H5Sdecode", error, -1, total_error)
@@ -260,12 +260,12 @@ SUBROUTINE test_h5s_encode(total_error)
CALL H5Sencode_f(sid1, sbuf, new_size, error, fapl)
CALL check("H5Sencode_f", error, total_error)
- ! Decode from the dataspace buffer and return an object handle
+ ! Decode from the dataspace buffer and return an object handle
CALL H5Sdecode_f(sbuf, decoded_sid1, error)
CALL check("H5Sdecode", error, total_error)
- ! Verify the decoded dataspace
+ ! Verify the decoded dataspace
CALL h5sget_simple_extent_npoints_f(decoded_sid1, n, error)
CALL check("h5sget_simple_extent_npoints_f", error, total_error)
CALL verify("h5sget_simple_extent_npoints_f", INT(n), INT(SPACE1_DIM1 * SPACE1_DIM2 * SPACE1_DIM3), &
@@ -283,13 +283,13 @@ SUBROUTINE test_h5s_encode(total_error)
! -------------------------------------------------------------------------
! * Test encoding and decoding of scalar dataspace.
! *-------------------------------------------------------------------------
- !
- ! Create scalar dataspace
+ !
+ ! Create scalar dataspace
CALL H5Screate_f(H5S_SCALAR_F, sid3, error)
CALL check("H5Screate_f",error, total_error)
- ! Encode scalar data space in a buffer
+ ! Encode scalar data space in a buffer
! First find the buffer size
CALL H5Sencode_f(sid3, scalar_buf, scalar_size, error)
@@ -301,19 +301,19 @@ SUBROUTINE test_h5s_encode(total_error)
CALL check("H5Sencode_f", error, total_error)
- ! Decode from the dataspace buffer and return an object handle
+ ! Decode from the dataspace buffer and return an object handle
CALL H5Sdecode_f(scalar_buf, decoded_sid3, error)
CALL check("H5Sdecode_f", error, total_error)
- ! Verify extent type
+ ! Verify extent type
CALL H5Sget_simple_extent_type_f(decoded_sid3, space_type, error)
CALL check("H5Sget_simple_extent_type_f", error, total_error)
CALL verify("H5Sget_simple_extent_type_f", space_type, H5S_SCALAR_F, total_error)
- ! Verify decoded dataspace
+ ! Verify decoded dataspace
CALL h5sget_simple_extent_npoints_f(decoded_sid3, n, error)
CALL check("h5sget_simple_extent_npoints_f", error, total_error)
CALL verify("h5sget_simple_extent_npoints_f", INT(n), 1, total_error)
@@ -359,7 +359,7 @@ SUBROUTINE test_scaleoffset(cleanup, total_error )
INTEGER(hsize_t), DIMENSION(1:2) :: chunk_dim = (/2, 5/)
INTEGER, DIMENSION(1:2,1:5) :: orig_data
INTEGER, DIMENSION(1:2,1:5) :: new_data
- INTEGER(hsize_t), DIMENSION(1:2) :: start ! Start of hyperslab
+ INTEGER(hsize_t), DIMENSION(1:2) :: start ! Start of hyperslab
INTEGER(hsize_t), DIMENSION(1:2) :: stride ! Stride of hyperslab
INTEGER(hsize_t), DIMENSION(1:2) :: count ! BLOCK count
INTEGER(hsize_t), DIMENSION(1:2) :: BLOCK ! BLOCK sizes
@@ -390,11 +390,11 @@ SUBROUTINE test_scaleoffset(cleanup, total_error )
CALL H5Screate_simple_f(2, dims, space, error)
CALL CHECK(" H5Screate_simple_f", error, total_error)
- ! Create the dataset property list
+ ! Create the dataset property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F, dc, error)
CALL CHECK(" H5Pcreate_f", error, total_error)
- ! Set fill value
+ ! Set fill value
fillval = 10000
CALL H5Pset_fill_value_f(dc, H5T_NATIVE_INTEGER, fillval, error)
CALL CHECK(" H5Pset_fill_value_f", error, total_error)
@@ -402,10 +402,10 @@ SUBROUTINE test_scaleoffset(cleanup, total_error )
! Set up to use scaleoffset filter, let library calculate minbits
CALL H5Pset_chunk_f(dc, 2, chunk_dim, error)
CALL CHECK(" H5Pset_chunk_f", error, total_error)
-
+
CALL H5Pset_scaleoffset_f(dc, H5Z_SO_INT_F, H5Z_SO_INT_MINBITS_DEFAULT_F, error)
CALL CHECK(" H5Pset_scaleoffset_f", error, total_error)
-
+
! Create the dataset
CALL H5Dcreate_f(file, "scaleoffset_int", datatype, &
space, dataset, error, dc)
@@ -417,7 +417,7 @@ SUBROUTINE test_scaleoffset(cleanup, total_error )
! Select hyperslab for data to write, using 1x5 blocks,
! (1,1) stride and (1,1) count starting at the position (0,0)
-
+
start(1:2) = (/0,0/)
stride(1:2) = (/1,1/)
COUNT(1:2) = (/1,1/)
@@ -441,21 +441,21 @@ SUBROUTINE test_scaleoffset(cleanup, total_error )
! STEP 1: Test scaleoffset by setting up a chunked dataset and writing
! to it.
!----------------------------------------------------------------------
-
- ! Only data in the hyperslab will be written, other value should be fill value
+
+ ! Only data in the hyperslab will be written, other value should be fill value
CALL H5Dwrite_f(dataset, H5T_NATIVE_INTEGER, orig_data, dims, error, mspace, mspace, H5P_DEFAULT_F)
CALL CHECK(" H5Dwrite_f", error, total_error)
!----------------------------------------------------------------------
! STEP 2: Try to read the data we just wrote.
!----------------------------------------------------------------------
-
+
! Read the dataset back
-
+
CALL H5Dread_f(dataset, H5T_NATIVE_INTEGER, new_data, dims, error, mspace, mspace, H5P_DEFAULT_F)
CALL CHECK(" H5Dread_f", error, total_error)
- ! Check that the values read are the same as the values written
+ ! Check that the values read are the same as the values written
DO j = 1, INT(dims(2))
IF(new_data(1,j) .NE. orig_data(1,j))THEN
total_error = total_error + 1
diff --git a/fortran/test/tH5O.F90 b/fortran/test/tH5O.F90
index fa3787e..531dfba 100644
--- a/fortran/test/tH5O.F90
+++ b/fortran/test/tH5O.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -77,22 +77,22 @@ SUBROUTINE test_h5o_link(total_error)
INTEGER, PARAMETER :: TRUE = 1
- LOGICAL :: committed ! Whether the named datatype is committed
+ LOGICAL :: committed ! Whether the named datatype is committed
INTEGER :: i, j
- INTEGER :: error ! Value returned from API calls
+ INTEGER :: error ! Value returned from API calls
CHARACTER(LEN=14) :: NAME_DATATYPE_SIMPLE="H5T_NATIVE_INT"
CHARACTER(LEN=16) :: NAME_DATATYPE_SIMPLE2="H5T_NATIVE_INT-2"
INTEGER(HID_T) :: tid, tid2
LOGICAL :: flag
-
+
! Data for tested h5ocopy_f
CHARACTER(LEN=3) , PARAMETER :: dataset = "DS1"
INTEGER , PARAMETER :: dim0 = 4
INTEGER(HSIZE_T), DIMENSION(1:1) :: dims2 = (/dim0/) ! size read/write buffer
- INTEGER , DIMENSION(1:dim0) :: wdata2 ! Write buffer
+ INTEGER , DIMENSION(1:dim0) :: wdata2 ! Write buffer
LOGICAL :: link_exists
CHARACTER(LEN=8) :: chr_exact
CHARACTER(LEN=10) :: chr_lg
@@ -107,45 +107,45 @@ SUBROUTINE test_h5o_link(total_error)
INTEGER(HSSIZE_T) :: comment_size
INTEGER(SIZE_T) :: comment_size2
- ! Initialize the raw data
+ ! Initialize the raw data
DO i = 1, TEST6_DIM1
DO j = 1, TEST6_DIM2
wdata(i,j) = i*j
ENDDO
ENDDO
- ! Create the dataspace
+ ! Create the dataspace
CALL h5screate_simple_f(2, dims, space_id, error)
CALL check("h5screate_simple_f",error,total_error)
- ! Create LCPL with intermediate group creation flag set
+ ! Create LCPL with intermediate group creation flag set
CALL H5Pcreate_f(H5P_LINK_CREATE_F, lcpl_id, error)
CALL check("h5Pcreate_f",error,total_error)
CALL H5Pset_create_inter_group_f(lcpl_id, TRUE, error)
CALL check("H5Pset_create_inter_group_f",error,total_error)
- ! Loop over using new group format
+ ! Loop over using new group format
! for(new_format = FALSE; new_format <= TRUE; new_format++) {
- ! Make a FAPL that uses the "use the latest version of the format" bounds
+ ! Make a FAPL that uses the "use the latest version of the format" bounds
CALL H5Pcreate_f(H5P_FILE_ACCESS_F,fapl_id,error)
CALL check("h5Pcreate_f",error,total_error)
- ! Set the "use the latest version of the format" bounds for creating objects in the file
+ ! Set the "use the latest version of the format" bounds for creating objects in the file
CALL H5Pset_libver_bounds_f(fapl_id, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error)
CALL check("H5Pset_libver_bounds_f",error, total_error)
- ! Create a new HDF5 file
+ ! Create a new HDF5 file
CALL H5Fcreate_f(TEST_FILENAME, H5F_ACC_TRUNC_F, file_id, error, H5P_DEFAULT_F, fapl_id)
CALL check("H5Fcreate_f", error, total_error)
- ! Close the FAPL
+ ! Close the FAPL
CALL h5pclose_f(fapl_id, error)
CALL check("h5pclose_f",error,total_error)
- ! Create and commit a datatype with no name
+ ! Create and commit a datatype with no name
CALL H5Tcopy_f( H5T_NATIVE_INTEGER, type_id, error)
CALL check("H5Tcopy_F",error,total_error)
@@ -160,22 +160,22 @@ SUBROUTINE test_h5o_link(total_error)
CALL H5Dcreate_anon_f(file_id, type_id, space_id, dset_id, error ) ! using no optional parameters
CALL check("H5Dcreate_anon_f",error,total_error)
!
- ! Verify that we can write to and read from the dataset
+ ! Verify that we can write to and read from the dataset
!
- ! Write the data to the dataset
+ ! Write the data to the dataset
!EP CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, wdata, dims, error, &
!EP mem_space_id=H5S_ALL_F, file_space_id=H5S_ALL_F, xfer_prp = H5P_DEFAULT_F)
CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, wdata, dims, error)
CALL check("h5dwrite_f", error, total_error)
- ! Read the data back
+ ! Read the data back
!EP CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, rdata, dims, error, &
!EP mem_space_id=H5S_ALL_F, file_space_id=H5S_ALL_F, xfer_prp = H5P_DEFAULT_F)
CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, rdata, dims, error)
CALL check("h5dread_f", error, total_error)
- ! Verify the data
+ ! Verify the data
DO i = 1, TEST6_DIM1
DO j = 1, TEST6_DIM2
CALL verify("H5Dread_f",wdata(i,j),rdata(i,j),total_error)
@@ -188,21 +188,21 @@ SUBROUTINE test_h5o_link(total_error)
CALL H5Gcreate_anon_f(file_id, group_id, error)
CALL check("H5Gcreate_anon", error, total_error)
- ! Link nameless datatype into nameless group
+ ! Link nameless datatype into nameless group
CALL H5Olink_f(type_id, group_id, "datatype", error, H5P_DEFAULT_F)
CALL check("H5Olink_f", error, total_error)
- ! Link nameless dataset into nameless group with intermediate group
+ ! Link nameless dataset into nameless group with intermediate group
CALL H5Olink_f(dset_id, group_id, "inter_group/dataset", error, lcpl_id, H5P_DEFAULT_F)
CALL check("H5Olink_f", error, total_error)
- ! Close IDs for dataset and datatype
+ ! Close IDs for dataset and datatype
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f", error, total_error)
CALL h5tclose_f(type_id, error)
CALL check("h5tclose_f", error, total_error)
- ! Re-open datatype using new link
+ ! Re-open datatype using new link
CALL H5Topen_f(group_id, "datatype", type_id, error)
CALL check("h5topen_f", error, total_error)
@@ -213,30 +213,30 @@ SUBROUTINE test_h5o_link(total_error)
CALL h5gclose_f(group_id, error)
CALL check("h5gclose_f",error,total_error)
- ! Open dataset through root group and verify its data
+ ! Open dataset through root group and verify its data
CALL H5Dopen_f(file_id, "/group/inter_group/dataset", dset_id, error)
CALL check("test_lcpl.h5dopen_f", error, total_error)
- ! Read data from dataset
+ ! Read data from dataset
!EP CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, rdata, dims, error, &
!EP H5S_ALL_F, H5S_ALL_F, xfer_prp = H5P_DEFAULT_F)
CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, rdata, dims, error)
CALL check("h5dread_f", error, total_error)
- ! Verify the data
+ ! Verify the data
DO i = 1, TEST6_DIM1
DO j = 1, TEST6_DIM2
CALL verify("H5Dread",wdata(i,j),rdata(i,j),total_error)
ENDDO
ENDDO
- ! Close open IDs
+ ! Close open IDs
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f",error,total_error)
CALL h5tclose_f(type_id, error)
CALL check("h5tclose_f",error,total_error)
- ! Close remaining IDs
+ ! Close remaining IDs
CALL h5sclose_f(space_id, error)
CALL check("h5sclose_f",error,total_error)
CALL h5pclose_f(lcpl_id,error)
@@ -270,7 +270,7 @@ SUBROUTINE test_h5o_link(total_error)
comment_lg = ' '
- CALL h5oget_comment_by_name_f(file_id, "/G1/G2/G3", comment_lg, error)
+ CALL h5oget_comment_by_name_f(file_id, "/G1/G2/G3", comment_lg, error)
CALL check("h5oget_comment_by_name_f", error, total_error)
IF(comment_lg(1:13).NE.grp_comment)THEN
@@ -287,7 +287,7 @@ SUBROUTINE test_h5o_link(total_error)
comment_lg = ' '
- CALL h5oget_comment_by_name_f(file_id, "/G1/G2/G3"//' ', comment_lg, error)
+ CALL h5oget_comment_by_name_f(file_id, "/G1/G2/G3"//' ', comment_lg, error)
CALL check("h5oget_comment_by_name_f", error, total_error)
IF(comment_lg(1:13).NE.grp_comment)THEN
@@ -309,7 +309,7 @@ SUBROUTINE test_h5o_link(total_error)
! Try reading into a buffer that is the correct size
- CALL h5oget_comment_f(dset_id, comment, error)
+ CALL h5oget_comment_f(dset_id, comment, error)
CALL check("h5oget_comment_f", error, total_error)
IF(comment(1:15).NE.dset_comment(1:15))THEN
@@ -318,18 +318,18 @@ SUBROUTINE test_h5o_link(total_error)
! Try reading into a buffer that is to small
- CALL h5oget_comment_f(dset_id, comment_sm, error)
+ CALL h5oget_comment_f(dset_id, comment_sm, error)
CALL check("h5oget_comment_f", error, total_error)
IF(comment_sm(1:10).NE.dset_comment(1:10))THEN
CALL check("h5oget_comment_f", -1, total_error)
- ENDIF
+ ENDIF
! Try reading into a buffer that is larger then needed
comment_lg = ' '
- CALL h5oget_comment_f(dset_id, comment_lg, error)
+ CALL h5oget_comment_f(dset_id, comment_lg, error)
CALL check("h5oget_comment_f", error, total_error)
IF(comment_lg(1:15).NE.dset_comment)THEN
@@ -341,7 +341,7 @@ SUBROUTINE test_h5o_link(total_error)
!
! Check optional parameter
!
- CALL h5oget_comment_f(dset_id, comment_lg, error, comment_size)
+ CALL h5oget_comment_f(dset_id, comment_lg, error, comment_size)
CALL check("h5oget_comment_f", error, total_error)
IF( comment_size.NE.15)THEN
@@ -352,7 +352,7 @@ SUBROUTINE test_h5o_link(total_error)
! Try reading into a buffer that is the correct size
- CALL h5oget_comment_by_name_f(dset_id, ".", comment, error)
+ CALL h5oget_comment_by_name_f(dset_id, ".", comment, error)
CALL check("h5oget_comment_by_name_f", error, total_error)
IF(comment(1:15).NE.dset_comment(1:15))THEN
@@ -361,7 +361,7 @@ SUBROUTINE test_h5o_link(total_error)
! Try with trailing blanks in the name
- CALL h5oget_comment_by_name_f(dset_id, ". ", comment, error)
+ CALL h5oget_comment_by_name_f(dset_id, ". ", comment, error)
CALL check("h5oget_comment_by_name_f", error, total_error)
IF(comment(1:15).NE.dset_comment(1:15))THEN
@@ -371,7 +371,7 @@ SUBROUTINE test_h5o_link(total_error)
!
! Check optional parameter
!
- CALL h5oget_comment_by_name_f(dset_id, ". ", comment_lg, error, comment_size2)
+ CALL h5oget_comment_by_name_f(dset_id, ". ", comment_lg, error, comment_size2)
CALL check("h5oget_comment_by_name_f", error, total_error)
IF( comment_size2.NE.15)THEN
@@ -481,7 +481,7 @@ SUBROUTINE test_h5o_link(total_error)
CALL h5gclose_f(group_id, error)
CALL check("h5gclose_f", error, total_error)
- ! Test opening an object by index, note
+ ! Test opening an object by index, note
CALL h5oopen_by_idx_f(file_id, "/G1/G2/G3", H5_INDEX_NAME_F, H5_ITER_INC_F, 0_hsize_t, group_id, error)
CALL check("h5oopen_by_idx_f", error, total_error)
@@ -508,13 +508,13 @@ SUBROUTINE test_h5o_link(total_error)
CALL h5pcreate_f(H5P_OBJECT_COPY_F, ocpypl_id, error)
CALL check("h5Pcreate_f",error,total_error)
- CALL h5pset_copy_object_f(ocpypl_id, H5O_COPY_SHALLOW_HIERARCHY_F, error)
+ CALL h5pset_copy_object_f(ocpypl_id, H5O_COPY_SHALLOW_HIERARCHY_F, error)
CALL check("H5Pset_copy_object_f",error,total_error)
- CALL h5ocopy_f(file_id, "/G1/G2", file_id, "/G1/G_cp2", error, ocpypl_id=ocpypl_id)
+ CALL h5ocopy_f(file_id, "/G1/G2", file_id, "/G1/G_cp2", error, ocpypl_id=ocpypl_id)
CALL check("h5ocopy_f",error,total_error)
- ! Makes sure the "DS1" dataset was not copied since we set a
+ ! Makes sure the "DS1" dataset was not copied since we set a
! flag to copy only immediate members of a group.
! Therefore, this should fail.
CALL h5dopen_f(file_id, "/G1/G_cp2/DS1", dset_id, error)
@@ -578,31 +578,31 @@ SUBROUTINE test_h5o_plist(total_error)
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(hid_t) :: fid ! HDF5 File ID
- INTEGER(hid_t) :: grp, dset, dtype, dspace ! Object identifiers
- INTEGER(hid_t) :: fapl ! File access property list
- INTEGER(hid_t) :: gcpl, dcpl, tcpl ! Object creation properties
- INTEGER :: def_max_compact, def_min_dense ! Default phase change parameters
- INTEGER :: max_compact, min_dense ! Actual phase change parameters
- INTEGER :: error ! Value returned from API calls
+ INTEGER(hid_t) :: fid ! HDF5 File ID
+ INTEGER(hid_t) :: grp, dset, dtype, dspace ! Object identifiers
+ INTEGER(hid_t) :: fapl ! File access property list
+ INTEGER(hid_t) :: gcpl, dcpl, tcpl ! Object creation properties
+ INTEGER :: def_max_compact, def_min_dense ! Default phase change parameters
+ INTEGER :: max_compact, min_dense ! Actual phase change parameters
+ INTEGER :: error ! Value returned from API calls
CHARACTER(LEN=7), PARAMETER :: TEST_FILENAME = 'test.h5'
! PRINT*,'Testing object creation properties'
- ! Make a FAPL that uses the "use the latest version of the format" flag
+ ! Make a FAPL that uses the "use the latest version of the format" flag
CALL H5Pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL check("H5Pcreate_f", error, total_error)
- ! Set the "use the latest version of the format" bounds for creating objects in the file
+ ! Set the "use the latest version of the format" bounds for creating objects in the file
CALL H5Pset_libver_bounds_f(fapl, H5F_LIBVER_LATEST_F, H5F_LIBVER_LATEST_F, error)
CALL check("H5Pcreate_f", error, total_error)
- ! Create a new HDF5 file
+ ! Create a new HDF5 file
CALL H5Fcreate_f(TEST_FILENAME, H5F_ACC_TRUNC_F, fid, error, access_prp=fapl)
CALL check("H5Fcreate_f", error, total_error)
- ! Create group, dataset & named datatype creation property lists
+ ! Create group, dataset & named datatype creation property lists
CALL H5Pcreate_f(H5P_GROUP_CREATE_F, gcpl, error)
CALL check("H5Pcreate_f", error, total_error)
CALL H5Pcreate_f(H5P_DATASET_CREATE_F, dcpl, error)
@@ -610,11 +610,11 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Pcreate_f(H5P_DATATYPE_CREATE_F, tcpl, error)
CALL check("H5Pcreate_f", error, total_error)
- ! Retrieve default attribute phase change values
+ ! Retrieve default attribute phase change values
CALL H5Pget_attr_phase_change_f(gcpl, def_max_compact, def_min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- ! Set non-default attribute phase change values on each creation property list
+ ! Set non-default attribute phase change values on each creation property list
CALL H5Pset_attr_phase_change_f(gcpl, def_max_compact+1, def_min_dense-1, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
CALL H5Pset_attr_phase_change_f(dcpl, def_max_compact+1, def_min_dense-1, error)
@@ -622,7 +622,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Pset_attr_phase_change_f(tcpl, def_max_compact+1, def_min_dense-1, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
- ! Retrieve attribute phase change values on each creation property list and verify
+ ! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
@@ -640,16 +640,16 @@ SUBROUTINE test_h5o_plist(total_error)
! Create a group, dataset, and committed datatype within the file,
! using the respective type of creation property lists.
- !
+ !
- ! Create the group anonymously and link it in
+ ! Create the group anonymously and link it in
CALL H5Gcreate_anon_f(fid, grp, error, gcpl_id=gcpl)
CALL check("H5Gcreate_anon_f", error, total_error)
CALL H5Olink_f(grp, fid, "group", error)
CALL check("H5Olink_f", error, total_error)
- ! Commit the type inside the group anonymously and link it in
+ ! Commit the type inside the group anonymously and link it in
CALL h5tcopy_f(H5T_NATIVE_INTEGER, dtype, error)
CALL check("h5tcopy_f", error, total_error)
@@ -659,11 +659,11 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Olink_f(dtype, fid, "datatype", error)
CALL check("H5Olink_f", error, total_error)
- ! Create the dataspace for the dataset.
+ ! Create the dataspace for the dataset.
CALL h5screate_f(H5S_SCALAR_F, dspace, error)
CALL check("h5screate_f",error,total_error)
- ! Create the dataset anonymously and link it in
+ ! Create the dataset anonymously and link it in
CALL H5Dcreate_anon_f(fid, H5T_NATIVE_INTEGER, dspace, dset, error, dcpl )
CALL check("H5Dcreate_anon_f",error,total_error)
@@ -673,7 +673,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL h5sclose_f(dspace, error)
CALL check("h5sclose_f",error,total_error)
- ! Close current creation property lists
+ ! Close current creation property lists
CALL h5pclose_f(gcpl,error)
CALL check("h5pclose_f", error, total_error)
CALL h5pclose_f(dcpl,error)
@@ -681,7 +681,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL h5pclose_f(tcpl,error)
CALL check("h5pclose_f", error, total_error)
- ! Retrieve each object's creation property list
+ ! Retrieve each object's creation property list
CALL H5Gget_create_plist_f(grp, gcpl, error)
CALL check("H5Gget_create_plist", error, total_error)
@@ -691,7 +691,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Dget_create_plist_f(dset, dcpl, error)
CALL check("H5Dget_create_plist_f", error, total_error)
- ! Retrieve attribute phase change values on each creation property list and verify
+ ! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
@@ -707,7 +707,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
- ! Close current objects
+ ! Close current objects
CALL h5pclose_f(gcpl,error)
CALL check("h5pclose_f", error, total_error)
CALL h5pclose_f(dcpl,error)
@@ -724,11 +724,11 @@ SUBROUTINE test_h5o_plist(total_error)
CALL check("h5dclose_f",error,total_error)
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Re-open the file and check that the object creation properties persist
+ ! Re-open the file and check that the object creation properties persist
CALL h5fopen_f(TEST_FILENAME, H5F_ACC_RDONLY_F, fid, error, access_prp=fapl)
CALL check("H5fopen_f",error,total_error)
- ! Re-open objects
+ ! Re-open objects
CALL H5Gopen_f(fid, "group", grp, error)
CALL check("h5gopen_f", error, total_error)
@@ -738,7 +738,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Dopen_f(fid, "dataset", dset, error)
CALL check("h5dopen_f", error, total_error)
- ! Retrieve each object's creation property list
+ ! Retrieve each object's creation property list
CALL H5Gget_create_plist_f(grp, gcpl, error)
CALL check("H5Gget_create_plist", error, total_error)
@@ -748,7 +748,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL H5Dget_create_plist_f(dset, dcpl, error)
CALL check("H5Dget_create_plist_f", error, total_error)
- ! Retrieve attribute phase change values on each creation property list and verify
+ ! Retrieve attribute phase change values on each creation property list and verify
CALL H5Pget_attr_phase_change_f(gcpl, max_compact, min_dense, error)
CALL check("H5Pget_attr_phase_change_f", error, total_error)
CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
@@ -764,7 +764,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL verify("H5Pget_attr_phase_change_f", max_compact, (def_max_compact + 1), total_error)
CALL verify("H5Pget_attr_phase_change_f", min_dense, (def_min_dense - 1), total_error)
- ! Close current objects
+ ! Close current objects
CALL h5pclose_f(gcpl,error)
CALL check("h5pclose_f", error, total_error)
CALL h5pclose_f(dcpl,error)
@@ -782,7 +782,7 @@ SUBROUTINE test_h5o_plist(total_error)
CALL h5fclose_f(fid, error)
CALL check("h5fclose_f",error,total_error)
- ! Close the FAPL
+ ! Close the FAPL
CALL H5Pclose_f(fapl, error)
CALL check("H5Pclose_f", error, total_error)
diff --git a/fortran/test/tH5O_F03.F90 b/fortran/test/tH5O_F03.F90
index c9ecccc..2f9bcad 100644
--- a/fortran/test/tH5O_F03.F90
+++ b/fortran/test/tH5O_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5O APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -28,9 +28,9 @@
! *****************************************
MODULE visit_cb
- USE HDF5
+ USE HDF5
USE, INTRINSIC :: ISO_C_BINDING
-
+
IMPLICIT NONE
INTEGER, PARAMETER :: info_size = 9
@@ -283,7 +283,7 @@ CONTAINS
SUBROUTINE test_h5o_refcount(total_error)
- USE HDF5
+ USE HDF5
USE TH5_MISC
USE ISO_C_BINDING
IMPLICIT NONE
@@ -301,7 +301,7 @@ SUBROUTINE test_h5o_refcount(total_error)
! Create a new HDF5 file
CALL h5fcreate_f(FILENAME,H5F_ACC_TRUNC_F,fid,error)
- CALL check("h5fcreate_f", error, total_error)
+ CALL check("h5fcreate_f", error, total_error)
! Create a group, dataset, and committed datatype within the file
! Create the group
@@ -567,13 +567,13 @@ SUBROUTINE test_obj_info(total_error)
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(hid_t) :: fid = -1 ! File ID
- INTEGER(hid_t) :: gid = -1, gid2 = -1 ! Group IDs
- INTEGER(hid_t) :: did ! Dataset ID
- INTEGER(hid_t) :: sid ! Dataspace ID
- TYPE(hobj_ref_t_f), TARGET :: wref ! Reference to write
+ INTEGER(hid_t) :: fid = -1 ! File ID
+ INTEGER(hid_t) :: gid = -1, gid2 = -1 ! Group IDs
+ INTEGER(hid_t) :: did ! Dataset ID
+ INTEGER(hid_t) :: sid ! Dataspace ID
+ TYPE(hobj_ref_t_f), TARGET :: wref ! Reference to write
TYPE(hobj_ref_t_f), TARGET :: rref ! Reference to read
- TYPE(H5O_info_t) :: oinfo ! Object info struct
+ TYPE(H5O_info_t) :: oinfo ! Object info struct
INTEGER :: error
TYPE(C_PTR) :: f_ptr
@@ -595,7 +595,7 @@ SUBROUTINE test_obj_info(total_error)
CALL h5gcreate_f(fid, GROUPNAME, gid, error)
CALL check("h5gcreate_f",error,total_error)
- ! Create nested groups
+ ! Create nested groups
CALL h5gcreate_f(gid, GROUPNAME2, gid2, error)
CALL check("h5gcreate_f",error,total_error)
CALL h5gclose_f(gid2, error)
@@ -630,7 +630,7 @@ SUBROUTINE test_obj_info(total_error)
CALL h5dwrite_f(did, H5T_STD_REF_OBJ, f_ptr, error)
CALL check("h5dwrite_f",error, total_error)
- ! Close objects
+ ! Close objects
CALL h5dclose_f(did, error)
CALL check("h5dclose_f", error, total_error)
CALL h5sclose_f(sid, error)
@@ -718,7 +718,7 @@ SUBROUTINE build_visit_file(fid)
USE TH5_MISC
IMPLICIT NONE
- INTEGER(hid_t) :: fid ! File ID
+ INTEGER(hid_t) :: fid ! File ID
INTEGER(hid_t) :: gid = -1, gid2 = -1 ! Group IDs
INTEGER(hid_t) :: sid = -1 ! Dataspace ID
INTEGER(hid_t) :: did = -1 ! Dataset ID
@@ -726,7 +726,7 @@ SUBROUTINE build_visit_file(fid)
INTEGER(hid_t) :: aid = -1, aid2 = -1, aid3 = -1 ! Attribute ID
CHARACTER(LEN=20) :: filename = 'visit.h5'
INTEGER :: error
-
+
! Create file for visiting
CALL H5Fcreate_f(filename, H5F_ACC_TRUNC_F, fid, error)
diff --git a/fortran/test/tH5P.F90 b/fortran/test/tH5P.F90
index c42dd7e..1d1208c 100644
--- a/fortran/test/tH5P.F90
+++ b/fortran/test/tH5P.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -25,7 +25,7 @@
!
!*****
MODULE TH5P
- USE HDF5 ! This module contains all necessary modules
+ USE HDF5 ! This module contains all necessary modules
USE TH5_MISC
USE TH5_MISC_GEN
@@ -37,11 +37,11 @@ SUBROUTINE external_test(cleanup, total_error)
! h5pset_external_f, h5pget_external_count_f,
! h5pget_external_f
-
+
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
-
+
CHARACTER(LEN=8), PARAMETER :: filename = "external"
CHARACTER(LEN=80) :: fix_filename
INTEGER(HID_T) :: file_id
@@ -75,7 +75,7 @@ SUBROUTINE external_test(cleanup, total_error)
ENDIF
CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, file_id, error)
CALL check("h5fcreate_f",error,total_error)
-
+
CALL h5pcreate_f(H5P_DATASET_XFER_F, plist_id, error)
CALL check("h5pcreate_f", error, total_error)
CALL h5pset_buffer_f(plist_id, buf_size, error)
@@ -88,7 +88,7 @@ SUBROUTINE external_test(cleanup, total_error)
ENDIF
CALL h5pclose_f(plist_id, error)
CALL check("h5pclose_f", error, total_error)
-
+
CALL h5pcreate_f(H5P_DATASET_CREATE_F, plist_id, error)
CALL check("h5pcreate_f",error,total_error)
cur_size(1) =100
@@ -103,7 +103,7 @@ SUBROUTINE external_test(cleanup, total_error)
CALL h5dcreate_f(file_id, "dset1", H5T_NATIVE_INTEGER, space_id, &
dataset_id, error, plist_id)
CALL check("h5dcreate_f", error, total_error)
-
+
CALL h5dclose_f(dataset_id, error)
CALL check("h5dclose_f", error, total_error)
CALL h5pclose_f(plist_id, error)
@@ -111,11 +111,11 @@ SUBROUTINE external_test(cleanup, total_error)
CALL h5sclose_f(space_id, error)
CALL check("h5sclose_f", error, total_error)
CALL h5fclose_f(file_id, error)
-
+
CALL h5fopen_f(fix_filename, H5F_ACC_RDWR_F, file_id, error)
CALL h5dopen_f(file_id, "dset1", dataset_id, error)
CALL check("h5dopen_f",error,total_error)
-
+
! Read dataset creation information
CALL h5dget_create_plist_f(dataset_id, plist_id, error)
CALL check("h5dget_create_plist_f",error,total_error)
@@ -138,7 +138,7 @@ SUBROUTINE external_test(cleanup, total_error)
WRITE (*,*) "got external file size is not correct"
total_error = total_error + 1
END IF
-
+
CALL h5dclose_f(dataset_id, error)
CALL check("h5dclose_f", error, total_error)
CALL h5pclose_f(plist_id, error)
@@ -152,15 +152,15 @@ SUBROUTINE external_test(cleanup, total_error)
END SUBROUTINE external_test
SUBROUTINE multi_file_test(cleanup, total_error)
-
+
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
-
+
CHARACTER(LEN=9), PARAMETER :: filename = "multidset" ! File name
CHARACTER(LEN=80) :: fix_filename
CHARACTER(LEN=4), PARAMETER :: dsetname = "dset" ! Dataset name
-
+
INTEGER(HID_T) :: file_id ! File identifier
INTEGER(HID_T) :: dset_id ! Dataset identifier
INTEGER(HID_T) :: dspace_id ! Dataspace identifier
@@ -173,10 +173,10 @@ SUBROUTINE multi_file_test(cleanup, total_error)
!INTEGER(HADDR_T), DIMENSION(0:H5FD_MEM_NTYPES_F) :: memb_addr
LOGICAL :: relax = .TRUE.
LOGICAL :: relax_out = .TRUE.
-
+
INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/4,6/) ! Dataset dimensions
INTEGER :: rank = 2 ! Dataset rank
-
+
INTEGER, DIMENSION(4,6) :: dset_data, data_out ! Data buffers
INTEGER :: error ! Error flag
INTEGER(HID_T) :: driver
@@ -201,7 +201,7 @@ SUBROUTINE multi_file_test(cleanup, total_error)
memb_addr(H5FD_MEM_LHEAP_F) = 0.3
memb_map(H5FD_MEM_OHDR_F) = H5FD_MEM_OHDR_F
memb_addr(H5FD_MEM_OHDR_F) = 0.4
-
+
memb_name = ' '
memb_name(H5FD_MEM_SUPER_F) = '%s-s.h5'
memb_name(H5FD_MEM_BTREE_F) = '%s-b.h5'
@@ -218,7 +218,7 @@ SUBROUTINE multi_file_test(cleanup, total_error)
dset_data(i,j) = (i-1)*6 + j
END DO
END DO
-
+
!
! Create a new file using default properties.
!
@@ -244,8 +244,8 @@ SUBROUTINE multi_file_test(cleanup, total_error)
!
CALL h5pget_cache_f(fapl, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, &
rdcc_w0, error)
- CALL check("h5pget_cache_f", error, total_error)
-
+ CALL check("h5pget_cache_f", error, total_error)
+
!
! Set cache to some number
!
@@ -284,13 +284,13 @@ SUBROUTINE multi_file_test(cleanup, total_error)
!
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f", error, total_error)
-
+
!
! Terminate access to the data space.
!
CALL h5sclose_f(dspace_id, error)
CALL check("h5sclose_f", error, total_error)
-
+
!
! Close the file.
!
@@ -318,31 +318,31 @@ SUBROUTINE multi_file_test(cleanup, total_error)
! write(*,*) memb_name_out
! write(*,*) memb_addr_out
! CALL check("h5pget_fapl_multi_f", error, total_error)
-
+
!
! Open the existing dataset.
!
CALL h5dopen_f(file_id, dsetname, dset_id, error)
CALL check("h5dopen_f", error, total_error)
-
+
!
! Get the dataset type.
!
CALL h5dget_type_f(dset_id, dtype_id, error)
CALL check("h5dget_type_f", error, total_error)
-
+
!
! Get the data space.
!
CALL h5dget_space_f(dset_id, dspace_id, error)
CALL check("h5dget_space_f", error, total_error)
-
+
!
! Read the dataset.
!
CALL h5dread_f(dset_id, H5T_NATIVE_INTEGER, data_out, data_dims, error)
CALL check("h5dread_f", error, total_error)
-
+
!
!Compare the data.
!
@@ -354,19 +354,19 @@ SUBROUTINE multi_file_test(cleanup, total_error)
END IF
END DO
END DO
-
+
!
! End access to the dataset and release resources used by it.
!
CALL h5dclose_f(dset_id, error)
CALL check("h5dclose_f", error, total_error)
-
+
!
! Terminate access to the data space.
!
CALL h5sclose_f(dspace_id, error)
CALL check("h5sclose_f", error, total_error)
-
+
!
! Terminate access to the data type.
!
@@ -383,7 +383,7 @@ SUBROUTINE multi_file_test(cleanup, total_error)
CALL check("h5pclose_f", error, total_error)
IF(cleanup) CALL h5_cleanup_f(filename, H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
-
+
IF(cleanup) CALL h5_cleanup_f(filename//'.h5-b', H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
IF(cleanup) CALL h5_cleanup_f(filename//'.h5-g', H5P_DEFAULT_F, error)
@@ -396,7 +396,7 @@ SUBROUTINE multi_file_test(cleanup, total_error)
CALL check("h5_cleanup_f", error, total_error)
IF(cleanup) CALL h5_cleanup_f(filename//'.h5-s', H5P_DEFAULT_F, error)
CALL check("h5_cleanup_f", error, total_error)
-
+
RETURN
END SUBROUTINE multi_file_test
@@ -419,27 +419,27 @@ END SUBROUTINE multi_file_test
!-------------------------------------------------------------------------
!
SUBROUTINE test_chunk_cache(cleanup, total_error)
-
+
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
-
+
CHARACTER(LEN=14), PARAMETER :: filename="chunk_cache"
CHARACTER(LEN=80) :: fix_filename
- INTEGER(hid_t) :: fid = -1 ! File ID
- INTEGER(hid_t) :: fapl_local = -1 ! Local fapl
- INTEGER(hid_t) :: fapl_def = -1 ! Default fapl
- INTEGER(hid_t) :: dcpl = -1 ! Dataset creation property list ID
- INTEGER(hid_t) :: dapl1 = -1 ! Dataset access property list ID
- INTEGER(hid_t) :: dapl2 = -1 ! Dataset access property list ID
- INTEGER(hid_t) :: sid = -1 ! Dataspace ID
- INTEGER(hid_t) :: dsid = -1 ! Dataset ID
- INTEGER(hsize_t), DIMENSION(1:1) :: chunk_dim, NDIM = (/100/) ! Dataset and chunk dimensions
- INTEGER(size_t) :: nslots_1, nslots_2, nslots_3, nslots_4 ! rdcc number of elements
- INTEGER(size_t) :: nbytes_1, nbytes_2, nbytes_3, nbytes_4 ! rdcc number of bytes
+ INTEGER(hid_t) :: fid = -1 ! File ID
+ INTEGER(hid_t) :: fapl_local = -1 ! Local fapl
+ INTEGER(hid_t) :: fapl_def = -1 ! Default fapl
+ INTEGER(hid_t) :: dcpl = -1 ! Dataset creation property list ID
+ INTEGER(hid_t) :: dapl1 = -1 ! Dataset access property list ID
+ INTEGER(hid_t) :: dapl2 = -1 ! Dataset access property list ID
+ INTEGER(hid_t) :: sid = -1 ! Dataspace ID
+ INTEGER(hid_t) :: dsid = -1 ! Dataset ID
+ INTEGER(hsize_t), DIMENSION(1:1) :: chunk_dim, NDIM = (/100/) ! Dataset and chunk dimensions
+ INTEGER(size_t) :: nslots_1, nslots_2, nslots_3, nslots_4 ! rdcc number of elements
+ INTEGER(size_t) :: nbytes_1, nbytes_2, nbytes_3, nbytes_4 ! rdcc number of bytes
INTEGER :: mdc_nelmts
- INTEGER(size_t) ::nlinks ! Number of link traversals
- REAL :: w0_1, w0_2, w0_3, w0_4 ! rdcc preemption policy
+ INTEGER(size_t) ::nlinks ! Number of link traversals
+ REAL :: w0_1, w0_2, w0_3, w0_4 ! rdcc preemption policy
INTEGER :: error
INTEGER(size_t) rdcc_nelmts
INTEGER(size_t) rdcc_nbytes
@@ -452,7 +452,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
STOP
ENDIF
- ! Create a default fapl and dapl
+ ! Create a default fapl and dapl
CALL H5Pcreate_f(H5P_FILE_ACCESS_F, fapl_def, error)
CALL check("H5Pcreate_f", error, total_error)
CALL H5Pcreate_f(H5P_DATASET_ACCESS_F, dapl1, error)
@@ -460,7 +460,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
! Verify that H5Pget_chunk_cache(dapl) returns the same values as are in
! the default fapl.
- !
+ !
CALL H5Pget_cache_f(fapl_def, mdc_nelmts, nslots_1, nbytes_1, w0_1, error)
CALL check("H5Pget_cache_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl1, nslots_4, nbytes_4, w0_4, error)
@@ -469,7 +469,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL verify("H5Pget_chunk_cache_f", nbytes_1, nbytes_4, total_error)
CALL verify("H5Pget_chunk_cache_f", w0_1, w0_4, total_error)
- ! Set a lapl property on dapl1 (to verify inheritance)
+ ! Set a lapl property on dapl1 (to verify inheritance)
CALL H5Pset_nlinks_f(dapl1, 134_size_t , error)
CALL check("H5Pset_nlinks_f", error, total_error)
CALL H5Pget_nlinks_f(dapl1, nlinks, error)
@@ -494,29 +494,29 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL H5Pset_cache_f(fapl_local, 0, nslots_2, nbytes_2, w0_2, error)
CALL check("H5Pset_cache_f", error, total_error)
- ! Create file
+ ! Create file
CALL H5Fcreate_f(fix_filename, H5F_ACC_TRUNC_F, fid, error, H5P_DEFAULT_F, fapl_local)
CALL check("H5Fcreate_f", error, total_error)
- ! Create dataset creation property list
+ ! Create dataset creation property list
CALL H5Pcreate_f(H5P_DATASET_CREATE_F, dcpl, error)
CALL check("H5Pcreate_f", error, total_error)
- ! Set chunking
+ ! Set chunking
chunk_dim(1) = 10
CALL H5Pset_chunk_f(dcpl, 1, chunk_dim, error)
CALL check("H5Pset_chunk_f", error, total_error)
- ! Create 1-D dataspace
+ ! Create 1-D dataspace
ndim(1) = 100
CALL H5Screate_simple_f(1, ndim, sid, error)
CALL check("H5Pcreate_f", error, total_error)
- ! Create dataset with default dapl
+ ! Create dataset with default dapl
CALL H5Dcreate_f(fid, "dset", H5T_NATIVE_INTEGER, sid, dsid, error, dcpl, H5P_DEFAULT_F, dapl1)
CALL check("H5Pcreate_f", error, total_error)
-
- ! Retrieve dapl from dataset, verify cache values are the same as on fapl_local
+
+ ! Retrieve dapl from dataset, verify cache values are the same as on fapl_local
CALL H5Dget_access_plist_f(dsid, dapl2, error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
@@ -524,9 +524,9 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
- CALL H5Pclose_f(dapl2,error)
+ CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error)
-
+
! Set new values on dapl1. nbytes will be set to default, so the file
! property will override this setting
@@ -537,7 +537,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL H5Pset_chunk_cache_f(dapl1, nslots_3, nbytes_3, w0_3, error)
CALL check("H5Pset_chunk_cache_f", error, total_error)
- ! Close dataset, reopen with dapl1. Note the use of a dapl with H5Oopen
+ ! Close dataset, reopen with dapl1. Note the use of a dapl with H5Oopen
CALL H5Dclose_f(dsid, error)
CALL H5Oopen_f(fid, "dset", dsid, error, dapl1)
@@ -572,11 +572,11 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL verify("H5Pget_chunk_cache_f", INT(nslots_2), INT(nslots_4), total_error)
CALL verify("H5Pget_chunk_cache_f", INT(nbytes_2), INT(nbytes_4), total_error)
CALL verify("H5Pget_chunk_cache_f", w0_2, w0_4, total_error)
- CALL H5Pclose_f(dapl2,error)
+ CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error)
! Similary, test use of H5Dcreate2 with H5P_DEFAULT
- CALL H5Dclose_f(dsid, error)
+ CALL H5Dclose_f(dsid, error)
CALL check("H5Dclose_f", error, total_error)
CALL H5Dcreate_f(fid, "dset2", H5T_NATIVE_INTEGER, sid, dsid, error, dcpl, H5P_DEFAULT_F, H5P_DEFAULT_F)
@@ -599,7 +599,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL check("H5Pset_cache_f", error, total_error)
! Close and reopen file with new fapl_local
-
+
CALL H5Dclose_f(dsid, error)
CALL check("H5Dclose_f", error, total_error)
CALL H5Fclose_f(fid,error)
@@ -611,13 +611,13 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
! Verify that dapl2 retrieved earlier (using values from the old fapl)
! sets its values in the new file (test use of H5Dopen2 with a dapl)
!
-
+
CALL h5dopen_f (fid, "dset", dsid, error, dapl2)
CALL check("h5dopen_f", error, total_error)
-
+
CALL H5Pclose_f(dapl2,error)
CALL check("H5Pclose_f", error, total_error) ! Close dapl2, to avoid id leak
-
+
CALL H5Dget_access_plist_f(dsid, dapl2, error)
CALL check("H5Dget_access_plist_f", error, total_error)
CALL H5Pget_chunk_cache_f(dapl2, nslots_4, nbytes_4, w0_4, error)
@@ -707,15 +707,15 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
CALL H5Sclose_f(sid,error)
CALL check("H5Sclose_f", error, total_error)
CALL H5Pclose_f(fapl_local,error)
- CALL check("H5Pclose_f", error, total_error)
+ CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(fapl_def,error)
- CALL check("H5Pclose_f", error, total_error)
+ CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(dapl1,error)
- CALL check("H5Pclose_f", error, total_error)
+ CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(dapl2,error)
- CALL check("H5Pclose_f", error, total_error)
+ CALL check("H5Pclose_f", error, total_error)
CALL H5Pclose_f(dcpl,error)
- CALL check("H5Pclose_f", error, total_error)
+ CALL check("H5Pclose_f", error, total_error)
CALL H5Fclose_f(fid,error)
CALL check("H5Fclose_f", error, total_error)
@@ -724,4 +724,77 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
END SUBROUTINE test_chunk_cache
+!-------------------------------------------------------------------------
+! Function: test_misc_properties
+!
+! Purpose: Tests setting and getting of miscellaneous properties. Does
+! not test the underlying functionality as that is done in
+! the C library tests.
+!
+! Tests APIs:
+! H5P_GET/SET_FILE_LOCKING_F
+!
+! Return: Success: 0
+! Failure: -1
+!
+!-------------------------------------------------------------------------
+!
+SUBROUTINE test_misc_properties(cleanup, total_error)
+
+ IMPLICIT NONE
+ LOGICAL, INTENT(IN) :: cleanup
+ INTEGER, INTENT(INOUT) :: total_error
+
+ INTEGER(hid_t) :: fapl_id = -1 ! Local fapl
+ LOGICAL :: use_file_locking ! (H5Pset/get_file_locking_f)
+ LOGICAL :: ignore_disabled_locks ! (H5Pset/get_file_locking_f)
+ INTEGER :: error
+
+ ! Create a default fapl
+ CALL H5Pcreate_f(H5P_FILE_ACCESS_F, fapl_id, error)
+ CALL check("H5Pcreate_f", error, total_error)
+
+ ! Test H5Pset/get_file_locking_f
+ ! true values
+ use_file_locking = .TRUE.
+ ignore_disabled_locks = .TRUE.
+ CALL h5pset_file_locking_f(fapl_id, use_file_locking, ignore_disabled_locks, error)
+ CALL check("h5pset_set_file_locking_f", error, total_error)
+ use_file_locking = .FALSE.
+ ignore_disabled_locks = .FALSE.
+ CALL h5pget_file_locking_f(fapl_id, use_file_locking, ignore_disabled_locks, error)
+ CALL check("h5pget_set_file_locking_f", error, total_error)
+ if(use_file_locking .neqv. .TRUE.) then
+ total_error = total_error + 1
+ write(*,*) "Got wrong use_file_locking flag from h5pget_file_locking_f"
+ endif
+ if(ignore_disabled_locks .neqv. .TRUE.) then
+ total_error = total_error + 1
+ write(*,*) "Got wrong ignore_disabled_locks flag from h5pget_file_locking_f"
+ endif
+
+ ! false values
+ use_file_locking = .FALSE.
+ ignore_disabled_locks = .FALSE.
+ CALL h5pset_file_locking_f(fapl_id, use_file_locking, ignore_disabled_locks, error)
+ CALL check("h5pset_set_file_locking_f", error, total_error)
+ use_file_locking = .TRUE.
+ ignore_disabled_locks = .TRUE.
+ CALL h5pget_file_locking_f(fapl_id, use_file_locking, ignore_disabled_locks, error)
+ CALL check("h5pget_set_file_locking_f", error, total_error)
+ if(use_file_locking .neqv. .FALSE.) then
+ total_error = total_error + 1
+ write(*,*) "Got wrong use_file_locking flag from h5pget_file_locking_f"
+ endif
+ if(ignore_disabled_locks .neqv. .FALSE.) then
+ total_error = total_error + 1
+ write(*,*) "Got wrong ignore_disabled_locks flag from h5pget_file_locking_f"
+ endif
+
+ ! Close the fapl
+ CALL H5Pclose_f(fapl_id, error)
+ CALL check("H5Pclose_f", error, total_error)
+
+END SUBROUTINE test_misc_properties
+
END MODULE TH5P
diff --git a/fortran/test/tH5P_F03.F90 b/fortran/test/tH5P_F03.F90
index 88c581c..c9b23f1 100644
--- a/fortran/test/tH5P_F03.F90
+++ b/fortran/test/tH5P_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5P APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -40,35 +40,35 @@ MODULE test_genprop_cls_cb1_mod
USE HDF5
USE ISO_C_BINDING
IMPLICIT NONE
-
- TYPE, BIND(C) :: cop_cb_struct_ ! Struct for iterations
+
+ TYPE, BIND(C) :: cop_cb_struct_ ! Struct for iterations
INTEGER :: count
INTEGER(HID_T) :: id
END TYPE cop_cb_struct_
CONTAINS
-
+
INTEGER FUNCTION test_genprop_cls_cb1_f(list_id, create_data ) bind(C)
-
+
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN), VALUE :: list_id
-
+
TYPE(cop_cb_struct_) :: create_data
create_data%count = create_data%count + 1
create_data%id = list_id
test_genprop_cls_cb1_f = 0
-
+
END FUNCTION test_genprop_cls_cb1_f
END MODULE test_genprop_cls_cb1_mod
MODULE TH5P_F03
- USE HDF5
- USE TH5_MISC
+ USE HDF5
+ USE TH5_MISC
USE TH5_MISC_GEN
USE ISO_C_BINDING
@@ -89,7 +89,7 @@ CONTAINS
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE test_create(total_error)
@@ -116,9 +116,9 @@ SUBROUTINE test_create(total_error)
!
! * Create a file.
- !
+ !
CALL h5fcreate_f(filename,H5F_ACC_TRUNC_F,file,error)
- CALL check("h5fcreate_f", error, total_error)
+ CALL check("h5fcreate_f", error, total_error)
CALL h5screate_simple_f(5, cur_size, space, error, cur_size)
CALL check("h5screate_simple_f", error, total_error)
@@ -129,7 +129,7 @@ SUBROUTINE test_create(total_error)
CALL h5pset_chunk_f(dcpl, 5, ch_size, error)
CALL check("h5pset_chunk_f",error, total_error)
- ! Create a compound datatype
+ ! Create a compound datatype
CALL h5tcreate_f(H5T_COMPOUND_F, H5_SIZEOF(fill_ctype), comp_type_id, error)
CALL check("h5tcreate_f", error, total_error)
h5off = H5OFFSETOF(C_LOC(fill_ctype), C_LOC(fill_ctype%a))
@@ -150,7 +150,7 @@ SUBROUTINE test_create(total_error)
CALL H5Pset_fill_time_f(dcpl, H5D_FILL_TIME_ALLOC_F, error)
CALL check("H5Pset_fill_time_f",error, total_error)
- ! Compound datatype test
+ ! Compound datatype test
f_ptr = C_LOC(fill_ctype)
@@ -205,7 +205,7 @@ SUBROUTINE test_create(total_error)
CALL h5fclose_f(file,error)
CALL check("h5fclose_f", error, total_error)
- ! Open the file and get the dataset fill value from each dataset
+ ! Open the file and get the dataset fill value from each dataset
CALL h5pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL check("h5pcreate_f",error, total_error)
@@ -245,7 +245,7 @@ SUBROUTINE test_create(total_error)
CALL h5fopen_f (FILENAME, H5F_ACC_RDONLY_F, file, error, fapl)
CALL check("h5fopen_f", error, total_error)
- ! Compound datatype test
+ ! Compound datatype test
CALL h5dopen_f(file, "dset9", dset9, error)
CALL check("h5dopen_f", error, total_error)
@@ -299,9 +299,9 @@ SUBROUTINE test_genprop_class_callback(total_error)
INTEGER, INTENT(INOUT) :: total_error
- INTEGER(hid_t) :: cid1, cid2 ! Generic Property class ID
- INTEGER(hid_t) :: lid1, lid2 ! Generic Property list ID
- INTEGER(size_t) :: nprops ! Number of properties in class
+ INTEGER(hid_t) :: cid1, cid2 ! Generic Property class ID
+ INTEGER(hid_t) :: lid1, lid2 ! Generic Property list ID
+ INTEGER(size_t) :: nprops ! Number of properties in class
TYPE(cop_cb_struct_), TARGET :: crt_cb_struct, cls_cb_struct
INTEGER :: CLASS1_NAME_SIZE = 7 ! length of class string
@@ -322,7 +322,7 @@ SUBROUTINE test_genprop_class_callback(total_error)
INTEGER :: PROP3_DEF_VALUE = 10
INTEGER :: PROP4_DEF_VALUE = 10
- INTEGER :: error ! Generic RETURN value
+ INTEGER :: error ! Generic RETURN value
LOGICAL :: flag ! for tests
f1 = C_FUNLOC(test_genprop_cls_cb1_f)
@@ -331,45 +331,45 @@ SUBROUTINE test_genprop_class_callback(total_error)
f2 = C_LOC(crt_cb_struct)
f6 = C_LOC(cls_cb_struct)
- ! Create a new generic class, derived from the root of the class hierarchy
+ ! Create a new generic class, derived from the root of the class hierarchy
CALL h5pcreate_class_f(h5p_ROOT_F, CLASS1_NAME, cid1, error, f1, f2, c_null_funptr, c_null_ptr, f5, f6)
CALL check("h5pcreate_class_f", error, total_error)
- ! Insert first property into class (with no callbacks)
+ ! Insert first property into class (with no callbacks)
CALL h5pregister_f(cid1, PROP1_NAME, PROP1_SIZE, PROP1_DEF_VALUE, error)
CALL check("h5pregister_f", error, total_error)
- ! Insert second property into class (with no callbacks)
+ ! Insert second property into class (with no callbacks)
CALL h5pregister_f(cid1, PROP2_NAME, PROP2_SIZE, PROP2_DEF_VALUE, error)
CALL check("h5pregister_f", error, total_error)
- ! Insert third property into class (with no callbacks)
+ ! Insert third property into class (with no callbacks)
CALL h5pregister_f(cid1, PROP3_NAME, PROP3_SIZE, PROP3_DEF_VALUE, error)
CALL check("h5pregister_f", error, total_error)
- ! Insert fourth property into class (with no callbacks)
+ ! Insert fourth property into class (with no callbacks)
CALL h5pregister_f(cid1, PROP4_NAME, PROP4_SIZE, PROP4_DEF_VALUE, error)
CALL check("h5pregister_f", error, total_error)
- ! Check the number of properties in class
+ ! Check the number of properties in class
CALL h5pget_nprops_f(cid1, nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
- ! Initialize class callback structs
+ ! Initialize class callback structs
crt_cb_struct%count = 0
crt_cb_struct%id = -1
cls_cb_struct%count = 0
cls_cb_struct%id = -1
- ! Create a property list from the class
+ ! Create a property list from the class
CALL h5pcreate_f(cid1, lid1, error)
CALL check("h5pcreate_f", error, total_error)
- ! Get the list's class
+ ! Get the list's class
CALL H5Pget_class_f(lid1, cid2, error)
CALL check("H5Pget_class_f", error, total_error)
- ! Check that the list's class is correct
+ ! Check that the list's class is correct
CALL H5Pequal_f(cid2, cid1, flag, error)
CALL check("H5Pequal_f", error, total_error)
CALL verify("H5Pequal_f", flag, .TRUE., total_error)
@@ -382,41 +382,41 @@ SUBROUTINE test_genprop_class_callback(total_error)
WRITE(*,*) 'Class names do not match! name=',CLASS1_NAME_BUF, 'CLASS1_NAME=',CLASS1_NAME
total_error = total_error + 1
ENDIF
- ! Close class
+ ! Close class
CALL h5pclose_class_f(cid2, error)
CALL check("h5pclose_class_f", error, total_error)
- ! Verify that the creation callback occurred
+ ! Verify that the creation callback occurred
CALL verify("h5pcreate_f", crt_cb_struct%count, 1, total_error)
CALL verify("h5pcreate_f", crt_cb_struct%id, lid1, total_error)
- ! Check the number of properties in list
+ ! Check the number of properties in list
CALL h5pget_nprops_f(lid1,nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
- ! Create another property list from the class
+ ! Create another property list from the class
CALL h5pcreate_f(cid1, lid2, error)
CALL check("h5pcreate_f", error, total_error)
- ! Verify that the creation callback occurred
+ ! Verify that the creation callback occurred
CALL verify("h5pcreate_f", crt_cb_struct%count, 2, total_error)
CALL verify("h5pcreate_f", crt_cb_struct%id, lid2, total_error)
- ! Check the number of properties in list
+ ! Check the number of properties in list
CALL h5pget_nprops_f(lid2,nprops, error)
CALL check("h5pget_nprops_f", error, total_error)
CALL verify("h5pget_nprops_f", INT(nprops), 4, total_error)
- ! Close first list
+ ! Close first list
CALL h5pclose_f(lid1, error);
CALL check("h5pclose_f", error, total_error)
- ! Verify that the close callback occurred
+ ! Verify that the close callback occurred
CALL verify("h5pcreate_f", cls_cb_struct%count, 1, total_error)
CALL verify("h5pcreate_f", cls_cb_struct%id, lid1, total_error)
- ! Close second list
+ ! Close second list
CALL h5pclose_f(lid2, error);
CALL check("h5pclose_f", error, total_error)
@@ -424,7 +424,7 @@ SUBROUTINE test_genprop_class_callback(total_error)
CALL verify("h5pcreate_f", cls_cb_struct%count, 2, total_error)
CALL verify("h5pcreate_f", cls_cb_struct%id, lid2, total_error)
- ! Close class
+ ! Close class
CALL h5pclose_class_f(cid1, error)
CALL check("h5pclose_class_f", error, total_error)
@@ -452,7 +452,7 @@ SUBROUTINE test_h5p_file_image(total_error)
INTEGER, PARAMETER :: count = 10
INTEGER, DIMENSION(1:count), TARGET :: buffer
INTEGER, DIMENSION(1:count), TARGET :: temp
- INTEGER :: i
+ INTEGER :: i
INTEGER(size_t) :: size
INTEGER(size_t) :: temp_size
INTEGER :: error ! error return value
@@ -482,7 +482,7 @@ SUBROUTINE test_h5p_file_image(total_error)
CALL h5pset_file_image_f(fapl_1, f_ptr, size, error)
CALL check("h5pset_file_image_f", error, total_error)
-
+
! Get the same data back
DO i = 1, count
f_ptr1(i) = C_LOC(temp(i))
@@ -494,7 +494,7 @@ SUBROUTINE test_h5p_file_image(total_error)
! Check that sizes are the same, and that the buffers are identical but separate
CALL verify("h5pget_file_image_f", INT(temp_size), INT(size), total_error)
-
+
! Verify the image data is correct
DO i = 1, count
CALL verify("h5pget_file_image_f", temp(i), buffer(i), total_error)
@@ -522,18 +522,18 @@ SUBROUTINE external_test_offset(cleanup,total_error)
LOGICAL, INTENT(IN) :: cleanup
INTEGER(hid_t) :: fapl=-1 ! file access property list
- INTEGER(hid_t) :: file=-1 ! file to write to
- INTEGER(hid_t) :: dcpl=-1 ! dataset creation properties
- INTEGER(hid_t) :: space=-1 ! data space
- INTEGER(hid_t) :: dset=-1 ! dataset
+ INTEGER(hid_t) :: file=-1 ! file to write to
+ INTEGER(hid_t) :: dcpl=-1 ! dataset creation properties
+ INTEGER(hid_t) :: space=-1 ! data space
+ INTEGER(hid_t) :: dset=-1 ! dataset
INTEGER(hid_t) :: grp=-1 ! group to emit diagnostics
- INTEGER(size_t) :: i, j ! miscellaneous counters
+ INTEGER(size_t) :: i, j ! miscellaneous counters
CHARACTER(LEN=180) :: filename ! file names
INTEGER, DIMENSION(1:25) :: part
- INTEGER, DIMENSION(1:100), TARGET :: whole ! raw data buffers
- INTEGER(hsize_t), DIMENSION(1:1) :: cur_size ! current data space size
- INTEGER(hid_t) :: hs_space ! hyperslab data space
- INTEGER(hsize_t), DIMENSION(1:1) :: hs_start = (/30/) ! hyperslab starting offset
+ INTEGER, DIMENSION(1:100), TARGET :: whole ! raw data buffers
+ INTEGER(hsize_t), DIMENSION(1:1) :: cur_size ! current data space size
+ INTEGER(hid_t) :: hs_space ! hyperslab data space
+ INTEGER(hsize_t), DIMENSION(1:1) :: hs_start = (/30/) ! hyperslab starting offset
INTEGER(hsize_t), DIMENSION(1:1) :: hs_count = (/25/) ! hyperslab size
CHARACTER(LEN=1) :: ichr1 ! character conversion holder
INTEGER :: error ! error status
@@ -552,23 +552,23 @@ SUBROUTINE external_test_offset(cleanup,total_error)
WRITE(ichr1,'(I1.1)') i
filename = "extern_"//ichr1//"a.raw"
OPEN(10, FILE=filename, ACCESS='STREAM', form='UNFORMATTED')
-
+
WRITE(10) temparray(1:(i-1)*10)
WRITE(10) part
CLOSE(10)
ENDDO
!
- ! Create the file and an initial group.
+ ! Create the file and an initial group.
CALL h5pcreate_f(H5P_FILE_ACCESS_F, fapl, error)
CALL h5fcreate_f('extren_raw.h5', H5F_ACC_TRUNC_F, file, error, access_prp=fapl)
CALL check("h5fcreate_f",error,total_error)
-
+
CALL h5gcreate_f(file, "emit-diagnostics", grp, error)
CALL check("h5gcreate_f",error, total_error)
-
+
! Create the dataset
- sizeof_part = INT(H5_SIZEOF(part(1))*25, hsize_t)
+ sizeof_part = INT(H5_SIZEOF(part(1))*25, hsize_t)
CALL h5pcreate_f(H5P_DATASET_CREATE_F, dcpl, error)
CALL check("h5pcreate_f", error, total_error)
@@ -580,7 +580,7 @@ SUBROUTINE external_test_offset(cleanup,total_error)
CALL check("h5pset_external_f",error,total_error)
CALL h5pset_external_f(dcpl, "extern_4a.raw", INT(30,off_t), sizeof_part, error)
CALL check("h5pset_external_f",error,total_error)
-
+
cur_size(1) = 100
CALL h5screate_simple_f(1, cur_size, space, error)
CALL check("h5screate_simple_f", error, total_error)
@@ -622,7 +622,7 @@ SUBROUTINE external_test_offset(cleanup,total_error)
EXIT
ENDIF
ENDDO
-
+
CALL h5dclose_f(dset, error)
CALL check("h5dclose_f", error, total_error)
CALL h5pclose_f(dcpl, error)
@@ -671,12 +671,12 @@ SUBROUTINE test_vds(total_error)
CHARACTER(LEN=3), PARAMETER :: DATASET="VDS"
INTEGER(hsize_t) :: VDSDIM0
INTEGER(hsize_t), PARAMETER :: VDSDIM1 = 10
- INTEGER(hsize_t), PARAMETER :: VDSDIM2 = 15
+ INTEGER(hsize_t), PARAMETER :: VDSDIM2 = 15
INTEGER(hsize_t) :: DIM0
INTEGER, PARAMETER :: DIM0_1= 4 ! Initial size of the source datasets
- INTEGER, PARAMETER :: DIM1 = 10
- INTEGER, PARAMETER :: DIM2 = 15
+ INTEGER, PARAMETER :: DIM1 = 10
+ INTEGER, PARAMETER :: DIM2 = 15
INTEGER, PARAMETER :: RANK = 3
INTEGER(hsize_t), PARAMETER :: PLANE_STRIDE = 4
@@ -702,15 +702,15 @@ SUBROUTINE test_vds(total_error)
src_count, block
INTEGER(hsize_t), DIMENSION(1:2,1:3) :: vdsdims_out_correct
- INTEGER(hsize_t), DIMENSION(1:3) :: start_out, & !Hyperslab PARAMETER out
+ INTEGER(hsize_t), DIMENSION(1:3) :: start_out, & !Hyperslab PARAMETER out
stride_out, count_out, block_out
INTEGER(hsize_t), DIMENSION(1:3,1:PLANE_STRIDE) :: start_correct
INTEGER :: i, j
- INTEGER(size_t) :: i_sz
+ INTEGER(size_t) :: i_sz
INTEGER :: layout ! Storage layout
- INTEGER(size_t) :: num_map ! Number of mappings
- INTEGER(size_t) :: len ! Length of the string also a RETURN value
+ INTEGER(size_t) :: num_map ! Number of mappings
+ INTEGER(size_t) :: len ! Length of the string also a RETURN value
! Different sized character buffers
CHARACTER(len=LEN(SRC_FILE(1))-3) :: SRC_FILE_LEN_TINY
CHARACTER(len=LEN(SRC_FILE(1))-1) :: SRC_FILE_LEN_SMALL
@@ -719,7 +719,7 @@ SUBROUTINE test_vds(total_error)
CHARACTER(len=LEN(SRC_FILE(1))+10) :: SRC_FILE_LEN_HUGE
CHARACTER(len=LEN(SRC_DATASET(1))) :: SRC_DATASET_LEN_EXACT
- INTEGER(HID_T) :: space_out
+ INTEGER(HID_T) :: space_out
INTEGER :: s_type, virtual_view
INTEGER :: type1, type2
@@ -728,13 +728,13 @@ SUBROUTINE test_vds(total_error)
TYPE(C_PTR) :: f_ptr
INTEGER(SIZE_T) :: nsize
LOGICAL :: IsRegular
- INTEGER(HSIZE_T) :: gap_size
+ INTEGER(HSIZE_T) :: gap_size
! For testing against
vdsdims_out_correct(1,1) = DIM0_1*5
vdsdims_out_correct(2,1) = DIM0_1*8
- vdsdims_out_correct(1:2,2) = VDSDIM1
- vdsdims_out_correct(1:2,3) = VDSDIM2
+ vdsdims_out_correct(1:2,2) = VDSDIM1
+ vdsdims_out_correct(1:2,3) = VDSDIM2
VDSDIM0 = H5S_UNLIMITED_F
DIM0 = H5S_UNLIMITED_F
@@ -742,7 +742,7 @@ SUBROUTINE test_vds(total_error)
dims_max = (/INT(DIM0,hsize_t), INT(DIM1,hsize_t), INT(DIM2,hsize_t)/)
!
- ! Create source files and datasets.
+ ! Create source files and datasets.
!
DO i = 1, PLANE_STRIDE
!
@@ -751,7 +751,7 @@ SUBROUTINE test_vds(total_error)
wdata(j) = i
ENDDO
!
- ! Create the source files and datasets. Write data to each dataset and
+ ! Create the source files and datasets. Write data to each dataset and
! close all resources.
CALL h5fcreate_f(SRC_FILE(i), H5F_ACC_TRUNC_F, file, error)
CALL check("h5fcreate_f", error, total_error)
@@ -762,7 +762,7 @@ SUBROUTINE test_vds(total_error)
CALL check("h5pcreate_f", error, total_error)
CALL h5pset_chunk_f(dcpl, RANK, chunk_dims, error)
CALL check("h5pset_chunk_f",error, total_error)
-
+
CALL h5dcreate_f(file, SRC_DATASET(i), H5T_NATIVE_INTEGER, src_space, dset, error, dcpl, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("h5dcreate_f",error, total_error)
f_ptr = C_LOC(wdata(1))
@@ -788,20 +788,20 @@ SUBROUTINE test_vds(total_error)
! Create dataspaces for the source dataset.
CALL H5Screate_simple_f(RANK, dims, src_space, error, dims_max)
CALL check("H5Screate_simple_f", error, total_error)
-
+
! Create VDS creation property
CALL H5Pcreate_f (H5P_DATASET_CREATE_F, dcpl, error)
CALL check("H5Pcreate_f", error, total_error)
-
- ! Initialize hyperslab values
+
+ ! Initialize hyperslab values
start(1:3) = 0
- stride(1:3) = (/PLANE_STRIDE,1_hsize_t,1_hsize_t/) ! we will select every fifth plane in VDS
+ stride(1:3) = (/PLANE_STRIDE,1_hsize_t,1_hsize_t/) ! we will select every fifth plane in VDS
count(1:3) = (/H5S_UNLIMITED_F,1_hsize_t,1_hsize_t/)
src_count(1:3) = (/H5S_UNLIMITED_F,1_hsize_t,1_hsize_t/)
block(1:3) = (/1, DIM1, DIM2/)
-
- !
- ! Build the mappings
+
+ !
+ ! Build the mappings
!
start_correct = 0
CALL H5Sselect_hyperslab_f(src_space, H5S_SELECT_SET_F, start, src_count, error, block=block)
@@ -820,10 +820,10 @@ SUBROUTINE test_vds(total_error)
start(1) = start(1) + 1
ENDDO
- CALL H5Sselect_none_f(vspace, error)
+ CALL H5Sselect_none_f(vspace, error)
CALL check("H5Sselect_none_f", error, total_error)
- ! Create a virtual dataset
+ ! Create a virtual dataset
CALL H5Dcreate_f(vfile, DATASET, H5T_NATIVE_INTEGER, vspace, vdset, error, dcpl, H5P_DEFAULT_F, H5P_DEFAULT_F)
CALL check("H5Dcreate_f", error, total_error)
CALL H5Sclose_f(vspace, error)
@@ -833,9 +833,9 @@ SUBROUTINE test_vds(total_error)
CALL H5Pclose_f(dcpl, error)
CALL check("H5Pclose_f", error, total_error)
- ! Let's add data to the source datasets and check new dimensions for VDS
+ ! Let's add data to the source datasets and check new dimensions for VDS
! We will add only one plane to the first source dataset, two planes to the
- ! second one, three to the third, and four to the forth.
+ ! second one, three to the third, and four to the forth.
DO i = 1, PLANE_STRIDE
!
@@ -845,15 +845,15 @@ SUBROUTINE test_vds(total_error)
ENDDO
!
- ! Open the source files and datasets. Append data to each dataset and
+ ! Open the source files and datasets. Append data to each dataset and
! close all resources.
CALL H5Fopen_f (SRC_FILE(i), H5F_ACC_RDWR_F, file, error)
CALL check("H5Fopen_f", error, total_error)
CALL H5Dopen_f (file, SRC_DATASET(i), dset, error)
CALL check("H5Dopen_f", error, total_error)
extdims(1) = DIM0_1+i
- CALL H5Dset_extent_f(dset, extdims, error)
- CALL check("H5Dset_extent_f", error, total_error)
+ CALL H5Dset_extent_f(dset, extdims, error)
+ CALL check("H5Dset_extent_f", error, total_error)
CALL H5Dget_space_f(dset, src_space, error)
CALL check("H5Dget_space_f", error, total_error)
@@ -863,13 +863,13 @@ SUBROUTINE test_vds(total_error)
memdims(1) = i
- CALL H5Screate_simple_f(RANK, memdims, mem_space, error)
+ CALL H5Screate_simple_f(RANK, memdims, mem_space, error)
CALL check("H5Screate_simple_f", error, total_error)
- CALL H5Sselect_hyperslab_f(src_space, H5S_SELECT_SET_F, start,count, error,block=block)
+ CALL H5Sselect_hyperslab_f(src_space, H5S_SELECT_SET_F, start,count, error,block=block)
CALL check("H5Sselect_hyperslab_f", error, total_error)
f_ptr = C_LOC(wdata(1))
- CALL H5Dwrite_f(dset, H5T_NATIVE_INTEGER, f_ptr, error, mem_space, src_space, H5P_DEFAULT_F)
+ CALL H5Dwrite_f(dset, H5T_NATIVE_INTEGER, f_ptr, error, mem_space, src_space, H5P_DEFAULT_F)
CALL check("H5Dwrite_f", error, total_error)
CALL H5Sclose_f(src_space, error)
CALL check("H5Sclose_f", error, total_error)
@@ -881,38 +881,38 @@ SUBROUTINE test_vds(total_error)
call H5Dclose_f(vdset, error)
CALL check("H5Dclose_f", error, total_error)
- call H5Fclose_f(vfile, error)
+ call H5Fclose_f(vfile, error)
CALL check("H5Fclose_f", error, total_error)
-
+
!
! begin the read section
!
! Open file and dataset using the default properties.
CALL H5Fopen_f(VFILENAME, H5F_ACC_RDONLY_F, vfile, error)
- CALL check("H5Fopen_f", error, total_error)
-
- !
+ CALL check("H5Fopen_f", error, total_error)
+
+ !
! Open VDS using different access properties to use max or
! min extents depending on the sizes of the underlying datasets
CALL H5Pcreate_f(H5P_DATASET_ACCESS_F, dapl, error)
- CALL check("H5Pcreate_f", error, total_error)
+ CALL check("H5Pcreate_f", error, total_error)
DO i = 1, 2
IF(i.NE.1)THEN
CALL H5Pset_virtual_view_f(dapl, H5D_VDS_LAST_AVAILABLE_F, error)
- CALL check("H5Pset_virtual_view_f", error, total_error)
+ CALL check("H5Pset_virtual_view_f", error, total_error)
ELSE
CALL H5Pset_virtual_view_f(dapl, H5D_VDS_FIRST_MISSING_F, error)
- CALL check("H5Pset_virtual_view_f", error, total_error)
+ CALL check("H5Pset_virtual_view_f", error, total_error)
ENDIF
-
+
CALL H5Dopen_f(vfile, DATASET, vdset, error, dapl)
- CALL check("H5Dopen_f", error, total_error)
+ CALL check("H5Dopen_f", error, total_error)
! Let's get space of the VDS and its dimension we should get 32(or 20)x10x10
CALL H5Dget_space_f(vdset, vspace, error)
- CALL check("H5Dget_space_f", error, total_error)
+ CALL check("H5Dget_space_f", error, total_error)
CALL H5Sget_simple_extent_dims_f(vspace, vdsdims_out, vdsdims_max_out, error)
CALL check("H5Sget_simple_extent_dims_f", error, total_error)
@@ -920,12 +920,12 @@ SUBROUTINE test_vds(total_error)
DO j = 1, RANK
IF(vdsdims_out(j).NE.vdsdims_out_correct(i,j))THEN
total_error = total_error + 1
- EXIT
+ EXIT
ENDIF
ENDDO
CALL H5Pget_virtual_view_f(dapl, virtual_view, error)
- CALL check("h5pget_virtual_view_f", error, total_error)
+ CALL check("h5pget_virtual_view_f", error, total_error)
IF(i.EQ.1)THEN
IF(virtual_view .NE. H5D_VDS_FIRST_MISSING_F)THEN
@@ -935,10 +935,10 @@ SUBROUTINE test_vds(total_error)
IF(virtual_view .NE. H5D_VDS_LAST_AVAILABLE_F)THEN
total_error = total_error + 1
ENDIF
-
+
ENDIF
- ! Close
+ ! Close
CALL H5Dclose_f(vdset, error)
CALL check("H5Dclose_f", error, total_error)
CALL H5Sclose_f(vspace, error)
@@ -950,7 +950,7 @@ SUBROUTINE test_vds(total_error)
!
! Get creation property list and mapping properties.
- !
+ !
CALL H5Dget_create_plist_f (vdset, dcpl, error)
CALL check("H5Dget_create_plist_f", error, total_error)
@@ -966,7 +966,7 @@ SUBROUTINE test_vds(total_error)
!
! Find number of mappings.
-
+
CALL H5Pget_virtual_count_f(dcpl, num_map, error)
CALL check("H5Pget_virtual_count_f", error, total_error)
@@ -974,7 +974,7 @@ SUBROUTINE test_vds(total_error)
PRINT*,"Number of mappings is incorrect"
total_error = total_error + 1
ENDIF
- !
+ !
! Get mapping parameters for each mapping.
!
DO i_sz = 1, num_map
@@ -1098,7 +1098,7 @@ SUBROUTINE test_vds(total_error)
PRINT*,"gapsize is incorrect"
total_error = total_error + 1
ENDIF
-
+
CALL H5Dclose_f(vdset, error)
CALL check("H5Dclose_f", error, total_error)
CALL H5Sclose_f(vspace, error)
@@ -1107,7 +1107,7 @@ SUBROUTINE test_vds(total_error)
CALL check("H5Pclose_f", error, total_error)
CALL H5Fclose_f(vfile, error)
CALL check("H5Fclose_f", error, total_error)
-
+
END SUBROUTINE test_vds
diff --git a/fortran/test/tH5R.F90 b/fortran/test/tH5R.F90
index f7cccfa..5144d83 100644
--- a/fortran/test/tH5R.F90
+++ b/fortran/test/tH5R.F90
@@ -15,13 +15,13 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! NOTES
-! Tests h5rcreate_f, h5rdereference_f, h5rget_name_f
+! Tests h5rcreate_f, h5rdereference_f, h5rget_name_f
! and H5Rget_object_type functions
!
! CONTAINS SUBROUTINES
@@ -262,20 +262,20 @@ SUBROUTINE refregtest(cleanup, total_error)
INTEGER(HID_T) :: dsetv_id ! Dataset identifier
INTEGER(HID_T) :: dsetr_id ! Dataset identifier
INTEGER :: error
-! TYPE(hdset_reg_ref_t_f) , DIMENSION(1:2), TARGET :: ref
- TYPE(hdset_reg_ref_t_f) , DIMENSION(1:2) :: ref
+! TYPE(hdset_reg_ref_t_f) , DIMENSION(1:2), TARGET :: ref
+ TYPE(hdset_reg_ref_t_f) , DIMENSION(1:2) :: ref
TYPE(hdset_reg_ref_t_f) , DIMENSION(1:2) :: ref_out
INTEGER(HSIZE_T), DIMENSION(2) :: ref_dim = (/0,0/)
INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! = (/0,0/)
INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/2,9/) ! Datasets dimensions
- INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) !
+ INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) !
INTEGER(HSIZE_T), DIMENSION(2) :: start ! = (/0,0/)
INTEGER(HSIZE_T), DIMENSION(2) :: count ! = (/0,0/)
INTEGER :: rankr = 1
INTEGER :: rank = 2
-! INTEGER , DIMENSION(2,9), TARGET :: DATA
- INTEGER , DIMENSION(2,9) :: DATA
+! INTEGER , DIMENSION(2,9), TARGET :: DATA
+ INTEGER , DIMENSION(2,9) :: DATA
INTEGER , DIMENSION(2,9) :: data_out = 0
INTEGER(HSIZE_T) , DIMENSION(2,3) :: coord
INTEGER(SIZE_T) ::num_points = 3 ! Number of selected points
@@ -353,7 +353,7 @@ SUBROUTINE refregtest(cleanup, total_error)
CALL check("h5sselect_hyperslab_f", error, total_error)
ref(1)%ref(:) = 0
! f_ptr = C_LOC(ref(1))
-! CALL h5rcreate_f(file_id, dsetnamev, 1, space_id, f_ptr, error)
+! CALL h5rcreate_f(file_id, dsetnamev, 1, space_id, f_ptr, error)
CALL h5rcreate_f(file_id, dsetnamev, space_id, ref(1), error)
CALL check("h5rcreate_f", error, total_error)
diff --git a/fortran/test/tH5S.F90 b/fortran/test/tH5S.F90
index a4f5f4a..08f0b59 100644
--- a/fortran/test/tH5S.F90
+++ b/fortran/test/tH5S.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -176,14 +176,14 @@ CONTAINS
CALL check("h5sget_simple_extent_type_f", error, total_error)
IF (classtype .NE. 1) write(*,*)"class type not H5S_SIMPLE_f"
- !
+ !
!set the copied space to none before extend the dimensions.
!
CALL h5sset_extent_none_f(space2_id, error)
CALL check("h5sset_extent_none_f", error, total_error)
!
- !set the copied space to dim2 size.
+ !set the copied space to dim2 size.
!
CALL h5sset_extent_simple_f(space2_id, rank2, dims2, maxdims2, error)
CALL check("h5sset_extent_simple_f", error, total_error)
diff --git a/fortran/test/tH5Sselect.F90 b/fortran/test/tH5Sselect.F90
index 8415bce..178ac32 100644
--- a/fortran/test/tH5Sselect.F90
+++ b/fortran/test/tH5Sselect.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -26,12 +26,12 @@
! h5sselect_none_f, h5sselect_valid_f, h5sselect_hyperslab_f,
! h5sget_select_bounds_f, h5sget_select_elem_pointlist_f,
! h5sget_select_elem_npoints_f, h5sget_select_hyper_blocklist_f,
-! h5sget_select_hyper_nblocks_f, h5sget_select_npoints_f
+! h5sget_select_hyper_nblocks_f, h5sget_select_npoints_f
!
! CONTAINS SUBROUTINES
! test_select_hyperslab, test_select_element, test_basic_select,
! test_select_point, test_select_combine, test_select_bounds
-!
+!
!
!*****
MODULE TH5SSELECT
@@ -1033,12 +1033,12 @@ CONTAINS
!***************************************************************
SUBROUTINE test_select_point(cleanup, total_error)
-
+
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T) :: xfer_plist
-
+
INTEGER, PARAMETER :: SPACE1_DIM1=3
INTEGER, PARAMETER :: SPACE1_DIM2=15
INTEGER, PARAMETER :: SPACE1_DIM3=13
@@ -1046,36 +1046,36 @@ SUBROUTINE test_select_point(cleanup, total_error)
INTEGER, PARAMETER :: SPACE2_DIM2=26
INTEGER, PARAMETER :: SPACE3_DIM1=15
INTEGER, PARAMETER :: SPACE3_DIM2=26
-
+
INTEGER, PARAMETER :: SPACE1_RANK=3
INTEGER, PARAMETER :: SPACE2_RANK=2
INTEGER, PARAMETER :: SPACE3_RANK=2
-
- ! Element selection information
+
+ ! Element selection information
INTEGER, PARAMETER :: POINT1_NPOINTS=10
- INTEGER(hid_t) ::fid1 ! HDF5 File IDs
- INTEGER(hid_t) ::dataset ! Dataset ID
- INTEGER(hid_t) ::sid1,sid2 ! Dataspace ID
+ INTEGER(hid_t) ::fid1 ! HDF5 File IDs
+ INTEGER(hid_t) ::dataset ! Dataset ID
+ INTEGER(hid_t) ::sid1,sid2 ! Dataspace ID
INTEGER(hsize_t), DIMENSION(1:3) :: dims1 = (/SPACE1_DIM1, SPACE1_DIM2, SPACE1_DIM3/)
INTEGER(hsize_t), DIMENSION(1:2) :: dims2 = (/SPACE2_DIM1, SPACE2_DIM2/)
INTEGER(hsize_t), DIMENSION(1:2) :: dims3 = (/SPACE3_DIM1, SPACE3_DIM2/)
-
- INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: coord1 ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: temp_coord1 ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(1:SPACE2_RANK,1:POINT1_NPOINTS) :: coord2 ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(1:SPACE2_RANK,1:POINT1_NPOINTS) :: temp_coord2 ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(1:SPACE3_RANK,1:POINT1_NPOINTS) :: coord3 ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(1:SPACE3_RANK,1:POINT1_NPOINTS) :: temp_coord3 ! Coordinates for point selection
+
+ INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: coord1 ! Coordinates for point selection
+ INTEGER(hsize_t), DIMENSION(1:SPACE1_RANK,1:POINT1_NPOINTS) :: temp_coord1 ! Coordinates for point selection
+ INTEGER(hsize_t), DIMENSION(1:SPACE2_RANK,1:POINT1_NPOINTS) :: coord2 ! Coordinates for point selection
+ INTEGER(hsize_t), DIMENSION(1:SPACE2_RANK,1:POINT1_NPOINTS) :: temp_coord2 ! Coordinates for point selection
+ INTEGER(hsize_t), DIMENSION(1:SPACE3_RANK,1:POINT1_NPOINTS) :: coord3 ! Coordinates for point selection
+ INTEGER(hsize_t), DIMENSION(1:SPACE3_RANK,1:POINT1_NPOINTS) :: temp_coord3 ! Coordinates for point selection
INTEGER(hssize_t) :: npoints
-!!$ uint8_t *wbuf, buffer to write to disk
-!!$ *rbuf, buffer read from disk
-!!$ *tbuf; temporary buffer pointer
- INTEGER :: i,j; ! Counters
-! struct pnt_iter pi; Custom Pointer iterator struct
- INTEGER :: error ! Generic return value
+!!$ uint8_t *wbuf, buffer to write to disk
+!!$ *rbuf, buffer read from disk
+!!$ *tbuf; temporary buffer pointer
+ INTEGER :: i,j; ! Counters
+! struct pnt_iter pi; Custom Pointer iterator struct
+ INTEGER :: error ! Generic return value
CHARACTER(LEN=9) :: filename = 'h5s_hyper'
- CHARACTER(LEN=80) :: fix_filename
+ CHARACTER(LEN=80) :: fix_filename
CHARACTER(LEN=1), DIMENSION(1:SPACE2_DIM1,1:SPACE2_DIM2) :: wbuf
CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
@@ -1086,11 +1086,11 @@ SUBROUTINE test_select_point(cleanup, total_error)
xfer_plist = H5P_DEFAULT_F
! MESSAGE(5, ("Testing Element Selection Functions\n"));
- ! Allocate write & read buffers
+ ! Allocate write & read buffers
!!$ wbuf = HDmalloc(sizeof(uint8_t) * SPACE2_DIM1 * SPACE2_DIM2);
!!$ rbuf = HDcalloc(sizeof(uint8_t), (size_t)(SPACE3_DIM1 * SPACE3_DIM2));
!!$
- ! Initialize WRITE buffer
+ ! Initialize WRITE buffer
DO i = 1, SPACE2_DIM1
DO j = 1, SPACE2_DIM2
@@ -1101,20 +1101,20 @@ SUBROUTINE test_select_point(cleanup, total_error)
!!$ for(i=0, tbuf=wbuf; i<SPACE2_DIM1; i++)
!!$ for(j=0; j<SPACE2_DIM2; j++)
!!$ *tbuf++=(uint8_t)((i*SPACE2_DIM2)+j);
-
- ! Create file
+
+ ! Create file
CALL h5fcreate_f(fix_filename, H5F_ACC_TRUNC_F, fid1, error)
CALL check("h5fcreate_f", error, total_error)
-
- ! Create dataspace for dataset
+
+ ! Create dataspace for dataset
CALL h5screate_simple_f(SPACE1_RANK, dims1, sid1, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Create dataspace for write buffer
+ ! Create dataspace for write buffer
CALL h5screate_simple_f(SPACE2_RANK, dims2, sid2, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Select sequence of ten points for disk dataset
+ ! Select sequence of ten points for disk dataset
coord1(1,1)=1; coord1(2,1)=11; coord1(3,1)= 6;
coord1(1,2)=2; coord1(2,2)= 3; coord1(3,2)= 8;
coord1(1,3)=3; coord1(2,3)= 5; coord1(3,3)=10;
@@ -1129,7 +1129,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sselect_elements_f(sid1, H5S_SELECT_SET_F, SPACE1_RANK, INT(POINT1_NPOINTS,size_t), coord1, error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
+ ! Verify correct elements selected
CALL h5sget_select_elem_pointlist_f(sid1, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord1,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
@@ -1144,7 +1144,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_npoints_f", error, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 10, total_error)
- ! Append another sequence of ten points to disk dataset
+ ! Append another sequence of ten points to disk dataset
coord1(1,1)=1; coord1(2,1)=3; coord1(3,1)= 1;
coord1(1,2)=2; coord1(2,2)=11; coord1(3,2)= 9;
@@ -1160,8 +1160,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sselect_elements_f(sid1, H5S_SELECT_APPEND_F, SPACE1_RANK, INT(POINT1_NPOINTS,size_t), coord1, error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
-
+ ! Verify correct elements selected
+
CALL h5sget_select_elem_pointlist_f(sid1, INT(POINT1_NPOINTS,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord1,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
@@ -1175,7 +1175,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_npoints_f", error, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 20, total_error)
- ! Select sequence of ten points for memory dataset
+ ! Select sequence of ten points for memory dataset
coord2(1,1)=13; coord2(2,1)= 4;
coord2(1,2)=16; coord2(2,2)=14;
coord2(1,3)= 8; coord2(2,3)=26;
@@ -1191,8 +1191,8 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
-
+ ! Verify correct elements selected
+
CALL h5sget_select_elem_pointlist_f(sid2, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord2,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
@@ -1202,9 +1202,9 @@ SUBROUTINE test_select_point(cleanup, total_error)
ENDDO
!!$
-!!$ Save points for later iteration
-!!$ (these are in the second half of the buffer, because we are prepending
-!!$ the next list of points to the beginning of the point selection list)
+!!$ Save points for later iteration
+!!$ (these are in the second half of the buffer, because we are prepending
+!!$ the next list of points to the beginning of the point selection list)
!!$ HDmemcpy(((char *)pi.coord)+sizeof(coord2),coord2,sizeof(coord2));
!!$
@@ -1212,7 +1212,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_npoints_f", error, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 10, total_error)
- ! Append another sequence of ten points to memory dataset
+ ! Append another sequence of ten points to memory dataset
coord2(1,1)=25; coord2(2,1)= 1;
coord2(1,2)= 3; coord2(2,2)=26;
coord2(1,3)=14; coord2(2,3)=18;
@@ -1228,7 +1228,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
+ ! Verify correct elements selected
CALL h5sget_select_elem_pointlist_f(sid2, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord2,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
@@ -1241,26 +1241,26 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_npoints_f", error, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 20, total_error)
-!!$ Save points for later iteration
+!!$ Save points for later iteration
!!$ HDmemcpy(pi.coord,coord2,sizeof(coord2));
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid1, "Dataset1", H5T_NATIVE_CHARACTER, sid1, dataset, error)
CALL check("h5dcreate_f", error, total_error)
- ! Write selection to disk
+ ! Write selection to disk
CALL h5dwrite_f(dataset, H5T_NATIVE_CHARACTER, wbuf, dims2, error, sid2, sid1, xfer_plist)
CALL check("h5dwrite_f", error, total_error)
- ! Close memory dataspace
+ ! Close memory dataspace
CALL h5sclose_f(sid2, error)
CALL check("h5sclose_f", error, total_error)
- ! Create dataspace for reading buffer
+ ! Create dataspace for reading buffer
CALL h5screate_simple_f(SPACE3_RANK, dims3, sid2, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Select sequence of points for read dataset
+ ! Select sequence of points for read dataset
coord3(1,1)= 1; coord3(2,1)= 3;
coord3(1,2)= 5; coord3(2,2)= 9;
coord3(1,3)=14; coord3(2,3)=14;
@@ -1275,7 +1275,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sselect_elements_f(sid2, H5S_SELECT_SET_F, SPACE3_RANK, INT(POINT1_NPOINTS,size_t), coord3, error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
+ ! Verify correct elements selected
CALL h5sget_select_elem_pointlist_f(sid2, INT(0,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord3,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
@@ -1287,7 +1287,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL check("h5sget_select_npoints_f", error, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 10, total_error)
- ! Append another sequence of ten points to disk dataset
+ ! Append another sequence of ten points to disk dataset
coord3(1,1)=15; coord3(2,1)=26;
coord3(1,2)= 1; coord3(2,2)= 1;
coord3(1,3)=12; coord3(2,3)=12;
@@ -1302,7 +1302,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL h5sselect_elements_f(sid2, H5S_SELECT_APPEND_F, SPACE3_RANK, INT(POINT1_NPOINTS,size_t), coord3, error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Verify correct elements selected
+ ! Verify correct elements selected
CALL h5sget_select_elem_pointlist_f(sid2, INT(POINT1_NPOINTS,hsize_t), INT(POINT1_NPOINTS,hsize_t),temp_coord3,error)
CALL check("h5sget_select_elem_pointlist_f", error, total_error)
DO i= 1, POINT1_NPOINTS
@@ -1315,11 +1315,11 @@ SUBROUTINE test_select_point(cleanup, total_error)
CALL verify("h5sget_select_npoints_f", INT(npoints), 20, total_error)
! F2003 feature
-!!$ Read selection from disk
+!!$ Read selection from disk
!!$ ret=H5Dread(dataset,H5T_NATIVE_UCHAR,sid2,sid1,xfer_plist,rbuf);
!!$ CHECK(ret, FAIL, "H5Dread");
!!$
-!!$ Check that the values match with a dataset iterator
+!!$ Check that the values match with a dataset iterator
!!$ pi.buf=wbuf;
!!$ pi.offset=0;
!!$ ret = H5Diterate(rbuf,H5T_NATIVE_UCHAR,sid2,test_select_point_iter1,&pi);
@@ -1327,19 +1327,19 @@ SUBROUTINE test_select_point(cleanup, total_error)
!!$
! F2003 feature
- ! Close memory dataspace
+ ! Close memory dataspace
CALL h5sclose_f(sid2, error)
CALL check("h5sclose_f", error, total_error)
- ! Close disk dataspace
+ ! Close disk dataspace
CALL h5sclose_f(sid1, error)
CALL check("h5sclose_f", error, total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1, error)
CALL check("h5fclose_f", error, total_error)
@@ -1358,34 +1358,34 @@ END SUBROUTINE test_select_point
!***************************************************************
SUBROUTINE test_select_combine(total_error)
-
+
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER, PARAMETER :: SPACE7_RANK = 2
INTEGER, PARAMETER :: SPACE7_DIM1 = 10
INTEGER, PARAMETER :: SPACE7_DIM2 = 10
-
- INTEGER(hid_t) :: base_id ! Base dataspace for test
- INTEGER(hid_t) :: all_id ! Dataspace for "all" selection
- INTEGER(hid_t) :: none_id ! Dataspace for "none" selection
- INTEGER(hid_t) :: space1 ! Temporary dataspace #1
- INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: start ! Hyperslab start
- INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: stride ! Hyperslab stride
- INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: icount ! Hyperslab count
- INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: iblock ! Hyperslab BLOCK
- INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: dims = (/SPACE7_DIM1,SPACE7_DIM2/) ! Dimensions of dataspace
- INTEGER :: sel_type ! Selection type
- INTEGER(hssize_t) :: nblocks ! Number of hyperslab blocks
- INTEGER(hsize_t), DIMENSION(1:128,1:2,1:SPACE7_RANK) :: blocks ! List of blocks
+
+ INTEGER(hid_t) :: base_id ! Base dataspace for test
+ INTEGER(hid_t) :: all_id ! Dataspace for "all" selection
+ INTEGER(hid_t) :: none_id ! Dataspace for "none" selection
+ INTEGER(hid_t) :: space1 ! Temporary dataspace #1
+ INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: start ! Hyperslab start
+ INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: stride ! Hyperslab stride
+ INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: icount ! Hyperslab count
+ INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: iblock ! Hyperslab BLOCK
+ INTEGER(hsize_t), DIMENSION(1:SPACE7_RANK) :: dims = (/SPACE7_DIM1,SPACE7_DIM2/) ! Dimensions of dataspace
+ INTEGER :: sel_type ! Selection type
+ INTEGER(hssize_t) :: nblocks ! Number of hyperslab blocks
+ INTEGER(hsize_t), DIMENSION(1:128,1:2,1:SPACE7_RANK) :: blocks ! List of blocks
INTEGER :: error, area
- ! Create dataspace for dataset on disk
+ ! Create dataspace for dataset on disk
CALL h5screate_simple_f(SPACE7_RANK, dims, base_id, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Copy base dataspace and set selection to "all"
- CALL h5scopy_f(base_id, all_id, error)
+ ! Copy base dataspace and set selection to "all"
+ CALL h5scopy_f(base_id, all_id, error)
CALL check("h5scopy_f", error, total_error)
CALL H5Sselect_all_f(all_id, error)
@@ -1395,8 +1395,8 @@ SUBROUTINE test_select_combine(total_error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
- ! Copy base dataspace and set selection to "none"
- CALL h5scopy_f(base_id, none_id, error)
+ ! Copy base dataspace and set selection to "none"
+ CALL h5scopy_f(base_id, none_id, error)
CALL check("h5scopy_f", error, total_error)
CALL H5Sselect_none_f(none_id, error)
@@ -1405,100 +1405,100 @@ SUBROUTINE test_select_combine(total_error)
CALL H5Sget_select_type_f(none_id, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_NONE_F), total_error)
-
- ! Copy "all" selection & space
- CALL H5Scopy_f(all_id, space1, error)
+
+ ! Copy "all" selection & space
+ CALL H5Scopy_f(all_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'OR' "all" selection with another hyperslab
+ ! 'OR' "all" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/)
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_OR_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that it's still "all" selection
+ ! Verify that it's still "all" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT(H5S_SEL_ALL_F), total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "all" selection & space
- CALL H5Scopy_f(all_id, space1, error)
+ ! Copy "all" selection & space
+ CALL H5Scopy_f(all_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'AND' "all" selection with another hyperslab
+ ! 'AND' "all" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/)
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_AND_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the same at the original block
+ ! Verify that the new selection is the same at the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
- ! Verify that there is only one block
+ ! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
-
- ! Retrieve the block defined
+
+ ! Retrieve the block defined
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "all" selection & space
- CALL H5Scopy_f(all_id, space1, error)
+ ! Copy "all" selection & space
+ CALL H5Scopy_f(all_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'XOR' "all" selection with another hyperslab
+ ! 'XOR' "all" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/)
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_XOR_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is an inversion of the original block
+ ! Verify that the new selection is an inversion of the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
- ! Verify that there are two blocks
+ ! Verify that there are two blocks
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
- ! Retrieve the block defined
+ ! Retrieve the block defined
- blocks = -1 ! Reset block list
+ blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
- ! No guarantee is implied as the order in which blocks are listed.
+ ! No guarantee is implied as the order in which blocks are listed.
! So this will ONLY work for square domains iblock(1:2) = (/5,5/)
!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 5, total_error)
@@ -1514,42 +1514,42 @@ SUBROUTINE test_select_combine(total_error)
area = area + (ABS(INT(blocks(5,1,1)-blocks(7,1,1)))+1)*(ABS(INT(blocks(6,1,1)-blocks(8,1,1)))+1)
CALL verify("h5sget_select_hyper_blocklist_f", area, 80, total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "all" selection & space
- CALL H5Scopy_f(all_id, space1, error)
+ ! Copy "all" selection & space
+ CALL H5Scopy_f(all_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'NOTB' "all" selection with another hyperslab
+ ! 'NOTB' "all" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTB_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is an inversion of the original block
+ ! Verify that the new selection is an inversion of the original block
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
- ! Verify that there are two blocks
+ ! Verify that there are two blocks
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 2, total_error)
- ! Retrieve the block defined
- blocks = -1 ! Reset block list
+ ! Retrieve the block defined
+ blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
- ! No guarantee is implied as the order in which blocks are listed.
+ ! No guarantee is implied as the order in which blocks are listed.
! So this will ONLY work for square domains iblock(1:2) = (/5,5/)
!!$ CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
@@ -1567,200 +1567,200 @@ SUBROUTINE test_select_combine(total_error)
CALL verify("h5sget_select_hyper_blocklist_f", area, 80, total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "all" selection & space
- CALL H5Scopy_f(all_id, space1, error)
+ ! Copy "all" selection & space
+ CALL H5Scopy_f(all_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'NOTA' "all" selection with another hyperslab
+ ! 'NOTA' "all" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTA_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the "none" selection
+ ! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "none" selection & space
- CALL H5Scopy_f(none_id, space1, error)
+ ! Copy "none" selection & space
+ CALL H5Scopy_f(none_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'OR' "none" selection with another hyperslab
+ ! 'OR' "none" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_OR_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the same as the original hyperslab
+ ! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
-
- ! Verify that there is only one block
+
+ ! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
- ! Retrieve the block defined
- blocks = -1 ! Reset block list
+ ! Retrieve the block defined
+ blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "none" selection & space
- CALL H5Scopy_f(none_id, space1, error)
+ ! Copy "none" selection & space
+ CALL H5Scopy_f(none_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'AND' "none" selection with another hyperslab
+ ! 'AND' "none" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_AND_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the "none" selection
+ ! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "none" selection & space
- CALL H5Scopy_f(none_id, space1, error)
+ ! Copy "none" selection & space
+ CALL H5Scopy_f(none_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'XOR' "none" selection with another hyperslab
+ ! 'XOR' "none" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_XOR_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the same as the original hyperslab
+ ! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
-
- ! Verify that there is only one block
+
+ ! Verify that there is only one block
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
- ! Retrieve the block defined
- blocks = -1 ! Reset block list
+ ! Retrieve the block defined
+ blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
-
- ! Close temporary dataspace
+
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "none" selection & space
- CALL H5Scopy_f(none_id, space1, error)
+ ! Copy "none" selection & space
+ CALL H5Scopy_f(none_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'NOTB' "none" selection with another hyperslab
+ ! 'NOTB' "none" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTB_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the "none" selection
+ ! Verify that the new selection is the "none" selection
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_NONE_F), total_error)
- ! Close temporary dataspace
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Copy "none" selection & space
- CALL H5Scopy_f(none_id, space1, error)
+ ! Copy "none" selection & space
+ CALL H5Scopy_f(none_id, space1, error)
CALL check("h5scopy_f", error, total_error)
- ! 'NOTA' "none" selection with another hyperslab
+ ! 'NOTA' "none" selection with another hyperslab
start(1:2) = 0
stride(1:2) = 1
icount(1:2) = 1
- iblock(1:2) = (/5,4/) !5
+ iblock(1:2) = (/5,4/) !5
CALL h5sselect_hyperslab_f(space1, H5S_SELECT_NOTA_F, start, &
- icount, error, stride, iblock)
+ icount, error, stride, iblock)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Verify that the new selection is the same as the original hyperslab
+ ! Verify that the new selection is the same as the original hyperslab
CALL H5Sget_select_type_f(space1, sel_type, error)
CALL check("H5Sget_select_type_f", error, total_error)
CALL verify("H5Sget_select_type_f", INT(sel_type), INT( H5S_SEL_HYPERSLABS_F), total_error)
-
- ! Verify that there is ONLY one BLOCK
+
+ ! Verify that there is ONLY one BLOCK
CALL h5sget_select_hyper_nblocks_f(space1, nblocks, error)
CALL check("h5sget_select_hyper_nblocks_f", error, total_error)
CALL verify("h5sget_select_hyper_nblocks_f", INT(nblocks), 1, total_error)
- ! Retrieve the block defined
+ ! Retrieve the block defined
- blocks = -1 ! Reset block list
+ blocks = -1 ! Reset block list
CALL h5sget_select_hyper_blocklist_f(space1, INT(0, hsize_t), INT(nblocks,hsize_t), blocks, error)
CALL check("h5sget_select_hyper_blocklist_f", error, total_error)
- ! Verify that the correct block is defined
+ ! Verify that the correct block is defined
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(1,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(2,1,1)), 1, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(3,1,1)), 5, total_error)
CALL verify("h5sget_select_hyper_blocklist_f", INT(blocks(4,1,1)), 4, total_error)
-
- ! Close temporary dataspace
+
+ ! Close temporary dataspace
CALL h5sclose_f(space1, error)
CALL check("h5sclose_f", error, total_error)
- ! Close dataspaces
-
+ ! Close dataspaces
+
CALL h5sclose_f(base_id, error)
CALL check("h5sclose_f", error, total_error)
CALL h5sclose_f(all_id, error)
@@ -1778,7 +1778,7 @@ END SUBROUTINE test_select_combine
!***************************************************************
SUBROUTINE test_select_bounds(total_error)
-
+
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -1786,25 +1786,25 @@ SUBROUTINE test_select_bounds(total_error)
INTEGER, PARAMETER :: SPACE11_DIM1=100
INTEGER, PARAMETER :: SPACE11_DIM2=50
INTEGER, PARAMETER :: SPACE11_NPOINTS=4
-
- INTEGER(hid_t) :: sid ! Dataspace ID
+
+ INTEGER(hid_t) :: sid ! Dataspace ID
INTEGER(hsize_t), DIMENSION(1:SPACE11_RANK) :: dims = (/SPACE11_DIM1, SPACE11_DIM2/) !Dataspace dimensions
INTEGER(hsize_t), DIMENSION(SPACE11_RANK, SPACE11_NPOINTS) :: coord ! Coordinates for point selection
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: start ! The start of the hyperslab
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: stride ! The stride between block starts for the hyperslab
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: count ! The number of blocks for the hyperslab
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: BLOCK ! The size of each block for the hyperslab
- INTEGER(hssize_t), DIMENSION(SPACE11_RANK) :: offset ! Offset amount for selection
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: low_bounds ! The low bounds for the selection
- INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: high_bounds ! The high bounds for the selection
-
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: start ! The start of the hyperslab
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: stride ! The stride between block starts for the hyperslab
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: count ! The number of blocks for the hyperslab
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: BLOCK ! The size of each block for the hyperslab
+ INTEGER(hssize_t), DIMENSION(SPACE11_RANK) :: offset ! Offset amount for selection
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: low_bounds ! The low bounds for the selection
+ INTEGER(hsize_t), DIMENSION(SPACE11_RANK) :: high_bounds ! The high bounds for the selection
+
INTEGER :: error
- ! Create dataspace
+ ! Create dataspace
CALL h5screate_simple_f(SPACE11_RANK, dims, sid, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Get bounds for 'all' selection
+ ! Get bounds for 'all' selection
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1813,12 +1813,12 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1, hsize_t), total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2, hsize_t), total_error)
- ! Set offset for selection
+ ! Set offset for selection
offset(1:2) = 1
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for 'all' selection with offset (which should be ignored)
+ ! Get bounds for 'all' selection with offset (which should be ignored)
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1827,21 +1827,21 @@ SUBROUTINE test_select_bounds(total_error)
CALL VERIFY("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1, hsize_t), total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2, hsize_t), total_error)
- ! Reset offset for selection
+ ! Reset offset for selection
offset(1:2) = 0
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Set 'none' selection
+ ! Set 'none' selection
CALL H5Sselect_none_f(sid, error)
CALL check("H5Sselect_none_f", error, total_error)
- ! Get bounds for 'none' selection, should fail
+ ! Get bounds for 'none' selection, should fail
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL verify("h5sget_select_bounds_f", error, -1, total_error)
- ! Set point selection
-
+ ! Set point selection
+
coord(1,1)= 3; coord(2,1)= 3;
coord(1,2)= 3; coord(2,2)= 46;
coord(1,3)= 96; coord(2,3)= 3;
@@ -1850,7 +1850,7 @@ SUBROUTINE test_select_bounds(total_error)
CALL h5sselect_elements_f(sid, H5S_SELECT_SET_F, SPACE11_RANK, INT(SPACE11_NPOINTS,size_t), coord, error)
CALL check("h5sselect_elements_f", error, total_error)
- ! Get bounds for point selection
+ ! Get bounds for point selection
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1859,22 +1859,22 @@ SUBROUTINE test_select_bounds(total_error)
CALL VERIFY("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1-4,hsize_t), total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2-4,hsize_t), total_error)
- ! Set bad offset for selection
+ ! Set bad offset for selection
offset(1:2) = (/5,-5/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for hyperslab selection with negative offset
+ ! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL verify("h5sget_select_bounds_f", error, -1, total_error)
-
- ! Set valid offset for selection
+
+ ! Set valid offset for selection
offset(1:2) = (/2,-2/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for point selection with offset
+ ! Get bounds for point selection with offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1883,22 +1883,22 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), INT(SPACE11_DIM1-2,hsize_t), total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), INT(SPACE11_DIM2-6,hsize_t), total_error)
- ! Reset offset for selection
+ ! Reset offset for selection
offset(1:2) = 0
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Set "regular" hyperslab selection
+ ! Set "regular" hyperslab selection
start(1:2) = 2
stride(1:2) = 10
count(1:2) = 4
block(1:2) = 5
-
+
CALL h5sselect_hyperslab_f(sid, H5S_SELECT_SET_F, start, &
- count, error, stride, block)
+ count, error, stride, block)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Get bounds for hyperslab selection
+ ! Get bounds for hyperslab selection
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1907,21 +1907,21 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), 37_hsize_t, total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), 37_hsize_t, total_error)
- ! Set bad offset for selection
+ ! Set bad offset for selection
offset(1:2) = (/5,-5/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for hyperslab selection with negative offset
+ ! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL verify("h5sget_select_bounds_f", error, -1, total_error)
- ! Set valid offset for selection
+ ! Set valid offset for selection
offset(1:2) = (/5,-2/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for hyperslab selection with offset
+ ! Get bounds for hyperslab selection with offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1930,22 +1930,22 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), 42_hsize_t, total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), 35_hsize_t, total_error)
- ! Reset offset for selection
+ ! Reset offset for selection
offset(1:2) = 0
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
-
- ! Make "irregular" hyperslab selection
+
+ ! Make "irregular" hyperslab selection
start(1:2) = 20
stride(1:2) = 20
count(1:2) = 2
block(1:2) = 10
CALL h5sselect_hyperslab_f(sid, H5S_SELECT_OR_F, start, &
- count, error, stride, block)
+ count, error, stride, block)
CALL check("h5sselect_hyperslab_f", error, total_error)
- ! Get bounds for hyperslab selection
+ ! Get bounds for hyperslab selection
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1954,21 +1954,21 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), 50_hsize_t, total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), 50_hsize_t, total_error)
- ! Set bad offset for selection
+ ! Set bad offset for selection
offset(1:2) = (/5,-5/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for hyperslab selection with negative offset
+ ! Get bounds for hyperslab selection with negative offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL verify("h5sget_select_bounds_f", error, -1, total_error)
- ! Set valid offset for selection
+ ! Set valid offset for selection
offset(1:2) = (/5,-2/)
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Get bounds for hyperslab selection with offset
+ ! Get bounds for hyperslab selection with offset
CALL h5sget_select_bounds_f(sid, low_bounds, high_bounds, error)
CALL check("h5sget_select_bounds_f", error, total_error)
@@ -1977,12 +1977,12 @@ SUBROUTINE test_select_bounds(total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(1), 55_hsize_t, total_error)
CALL verify("h5sget_select_bounds_f", high_bounds(2), 48_hsize_t, total_error)
- ! Reset offset for selection
+ ! Reset offset for selection
offset(1:2) = 0
CALL H5Soffset_simple_f(sid, offset, error)
CALL check("H5Soffset_simple_f", error, total_error)
- ! Close the dataspace
+ ! Close the dataspace
CALL h5sclose_f(sid, error)
CALL check("h5sclose_f", error, total_error)
diff --git a/fortran/test/tH5T.F90 b/fortran/test/tH5T.F90
index a986ba6..8b10136 100644
--- a/fortran/test/tH5T.F90
+++ b/fortran/test/tH5T.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -113,7 +113,7 @@ CONTAINS
INTEGER(HID_T) :: fixed_str1, fixed_str2
LOGICAL :: are_equal
- INTEGER(SIZE_T), PARAMETER :: str_size = 10
+ INTEGER(SIZE_T), PARAMETER :: str_size = 10
INTEGER(SIZE_T) :: query_size
! Test h5tcreate_f with H5T_STRING_F option:
@@ -125,34 +125,34 @@ CONTAINS
CALL check("h5tset_size_f", error, total_error)
CALL h5tset_strpad_f(fixed_str1, H5T_STR_NULLTERM_F, error)
CALL check("h5tset_strpad_f", error, total_error)
-
+
CALL h5tcreate_f(H5T_STRING_F, str_size, fixed_str2, error)
CALL check("h5tcreate_f", error, total_error)
CALL h5tset_strpad_f(fixed_str2, H5T_STR_NULLTERM_F, error)
CALL check("h5tset_strpad_f", error, total_error)
-
+
CALL h5tequal_f(fixed_str1, fixed_str2, are_equal, error)
IF(.NOT.are_equal)THEN
CALL check("h5tcreate_f", -1, total_error)
ENDIF
-
+
CALL h5tget_size_f(fixed_str1, query_size, error)
CALL check("h5tget_size_f", error, total_error)
-
+
IF(query_size.NE.str_size)THEN
CALL check("h5tget_size_f", -1, total_error)
ENDIF
-
+
CALL h5tget_size_f(fixed_str2, query_size, error)
CALL check("h5tget_size_f", error, total_error)
IF(query_size.NE.str_size)THEN
CALL check("h5tget_size_f", -1, total_error)
ENDIF
-
+
CALL h5tclose_f(fixed_str1,error)
CALL check("h5tclose_f", error, total_error)
-
+
CALL h5tclose_f(fixed_str2,error)
CALL check("h5tclose_f", error, total_error)
data_dims(1) = dimsize
@@ -526,7 +526,7 @@ CONTAINS
CALL h5dread_f(dset_id, dt3_id, double_member_out, data_dims, error)
CALL check("h5dread_f", error, total_error)
DO i = 1, dimsize
- CALL VERIFY("h5dread_f:Wrong double precision data is read back", double_member_out(i), double_member(i), total_error)
+ CALL VERIFY("h5dread_f:Wrong double precision data is read back", double_member_out(i), double_member(i), total_error)
ENDDO
!
!
@@ -541,20 +541,20 @@ CONTAINS
CALL h5dread_f(dset_id, dt4_id, real_member_out, data_dims, error)
CALL check("h5dread_f", error, total_error)
DO i = 1, dimsize
- CALL VERIFY("h5dread_f:Wrong double precision data is read back", real_member_out(i), real_member(i), total_error)
+ CALL VERIFY("h5dread_f:Wrong double precision data is read back", real_member_out(i), real_member(i), total_error)
ENDDO
!
! *-----------------------------------------------------------------------
! * Test encoding and decoding compound datatypes
! *-----------------------------------------------------------------------
!
- ! Encode compound type in a buffer
+ ! Encode compound type in a buffer
! -- First find the buffer size
CALL H5Tencode_f(dtype_id, cmpd_buf, cmpd_buf_size, error)
CALL check("H5Tencode_f", error, total_error)
- ! Try decoding bogus buffer
+ ! Try decoding bogus buffer
CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error)
CALL verify("H5Tdecode_f", error, -1, total_error)
@@ -562,11 +562,11 @@ CONTAINS
CALL H5Tencode_f(dtype_id, cmpd_buf, cmpd_buf_size, error)
CALL check("H5Tencode_f", error, total_error)
- ! Decode from the compound buffer and return an object handle
+ ! Decode from the compound buffer and return an object handle
CALL H5Tdecode_f(cmpd_buf, decoded_tid1, error)
CALL check("H5Tdecode_f", error, total_error)
- ! Verify that the datatype was copied exactly
+ ! Verify that the datatype was copied exactly
CALL H5Tequal_f(decoded_tid1, dtype_id, flag, error)
CALL check("H5Tequal_f", error, total_error)
@@ -886,7 +886,7 @@ CONTAINS
CALL H5Tget_native_type_f(dtype, H5T_DIR_ASCEND_F, native_type, error)
CALL check("H5Tget_native_type_f",error, total_error)
- ! Verify the datatype retrieved and converted
+ ! Verify the datatype retrieved and converted
CALL H5Tget_order_f(native_type, order1, error)
CALL check("H5Tget_order_f",error, total_error)
CALL H5Tget_order_f(H5T_NATIVE_INTEGER, order2, error)
@@ -957,7 +957,7 @@ CONTAINS
! * Modifications:
! *
! *-------------------------------------------------------------------------
-!
+!
SUBROUTINE test_derived_flt(cleanup, total_error)
@@ -977,7 +977,7 @@ SUBROUTINE test_derived_flt(cleanup, total_error)
INTEGER :: error
- ! Create File
+ ! Create File
CALL h5_fixname_f(filename, fix_filename, H5P_DEFAULT_F, error)
IF (error .NE. 0) THEN
WRITE(*,*) "Cannot modify filename"
diff --git a/fortran/test/tH5T_F03.F90 b/fortran/test/tH5T_F03.F90
index 800e84b..200c674 100644
--- a/fortran/test/tH5T_F03.F90
+++ b/fortran/test/tH5T_F03.F90
@@ -5,7 +5,7 @@
!
! FUNCTION
! Test FORTRAN HDF5 H5T APIs which are dependent on FORTRAN 2003
-! features.
+! features.
!
! COPYRIGHT
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -16,7 +16,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -43,7 +43,7 @@
MODULE TH5T_F03
- USE HDF5
+ USE HDF5
USE TH5_MISC
USE TH5_MISC_GEN
USE ISO_C_BINDING
@@ -55,10 +55,10 @@ SUBROUTINE test_array_compound_atomic(total_error)
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
- ! 1-D dataset WITH fixed dimensions
+ ! 1-D dataset WITH fixed dimensions
INTEGER, PARAMETER :: SPACE1_RANK = 1
INTEGER, PARAMETER :: SPACE1_DIM1 = 4
- ! 1-D array datatype
+ ! 1-D array datatype
INTEGER, PARAMETER :: ARRAY1_RANK= 1
INTEGER, PARAMETER :: ARRAY1_DIM1= 4
CHARACTER(LEN=10), PARAMETER :: FILENAME = "tarray1.h5"
@@ -68,26 +68,26 @@ SUBROUTINE test_array_compound_atomic(total_error)
INTEGER :: i
REAL :: f
END TYPE s1_t
- TYPE(s1_t), DIMENSION(:,:), ALLOCATABLE, TARGET :: wdata ! Information to write
- TYPE(s1_t), DIMENSION(:,:), ALLOCATABLE, TARGET :: rdata ! Information read in
- INTEGER(hid_t) :: fid1 ! HDF5 File IDs
- INTEGER(hid_t) :: dataset ! Dataset ID
- INTEGER(hid_t) :: sid1 ! Dataspace ID
- INTEGER(hid_t) :: tid1 ! Array Datatype ID
- INTEGER(hid_t) :: tid2 ! Compound Datatype ID
+ TYPE(s1_t), DIMENSION(:,:), ALLOCATABLE, TARGET :: wdata ! Information to write
+ TYPE(s1_t), DIMENSION(:,:), ALLOCATABLE, TARGET :: rdata ! Information read in
+ INTEGER(hid_t) :: fid1 ! HDF5 File IDs
+ INTEGER(hid_t) :: dataset ! Dataset ID
+ INTEGER(hid_t) :: sid1 ! Dataspace ID
+ INTEGER(hid_t) :: tid1 ! Array Datatype ID
+ INTEGER(hid_t) :: tid2 ! Compound Datatype ID
INTEGER(HSIZE_T), DIMENSION(1) :: sdims1 = (/SPACE1_DIM1/)
INTEGER(HSIZE_T), DIMENSION(1) :: tdims1=(/ARRAY1_DIM1/)
- INTEGER :: ndims ! Array rank for reading
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims ! Array dimensions for reading
- INTEGER :: nmemb ! Number of compound members
- CHARACTER(LEN=20) :: mname ! Name of compound field
- INTEGER(size_t) :: off ! Offset of compound field
- INTEGER(hid_t) :: mtid ! Datatype ID for field
- INTEGER :: i,j ! counting variables
-
- INTEGER :: error ! Generic RETURN value
+ INTEGER :: ndims ! Array rank for reading
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims ! Array dimensions for reading
+ INTEGER :: nmemb ! Number of compound members
+ CHARACTER(LEN=20) :: mname ! Name of compound field
+ INTEGER(size_t) :: off ! Offset of compound field
+ INTEGER(hid_t) :: mtid ! Datatype ID for field
+ INTEGER :: i,j ! counting variables
+
+ INTEGER :: error ! Generic RETURN value
INTEGER :: namelen
LOGICAL :: flag
@@ -96,7 +96,7 @@ SUBROUTINE test_array_compound_atomic(total_error)
ALLOCATE( wdata(1:SPACE1_DIM1,1:ARRAY1_DIM1) )
ALLOCATE( rdata(1:SPACE1_DIM1,1:ARRAY1_DIM1) )
- ! Initialize array data to write
+ ! Initialize array data to write
DO i = 1, SPACE1_DIM1
DO j = 1, ARRAY1_DIM1
wdata(i,j)%i = i * 10 + j
@@ -104,153 +104,153 @@ SUBROUTINE test_array_compound_atomic(total_error)
ENDDO
ENDDO
- ! Create file
+ ! Create file
CALL h5fcreate_f(FILENAME,H5F_ACC_TRUNC_F,fid1,error)
CALL check("h5fcreate_f", error, total_error)
- ! Create dataspace for datasets
+ ! Create dataspace for datasets
CALL h5screate_simple_f(SPACE1_RANK, sdims1, sid1, error)
CALL check("h5screate_simple_f", error, total_error)
CALL h5tcreate_f(H5T_COMPOUND_F, H5OFFSETOF(C_LOC(wdata(1,1)), C_LOC(wdata(2,1))), tid2, error)
CALL check("h5tcreate_f", error, total_error)
- ! Insert integer field
+ ! Insert integer field
CALL h5tinsert_f(tid2, "i", H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%i)), H5T_NATIVE_INTEGER, error)
CALL check("h5tinsert_f", error, total_error)
- ! Insert float field
+ ! Insert float field
CALL h5tinsert_f(tid2, "f", H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f)), H5T_NATIVE_REAL, error)
CALL check("h5tinsert_f", error, total_error)
- ! Create an array datatype to refer to
+ ! Create an array datatype to refer to
CALL h5tarray_create_f(tid2, ARRAY1_RANK, tdims1, tid1, error)
CALL check("h5tarray_create_f", error, total_error)
- ! Close compound datatype
+ ! Close compound datatype
CALL h5tclose_f(tid2,error)
CALL check("h5tclose_f", error, total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid1,"Dataset1",tid1, sid1, dataset,error)
CALL check("h5dcreate_f", error, total_error)
- ! Write dataset to disk
+ ! Write dataset to disk
ALLOCATE(rdims(1:2)) ! dummy not needed
f_ptr = C_LOC(wdata(1,1))
CALL h5dwrite_f(dataset, tid1, f_ptr, error )
CALL check("h5dwrite_f", error, total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f", error, total_error)
- ! Close datatype
+ ! Close datatype
CALL h5tclose_f(tid1,error)
CALL check("h5tclose_f", error, total_error)
- ! Close disk dataspace
+ ! Close disk dataspace
CALL h5sclose_f(sid1,error)
CALL check("h5sclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1,error)
CALL check("h5fclose_f", error, total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f (FILENAME, H5F_ACC_RDONLY_F, fid1, error)
CALL check("h5fopen_f", error, total_error)
- ! Open the dataset
+ ! Open the dataset
CALL h5dopen_f(fid1, "Dataset1", dataset, error)
CALL check("h5dopen_f", error, total_error)
- ! Get the datatype
+ ! Get the datatype
CALL h5dget_type_f(dataset, tid1, error)
CALL check("h5dget_type_f", error, total_error)
- ! Check the array rank
+ ! Check the array rank
CALL h5tget_array_ndims_f(tid1, ndims, error)
CALL check("h5tget_array_ndims_f", error, total_error)
CALL VERIFY("h5tget_array_ndims_f",ndims, ARRAY1_RANK, total_error)
- ! Get the array dimensions
+ ! Get the array dimensions
ALLOCATE(rdims1(1:ndims))
CALL h5tget_array_dims_f(tid1, rdims1, error)
CALL check("h5tget_array_dims_f", error, total_error)
- ! Check the array dimensions
+ ! Check the array dimensions
DO i = 1, ndims
CALL VERIFY("h5tget_array_dims_f", INT(rdims1(i)), INT(tdims1(i)), total_error)
ENDDO
- ! Get the compound datatype
+ ! Get the compound datatype
CALL h5tget_super_f(tid1, tid2, error)
CALL check("h5tget_super_f", error, total_error)
- ! Check the number of members
+ ! Check the number of members
CALL h5tget_nmembers_f(tid2, nmemb, error)
CALL check("h5tget_nmembers_f", error, total_error)
CALL VERIFY("h5tget_nmembers_f", nmemb, 2, total_error)
- ! Check the 1st field's name
+ ! Check the 1st field's name
CALL H5Tget_member_name_f(tid2, 0, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
CALL verify("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
- ! Check the 1st field's offset
+ ! Check the 1st field's offset
CALL H5Tget_member_offset_f(tid2, 0, off, error)
CALL check("H5Tget_member_offset_f", error, total_error)
- CALL VERIFY("H5Tget_member_offset_f",INT(off),0, total_error)
+ CALL VERIFY("H5Tget_member_offset_f",INT(off),0, total_error)
- ! Check the 1st field's datatype
+ ! Check the 1st field's datatype
CALL H5Tget_member_type_f(tid2, 0, mtid, error)
CALL check("H5Tget_member_type_f", error, total_error)
CALL H5Tequal_f(mtid, H5T_NATIVE_INTEGER, flag, error)
- CALL check("H5Tequal_f", error, total_error)
+ CALL check("H5Tequal_f", error, total_error)
CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
- ! Check the 2nd field's name
+ ! Check the 2nd field's name
CALL H5Tget_member_name_f(tid2, 1, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
CALL verify("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
- ! Check the 2nd field's offset
+ ! Check the 2nd field's offset
CALL H5Tget_member_offset_f(tid2, 1, off, error)
CALL check("H5Tget_member_offset_f", error, total_error)
- CALL VERIFY("H5Tget_member_offset_f",INT(off),INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f))), total_error)
+ CALL VERIFY("H5Tget_member_offset_f",INT(off),INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f))), total_error)
- ! Check the 2nd field's datatype
+ ! Check the 2nd field's datatype
CALL H5Tget_member_type_f(tid2, 1, mtid, error)
CALL check("H5Tget_member_type_f", error, total_error)
CALL H5Tequal_f(mtid, H5T_NATIVE_REAL, flag, error)
- CALL check("H5Tequal_f", error, total_error)
+ CALL check("H5Tequal_f", error, total_error)
CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
- ! Close Compound Datatype
+ ! Close Compound Datatype
CALL h5tclose_f(tid2, error)
CALL check("h5tclose_f", error, total_error)
- ! Read dataset from disk
+ ! Read dataset from disk
f_ptr = C_LOC(rdata(1,1))
CALL H5Dread_f(dataset, tid1, f_ptr, error, H5S_ALL_F, H5S_ALL_F, H5P_DEFAULT_F)
CALL check("H5Dread_f", error, total_error)
- ! Compare data read in
+ ! Compare data read in
DO i = 1, SPACE1_DIM1
DO j = 1, ARRAY1_DIM1
IF(wdata(i,j)%i.NE.rdata(i,j)%i)THEN
@@ -261,15 +261,15 @@ SUBROUTINE test_array_compound_atomic(total_error)
ENDDO
ENDDO
- ! Close Datatype
+ ! Close Datatype
CALL h5tclose_f(tid1,error)
CALL check("h5tclose_f", error, total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1,error)
CALL check("h5fclose_f", error, total_error)
@@ -283,12 +283,12 @@ END SUBROUTINE test_array_compound_atomic
!!$!***************************************************************
!!$
SUBROUTINE test_array_compound_array(total_error)
-
+
IMPLICIT NONE
-
+
INTEGER, INTENT(INOUT) :: total_error
- ! 1-D array datatype
+ ! 1-D array datatype
INTEGER, PARAMETER :: ARRAY1_RANK= 1
INTEGER, PARAMETER :: ARRAY1_DIM1= 3
INTEGER, PARAMETER :: ARRAY2_DIM1= 5
@@ -303,47 +303,47 @@ END SUBROUTINE test_array_compound_atomic
REAL, DIMENSION(1:ARRAY2_DIM1) :: f
CHARACTER(LEN=2), DIMENSION(1:ARRAY2_DIM1) :: c
END TYPE st_t_struct
- ! Information to write
+ ! Information to write
TYPE(st_t_struct), DIMENSION(1:SPACE1_DIM1,1:ARRAY1_DIM1), TARGET :: wdata
- ! Information read in
+ ! Information read in
TYPE(st_t_struct), DIMENSION(1:SPACE1_DIM1,1:ARRAY1_DIM1), TARGET :: rdata
- INTEGER(hid_t) :: fid1 ! HDF5 File IDs
- INTEGER(hid_t) :: dataset ! Dataset ID
- integer(hid_t) :: sid1 ! Dataspace ID
- integer(hid_t) :: tid1 ! Array Datatype ID
- integer(hid_t) :: tid2 ! Compound Datatype ID
- integer(hid_t) :: tid3 ! Nested Array Datatype ID
- integer(hid_t) :: tid4 ! Nested Array Datatype ID
+ INTEGER(hid_t) :: fid1 ! HDF5 File IDs
+ INTEGER(hid_t) :: dataset ! Dataset ID
+ integer(hid_t) :: sid1 ! Dataspace ID
+ integer(hid_t) :: tid1 ! Array Datatype ID
+ integer(hid_t) :: tid2 ! Compound Datatype ID
+ integer(hid_t) :: tid3 ! Nested Array Datatype ID
+ integer(hid_t) :: tid4 ! Nested Array Datatype ID
INTEGER(HSIZE_T), DIMENSION(1) :: sdims1 = (/SPACE1_DIM1/)
INTEGER(HSIZE_T), DIMENSION(1) :: tdims1=(/ARRAY1_DIM1/)
INTEGER(HSIZE_T), DIMENSION(1) :: tdims2=(/ARRAY2_DIM1/)
- INTEGER ndims ! Array rank for reading
+ INTEGER ndims ! Array rank for reading
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
- INTEGER :: nmemb ! Number of compound members
- CHARACTER(LEN=20) :: mname ! Name of compound field
- INTEGER(size_t) :: off ! Offset of compound field
- INTEGER(hid_t) :: mtid ! Datatype ID for field
- INTEGER(hid_t) :: mtid2 ! Datatype ID for field
+ INTEGER :: nmemb ! Number of compound members
+ CHARACTER(LEN=20) :: mname ! Name of compound field
+ INTEGER(size_t) :: off ! Offset of compound field
+ INTEGER(hid_t) :: mtid ! Datatype ID for field
+ INTEGER(hid_t) :: mtid2 ! Datatype ID for field
- INTEGER :: mclass ! Datatype class for field
- INTEGER :: i,j,k ! counting variables
+ INTEGER :: mclass ! Datatype class for field
+ INTEGER :: i,j,k ! counting variables
INTEGER :: error
CHARACTER(LEN=2) :: ichr2
INTEGER :: namelen
- LOGICAL :: flag
+ LOGICAL :: flag
INTEGER(HID_T) :: atype_id !String Attribute Datatype identifier
- INTEGER(SIZE_T) :: attrlen ! Length of the attribute string
+ INTEGER(SIZE_T) :: attrlen ! Length of the attribute string
TYPE(c_ptr) :: f_ptr
- ! Initialize array data to write
+ ! Initialize array data to write
DO i = 1, SPACE1_DIM1
DO j = 1, array1_DIM1
wdata(i,j)%i = i*10+j
@@ -355,28 +355,28 @@ END SUBROUTINE test_array_compound_atomic
ENDDO
ENDDO
- ! Create file
+ ! Create file
CALL h5fcreate_f(FILENAME,H5F_ACC_TRUNC_F,fid1,error)
- CALL check("h5fcreate_f", error, total_error)
+ CALL check("h5fcreate_f", error, total_error)
- ! Create dataspace for datasets
+ ! Create dataspace for datasets
CALL h5screate_simple_f(SPACE1_RANK, sdims1, sid1, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Create a compound datatype to refer to
+ ! Create a compound datatype to refer to
!
CALL h5tcreate_f(H5T_COMPOUND_F, H5OFFSETOF(C_LOC(wdata(1,1)), C_LOC(wdata(2,1))), tid2, error)
CALL check("h5tcreate_f", error, total_error)
- ! Insert integer field
+ ! Insert integer field
CALL h5tinsert_f(tid2, "i", H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%i)), H5T_NATIVE_INTEGER, error)
CALL check("h5tinsert_f", error, total_error)
- ! Create an array of floats datatype
+ ! Create an array of floats datatype
CALL h5tarray_create_f(H5T_NATIVE_REAL, ARRAY1_RANK, tdims2, tid3, error)
CALL check("h5tarray_create_f", error, total_error)
- ! Insert float array field
+ ! Insert float array field
CALL h5tinsert_f(tid2, "f", H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f)), tid3, error)
CALL check("h5tinsert_f", error, total_error)
@@ -386,227 +386,227 @@ END SUBROUTINE test_array_compound_atomic
!
CALL h5tcopy_f(H5T_NATIVE_CHARACTER, atype_id, error)
CALL check("h5tcopy_f",error,total_error)
-
- attrlen = LEN(wdata(1,1)%c(1))
+
+ attrlen = LEN(wdata(1,1)%c(1))
CALL h5tset_size_f(atype_id, attrlen, error)
- CALL check("h5tset_size_f",error,total_error)
+ CALL check("h5tset_size_f",error,total_error)
- ! Create an array of character datatype
+ ! Create an array of character datatype
CALL h5tarray_create_f(atype_id, ARRAY1_RANK, tdims2, tid4, error)
CALL check("h5tarray_create_f", error, total_error)
- ! Insert character array field
+ ! Insert character array field
CALL h5tinsert_f(tid2, "c", H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%c(1)(1:1))), tid4, error)
CALL check("h5tinsert2_f", error, total_error)
- ! Close array of floats field datatype
+ ! Close array of floats field datatype
CALL h5tclose_f(tid3,error)
CALL check("h5tclose_f", error, total_error)
CALL h5tclose_f(tid4,error)
CALL check("h5tclose_f", error, total_error)
- ! Create an array datatype to refer to
+ ! Create an array datatype to refer to
CALL h5tarray_create_f(tid2, ARRAY1_RANK, tdims1, tid1, error)
CALL check("h5tarray_create_f", error, total_error)
- ! Close compound datatype
+ ! Close compound datatype
CALL h5tclose_f(tid2,error)
CALL check("h5tclose_f", error, total_error)
- ! Create a dataset
+ ! Create a dataset
CALL h5dcreate_f(fid1,"Dataset1",tid1, sid1, dataset,error)
CALL check("h5dcreate_f", error, total_error)
- ! Write dataset to disk
+ ! Write dataset to disk
f_ptr = C_LOC(wdata(1,1))
CALL h5dwrite_f(dataset, tid1, f_ptr, error )
CALL check("h5dwrite_f", error, total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f", error, total_error)
- ! Close datatype
+ ! Close datatype
CALL h5tclose_f(tid1,error)
CALL check("h5tclose_f", error, total_error)
- ! Close disk dataspace
+ ! Close disk dataspace
CALL h5sclose_f(sid1,error)
CALL check("h5sclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1,error)
CALL check("h5fclose_f", error, total_error)
- ! Re-open file
+ ! Re-open file
CALL h5fopen_f (FILENAME, H5F_ACC_RDONLY_F, fid1, error)
CALL check("h5fopen_f", error, total_error)
- ! Open the dataset
+ ! Open the dataset
CALL h5dopen_f(fid1, "Dataset1", dataset, error)
CALL check("h5dopen_f", error, total_error)
-
- ! Get the datatype
+
+ ! Get the datatype
CALL h5dget_type_f(dataset, tid1, error)
CALL check("h5dget_type_f", error, total_error)
- ! Check the array rank
+ ! Check the array rank
CALL h5tget_array_ndims_f(tid1, ndims, error)
CALL check("h5tget_array_ndims_f", error, total_error)
CALL VERIFY("h5tget_array_ndims_f",ndims, ARRAY1_RANK, total_error)
- ! Get the array dimensions
+ ! Get the array dimensions
ALLOCATE(rdims1(1:ndims))
CALL h5tget_array_dims_f(tid1, rdims1, error)
CALL check("h5tget_array_dims_f", error, total_error)
- ! Check the array dimensions
+ ! Check the array dimensions
DO i = 1, ndims
CALL VERIFY("h5tget_array_dims_f", INT(rdims1(i)), INT(tdims1(i)), total_error)
ENDDO
- ! Get the compound datatype
+ ! Get the compound datatype
CALL h5tget_super_f(tid1, tid2, error)
CALL check("h5tget_super_f", error, total_error)
- ! Check the number of members
+ ! Check the number of members
CALL h5tget_nmembers_f(tid2, nmemb, error)
CALL check("h5tget_nmembers_f", error, total_error)
CALL VERIFY("h5tget_nmembers_f", nmemb, 3, total_error)
- ! Check the 1st field's name
+ ! Check the 1st field's name
CALL H5Tget_member_name_f(tid2, 0, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
CALL verify("H5Tget_member_name_f",mname(1:namelen),"i", total_error)
- ! Check the 1st field's offset
+ ! Check the 1st field's offset
CALL H5Tget_member_offset_f(tid2, 0, off, error)
CALL check("H5Tget_member_offset_f", error, total_error)
- CALL VERIFY("H5Tget_member_offset_f",INT(off),0, total_error)
+ CALL VERIFY("H5Tget_member_offset_f",INT(off),0, total_error)
- ! Check the 1st field's datatype
+ ! Check the 1st field's datatype
CALL H5Tget_member_type_f(tid2, 0, mtid, error)
CALL check("H5Tget_member_type_f", error, total_error)
CALL H5Tequal_f(mtid, H5T_NATIVE_INTEGER, flag, error)
- CALL check("H5Tequal_f", error, total_error)
+ CALL check("H5Tequal_f", error, total_error)
CALL verify("H5Tequal_f", flag, .TRUE., total_error)
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
- ! Check the 2nd field's name
+ ! Check the 2nd field's name
CALL H5Tget_member_name_f(tid2, 1, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
CALL verify("H5Tget_member_name_f",mname(1:namelen),"f", total_error)
- ! Check the 2nd field's offset
+ ! Check the 2nd field's offset
CALL H5Tget_member_offset_f(tid2, 1, off, error)
CALL check("H5Tget_member_offset_f", error, total_error)
- CALL VERIFY("H5Tget_member_offset_f",INT(off),INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f))), total_error)
+ CALL VERIFY("H5Tget_member_offset_f",INT(off),INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%f))), total_error)
- ! Check the 2nd field's datatype
+ ! Check the 2nd field's datatype
CALL H5Tget_member_type_f(tid2, 1, mtid, error)
CALL check("H5Tget_member_type_f", error, total_error)
- ! Get the 2nd field's class
+ ! Get the 2nd field's class
CALL H5Tget_class_f(mtid, mclass, error)
CALL check("H5Tget_class_f", error, total_error)
CALL VERIFY("H5Tget_class_f",mclass, H5T_ARRAY_F, total_error)
- ! Check the array rank
+ ! Check the array rank
CALL h5tget_array_ndims_f(mtid, ndims, error)
CALL check("h5tget_array_ndims_f", error, total_error)
CALL VERIFY("h5tget_array_ndims_f",ndims, ARRAY1_RANK, total_error)
- ! Get the array dimensions
+ ! Get the array dimensions
CALL h5tget_array_dims_f(mtid, rdims1, error)
CALL check("h5tget_array_dims_f", error, total_error)
- ! Check the array dimensions
+ ! Check the array dimensions
DO i = 1, ndims
CALL VERIFY("h5tget_array_dims_f", INT(rdims1(i)), INT(tdims2(i)), total_error)
ENDDO
- ! Check the 3rd field's name
+ ! Check the 3rd field's name
CALL H5Tget_member_name_f(tid2, 2, mname, namelen,error)
CALL check("H5Tget_member_name_f", error, total_error)
CALL verify("H5Tget_member_name_f",mname(1:namelen),"c", total_error)
- ! Check the 3rd field's offset
+ ! Check the 3rd field's offset
CALL H5Tget_member_offset_f(tid2, 2, off, error)
CALL check("H5Tget_member_offset_f", error, total_error)
CALL VERIFY("H5Tget_member_offset_f",INT(off),&
- INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%c(1)(1:1)))), total_error)
+ INT(H5OFFSETOF(C_LOC(wdata(1,1)),C_LOC(wdata(1,1)%c(1)(1:1)))), total_error)
- ! Check the 3rd field's datatype
+ ! Check the 3rd field's datatype
CALL H5Tget_member_type_f(tid2, 2, mtid2, error)
CALL check("H5Tget_member_type_f", error, total_error)
- ! Get the 3rd field's class
+ ! Get the 3rd field's class
CALL H5Tget_class_f(mtid2, mclass, error)
CALL check("H5Tget_class_f", error, total_error)
CALL VERIFY("H5Tget_class_f",mclass, H5T_ARRAY_F, total_error)
- ! Check the array rank
+ ! Check the array rank
CALL h5tget_array_ndims_f(mtid2, ndims, error)
CALL check("h5tget_array_ndims_f", error, total_error)
CALL VERIFY("h5tget_array_ndims_f",ndims, ARRAY1_RANK, total_error)
- ! Get the array dimensions
+ ! Get the array dimensions
CALL h5tget_array_dims_f(mtid2, rdims1, error)
CALL check("h5tget_array_dims_f", error, total_error)
- ! Check the array dimensions
+ ! Check the array dimensions
DO i = 1, ndims
CALL VERIFY("h5tget_array_dims_f", INT(rdims1(i)), INT(tdims2(i)), total_error)
ENDDO
- ! Check the nested array's datatype
+ ! Check the nested array's datatype
CALL H5Tget_super_f(mtid, tid3, error)
CALL check("H5Tget_super_f", error, total_error)
CALL H5Tequal_f(tid3, H5T_NATIVE_REAL, flag, error)
- CALL check("H5Tequal_f", error, total_error)
+ CALL check("H5Tequal_f", error, total_error)
CALL verify("H5Tequal_f", flag, .TRUE., total_error)
- ! Check the nested array's datatype
+ ! Check the nested array's datatype
CALL H5Tget_super_f(mtid2, tid3, error)
CALL check("H5Tget_super_f", error, total_error)
CALL H5Tequal_f(tid3, atype_id, flag, error)
- CALL check("H5Tequal_f", error, total_error)
+ CALL check("H5Tequal_f", error, total_error)
CALL verify("H5Tequal_f", flag, .TRUE., total_error)
- ! Close the array's base type datatype
+ ! Close the array's base type datatype
CALL h5tclose_f(tid3, error)
CALL check("h5tclose_f", error, total_error)
- ! Close the member datatype
+ ! Close the member datatype
CALL h5tclose_f(mtid,error)
CALL check("h5tclose_f", error, total_error)
- ! Close the member datatype
+ ! Close the member datatype
CALL h5tclose_f(mtid2,error)
CALL check("h5tclose_f", error, total_error)
- ! Close Compound Datatype
+ ! Close Compound Datatype
CALL h5tclose_f(tid2,error)
CALL check("h5tclose_f", error, total_error)
- ! READ dataset from disk
-
+ ! READ dataset from disk
+
f_ptr = c_null_ptr
f_ptr = C_LOC(rdata(1,1))
CALL H5Dread_f(dataset, tid1, f_ptr, error)
CALL check("H5Dread_f", error, total_error)
- ! Compare data read in
+ ! Compare data read in
DO i = 1, SPACE1_DIM1
DO j = 1, ARRAY1_DIM1
IF(wdata(i,j)%i.NE.rdata(i,j)%i)THEN
@@ -616,21 +616,21 @@ END SUBROUTINE test_array_compound_atomic
DO k = 1, ARRAY2_DIM1
CALL VERIFY("h5dread_f",wdata(i,j)%f(k),rdata(i,j)%f(k),total_error)
IF(total_error.NE.0) PRINT*,'ERROR: Wrong real array data is read back by H5Dread_f'
- CALL VERIFY("h5dread_f",wdata(i,j)%c(k),rdata(i,j)%c(k),total_error)
+ CALL VERIFY("h5dread_f",wdata(i,j)%c(k),rdata(i,j)%c(k),total_error)
IF(total_error.NE.0) PRINT*,'ERROR: Wrong character array data is read back by H5Dread_f'
ENDDO
ENDDO
ENDDO
- ! Close Datatype
+ ! Close Datatype
CALL h5tclose_f(tid1,error)
CALL check("h5tclose_f", error, total_error)
- ! Close Dataset
+ ! Close Dataset
CALL h5dclose_f(dataset, error)
CALL check("h5dclose_f", error, total_error)
- ! Close file
+ ! Close file
CALL h5fclose_f(fid1,error)
CALL check("h5fclose_f", error, total_error)
END SUBROUTINE test_array_compound_array
@@ -644,7 +644,7 @@ END SUBROUTINE test_array_compound_atomic
!!$!***************************************************************
!!$
SUBROUTINE test_array_bkg(total_error)
-
+
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -674,7 +674,7 @@ END SUBROUTINE test_array_compound_atomic
TYPE(CmpField_struct), DIMENSION(1:LENGTH), TARGET :: cf
TYPE(CmpField_struct), DIMENSION(1:LENGTH), TARGET :: cfr
-
+
TYPE CmpDTSinfo_struct
INTEGER :: nsubfields
CHARACTER(LEN=5), DIMENSION(1:nmax) :: name
@@ -687,9 +687,9 @@ END SUBROUTINE test_array_compound_atomic
TYPE fld_t_struct
REAL(KIND=sp), DIMENSION(1:ALEN) :: b
END TYPE fld_t_struct
-
- INTEGER(SIZE_T) :: type_sizei ! Size of the integer datatype
- INTEGER(SIZE_T) :: type_sizer ! Size of the real datatype
+
+ INTEGER(SIZE_T) :: type_sizei ! Size of the integer datatype
+ INTEGER(SIZE_T) :: type_sizer ! Size of the real datatype
INTEGER(SIZE_T) :: type_sized ! Size of the double datatype
INTEGER(SIZE_T) :: sizeof_compound ! total size of compound
@@ -698,14 +698,14 @@ END SUBROUTINE test_array_compound_atomic
CHARACTER(LEN=10), PARAMETER :: FILENAME = "tarray3.h5"
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
- INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims ! Array dimensions for reading
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims1 ! Array dimensions for reading
+ INTEGER(HSIZE_T), ALLOCATABLE, DIMENSION(:) :: rdims ! Array dimensions for reading
INTEGER :: error
TYPE(c_ptr) :: f_ptr
-
-! Initialize the data
-! -------------------
+
+! Initialize the data
+! -------------------
DO i = 1, LENGTH
DO j = 1, ALEN
@@ -715,13 +715,13 @@ END SUBROUTINE test_array_compound_atomic
ENDDO
ENDDO
- ! Set the number of data members
- ! ------------------------------
+ ! Set the number of data members
+ ! ------------------------------
dtsinfo%nsubfields = 3
- ! Initialize the offsets
- ! -----------------------
+ ! Initialize the offsets
+ ! -----------------------
CALL h5tget_size_f(H5T_NATIVE_INTEGER, type_sizei, error)
CALL check("h5tget_size_f", error, total_error)
IF(h5_sizeof(cf(1)%b(1)).EQ.4_size_t)THEN
@@ -736,44 +736,44 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5tget_size_f", error, total_error)
dtsinfo%offset(1) = H5OFFSETOF(C_LOC(cf(1)),C_LOC(cf(1)%a(1)))
- dtsinfo%offset(2) = H5OFFSETOF(C_LOC(cf(1)),C_LOC(cf(1)%b(1)))
+ dtsinfo%offset(2) = H5OFFSETOF(C_LOC(cf(1)),C_LOC(cf(1)%b(1)))
dtsinfo%offset(3) = H5OFFSETOF(C_LOC(cf(1)),C_LOC(cf(1)%c(1)))
- ! Initialize the data type IDs
- ! ----------------------------
+ ! Initialize the data type IDs
+ ! ----------------------------
dtsinfo%datatype(1) = H5T_NATIVE_INTEGER;
dtsinfo%datatype(2) = H5T_NATIVE_REAL_C_FLOAT;
dtsinfo%datatype(3) = H5T_NATIVE_REAL_C_DOUBLE;
- ! Initialize the names of data members
- ! ------------------------------------
-
+ ! Initialize the names of data members
+ ! ------------------------------------
+
dtsinfo%name(1) = "One "
dtsinfo%name(2) = "Two "
dtsinfo%name(3) = "Three"
-
- ! Create file
- ! -----------
+
+ ! Create file
+ ! -----------
CALL h5fcreate_f(FILENAME,H5F_ACC_TRUNC_F,fid,error)
- CALL check("h5fcreate_f", error, total_error)
+ CALL check("h5fcreate_f", error, total_error)
- ! Create data space
- ! -----------------
+ ! Create data space
+ ! -----------------
CALL h5screate_simple_f(RANK, dim, space, error)
CALL check("h5screate_simple_f", error, total_error)
- ! Create the memory data type
- ! ---------------------------
+ ! Create the memory data type
+ ! ---------------------------
CALL h5tcreate_f(H5T_COMPOUND_F, H5OFFSETOF(C_LOC(cf(1)), C_LOC(cf(2))), type, error)
CALL check("h5tcreate_f", error, total_error)
- ! Add members to the compound data type
- ! --------------------------------------
+ ! Add members to the compound data type
+ ! --------------------------------------
DO i = 1, dtsinfo%nsubfields
CALL h5tarray_create_f(dtsinfo%datatype(i), ndims(i), dima, array_dt, error)
@@ -785,13 +785,13 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5tclose_f", error, total_error)
ENDDO
- ! Create the dataset
+ ! Create the dataset
! ------------------ /
CALL h5dcreate_f(fid,FIELDNAME,type, space, dataset,error)
CALL check("h5dcreate_f", error, total_error)
- ! Write data to the dataset
- ! -------------------------
+ ! Write data to the dataset
+ ! -------------------------
ALLOCATE(rdims(1:2)) ! dummy not needed
@@ -806,8 +806,8 @@ END SUBROUTINE test_array_compound_atomic
CALL H5Dread_f(dataset, type, f_ptr, error)
CALL check("H5Dread_f", error, total_error)
- ! Verify correct data
- ! -------------------
+ ! Verify correct data
+ ! -------------------
DO i = 1, LENGTH
DO j = 1, ALEN
IF( cf(i)%a(j) .NE. cfr(i)%a(j) )THEN
@@ -820,8 +820,8 @@ END SUBROUTINE test_array_compound_atomic
ENDDO
- ! Release IDs
- ! -----------
+ ! Release IDs
+ ! -----------
CALL h5tclose_f(type,error)
CALL check("h5tclose_f", error, total_error)
CALL h5sclose_f(space,error)
@@ -832,7 +832,7 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5fclose_f", error, total_error)
!****************************
- ! Reopen the file and update
+ ! Reopen the file and update
!****************************
CALL h5fopen_f (FILENAME, H5F_ACC_RDWR_F, fid, error)
@@ -852,8 +852,8 @@ END SUBROUTINE test_array_compound_atomic
CALL h5tinsert_f(TYPE, "Two", 0_size_t, array_dt, error)
CALL check("h5tinsert_f", error, total_error)
- ! Initialize the data to overwrite
- ! --------------------------------
+ ! Initialize the data to overwrite
+ ! --------------------------------
DO i = 1, LENGTH
DO j = 1, ALEN
fld(i)%b(j) = 1.313
@@ -867,8 +867,8 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5dwrite_f", error, total_error)
- ! Read just the field changed
-
+ ! Read just the field changed
+
f_ptr = C_LOC(fldr(1))
CALL H5Dread_f(dataset, TYPE, f_ptr, error)
CALL check("H5Dread_f", error, total_error)
@@ -887,15 +887,15 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5dget_type_f", error, total_error)
- ! Read the entire dataset again
+ ! Read the entire dataset again
f_ptr = C_LOC(cfr(1))
CALL H5Dread_f(dataset, TYPE, f_ptr, error)
CALL check("H5Dread_f", error, total_error)
- ! Verify correct data
- ! -------------------
+ ! Verify correct data
+ ! -------------------
DO i = 1, LENGTH
DO j = 1, ALEN
@@ -915,7 +915,7 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5fclose_f", error, total_error)
!**************************************************
-! Reopen the file and print out all the data again
+! Reopen the file and print out all the data again
!**************************************************
CALL h5fopen_f (FILENAME, H5F_ACC_RDWR_F, fid, error)
@@ -930,8 +930,8 @@ END SUBROUTINE test_array_compound_atomic
CALL check("h5dget_type_f", error, total_error)
- ! Reset the data to read in
- ! -------------------------
+ ! Reset the data to read in
+ ! -------------------------
DO i = 1, LENGTH
cfr(i)%a(:) = 0
@@ -943,8 +943,8 @@ END SUBROUTINE test_array_compound_atomic
CALL H5Dread_f(dataset, TYPE, f_ptr, error)
CALL check("H5Dread_f", error, total_error)
- ! Verify correct data
- ! -------------------
+ ! Verify correct data
+ ! -------------------
DO i = 1, LENGTH
DO j = 1, ALEN
@@ -968,22 +968,22 @@ END SUBROUTINE test_array_compound_atomic
SUBROUTINE test_h5kind_to_type(total_error)
IMPLICIT NONE
-
+
INTEGER, INTENT(INOUT) :: total_error
-
+
INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(2) !should map to INTEGER*1 on most modern processors
INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(4) !should map to INTEGER*2 on most modern processors
INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
-#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
+#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
INTEGER, PARAMETER :: int_kind_32 = SELECTED_INT_KIND(36) !should map to INTEGER*16 on most modern processors
- INTEGER(int_kind_32), DIMENSION(1:4), TARGET :: dset_data_i32, data_out_i32
- INTEGER(HID_T) :: dset_id32 ! Dataset identifier
- CHARACTER(LEN=6), PARAMETER :: dsetname16 = "dset16" ! Dataset name
+ INTEGER(int_kind_32), DIMENSION(1:4), TARGET :: dset_data_i32, data_out_i32
+ INTEGER(HID_T) :: dset_id32 ! Dataset identifier
+ CHARACTER(LEN=6), PARAMETER :: dsetname16 = "dset16" ! Dataset name
#endif
INTEGER, PARAMETER :: real_kind_7 = C_FLOAT !should map to REAL*4 on most modern processors
INTEGER, PARAMETER :: real_kind_15 = C_DOUBLE !should map to REAL*8 on most modern processors
-
+
! Check if C has quad precision extension
#if H5_HAVE_FLOAT128!=0
! Check if Fortran supports quad precision
@@ -1004,8 +1004,8 @@ END SUBROUTINE test_array_compound_atomic
INTEGER, PARAMETER :: real_kind_31 = SELECTED_REAL_KIND(15,307)
# endif
#endif
- REAL(real_kind_31), DIMENSION(1:4), TARGET :: dset_data_r31, data_out_r31
- INTEGER(HID_T) :: dset_idr16 ! Dataset identifier
+ REAL(real_kind_31), DIMENSION(1:4), TARGET :: dset_data_r31, data_out_r31
+ INTEGER(HID_T) :: dset_idr16 ! Dataset identifier
CHARACTER(LEN=7), PARAMETER :: dsetnamer16 = "dsetr16" ! Dataset name
CHARACTER(LEN=12), PARAMETER :: filename = "dsetf_F03.h5" ! File name
@@ -1016,19 +1016,19 @@ END SUBROUTINE test_array_compound_atomic
CHARACTER(LEN=6), PARAMETER :: dsetnamer = "dsetr" ! Dataset name
CHARACTER(LEN=6), PARAMETER :: dsetnamer4 = "dsetr4" ! Dataset name
CHARACTER(LEN=6), PARAMETER :: dsetnamer8 = "dsetr8" ! Dataset name
-
- INTEGER(HID_T) :: file_id ! File identifier
- INTEGER(HID_T) :: dset_id1 ! Dataset identifier
- INTEGER(HID_T) :: dset_id4 ! Dataset identifier
- INTEGER(HID_T) :: dset_id8 ! Dataset identifier
- INTEGER(HID_T) :: dset_id16 ! Dataset identifier
- INTEGER(HID_T) :: dset_idr ! Dataset identifier
- INTEGER(HID_T) :: dset_idr4 ! Dataset identifier
- INTEGER(HID_T) :: dset_idr8 ! Dataset identifier
-
+
+ INTEGER(HID_T) :: file_id ! File identifier
+ INTEGER(HID_T) :: dset_id1 ! Dataset identifier
+ INTEGER(HID_T) :: dset_id4 ! Dataset identifier
+ INTEGER(HID_T) :: dset_id8 ! Dataset identifier
+ INTEGER(HID_T) :: dset_id16 ! Dataset identifier
+ INTEGER(HID_T) :: dset_idr ! Dataset identifier
+ INTEGER(HID_T) :: dset_idr4 ! Dataset identifier
+ INTEGER(HID_T) :: dset_idr8 ! Dataset identifier
+
INTEGER :: error ! Error flag
INTEGER :: i
-
+
! Data buffers:
INTEGER(int_kind_1), DIMENSION(1:4), TARGET :: dset_data_i1, data_out_i1
@@ -1039,10 +1039,10 @@ END SUBROUTINE test_array_compound_atomic
REAL, DIMENSION(1:4), TARGET :: dset_data_r, data_out_r
REAL(real_kind_7), DIMENSION(1:4), TARGET :: dset_data_r7, data_out_r7
REAL(real_kind_15), DIMENSION(1:4), TARGET :: dset_data_r15, data_out_r15
-
- INTEGER(HSIZE_T), DIMENSION(1:1) :: data_dims = (/4/)
+
+ INTEGER(HSIZE_T), DIMENSION(1:1) :: data_dims = (/4/)
INTEGER(HID_T) :: dspace_id ! Dataspace identifier
-
+
TYPE(C_PTR) :: f_ptr
!
@@ -1060,7 +1060,7 @@ END SUBROUTINE test_array_compound_atomic
dset_data_r7(i) = 4.0_real_kind_7*ATAN(1.0_real_kind_7)-REAL(i-1,real_kind_7)
dset_data_r15(i) = 4.0_real_kind_15*ATAN(1.0_real_kind_15)-REAL(i-1,real_kind_15)
dset_data_r31(i) = 4.0_real_kind_31*ATAN(1.0_real_kind_31)-REAL(i-1,real_kind_31)
-
+
END DO
CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, error)
@@ -1142,7 +1142,7 @@ END SUBROUTINE test_array_compound_atomic
!
! Read the dataset.
!
- ! Read data back into an integer size that is larger then the original size used for
+ ! Read data back into an integer size that is larger then the original size used for
! writing the data
f_ptr = C_LOC(data_out_i1(1))
CALL h5dread_f(dset_id1, h5kind_to_type(int_kind_1,H5_INTEGER_KIND), f_ptr, error)
@@ -1174,12 +1174,12 @@ END SUBROUTINE test_array_compound_atomic
CALL h5dread_f(dset_idr16, h5kind_to_type(real_kind_31,H5_REAL_KIND), f_ptr, error)
CALL check("h5dread_f",error, total_error)
DO i = 1, 4
-
+
CALL verify("h5kind_to_type",dset_data_i1(i),data_out_i1(i),total_error)
CALL verify("h5kind_to_type",dset_data_i4(i),data_out_i4(i),total_error)
CALL verify("h5kind_to_type",dset_data_i8(i),data_out_i8(i),total_error)
CALL verify("h5kind_to_type",dset_data_i16(i),data_out_i16(i),total_error)
-
+
#if H5_HAVE_Fortran_INTEGER_SIZEOF_16!=0
CALL verify("h5kind_to_type",dset_data_i32(i),data_out_i32(i),total_error)
#endif
@@ -1188,7 +1188,7 @@ END SUBROUTINE test_array_compound_atomic
CALL verify("h5kind_to_type",dset_data_r15(i),data_out_r15(i),total_error)
CALL verify("h5kind_to_type",dset_data_r31(i),data_out_r31(i),total_error)
END DO
-
+
!
! Close the dataset.
!
@@ -1224,7 +1224,7 @@ END SUBROUTINE test_h5kind_to_type
SUBROUTINE t_array(total_error)
IMPLICIT NONE
-
+
INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=19), PARAMETER :: filename = "t_array_F03.h5"
@@ -1236,7 +1236,7 @@ SUBROUTINE t_array(total_error)
INTEGER(HSIZE_T), DIMENSION(1:1) :: dims = (/dim0/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: adims = (/adim0, adim1/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: maxdims
- INTEGER, DIMENSION(1:dim0, 1:adim0, 1:adim1), TARGET :: wdata ! Write buffer
+ INTEGER, DIMENSION(1:dim0, 1:adim0, 1:adim1), TARGET :: wdata ! Write buffer
INTEGER, DIMENSION(:,:,:), ALLOCATABLE, TARGET :: rdata ! Read buffer
INTEGER :: i, j, k
TYPE(C_PTR) :: f_ptr
@@ -1292,7 +1292,7 @@ SUBROUTINE t_array(total_error)
CALL H5Fclose_f(file, error)
CALL check("h5fclose_f",error, total_error)
!
- ! Now we begin the read section of this example.
+ ! Now we begin the read section of this example.
!
! Open file, dataset, and attribute.
!
@@ -1322,7 +1322,7 @@ SUBROUTINE t_array(total_error)
ALLOCATE(rdata(1:dims(1),1:adims(1),1:adims(2)))
!
! Create the memory datatype.
- !
+ !
CALL H5Tarray_create_f(H5T_NATIVE_INTEGER, 2, adims, memtype, error)
CALL check("H5Tarray_create_f",error, total_error)
!
@@ -1397,7 +1397,7 @@ SUBROUTINE t_enum(total_error)
F_BASET = H5T_STD_I16BE ! File base type
M_BASET = H5T_NATIVE_INTEGER ! Memory base type
DO i = 1, dim0
- DO j = 1, dim1
+ DO j = 1, dim1
wdata(i,j) = MOD( (j-1)*(i-1), PLASMA+1)
ENDDO
ENDDO
@@ -1413,7 +1413,7 @@ SUBROUTINE t_enum(total_error)
!
CALL h5tenum_create_f(F_BASET, filetype, error)
CALL check("h5tenum_create_f",error, total_error)
-
+
CALL h5tenum_create_f(M_BASET, memtype, error)
CALL check("h5tenum_create_f",error, total_error)
@@ -1446,7 +1446,7 @@ SUBROUTINE t_enum(total_error)
CALL check("h5screate_simple_f",error, total_error)
!
! Create the dataset and write the enumerated data to it.
- !
+ !
CALL h5dcreate_f(file, dataset, filetype, space, dset, error)
CALL check("h5dcreate_f",error, total_error)
f_ptr = C_LOC(wdata(1,1))
@@ -1521,7 +1521,7 @@ SUBROUTINE t_enum(total_error)
CALL check("h5tclose_f",error, total_error)
CALL h5fclose_f(file , error)
CALL check("h5fclose_f",error, total_error)
-
+
END SUBROUTINE t_enum
SUBROUTINE t_bit(total_error)
@@ -1538,7 +1538,7 @@ SUBROUTINE t_bit(total_error)
INTEGER(HID_T) :: file, space, dset ! Handles
INTEGER(HSIZE_T), DIMENSION(1:2) :: dims = (/dim0, dim1/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: maxdims
- INTEGER(C_SIGNED_CHAR), DIMENSION(1:dim0, 1:dim1), TARGET :: wdata ! Write buffer
+ INTEGER(C_SIGNED_CHAR), DIMENSION(1:dim0, 1:dim1), TARGET :: wdata ! Write buffer
INTEGER(C_SIGNED_CHAR), DIMENSION(:,:), ALLOCATABLE, TARGET :: rdata ! Read buffer
INTEGER :: A, B, C, D
INTEGER :: Aw, Bw, Cw, Dw
@@ -1587,7 +1587,7 @@ SUBROUTINE t_bit(total_error)
CALL H5Fclose_f(file, error)
CALL check("h5fclose_f",error, total_error)
!
- ! Now we begin the read section of this example.
+ ! Now we begin the read section of this example.
!
! Open file, dataset.
!
@@ -1620,8 +1620,8 @@ SUBROUTINE t_bit(total_error)
B = IAND(ISHFT(rdata(i,j),-2), INT(hex,C_SIGNED_CHAR)) ! Retrieve field "B"
C = IAND(ISHFT(rdata(i,j),-4), INT(hex,C_SIGNED_CHAR)) ! Retrieve field "C"
D = IAND(ISHFT(rdata(i,j),-6), INT(hex,C_SIGNED_CHAR)) ! Retrieve field "D"
-
- Aw = IAND(wdata(i,j), INT(hex,C_SIGNED_CHAR))
+
+ Aw = IAND(wdata(i,j), INT(hex,C_SIGNED_CHAR))
Bw = IAND(ISHFT(wdata(i,j),-2), INT(hex,C_SIGNED_CHAR))
Cw = IAND(ISHFT(wdata(i,j),-4), INT(hex,C_SIGNED_CHAR))
Dw = IAND(ISHFT(wdata(i,j),-6), INT(hex,C_SIGNED_CHAR))
@@ -1662,8 +1662,8 @@ SUBROUTINE t_opaque(total_error)
CHARACTER(LEN=size), DIMENSION(1:dim0), TARGET :: wdata ! Write buffer
CHARACTER(LEN=size), DIMENSION(:), ALLOCATABLE, TARGET :: rdata ! Read buffer
CHARACTER(LEN=size-1) :: str = "OPAQUE"
-
- CHARACTER(LEN=14) :: tag_sm ! Test reading obaque tag into
+
+ CHARACTER(LEN=14) :: tag_sm ! Test reading obaque tag into
CHARACTER(LEN=15) :: tag_exact ! buffers that are: to small, exact
CHARACTER(LEN=17) :: tag_big ! and to big.
@@ -1677,7 +1677,7 @@ SUBROUTINE t_opaque(total_error)
! Initialize data.
!
DO i = 1, dim0
- WRITE(ichr,'(I1)') i-1
+ WRITE(ichr,'(I1)') i-1
wdata(i) = str//ichr
ENDDO
!
@@ -1735,15 +1735,15 @@ SUBROUTINE t_opaque(total_error)
CALL h5tget_size_f(dtype, len, error)
CALL check("h5tget_size_f",error, total_error)
- ! Next tests should return
+ ! Next tests should return
! opaque_tag = tag = "Character array" and the actual length = 15
-
+
! Test reading into a string that is to small
CALL h5tget_tag_f(dtype, tag_sm, taglen, error)
CALL check("h5tget_tag_f",error, total_error)
CALL VERIFY("h5tget_tag_f", taglen, 15, total_error)
CALL verify("h5tget_tag_f",tag_sm,"Character arra", total_error)
-
+
! Test reading into a string that is exact
CALL h5tget_tag_f(dtype, tag_exact, taglen, error)
CALL check("h5tget_tag_f",error, total_error)
@@ -1755,7 +1755,7 @@ SUBROUTINE t_opaque(total_error)
CALL check("h5tget_tag_f",error, total_error)
CALL VERIFY("h5tget_tag_f", taglen, 15, total_error)
CALL verify("h5tget_tag_f",tag_big,"Character array ", total_error)
-
+
!
! Get dataspace and allocate memory for read buffer.
!
@@ -1787,7 +1787,7 @@ SUBROUTINE t_opaque(total_error)
CALL check("h5tclose_f",error, total_error)
CALL H5Fclose_f(file, error)
CALL check("h5fclose_f",error, total_error)
-
+
END SUBROUTINE t_opaque
SUBROUTINE t_objref(total_error)
@@ -1855,7 +1855,7 @@ SUBROUTINE t_objref(total_error)
!
CALL h5dcreate_f(file, dataset, H5T_STD_REF_OBJ, space, dset, error)
CALL check("h5dcreate_f",error, total_error)
-
+
f_ptr = C_LOC(wdata(1))
CALL h5dwrite_f(dset, H5T_STD_REF_OBJ, f_ptr, error)
CALL check("h5dwrite_f",error, total_error)
@@ -1955,11 +1955,11 @@ SUBROUTINE t_regref(total_error)
INTEGER :: error
INTEGER(HSIZE_T), DIMENSION(1:1) :: dims = (/dim0/)
- INTEGER(HSIZE_T), DIMENSION(1:1) :: dims3
+ INTEGER(HSIZE_T), DIMENSION(1:1) :: dims3
INTEGER(HSIZE_T), DIMENSION(1:2) :: dims2 = (/ds2dim0,ds2dim1/)
INTEGER(HSIZE_T), DIMENSION(1:2,1:4) :: coords = RESHAPE((/2,1,12,3,1,2,5,3/),(/2,4/))
-
+
INTEGER(HSIZE_T), DIMENSION(1:2) :: start=(/0,0/),stride=(/11,2/),count=(/2,2/), BLOCK=(/3,1/)
INTEGER(HSIZE_T), DIMENSION(1:1) :: maxdims
@@ -2077,7 +2077,7 @@ SUBROUTINE t_regref(total_error)
! Output the data to the screen.
!
DO i = 1, dims(1)
-
+
!
! Open the referenced object, retrieve its region as a
! dataspace selection.
@@ -2085,10 +2085,10 @@ SUBROUTINE t_regref(total_error)
f_ptr = C_LOC(rdata(i))
CALL H5Rdereference_f(dset, H5R_DATASET_REGION_F, f_ptr, dset2, error)
CALL check("H5Rdereference_f",error, total_error)
-
+
CALL H5Rget_region_f(dset, f_ptr, space, error)
CALL check("H5Rget_region_f",error, total_error)
-
+
!
! Get the object's name
!
@@ -2103,7 +2103,7 @@ SUBROUTINE t_regref(total_error)
CALL H5Sget_select_npoints_f(space, npoints, error)
CALL check("H5Sget_select_npoints_f",error, total_error)
CALL VERIFY("H5Sget_select_npoints_f", INT(npoints), LEN_TRIM(chrref_correct(i)), total_error)
-
+
dims3(1) = npoints
!
! Read the dataset region.
@@ -2162,9 +2162,9 @@ SUBROUTINE t_vlen(total_error)
TYPE(hvl_t), DIMENSION(1:2), TARGET :: rdata ! Pointer to vlen structures
INTEGER(hsize_t), DIMENSION(1:1) :: dims = (/2/)
- INTEGER, DIMENSION(:), POINTER :: ptr_r
+ INTEGER, DIMENSION(:), POINTER :: ptr_r
TYPE(C_PTR) :: f_ptr
-
+
!
! Initialize variable-length data. wdata(1) is a countdown of
! length LEN0, wdata(2) is a Fibonacci sequence of length LEN1.
@@ -2209,7 +2209,7 @@ SUBROUTINE t_vlen(total_error)
!
CALL H5Dcreate_f(file, dataset, filetype, space, dset, error)
CALL check("h5dcreate_f",error, total_error)
-
+
f_ptr = C_LOC(wdata(1))
CALL h5dwrite_f(dset, memtype, f_ptr, error)
CALL check("h5dwrite_f",error, total_error)
@@ -2249,14 +2249,14 @@ SUBROUTINE t_vlen(total_error)
CALL H5Dget_space_f(dset, space, error)
CALL check("H5Dget_space_f",error, total_error)
dim0 = dims(1)
- CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
+ CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), INT(dim0), total_error)
!
! Create the memory datatype.
!
- CALL H5Tvlen_create_f(H5T_NATIVE_INTEGER, memtype, error)
+ CALL H5Tvlen_create_f(H5T_NATIVE_INTEGER, memtype, error)
CALL check("H5Tvlen_create_f",error, total_error)
!
@@ -2304,7 +2304,7 @@ SUBROUTINE t_vlstring(total_error)
INTEGER :: error
INTEGER(HSIZE_T), DIMENSION(1:1) :: dims = (/dim0/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: maxdims
-
+
CHARACTER(LEN=sdim), DIMENSION(1:dim0), TARGET :: &
wdata = (/"Parting", "is such", "sweet ", "sorrow."/) ! Write buffer
CHARACTER(LEN=sdim), DIMENSION(:), ALLOCATABLE :: rdata ! Read buffer
@@ -2373,7 +2373,7 @@ SUBROUTINE t_vlstring(total_error)
!
CALL H5Dget_space_f(dset, space, error)
CALL check("H5Dget_space_f",error, total_error)
- CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
+ CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
CALL VERIFY("H5Sget_simple_extent_dims_f", INT(dims(1)), INT(dim0), total_error)
@@ -2422,7 +2422,7 @@ SUBROUTINE t_vlstring_readwrite(total_error)
INTEGER(HSIZE_T), DIMENSION(1:1) :: dims = (/dim0/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: dims2D = (/dim1,dim0/)
INTEGER(HSIZE_T), DIMENSION(1:2) :: maxdims
-
+
TYPE(C_PTR), DIMENSION(1:dim0), TARGET :: wdata
CHARACTER(len=7, KIND=c_char), DIMENSION(1:1), TARGET :: A = "123456"//C_NULL_CHAR
CHARACTER(len=5, KIND=c_char), DIMENSION(1:1), TARGET :: B = "7890"//C_NULL_CHAR
@@ -2430,7 +2430,7 @@ SUBROUTINE t_vlstring_readwrite(total_error)
CHARACTER(len=3, KIND=c_char), DIMENSION(1:1), TARGET :: D = "df"//C_NULL_CHAR
TYPE(C_PTR), DIMENSION(1:dim1,1:dim0), TARGET :: wdata2D
-
+
CHARACTER(len=7, KIND=c_char), DIMENSION(1:1), TARGET :: A11 = "A(1,1)"//C_NULL_CHAR
CHARACTER(len=4, KIND=c_char), DIMENSION(1:1), TARGET :: A12 = "A12"//C_NULL_CHAR
CHARACTER(len=5, KIND=c_char), DIMENSION(1:1), TARGET :: A13 = "A_13"//C_NULL_CHAR
@@ -2566,13 +2566,13 @@ SUBROUTINE t_vlstring_readwrite(total_error)
CALL H5Dget_space_f(dset, space, error)
CALL check("H5Dget_space_f",error, total_error)
- CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
+ CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
ALLOCATE(rdata(1:dims(1)))
!
! Read the data.
!
-
+
f_ptr = C_LOC(rdata(1))
CALL h5dread_f(dset, H5T_STRING, f_ptr, error)
CALL check("H5Dread_f",error, total_error)
@@ -2612,14 +2612,14 @@ SUBROUTINE t_vlstring_readwrite(total_error)
CALL check("H5Dget_space_f",error, total_error)
- CALL H5Sget_simple_extent_dims_f(space, dims2D, maxdims, error)
+ CALL H5Sget_simple_extent_dims_f(space, dims2D, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
ALLOCATE(rdata2D(1:dims2D(1),1:dims2D(2)))
!
! Read the data.
!
-
+
f_ptr = C_LOC(rdata2D(1,1))
CALL h5dread_f(dset, H5T_STRING, f_ptr, error)
CALL check("H5Dread_f",error, total_error)
@@ -2736,7 +2736,7 @@ SUBROUTINE t_string(total_error)
!
CALL H5Dget_space_f(dset, space, error)
CALL check("H5Dget_space_f",error, total_error)
- CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
+ CALL H5Sget_simple_extent_dims_f(space, dims, maxdims, error)
CALL check("H5Sget_simple_extent_dims_f",error, total_error)
CALL VERIFY("H5Sget_simple_extent_dims_f", dims(1), INT(dim0,hsize_t), total_error)
@@ -2744,9 +2744,9 @@ SUBROUTINE t_string(total_error)
!
! Create the memory datatype.
!
- CALL H5Tcopy_f(H5T_FORTRAN_S1, memtype, error)
+ CALL H5Tcopy_f(H5T_FORTRAN_S1, memtype, error)
CALL check("H5Tcopy_f",error, total_error)
- CALL H5Tset_size_f(memtype, sdim, error)
+ CALL H5Tset_size_f(memtype, sdim, error)
CALL check("H5Tset_size_f",error, total_error)
!
! Read the data.
@@ -2777,9 +2777,9 @@ SUBROUTINE t_string(total_error)
END SUBROUTINE t_string
SUBROUTINE vl_test_special_char(total_error)
-
+
IMPLICIT NONE
-
+
! INTERFACE
! SUBROUTINE setup_buffer(data_in, line_lengths, char_type)
! USE HDF5
@@ -2790,9 +2790,9 @@ SUBROUTINE vl_test_special_char(total_error)
! CHARACTER(KIND=C_CHAR,LEN=*) :: char_type
! END SUBROUTINE setup_buffer
! END INTERFACE
-
+
INTEGER, INTENT(OUT) :: total_error
-
+
CHARACTER(LEN=16), PARAMETER :: filename = "t_controlchar.h5"
INTEGER, PARAMETER :: line_length = 10
INTEGER(hid_t) :: file
@@ -2815,7 +2815,7 @@ SUBROUTINE vl_test_special_char(total_error)
!
CALL h5fcreate_f(filename, H5F_ACC_TRUNC_F, file, error)
CALL check("h5fcreate_f",error, total_error)
-
+
max_dims = (/H5S_UNLIMITED_F/)
!
@@ -2835,7 +2835,7 @@ SUBROUTINE vl_test_special_char(total_error)
CALL check("h5pcreate_f", error, total_error)
CALL h5pset_chunk_f(dcpl, 1, chunk, error)
CALL check("h5pset_chunk_f", error, total_error)
-
+
data_dims(1) = line_length
data_dims(2) = n
!
@@ -2855,7 +2855,7 @@ SUBROUTINE vl_test_special_char(total_error)
!
CALL h5dread_vl_f(dataset0, string_id, data_out(1:n), data_dims, line_lengths(1:n), error, space)
CALL check("h5dread_vl_f", error, total_error)
-
+
DO j = 1, n
IF(data_in(j).NE.data_out(j))THEN
total_error = total_error + 1
@@ -2873,17 +2873,17 @@ SUBROUTINE vl_test_special_char(total_error)
CALL check("h5sclose_f", error, total_error)
CALL h5fclose_f(file, error)
CALL check("h5fclose_f", error, total_error)
-
+
END SUBROUTINE vl_test_special_char
SUBROUTINE setup_buffer(data_in, line_lengths, char_type)
-
+
IMPLICIT NONE
-
+
! Creates a simple "Data_in" consisting of the letters of the alphabet,
! one per line, with a control character.
-
+
CHARACTER(len=10), DIMENSION(:) :: data_in
INTEGER(size_t), DIMENSION(:) :: line_lengths
CHARACTER(LEN=3) :: lets = 'abc'
@@ -2904,7 +2904,7 @@ SUBROUTINE setup_buffer(data_in, line_lengths, char_type)
END DO
data_in(n:n) = char_type(1:1)
line_lengths(n) = 1
-
+
END SUBROUTINE setup_buffer
!-------------------------------------------------------------------------
@@ -2919,9 +2919,9 @@ END SUBROUTINE setup_buffer
! Decemeber 7, 2010
!
! Modifications: Moved this subroutine from the 1.8 test file and
-! modified it to use F2003 features.
-! This routine requires 4 byte reals, so we use F2003 features to
-! ensure the requirement is satisfied in a portable way.
+! modified it to use F2003 features.
+! This routine requires 4 byte reals, so we use F2003 features to
+! ensure the requirement is satisfied in a portable way.
! The need for this arises when a user specifies the default real is 8 bytes.
! MSB 7/31/12
!
@@ -2934,7 +2934,7 @@ SUBROUTINE test_nbit(total_error )
INTEGER, PARAMETER :: wp = C_FLOAT !should map to REAL*4 on most modern processors
INTEGER, INTENT(INOUT) :: total_error
INTEGER(hid_t) :: file
-
+
INTEGER(hid_t) :: dataset, datatype, space, dc, mem_type_id
INTEGER(hsize_t), DIMENSION(1:2) :: dims = (/2,5/)
INTEGER(hsize_t), DIMENSION(1:2) :: chunk_dim = (/2,5/)
@@ -2972,14 +2972,14 @@ SUBROUTINE test_nbit(total_error )
PRECISION = 20
CALL H5Tset_precision_f(datatype,PRECISION, error)
CALL CHECK(" H5Tset_precision_f", error, total_error)
-
+
CALL H5Tset_size_f(datatype, 4_size_t, error)
CALL CHECK(" H5Tset_size_f", error, total_error)
-
+
CALL H5Tset_ebias_f(datatype, 31_size_t, error)
CALL CHECK(" H5Tset_ebias_f", error, total_error)
-
- ! Create the data space
+
+ ! Create the data space
CALL H5Screate_simple_f(2, dims, space, error)
CALL CHECK(" H5Screate_simple_f", error, total_error)
@@ -3011,7 +3011,7 @@ SUBROUTINE test_nbit(total_error )
!----------------------------------------------------------------------
! STEP 2: Try to read the data we just wrote.
!----------------------------------------------------------------------
- !
+ !
f_ptr = C_LOC(new_data(1,1))
CALL H5Dread_f(dataset, mem_type_id, f_ptr, error)
CALL CHECK(" H5Dread_f", error, total_error)
@@ -3021,7 +3021,7 @@ SUBROUTINE test_nbit(total_error )
!
i_loop: DO i = 1, dims(1)
j_loop: DO j = 1, dims(2)
-
+
IF(.NOT.(orig_data(i,j).EQ.orig_data(i,j))) CYCLE ! skip IF value is NaN
IF( .NOT.check_real_eq( new_data(i,j), orig_data(i,j)) ) THEN
@@ -3079,7 +3079,7 @@ SUBROUTINE t_enum_conv(total_error)
INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
-
+
INTEGER, PARAMETER :: real_kind_7 = C_FLOAT !should map to REAL*4 on most modern processors
INTEGER(hid_t) :: cwg=-1, dtype=-1, space=-1, dset=-1 ! Handles
@@ -3092,7 +3092,7 @@ SUBROUTINE t_enum_conv(total_error)
INTEGER(KIND(E1_RED)), TARGET :: val
- ! Enumerated data array
+ ! Enumerated data array
! Some values are out of range for testing. The library should accept them
INTEGER(KIND(E1_RED)), DIMENSION(1:20), TARGET :: data1 = (/INT(E1_RED,KIND(E1_RED)), &
INT(E1_GREEN,KIND(E1_RED)), INT(E1_BLUE,KIND(E1_RED)), &
@@ -3140,7 +3140,7 @@ SUBROUTINE t_enum_conv(total_error)
!
! Initialize enum data.
!
-
+
val = E1_RED
CALL H5Tenum_insert_f(dtype, "RED", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
@@ -3208,7 +3208,7 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to (KIND=C_double) number.
+ ! Test converting the data to (KIND=C_double) number.
! Read enum data back as (KIND=C_double) number
m_baset = h5kind_to_type(KIND(data_double(1)), H5_REAL_KIND) ! Memory base type
@@ -3225,7 +3225,7 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to (SELECTED_INT_KIND(9)) number.
+ ! Test converting the data to (SELECTED_INT_KIND(9)) number.
! Read enum data back as (SELECTED_INT_KIND(9)) number
m_baset = h5kind_to_type(int_kind_8, H5_INTEGER_KIND) ! Memory base type
@@ -3242,7 +3242,7 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to (SELECTED_INT_KIND(18)) number.
+ ! Test converting the data to (SELECTED_INT_KIND(18)) number.
! Read enum data back as (SELECTED_INT_KIND(18)) number
m_baset = h5kind_to_type(int_kind_16, H5_INTEGER_KIND) ! Memory base type
@@ -3259,7 +3259,7 @@ SUBROUTINE t_enum_conv(total_error)
ENDIF
ENDDO
- ! Test converting the data to C_FLOAT number.
+ ! Test converting the data to C_FLOAT number.
! Read enum data back as C_FLOAT number
m_baset = h5kind_to_type(KIND(data_r7(1)), H5_REAL_KIND) ! Memory base type
@@ -3287,13 +3287,13 @@ SUBROUTINE t_enum_conv(total_error)
m_baset = h5kind_to_type(KIND(data_int(1)), H5_INTEGER_KIND) ! Memory base type
CALL h5dcreate_f(cwg, "color_table2", m_baset, space, dset, error)
CALL check("h5dcreate_f", error, total_error)
-
+
! Write the enum data
f_ptr = C_LOC(data1(1))
CALL h5dwrite_f(dset, dtype, f_ptr, error, space, space)
CALL check("h5dwrite_f", error, total_error)
- ! Test reading back the data with no conversion
+ ! Test reading back the data with no conversion
f_ptr = C_LOC(data_int(1))
CALL h5dread_f(dset, m_baset, f_ptr, error, space, space)
CALL check("h5dread_f", error, total_error)
@@ -3321,7 +3321,7 @@ SUBROUTINE t_enum_conv(total_error)
CALL h5dwrite_f(dset, dtype, f_ptr, error, space, space)
CALL check("h5dwrite_f", error, total_error)
- ! Test reading back the data with no conversion
+ ! Test reading back the data with no conversion
f_ptr = C_LOC(data_double(1))
CALL h5dread_f(dset, m_baset, f_ptr, error, space, space)
CALL check("h5dread_f", error, total_error)
@@ -3349,7 +3349,7 @@ SUBROUTINE t_enum_conv(total_error)
CALL h5dwrite_f(dset, dtype, f_ptr, error, space, space)
CALL check("h5dwrite_f", error, total_error)
- ! Test reading back the data with no conversion
+ ! Test reading back the data with no conversion
f_ptr = C_LOC(data_r7(1))
CALL h5dread_f(dset, m_baset, f_ptr, error, space, space)
CALL check("h5dread_f", error, total_error)
@@ -3372,13 +3372,13 @@ SUBROUTINE t_enum_conv(total_error)
m_baset = h5kind_to_type(KIND(data_i16(1)), H5_INTEGER_KIND) ! Memory base type
CALL h5dcreate_f(cwg, "color_table5", m_baset, space, dset, error)
CALL check("h5dcreate_f", error, total_error)
-
+
! Write the enum data
f_ptr = C_LOC(data1(1))
CALL h5dwrite_f(dset, dtype, f_ptr, error, space, space)
CALL check("h5dwrite_f", error, total_error)
- ! Test reading back the data with no conversion
+ ! Test reading back the data with no conversion
f_ptr = C_LOC(data_i16(1))
CALL h5dread_f(dset, m_baset, f_ptr, error, space, space)
CALL check("h5dread_f", error, total_error)
diff --git a/fortran/test/tH5VL.F90 b/fortran/test/tH5VL.F90
index 7ef9c19..2269fec 100644
--- a/fortran/test/tH5VL.F90
+++ b/fortran/test/tH5VL.F90
@@ -15,13 +15,13 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
!
! CONTAINS SUBROUTINES
-! vl_test_integer, vl_test_real, vl_test_string
+! vl_test_integer, vl_test_real, vl_test_string
!
!*****
@@ -119,7 +119,7 @@ CONTAINS
- !
+ !
! End access to the dataset and release resources used by it.
!
CALL h5dclose_f(dset_id, error)
diff --git a/fortran/test/tH5Z.F90 b/fortran/test/tH5Z.F90
index 0fd7b1b..0eaa941 100644
--- a/fortran/test/tH5Z.F90
+++ b/fortran/test/tH5Z.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tHDF5.F90 b/fortran/test/tHDF5.F90
index 459b74f..db829af 100644
--- a/fortran/test/tHDF5.F90
+++ b/fortran/test/tHDF5.F90
@@ -18,7 +18,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tHDF5_1_8.F90 b/fortran/test/tHDF5_1_8.F90
index 7e1f862..fb5d98e 100644
--- a/fortran/test/tHDF5_1_8.F90
+++ b/fortran/test/tHDF5_1_8.F90
@@ -19,7 +19,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tHDF5_F03.F90 b/fortran/test/tHDF5_F03.F90
index 96959d8..6d318ea 100644
--- a/fortran/test/tHDF5_F03.F90
+++ b/fortran/test/tHDF5_F03.F90
@@ -7,7 +7,7 @@
! src/fortran/test/tHDF5_F03.f90
!
! PURPOSE
-! This is the test module used for testing the Fortran2003 HDF
+! This is the test module used for testing the Fortran2003 HDF
! library APIS.
!
! COPYRIGHT
@@ -19,7 +19,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/fortran/test/tf.F90 b/fortran/test/tf.F90
index 4df53bd..b2cb746 100644
--- a/fortran/test/tf.F90
+++ b/fortran/test/tf.F90
@@ -15,7 +15,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -79,7 +79,7 @@ CONTAINS
CHARACTER(LEN=8), PARAMETER :: success = ' PASSED '
CHARACTER(LEN=8), PARAMETER :: failure = '*FAILED*'
CHARACTER(LEN=8), PARAMETER :: skip = '--SKIP--'
-
+
error_string = failure
IF (test_result == 0) THEN
@@ -167,7 +167,7 @@ CONTAINS
full_namelen = LEN(full_name)
hdferr = h5_fixname_c(base_name, base_namelen, fapl, &
full_name, full_namelen)
-
+
END SUBROUTINE h5_fixname_f
!----------------------------------------------------------------------
@@ -200,7 +200,7 @@ CONTAINS
CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name
INTEGER, INTENT(OUT) :: hdferr ! Error code
INTEGER(HID_T), INTENT(IN) :: fapl ! file access property list
-
+
INTEGER(SIZE_T) :: base_namelen ! Length of the base name character string
INTERFACE
@@ -215,10 +215,10 @@ CONTAINS
INTEGER(HID_T), INTENT(IN) :: fapl
END FUNCTION h5_cleanup_c
END INTERFACE
-
+
base_namelen = LEN(base_name)
hdferr = h5_cleanup_c(base_name, base_namelen, fapl)
-
+
END SUBROUTINE h5_cleanup_f
!----------------------------------------------------------------------
@@ -258,7 +258,7 @@ CONTAINS
INTEGER, INTENT(IN) :: status
END SUBROUTINE h5_exit_c
END INTERFACE
-
+
CALL h5_exit_c(status)
END SUBROUTINE h5_exit_f
@@ -287,7 +287,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(OUT) :: HDF5_NOCLEANUP ! Return code
INTEGER :: status
-
+
INTERFACE
SUBROUTINE h5_env_nocleanup_c(status)
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
@@ -296,12 +296,12 @@ CONTAINS
INTEGER :: status
END SUBROUTINE h5_env_nocleanup_c
END INTERFACE
-
+
CALL h5_env_nocleanup_c(status)
-
+
HDF5_NOCLEANUP = .FALSE.
IF(status.EQ.1) HDF5_NOCLEANUP = .TRUE.
-
+
END SUBROUTINE h5_env_nocleanup_f
! ---------------------------------------------------------------------------------------------------
@@ -310,11 +310,11 @@ CONTAINS
! NOTES
! (1) The Sun/Oracle compiler has the following restrictions on the SIZEOF intrinsic function:
!
-! "The SIZEOF intrinsic cannot be applied to arrays of an assumed size, characters of a
-! length that is passed, or subroutine calls or names. SIZEOF returns default INTEGER*4 data.
-! If compiling for a 64-bit environment, the compiler will issue a warning if the result overflows
-! the INTEGER*4 data range. To use SIZEOF in a 64-bit environment with arrays larger
-! than the INTEGER*4 limit (2 Gbytes), the SIZEOF function and
+! "The SIZEOF intrinsic cannot be applied to arrays of an assumed size, characters of a
+! length that is passed, or subroutine calls or names. SIZEOF returns default INTEGER*4 data.
+! If compiling for a 64-bit environment, the compiler will issue a warning if the result overflows
+! the INTEGER*4 data range. To use SIZEOF in a 64-bit environment with arrays larger
+! than the INTEGER*4 limit (2 Gbytes), the SIZEOF function and
! the variables receiving the result must be declared INTEGER*8."
!
! Thus, we can not overload the H5_SIZEOF function to handle arrays (as used in tH5P_F03.f90), or
diff --git a/fortran/test/vol_connector.F90 b/fortran/test/vol_connector.F90
index d346737..cf4c703 100644
--- a/fortran/test/vol_connector.F90
+++ b/fortran/test/vol_connector.F90
@@ -18,7 +18,7 @@
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the COPYING file, which can be found at the root of the source code *
-! distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -68,7 +68,7 @@ CONTAINS
! Register the connector by name
CALL H5VLregister_connector_by_name_f(NATIVE_VOL_CONNECTOR_NAME, vol_id, error)
CALL check("H5VLregister_connector_by_name_f",error,total_error)
-
+
! The connector should be registered now
CALL H5VLis_connector_registered_by_name_f(NATIVE_VOL_CONNECTOR_NAME, is_registered, error)
CALL check("H5VLis_connector_registered_by_name_f",error,total_error)
@@ -174,7 +174,7 @@ CONTAINS
CALL H5VLregister_connector_by_name_f(NATIVE_VOL_CONNECTOR_NAME, vol_id, error)
CALL check("H5VLregister_connector_by_name_f",error,total_error)
-
+
! The connector should be registered now
CALL H5VLis_connector_registered_by_name_f(NATIVE_VOL_CONNECTOR_NAME, is_registered, error)
CALL check("H5VLis_connector_registered_by_name_f",error,total_error)
@@ -195,7 +195,7 @@ CONTAINS
f_ptr = C_NULL_PTR
CALL H5Pset_vol_f(fapl_id, vol_id, error, f_ptr)
CALL check("H5Pset_vol_f",error,total_error)
-
+
CALL H5Pget_vol_id_f(fapl_id, vol_id_out, error)
CALL check("H5Pget_vol_id_f",error,total_error)
CALL VERIFY("H5Pget_vol_id_f", vol_id_out, vol_id, total_error)
@@ -275,7 +275,7 @@ PROGRAM vol_connector
WRITE(*, fmt = '(I4)', advance='NO') total_error
WRITE(*, fmt = '(A)' ) ' error(s) ! '
WRITE(*,'(18X,A)') '============================================'
-
+
CALL h5close_f(error)
! if errors detected, exit with non-zero code.