summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt15
-rw-r--r--c++/src/H5DataType.cpp2
-rw-r--r--c++/src/H5DataType.h11
-rw-r--r--c++/src/H5IntType.cpp2
-rw-r--r--c++/src/H5Location.cpp44
-rw-r--r--c++/src/H5Location.h5
-rw-r--r--c++/test/dsets.cpp70
-rw-r--r--c++/test/h5cpputil.cpp9
-rw-r--r--c++/test/tarray.cpp58
-rw-r--r--c++/test/tattr.cpp320
-rw-r--r--c++/test/tcompound.cpp36
-rw-r--r--c++/test/tdspl.cpp22
-rw-r--r--c++/test/tfile.cpp49
-rw-r--r--c++/test/tfilter.cpp33
-rw-r--r--c++/test/th5s.cpp38
-rw-r--r--c++/test/titerate.cpp59
-rw-r--r--c++/test/tlinks.cpp20
-rw-r--r--c++/test/tobject.cpp57
-rw-r--r--c++/test/trefer.cpp116
-rw-r--r--c++/test/ttypes.cpp51
-rw-r--r--c++/test/tvlstr.cpp64
-rw-r--r--fortran/examples/CMakeLists.txt6
-rw-r--r--fortran/examples/CMakeTests.cmake8
-rw-r--r--fortran/src/CMakeLists.txt14
-rw-r--r--fortran/src/H5_ff.F90531
-rw-r--r--fortran/src/H5f90global.F90948
-rw-r--r--fortran/test/CMakeLists.txt20
-rw-r--r--fortran/test/CMakeTests.cmake2
-rw-r--r--hl/fortran/src/CMakeLists.txt14
-rw-r--r--hl/fortran/src/H5DSff.F9065
-rw-r--r--hl/fortran/test/CMakeLists.txt8
-rw-r--r--hl/fortran/test/CMakeTests.cmake2
-rw-r--r--release_docs/INSTALL_CMake.txt1
-rw-r--r--src/H5.c24
-rw-r--r--src/H5Fint.c2
-rw-r--r--src/H5Fmount.c7
-rw-r--r--src/H5Fpkg.h25
-rw-r--r--src/H5Fquery.c8
-rw-r--r--src/H5Pprivate.h12
-rw-r--r--src/hdf5.h52
-rw-r--r--test/h5test.c107
41 files changed, 1524 insertions, 1413 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f2640b1..e22ac2e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -849,21 +849,8 @@ set (H5_FC_FUNC "H5_FC_FUNC(name,NAME) name ## _")
set (H5_FC_FUNC_ "H5_FC_FUNC_(name,NAME) name ## _")
if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/fortran")
option (HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF)
- option (SKIP_HDF5_FORTRAN_SHARED "Do not build the fortran shared libraries" OFF)
if (HDF5_BUILD_FORTRAN)
- if (BUILD_SHARED_LIBS AND APPLE)
- # Tell cmake to do the right thing with COMMON symbols, this fixes
- # corrupt values with COMMON and EQUIVALENCE when building shared
- # Fortran libraries on OSX with gnu and Intel compilers (HDFFV-2772).
- # *** NOTE: Fix does not work with Cmake. ***
- # set (HDF5_LINKER_FLAGS "-Wl,-commons,use_dylibs")
- if (NOT ALLOW_UNSUPPORTED)
- message (STATUS " **** Shared FORTRAN libraries are unsupported **** ")
- set (SKIP_HDF5_FORTRAN_SHARED ON)
- else ()
- message (STATUS " **** Allowing unsupported Fortran shared libraries **** ")
- endif ()
- endif ()
+
option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON)
include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake)
diff --git a/c++/src/H5DataType.cpp b/c++/src/H5DataType.cpp
index d2bfbda..444a77a 100644
--- a/c++/src/H5DataType.cpp
+++ b/c++/src/H5DataType.cpp
@@ -899,7 +899,7 @@ hid_t DataType::p_opentype(const H5Location& loc, const char *dtype_name) const
// Call C function to open the named datatype at this location
hid_t ret_value = H5Topen2(loc.getId(), dtype_name, H5P_DEFAULT);
if (ret_value < 0)
- throw DataTypeIException("DataType constructor", "H5Topen2 failed");
+ throw DataTypeIException(inMemFunc("constructor"), "H5Topen2 failed");
return(ret_value);
}
diff --git a/c++/src/H5DataType.h b/c++/src/H5DataType.h
index 5b8f924..906ccef 100644
--- a/c++/src/H5DataType.h
+++ b/c++/src/H5DataType.h
@@ -36,6 +36,10 @@ class H5_DLLCPP DataType : public H5Object {
// Creates a copy of a predefined type
DataType(const PredType& pred_type);
+ // Constructors to open a generic named datatype at a given location.
+ DataType(const H5Location& loc, const char* name);
+ DataType(const H5Location& loc, const H5std_string& name);
+
// Creates a datatype by way of dereference.
DataType(const H5Location& loc, const void* ref, H5R_type_t ref_type = H5R_OBJECT, const PropList& plist = PropList::DEFAULT);
// DataType(const Attribute& attr, const void* ref, H5R_type_t ref_type = H5R_OBJECT, const PropList& plist = PropList::DEFAULT);
@@ -124,13 +128,6 @@ class H5_DLLCPP DataType : public H5Object {
///\brief Returns this class name.
virtual H5std_string fromClass () const { return("DataType"); }
-// From CommonFG then H5Location
- // Constructors to open a generic named datatype at a given location.
- DataType(const H5Location& loc, const char* name);
- DataType(const H5Location& loc, const H5std_string& name);
-
-// End of From CommonFG then H5Location
-
// Creates a copy of an existing DataType using its id
DataType(const hid_t type_id);
diff --git a/c++/src/H5IntType.cpp b/c++/src/H5IntType.cpp
index ef4e1a9..f68e858 100644
--- a/c++/src/H5IntType.cpp
+++ b/c++/src/H5IntType.cpp
@@ -117,7 +117,7 @@ IntType::IntType(const H5Location& loc, const char *dtype_name) : AtomType()
// Programmer Binh-Minh Ribler - Dec 2016
// Description
// In 1.10.1, this constructor was introduced and may replace the
-// existing function CommonFG::openArrayType(const H5std_string&)
+// existing function CommonFG::openIntType(const H5std_string&)
// to improve usability.
// -BMR, Dec 2016
//--------------------------------------------------------------------------
diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp
index a00e181..d0b5f9d 100644
--- a/c++/src/H5Location.cpp
+++ b/c++/src/H5Location.cpp
@@ -76,15 +76,15 @@ H5Location::H5Location() : IdComponent() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
-// Function: H5Location::exists
+// Function: H5Location::nameExists
///\brief Checks if a link of a given name exists in a location
///\param name - IN: Searched name
///\param lapl - IN: Link access property list
///\exception H5::LocationException
-// Programmer Binh-Minh Ribler - Nov, 2016
// Modification
+// Renamed from exists() in 1.10.2 -BMR
//--------------------------------------------------------------------------
-bool H5Location::exists(const char* name, const LinkAccPropList& lapl) const
+bool H5Location::nameExists(const char* name, const LinkAccPropList& lapl) const
{
htri_t ret_value = H5Lexists(getId(), name, lapl.getId());
if (ret_value > 0)
@@ -93,22 +93,54 @@ bool H5Location::exists(const char* name, const LinkAccPropList& lapl) const
return false;
else // Raise exception when H5Lexists returns a negative value
{
- throw LocationException(inMemFunc("exists"), "H5Lexists failed");
+ throw LocationException(inMemFunc("nameExists"), "H5Lexists failed");
}
}
//--------------------------------------------------------------------------
-// Function: H5Location::exists
+// Function: H5Location::nameExists
///\brief Checks if a link of a given name exists in a location
///\param name - IN: Searched name
///\param lapl - IN: Link access property list
///\exception H5::LocationException
+// Modification
+// Renamed from exists() in 1.10.2 -BMR
+//--------------------------------------------------------------------------
+bool H5Location::nameExists(const H5std_string& name, const LinkAccPropList& lapl) const
+{
+ return(nameExists(name.c_str(), lapl));
+}
+
+//--------------------------------------------------------------------------
+// Function: H5Location::exists - Deprecated
+// Purpose Checks if a link of a given name exists in a location
+///\brief Deprecated in favor of nameExists
+///\param name - IN: Searched name
+///\param lapl - IN: Link access property list
+///\exception H5::LocationException
+// Programmer Binh-Minh Ribler - Nov, 2016
+// Modification
+// Renamed to nameExists() in 1.10.2 -BMR
+//--------------------------------------------------------------------------
+bool H5Location::exists(const char* name, const LinkAccPropList& lapl) const
+{
+ return(nameExists(name, lapl));
+}
+
+//--------------------------------------------------------------------------
+// Function: H5Location::exists - Deprecated
+// Purpose Checks if a link of a given name exists in a location
+///\brief Deprecated in favor of nameExists
+///\param name - IN: Searched name
+///\param lapl - IN: Link access property list
+///\exception H5::LocationException
// Programmer Binh-Minh Ribler - Dec, 2016
// Modification
+// Renamed to nameExists() in 1.10.2 -BMR
//--------------------------------------------------------------------------
bool H5Location::exists(const H5std_string& name, const LinkAccPropList& lapl) const
{
- return(exists(name.c_str(), lapl));
+ return(nameExists(name.c_str(), lapl));
}
//--------------------------------------------------------------------------
diff --git a/c++/src/H5Location.h b/c++/src/H5Location.h
index 2631169..e5fbc84 100644
--- a/c++/src/H5Location.h
+++ b/c++/src/H5Location.h
@@ -31,6 +31,11 @@ namespace H5 {
class H5_DLLCPP H5Location : public IdComponent {
public:
// Checks if a link of a given name exists in a location
+ bool nameExists(const char* name, const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
+ bool nameExists(const H5std_string& name, const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
+
+ // Checks if a link of a given name exists in a location
+ // Deprecated in favor of nameExists for better name.
bool exists(const char* name, const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
bool exists(const H5std_string& name, const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
diff --git a/c++/test/dsets.cpp b/c++/test/dsets.cpp
index a765fb1..250ce90 100644
--- a/c++/test/dsets.cpp
+++ b/c++/test/dsets.cpp
@@ -66,13 +66,9 @@ static size_t filter_bogus(unsigned int flags, size_t cd_nelmts,
*
* Programmer Binh-Minh Ribler (using C version)
* Friday, January 5, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_create( H5File& file)
+static herr_t test_create( H5File& file)
{
SUBTEST("Create, open, close");
@@ -198,13 +194,9 @@ test_create( H5File& file)
*
* Programmer Binh-Minh Ribler (using C version)
* Friday, January 5, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_simple_io( H5File& file)
+static herr_t test_simple_io( H5File& file)
{
SUBTEST("Simple I/O");
@@ -284,13 +276,9 @@ test_simple_io( H5File& file)
*
* Programmer Binh-Minh Ribler
* Thursday, March 22, 2012
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_datasize(FileAccPropList &fapl)
+static herr_t test_datasize(FileAccPropList &fapl)
{
SUBTEST("DataSet::getInMemDataSize()");
try
@@ -354,13 +342,9 @@ test_datasize(FileAccPropList &fapl)
*
* Programmer Binh-Minh Ribler (using C version)
* Friday, January 5, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_tconv(H5File& file)
+static herr_t test_tconv(H5File& file)
{
// Prepare buffers for input/output
char *out=NULL, *in=NULL;
@@ -437,6 +421,7 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
(H5Z_func_t)filter_bogus, /* The actual filter function */
}};
+
/*-------------------------------------------------------------------------
* Function: bogus
*
@@ -448,13 +433,9 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
*
* Programmer Robb Matzke
* Tuesday, April 21, 1998
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static size_t
-filter_bogus(unsigned int flags, size_t cd_nelmts,
+static size_t filter_bogus(unsigned int flags, size_t cd_nelmts,
const unsigned int cd_values[], size_t nbytes,
size_t *buf_size, void **buf)
// H5_ATTR_UNUSED variables caused warning, but taking them out caused failure.
@@ -477,13 +458,9 @@ filter_bogus(unsigned int flags, size_t cd_nelmts,
*
* Programmer Binh-Minh Ribler (using C version)
* Friday, January 5, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_compression(H5File& file)
+static herr_t test_compression(H5File& file)
{
#ifndef H5_HAVE_FILTER_DEFLATE
const char *not_supported;
@@ -764,9 +741,10 @@ test_compression(H5File& file)
*
*-------------------------------------------------------------------------
*/
-const H5std_string DSET_NBIT_NAME("nbit_dataset");
+const H5std_string DSET_NBIT_NAME("nbit_dataset");
const hsize_t DIM1 = 2;
const hsize_t DIM2 = 5;
+
static herr_t test_nbit_compression(H5File& file)
{
typedef struct {
@@ -880,13 +858,9 @@ static herr_t test_nbit_compression(H5File& file)
*
* Programmer Binh-Minh Ribler (using C version)
* Saturday, February 17, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_multiopen (H5File& file)
+static herr_t test_multiopen (H5File& file)
{
SUBTEST("Multi-open with extending");
@@ -963,13 +937,9 @@ test_multiopen (H5File& file)
*
* Programmer Binh-Minh Ribler (using C version)
* February 17, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-static herr_t
-test_types(H5File& file)
+static herr_t test_types(H5File& file)
{
SUBTEST("Various datatypes");
@@ -1148,23 +1118,21 @@ test_types(H5File& file)
/*-------------------------------------------------------------------------
* Function: test_virtual
*
- * Purpose: Tests fixed, unlimited, and printf selections in the same
+ * Purpose Tests fixed, unlimited, and printf selections in the same
* VDS
*
- * Return: Success: 0
+ * Return Success: 0
*
* Failure: number of errors
*
- * Programmer: Binh-Minh Ribler
+ * Programmer Binh-Minh Ribler
* Friday, March 10, 2017
*
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const int RANK = 2;
-static herr_t
-test_virtual()
+
+static herr_t test_virtual()
{
SUBTEST("DSetCreatPropList::setVirtual");
@@ -1293,17 +1261,15 @@ void test_dset()
cleanup_dsets();
} // test_dset
+
/*-------------------------------------------------------------------------
* Function: cleanup_dsets
*
* Purpose Cleanup temporary test files
*
- * Return none
+ * Return None
*
* Programmer (use C version)
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/h5cpputil.cpp b/c++/test/h5cpputil.cpp
index f0c403c..f271eed 100644
--- a/c++/test/h5cpputil.cpp
+++ b/c++/test/h5cpputil.cpp
@@ -47,9 +47,6 @@ using namespace H5;
*
* Programmer Binh-Minh Ribler (using C code segment for reporting tests)
* Friday, February 6, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
int test_report( int nerrors, const H5std_string& testname )
@@ -135,9 +132,6 @@ void issue_fail_msg(const char* where, int line, const char* file_name,
*
* Programmer Binh-Minh Ribler (using C code segment for checking values)
* Friday, February 6, 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
int check_values (hsize_t i, hsize_t j, int apoint, int acheck)
@@ -191,9 +185,6 @@ void check_values(const char *value, const char* msg, int line, const char* file
*
* Programmer Binh-Minh Ribler
* May 2, 2010
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
void verify_val(const char* x, const char* value, const char* where, int line, const char* file_name)
diff --git a/c++/test/tarray.cpp b/c++/test/tarray.cpp
index a1de9c5..6bd4ca6 100644
--- a/c++/test/tarray.cpp
+++ b/c++/test/tarray.cpp
@@ -53,13 +53,10 @@ typedef enum int_t {
*
* Purpose Tests 1-D array of compound datatypes (with array fields)
*
- * Return None.
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* January, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_array_compound_array()
@@ -280,35 +277,33 @@ static void test_array_compound_array()
} // end test_array_compound_array()
+/*
+ * Helper routine to demonstrate the issue in HDFFV-9562
+ */
+H5::DataType getArr()
+{
+ hsize_t *dims = new hsize_t;
+ *dims = 5;
+ H5::ArrayType ret;
+ ret = H5::ArrayType(H5::PredType::NATIVE_INT, 1, dims);
+ delete[] dims;
+ return ret;
+}
+
/*-------------------------------------------------------------------------
* Function: test_array_assignment
*
* Purpose Tests the operator=
*
- * Return None.
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* March, 2016
*
* Description:
* Used user's sample code in HDFFV-9562
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-/*
- * Helper routine to demonstrate the issue in HDFFV-9562
- */
-H5::DataType getArr()
-{
- hsize_t *dims = new hsize_t;
- *dims = 5;
- H5::ArrayType ret;
- ret = H5::ArrayType(H5::PredType::NATIVE_INT, 1, dims);
- delete[] dims;
- return ret; }
-
static void test_array_assignment()
{
hsize_t sdims1[] = {SPACE1_DIM1};
@@ -359,13 +354,10 @@ static void test_array_assignment()
*
* Purpose Tests getting array information using the const methods.
*
- * Return None.
+ * Return None
*
* Programmer Binh-Minh Ribler
* April, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_array_info()
@@ -477,11 +469,14 @@ static void test_array_info()
} // end test_array_info()
-/****************************************************************
-**
-** test_array(): Main datatypes testing routine.
-**
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_array
+ *
+ * Purpose Main datatypes testing routine
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
extern "C"
void test_array()
{
@@ -505,13 +500,10 @@ void test_array()
*
* Purpose Cleanup temporary test files
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* January, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tattr.cpp b/c++/test/tattr.cpp
index d1a0d67..5aa4bf5 100644
--- a/c++/test/tattr.cpp
+++ b/c++/test/tattr.cpp
@@ -101,12 +101,15 @@ float attr_data5 = (float)-5.123; // Test data for 5th attribute
const H5std_string ATTR1A_NAME("Attr1_a");
int attr_data1a[ATTR1_DIM1]={256,11945,-22107};
-/****************************************************************
-**
-** test_attr_basic_write(): Test basic write attribute.
-** Tests integer attributes on both datasets and groups
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_basic_write
+ *
+ * Purpose Test basic write attribute on both datasets and groups.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_basic_write()
{
hsize_t dims1[] = {SPACE1_DIM1, SPACE1_DIM2, SPACE1_DIM3};
@@ -233,29 +236,34 @@ static void test_attr_basic_write()
}
} // test_attr_basic_write()
-/****************************************************************
-**
-** test_attr_getname(): Test getting attribute name functions.
-**
-** Test these functions:
-** A. ssize_t Attribute::getName(char* attr_name, size_t buf_size)
-** 1. With arbitrary buf_size that is larger than the name size
-** 2. With arbitrary buf_size that is smaller than the name's length.
-** 3. With a buf_size that equals the name's length.
-**
-** B. ssize_t Attribute::getName(H5std_string& attr_name, size_t buf_size)
-** 1. With buffer smaller than the actual name
-** 2. Same test but with retiring overloaded function
-** ssize_t Attribute::getName(size_t buf_size, H5std_string& attr_name)
-**
-** C. H5std_string Attribute::getName()
-**
-** D. H5std_string Attribute::getName(size_t len)
-**
-** E. ssize_t Attribute::getName(H5std_string& attr_name, size_t buf_size)
-** With buffer size equals the name's length, i.e., buf_size=0
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_getname
+ *
+ * Purpose Test getting attribute name.
+ *
+ * Description
+ * Test these functions:
+ * A. ssize_t Attribute::getName(char* attr_name, size_t buf_size)
+ * 1. With arbitrary buf_size that is larger than the name size
+ * 2. With arbitrary buf_size that is smaller than the name's length.
+ * 3. With a buf_size that equals the name's length.
+ *
+ * B. ssize_t Attribute::getName(H5std_string& attr_name, size_t buf_size)
+ * 1. With buffer smaller than the actual name
+ * 2. Same test but with retiring overloaded function
+ * ssize_t Attribute::getName(size_t buf_size, H5std_string& attr_name)
+ *
+ * C. H5std_string Attribute::getName()
+ *
+ * D. H5std_string Attribute::getName(size_t len)
+ *
+ * E. ssize_t Attribute::getName(H5std_string& attr_name, size_t buf_size)
+ * With buffer size equals the name's length, i.e., buf_size=0
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_getname()
{
// Output message about test being performed
@@ -368,11 +376,15 @@ static void test_attr_getname()
}
} // test_attr_getname()
-/****************************************************************
-**
-** test_attr_rename(): Test renaming attribute function.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_rename
+ *
+ * Purpose Test renaming attribute function.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_rename()
{
int read_data1[ATTR1_DIM1]={0}; // Buffer for reading the attribute
@@ -479,11 +491,15 @@ static void test_attr_rename()
}
} // test_attr_rename()
-/********************************************************************
-**
-** test_attr_basic_read(): Test basic read attribute.
-**
-********************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_basic_read
+ *
+ * Purpose Test basic read attribute.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_basic_read()
{
hsize_t i, j;
@@ -548,11 +564,15 @@ static void test_attr_basic_read()
}
} // test_attr_basic_read()
-/****************************************************************
-**
-** test_attr_compound_write(): Tests compound datatype attributes
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_compound_write
+ *
+ * Purpose Test writing attributes with compound datatype.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_compound_write()
{
@@ -608,11 +628,15 @@ static void test_attr_compound_write()
}
} // test_attr_compound_write()
-/****************************************************************
-**
-** test_attr_compound_read(): Test basic H5A (attribute) code.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_compound_read
+ *
+ * Purpose Test reading attributes with compound datatype.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_compound_read()
{
hsize_t dims[ATTR_MAX_DIMS]; // Attribute dimensions
@@ -760,11 +784,15 @@ static void test_attr_compound_read()
}
} // test_attr_compound_read()
-/****************************************************************
-**
-** test_attr_scalar_write(): Test scalar attribute writing functionality.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_scalar_write
+ *
+ * Purpose Test scalar attribute writing functionality.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_scalar_write()
{
// Output message about test being performed
@@ -815,11 +843,15 @@ static void test_attr_scalar_write()
}
} // test_attr_scalar_write()
-/****************************************************************
-**
-** test_attr_scalar_read(): Test scalar attribute reading functionality.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_scalar_read
+ *
+ * Purpose Test scalar attribute reading functionality.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
/* Epsilon for floating-point comparisons */
#define FP_EPSILON 0.000001F
@@ -864,11 +896,15 @@ static void test_attr_scalar_read()
}
} // test_attr_scalar_read()
-/****************************************************************
-**
-** test_attr_mult_write(): Test multiple attributes
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_mult_write
+ *
+ * Purpose Test writing multiple attributes.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_mult_write()
{
// Output message about test being performed
@@ -937,11 +973,15 @@ static void test_attr_mult_write()
}
} // test_attr_mult_write()
-/****************************************************************
-**
-** test_attr_mult_read(): Test reading multiple attributes.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_mult_read
+ *
+ * Purpose Test reading multiple attributes.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_mult_read()
{
int read_data1[ATTR1_DIM1]={0}; // Buffer for reading 1st attribute
@@ -1128,12 +1168,15 @@ static void test_attr_mult_read()
}
} // test_attr_mult_read()
-/****************************************************************
-**
-** test_attr_delete(): Test deleting attribute from different
-** hdf5 objects.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_delete
+ *
+ * Purpose Test deleting attribute from different hdf5 objects.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_delete()
{
H5std_string attr_name; // Buffer for attribute names
@@ -1245,20 +1288,23 @@ static void test_attr_delete()
}
} // test_attr_delete()
-/****************************************************************
-**
-** test_attr_dtype_shared(): Test code for using shared datatypes
-** in attributes.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_dtype_shared
+ *
+ * Purpose Test accessing attributes using shared datatypes.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_dtype_shared()
{
- int data=8; /* Data to write */
- int rdata=0; /* Read read in */
+ int data=8; // Data to write
+ int rdata=0; // Data read in
#ifndef H5_NO_DEPRECATED_SYMBOLS
- H5G_stat_t statbuf; /* Object's information */
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
- h5_stat_size_t filesize; /* Size of file after modifications */
+ H5G_stat_t statbuf; // Object's information
+#endif
+ h5_stat_size_t filesize; // Size of file after modifications
// Output message about test being performed
SUBTEST("Shared Datatypes with Attributes");
@@ -1294,7 +1340,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 1, "DataType::getObjinfo", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Create dataspace for dataset
DataSpace dspace;
@@ -1305,7 +1351,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 2, "H5File::getObjinfo", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Create attribute on dataset
Attribute attr = dset.createAttribute(ATTR1_NAME,dtype,dspace);
@@ -1314,7 +1360,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 3, "DataSet::getObjinfo", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Close attribute
attr.close();
@@ -1326,7 +1372,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 2, "DataSet::getObjinfo after DataSet::removeAttr", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Create attribute on dataset
attr = dset.createAttribute(ATTR1_NAME,dtype,dspace);
@@ -1335,7 +1381,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 3, "DataSet::createAttribute", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Write data into the attribute
attr.write(PredType::NATIVE_INT,&data);
@@ -1372,7 +1418,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 3, "DataSet::openAttribute", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
} // end of second enclosing
// Unlink the dataset
@@ -1382,7 +1428,7 @@ static void test_attr_dtype_shared()
// Check reference count on named datatype
fid1.getObjinfo(TYPE1_NAME, statbuf);
verify_val((int)statbuf.nlink, 1, "H5File::unlink", __LINE__, __FILE__);
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif
// Unlink the named datatype
fid1.unlink(TYPE1_NAME);
@@ -1403,12 +1449,15 @@ static void test_attr_dtype_shared()
}
} // test_attr_dtype_shared()
-/****************************************************************
-**
-** test_string_attr(): Test read/write string attribute.
-** Tests string attributes on groups.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_string_attr
+ *
+ * Purpose Test read/write string attribute.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
/* Info for a string attribute */
const H5std_string ATTR1_FL_STR_NAME("String_attr 1");
const H5std_string ATTR2_FL_STR_NAME("String_attr 2");
@@ -1528,12 +1577,18 @@ static void test_string_attr()
}
} // test_string_attr()
-/****************************************************************
-**
-** test_attr_exists(): Test checking for attribute existence.
-** (additional attrExists tests are in test_attr_rename())
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_exists
+ *
+ * Purpose Test checking for attribute existence.
+ *
+ * Return None
+ *
+ * Note
+ * Additional attrExists tests are in test_attr_rename().
+ *-------------------------------------------------------------------------
+ */
static void test_attr_exists()
{
// Output message about test being performed
@@ -1577,12 +1632,15 @@ static void test_attr_exists()
}
} // test_attr_exists()
-/****************************************************************
-**
-** test_attr_dense_create(): Test phase change properties
-** Tests "dense" attribute storage creation
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_dense_create
+ *
+ * Purpose Test phase change properties
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
const H5std_string FILE_CRTPROPS("tattr_crt_properties.h5");
const int NAME_BUF_SIZE = 1024;
const unsigned MAX_COMPACT_DEF = 8;
@@ -1686,12 +1744,15 @@ static void test_attr_dense_create(FileCreatPropList& fcpl,
}
} // test_attr_dense_create()
-/****************************************************************
-**
-** test_attr_corder_create_basic(): Test creation order properties
-** Tests creating an object w/attribute creation order info
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr_corder_create_basic
+ *
+ * Purpose Test creation order properties
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
static void test_attr_corder_create_basic(FileCreatPropList& fcpl,
FileAccPropList& fapl)
{
@@ -1771,11 +1832,15 @@ static void test_attr_corder_create_basic(FileCreatPropList& fcpl,
}
} // test_attr_corder_create_basic()
-/****************************************************************
-**
-** test_attr(): Main attribute testing routine.
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_attr
+ *
+ * Purpose Main attribute testing routine
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
extern "C"
void test_attr()
{
@@ -1858,19 +1923,14 @@ void test_attr()
issue_fail_msg("test_attr()", __LINE__, __FILE__, E.getCDetailMsg());
}
} // test_attr()
+
/*-------------------------------------------------------------------------
- * Function cleanup_attr
+ * Function: cleanup_attr
*
* Purpose Cleanup temporary test files
*
- * Return none
- *
- * Programmer Albert Cheng
- * July 2, 1998
- *
- * Modifications:
- *
+ * Return None
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tcompound.cpp b/c++/test/tcompound.cpp
index 3af78c5..ec8adf0 100644
--- a/c++/test/tcompound.cpp
+++ b/c++/test/tcompound.cpp
@@ -49,9 +49,6 @@ typedef struct complex_t {
*
* Programmer Binh-Minh Ribler (using C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_1()
@@ -86,9 +83,6 @@ static void test_compound_1()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_2()
@@ -211,9 +205,6 @@ static void test_compound_2()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_3()
@@ -333,9 +324,6 @@ static void test_compound_3()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_4()
@@ -466,9 +454,6 @@ static void test_compound_4()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_5()
@@ -569,9 +554,6 @@ static void test_compound_5()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_6()
@@ -651,6 +633,7 @@ static void test_compound_6()
}
} // test_compound_6()
+
/*-------------------------------------------------------------------------
* Function: test_compound_7
*
@@ -661,9 +644,6 @@ static void test_compound_6()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_compound_7()
@@ -717,6 +697,7 @@ static void test_compound_7()
issue_fail_msg(E.getCFuncName(), __LINE__, __FILE__, E.getCDetailMsg());
}
} // test_compound_7()
+
/*-------------------------------------------------------------------------
* Function: test_compound_set_size
@@ -727,12 +708,10 @@ static void test_compound_7()
*
* Programmer Binh-Minh Ribler (use partial C version test_ooo_order)
* March, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const H5std_string COMPFILE("tcompound_types.h5");
+
static void test_compound_set_size()
{
typedef struct {
@@ -807,6 +786,7 @@ static void test_compound_set_size()
issue_fail_msg(E.getCFuncName(), __LINE__, __FILE__, E.getCDetailMsg());
}
} // test_compound_set_size()
+
/*-------------------------------------------------------------------------
* Function: test_compound
@@ -817,9 +797,6 @@ static void test_compound_set_size()
*
* Programmer Binh-Minh Ribler
* January 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
@@ -844,10 +821,7 @@ void test_compound()
*
* Purpose Cleanup temporary test files - nothing at this time.
*
- * Return none
- *
- * Modifications:
- *
+ * Return None
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tdspl.cpp b/c++/test/tdspl.cpp
index 4aaa93a..438f385 100644
--- a/c++/test/tdspl.cpp
+++ b/c++/test/tdspl.cpp
@@ -111,11 +111,14 @@ static void test_transfplist()
}
-/****************************************************************
-**
-** test_dsproplist(): Main dataset property list testing routine.
-**
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_dsproplist
+ *
+ * Purpose Main dataset property list testing routine
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
extern "C"
void test_dsproplist()
{
@@ -126,6 +129,15 @@ void test_dsproplist()
} // test_dsproplist()
+
+/*-------------------------------------------------------------------------
+ * Function: cleanup_dsproplist
+ *
+ * Purpose Cleanup temporary test files
+ *
+ * Return none
+ *-------------------------------------------------------------------------
+ */
extern "C"
void cleanup_dsproplist()
{
diff --git a/c++/test/tfile.cpp b/c++/test/tfile.cpp
index 51682a3..ba5b486 100644
--- a/c++/test/tfile.cpp
+++ b/c++/test/tfile.cpp
@@ -78,7 +78,6 @@ const H5std_string FILE4("tfile4.h5");
* passed to verify_val to 'long' as well. If problems
* arises later, this will have to be specificly handled
* with a special routine.
- *
*-------------------------------------------------------------------------
*/
static void test_file_create()
@@ -285,7 +284,6 @@ static void test_file_create()
* passed to verify_val to 'long' as well. If problems
* arises later, this will have to be specificly handled
* with a special routine.
- *
*-------------------------------------------------------------------------
*/
static void test_file_open()
@@ -360,9 +358,6 @@ static void test_file_open()
*
* Programmer Raymond Lu
* June, 2004
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_file_size()
@@ -425,9 +420,6 @@ static void test_file_size()
*
* Programmer Binh-Minh Ribler
* July, 2004
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const int RANK = 2;
@@ -507,6 +499,15 @@ static void test_file_name()
} // test_file_name()
+/*-------------------------------------------------------------------------
+ *
+ * Function: test_file_attribute
+ *
+ * Purpose Test file attributes
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
const int RANK1 = 1;
const int ATTR1_DIM1 = 3;
const H5std_string FILE5("tfattrs.h5");
@@ -618,11 +619,6 @@ static void test_file_attribute()
} // test_file_attribute()
-const H5std_string FILE6("tfile5.h5");
-const H5std_string ROOTGROUP("/");
-const H5std_string GROUP1("/G1");
-const H5std_string SUBGROUP3("/G1/G3");
-
/*-------------------------------------------------------------------------
* Function: test_libver_bounds_real
*
@@ -634,9 +630,13 @@ const H5std_string SUBGROUP3("/G1/G3");
*
* Programmer Binh-Minh Ribler (use C version)
* March, 2015
- *
*-------------------------------------------------------------------------
*/
+const H5std_string FILE6("tfile5.h5");
+const H5std_string ROOTGROUP("/");
+const H5std_string GROUP1("/G1");
+const H5std_string SUBGROUP3("/G1/G3");
+
static void test_libver_bounds_real(
H5F_libver_t libver_create, unsigned oh_vers_create,
H5F_libver_t libver_mod, unsigned oh_vers_mod)
@@ -707,6 +707,7 @@ static void test_libver_bounds_real(
} /* end test_libver_bounds_real() */
+
/*-------------------------------------------------------------------------
*
* Function: test_libver_bounds
@@ -718,7 +719,6 @@ static void test_libver_bounds_real(
*
* Programmer Binh-Minh Ribler (use C version)
* March 2015
- *
*-------------------------------------------------------------------------
*/
static void test_libver_bounds()
@@ -731,9 +731,10 @@ static void test_libver_bounds()
test_libver_bounds_real(H5F_LIBVER_LATEST, H5O_VERSION_2, H5F_LIBVER_EARLIEST, H5O_VERSION_2);
PASSED();
} /* end test_libver_bounds() */
+
/*-------------------------------------------------------------------------
- * Function: test_commonfg
+ * Function: test_commonfg
*
* Purpose Verify that H5File works as a root group.
*
@@ -741,7 +742,6 @@ static void test_libver_bounds()
*
* Programmer Binh-Minh Ribler (use C version)
* March, 2015
- *
*-------------------------------------------------------------------------
*/
static void test_commonfg()
@@ -793,9 +793,8 @@ static void test_commonfg()
}
} /* end test_commonfg() */
-
-const H5std_string FILE7("tfile7.h5");
+
/*-------------------------------------------------------------------------
* Function: test_file_info
*
@@ -807,11 +806,12 @@ const H5std_string FILE7("tfile7.h5");
*
* Programmer Binh-Minh Ribler
* February, 2017
- *
*-------------------------------------------------------------------------
*/
+const H5std_string FILE7("tfile7.h5");
const hsize_t FSP_SIZE_DEF = 4096;
const hsize_t FSP_SIZE512 = 512;
+
static void test_file_info()
{
// Output message about test being performed
@@ -932,6 +932,7 @@ static void test_file_info()
issue_fail_msg("test_filespace_info()", __LINE__, __FILE__, E.getCDetailMsg());
}
} /* test_file_info() */
+
/*-------------------------------------------------------------------------
* Function: test_file
@@ -942,9 +943,6 @@ static void test_file_info()
*
* Programmer Binh-Minh Ribler (use C version)
* January 2001
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
@@ -970,11 +968,6 @@ void test_file()
* Purpose Cleanup temporary test files
*
* Return none
- *
- * Programmer (use C version)
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
#ifdef __cplusplus
diff --git a/c++/test/tfilter.cpp b/c++/test/tfilter.cpp
index 5de6590..5a493ac 100644
--- a/c++/test/tfilter.cpp
+++ b/c++/test/tfilter.cpp
@@ -65,6 +65,7 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
(H5Z_func_t)filter_bogus, /* The actual filter function */
}};
+
/*-------------------------------------------------------------------------
* Function: filter_bogus
*
@@ -76,9 +77,6 @@ const H5Z_class2_t H5Z_BOGUS[1] = {{
*
* Programmer Robb Matzke
* Tuesday, April 21, 1998
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static size_t
@@ -92,6 +90,7 @@ filter_bogus(size_t nbytes)
return nbytes;
}
+
/*-------------------------------------------------------------------------
* Function: test_null_filter
*
@@ -104,11 +103,8 @@ filter_bogus(size_t nbytes)
*
* Modifications:
* Note: H5Z interface is not implemented yet.
- *
*-------------------------------------------------------------------------
*/
-
-// Chunk dimensions
const hsize_t chunk_size[2] = {FILTER_CHUNK_DIM1, FILTER_CHUNK_DIM2};
static void test_null_filter()
@@ -144,6 +140,7 @@ static void test_null_filter()
}
} // test_null_filter
+
/*-------------------------------------------------------------------------
* Function: test_szip_filter
*
@@ -156,11 +153,9 @@ static void test_null_filter()
*
* Modifications:
* Note: H5Z interface is not implemented yet.
- *
*-------------------------------------------------------------------------
*/
-
-const H5std_string DSET_SZIP_NAME("szipped dataset");
+const H5std_string DSET_SZIP_NAME("szipped dataset");
static void test_szip_filter(H5File& file1)
{
@@ -242,11 +237,14 @@ static void test_szip_filter(H5File& file1)
} // test_szip_filter
-/****************************************************************
-**
-** test_filters(): Main routine for testing filters.
-**
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_filters
+ *
+ * Purpose Main routine for testing filters
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
const H5std_string FILE1("tfilters.h5");
extern "C"
void test_filters()
@@ -274,18 +272,13 @@ void test_filters()
}
} // test_filters()
+
/*-------------------------------------------------------------------------
* Function: cleanup_filters
*
* Purpose Cleanup temporary test files
*
* Return none
- *
- * Programmer Quincey Koziol
- * September 10, 1999
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/th5s.cpp b/c++/test/th5s.cpp
index e99ce99..9c92b64 100644
--- a/c++/test/th5s.cpp
+++ b/c++/test/th5s.cpp
@@ -82,13 +82,13 @@ struct space4_struct {
/* Null dataspace */
int space5_data = 7;
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_basic
*
* Purpose Test basic H5S (dataspace) code
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
@@ -214,13 +214,13 @@ static void test_h5s_basic()
}
} // test_h5s_basic()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_scalar_write
*
* Purpose Test scalar H5S (dataspace) writing code
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
@@ -278,13 +278,13 @@ static void test_h5s_scalar_write()
}
} // test_h5s_scalar_write()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_scalar_read
*
* Purpose Test scalar H5S (dataspace) reading code
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
@@ -340,13 +340,13 @@ static void test_h5s_scalar_read()
} // test_h5s_scalar_read()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_null
*
* Purpose Test null H5S (dataspace) code
*
- * Return none
+ * Return None
*
* Programmer Raymond Lu (using C version)
* May 18, 2004
@@ -394,14 +394,14 @@ static void test_h5s_null()
}
} // test_h5s_null()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_compound_scalar_write
*
* Purpose Test scalar H5S (dataspace) writing for compound
* datatypes
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
@@ -467,14 +467,14 @@ static void test_h5s_compound_scalar_write()
}
} // test_h5s_compound_scalar_write()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s_compound_scalar_read
*
* Purpose Test scalar H5S (dataspace) reading for compound
* datatypes
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
@@ -541,18 +541,16 @@ static void test_h5s_compound_scalar_read()
}
} // test_h5s_compound_scalar_read()
+
/*-------------------------------------------------------------------------
- *
* Function: test_h5s
*
* Purpose Main dataspace testing routine
*
- * Return none
+ * Return None
*
* Programmer Binh-Minh Ribler (using C version)
* Mar 2001
- *
- * Modifications:
*-------------------------------------------------------------------------
*/
extern "C"
@@ -575,13 +573,7 @@ void test_h5s()
*
* Purpose Cleanup temporary test files
*
- * Return none
- *
- * Programmer Albert Cheng
- * July 2, 1998
- *
- * Modifications:
- *
+ * Return None
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/titerate.cpp b/c++/test/titerate.cpp
index 5c760f3..e77ebcc 100644
--- a/c++/test/titerate.cpp
+++ b/c++/test/titerate.cpp
@@ -78,23 +78,25 @@ typedef struct {
int iter_strcmp(const void *s1, const void *s2);
-/****************************************************************
-**
-** iter_strcmp(): String comparison routine for qsort
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: iter_strcmp
+ *
+ * Purpose String comparison routine for qsort
+ *-------------------------------------------------------------------------
+ */
int iter_strcmp(const void *s1, const void *s2)
{
return(HDstrcmp(*(const char * const *)s1,*(const char * const *)s2));
}
-/****************************************************************
-**
-** liter_cb(): Custom link iteration callback routine.
-**
-****************************************************************/
-static herr_t
-liter_cb(hid_t H5_ATTR_UNUSED group, const char *name, const H5L_info_t H5_ATTR_UNUSED *link_info, void *op_data)
+/*-------------------------------------------------------------------------
+ * Function: liter_cb
+ *
+ * Purpose Custom link iteration callback routine
+ *-------------------------------------------------------------------------
+ */
+static herr_t liter_cb(hid_t H5_ATTR_UNUSED group, const char *name, const H5L_info_t H5_ATTR_UNUSED *link_info, void *op_data)
{
iter_info *info = (iter_info *)op_data;
static int count = 0;
@@ -123,6 +125,7 @@ liter_cb(hid_t H5_ATTR_UNUSED group, const char *name, const H5L_info_t H5_ATTR_
} /* end switch */
} /* end liter_cb() */
+
/*-------------------------------------------------------------------------
* Function: test_iter_group
*
@@ -133,9 +136,6 @@ liter_cb(hid_t H5_ATTR_UNUSED group, const char *name, const H5L_info_t H5_ATTR_
*
* Programmer Binh-Minh Ribler
* Friday, September 9, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_iter_group(FileAccPropList& fapl)
@@ -348,13 +348,13 @@ static void test_iter_group(FileAccPropList& fapl)
#endif
} /* test_iter_group() */
-
-/****************************************************************
-**
-** printelems(): Open an attribute and verify that it has a
-** the correct name
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: printelems
+ *
+ * Purpose Open an attribute and verify that it has a the correct name
+ *-------------------------------------------------------------------------
+ */
const H5std_string FILE_NAME("titerate.h5");
const H5std_string GRP_NAME("/Group_A");
const H5std_string FDATASET_NAME("file dset");
@@ -386,6 +386,7 @@ void printelems(const Group& group, const H5std_string& dsname, const H5std_stri
}
}
+
/*-------------------------------------------------------------------------
* Function: test_HDFFV_9920
*
@@ -393,9 +394,6 @@ void printelems(const Group& group, const H5std_string& dsname, const H5std_stri
*
* Programmer Binh-Minh Ribler
* Friday, September 9, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_HDFFV_9920()
@@ -444,7 +442,7 @@ static void test_HDFFV_9920()
}
}
-
+
/*-------------------------------------------------------------------------
* Function: test_iterate
*
@@ -455,9 +453,6 @@ static void test_HDFFV_9920()
*
* Programmer Binh-Minh Ribler
* Tuesday, September 6, 2016
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
@@ -476,17 +471,13 @@ void test_iterate()
} // test_iterate
+
/*-------------------------------------------------------------------------
* Function: cleanup_iterate
*
* Purpose Cleanup temporary test files
*
* Return none
- *
- * Programmer (use C version)
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tlinks.cpp b/c++/test/tlinks.cpp
index dc592b3..e348d64 100644
--- a/c++/test/tlinks.cpp
+++ b/c++/test/tlinks.cpp
@@ -328,9 +328,6 @@ static const char *FILENAME[] = {
*
* Programmer Binh-Minh Ribler
* October 16, 2009
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_basic_links(hid_t fapl_id, hbool_t new_format)
@@ -414,6 +411,11 @@ static void test_basic_links(hid_t fapl_id, hbool_t new_format)
H5File file(filename, H5F_ACC_RDWR, FileCreatPropList::DEFAULT, fapl);
// Verify link existence
+ if(file.nameExists("dset1", LinkAccPropList::DEFAULT) != TRUE)
+ throw InvalidActionException("H5File::nameExists", "dset1 doesn't exist");
+ if(file.nameExists("grp1/soft", LinkAccPropList::DEFAULT) != TRUE)
+ throw InvalidActionException("H5File::nameExists", "grp1/soft doesn't exist");
+ // Deprecated
if(file.exists("dset1", LinkAccPropList::DEFAULT) != TRUE)
throw InvalidActionException("H5File::exists", "dset1 doesn't exist");
if(file.exists("grp1/soft", LinkAccPropList::DEFAULT) != TRUE)
@@ -446,9 +448,6 @@ static void test_basic_links(hid_t fapl_id, hbool_t new_format)
*
* Programmer Binh-Minh Ribler
* October 16, 2009
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_num_links(hid_t fapl_id, hbool_t new_format)
@@ -483,6 +482,7 @@ static void test_num_links(hid_t fapl_id, hbool_t new_format)
issue_fail_msg("test_num_links()", __LINE__, __FILE__, E.getCDetailMsg());
}
} // test_num_links
+
/*-------------------------------------------------------------------------
* Function: test_links
@@ -493,7 +493,6 @@ static void test_num_links(hid_t fapl_id, hbool_t new_format)
*
* Programmer Binh-Minh Ribler
* October 16, 2009
- *
*-------------------------------------------------------------------------
*/
extern "C"
@@ -671,18 +670,13 @@ void test_links()
}
+
/*-------------------------------------------------------------------------
* Function: cleanup_links
*
* Purpose Cleanup temporary test files
*
* Return none
- *
- * Programmer Binh-Minh Ribler
- * October 16, 2009
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tobject.cpp b/c++/test/tobject.cpp
index d9f4075..9980ce0 100644
--- a/c++/test/tobject.cpp
+++ b/c++/test/tobject.cpp
@@ -45,6 +45,7 @@ const H5std_string DSET_IN_GRP1_PATH("/Top Group/Dataset_in_Group_1");
const H5std_string DSET_IN_GRP1_2("Dataset_in_Group_1.2");
const H5std_string DSET_IN_GRP1_2_PATH("/Top Group/Sub-Group 1.2/Dataset_in_Group_1.2");
+
/*-------------------------------------------------------------------------
* Function: test_get_objname
*
@@ -65,9 +66,6 @@ const H5std_string DSET_IN_GRP1_2_PATH("/Top Group/Sub-Group 1.2/Dataset_
*
* Programmer Binh-Minh Ribler
* Friday, March 4, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_get_objname()
@@ -153,6 +151,7 @@ static void test_get_objname()
}
} // test_get_objname
+
/*-------------------------------------------------------------------------
* Function: test_existance
*
@@ -173,9 +172,6 @@ static void test_get_objname()
*
* Programmer Binh-Minh Ribler
* Friday, March 4, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_existance()
@@ -187,18 +183,30 @@ static void test_existance()
H5File file(FILE_OBJECTS, H5F_ACC_RDONLY);
// Check if GROUP1 exists in the file
- bool exists = file.exists(GROUP1);
+ bool exists = file.nameExists(GROUP1);
+ verify_val(exists, TRUE, "Group::nameExists GROUP1_1", __LINE__, __FILE__);
+ // Deprecated
+ exists = file.exists(GROUP1);
+ verify_val(exists, TRUE, "Group::exists GROUP1_1", __LINE__, __FILE__);
// Open GROUP1
Group grp1 = file.openGroup(GROUP1);
// Check if GROUP1_1 and GROUP1_2 exist in GROUP1
+ exists = grp1.nameExists(GROUP1_1);
+ verify_val(exists, TRUE, "Group::nameExists GROUP1_1", __LINE__, __FILE__);
+ exists = grp1.nameExists(GROUP1_2);
+ verify_val(exists, TRUE, "Group::nameExists GROUP1_2", __LINE__, __FILE__);
+ // Deprecated
exists = grp1.exists(GROUP1_1);
verify_val(exists, TRUE, "Group::exists GROUP1_1", __LINE__, __FILE__);
exists = grp1.exists(GROUP1_2);
verify_val(exists, TRUE, "Group::exists GROUP1_2", __LINE__, __FILE__);
// Check if DSET_IN_GRP1 exists in GROUP1
+ exists = grp1.nameExists(DSET_IN_GRP1);
+ verify_val(exists, TRUE, "Group::nameExists DSET_IN_GRP1", __LINE__, __FILE__);
+ // Deprecated
exists = grp1.exists(DSET_IN_GRP1);
verify_val(exists, TRUE, "Group::exists DSET_IN_GRP1", __LINE__, __FILE__);
@@ -206,14 +214,22 @@ static void test_existance()
Group grp1_2 = grp1.openGroup(GROUP1_2);
// Check if DSET_IN_GRP1_2 exists in GROUP1_2
+ exists = grp1_2.nameExists(DSET_IN_GRP1_2);
+ verify_val(exists, TRUE, "Group::nameExists DSET_IN_GRP1_2", __LINE__, __FILE__);
+ // Deprecated
exists = grp1_2.exists(DSET_IN_GRP1_2);
verify_val(exists, TRUE, "Group::exists DSET_IN_GRP1_2", __LINE__, __FILE__);
// Check if a dataset exists given dataset as location with full path name
DataSet dset1 = file.openDataSet(DSET_IN_FILE);
+ exists = dset1.nameExists("/Top Group/Dataset_in_Group_1");
+ verify_val(exists, TRUE, "Group::nameExists given dataset with full path name", __LINE__, __FILE__);
+
+ exists = grp1_2.nameExists(DSET_IN_GRP1);
+ verify_val(exists, FALSE, "Group::nameExists DSET_IN_GRP1", __LINE__, __FILE__);
+ // Deprecated
exists = dset1.exists("/Top Group/Dataset_in_Group_1");
verify_val(exists, TRUE, "Group::exists given dataset with full path name", __LINE__, __FILE__);
-
exists = grp1_2.exists(DSET_IN_GRP1);
verify_val(exists, FALSE, "Group::exists DSET_IN_GRP1", __LINE__, __FILE__);
@@ -229,6 +245,7 @@ static void test_existance()
}
} // test_existance
+
/*-------------------------------------------------------------------------
* Function: test_get_objname_ontypes
*
@@ -239,9 +256,6 @@ static void test_existance()
*
* Programmer Binh-Minh Ribler
* March 4, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_get_objname_ontypes()
@@ -330,6 +344,7 @@ static void test_get_objname_ontypes()
}
} // test_get_objname_ontypes
+
/*-------------------------------------------------------------------------
* Function: test_get_objtype
*
@@ -340,9 +355,6 @@ static void test_get_objname_ontypes()
*
* Programmer Binh-Minh Ribler
* Friday, March 4, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_get_objtype()
@@ -394,6 +406,7 @@ static void test_get_objtype()
issue_fail_msg("test_get_objtype", __LINE__, __FILE__);
}
} // test_get_objtype
+
/*-------------------------------------------------------------------------
* Function: test_open_object_header
@@ -404,9 +417,6 @@ static void test_get_objtype()
*
* Programmer Binh-Minh Ribler (use C version)
* March, 2017
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const H5std_string GROUPNAME("group");
@@ -416,6 +426,7 @@ const H5std_string DSETNAME("dataset");
#define RANK 2
#define DIM0 5
#define DIM1 10
+
static void test_open_object_header()
{
hsize_t dims[2];
@@ -513,6 +524,7 @@ static void test_open_object_header()
issue_fail_msg("test_file_name()", __LINE__, __FILE__, E.getCDetailMsg());
}
} /* test_open_object_header() */
+
/*-------------------------------------------------------------------------
* Function: test_objects
@@ -524,9 +536,6 @@ static void test_open_object_header()
*
* Programmer Binh-Minh Ribler
* Friday, Mar 4, 2014
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
@@ -543,17 +552,13 @@ void test_object()
} // test_objects
+
/*-------------------------------------------------------------------------
* Function: cleanup_objects
*
* Purpose Cleanup temporary test files
*
- * Return none
- *
- * Programmer (use C version)
- *
- * Modifications:
- *
+ * Return None
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/trefer.cpp b/c++/test/trefer.cpp
index 9074154..bb09616 100644
--- a/c++/test/trefer.cpp
+++ b/c++/test/trefer.cpp
@@ -61,14 +61,16 @@ typedef struct s1_t {
float c;
} s1_t;
-/****************************************************************
-**
-** test_reference_params(): Test basic H5R (reference) parameters
-** for correct processing
-**
-****************************************************************/
-static void
-test_reference_params(void)
+
+/*-------------------------------------------------------------------------
+ * Function: test_reference_params
+ *
+ * Purpose Test basic H5R (reference) parameters for correct processing
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
+static void test_reference_params()
{
const char *write_comment = "Foo!"; /* Comments for group */
@@ -177,13 +179,17 @@ test_reference_params(void)
delete file1;
} /* test_reference_param() */
-/****************************************************************
-**
-** test_reference_obj(): Test basic object reference functions
-** to various kinds of objects
-**
-****************************************************************/
-static void test_reference_obj(void)
+
+/*-------------------------------------------------------------------------
+ * Function: test_reference_obj
+ *
+ * Purpose Test basic object reference functions to various kinds
+ * of objects
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
+static void test_reference_obj()
{
int i; // counting variables
const H5std_string write_comment="Foo!"; // Comments for group
@@ -369,14 +375,15 @@ static void test_reference_obj(void)
delete file1;
} // test_reference_obj()
-
-/****************************************************************
-**
-** test_reference_group(): Test object reference functionality
-** Tests for correct behavior of various routines on
-** dereferenced group
-**
-****************************************************************/
+
+/*-------------------------------------------------------------------------
+ * Function: test_reference_group
+ *
+ * Purpose Test object reference functionality on group.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
#define GROUPNAME "/group"
#define GROUPNAME2 "group2"
#define GROUPNAME3 "group3"
@@ -384,8 +391,7 @@ static void test_reference_obj(void)
#define DSETNAME2 "dset2"
#define NAME_SIZE 16
-static void
-test_reference_group(void)
+static void test_reference_group()
{
hobj_ref_t wref; /* Reference to write */
hobj_ref_t rref; /* Reference to read */
@@ -498,14 +504,16 @@ test_reference_group(void)
delete file1;
} /* test_reference_group() */
-/****************************************************************
-**
-** test_reference_region_1D(): Test 1-D reference functionality
-** Tests 1-D references to various kinds of objects
-**
-****************************************************************/
-static void
-test_reference_region_1D(void)
+
+/*-------------------------------------------------------------------------
+ * Function: test_reference_region_1D
+ *
+ * Purpose Test 1-D reference functionality on various kinds of objects.
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
+static void test_reference_region_1D()
{
hsize_t start[SPACE3_RANK]; /* Starting location of hyperslab */
hsize_t stride[SPACE3_RANK]; /* Stride of hyperslab */
@@ -787,26 +795,14 @@ test_reference_region_1D(void)
}
} /* test_reference_region_1D() */
-
-/****************************************************************
-**
-** test_reference_compat(): Test basic object reference functionality.
-** Tests references to various kinds of objects using deprecated API.
-**
-****************************************************************/
-static void test_reference_compat(void)
-{
- // Not yet
-} // test_reference_compat()
-
-
-/****************************************************************
-**
-** test_reference(): Main reference testing routine.
-**
-****************************************************************/
+/*-------------------------------------------------------------------------
+ *
+ * test_reference(): Main reference testing routine.
+ *
+ *-------------------------------------------------------------------------
+ */
extern "C"
-void test_reference(void)
+void test_reference()
{
// Output message about test being performed
MESSAGE(5, ("Testing References\n"));
@@ -815,18 +811,20 @@ void test_reference(void)
test_reference_obj(); // Test basic object reference functionality
test_reference_group(); // Test group reference functionality
test_reference_region_1D(); // Test 1-D reference functionality
- test_reference_compat(); // Tests deprecated reference routines (not yet)
} // test_reference()
-/****************************************************************
-** Function: cleanup_reference
-** Purpose Cleanup temporary test files
-** Return none
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: cleanup_reference
+ *
+ * Purpose Cleanup temporary test files
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
extern "C"
-void cleanup_reference(void)
+void cleanup_reference()
{
HDremove(FILE1.c_str());
HDremove(FILE2.c_str());
diff --git a/c++/test/ttypes.cpp b/c++/test/ttypes.cpp
index 3cf0920..a2bd561 100644
--- a/c++/test/ttypes.cpp
+++ b/c++/test/ttypes.cpp
@@ -87,6 +87,7 @@ typedef struct {
long c;
double d;
} src_typ_t;
+
/*-------------------------------------------------------------------------
* Function: test_classes
@@ -97,9 +98,6 @@ typedef struct {
*
* Programmer Binh-Minh Ribler (using C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_classes()
@@ -126,6 +124,7 @@ static void test_classes()
issue_fail_msg("test_classes", __LINE__, __FILE__, E.getCDetailMsg());
}
}
+
/*-------------------------------------------------------------------------
* Function: test_copy
@@ -136,9 +135,6 @@ static void test_classes()
*
* Programmer Binh-Minh Ribler (using C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_copy()
@@ -192,9 +188,6 @@ static void test_copy()
*
* Programmer Binh-Minh Ribler (using C version)
* August, 2017
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
typedef struct { /* Struct with atomic fields */
@@ -390,9 +383,6 @@ static void test_detect_type_class()
*
* Programmer Binh-Minh Ribler (use C version)
* August, 2017
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
static void test_vltype()
@@ -465,12 +455,8 @@ static void test_vltype()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
-
const H5std_string CompT_NAME("Compound_type");
const H5std_string EnumT_NAME("Enum_type");
@@ -591,12 +577,10 @@ static void test_query()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const char* filename1 = "dtypes1.h5";
+
static void test_transient ()
{
static hsize_t ds_size[2] = {10, 20};
@@ -668,12 +652,10 @@ static void test_transient ()
*
* Programmer Binh-Minh Ribler (use C version)
* January, 2007
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const H5std_string filename2("dtypes2.h5");
+
static void test_named ()
{
static hsize_t ds_size[2] = {10, 20};
@@ -831,14 +813,12 @@ static void test_named ()
*
* Programmer Binh-Minh Ribler (using C version)
* August, 2017
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
const H5std_string filename3("encode_decode.h5");
const int ARRAY1_RANK = 1;
const int ARRAY1_DIM = 10;
+
static void test_encode_decode()
{
short enum_val;
@@ -1045,11 +1025,14 @@ static void test_encode_decode()
}
-/****************************************************************
-**
-** test_types(): Main datatypes testing routine.
-**
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_types
+ *
+ * Purpose Main datatypes testing routine
+ *
+ * Return None
+ *-------------------------------------------------------------------------
+ */
extern "C"
void test_types()
{
@@ -1074,13 +1057,7 @@ void test_types()
*
* Purpose Cleanup temporary test files
*
- * Return none
- *
- * Programmer Quincey Koziol
- * September 10, 1999
- *
- * Modifications:
- *
+ * Return None
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/c++/test/tvlstr.cpp b/c++/test/tvlstr.cpp
index d5fea07..2421a87 100644
--- a/c++/test/tvlstr.cpp
+++ b/c++/test/tvlstr.cpp
@@ -40,16 +40,22 @@ const H5std_string FILENAME("tvlstr.h5");
const int SPACE1_RANK = 1;
const hsize_t SPACE1_DIM1 = 4;
-/****************************************************************
-**
-** test_vlstr_alloc_custom(): Test VL datatype custom memory
-** allocation routines. This routine just uses malloc to
-** allocate the memory and increments the amount of memory
-** allocated. It is passed into setVlenMemManager.
-**
-** Note: exact copy from the C version.
-** (Not used now)
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_vlstr_alloc_custom
+ *
+ * Purpose Test VL datatype custom memory allocation routines.
+ *
+ * Return None
+ *
+ * Description
+ * This routine just uses malloc to allocate the memory and
+ * increments the amount of memory allocated. It is passed
+ * into setVlenMemManager.
+ *
+ * Note: exact copy from the C version.
+ * (Not used now)
+ *-------------------------------------------------------------------------
+ */
#if 0 // not used now
static void *test_vlstr_alloc_custom(size_t size, void *info)
{
@@ -74,16 +80,22 @@ static void *test_vlstr_alloc_custom(size_t size, void *info)
}
#endif
-/****************************************************************
-**
-** test_vlstr_free_custom(): Test VL datatype custom memory
-** allocation routines. This routine just uses free to
-** release the memory and decrements the amount of memory
-** allocated. It is passed into setVlenMemManager.
-**
-** Note: exact copy from the C version.
-** (Not used now)
-****************************************************************/
+/*-------------------------------------------------------------------------
+ * Function: test_vlstr_free_custom
+ *
+ * Purpose Test VL datatype custom memory de-allocation routines.
+ *
+ * Return None
+ *
+ * Description
+ * This routine just uses free to release the memory and
+ * decrements the amount of memory allocated. It is passed
+ * into setVlenMemManager.
+ *
+ * Note: exact copy from the C version.
+ * (Not used now)
+ *-------------------------------------------------------------------------
+ */
#if 0 // not used now
static void test_vlstr_free_custom(void *_mem, void *info)
{
@@ -221,6 +233,7 @@ static void test_vlstring_dataset()
*-------------------------------------------------------------------------
*/
const H5std_string DSSTRARR_NAME("StringArray_dset");
+
static void test_vlstring_array_dataset()
{
const char *string_ds_array[SPACE1_DIM1]= {
@@ -440,6 +453,7 @@ static void test_vlstrings_special()
*-------------------------------------------------------------------------
*/
const H5std_string VLSTR_TYPE("vl_string_type");
+
static void test_vlstring_type()
{
// Output message about test being performed.
@@ -608,10 +622,7 @@ static void test_compact_vlstring()
*
*-------------------------------------------------------------------------
*/
-// String for writing to attribute
static char *string_att_write=NULL;
-
-// Info for a string attribute
const H5std_string ATTRSTR_NAME("String_attr");
const H5std_string ATTRSTR_DATA("String Attribute");
@@ -877,6 +888,7 @@ static void read_scalar_dset(H5File& file, DataType& type, DataSpace& space,
*/
const H5std_string FILENAME2("tvlstr2.h5");
const int REWRITE_NDATASETS = 32;
+
static void test_vl_rewrite()
{
// Output message about test being performed
@@ -987,12 +999,6 @@ void test_vlstrings()
* Purpose Cleanup temporary test files
*
* Return none
- *
- * Programmer Quincey Koziol
- * September 10, 1999
- *
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
extern "C"
diff --git a/fortran/examples/CMakeLists.txt b/fortran/examples/CMakeLists.txt
index 426df7e..a05f296 100644
--- a/fortran/examples/CMakeLists.txt
+++ b/fortran/examples/CMakeLists.txt
@@ -52,7 +52,7 @@ foreach (example ${examples})
FOLDER examples/fortran
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
)
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
add_executable (f90_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
TARGET_NAMING (f90_ex_${example}-shared SHARED)
TARGET_FORTRAN_PROPERTIES (f90_ex_${example}-shared SHARED " " " ")
@@ -83,7 +83,7 @@ foreach (example ${F2003_examples})
FOLDER examples/fortran03
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
)
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
add_executable (f03_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
TARGET_NAMING (f03_ex_${example}-shared SHARED)
TARGET_FORTRAN_PROPERTIES (f03_ex_${example}-shared SHARED " " " ")
@@ -114,7 +114,7 @@ if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
FOLDER examples/fortran
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
)
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
add_executable (f90_ex_ph5example-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/ph5example.f90)
TARGET_NAMING (f90_ex_ph5example-shared SHARED)
TARGET_FORTRAN_PROPERTIES (f90_ex_ph5example-shared SHARED " " " ")
diff --git a/fortran/examples/CMakeTests.cmake b/fortran/examples/CMakeTests.cmake
index b130f30..c3d94b4 100644
--- a/fortran/examples/CMakeTests.cmake
+++ b/fortran/examples/CMakeTests.cmake
@@ -41,7 +41,7 @@
set_tests_properties (f90_ex-clear-objects PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "f90_ex-clear-objects")
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
add_test (
NAME f90_ex-shared-clear-objects
COMMAND ${CMAKE_COMMAND}
@@ -87,7 +87,7 @@ foreach (example ${examples})
set_tests_properties (f90_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "f90_ex_${example}")
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME f90_ex-shared_${example} COMMAND $<TARGET_FILE:f90_ex_${example}-shared>)
else ()
@@ -129,7 +129,7 @@ if (HDF5_ENABLE_F2003)
set_tests_properties (f03_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "f03_ex_${example}")
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME f03_ex-shared_${example} COMMAND $<TARGET_FILE:f03_ex_${example}-shared>)
else ()
@@ -154,7 +154,7 @@ endif ()
if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
add_test (NAME f90_ex_ph5example COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_PREFLAGS} $<TARGET_FILE:f90_ex_ph5example> ${MPIEXEC_POSTFLAGS})
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
add_test (NAME f90_ex-shared_ph5example COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_PREFLAGS} $<TARGET_FILE:f90_ex_ph5example> ${MPIEXEC_POSTFLAGS})
endif ()
endif ()
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
index e34c778..0f576d4 100644
--- a/fortran/src/CMakeLists.txt
+++ b/fortran/src/CMakeLists.txt
@@ -64,7 +64,7 @@ set_target_properties (H5_buildiface PROPERTIES
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
file (MAKE_DIRECTORY "${HDF5_F90_BINARY_DIR}/shared")
if (WIN32)
set (MODSH_BUILD_DIR ${CMAKE_Fortran_MODULE_DIRECTORY}/shared/${CMAKE_BUILD_TYPE})
@@ -136,7 +136,7 @@ set_target_properties (${HDF5_F90_C_LIB_TARGET} PROPERTIES
)
set (install_targets ${HDF5_F90_C_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_F90_C_LIBSH_TARGET} SHARED ${f90CStub_C_SOURCES} ${f90CStub_C_HDRS})
TARGET_C_PROPERTIES (${HDF5_F90_C_LIBSH_TARGET} SHARED " " " ")
target_link_libraries (${HDF5_F90_C_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
@@ -173,7 +173,7 @@ add_custom_target (H5gen ALL
)
set_source_files_properties (${HDF5_F90_BINARY_DIR}/H5_gen.F90 PROPERTIES GENERATED TRUE)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (CMDSH $<TARGET_FILE:H5_buildiface>)
add_custom_command (
OUTPUT ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90
@@ -220,7 +220,7 @@ set (f90_F_SOURCES
# normal distribution
${HDF5_F90_SRC_SOURCE_DIR}/HDF5.F90
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (f90_F_SOURCES_SHARED
# generated file
${HDF5_F90_BINARY_DIR}/H5fortran_types.F90
@@ -262,7 +262,7 @@ endif ()
set (install_targets ${install_targets} ${HDF5_F90_LIB_TARGET})
add_dependencies(${HDF5_F90_LIB_TARGET} H5gen)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_F90_LIBSH_TARGET} SHARED ${f90_F_SOURCES_SHARED})
set (SHARED_LINK_FLAGS " ")
if (WIN32 AND MSVC)
@@ -339,7 +339,7 @@ install (
fortheaders
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (modsh_files
${MODSH_BUILD_DIR}/h5fortran_types.mod
${MODSH_BUILD_DIR}/hdf5.mod
@@ -375,7 +375,7 @@ endif ()
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
if (HDF5_EXPORTED_TARGETS)
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
INSTALL_TARGET_PDB (${HDF5_F90_C_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} fortlibraries)
#INSTALL_TARGET_PDB (${HDF5_F90_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} fortlibraries)
endif ()
diff --git a/fortran/src/H5_ff.F90 b/fortran/src/H5_ff.F90
index ef89d2f..db57f03 100644
--- a/fortran/src/H5_ff.F90
+++ b/fortran/src/H5_ff.F90
@@ -38,10 +38,111 @@
MODULE H5LIB
- USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, C_INTPTR_T
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_INTPTR_T
USE H5GLOBAL
IMPLICIT NONE
+ PRIVATE
+ !
+ ! H5F flags declaration
+ !
+ INTEGER, PARAMETER :: H5F_FLAGS_LEN = 19
+ INTEGER, DIMENSION(1:H5F_FLAGS_LEN) :: H5F_flags
+ !
+ ! H5generic flags declaration
+ !
+ INTEGER, PARAMETER :: H5generic_FLAGS_LEN = 9
+ INTEGER, DIMENSION(1:H5generic_FLAGS_LEN) :: H5generic_flags
+
+ INTEGER, PARAMETER :: H5generic_haddr_FLAGS_LEN = 1
+ INTEGER(HADDR_T), DIMENSION(1:H5generic_haddr_FLAGS_LEN) :: H5generic_haddr_flags
+ !
+ ! H5G flags declaration
+ !
+ INTEGER, PARAMETER :: H5G_FLAGS_LEN = 12
+ INTEGER, DIMENSION(1:H5G_FLAGS_LEN) :: H5G_flags
+ !
+ ! H5D flags declaration
+ !
+ INTEGER, PARAMETER :: H5D_FLAGS_LEN = 29
+ INTEGER, DIMENSION(1:H5D_FLAGS_LEN) :: H5D_flags
+ INTEGER, PARAMETER :: H5D_SIZE_FLAGS_LEN = 2
+ INTEGER(SIZE_T), DIMENSION(1:H5D_SIZE_FLAGS_LEN) :: H5D_size_flags
+ !
+ ! H5E flags declaration
+ !
+ INTEGER, PARAMETER :: H5E_FLAGS_LEN = 4
+ INTEGER, DIMENSION(1:H5E_FLAGS_LEN) :: H5E_flags
+ INTEGER, PARAMETER :: H5E_HID_FLAGS_LEN = 1
+ INTEGER(HID_T), DIMENSION(1:H5E_HID_FLAGS_LEN) :: H5E_hid_flags
+ !
+ ! H5FD flags declaration
+ !
+ INTEGER, PARAMETER :: H5FD_FLAGS_LEN = 11
+ INTEGER, DIMENSION(1:H5FD_FLAGS_LEN) :: H5FD_flags
+ !
+ ! H5FD file drivers flags declaration
+ !
+ INTEGER, PARAMETER :: H5FD_HID_FLAGS_LEN = 7
+ INTEGER(HID_T), DIMENSION(1:H5FD_HID_FLAGS_LEN) :: H5FD_hid_flags
+ !
+ ! H5I flags declaration
+ !
+ INTEGER, PARAMETER :: H5I_FLAGS_LEN = 7
+ INTEGER, DIMENSION(1:H5I_FLAGS_LEN) :: H5I_flags
+ !
+ ! H5L flags declaration
+ !
+ INTEGER, PARAMETER :: H5L_FLAGS_LEN = 6
+ INTEGER, DIMENSION(1:H5L_FLAGS_LEN) :: H5L_flags
+ !
+ ! H5O flags declaration
+ !
+ INTEGER, PARAMETER :: H5O_FLAGS_LEN = 27
+ INTEGER, DIMENSION(1:H5O_FLAGS_LEN) :: H5o_flags
+ !
+ ! H5P flags declaration
+ !
+ INTEGER, PARAMETER :: H5P_FLAGS_LEN = 18
+ INTEGER(HID_T), DIMENSION(1:H5P_FLAGS_LEN) :: H5P_flags
+ !
+ ! H5P integers flags declaration
+ !
+ INTEGER, PARAMETER :: H5P_FLAGS_INT_LEN = 2
+ INTEGER, DIMENSION(1:H5P_FLAGS_INT_LEN) :: H5P_flags_int
+ !
+ ! H5R flags declaration
+ !
+ INTEGER, PARAMETER :: H5R_FLAGS_LEN = 2
+ INTEGER, DIMENSION(1:H5R_FLAGS_LEN) :: H5R_flags
+ !
+ ! H5S flags declaration
+ !
+ INTEGER, PARAMETER :: H5S_FLAGS_LEN = 18
+ INTEGER, DIMENSION(1:H5S_FLAGS_LEN) :: H5S_flags
+ INTEGER, PARAMETER :: H5S_HSIZE_FLAGS_LEN = 1
+ INTEGER(HSIZE_T), DIMENSION(1:H5S_HSIZE_FLAGS_LEN) :: H5S_hsize_flags
+ INTEGER, PARAMETER :: H5S_HID_FLAGS_LEN = 1
+ INTEGER(HSIZE_T), DIMENSION(1:H5S_HID_FLAGS_LEN) :: H5S_hid_flags
+ !
+ ! H5T flags declaration
+ !
+ INTEGER, PARAMETER :: H5T_FLAGS_LEN = 35
+ INTEGER, DIMENSION(1:H5T_FLAGS_LEN) :: H5T_flags
+ !
+ ! H5Z flags declaration
+ !
+ INTEGER, PARAMETER :: H5Z_FLAGS_LEN = 20
+ INTEGER, DIMENSION(1:H5Z_FLAGS_LEN) :: H5Z_flags
+ !
+ ! H5 Library flags declaration
+ !
+ INTEGER, PARAMETER :: H5LIB_FLAGS_LEN = 2
+ INTEGER, DIMENSION(1:H5LIB_FLAGS_LEN) :: H5LIB_flags
+
+ PUBLIC :: h5open_f, h5close_f, h5get_libversion_f, h5dont_atexit_f, h5kind_to_type, h5offsetof
+ PUBLIC :: h5garbage_collect_f, h5check_version_f
+
CONTAINS
!****s* H5LIB/h5open_f
!
@@ -65,26 +166,24 @@ CONTAINS
!
! Removed call to h5open_c since this may cause a problem for an
! application that uses HDF5 library outside HDF5 Fortran APIs.
-! October 13, 2011
+! October 13, 2011
! Fortran90 Interface:
SUBROUTINE h5open_f(error)
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
- INTEGER :: error_1, error_2, error_3
-
INTERFACE
+
INTEGER FUNCTION h5init_types_c(p_types, f_types, i_types) &
BIND(C,NAME='h5init_types_c')
IMPORT :: HID_T
IMPORT :: PREDEF_TYPES_LEN, FLOATING_TYPES_LEN, INTEGER_TYPES_LEN
IMPLICIT NONE
- INTEGER(HID_T), DIMENSION(PREDEF_TYPES_LEN) :: p_types
- INTEGER(HID_T), DIMENSION(FLOATING_TYPES_LEN) :: f_types
- INTEGER(HID_T), DIMENSION(INTEGER_TYPES_LEN) :: i_types
+ INTEGER(HID_T), DIMENSION(1:PREDEF_TYPES_LEN) :: p_types
+ INTEGER(HID_T), DIMENSION(1:FLOATING_TYPES_LEN) :: f_types
+ INTEGER(HID_T), DIMENSION(1:INTEGER_TYPES_LEN) :: i_types
END FUNCTION h5init_types_c
- END INTERFACE
- INTERFACE
+
INTEGER FUNCTION h5init_flags_c(i_H5D_flags, &
i_H5D_size_flags,&
i_H5E_flags, &
@@ -116,39 +215,90 @@ CONTAINS
H5R_FLAGS_LEN, H5S_FLAGS_LEN, H5S_HID_FLAGS_LEN, H5S_HSIZE_FLAGS_LEN, &
H5T_FLAGS_LEN, H5Z_FLAGS_LEN, H5generic_FLAGS_LEN, H5generic_haddr_FLAGS_LEN
IMPLICIT NONE
- INTEGER i_H5D_flags(H5D_FLAGS_LEN)
- INTEGER(SIZE_T) i_H5D_size_flags(H5D_SIZE_FLAGS_LEN)
- INTEGER i_H5E_flags(H5E_FLAGS_LEN)
- INTEGER(HID_T) i_H5E_hid_flags(H5E_HID_FLAGS_LEN)
- INTEGER i_H5F_flags(H5F_FLAGS_LEN)
- INTEGER i_H5G_flags(H5G_FLAGS_LEN)
- INTEGER i_H5FD_flags(H5FD_FLAGS_LEN)
- INTEGER(HID_T) i_H5FD_hid_flags(H5FD_HID_FLAGS_LEN)
- INTEGER i_H5I_flags(H5I_FLAGS_LEN)
- INTEGER i_H5L_flags(H5L_FLAGS_LEN)
- INTEGER i_H5O_flags(H5O_FLAGS_LEN)
- INTEGER(HID_T) i_H5P_flags(H5P_FLAGS_LEN)
- INTEGER i_H5P_flags_int(H5P_FLAGS_INT_LEN)
- INTEGER i_H5R_flags(H5R_FLAGS_LEN)
- INTEGER i_H5S_flags(H5S_FLAGS_LEN)
- INTEGER(HID_T) i_H5S_hid_flags(H5S_HID_FLAGS_LEN)
- INTEGER(HSIZE_T) i_H5S_hsize_flags(H5S_HSIZE_FLAGS_LEN)
- INTEGER i_H5T_flags(H5T_FLAGS_LEN)
- INTEGER i_H5Z_flags(H5Z_FLAGS_LEN)
- INTEGER i_H5generic_flags(H5generic_FLAGS_LEN)
- INTEGER(HADDR_T) i_H5generic_haddr_flags(H5generic_haddr_FLAGS_LEN)
+ INTEGER , DIMENSION(1:H5D_FLAGS_LEN) :: i_H5D_flags
+ INTEGER(SIZE_T) , DIMENSION(1:H5D_SIZE_FLAGS_LEN) :: i_H5D_size_flags
+ INTEGER , DIMENSION(1:H5E_FLAGS_LEN) :: i_H5E_flags
+ INTEGER(HID_T) , DIMENSION(1:H5E_HID_FLAGS_LEN) :: i_H5E_hid_flags
+ INTEGER , DIMENSION(1:H5F_FLAGS_LEN) :: i_H5F_flags
+ INTEGER , DIMENSION(1:H5G_FLAGS_LEN) :: i_H5G_flags
+ INTEGER , DIMENSION(1:H5FD_FLAGS_LEN) :: i_H5FD_flags
+ INTEGER(HID_T) , DIMENSION(1:H5FD_HID_FLAGS_LEN) :: i_H5FD_hid_flags
+ INTEGER , DIMENSION(1:H5I_FLAGS_LEN) :: i_H5I_flags
+ INTEGER , DIMENSION(1:H5L_FLAGS_LEN) :: i_H5L_flags
+ INTEGER , DIMENSION(1:H5O_FLAGS_LEN) :: i_H5O_flags
+ INTEGER(HID_T) , DIMENSION(1:H5P_FLAGS_LEN) :: i_H5P_flags
+ INTEGER , DIMENSION(1:H5P_FLAGS_INT_LEN) :: i_H5P_flags_int
+ INTEGER , DIMENSION(1:H5R_FLAGS_LEN) :: i_H5R_flags
+ INTEGER , DIMENSION(1:H5S_FLAGS_LEN) :: i_H5S_flags
+ INTEGER(HID_T) , DIMENSION(1:H5S_HID_FLAGS_LEN) :: i_H5S_hid_flags
+ INTEGER(HSIZE_T), DIMENSION(1:H5S_HSIZE_FLAGS_LEN) :: i_H5S_hsize_flags
+ INTEGER , DIMENSION(1:H5T_FLAGS_LEN) :: i_H5T_flags
+ INTEGER , DIMENSION(1:H5Z_FLAGS_LEN) :: i_H5Z_flags
+ INTEGER , DIMENSION(1:H5generic_FLAGS_LEN) :: i_H5generic_flags
+ INTEGER(HADDR_T), DIMENSION(1:H5generic_haddr_FLAGS_LEN) :: i_H5generic_haddr_flags
END FUNCTION h5init_flags_c
- END INTERFACE
- INTERFACE
+
INTEGER FUNCTION h5init1_flags_c( i_H5LIB_flags ) &
BIND(C,NAME='h5init1_flags_c')
IMPORT :: H5LIB_FLAGS_LEN
IMPLICIT NONE
- INTEGER i_H5LIB_flags(H5LIB_FLAGS_LEN)
+ INTEGER, DIMENSION(1:H5LIB_FLAGS_LEN) :: i_H5LIB_flags
END FUNCTION h5init1_flags_c
+
END INTERFACE
- error_1 = h5init_types_c(predef_types, floating_types, integer_types)
- error_2 = h5init_flags_c(H5D_flags, &
+
+ error = h5init_types_c(predef_types, floating_types, integer_types)
+
+ H5T_NATIVE_INTEGER_KIND(1:5) = predef_types(1:5)
+ H5T_NATIVE_INTEGER = predef_types(6)
+ H5T_NATIVE_REAL = predef_types(7)
+ H5T_NATIVE_DOUBLE = predef_types(8)
+ H5T_NATIVE_CHARACTER = predef_types(9)
+ H5T_STD_REF_OBJ = predef_types(10)
+ H5T_STD_REF_DSETREG = predef_types(11)
+ H5T_NATIVE_REAL_C_FLOAT = predef_types(12)
+ H5T_NATIVE_REAL_C_DOUBLE = predef_types(13)
+ H5T_NATIVE_REAL_C_LONG_DOUBLE = predef_types(14)
+ H5T_NATIVE_B8 = predef_types(15)
+ H5T_NATIVE_B16 = predef_types(16)
+ H5T_NATIVE_B32 = predef_types(17)
+ H5T_NATIVE_B64 = predef_types(18)
+ H5T_NATIVE_FLOAT_128 = predef_types(19)
+
+ H5T_IEEE_F32BE = floating_types(1)
+ H5T_IEEE_F32LE = floating_types(2)
+ H5T_IEEE_F64BE = floating_types(3)
+ H5T_IEEE_F64LE = floating_types(4)
+
+ H5T_STD_I8BE = integer_types(1)
+ H5T_STD_I8LE = integer_types(2)
+ H5T_STD_I16BE = integer_types(3)
+ H5T_STD_I16LE = integer_types(4)
+ H5T_STD_I32BE = integer_types(5)
+ H5T_STD_I32LE = integer_types(6)
+ H5T_STD_I64BE = integer_types(7)
+ H5T_STD_I64LE = integer_types(8)
+ H5T_STD_U8BE = integer_types(9)
+ H5T_STD_U8LE = integer_types(10)
+ H5T_STD_U16BE = integer_types(11)
+ H5T_STD_U16LE = integer_types(12)
+ H5T_STD_U32BE = integer_types(13)
+ H5T_STD_U32LE = integer_types(14)
+ H5T_STD_U64BE = integer_types(15)
+ H5T_STD_U64LE = integer_types(16)
+ H5T_STRING = integer_types(17)
+ H5T_STD_B8BE = integer_types(18)
+ H5T_STD_B8LE = integer_types(19)
+ H5T_STD_B16BE = integer_types(20)
+ H5T_STD_B16LE = integer_types(21)
+ H5T_STD_B32BE = integer_types(22)
+ H5T_STD_B32LE = integer_types(23)
+ H5T_STD_B64BE = integer_types(24)
+ H5T_STD_B64LE = integer_types(25)
+ H5T_FORTRAN_S1 = integer_types(26)
+ H5T_C_S1 = integer_types(27)
+
+ error = error + h5init_flags_c(H5D_flags, &
H5D_size_flags, &
H5E_flags, &
H5E_hid_flags, &
@@ -169,8 +319,299 @@ CONTAINS
H5Z_flags, &
H5generic_flags,&
H5generic_haddr_flags)
- error_3 = h5init1_flags_c(H5LIB_flags )
- error = error_1 + error_2 + error_3
+ !
+ ! H5F flags
+ !
+ H5F_ACC_RDWR_F = H5F_flags(1)
+ H5F_ACC_RDONLY_F = H5F_flags(2)
+ H5F_ACC_TRUNC_F = H5F_flags(3)
+ H5F_ACC_EXCL_F = H5F_flags(4)
+ H5F_ACC_DEBUG_F = H5F_flags(5)
+ H5F_SCOPE_LOCAL_F = H5F_flags(6)
+ H5F_SCOPE_GLOBAL_F = H5F_flags(7)
+ H5F_CLOSE_DEFAULT_F = H5F_flags(8)
+ H5F_CLOSE_WEAK_F = H5F_flags(9)
+ H5F_CLOSE_SEMI_F = H5F_flags(10)
+ H5F_CLOSE_STRONG_F = H5F_flags(11)
+ H5F_OBJ_FILE_F = H5F_flags(12)
+ H5F_OBJ_DATASET_F = H5F_flags(13)
+ H5F_OBJ_GROUP_F = H5F_flags(14)
+ H5F_OBJ_DATATYPE_F = H5F_flags(15)
+ H5F_OBJ_ALL_F = H5F_flags(16)
+ H5F_LIBVER_EARLIEST_F = H5F_flags(17)
+ H5F_LIBVER_LATEST_F = H5F_flags(18)
+ H5F_UNLIMITED_F = H5F_flags(19)
+ !
+ ! H5generic flags
+ !
+ H5_INDEX_UNKNOWN_F = H5generic_flags(1)
+ H5_INDEX_NAME_F = H5generic_flags(2)
+ H5_INDEX_CRT_ORDER_F = H5generic_flags(3)
+ H5_INDEX_N_F = H5generic_flags(4)
+ H5_ITER_UNKNOWN_F = H5generic_flags(5)
+ H5_ITER_INC_F = H5generic_flags(6)
+ H5_ITER_DEC_F = H5generic_flags(7)
+ H5_ITER_NATIVE_F = H5generic_flags(8)
+ H5_ITER_N_F = H5generic_flags(9)
+
+ HADDR_UNDEF_F = H5generic_haddr_flags(1)
+ !
+ ! H5G flags
+ !
+ H5G_UNKNOWN_F = H5G_flags(1)
+ H5G_GROUP_F = H5G_flags(2)
+ H5G_DATASET_F = H5G_flags(3)
+ H5G_TYPE_F = H5G_flags(4)
+ H5G_SAME_LOC_F = H5G_flags(5)
+ H5G_LINK_ERROR_F = H5G_flags(6)
+ H5G_LINK_HARD_F = H5G_flags(7)
+ H5G_LINK_SOFT_F = H5G_flags(8)
+ H5G_STORAGE_TYPE_UNKNOWN_F = H5G_flags(9)
+ H5G_STORAGE_TYPE_SYMBOL_TABLE_F = H5G_flags(10)
+ H5G_STORAGE_TYPE_COMPACT_F = H5G_flags(11)
+ H5G_STORAGE_TYPE_DENSE_F = H5G_flags(12)
+ !
+ ! H5D flags
+ !
+ H5D_COMPACT_F = H5D_flags(1)
+ H5D_CONTIGUOUS_F = H5D_flags(2)
+ H5D_CHUNKED_F = H5D_flags(3)
+ H5D_ALLOC_TIME_ERROR_F = H5D_flags(4)
+ H5D_ALLOC_TIME_DEFAULT_F = H5D_flags(5)
+ H5D_ALLOC_TIME_EARLY_F = H5D_flags(6)
+ H5D_ALLOC_TIME_LATE_F = H5D_flags(7)
+ H5D_ALLOC_TIME_INCR_F = H5D_flags(8)
+ H5D_SPACE_STS_ERROR_F = H5D_flags(9)
+ H5D_SPACE_STS_NOT_ALLOCATED_F = H5D_flags(10)
+ H5D_SPACE_STS_PART_ALLOCATED_F = H5D_flags(11)
+ H5D_SPACE_STS_ALLOCATED_F = H5D_flags(12)
+ H5D_FILL_TIME_ERROR_F = H5D_flags(13)
+ H5D_FILL_TIME_ALLOC_F = H5D_flags(14)
+ H5D_FILL_TIME_NEVER_F = H5D_flags(15)
+ H5D_FILL_VALUE_ERROR_F = H5D_flags(16)
+ H5D_FILL_VALUE_UNDEFINED_F = H5D_flags(17)
+ H5D_FILL_VALUE_DEFAULT_F = H5D_flags(18)
+ H5D_FILL_VALUE_USER_DEFINED_F = H5D_flags(19)
+ H5D_CHUNK_CACHE_W0_DFLT_F = H5D_flags(20)
+ H5D_MPIO_NO_COLLECTIVE_F = H5D_flags(21)
+ H5D_MPIO_CHUNK_INDEPENDENT_F = H5D_flags(22)
+ H5D_MPIO_CHUNK_COLLECTIVE_F = H5D_flags(23)
+ H5D_MPIO_CHUNK_MIXED_F = H5D_flags(24)
+ H5D_MPIO_CONTIG_COLLECTIVE_F = H5D_flags(25)
+ H5D_VDS_ERROR_F = H5D_flags(26)
+ H5D_VDS_FIRST_MISSING_F = H5D_flags(27)
+ H5D_VDS_LAST_AVAILABLE_F = H5D_flags(28)
+ H5D_VIRTUAL_F = H5D_flags(29)
+
+ H5D_CHUNK_CACHE_NSLOTS_DFLT_F = H5D_size_flags(1)
+ H5D_CHUNK_CACHE_NBYTES_DFLT_F = H5D_size_flags(2)
+ !
+ ! H5E flags
+ !
+ H5E_DEFAULT_F = H5E_hid_flags(1)
+
+ H5E_MAJOR_F = H5E_flags(1)
+ H5E_MINOR_F = H5E_flags(2)
+ H5E_WALK_UPWARD_F = H5E_flags(3)
+ H5E_WALK_DOWNWARD_F = H5E_flags(4)
+ !
+ ! H5FD flags
+ !
+ H5FD_MPIO_INDEPENDENT_F = H5FD_flags(1)
+ H5FD_MPIO_COLLECTIVE_F = H5FD_flags(2)
+ H5FD_MEM_NOLIST_F = H5FD_flags(3)
+ H5FD_MEM_DEFAULT_F = H5FD_flags(4)
+ H5FD_MEM_SUPER_F = H5FD_flags(5)
+ H5FD_MEM_BTREE_F = H5FD_flags(6)
+ H5FD_MEM_DRAW_F = H5FD_flags(7)
+ H5FD_MEM_GHEAP_F = H5FD_flags(8)
+ H5FD_MEM_LHEAP_F = H5FD_flags(9)
+ H5FD_MEM_OHDR_F = H5FD_flags(10)
+ H5FD_MEM_NTYPES_F = H5FD_flags(11)
+ !
+ ! H5FD file driver flags
+ !
+ H5FD_CORE_F = H5FD_hid_flags(1)
+ H5FD_FAMILY_F = H5FD_hid_flags(2)
+ H5FD_LOG_F = H5FD_hid_flags(3)
+ H5FD_MPIO_F = H5FD_hid_flags(4)
+ H5FD_MULTI_F = H5FD_hid_flags(5)
+ H5FD_SEC2_F = H5FD_hid_flags(6)
+ H5FD_STDIO_F = H5FD_hid_flags(7)
+ !
+ ! H5I flags declaration
+ !
+ H5I_FILE_F = H5I_flags(1)
+ H5I_GROUP_F = H5I_flags(2)
+ H5I_DATATYPE_F = H5I_flags(3)
+ H5I_DATASPACE_F = H5I_flags(4)
+ H5I_DATASET_F = H5I_flags(5)
+ H5I_ATTR_F = H5I_flags(6)
+ H5I_BADID_F = H5I_flags(7)
+ !
+ ! H5L flags
+ !
+ H5L_TYPE_ERROR_F = H5L_flags(1)
+ H5L_TYPE_HARD_F = H5L_flags(2)
+ H5L_TYPE_SOFT_F = H5L_flags(3)
+ H5L_TYPE_EXTERNAL_F = H5L_flags(4)
+ H5L_SAME_LOC_F = H5L_flags(5)
+ H5L_LINK_CLASS_T_VERS_F = H5L_flags(6)
+ !
+ ! H5O flags
+ !
+ H5O_COPY_SHALLOW_HIERARCHY_F = h5o_flags(1)
+ H5O_COPY_EXPAND_SOFT_LINK_F = h5o_flags(2)
+ H5O_COPY_EXPAND_EXT_LINK_F = h5o_flags(3)
+ H5O_COPY_EXPAND_REFERENCE_F = h5o_flags(4)
+ H5O_COPY_WITHOUT_ATTR_FLAG_F = h5o_flags(5)
+ H5O_COPY_PRESERVE_NULL_FLAG_F = h5o_flags(6)
+ H5O_COPY_ALL_F = h5o_flags(7)
+ H5O_SHMESG_NONE_FLAG_F = h5o_flags(8)
+ H5O_SHMESG_SDSPACE_FLAG_F = h5o_flags(9)
+ H5O_SHMESG_DTYPE_FLAG_F = h5o_flags(10)
+ H5O_SHMESG_FILL_FLAG_F = h5o_flags(11)
+ H5O_SHMESG_PLINE_FLAG_F = h5o_flags(12)
+ H5O_SHMESG_ATTR_FLAG_F = h5o_flags(13)
+ H5O_SHMESG_ALL_FLAG_F = h5o_flags(14)
+ H5O_HDR_CHUNK0_SIZE_F = h5o_flags(15)
+ H5O_HDR_ATTR_CRT_ORDER_TRACK_F = h5o_flags(16)
+ H5O_HDR_ATTR_CRT_ORDER_INDEX_F = h5o_flags(17)
+ H5O_HDR_ATTR_STORE_PHASE_CHA_F = h5o_flags(18)
+ H5O_HDR_STORE_TIMES_F = h5o_flags(19)
+ H5O_HDR_ALL_FLAGS_F = h5o_flags(20)
+ H5O_SHMESG_MAX_NINDEXES_F = h5o_flags(21)
+ H5O_SHMESG_MAX_LIST_SIZE_F = h5o_flags(22)
+ H5O_TYPE_UNKNOWN_F = h5o_flags(23)
+ H5O_TYPE_GROUP_F = h5o_flags(24)
+ H5O_TYPE_DATASET_F = h5o_flags(25)
+ H5O_TYPE_NAMED_DATATYPE_F = h5o_flags(26)
+ H5O_TYPE_NTYPES_F = h5o_flags(27)
+ !
+ ! H5P flags
+ !
+ H5P_FILE_CREATE_F = H5P_flags(1)
+ H5P_FILE_ACCESS_F = H5P_flags(2)
+ H5P_DATASET_CREATE_F = H5P_flags(3)
+ H5P_DATASET_XFER_F = H5P_flags(4)
+ H5P_FILE_MOUNT_F = H5P_flags(5)
+ H5P_DEFAULT_F = H5P_flags(6)
+ H5P_ROOT_F = H5P_flags(7)
+ H5P_OBJECT_CREATE_F = H5P_flags(8)
+ H5P_DATASET_ACCESS_F = H5P_flags(9)
+ H5P_GROUP_CREATE_F = H5P_flags(10)
+ H5P_GROUP_ACCESS_F = H5P_flags(11)
+ H5P_DATATYPE_CREATE_F = H5P_flags(12)
+ H5P_DATATYPE_ACCESS_F = H5P_flags(13)
+ H5P_STRING_CREATE_F = H5P_flags(14)
+ H5P_ATTRIBUTE_CREATE_F = H5P_flags(15)
+ H5P_OBJECT_COPY_F = H5P_flags(16)
+ H5P_LINK_CREATE_F = H5P_flags(17)
+ H5P_LINK_ACCESS_F = H5P_flags(18)
+ !
+ ! H5P integers flags
+ !
+ H5P_CRT_ORDER_INDEXED_F = H5P_flags_int(1)
+ H5P_CRT_ORDER_TRACKED_F = H5P_flags_int(2)
+ !
+ ! H5R flags
+ !
+ H5R_OBJECT_F = H5R_flags(1)
+ H5R_DATASET_REGION_F = H5R_flags(2)
+ !
+ ! H5S flags
+ !
+ H5S_ALL_F = H5S_hid_flags(1)
+
+ H5S_UNLIMITED_F = H5S_hsize_flags(1)
+
+ H5S_SCALAR_F = H5S_flags(1)
+ H5S_SIMPLE_F = H5S_flags(2)
+ H5S_NULL_F = H5S_flags(3)
+ H5S_SELECT_SET_F = H5S_flags(4)
+ H5S_SELECT_OR_F = H5S_flags(5)
+ H5S_SELECT_NOOP_F = H5S_flags(6)
+ H5S_SELECT_AND_F = H5S_flags(7)
+ H5S_SELECT_XOR_F = H5S_flags(8)
+ H5S_SELECT_NOTB_F = H5S_flags(9)
+ H5S_SELECT_NOTA_F = H5S_flags(10)
+ H5S_SELECT_APPEND_F = H5S_flags(11)
+ H5S_SELECT_PREPEND_F = H5S_flags(12)
+ H5S_SELECT_INVALID_F = H5S_flags(13)
+ H5S_SEL_ERROR_F = H5S_flags(14)
+ H5S_SEL_NONE_F = H5S_flags(15)
+ H5S_SEL_POINTS_F = H5S_flags(16)
+ H5S_SEL_HYPERSLABS_F = H5S_flags(17)
+ H5S_SEL_ALL_F = H5S_flags(18)
+ !
+ ! H5T flags declaration
+ !
+ H5T_NO_CLASS_F = H5T_flags(1)
+ H5T_INTEGER_F = H5T_flags(2)
+ H5T_FLOAT_F = H5T_flags(3)
+ H5T_TIME_F = H5T_flags(4)
+ H5T_STRING_F = H5T_flags(5)
+ H5T_BITFIELD_F = H5T_flags(6)
+ H5T_OPAQUE_F = H5T_flags(7)
+ H5T_COMPOUND_F = H5T_flags(8)
+ H5T_REFERENCE_F = H5T_flags(9)
+ H5T_ENUM_F = H5T_flags(10)
+ H5T_ORDER_LE_F = H5T_flags(11)
+ H5T_ORDER_BE_F = H5T_flags(12)
+ H5T_ORDER_MIXED_F = H5T_flags(13)
+ H5T_ORDER_VAX_F = H5T_flags(14)
+ H5T_ORDER_NONE_F = H5T_flags(15)
+ H5T_PAD_ZERO_F = H5T_flags(16)
+ H5T_PAD_ONE_F = H5T_flags(17)
+ H5T_PAD_BACKGROUND_F = H5T_flags(18)
+ H5T_PAD_ERROR_F = H5T_flags(19)
+ H5T_SGN_NONE_F = H5T_flags(20)
+ H5T_SGN_2_F = H5T_flags(21)
+ H5T_SGN_ERROR_F = H5T_flags(22)
+ H5T_NORM_IMPLIED_F = H5T_flags(23)
+ H5T_NORM_MSBSET_F = H5T_flags(24)
+ H5T_NORM_NONE_F = H5T_flags(25)
+ H5T_CSET_ASCII_F = H5T_flags(26)
+ H5T_CSET_UTF8_F = H5T_flags(27)
+ H5T_STR_NULLTERM_F = H5T_flags(28)
+ H5T_STR_NULLPAD_F = H5T_flags(29)
+ H5T_STR_SPACEPAD_F = H5T_flags(30)
+ H5T_STR_ERROR_F = H5T_flags(31)
+ H5T_VLEN_F = H5T_flags(32)
+ H5T_ARRAY_F = H5T_flags(33)
+ H5T_DIR_ASCEND_F = H5T_flags(34)
+ H5T_DIR_DESCEND_F = H5T_flags(35)
+ !
+ ! H5Z flags
+ !
+ H5Z_FILTER_ERROR_F = H5Z_flags(1)
+ H5Z_FILTER_NONE_F = H5Z_flags(2)
+ H5Z_FILTER_DEFLATE_F = H5Z_flags(3)
+ H5Z_FILTER_SHUFFLE_F = H5Z_flags(4)
+ H5Z_FILTER_FLETCHER32_F = H5Z_flags(5)
+ H5Z_ERROR_EDC_F = H5Z_flags(6)
+ H5Z_DISABLE_EDC_F = H5Z_flags(7)
+ H5Z_ENABLE_EDC_F = H5Z_flags(8)
+ H5Z_NO_EDC_F = H5Z_flags(9)
+ H5Z_FILTER_SZIP_F = H5Z_flags(10)
+ H5Z_FLAG_OPTIONAL_F = H5Z_flags(11)
+ H5Z_FILTER_ENCODE_ENABLED_F = H5Z_flags(12)
+ H5Z_FILTER_DECODE_ENABLED_F = H5Z_flags(13)
+ H5Z_FILTER_ALL_F = H5Z_flags(14)
+ H5Z_FILTER_NBIT_F = H5Z_flags(15)
+ H5Z_FILTER_SCALEOFFSET_F = H5Z_flags(16)
+ H5Z_SO_FLOAT_DSCALE_F = H5Z_flags(17)
+ H5Z_SO_FLOAT_ESCALE_F = H5Z_flags(18)
+ H5Z_SO_INT_F = H5Z_flags(19)
+ H5Z_SO_INT_MINBITS_DEFAULT_F = H5Z_flags(20)
+
+ error = error + h5init1_flags_c(H5LIB_flags)
+ !
+ ! H5 Library flags
+ !
+ H5_SZIP_EC_OM_F = H5LIB_flags(1)
+ H5_SZIP_NN_OM_F = H5LIB_flags(2)
+
END SUBROUTINE h5open_f
!****s* H5LIB/h5close_f
@@ -201,25 +642,23 @@ CONTAINS
IMPLICIT NONE
INTEGER, INTENT(OUT) :: error
!*****
- INTEGER :: error_1
INTERFACE
INTEGER FUNCTION h5close_types_c(p_types, P_TYPES_LEN, &
f_types, F_TYPES_LEN, &
i_types, I_TYPES_LEN ) &
BIND(C,NAME='h5close_types_c')
IMPORT :: HID_T
- INTEGER P_TYPES_LEN
- INTEGER F_TYPES_LEN
- INTEGER I_TYPES_LEN
- INTEGER(HID_T), DIMENSION(P_TYPES_LEN) :: p_types
- INTEGER(HID_T), DIMENSION(F_TYPES_LEN) :: f_types
- INTEGER(HID_T), DIMENSION(I_TYPES_LEN) :: i_types
+ INTEGER :: P_TYPES_LEN
+ INTEGER :: F_TYPES_LEN
+ INTEGER :: I_TYPES_LEN
+ INTEGER(HID_T), DIMENSION(1:P_TYPES_LEN) :: p_types
+ INTEGER(HID_T), DIMENSION(1:F_TYPES_LEN) :: f_types
+ INTEGER(HID_T), DIMENSION(1:I_TYPES_LEN) :: i_types
END FUNCTION h5close_types_c
END INTERFACE
- error_1 = h5close_types_c(predef_types, PREDEF_TYPES_LEN, &
+ error = h5close_types_c(predef_types, PREDEF_TYPES_LEN, &
floating_types, FLOATING_TYPES_LEN, &
integer_types, INTEGER_TYPES_LEN )
- error = error_1
END SUBROUTINE h5close_f
diff --git a/fortran/src/H5f90global.F90 b/fortran/src/H5f90global.F90
index 629418a..078778a 100644
--- a/fortran/src/H5f90global.F90
+++ b/fortran/src/H5f90global.F90
@@ -50,7 +50,6 @@ MODULE H5GLOBAL
END ENUM
INTEGER, PARAMETER :: ENUM_T = KIND(enum_dtype)
-
! Definitions for reference datatypes.
! If you change the value of these parameters, do not forget to change corresponding
! values in the H5f90.h file.
@@ -71,184 +70,170 @@ MODULE H5GLOBAL
INTEGER, DIMENSION(1:REF_REG_BUF_LEN) :: ref
END TYPE hdset_reg_ref_t_f
- INTEGER, PARAMETER :: PREDEF_TYPES_LEN = 19 ! Do not forget to change this
- ! value when new predefined
- ! datatypes are added
-
- ! Do not forget to change the following line when new predefined
- ! floating data types are added
+ ! Do not forget to change these values when new predefined
+ ! datatypes are added
+ INTEGER, PARAMETER :: PREDEF_TYPES_LEN = 19
INTEGER, PARAMETER :: FLOATING_TYPES_LEN = 4
-
- ! Do not forget to change the following line when new predefined
- ! integer data types are added
INTEGER, PARAMETER :: INTEGER_TYPES_LEN = 27
- INTEGER(HID_T) :: H5T_NATIVE_REAL_C_FLOAT, &
- H5T_NATIVE_REAL_C_DOUBLE, &
- H5T_NATIVE_REAL_C_LONG_DOUBLE, &
- H5T_NATIVE_INTEGER, &
- H5T_NATIVE_REAL, &
- H5T_NATIVE_DOUBLE, &
- H5T_NATIVE_CHARACTER , &
- H5T_STD_REF_OBJ, &
- H5T_STD_REF_DSETREG, &
- H5T_IEEE_F32BE, &
- H5T_IEEE_F32LE, &
- H5T_IEEE_F64BE, &
- H5T_IEEE_F64LE, &
- H5T_STD_I8BE, &
- H5T_STD_I8LE, &
- H5T_STD_I16BE, &
- H5T_STD_I16LE, &
- H5T_STD_I32BE, &
- H5T_STD_I32LE, &
- H5T_STD_I64BE, &
- H5T_STD_I64LE, &
- H5T_STD_U8BE, &
- H5T_STD_U8LE, &
- H5T_STD_U16BE, &
- H5T_STD_U16LE, &
- H5T_STD_U32BE
+ ! These arrays need to be global because they are used in
+ ! both h5open_f and in h5close_f; initialize to fix linking issues
+ ! on OSX and Intel compilers.
+ INTEGER(HID_T), DIMENSION(1:PREDEF_TYPES_LEN) :: predef_types = -1
+ INTEGER(HID_T), DIMENSION(1:FLOATING_TYPES_LEN) :: floating_types = -1
+ INTEGER(HID_T), DIMENSION(1:INTEGER_TYPES_LEN) :: integer_types = -1
+
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_REAL_C_FLOAT
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_REAL_C_DOUBLE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_REAL_C_LONG_DOUBLE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_INTEGER
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_REAL
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_DOUBLE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_CHARACTER
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_REF_OBJ
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_REF_DSETREG
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_IEEE_F32BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_IEEE_F32LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_IEEE_F64BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_IEEE_F64LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I8BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I8LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I16BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I16LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I32BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I32LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I64BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_I64LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U8BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U8LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U16BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U16LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U32BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U32LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U64BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_U64LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STRING
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B8BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B8LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B16BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B16LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B32BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B32LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B64BE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STD_B64LE
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_B8
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_B16
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_B32
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_B64
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_FORTRAN_S1
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_C_S1
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_INTEGER_KIND
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NATIVE_FLOAT_128
+ !DEC$endif
+
+ INTEGER(HID_T) :: H5T_NATIVE_REAL_C_FLOAT
+ INTEGER(HID_T) :: H5T_NATIVE_REAL_C_DOUBLE
+ INTEGER(HID_T) :: H5T_NATIVE_REAL_C_LONG_DOUBLE
+ INTEGER(HID_T) :: H5T_NATIVE_INTEGER
+ INTEGER(HID_T) :: H5T_NATIVE_REAL
+ INTEGER(HID_T) :: H5T_NATIVE_DOUBLE
+ INTEGER(HID_T) :: H5T_NATIVE_CHARACTER
+ INTEGER(HID_T) :: H5T_STD_REF_OBJ
+ INTEGER(HID_T) :: H5T_STD_REF_DSETREG
+ INTEGER(HID_T) :: H5T_IEEE_F32BE
+ INTEGER(HID_T) :: H5T_IEEE_F32LE
+ INTEGER(HID_T) :: H5T_IEEE_F64BE
+ INTEGER(HID_T) :: H5T_IEEE_F64LE
+ INTEGER(HID_T) :: H5T_STD_I8BE
+ INTEGER(HID_T) :: H5T_STD_I8LE
+ INTEGER(HID_T) :: H5T_STD_I16BE
+ INTEGER(HID_T) :: H5T_STD_I16LE
+ INTEGER(HID_T) :: H5T_STD_I32BE
+ INTEGER(HID_T) :: H5T_STD_I32LE
+ INTEGER(HID_T) :: H5T_STD_I64BE
+ INTEGER(HID_T) :: H5T_STD_I64LE
+ INTEGER(HID_T) :: H5T_STD_U8BE
+ INTEGER(HID_T) :: H5T_STD_U8LE
+ INTEGER(HID_T) :: H5T_STD_U16BE
+ INTEGER(HID_T) :: H5T_STD_U16LE
+ INTEGER(HID_T) :: H5T_STD_U32BE
+ INTEGER(HID_T) :: H5T_STD_U32LE
+ INTEGER(HID_T) :: H5T_STD_U64BE
+ INTEGER(HID_T) :: H5T_STD_U64LE
+ INTEGER(HID_T) :: H5T_STRING
+ INTEGER(HID_T) :: H5T_STD_B8BE
+ INTEGER(HID_T) :: H5T_STD_B8LE
+ INTEGER(HID_T) :: H5T_STD_B16BE
+ INTEGER(HID_T) :: H5T_STD_B16LE
+ INTEGER(HID_T) :: H5T_STD_B32BE
+ INTEGER(HID_T) :: H5T_STD_B32LE
+ INTEGER(HID_T) :: H5T_STD_B64BE
+ INTEGER(HID_T) :: H5T_STD_B64LE
+ INTEGER(HID_T) :: H5T_NATIVE_B8
+ INTEGER(HID_T) :: H5T_NATIVE_B16
+ INTEGER(HID_T) :: H5T_NATIVE_B32
+ INTEGER(HID_T) :: H5T_NATIVE_B64
+ INTEGER(HID_T) :: H5T_FORTRAN_S1
+ INTEGER(HID_T) :: H5T_C_S1
INTEGER, PARAMETER :: NUM_NATIVE_INTEGER_KIND = 5
! INTEGER*1, INTEGER*2, INTEGER*4, INTEGER*8, INTEGER*16
INTEGER(HID_T), DIMENSION(1:NUM_NATIVE_INTEGER_KIND) :: H5T_NATIVE_INTEGER_KIND
INTEGER(HID_T) :: H5T_NATIVE_FLOAT_128 ! NEED IFDEF -MSB-
-
-! NOTE: Splitting the line since the Fortran 95 standard limits the number of
-! continuation lines to 39; the F03/F08 standard limits the number
-! to 255 lines.
-
- INTEGER(HID_T) :: H5T_STD_U32LE, &
- H5T_STD_U64BE, &
- H5T_STD_U64LE, &
- H5T_STRING, &
- H5T_STD_B8BE, &
- H5T_STD_B8LE, &
- H5T_STD_B16BE, &
- H5T_STD_B16LE, &
- H5T_STD_B32BE, &
- H5T_STD_B32LE, &
- H5T_STD_B64BE, &
- H5T_STD_B64LE, &
- H5T_NATIVE_B8, &
- H5T_NATIVE_B16, &
- H5T_NATIVE_B32, &
- H5T_NATIVE_B64, &
- H5T_FORTRAN_S1, &
- H5T_C_S1
-
-
- INTEGER(HID_T), DIMENSION(PREDEF_TYPES_LEN) :: predef_types
- EQUIVALENCE (predef_types(1), H5T_NATIVE_INTEGER_KIND(1))
- ! EQUIVALENCE predef_types(2:5) are unnecessary and violate the standard
- EQUIVALENCE (predef_types(6), H5T_NATIVE_INTEGER)
- EQUIVALENCE (predef_types(7), H5T_NATIVE_REAL)
- EQUIVALENCE (predef_types(8), H5T_NATIVE_DOUBLE)
- EQUIVALENCE (predef_types(9), H5T_NATIVE_CHARACTER)
- EQUIVALENCE (predef_types(10), H5T_STD_REF_OBJ)
- EQUIVALENCE (predef_types(11), H5T_STD_REF_DSETREG)
- EQUIVALENCE (predef_types(12), H5T_NATIVE_REAL_C_FLOAT)
- EQUIVALENCE (predef_types(13), H5T_NATIVE_REAL_C_DOUBLE)
- EQUIVALENCE (predef_types(14), H5T_NATIVE_REAL_C_LONG_DOUBLE)
- EQUIVALENCE (predef_types(15), H5T_NATIVE_B8 )
- EQUIVALENCE (predef_types(16), H5T_NATIVE_B16)
- EQUIVALENCE (predef_types(17), H5T_NATIVE_B32)
- EQUIVALENCE (predef_types(18), H5T_NATIVE_B64)
- EQUIVALENCE (predef_types(19), H5T_NATIVE_FLOAT_128) ! ADDED NEW TYPE -MSB-
-
- INTEGER(HID_T), DIMENSION(FLOATING_TYPES_LEN) :: floating_types
- EQUIVALENCE (floating_types(1), H5T_IEEE_F32BE )
- EQUIVALENCE (floating_types(2), H5T_IEEE_F32LE)
- EQUIVALENCE (floating_types(3), H5T_IEEE_F64BE)
- EQUIVALENCE (floating_types(4), H5T_IEEE_F64LE)
-
- INTEGER(HID_T), DIMENSION(INTEGER_TYPES_LEN) :: integer_types
- EQUIVALENCE (integer_types(1), H5T_STD_I8BE )
- EQUIVALENCE (integer_types(2), H5T_STD_I8LE)
- EQUIVALENCE (integer_types(3), H5T_STD_I16BE)
- EQUIVALENCE (integer_types(4), H5T_STD_I16LE)
- EQUIVALENCE (integer_types(5), H5T_STD_I32BE)
- EQUIVALENCE (integer_types(6), H5T_STD_I32LE)
- EQUIVALENCE (integer_types(7), H5T_STD_I64BE)
- EQUIVALENCE (integer_types(8), H5T_STD_I64LE)
- EQUIVALENCE (integer_types(9), H5T_STD_U8BE)
- EQUIVALENCE (integer_types(10), H5T_STD_U8LE)
- EQUIVALENCE (integer_types(11), H5T_STD_U16BE)
- EQUIVALENCE (integer_types(12), H5T_STD_U16LE)
- EQUIVALENCE (integer_types(13), H5T_STD_U32BE)
- EQUIVALENCE (integer_types(14), H5T_STD_U32LE)
- EQUIVALENCE (integer_types(15), H5T_STD_U64BE)
- EQUIVALENCE (integer_types(16), H5T_STD_U64LE)
- EQUIVALENCE (integer_types(17), H5T_STRING)
- EQUIVALENCE (integer_types(18), H5T_STD_B8BE)
- EQUIVALENCE (integer_types(19), H5T_STD_B8LE)
- EQUIVALENCE (integer_types(20), H5T_STD_B16BE)
- EQUIVALENCE (integer_types(21), H5T_STD_B16LE)
- EQUIVALENCE (integer_types(22), H5T_STD_B32BE)
- EQUIVALENCE (integer_types(23), H5T_STD_B32LE)
- EQUIVALENCE (integer_types(24), H5T_STD_B64BE)
- EQUIVALENCE (integer_types(25), H5T_STD_B64LE)
- EQUIVALENCE (integer_types(26), H5T_FORTRAN_S1)
- EQUIVALENCE (integer_types(27), H5T_C_S1)
-
-
- ! COMMON /PREDEFINED_TYPES/ H5T_NATIVE_INTEGER, &
- ! H5T_NATIVE_REAL, &
- ! H5T_NATIVE_DOUBLE, &
- ! H5T_NATIVE_CHARACTER, &
- ! H5T_STD_REF_OBJ, &
- ! H5T_STD_REF_DSETREG
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /PREDEFINED_TYPES/
- !DEC$endif
- COMMON /PREDEFINED_TYPES/ predef_types
-
- ! COMMON /FLOATING_TYPES/ H5T_IEEE_F32BE, &
- ! H5T_IEEE_F32LE, &
- ! H5T_IEEE_F64BE, &
- ! H5T_IEEE_F64LE
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /FLOATING_TYPES/
- !DEC$endif
- COMMON /FLOATING_TYPES/ floating_types
!
- ! COMMON /INTEGER_TYPES/ H5T_STD_I8BE, &
- ! H5T_STD_I8LE, &
- ! H5T_STD_I16BE, &
- ! H5T_STD_I16LE, &
- ! H5T_STD_I32BE, &
- ! H5T_STD_I32LE, &
- ! H5T_STD_I64BE, &
- ! H5T_STD_I64LE, &
- ! H5T_STD_U8BE, &
- ! H5T_STD_U8LE, &
- ! H5T_STD_U16BE, &
- ! H5T_STD_U16LE, &
- ! H5T_STD_U32BE, &
- ! H5T_STD_U32LE, &
- ! H5T_STD_U64BE, &
- ! H5T_STD_U64LE
+ ! H5generic flags declaration
+ !
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /INTEGER_TYPES/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_INDEX_UNKNOWN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_INDEX_NAME_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_INDEX_CRT_ORDER_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_INDEX_N_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_ITER_UNKNOWN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_ITER_INC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_ITER_DEC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_ITER_NATIVE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_ITER_N_F
+ !DEC$ATTRIBUTES DLLEXPORT :: HADDR_UNDEF_F
!DEC$endif
- COMMON /INTEGER_TYPES/ integer_types
- !
- ! Fortran flags
- !
- !
- ! H5F flags (DO NOT FORGET TO UPDATE WHEN NEW FLAGS ARE ADDED !)
+
+ INTEGER :: H5_INDEX_UNKNOWN_F
+ INTEGER :: H5_INDEX_NAME_F
+ INTEGER :: H5_INDEX_CRT_ORDER_F
+ INTEGER :: H5_INDEX_N_F
+ INTEGER :: H5_ITER_UNKNOWN_F
+ INTEGER :: H5_ITER_INC_F
+ INTEGER :: H5_ITER_DEC_F
+ INTEGER :: H5_ITER_NATIVE_F
+ INTEGER :: H5_ITER_N_F
+
+ INTEGER(HADDR_T) :: HADDR_UNDEF_F
!
! H5F flags declaration
!
- INTEGER, PARAMETER :: H5F_FLAGS_LEN = 19
- INTEGER :: H5F_flags(H5F_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5F_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_ACC_RDWR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_ACC_RDONLY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_ACC_TRUNC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_ACC_EXCL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_ACC_DEBUG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_SCOPE_LOCAL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_SCOPE_GLOBAL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_CLOSE_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_CLOSE_WEAK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_CLOSE_SEMI_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_CLOSE_STRONG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_OBJ_FILE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_OBJ_DATASET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_OBJ_GROUP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_OBJ_DATATYPE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_OBJ_ALL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_LIBVER_EARLIEST_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_LIBVER_LATEST_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5F_UNLIMITED_F
!DEC$endif
- COMMON /H5F_FLAGS/ H5F_flags
-
+
INTEGER :: H5F_ACC_RDWR_F
INTEGER :: H5F_ACC_RDONLY_F
INTEGER :: H5F_ACC_TRUNC_F
@@ -268,77 +253,26 @@ MODULE H5GLOBAL
INTEGER :: H5F_LIBVER_EARLIEST_F
INTEGER :: H5F_LIBVER_LATEST_F
INTEGER :: H5F_UNLIMITED_F
-
- EQUIVALENCE(H5F_flags(1), H5F_ACC_RDWR_F)
- EQUIVALENCE(H5F_flags(2), H5F_ACC_RDONLY_F)
- EQUIVALENCE(H5F_flags(3), H5F_ACC_TRUNC_F)
- EQUIVALENCE(H5F_flags(4), H5F_ACC_EXCL_F)
- EQUIVALENCE(H5F_flags(5), H5F_ACC_DEBUG_F)
- EQUIVALENCE(H5F_flags(6), H5F_SCOPE_LOCAL_F)
- EQUIVALENCE(H5F_flags(7), H5F_SCOPE_GLOBAL_F)
- EQUIVALENCE(H5F_flags(8), H5F_CLOSE_DEFAULT_F)
- EQUIVALENCE(H5F_flags(9), H5F_CLOSE_WEAK_F)
- EQUIVALENCE(H5F_flags(10), H5F_CLOSE_SEMI_F)
- EQUIVALENCE(H5F_flags(11), H5F_CLOSE_STRONG_F)
- EQUIVALENCE(H5F_flags(12), H5F_OBJ_FILE_F)
- EQUIVALENCE(H5F_flags(13), H5F_OBJ_DATASET_F)
- EQUIVALENCE(H5F_flags(14), H5F_OBJ_GROUP_F)
- EQUIVALENCE(H5F_flags(15), H5F_OBJ_DATATYPE_F)
- EQUIVALENCE(H5F_flags(16), H5F_OBJ_ALL_F)
- EQUIVALENCE(H5F_flags(17), H5F_LIBVER_EARLIEST_F)
- EQUIVALENCE(H5F_flags(18), H5F_LIBVER_LATEST_F)
- EQUIVALENCE(H5F_flags(19), H5F_UNLIMITED_F)
- !
- ! H5generic flags declaration
- !
- INTEGER, PARAMETER :: H5generic_FLAGS_LEN = 9
- INTEGER :: H5generic_flags(H5generic_FLAGS_LEN)
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5generic_FLAGS/
- !DEC$endif
- COMMON /H5generic_FLAGS/ H5generic_flags
-
- INTEGER :: H5_INDEX_UNKNOWN_F
- INTEGER :: H5_INDEX_NAME_F
- INTEGER :: H5_INDEX_CRT_ORDER_F
- INTEGER :: H5_INDEX_N_F
- INTEGER :: H5_ITER_UNKNOWN_F
- INTEGER :: H5_ITER_INC_F
- INTEGER :: H5_ITER_DEC_F
- INTEGER :: H5_ITER_NATIVE_F
- INTEGER :: H5_ITER_N_F
-
- EQUIVALENCE(H5generic_flags(1), H5_INDEX_UNKNOWN_F)
- EQUIVALENCE(H5generic_flags(2), H5_INDEX_NAME_F)
- EQUIVALENCE(H5generic_flags(3), H5_INDEX_CRT_ORDER_F)
- EQUIVALENCE(H5generic_flags(4), H5_INDEX_N_F)
- EQUIVALENCE(H5generic_flags(5), H5_ITER_UNKNOWN_F)
- EQUIVALENCE(H5generic_flags(6), H5_ITER_INC_F)
- EQUIVALENCE(H5generic_flags(7), H5_ITER_DEC_F)
- EQUIVALENCE(H5generic_flags(8), H5_ITER_NATIVE_F)
- EQUIVALENCE(H5generic_flags(9), H5_ITER_N_F)
-
- INTEGER, PARAMETER :: H5generic_haddr_FLAGS_LEN = 1
- INTEGER(HADDR_T) :: H5generic_haddr_flags(H5generic_haddr_FLAGS_LEN)
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5generic_haddr_FLAGS/
- !DEC$endif
- COMMON /H5generic_haddr_FLAGS/ H5generic_haddr_flags
-
- INTEGER(HADDR_T) :: HADDR_UNDEF_F
-
- EQUIVALENCE(H5generic_haddr_flags(1), HADDR_UNDEF_F)
-
!
! H5G flags declaration
!
- INTEGER, PARAMETER :: H5G_FLAGS_LEN = 12
- INTEGER :: H5G_flags(H5G_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5G_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_UNKNOWN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_GROUP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_DATASET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_TYPE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_LINK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_UDLINK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_SAME_LOC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_LINK_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_LINK_HARD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_LINK_SOFT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_STORAGE_TYPE_UNKNOWN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_STORAGE_TYPE_SYMBOL_TABLE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_STORAGE_TYPE_COMPACT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5G_STORAGE_TYPE_DENSE_F
!DEC$endif
- COMMON /H5G_FLAGS/ H5G_flags
-
+
INTEGER :: H5G_UNKNOWN_F
INTEGER :: H5G_GROUP_F
INTEGER :: H5G_DATASET_F
@@ -353,35 +287,43 @@ MODULE H5GLOBAL
INTEGER :: H5G_STORAGE_TYPE_SYMBOL_TABLE_F
INTEGER :: H5G_STORAGE_TYPE_COMPACT_F
INTEGER :: H5G_STORAGE_TYPE_DENSE_F
-
- EQUIVALENCE(H5G_flags(1), H5G_UNKNOWN_F) ! Unknown object type
- EQUIVALENCE(H5G_flags(2), H5G_GROUP_F) ! Object is a group
- EQUIVALENCE(H5G_flags(3), H5G_DATASET_F) ! Object is a dataset
- EQUIVALENCE(H5G_flags(4), H5G_TYPE_F) ! Object is a named data type
- EQUIVALENCE(H5G_flags(5), H5G_SAME_LOC_F)
- EQUIVALENCE(H5G_flags(6), H5G_LINK_ERROR_F)
- EQUIVALENCE(H5G_flags(7), H5G_LINK_HARD_F)
- EQUIVALENCE(H5G_flags(8), H5G_LINK_SOFT_F)
-
- EQUIVALENCE(H5G_flags(9), H5G_STORAGE_TYPE_UNKNOWN_F )
- EQUIVALENCE(H5G_flags(10), H5G_STORAGE_TYPE_SYMBOL_TABLE_F)
- EQUIVALENCE(H5G_flags(11), H5G_STORAGE_TYPE_COMPACT_F)
- EQUIVALENCE(H5G_flags(12), H5G_STORAGE_TYPE_DENSE_F)
-
!
! H5D flags declaration
!
- INTEGER, PARAMETER :: H5D_FLAGS_LEN = 29
- INTEGER :: H5D_flags(H5D_FLAGS_LEN)
- INTEGER, PARAMETER :: H5D_SIZE_FLAGS_LEN = 2
- INTEGER(SIZE_T) :: H5D_size_flags(H5D_SIZE_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5D_FLAGS/
- !DEC$ATTRIBUTES DLLEXPORT :: /H5D_SIZE_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_COMPACT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_CONTIGUOUS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_CHUNKED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_ALLOC_TIME_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_ALLOC_TIME_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_ALLOC_TIME_EARLY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_ALLOC_TIME_LATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_ALLOC_TIME_INCR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_SPACE_STS_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_SPACE_STS_NOT_ALLOCATED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_SPACE_STS_PART_ALLOCATED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_SPACE_STS_ALLOCATED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_TIME_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_TIME_ALLOC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_TIME_NEVER_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_VALUE_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_VALUE_UNDEFINED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_VALUE_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_FILL_VALUE_USER_DEFINED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_CHUNK_CACHE_NSLOTS_DFLT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_CHUNK_CACHE_NBYTES_DFLT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_CHUNK_CACHE_W0_DFLT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_MPIO_NO_COLLECTIVE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_MPIO_CHUNK_INDEPENDENT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_MPIO_CHUNK_COLLECTIVE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_MPIO_CHUNK_MIXED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_MPIO_CONTIG_COLLECTIVE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_VDS_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_VDS_FIRST_MISSING_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_VDS_LAST_AVAILABLE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5D_VIRTUAL_F
!DEC$endif
- COMMON /H5D_FLAGS/ H5D_flags
- COMMON /H5D_SIZE_FLAGS/ H5D_size_flags
-
+
INTEGER :: H5D_COMPACT_F
INTEGER :: H5D_CONTIGUOUS_F
INTEGER :: H5D_CHUNKED_F
@@ -406,13 +348,14 @@ MODULE H5GLOBAL
INTEGER :: H5D_FILL_VALUE_DEFAULT_F
INTEGER :: H5D_FILL_VALUE_USER_DEFINED_F
-! shortened "_DEFAULT" to "_DFLT" to satisfy the limit of 31
-! characters for variable names in Fortran.
-! shortened "_CONTIGUOUS" to "_CONTIG" to satisfy the limit of 31
-! characters for variable names in Fortran.
-
+ ! shortened "_DEFAULT" to "_DFLT" to satisfy the limit of 31
+ ! characters for variable names in Fortran.
+ ! shortened "_CONTIGUOUS" to "_CONTIG" to satisfy the limit of 31
+ ! characters for variable names in Fortran.
+
INTEGER(SIZE_T) :: H5D_CHUNK_CACHE_NSLOTS_DFLT_F
INTEGER(SIZE_T) :: H5D_CHUNK_CACHE_NBYTES_DFLT_F
+
INTEGER :: H5D_CHUNK_CACHE_W0_DFLT_F
INTEGER :: H5D_MPIO_NO_COLLECTIVE_F
INTEGER :: H5D_MPIO_CHUNK_INDEPENDENT_F
@@ -423,80 +366,45 @@ MODULE H5GLOBAL
INTEGER :: H5D_VDS_FIRST_MISSING_F
INTEGER :: H5D_VDS_LAST_AVAILABLE_F
INTEGER :: H5D_VIRTUAL_F
-
- EQUIVALENCE(H5D_flags(1), H5D_COMPACT_F)
- EQUIVALENCE(H5D_flags(2), H5D_CONTIGUOUS_F)
- EQUIVALENCE(H5D_flags(3), H5D_CHUNKED_F)
-
- EQUIVALENCE(H5D_flags(4), H5D_ALLOC_TIME_ERROR_F)
- EQUIVALENCE(H5D_flags(5), H5D_ALLOC_TIME_DEFAULT_F)
- EQUIVALENCE(H5D_flags(6), H5D_ALLOC_TIME_EARLY_F)
- EQUIVALENCE(H5D_flags(7), H5D_ALLOC_TIME_LATE_F)
- EQUIVALENCE(H5D_flags(8), H5D_ALLOC_TIME_INCR_F)
-
- EQUIVALENCE(H5D_flags(9), H5D_SPACE_STS_ERROR_F)
- EQUIVALENCE(H5D_flags(10), H5D_SPACE_STS_NOT_ALLOCATED_F)
- EQUIVALENCE(H5D_flags(11), H5D_SPACE_STS_PART_ALLOCATED_F)
- EQUIVALENCE(H5D_flags(12), H5D_SPACE_STS_ALLOCATED_F)
-
- EQUIVALENCE(H5D_flags(13), H5D_FILL_TIME_ERROR_F)
- EQUIVALENCE(H5D_flags(14), H5D_FILL_TIME_ALLOC_F)
- EQUIVALENCE(H5D_flags(15), H5D_FILL_TIME_NEVER_F)
-
- EQUIVALENCE(H5D_flags(16), H5D_FILL_VALUE_ERROR_F)
- EQUIVALENCE(H5D_flags(17), H5D_FILL_VALUE_UNDEFINED_F)
- EQUIVALENCE(H5D_flags(18), H5D_FILL_VALUE_DEFAULT_F)
- EQUIVALENCE(H5D_flags(19), H5D_FILL_VALUE_USER_DEFINED_F)
-
- EQUIVALENCE(H5D_flags(20), H5D_CHUNK_CACHE_W0_DFLT_F)
- EQUIVALENCE(H5D_flags(21), H5D_MPIO_NO_COLLECTIVE_F)
- EQUIVALENCE(H5D_flags(22), H5D_MPIO_CHUNK_INDEPENDENT_F)
- EQUIVALENCE(H5D_flags(23), H5D_MPIO_CHUNK_COLLECTIVE_F)
- EQUIVALENCE(H5D_flags(24), H5D_MPIO_CHUNK_MIXED_F)
- EQUIVALENCE(H5D_flags(25), H5D_MPIO_CONTIG_COLLECTIVE_F)
- EQUIVALENCE(H5D_flags(26), H5D_VDS_ERROR_F)
- EQUIVALENCE(H5D_flags(27), H5D_VDS_FIRST_MISSING_F)
- EQUIVALENCE(H5D_flags(28), H5D_VDS_LAST_AVAILABLE_F)
- EQUIVALENCE(H5D_flags(29), H5D_VIRTUAL_F)
-
- EQUIVALENCE(H5D_size_flags(1), H5D_CHUNK_CACHE_NSLOTS_DFLT_F)
- EQUIVALENCE(H5D_size_flags(2), H5D_CHUNK_CACHE_NBYTES_DFLT_F)
-
!
! H5E flags declaration
!
- INTEGER, PARAMETER :: H5E_FLAGS_LEN = 4
- INTEGER :: H5E_flags(H5E_FLAGS_LEN)
- INTEGER, PARAMETER :: H5E_HID_FLAGS_LEN = 1
- INTEGER(HID_T) :: H5E_hid_flags(H5E_HID_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5E_FLAGS/
- !DEC$ATTRIBUTES DLLEXPORT :: /H5E_HID_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5E_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5E_MAJOR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5E_MINOR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5E_WALK_UPWARD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5E_WALK_DOWNWARD_F
!DEC$endif
- COMMON /H5E_FLAGS/ H5E_flags
- COMMON /H5E_HID_FLAGS/ H5E_hid_flags
INTEGER(HID_T) :: H5E_DEFAULT_F
INTEGER :: H5E_MAJOR_F
INTEGER :: H5E_MINOR_F
INTEGER :: H5E_WALK_UPWARD_F
INTEGER :: H5E_WALK_DOWNWARD_F
-
- EQUIVALENCE(H5E_hid_flags(1), H5E_DEFAULT_F)
- EQUIVALENCE(H5E_flags(1) , H5E_MAJOR_F)
- EQUIVALENCE(H5E_flags(2) , H5E_MINOR_F)
- EQUIVALENCE(H5E_flags(3) , H5E_WALK_UPWARD_F)
- EQUIVALENCE(H5E_flags(4) , H5E_WALK_DOWNWARD_F)
-
!
- ! H5FD flags declaration
+ ! H5FD file drivers flags declaration
!
- INTEGER, PARAMETER :: H5FD_FLAGS_LEN = 11
- INTEGER :: H5FD_flags(H5FD_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5FD_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MPIO_INDEPENDENT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MPIO_COLLECTIVE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_NOLIST_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_SUPER_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_BTREE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_DRAW_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_GHEAP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_LHEAP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_OHDR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MEM_NTYPES_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_CORE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_FAMILY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_LOG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MPIO_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_MULTI_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_SEC2_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5FD_STDIO_F
!DEC$endif
- COMMON /H5FD_FLAGS/ H5FD_flags
INTEGER :: H5FD_MPIO_INDEPENDENT_F
INTEGER :: H5FD_MPIO_COLLECTIVE_F
@@ -509,28 +417,6 @@ MODULE H5GLOBAL
INTEGER :: H5FD_MEM_LHEAP_F
INTEGER :: H5FD_MEM_OHDR_F
INTEGER :: H5FD_MEM_NTYPES_F
-
- EQUIVALENCE(H5FD_flags(1), H5FD_MPIO_INDEPENDENT_F)
- EQUIVALENCE(H5FD_flags(2), H5FD_MPIO_COLLECTIVE_F)
- EQUIVALENCE(H5FD_flags(3), H5FD_MEM_NOLIST_F)
- EQUIVALENCE(H5FD_flags(4), H5FD_MEM_DEFAULT_F)
- EQUIVALENCE(H5FD_flags(5), H5FD_MEM_SUPER_F)
- EQUIVALENCE(H5FD_flags(6), H5FD_MEM_BTREE_F)
- EQUIVALENCE(H5FD_flags(7), H5FD_MEM_DRAW_F)
- EQUIVALENCE(H5FD_flags(8), H5FD_MEM_GHEAP_F)
- EQUIVALENCE(H5FD_flags(9), H5FD_MEM_LHEAP_F)
- EQUIVALENCE(H5FD_flags(10), H5FD_MEM_OHDR_F)
- EQUIVALENCE(H5FD_flags(11), H5FD_MEM_NTYPES_F)
- !
- ! H5FD file drivers flags declaration
- !
- INTEGER, PARAMETER :: H5FD_HID_FLAGS_LEN = 7
- INTEGER(HID_T) :: H5FD_hid_flags(H5FD_HID_FLAGS_LEN)
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5FD_HID_FLAGS/
- !DEC$endif
- COMMON /H5FD_HID_FLAGS/ H5FD_hid_flags
-
INTEGER(HID_T) :: H5FD_CORE_F
INTEGER(HID_T) :: H5FD_FAMILY_F
INTEGER(HID_T) :: H5FD_LOG_F
@@ -538,24 +424,18 @@ MODULE H5GLOBAL
INTEGER(HID_T) :: H5FD_MULTI_F
INTEGER(HID_T) :: H5FD_SEC2_F
INTEGER(HID_T) :: H5FD_STDIO_F
-
- EQUIVALENCE(H5FD_hid_flags(1), H5FD_CORE_F)
- EQUIVALENCE(H5FD_hid_flags(2), H5FD_FAMILY_F)
- EQUIVALENCE(H5FD_hid_flags(3), H5FD_LOG_F)
- EQUIVALENCE(H5FD_hid_flags(4), H5FD_MPIO_F)
- EQUIVALENCE(H5FD_hid_flags(5), H5FD_MULTI_F)
- EQUIVALENCE(H5FD_hid_flags(6), H5FD_SEC2_F)
- EQUIVALENCE(H5FD_hid_flags(7), H5FD_STDIO_F)
-
!
! H5I flags declaration
!
- INTEGER, PARAMETER :: H5I_FLAGS_LEN = 7
- INTEGER :: H5I_flags(H5I_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5I_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_FILE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_GROUP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_DATATYPE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_DATASPACE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_DATASET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_ATTR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5I_BADID_F
!DEC$endif
- COMMON /H5I_FLAGS/ H5I_flags
INTEGER :: H5I_FILE_F
INTEGER :: H5I_GROUP_F
@@ -564,48 +444,57 @@ MODULE H5GLOBAL
INTEGER :: H5I_DATASET_F
INTEGER :: H5I_ATTR_F
INTEGER :: H5I_BADID_F
-
- EQUIVALENCE(H5I_flags(1), H5I_FILE_F)
- EQUIVALENCE(H5I_flags(2), H5I_GROUP_F)
- EQUIVALENCE(H5I_flags(3), H5I_DATATYPE_F)
- EQUIVALENCE(H5I_flags(4), H5I_DATASPACE_F)
- EQUIVALENCE(H5I_flags(5), H5I_DATASET_F)
- EQUIVALENCE(H5I_flags(6), H5I_ATTR_F)
- EQUIVALENCE(H5I_flags(7), H5I_BADID_F)
!
! H5L flags declaration
!
- INTEGER, PARAMETER :: H5L_FLAGS_LEN = 6
- INTEGER :: H5L_flags(H5L_FLAGS_LEN)
-
+ !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_TYPE_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_TYPE_HARD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_TYPE_SOFT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_TYPE_EXTERNAL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_SAME_LOC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5L_LINK_CLASS_T_VERS_F
+ !DEC$endif
+
INTEGER :: H5L_TYPE_ERROR_F
INTEGER :: H5L_TYPE_HARD_F
INTEGER :: H5L_TYPE_SOFT_F
INTEGER :: H5L_TYPE_EXTERNAL_F
INTEGER :: H5L_SAME_LOC_F
INTEGER :: H5L_LINK_CLASS_T_VERS_F
-
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5L_FLAGS/
- !DEC$endif
- COMMON /H5L_FLAGS/ H5L_flags
-
- EQUIVALENCE(H5L_flags(1), H5L_TYPE_ERROR_F)
- EQUIVALENCE(H5L_flags(2), H5L_TYPE_HARD_F)
- EQUIVALENCE(H5L_flags(3), H5L_TYPE_SOFT_F)
- EQUIVALENCE(H5L_flags(4), H5L_TYPE_EXTERNAL_F)
- EQUIVALENCE(H5L_flags(5), H5L_SAME_LOC_F)
- EQUIVALENCE(H5L_flags(6), H5L_LINK_CLASS_T_VERS_F)
!
! H5O flags declaration
!
- INTEGER, PARAMETER :: H5O_FLAGS_LEN = 27
- INTEGER :: H5o_flags(H5O_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5O_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_SHALLOW_HIERARCHY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_EXPAND_SOFT_LINK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_EXPAND_EXT_LINK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_EXPAND_REFERENCE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_WITHOUT_ATTR_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_PRESERVE_NULL_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_COPY_ALL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_NONE_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_SDSPACE_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_DTYPE_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_FILL_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_PLINE_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_ATTR_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_ALL_FLAG_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_CHUNK0_SIZE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_ATTR_CRT_ORDER_TRACK_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_ATTR_CRT_ORDER_INDEX_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_ATTR_STORE_PHASE_CHA_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_STORE_TIMES_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_HDR_ALL_FLAGS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_MAX_NINDEXES_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_SHMESG_MAX_LIST_SIZE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_TYPE_UNKNOWN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_TYPE_GROUP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_TYPE_DATASET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_TYPE_NAMED_DATATYPE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5O_TYPE_NTYPES_F
!DEC$endif
- COMMON /H5O_FLAGS/ H5O_flags
-
+
INTEGER :: H5O_COPY_SHALLOW_HIERARCHY_F ! *** THESE VARIABLES DO
INTEGER :: H5O_COPY_EXPAND_SOFT_LINK_F ! NOT MATCH THE C VARIABLE
INTEGER :: H5O_COPY_EXPAND_EXT_LINK_F ! IN ORDER
@@ -633,44 +522,31 @@ MODULE H5GLOBAL
INTEGER :: H5O_TYPE_DATASET_F
INTEGER :: H5O_TYPE_NAMED_DATATYPE_F
INTEGER :: H5O_TYPE_NTYPES_F
-
- EQUIVALENCE(h5o_flags(1) , H5O_COPY_SHALLOW_HIERARCHY_F)
- EQUIVALENCE(h5o_flags(2) , H5O_COPY_EXPAND_SOFT_LINK_F)
- EQUIVALENCE(h5o_flags(3) , H5O_COPY_EXPAND_EXT_LINK_F)
- EQUIVALENCE(h5o_flags(4) , H5O_COPY_EXPAND_REFERENCE_F)
- EQUIVALENCE(h5o_flags(5) , H5O_COPY_WITHOUT_ATTR_FLAG_F)
- EQUIVALENCE(h5o_flags(6) , H5O_COPY_PRESERVE_NULL_FLAG_F)
- EQUIVALENCE(h5o_flags(7) , H5O_COPY_ALL_F)
- EQUIVALENCE(h5o_flags(8) , H5O_SHMESG_NONE_FLAG_F)
- EQUIVALENCE(h5o_flags(9) , H5O_SHMESG_SDSPACE_FLAG_F)
- EQUIVALENCE(h5o_flags(10) , H5O_SHMESG_DTYPE_FLAG_F)
- EQUIVALENCE(h5o_flags(11) , H5O_SHMESG_FILL_FLAG_F)
- EQUIVALENCE(h5o_flags(12) , H5O_SHMESG_PLINE_FLAG_F)
- EQUIVALENCE(h5o_flags(13) , H5O_SHMESG_ATTR_FLAG_F)
- EQUIVALENCE(h5o_flags(14) , H5O_SHMESG_ALL_FLAG_F)
- EQUIVALENCE(h5o_flags(15) , H5O_HDR_CHUNK0_SIZE_F)
- EQUIVALENCE(h5o_flags(16) , H5O_HDR_ATTR_CRT_ORDER_TRACK_F)
- EQUIVALENCE(h5o_flags(17) , H5O_HDR_ATTR_CRT_ORDER_INDEX_F)
- EQUIVALENCE(h5o_flags(18) , H5O_HDR_ATTR_STORE_PHASE_CHA_F)
- EQUIVALENCE(h5o_flags(19) , H5O_HDR_STORE_TIMES_F)
- EQUIVALENCE(h5o_flags(20) , H5O_HDR_ALL_FLAGS_F)
- EQUIVALENCE(h5o_flags(21) , H5O_SHMESG_MAX_NINDEXES_F)
- EQUIVALENCE(h5o_flags(22) , H5O_SHMESG_MAX_LIST_SIZE_F)
- EQUIVALENCE(h5o_flags(23) , H5O_TYPE_UNKNOWN_F)
- EQUIVALENCE(h5o_flags(24) , H5O_TYPE_GROUP_F)
- EQUIVALENCE(h5o_flags(25) , H5O_TYPE_DATASET_F)
- EQUIVALENCE(h5o_flags(26) , H5O_TYPE_NAMED_DATATYPE_F)
- EQUIVALENCE(h5o_flags(27) , H5O_TYPE_NTYPES_F)
-
!
! H5P flags declaration
!
- INTEGER, PARAMETER :: H5P_FLAGS_LEN = 18
- INTEGER(HID_T) H5P_flags(H5P_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5P_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_FILE_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_FILE_ACCESS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DATASET_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DATASET_XFER_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_FILE_MOUNT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DEFAULT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_ROOT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_OBJECT_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DATASET_ACCESS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_GROUP_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_GROUP_ACCESS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DATATYPE_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_DATATYPE_ACCESS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_STRING_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_ATTRIBUTE_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_OBJECT_COPY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_LINK_CREATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_LINK_ACCESS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_CRT_ORDER_INDEXED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5P_CRT_ORDER_TRACKED_F
!DEC$endif
- COMMON /H5P_FLAGS/ H5P_flags
INTEGER(HID_T) :: H5P_FILE_CREATE_F
INTEGER(HID_T) :: H5P_FILE_ACCESS_F
@@ -691,72 +567,44 @@ MODULE H5GLOBAL
INTEGER(HID_T) :: H5P_LINK_CREATE_F
INTEGER(HID_T) :: H5P_LINK_ACCESS_F
- EQUIVALENCE(H5P_flags(1), H5P_FILE_CREATE_F)
- EQUIVALENCE(H5P_flags(2), H5P_FILE_ACCESS_F)
- EQUIVALENCE(H5P_flags(3), H5P_DATASET_CREATE_F)
- EQUIVALENCE(H5P_flags(4), H5P_DATASET_XFER_F)
- EQUIVALENCE(H5P_flags(5), H5P_FILE_MOUNT_F)
- EQUIVALENCE(H5P_flags(6), H5P_DEFAULT_F)
- EQUIVALENCE(H5P_flags(7), H5P_ROOT_F)
- EQUIVALENCE(H5P_flags(8), H5P_OBJECT_CREATE_F)
- EQUIVALENCE(H5P_flags(9), H5P_DATASET_ACCESS_F)
- EQUIVALENCE(H5P_flags(10), H5P_GROUP_CREATE_F)
- EQUIVALENCE(H5P_flags(11), H5P_GROUP_ACCESS_F)
- EQUIVALENCE(H5P_flags(12), H5P_DATATYPE_CREATE_F)
- EQUIVALENCE(H5P_flags(13), H5P_DATATYPE_ACCESS_F)
- EQUIVALENCE(H5P_flags(14), H5P_STRING_CREATE_F)
- EQUIVALENCE(H5P_flags(15), H5P_ATTRIBUTE_CREATE_F)
- EQUIVALENCE(H5P_flags(16), H5P_OBJECT_COPY_F)
- EQUIVALENCE(H5P_flags(17), H5P_LINK_CREATE_F)
- EQUIVALENCE(H5P_flags(18), H5P_LINK_ACCESS_F)
-
- !
- ! H5P integers flags declaration
- !
- INTEGER, PARAMETER :: H5P_FLAGS_INT_LEN = 2
- INTEGER :: H5P_flags_int(H5P_FLAGS_INT_LEN)
- !DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5P_FLAGS_INT/
- !DEC$endif
- COMMON /H5P_FLAGS_INT/ H5P_flags_int
INTEGER :: H5P_CRT_ORDER_INDEXED_F
INTEGER :: H5P_CRT_ORDER_TRACKED_F
- EQUIVALENCE(H5P_flags_int(1), H5P_CRT_ORDER_INDEXED_F)
- EQUIVALENCE(H5P_flags_int(2), H5P_CRT_ORDER_TRACKED_F)
!
! H5R flags declaration
!
- INTEGER, PARAMETER :: H5R_FLAGS_LEN = 2
- INTEGER :: H5R_flags(H5R_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5R_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5R_OBJECT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5R_DATASET_REGION_F
!DEC$endif
- COMMON /H5R_FLAGS/ H5R_flags
INTEGER :: H5R_OBJECT_F
INTEGER :: H5R_DATASET_REGION_F
-
- EQUIVALENCE(H5R_flags(1), H5R_OBJECT_F)
- EQUIVALENCE(H5R_flags(2), H5R_DATASET_REGION_F)
-
!
! H5S flags declaration
!
- INTEGER, PARAMETER :: H5S_FLAGS_LEN = 18
- INTEGER :: H5S_flags(H5S_FLAGS_LEN)
- INTEGER, PARAMETER :: H5S_HSIZE_FLAGS_LEN = 1
- INTEGER(HSIZE_T) H5S_hsize_flags(H5S_HSIZE_FLAGS_LEN)
- INTEGER, PARAMETER :: H5S_HID_FLAGS_LEN = 1
- INTEGER(HSIZE_T) H5S_hid_flags(H5S_HID_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5S_FLAGS/
- !DEC$ATTRIBUTES DLLEXPORT :: /H5S_HID_FLAGS/
- !DEC$ATTRIBUTES DLLEXPORT :: /H5S_HSIZE_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_UNLIMITED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_ALL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SCALAR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SIMPLE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_NULL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_NOOP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_SET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_OR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_AND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_XOR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_NOTB_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_NOTA_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_APPEND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_PREPEND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SELECT_INVALID_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SEL_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SEL_NONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SEL_POINTS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SEL_HYPERSLABS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5S_SEL_ALL_F
!DEC$endif
- COMMON /H5S_FLAGS/ H5S_flags
- COMMON /H5S_HID_FLAGS/ H5S_hid_flags
- COMMON /H5S_HSIZE_FLAGS/ H5S_hsize_flags
-
+
INTEGER(HSIZE_T) :: H5S_UNLIMITED_F
INTEGER(HID_T) :: H5S_ALL_F
@@ -781,42 +629,46 @@ MODULE H5GLOBAL
INTEGER :: H5S_SEL_POINTS_F
INTEGER :: H5S_SEL_HYPERSLABS_F
INTEGER :: H5S_SEL_ALL_F
-
- EQUIVALENCE(H5S_hid_flags(1), H5S_ALL_F)
-
- EQUIVALENCE(H5S_hsize_flags(1), H5S_UNLIMITED_F)
-
- EQUIVALENCE(H5S_flags(1), H5S_SCALAR_F)
- EQUIVALENCE(H5S_flags(2), H5S_SIMPLE_F)
- EQUIVALENCE(H5S_flags(3), H5S_NULL_F)
- EQUIVALENCE(H5S_flags(4), H5S_SELECT_SET_F)
- EQUIVALENCE(H5S_flags(5), H5S_SELECT_OR_F)
-
- EQUIVALENCE(H5S_flags(6), H5S_SELECT_NOOP_F)
- EQUIVALENCE(H5S_flags(7), H5S_SELECT_AND_F)
- EQUIVALENCE(H5S_flags(8), H5S_SELECT_XOR_F)
- EQUIVALENCE(H5S_flags(9), H5S_SELECT_NOTB_F)
- EQUIVALENCE(H5S_flags(10), H5S_SELECT_NOTA_F)
-
- EQUIVALENCE(H5S_flags(11), H5S_SELECT_APPEND_F)
- EQUIVALENCE(H5S_flags(12), H5S_SELECT_PREPEND_F)
- EQUIVALENCE(H5S_flags(13), H5S_SELECT_INVALID_F)
- EQUIVALENCE(H5S_flags(14), H5S_SEL_ERROR_F)
- EQUIVALENCE(H5S_flags(15), H5S_SEL_NONE_F)
-
- EQUIVALENCE(H5S_flags(16), H5S_SEL_POINTS_F)
- EQUIVALENCE(H5S_flags(17), H5S_SEL_HYPERSLABS_F)
- EQUIVALENCE(H5S_flags(18), H5S_SEL_ALL_F)
-
!
! H5T flags declaration
!
- INTEGER, PARAMETER :: H5T_FLAGS_LEN = 35
- INTEGER :: H5T_flags(H5T_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5T_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NO_CLASS_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_INTEGER_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_FLOAT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_TIME_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STRING_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_BITFIELD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_OPAQUE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_COMPOUND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_REFERENCE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ENUM_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_VLEN_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ARRAY_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ORDER_LE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ORDER_BE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ORDER_VAX_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ORDER_NONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_ORDER_MIXED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_PAD_ZERO_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_PAD_ONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_PAD_BACKGROUND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_PAD_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_SGN_NONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_SGN_2_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_SGN_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NORM_IMPLIED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NORM_MSBSET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_NORM_NONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_CSET_ASCII_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_CSET_UTF8_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STR_NULLTERM_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STR_NULLPAD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STR_SPACEPAD_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_STR_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_DIR_ASCEND_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5T_DIR_DESCEND_F
!DEC$endif
- COMMON /H5T_FLAGS/ H5T_flags
INTEGER :: H5T_NO_CLASS_F
INTEGER :: H5T_INTEGER_F
@@ -853,51 +705,31 @@ MODULE H5GLOBAL
INTEGER :: H5T_STR_ERROR_F
INTEGER :: H5T_DIR_ASCEND_F
INTEGER :: H5T_DIR_DESCEND_F
-
- EQUIVALENCE(H5T_flags(1), H5T_NO_CLASS_F)
- EQUIVALENCE(H5T_flags(2), H5T_INTEGER_F)
- EQUIVALENCE(H5T_flags(3), H5T_FLOAT_F)
- EQUIVALENCE(H5T_flags(4), H5T_TIME_F)
- EQUIVALENCE(H5T_flags(5), H5T_STRING_F)
- EQUIVALENCE(H5T_flags(6), H5T_BITFIELD_F)
- EQUIVALENCE(H5T_flags(7), H5T_OPAQUE_F)
- EQUIVALENCE(H5T_flags(8), H5T_COMPOUND_F)
- EQUIVALENCE(H5T_flags(9), H5T_REFERENCE_F)
- EQUIVALENCE(H5T_flags(10), H5T_ENUM_F)
- EQUIVALENCE(H5T_flags(11), H5T_ORDER_LE_F)
- EQUIVALENCE(H5T_flags(12), H5T_ORDER_BE_F)
- EQUIVALENCE(H5T_flags(13), H5T_ORDER_MIXED_F)
- EQUIVALENCE(H5T_flags(14), H5T_ORDER_VAX_F)
- EQUIVALENCE(H5T_flags(15), H5T_ORDER_NONE_F)
- EQUIVALENCE(H5T_flags(16), H5T_PAD_ZERO_F)
- EQUIVALENCE(H5T_flags(17), H5T_PAD_ONE_F)
- EQUIVALENCE(H5T_flags(18), H5T_PAD_BACKGROUND_F)
- EQUIVALENCE(H5T_flags(19), H5T_PAD_ERROR_F)
- EQUIVALENCE(H5T_flags(20), H5T_SGN_NONE_F)
- EQUIVALENCE(H5T_flags(21), H5T_SGN_2_F)
- EQUIVALENCE(H5T_flags(22), H5T_SGN_ERROR_F)
- EQUIVALENCE(H5T_flags(23), H5T_NORM_IMPLIED_F)
- EQUIVALENCE(H5T_flags(24), H5T_NORM_MSBSET_F)
- EQUIVALENCE(H5T_flags(25), H5T_NORM_NONE_F)
- EQUIVALENCE(H5T_flags(26), H5T_CSET_ASCII_F)
- EQUIVALENCE(H5T_flags(27), H5T_CSET_UTF8_F)
- EQUIVALENCE(H5T_flags(28), H5T_STR_NULLTERM_F)
- EQUIVALENCE(H5T_flags(29), H5T_STR_NULLPAD_F)
- EQUIVALENCE(H5T_flags(30), H5T_STR_SPACEPAD_F)
- EQUIVALENCE(H5T_flags(31), H5T_STR_ERROR_F)
- EQUIVALENCE(H5T_flags(32), H5T_VLEN_F)
- EQUIVALENCE(H5T_flags(33), H5T_ARRAY_F)
- EQUIVALENCE(H5T_flags(34), H5T_DIR_ASCEND_F)
- EQUIVALENCE(H5T_flags(35), H5T_DIR_DESCEND_F)
!
! H5Z flags declaration
!
- INTEGER, PARAMETER :: H5Z_FLAGS_LEN = 20
- INTEGER :: H5Z_flags(H5Z_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5Z_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_ERROR_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_NONE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_ALL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_DEFLATE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_SHUFFLE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_FLETCHER32_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_SZIP_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_ERROR_EDC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_DISABLE_EDC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_ENABLE_EDC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_NO_EDC_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FLAG_OPTIONAL_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_ENCODE_ENABLED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_DECODE_ENABLED_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_NBIT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_FILTER_SCALEOFFSET_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_SO_FLOAT_DSCALE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_SO_FLOAT_ESCALE_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_SO_INT_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5Z_SO_INT_MINBITS_DEFAULT_F
!DEC$endif
- COMMON /H5Z_FLAGS/ H5Z_flags
INTEGER :: H5Z_FILTER_ERROR_F
INTEGER :: H5Z_FILTER_NONE_F
@@ -919,58 +751,16 @@ MODULE H5GLOBAL
INTEGER :: H5Z_SO_FLOAT_ESCALE_F
INTEGER :: H5Z_SO_INT_F
INTEGER :: H5Z_SO_INT_MINBITS_DEFAULT_F
-
- EQUIVALENCE(H5Z_flags(1), H5Z_FILTER_ERROR_F)
- EQUIVALENCE(H5Z_flags(2), H5Z_FILTER_NONE_F)
- EQUIVALENCE(H5Z_flags(3), H5Z_FILTER_DEFLATE_F)
- EQUIVALENCE(H5Z_flags(4), H5Z_FILTER_SHUFFLE_F)
- EQUIVALENCE(H5Z_flags(5), H5Z_FILTER_FLETCHER32_F)
- EQUIVALENCE(H5Z_flags(6), H5Z_ERROR_EDC_F)
- EQUIVALENCE(H5Z_flags(7), H5Z_DISABLE_EDC_F)
- EQUIVALENCE(H5Z_flags(8), H5Z_ENABLE_EDC_F)
- EQUIVALENCE(H5Z_flags(9), H5Z_NO_EDC_F)
- EQUIVALENCE(H5Z_flags(10), H5Z_FILTER_SZIP_F)
- EQUIVALENCE(H5Z_flags(11), H5Z_FLAG_OPTIONAL_F)
- EQUIVALENCE(H5Z_flags(12), H5Z_FILTER_ENCODE_ENABLED_F)
- EQUIVALENCE(H5Z_flags(13), H5Z_FILTER_DECODE_ENABLED_F)
- EQUIVALENCE(H5Z_flags(14), H5Z_FILTER_ALL_F)
- EQUIVALENCE(H5Z_flags(15), H5Z_FILTER_NBIT_F)
- EQUIVALENCE(H5Z_flags(16), H5Z_FILTER_SCALEOFFSET_F)
- EQUIVALENCE(H5Z_flags(17), H5Z_SO_FLOAT_DSCALE_F)
- EQUIVALENCE(H5Z_flags(18), H5Z_SO_FLOAT_ESCALE_F)
- EQUIVALENCE(H5Z_flags(19), H5Z_SO_INT_F)
- EQUIVALENCE(H5Z_flags(20), H5Z_SO_INT_MINBITS_DEFAULT_F)
-
!
! H5 Library flags declaration
!
- INTEGER, PARAMETER :: H5LIB_FLAGS_LEN = 2
- INTEGER :: H5LIB_flags(H5LIB_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
- !DEC$ATTRIBUTES DLLEXPORT :: /H5LIB_FLAGS/
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_SZIP_EC_OM_F
+ !DEC$ATTRIBUTES DLLEXPORT :: H5_SZIP_NN_OM_F
!DEC$endif
- COMMON /H5LIB_FLAGS/ H5LIB_flags
+
INTEGER :: H5_SZIP_EC_OM_F
INTEGER :: H5_SZIP_NN_OM_F
- !
- EQUIVALENCE(H5LIB_flags(1), H5_SZIP_EC_OM_F)
- EQUIVALENCE(H5LIB_flags(2), H5_SZIP_NN_OM_F)
-
-
- ! General H5 flags declarations
- !
-!!$ INTEGER, PARAMETER :: H5_FLAGS_LEN = 2
-!!$ INTEGER H5_flags(H5_FLAGS_LEN)
-!!$!DEC$if defined(BUILD_HDF5_DLL)
-!!$!DEC$ATTRIBUTES DLLEXPORT :: /H5_FLAGS/
-!!$!DEC$endif
-!!$ COMMON /H5_FLAGS/ H5_flags
-!!$
-!!$ INTEGER :: _F
-!!$ INTEGER :: H5F_SCOPE_LOCAL_F
-!!$
-!!$ EQUIVALENCE(H5F_flags(1), H5F_SCOPE_GLOBAL_F)
-!!$ EQUIVALENCE(H5F_flags(2), H5F_SCOPE_LOCAL_F)
CONTAINS
diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt
index 1661a10..3c3eb8f 100644
--- a/fortran/test/CMakeLists.txt
+++ b/fortran/test/CMakeLists.txt
@@ -32,7 +32,7 @@ set_target_properties (H5_test_buildiface PROPERTIES
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
file (MAKE_DIRECTORY "${HDF5_F90_BINARY_DIR}/shared")
if (WIN32)
set (MODSH_BUILD_DIR ${CMAKE_Fortran_MODULE_DIRECTORY}/shared/${CMAKE_BUILD_TYPE})
@@ -64,7 +64,7 @@ set_target_properties (${HDF5_F90_C_TEST_LIB_TARGET} PROPERTIES
LINKER_LANGUAGE C
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_F90_C_TEST_LIBSH_TARGET} SHARED t.c)
TARGET_C_PROPERTIES (${HDF5_F90_C_TEST_LIBSH_TARGET} SHARED " " " ")
target_link_libraries (${HDF5_F90_C_TEST_LIBSH_TARGET}
@@ -94,7 +94,7 @@ add_custom_target (H5testgen ALL
)
set_source_files_properties (${HDF5_F90_BINARY_DIR}/tf_gen.F90 PROPERTIES GENERATED TRUE)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (CMDSH $<TARGET_FILE:H5_test_buildiface>)
add_custom_command (
OUTPUT ${HDF5_F90_BINARY_DIR}/shared/tf_gen.F90
@@ -117,7 +117,7 @@ set (HDF5_F90_TF_SOURCES
tf.F90
)
set_source_files_properties (${HDF5_F90_TF_SOURCES} PROPERTIES LANGUAGE Fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (HDF5_F90_TF_SOURCES_SHARED
# generated file
${HDF5_F90_BINARY_DIR}/shared/tf_gen.F90
@@ -150,7 +150,7 @@ if (WIN32)
endif ()
add_dependencies(${HDF5_F90_TEST_LIB_TARGET} H5testgen)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_F90_TEST_LIBSH_TARGET} SHARED ${HDF5_F90_TF_SOURCES_SHARED})
set (SHARED_LINK_FLAGS " ")
if (WIN32 AND MSVC)
@@ -220,7 +220,7 @@ set_target_properties (testhdf5_fortran PROPERTIES
)
add_dependencies (testhdf5_fortran ${HDF5_F90_TEST_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (testhdf5_fortran-shared
fortranlib_test.F90
tH5A.F90
@@ -284,7 +284,7 @@ set_target_properties (testhdf5_fortran_1_8 PROPERTIES
)
add_dependencies (testhdf5_fortran_1_8 ${HDF5_F90_TEST_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (testhdf5_fortran_1_8-shared
fortranlib_test_1_8.F90
tH5O.F90
@@ -341,7 +341,7 @@ set_target_properties (fortranlib_test_F03 PROPERTIES
)
add_dependencies (fortranlib_test_F03 ${HDF5_F90_TEST_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (fortranlib_test_F03-shared
fortranlib_test_F03.F90
tH5E_F03.F90
@@ -392,7 +392,7 @@ set_target_properties (fflush1 PROPERTIES
)
add_dependencies (fflush1 ${HDF5_F90_TEST_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (fflush1-shared fflush1.F90)
TARGET_NAMING (fflush1-shared SHARED)
TARGET_FORTRAN_PROPERTIES (fflush1-shared SHARED " " " ")
@@ -433,7 +433,7 @@ set_target_properties (fflush2 PROPERTIES
)
add_dependencies (fflush2 ${HDF5_F90_TEST_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (fflush2-shared fflush2.F90)
TARGET_NAMING (fflush2-shared SHARED)
TARGET_FORTRAN_PROPERTIES (fflush2-shared SHARED " " " ")
diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake
index e171e7c..4d06359 100644
--- a/fortran/test/CMakeTests.cmake
+++ b/fortran/test/CMakeTests.cmake
@@ -132,7 +132,7 @@ set_tests_properties (FORTRAN_fflush1 PROPERTIES DEPENDS FORTRAN_testhdf5-clear-
add_test (NAME FORTRAN_fflush2 COMMAND $<TARGET_FILE:fflush2>)
set_tests_properties (FORTRAN_fflush2 PROPERTIES DEPENDS FORTRAN_fflush1)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_test (
NAME FORTRAN_testhdf5-shared-clear-objects
COMMAND ${CMAKE_COMMAND}
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
index 345a739..c870aed 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -36,7 +36,7 @@ set_target_properties (H5HL_buildiface PROPERTIES
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
file (MAKE_DIRECTORY "${HDF5_HL_F90_SRC_BINARY_DIR}/shared")
if (WIN32)
set (MODSH_BUILD_DIR ${CMAKE_Fortran_MODULE_DIRECTORY}/shared/${CMAKE_BUILD_TYPE})
@@ -87,7 +87,7 @@ set_target_properties (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES
)
set (install_targets ${HDF5_HL_F90_C_LIB_TARGET})
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED ${HDF5_HL_F90_C_SOURCES} ${HDF5_HL_F90_HEADERS})
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED " " " ")
target_link_libraries (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_F90_C_LIBSH_TARGET} ${HDF5_HL_LIBSH_TARGET})
@@ -129,7 +129,7 @@ set_source_files_properties (
${HDF5_HL_F90_SRC_BINARY_DIR}/H5TBff_gen.F90
PROPERTIES GENERATED TRUE
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (CMDSH $<TARGET_FILE:H5HL_buildiface>)
add_custom_command (
OUTPUT ${HDF5_HL_F90_SRC_BINARY_DIR}/shared/H5LTff_gen.F90 ${HDF5_HL_F90_SRC_BINARY_DIR}/shared/H5TBff_gen.F90
@@ -157,7 +157,7 @@ set (HDF5_HL_F90_F_SOURCES
)
set_source_files_properties (${HDF5_HL_F90_F_SOURCES} PROPERTIES LANGUAGE Fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (HDF5_HL_F90_F_SOURCES_SHARED
${HDF5_HL_F90_F_BASE_SOURCES}
@@ -187,7 +187,7 @@ endif ()
set (install_targets ${install_targets} ${HDF5_HL_F90_LIB_TARGET})
add_dependencies(${HDF5_HL_F90_LIB_TARGET} H5HLgen)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_library (${HDF5_HL_F90_LIBSH_TARGET} SHARED ${HDF5_HL_F90_F_SOURCES_SHARED})
set (SHARED_LINK_FLAGS " ")
if (WIN32 AND MSVC)
@@ -236,7 +236,7 @@ install (
fortheaders
)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
set (modsh_files
${MODSH_BUILD_DIR}/h5ds.mod
${MODSH_BUILD_DIR}/h5tb.mod
@@ -259,7 +259,7 @@ endif ()
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
if (HDF5_EXPORTED_TARGETS)
- if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+ if (BUILD_SHARED_LIBS)
INSTALL_TARGET_PDB (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
#INSTALL_TARGET_PDB (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
endif ()
diff --git a/hl/fortran/src/H5DSff.F90 b/hl/fortran/src/H5DSff.F90
index 4f0d040..2dca479 100644
--- a/hl/fortran/src/H5DSff.F90
+++ b/hl/fortran/src/H5DSff.F90
@@ -44,13 +44,6 @@ CONTAINS
IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsset_scale_f
-!DEC$endif
-!
-
INTEGER(hid_t), INTENT(in) :: dsid ! The dataset to be made a Dimension Scale
CHARACTER(LEN=*), INTENT(in), OPTIONAL :: dimname ! The dimension name
INTEGER :: errcode ! Error code
@@ -99,12 +92,6 @@ CONTAINS
IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsattach_scale_f
-!DEC$endif
-!
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached
INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with.
@@ -148,13 +135,7 @@ CONTAINS
SUBROUTINE H5DSdetach_scale_f( did, dsid, idx, errcode)
IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsdetach_scale_f
-!DEC$endif
-!
+
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached
INTEGER , INTENT(in) :: idx ! the dimension of did to detach
@@ -199,13 +180,7 @@ CONTAINS
SUBROUTINE H5DSis_attached_f( did, dsid, idx, is_attached, errcode)
IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsis_attached_f
-!DEC$endif
-!
+
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached
INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with
@@ -264,13 +239,7 @@ CONTAINS
SUBROUTINE H5DSis_scale_f( did, is_scale, errcode)
IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsis_scale_f
-!DEC$endif
-!
+
INTEGER(hid_t), INTENT(in) :: did ! the data set to query
LOGICAL , INTENT(out) :: is_scale ! logical:
! .TRUE. if did is a Dimension Scale
@@ -319,13 +288,6 @@ CONTAINS
IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsset_label_f
-!DEC$endif
-!
-
INTEGER(hid_t), INTENT(in) :: did ! The dataset
INTEGER , INTENT(in) :: idx ! The dimension
CHARACTER(LEN=*), INTENT(in) :: label ! The label
@@ -375,13 +337,6 @@ CONTAINS
IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsget_label_f
-!DEC$endif
-!
-
INTEGER(hid_t), INTENT(in) :: did ! The dataget
INTEGER , INTENT(in) :: idx ! The dimension
CHARACTER(LEN=*), INTENT(in) :: label ! The label
@@ -430,13 +385,6 @@ CONTAINS
IMPLICIT NONE
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsget_scale_name_f
-!DEC$endif
-!
-
INTEGER(hid_t), INTENT(in) :: did ! The dataget
CHARACTER(LEN=*), INTENT(out) :: name ! The name
INTEGER(size_t) , INTENT(inout) :: size ! The length of the name buffer
@@ -478,13 +426,6 @@ CONTAINS
SUBROUTINE H5DSget_num_scales_f( did, idx, num_scales, errcode)
IMPLICIT NONE
-
-!
-!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_HL_DLL)
-!DEC$attributes dllexport :: h5dsget_num_scales_f
-!DEC$endif
-!
INTEGER(hid_t), INTENT(in) :: did ! the dataset
INTEGER , INTENT(in) :: idx ! the dimension of did to query
INTEGER , INTENT(out) :: num_scales ! the number of Dimension Scales associated with did
diff --git a/hl/fortran/test/CMakeLists.txt b/hl/fortran/test/CMakeLists.txt
index 3138173..fbd31c5 100644
--- a/hl/fortran/test/CMakeLists.txt
+++ b/hl/fortran/test/CMakeLists.txt
@@ -14,7 +14,7 @@ target_link_libraries (hl_f90_tstds ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TAR
target_include_directories (hl_f90_tstds PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
set_target_properties (hl_f90_tstds PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstds PROPERTIES FOLDER test/hl/fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (hl_f90_tstds-shared tstds.F90)
TARGET_NAMING (hl_f90_tstds-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstds-shared SHARED " " " ")
@@ -35,7 +35,7 @@ target_link_libraries (hl_f90_tstlite ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_T
target_include_directories (hl_f90_tstlite PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
set_target_properties (hl_f90_tstlite PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstlite PROPERTIES FOLDER test/hl/fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (hl_f90_tstlite-shared tstlite.F90)
TARGET_NAMING (hl_f90_tstlite-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstlite-shared SHARED " " " ")
@@ -56,7 +56,7 @@ target_link_libraries (hl_f90_tstimage ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB
target_include_directories (hl_f90_tstimage PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
set_target_properties (hl_f90_tstimage PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tstimage PROPERTIES FOLDER test/hl/fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (hl_f90_tstimage-shared tstimage.F90)
TARGET_NAMING (hl_f90_tstimage-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tstimage-shared SHARED " " " ")
@@ -77,7 +77,7 @@ target_link_libraries (hl_f90_tsttable ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_
target_include_directories (hl_f90_tsttable PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static)
set_target_properties (hl_f90_tsttable PROPERTIES LINKER_LANGUAGE Fortran)
set_target_properties (hl_f90_tsttable PROPERTIES FOLDER test/hl/fortran)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_executable (hl_f90_tsttable-shared tsttable.F90)
TARGET_NAMING (hl_f90_tsttable-shared SHARED)
TARGET_FORTRAN_PROPERTIES (hl_f90_tsttable-shared SHARED " " " ")
diff --git a/hl/fortran/test/CMakeTests.cmake b/hl/fortran/test/CMakeTests.cmake
index 90cc3a3..d541377 100644
--- a/hl/fortran/test/CMakeTests.cmake
+++ b/hl/fortran/test/CMakeTests.cmake
@@ -96,7 +96,7 @@ else ()
endif ()
set_tests_properties (HL_FORTRAN_f90_tsttable PROPERTIES DEPENDS HL_FORTRAN_test-clear-objects)
-if (BUILD_SHARED_LIBS AND NOT SKIP_HDF5_FORTRAN_SHARED)
+if (BUILD_SHARED_LIBS)
add_test (
NAME HL_FORTRAN_test-shared-clear-objects
COMMAND ${CMAKE_COMMAND}
diff --git a/release_docs/INSTALL_CMake.txt b/release_docs/INSTALL_CMake.txt
index 26750b5..f20ca43 100644
--- a/release_docs/INSTALL_CMake.txt
+++ b/release_docs/INSTALL_CMake.txt
@@ -594,7 +594,6 @@ HDF5_USE_FOLDERS "Enable folder grouping of projects in IDEs."
HDF5_WANT_DATA_ACCURACY "IF data accuracy is guaranteed during data conversions" ON
HDF5_WANT_DCONV_EXCEPTION "exception handling functions is checked during data conversions" ON
HDF5_ENABLE_THREADSAFE "Enable Threadsafety" OFF
-SKIP_HDF5_FORTRAN_SHARED "Do not build the fortran shared libraries" OFF
if (APPLE)
HDF5_BUILD_WITH_INSTALL_NAME "Build with library install_name set to the installation path" OFF
if (CMAKE_BUILD_TYPE MATCHES Debug)
diff --git a/src/H5.c b/src/H5.c
index f0a222d..b8fd885 100644
--- a/src/H5.c
+++ b/src/H5.c
@@ -19,18 +19,18 @@
/***********/
/* Headers */
/***********/
-#include "H5private.h" /* Generic Functions */
-#include "H5ACprivate.h" /* Metadata cache */
-#include "H5Dprivate.h" /* Datasets */
-#include "H5Eprivate.h" /* Error handling */
-#include "H5FLprivate.h" /* Free lists */
-#include "H5FSprivate.h" /* File free space */
-#include "H5Lprivate.h" /* Links */
-#include "H5MMprivate.h" /* Memory management */
-#include "H5Pprivate.h" /* Property lists */
-#include "H5SLprivate.h" /* Skip lists */
-#include "H5Tprivate.h" /* Datatypes */
-#include "H5FSprivate.h" /* File free space */
+#include "H5private.h" /* Generic Functions */
+#include "H5ACprivate.h" /* Metadata cache */
+#include "H5Dprivate.h" /* Datasets */
+#include "H5Eprivate.h" /* Error handling */
+#include "H5FLprivate.h" /* Free lists */
+#include "H5FSprivate.h" /* File free space */
+#include "H5Lprivate.h" /* Links */
+#include "H5MMprivate.h" /* Memory management */
+#include "H5Pprivate.h" /* Property lists */
+#include "H5SLprivate.h" /* Skip lists */
+#include "H5Tprivate.h" /* Datatypes */
+#include "H5FSprivate.h" /* File free space */
/****************/
/* Local Macros */
diff --git a/src/H5Fint.c b/src/H5Fint.c
index 0eb1ea9..8212eb5 100644
--- a/src/H5Fint.c
+++ b/src/H5Fint.c
@@ -1574,7 +1574,7 @@ H5F__flush_phase2(H5F_t *f, hid_t meta_dxpl_id, hid_t raw_dxpl_id, hbool_t closi
*
* Purpose: Flushes cached data.
*
- * Return: Non-negative on success/Negative on failure
+ * Return: SUCCEED/FAIL
*-------------------------------------------------------------------------
*/
herr_t
diff --git a/src/H5Fmount.c b/src/H5Fmount.c
index 3cd5c21..17d7850 100644
--- a/src/H5Fmount.c
+++ b/src/H5Fmount.c
@@ -25,9 +25,6 @@
#include "H5MMprivate.h" /* Memory management */
/* PRIVATE PROTOTYPES */
-static herr_t H5F_mount(H5G_loc_t *loc, const char *name, H5F_t *child,
- hid_t plist_id, hid_t dxpl_id);
-static herr_t H5F_unmount(H5G_loc_t *loc, const char *name, hid_t dxpl_id);
static void H5F_mount_count_ids_recurse(H5F_t *f, unsigned *nopen_files, unsigned *nopen_objs);
@@ -99,7 +96,7 @@ done:
*
*-------------------------------------------------------------------------
*/
-static herr_t
+herr_t
H5F_mount(H5G_loc_t *loc, const char *name, H5F_t *child,
hid_t H5_ATTR_UNUSED plist_id, hid_t dxpl_id)
{
@@ -265,7 +262,7 @@ done:
*
*-------------------------------------------------------------------------
*/
-static herr_t
+herr_t
H5F_unmount(H5G_loc_t *loc, const char *name, hid_t dxpl_id)
{
H5G_t *child_group = NULL; /* Child's group in parent mtab */
diff --git a/src/H5Fpkg.h b/src/H5Fpkg.h
index d702506..b50b4e5 100644
--- a/src/H5Fpkg.h
+++ b/src/H5Fpkg.h
@@ -360,16 +360,16 @@ struct H5F_file_t {
* to shared H5F_file_t structs.
*/
struct H5F_t {
- char *open_name; /* Name used to open file */
- char *actual_name; /* Actual name of the file, after resolving symlinks, etc. */
- char *extpath; /* Path for searching target external link file */
- H5F_file_t *shared; /* The shared file info */
- unsigned nopen_objs; /* Number of open object headers*/
- H5FO_t *obj_count; /* # of time each object is opened through top file structure */
- hid_t file_id; /* ID of this file */
- hbool_t closing; /* File is in the process of being closed */
- struct H5F_t *parent; /* Parent file that this file is mounted to */
- unsigned nmounts; /* Number of children mounted to this file */
+ char *open_name; /* Name used to open file */
+ char *actual_name; /* Actual name of the file, after resolving symlinks, etc. */
+ char *extpath; /* Path for searching target external link file */
+ H5F_file_t *shared; /* The shared file info */
+ unsigned nopen_objs; /* Number of open object headers */
+ H5FO_t *obj_count; /* # of time each object is opened through top file structure */
+ hid_t file_id; /* ID of this file */
+ hbool_t closing; /* File is in the process of being closed */
+ struct H5F_t *parent; /* Parent file that this file is mounted to */
+ unsigned nmounts; /* Number of children mounted to this file */
#ifdef H5_HAVE_PARALLEL
H5P_coll_md_read_flag_t coll_md_read; /* Do all metadata reads collectively */
hbool_t coll_md_write; /* Do all metadata writes collectively */
@@ -399,11 +399,12 @@ H5_DLL herr_t H5F__dest(H5F_t *f, hid_t meta_dxpl_id, hid_t raw_dxpl_id, hbool_t
H5_DLL herr_t H5F__flush(H5F_t *f, hid_t meta_dxpl_id, hid_t raw_dxpl_id, hbool_t closing);
H5_DLL htri_t H5F__is_hdf5(const char *name, hid_t meta_dxpl_id, hid_t raw_dxpl_id);
H5_DLL herr_t H5F_get_objects(const H5F_t *f, unsigned types, size_t max_index, hid_t *obj_id_list, hbool_t app_ref, size_t *obj_id_count_ptr);
-H5_DLL ssize_t H5F_get_file_image(H5F_t *f, void *buf_ptr, size_t buf_len,
- hid_t meta_dxpl_id, hid_t raw_dxpl_id);
+H5_DLL ssize_t H5F_get_file_image(H5F_t *f, void *buf_ptr, size_t buf_len, hid_t meta_dxpl_id, hid_t raw_dxpl_id);
H5_DLL herr_t H5F_close(H5F_t *f);
/* File mount related routines */
+H5_DLL herr_t H5F_mount(H5G_loc_t *loc, const char *name, H5F_t *child, hid_t plist_id, hid_t dxpl_id);
+H5_DLL herr_t H5F_unmount(H5G_loc_t *loc, const char *name, hid_t dxpl_id);
H5_DLL herr_t H5F_close_mounts(H5F_t *f);
H5_DLL int H5F_term_unmount_cb(void *obj_ptr, hid_t obj_id, void *key);
H5_DLL herr_t H5F_mount_count_ids(H5F_t *f, unsigned *nopen_files, unsigned *nopen_objs);
diff --git a/src/H5Fquery.c b/src/H5Fquery.c
index cc2399b..61b4183 100644
--- a/src/H5Fquery.c
+++ b/src/H5Fquery.c
@@ -32,10 +32,10 @@
/***********/
/* Headers */
/***********/
-#include "H5private.h" /* Generic Functions */
-#include "H5Eprivate.h" /* Error handling */
-#include "H5Fpkg.h" /* File access */
-#include "H5FDprivate.h" /* File drivers */
+#include "H5private.h" /* Generic Functions */
+#include "H5Eprivate.h" /* Error handling */
+#include "H5Fpkg.h" /* File access */
+#include "H5FDprivate.h" /* File drivers */
/****************/
diff --git a/src/H5Pprivate.h b/src/H5Pprivate.h
index a468464..374c117 100644
--- a/src/H5Pprivate.h
+++ b/src/H5Pprivate.h
@@ -17,6 +17,9 @@
#ifndef _H5Pprivate_H
#define _H5Pprivate_H
+/* Early typedefs to avoid circular dependencies */
+typedef struct H5P_genplist_t H5P_genplist_t;
+
/* Include package's public header */
#include "H5Ppublic.h"
@@ -52,12 +55,7 @@ typedef enum H5P_coll_md_read_flag_t {
H5P_USER_TRUE = 1
} H5P_coll_md_read_flag_t;
-/* Forward declarations (for prototypes & type definitions) */
-struct H5O_fill_t;
-struct H5T_t;
-
/* Forward declarations for anonymous H5P objects */
-typedef struct H5P_genplist_t H5P_genplist_t;
typedef struct H5P_genclass_t H5P_genclass_t;
typedef enum H5P_plist_type_t {
@@ -145,6 +143,10 @@ H5_DLLVAR const struct H5P_libclass_t H5P_CLS_FACC[1]; /* File access */
/* Library Private Prototypes */
/******************************/
+/* Forward declaration of structs used below */
+struct H5O_fill_t;
+struct H5T_t;
+
/* Package initialization routine */
H5_DLL herr_t H5P_init(void);
diff --git a/src/hdf5.h b/src/hdf5.h
index fc4541a..1709375 100644
--- a/src/hdf5.h
+++ b/src/hdf5.h
@@ -20,35 +20,35 @@
#define _HDF5_H
#include "H5public.h"
-#include "H5Apublic.h" /* Attributes */
-#include "H5ACpublic.h" /* Metadata cache */
-#include "H5Dpublic.h" /* Datasets */
-#include "H5Epublic.h" /* Errors */
-#include "H5Fpublic.h" /* Files */
-#include "H5FDpublic.h" /* File drivers */
-#include "H5Gpublic.h" /* Groups */
-#include "H5Ipublic.h" /* ID management */
-#include "H5Lpublic.h" /* Links */
-#include "H5MMpublic.h" /* Memory management */
-#include "H5Opublic.h" /* Object headers */
-#include "H5Ppublic.h" /* Property lists */
-#include "H5PLpublic.h" /* Plugins */
-#include "H5Rpublic.h" /* References */
-#include "H5Spublic.h" /* Dataspaces */
-#include "H5Tpublic.h" /* Datatypes */
-#include "H5Zpublic.h" /* Data filters */
+#include "H5Apublic.h" /* Attributes */
+#include "H5ACpublic.h" /* Metadata cache */
+#include "H5Dpublic.h" /* Datasets */
+#include "H5Epublic.h" /* Errors */
+#include "H5Fpublic.h" /* Files */
+#include "H5FDpublic.h" /* File drivers */
+#include "H5Gpublic.h" /* Groups */
+#include "H5Ipublic.h" /* ID management */
+#include "H5Lpublic.h" /* Links */
+#include "H5MMpublic.h" /* Memory management */
+#include "H5Opublic.h" /* Object headers */
+#include "H5Ppublic.h" /* Property lists */
+#include "H5PLpublic.h" /* Plugins */
+#include "H5Rpublic.h" /* References */
+#include "H5Spublic.h" /* Dataspaces */
+#include "H5Tpublic.h" /* Datatypes */
+#include "H5Zpublic.h" /* Data filters */
/* Predefined file drivers */
-#include "H5FDcore.h" /* Files stored entirely in memory */
-#include "H5FDdirect.h" /* Linux direct I/O */
-#include "H5FDfamily.h" /* File families */
-#include "H5FDlog.h" /* sec2 driver with I/O logging (for debugging) */
-#include "H5FDmpi.h" /* MPI-based file drivers */
-#include "H5FDmulti.h" /* Usage-partitioned file family */
-#include "H5FDsec2.h" /* POSIX unbuffered file I/O */
-#include "H5FDstdio.h" /* Standard C buffered I/O */
+#include "H5FDcore.h" /* Files stored entirely in memory */
+#include "H5FDdirect.h" /* Linux direct I/O */
+#include "H5FDfamily.h" /* File families */
+#include "H5FDlog.h" /* sec2 driver with I/O logging (for debugging) */
+#include "H5FDmpi.h" /* MPI-based file drivers */
+#include "H5FDmulti.h" /* Usage-partitioned file family */
+#include "H5FDsec2.h" /* POSIX unbuffered file I/O */
+#include "H5FDstdio.h" /* Standard C buffered I/O */
#ifdef H5_HAVE_WINDOWS
-#include "H5FDwindows.h" /* Windows buffered I/O */
+#include "H5FDwindows.h" /* Win32 I/O */
#endif
#endif
diff --git a/test/h5test.c b/test/h5test.c
index af45589..bbdd58b 100644
--- a/test/h5test.c
+++ b/test/h5test.c
@@ -104,68 +104,6 @@ static herr_t h5_errors(hid_t estack, void *client_data);
static char * h5_fixname_real(const char *base_name, hid_t fapl, const char *suffix,
char *fullname, size_t size, hbool_t nest_printf);
-
-
-/* A non-usable VFD class and its functions.
- *
- * Usable for testing things like ID handling where we shouldn't mess with the real VFDs.
- */
-static H5FD_t *dummy_vfd_open(const char *name, unsigned flags, hid_t fapl_id, haddr_t maxaddr);
-static H5FD_t *dummy_vfd_open(const char H5_ATTR_UNUSED *name, unsigned H5_ATTR_UNUSED flags, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED maxaddr) { return NULL; }
-
-static herr_t dummy_vfd_close(H5FD_t *_file);
-static herr_t dummy_vfd_close(H5FD_t H5_ATTR_UNUSED *_file) { return FAIL; }
-
-static haddr_t dummy_vfd_get_eoa(const H5FD_t *file, H5FD_mem_t type);
-static haddr_t dummy_vfd_get_eoa(const H5FD_t H5_ATTR_UNUSED *file, H5FD_mem_t H5_ATTR_UNUSED type) { return HADDR_UNDEF; }
-
-static herr_t dummy_vfd_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t addr);
-static herr_t dummy_vfd_set_eoa(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, haddr_t H5_ATTR_UNUSED addr) { return FAIL; }
-
-static haddr_t dummy_vfd_get_eof(const H5FD_t *file, H5FD_mem_t type);
-static haddr_t dummy_vfd_get_eof(const H5FD_t H5_ATTR_UNUSED *file, H5FD_mem_t H5_ATTR_UNUSED type) { return HADDR_UNDEF; }
-
-static herr_t dummy_vfd_read(H5FD_t *_file, H5FD_mem_t type, hid_t fapl_id, haddr_t addr, size_t size, void *buf);
-static herr_t dummy_vfd_read(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED addr, size_t H5_ATTR_UNUSED size, void H5_ATTR_UNUSED *buf) { return FAIL; }
-
-static herr_t dummy_vfd_write(H5FD_t *_file, H5FD_mem_t type, hid_t fapl_id, haddr_t addr, size_t size, const void *buf);
-static herr_t dummy_vfd_write(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED addr, size_t H5_ATTR_UNUSED size, const void H5_ATTR_UNUSED *buf) { return FAIL; }
-
-static H5FD_class_t dummy_vfd_class_g = {
- "fake", /* name */
- 1, /* maxaddr */
- H5F_CLOSE_WEAK, /* fc_degree */
- NULL, /* terminate */
- NULL, /* sb_size */
- NULL, /* sb_encode */
- NULL, /* sb_decode */
- 0, /* fapl_size */
- NULL, /* fapl_get */
- NULL, /* fapl_copy */
- NULL, /* fapl_free */
- 0, /* dxpl_size */
- NULL, /* dxpl_copy */
- NULL, /* dxpl_free */
- dummy_vfd_open, /* open */
- dummy_vfd_close, /* close */
- NULL, /* cmp */
- NULL, /* query */
- NULL, /* get_type_map */
- NULL, /* alloc */
- NULL, /* free */
- dummy_vfd_get_eoa, /* get_eoa */
- dummy_vfd_set_eoa, /* set_eoa */
- dummy_vfd_get_eof, /* get_eof */
- NULL, /* get_handle */
- dummy_vfd_read, /* read */
- dummy_vfd_write, /* write */
- NULL, /* flush */
- NULL, /* truncate */
- NULL, /* lock */
- NULL, /* unlock */
- H5FD_FLMAP_DEFAULT /* fl_map */
-};
-
/*-------------------------------------------------------------------------
* Function: h5_errors
@@ -1890,6 +1828,33 @@ error:
return FAIL;
} /* h5_wait_message() */
+/* Functions for the dummy VFD class (see below).
+ *
+ * Useful for testing things like ID handling where we shouldn't mess with the
+ * real VFDs.
+ */
+static H5FD_t *dummy_vfd_open(const char *name, unsigned flags, hid_t fapl_id, haddr_t maxaddr);
+static H5FD_t *dummy_vfd_open(const char H5_ATTR_UNUSED *name, unsigned H5_ATTR_UNUSED flags, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED maxaddr) { return NULL; }
+
+static herr_t dummy_vfd_close(H5FD_t *_file);
+static herr_t dummy_vfd_close(H5FD_t H5_ATTR_UNUSED *_file) { return FAIL; }
+
+static haddr_t dummy_vfd_get_eoa(const H5FD_t *file, H5FD_mem_t type);
+static haddr_t dummy_vfd_get_eoa(const H5FD_t H5_ATTR_UNUSED *file, H5FD_mem_t H5_ATTR_UNUSED type) { return HADDR_UNDEF; }
+
+static herr_t dummy_vfd_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t addr);
+static herr_t dummy_vfd_set_eoa(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, haddr_t H5_ATTR_UNUSED addr) { return FAIL; }
+
+static haddr_t dummy_vfd_get_eof(const H5FD_t *file, H5FD_mem_t type);
+static haddr_t dummy_vfd_get_eof(const H5FD_t H5_ATTR_UNUSED *file, H5FD_mem_t H5_ATTR_UNUSED type) { return HADDR_UNDEF; }
+
+static herr_t dummy_vfd_read(H5FD_t *_file, H5FD_mem_t type, hid_t fapl_id, haddr_t addr, size_t size, void *buf);
+static herr_t dummy_vfd_read(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED addr, size_t H5_ATTR_UNUSED size, void H5_ATTR_UNUSED *buf) { return FAIL; }
+
+static herr_t dummy_vfd_write(H5FD_t *_file, H5FD_mem_t type, hid_t fapl_id, haddr_t addr, size_t size, const void *buf);
+static herr_t dummy_vfd_write(H5FD_t H5_ATTR_UNUSED *_file, H5FD_mem_t H5_ATTR_UNUSED type, hid_t H5_ATTR_UNUSED fapl_id, haddr_t H5_ATTR_UNUSED addr, size_t H5_ATTR_UNUSED size, const void H5_ATTR_UNUSED *buf) { return FAIL; }
+
+
/*-------------------------------------------------------------------------
* Function: h5_get_dummy_vfd_class()
*
@@ -1913,12 +1878,24 @@ error:
H5FD_class_t *
h5_get_dummy_vfd_class(void)
{
- H5FD_class_t *vfd_class = NULL;
+ H5FD_class_t *vfd_class = NULL; /* Dummy VFD that will be returned */
- if(NULL == (vfd_class = (H5FD_class_t *)HDmalloc(sizeof(H5FD_class_t))))
+ /* Create the class and initialize everything to zero/NULL */
+ if(NULL == (vfd_class = (H5FD_class_t *)HDcalloc((size_t)1, sizeof(H5FD_class_t))))
TEST_ERROR;
- HDmemcpy(vfd_class, &dummy_vfd_class_g, sizeof(H5FD_class_t));
+ /* Fill in the minimum parameters to make a VFD that
+ * can be registered.
+ */
+ vfd_class->name = "dummy";
+ vfd_class->maxaddr = 1;
+ vfd_class->open = dummy_vfd_open;
+ vfd_class->close = dummy_vfd_close;
+ vfd_class->get_eoa = dummy_vfd_get_eoa;
+ vfd_class->set_eoa = dummy_vfd_set_eoa;
+ vfd_class->get_eof = dummy_vfd_get_eof;
+ vfd_class->read = dummy_vfd_read;
+ vfd_class->write = dummy_vfd_write;
return vfd_class;