summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2007-10-04 18:32:47 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2007-10-04 18:32:47 (GMT)
commit3db40827da29243b88ade3c3f174f3f5e6cd0622 (patch)
treee3cae6704cac26c25a03bc32fc9150bae443b8d9
parentd4eec753a1de150377773998db4f5035df60b21b (diff)
downloadhdf5-3db40827da29243b88ade3c3f174f3f5e6cd0622.zip
hdf5-3db40827da29243b88ade3c3f174f3f5e6cd0622.tar.gz
hdf5-3db40827da29243b88ade3c3f174f3f5e6cd0622.tar.bz2
[svn-r14184] Description:
Move H5Aopen_idx() into deprecated symbols section, replacing all internal usage with H5Aopen_by_idx(). Add simple regression test for H5Aopen_idx(). Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
-rw-r--r--c++/src/H5Object.cpp4
-rw-r--r--examples/h5_attribute.c2
-rw-r--r--fortran/src/H5Af.c8
-rw-r--r--src/H5Adeprec.c6
-rw-r--r--src/H5Apublic.h2
-rwxr-xr-xtest/objcopy.c6
-rw-r--r--test/tattr.c41
-rw-r--r--tools/h5repack/h5repack_copy.c2
-rw-r--r--tools/h5repack/h5repack_refs.c2
-rw-r--r--tools/lib/h5diff_attr.c2
10 files changed, 44 insertions, 31 deletions
diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp
index b3b2982..e298153 100644
--- a/c++/src/H5Object.cpp
+++ b/c++/src/H5Object.cpp
@@ -173,7 +173,7 @@ Attribute H5Object::openAttribute( const H5std_string& name ) const
//--------------------------------------------------------------------------
Attribute H5Object::openAttribute( const unsigned int idx ) const
{
- hid_t attr_id = H5Aopen_idx( id, idx );
+ hid_t attr_id = H5Aopen_by_idx(id, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)idx, H5P_DEFAULT, H5P_DEFAULT);
if( attr_id > 0 )
{
Attribute attr( attr_id );
@@ -181,7 +181,7 @@ Attribute H5Object::openAttribute( const unsigned int idx ) const
}
else
{
- throw AttributeIException(inMemFunc("openAttribute"), "H5Aopen_idx failed");
+ throw AttributeIException(inMemFunc("openAttribute"), "H5Aopen_by_idx failed");
}
}
diff --git a/examples/h5_attribute.c b/examples/h5_attribute.c
index d86bbcd..93fda77 100644
--- a/examples/h5_attribute.c
+++ b/examples/h5_attribute.c
@@ -194,7 +194,7 @@ main (void)
*/
ret = H5Oget_info(dataset, ".", &oinfo, H5P_DEFAULT);
for(i = 0; i < (unsigned)oinfo.num_attrs; i++) {
- attr = H5Aopen_idx(dataset, i);
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)i, H5P_DEFAULT, H5P_DEFAULT);
atype = H5Aget_type(attr);
type_class = H5Tget_class(atype);
if (type_class == H5T_STRING) {
diff --git a/fortran/src/H5Af.c b/fortran/src/H5Af.c
index 8253781..293d4c0 100644
--- a/fortran/src/H5Af.c
+++ b/fortran/src/H5Af.c
@@ -847,7 +847,7 @@ done:
/*----------------------------------------------------------------------------
* Name: h5aopen_idx_c
- * Purpose: Call H5Aopen_idx to open an attribute
+ * Purpose: Call H5Aopen_by_idx to open an attribute
* Inputs: obj_id - object identifier
* idx - attribute index ( zero based)
* Outputs: attr_id - attribute identifier
@@ -859,12 +859,12 @@ done:
int_f
nh5aopen_idx_c (hid_t_f *obj_id, int_f *idx, hid_t_f *attr_id)
{
- int_f ret_value=0; /* Return value */
+ int_f ret_value = 0; /* Return value */
/*
- * Call H5Aopen_idx function.
+ * Call H5Aopen_by_idx function.
*/
- if ((*attr_id = (hid_t_f)H5Aopen_idx((hid_t)*obj_id, (unsigned)*idx)) < 0)
+ if((*attr_id = (hid_t_f)H5Aopen_by_idx((hid_t)*obj_id, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)*idx, H5P_DEFAULT, H5P_DEFAULT)) < 0)
HGOTO_DONE(FAIL);
done:
diff --git a/src/H5Adeprec.c b/src/H5Adeprec.c
index 65b876e..5fb8dca 100644
--- a/src/H5Adeprec.c
+++ b/src/H5Adeprec.c
@@ -220,6 +220,7 @@ done:
FUNC_LEAVE_API(ret_value)
} /* H5Aopen_name() */
+#ifndef H5_NO_DEPRECATED_SYMBOLS
/*--------------------------------------------------------------------------
NAME
@@ -240,6 +241,8 @@ done:
H5Aclose or resource leaks will develop.
The location object may be either a group or a dataset, both of
which may have any sort of attribute.
+ NOTE
+ Deprecated in favor of H5Aopen_by_idx
--------------------------------------------------------------------------*/
hid_t
H5Aopen_idx(hid_t loc_id, unsigned idx)
@@ -274,7 +277,6 @@ done:
FUNC_LEAVE_API(ret_value)
} /* H5Aopen_idx() */
-#ifndef H5_NO_DEPRECATED_SYMBOLS
/*--------------------------------------------------------------------------
NAME
@@ -291,6 +293,8 @@ done:
DESCRIPTION
This function returns the number of attributes attached to a dataset or
group, 'location_id'.
+ NOTE
+ Deprecated in favor of H5Oget_info
--------------------------------------------------------------------------*/
int
H5Aget_num_attrs(hid_t loc_id)
diff --git a/src/H5Apublic.h b/src/H5Apublic.h
index 76dec27..3908455 100644
--- a/src/H5Apublic.h
+++ b/src/H5Apublic.h
@@ -83,7 +83,6 @@ H5_DLL herr_t H5Adelete_by_idx(hid_t loc_id, const char *obj_name,
H5_DLL hid_t H5Acreate(hid_t loc_id, const char *name, hid_t type_id,
hid_t space_id, hid_t plist_id);
H5_DLL hid_t H5Aopen_name(hid_t loc_id, const char *name);
-H5_DLL hid_t H5Aopen_idx(hid_t loc_id, unsigned idx);
/* Symbols defined for compatibility with previous versions of the HDF5 API.
*
@@ -102,6 +101,7 @@ typedef herr_t (*H5A_operator1_t)(hid_t location_id/*in*/,
/* Function prototypes */
+H5_DLL hid_t H5Aopen_idx(hid_t loc_id, unsigned idx);
H5_DLL int H5Aget_num_attrs(hid_t loc_id);
H5_DLL herr_t H5Adelete1(hid_t loc_id, const char *name);
H5_DLL herr_t H5Arename1(hid_t loc_id, const char *old_name, const char *new_name);
diff --git a/test/objcopy.c b/test/objcopy.c
index ff0e4bb..88828d4 100755
--- a/test/objcopy.c
+++ b/test/objcopy.c
@@ -789,7 +789,7 @@ compare_std_attributes(hid_t oid, hid_t oid2, hid_t pid)
/* Check the attributes are equal */
for(i = 0; i < (unsigned)oinfo1.num_attrs; i++) {
- if((aid = H5Aopen_idx(oid, i)) < 0) TEST_ERROR
+ if((aid = H5Aopen_by_idx(oid, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)i, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
if(H5Aget_name(aid, ATTR_NAME_LEN, attr_name) < 0) TEST_ERROR
if((aid2 = H5Aopen_name(oid2, attr_name)) < 0) TEST_ERROR
@@ -3945,8 +3945,8 @@ test_copy_attribute_vl(hid_t fcpl_src, hid_t fcpl_dst, hid_t fapl)
/* Check if the attributes are equal */
- if((aid = H5Aopen_idx(did, 0)) < 0) TEST_ERROR
- if((aid2 = H5Aopen_idx(did2, 0)) < 0) TEST_ERROR
+ if((aid = H5Aopen_by_idx(did, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((aid2 = H5Aopen_by_idx(did2, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
if(compare_attribute(aid, aid2, H5P_DEFAULT, NULL, did) != TRUE) TEST_ERROR
if(H5Aclose(aid) < 0) TEST_ERROR
if(H5Aclose(aid2) < 0) TEST_ERROR
diff --git a/test/tattr.c b/test/tattr.c
index 53f2c21..4e3058e 100644
--- a/test/tattr.c
+++ b/test/tattr.c
@@ -786,8 +786,8 @@ test_attr_compound_read(hid_t fapl)
VERIFY(oinfo.num_attrs, 1, "H5Oget_info");
/* Open 1st attribute for the dataset */
- attr = H5Aopen_idx(dataset, 0);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Dataspace */
space = H5Aget_space(attr);
@@ -1191,8 +1191,8 @@ test_attr_mult_read(hid_t fapl)
VERIFY(oinfo.num_attrs, 3, "H5Oget_info");
/* Open 1st attribute for the dataset */
- attr = H5Aopen_idx(dataset, (unsigned)0);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Dataspace */
space = H5Aget_space(attr);
@@ -1244,8 +1244,8 @@ test_attr_mult_read(hid_t fapl)
CHECK(ret, FAIL, "H5Aclose");
/* Open 2nd attribute for the dataset */
- attr = H5Aopen_idx(dataset, (unsigned)1);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)1, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Dataspace */
space = H5Aget_space(attr);
@@ -1300,8 +1300,8 @@ test_attr_mult_read(hid_t fapl)
CHECK(ret, FAIL, "H5Aclose");
/* Open 2nd attribute for the dataset */
- attr = H5Aopen_idx(dataset, (unsigned)2);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)2, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Dataspace */
space = H5Aget_space(attr);
@@ -1531,8 +1531,8 @@ test_attr_delete(hid_t fapl)
VERIFY(oinfo.num_attrs, 2, "H5Oget_info");
/* Open 1st attribute for the dataset */
- attr = H5Aopen_idx(dataset, 0);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Name */
name_len = H5Aget_name(attr, (size_t)ATTR_NAME_LEN,attr_name);
@@ -1545,8 +1545,8 @@ test_attr_delete(hid_t fapl)
CHECK(ret, FAIL, "H5Aclose");
/* Open last (formally 3rd) attribute for the dataset */
- attr = H5Aopen_idx(dataset, 1);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)1, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Name */
name_len = H5Aget_name(attr, (size_t)ATTR_NAME_LEN, attr_name);
@@ -1568,8 +1568,8 @@ test_attr_delete(hid_t fapl)
VERIFY(oinfo.num_attrs, 1, "H5Oget_info");
/* Open last (formally 3rd) attribute for the dataset */
- attr = H5Aopen_idx(dataset, 0);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(dataset, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)0, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Name */
name_len = H5Aget_name(attr, (size_t)ATTR_NAME_LEN, attr_name);
@@ -1819,8 +1819,8 @@ test_attr_dense_verify(hid_t loc_id, unsigned max_attr)
char check_name[ATTR_NAME_LEN]; /* Buffer for checking attribute names */
/* Open attribute */
- attr = H5Aopen_idx(loc_id, u);
- CHECK(attr, FAIL, "H5Aopen_idx");
+ attr = H5Aopen_by_idx(loc_id, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)u, H5P_DEFAULT, H5P_DEFAULT);
+ CHECK(attr, FAIL, "H5Aopen_by_idx");
/* Verify Name */
sprintf(attrname, "attr %02u", u);
@@ -3307,6 +3307,15 @@ test_attr_deprec(hid_t fcpl, hid_t fapl)
ret = H5Aget_num_attrs(dataset);
VERIFY(ret, 1, "H5Aget_num_attrs");
+ /* Open the attribute */
+ attr = H5Aopen_idx(dataset, 0);
+ CHECK(attr, FAIL, "H5Aopen_idx");
+
+ /* Close attribute */
+ ret = H5Aclose(attr);
+ CHECK(ret, FAIL, "H5Aclose");
+
+
/* Rename attribute */
ret = H5Arename1(dataset, "attr", "attr2");
CHECK(ret, FAIL, "H5Arename1");
diff --git a/tools/h5repack/h5repack_copy.c b/tools/h5repack/h5repack_copy.c
index 5734285..677d9fd 100644
--- a/tools/h5repack/h5repack_copy.c
+++ b/tools/h5repack/h5repack_copy.c
@@ -919,7 +919,7 @@ int copy_attr(hid_t loc_in,
buf=NULL;
/* open attribute */
- if ((attr_id = H5Aopen_idx(loc_in, u))<0)
+ if((attr_id = H5Aopen_by_idx(loc_in, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)u, H5P_DEFAULT, H5P_DEFAULT)) < 0)
goto error;
/* get name */
diff --git a/tools/h5repack/h5repack_refs.c b/tools/h5repack/h5repack_refs.c
index 8ec1cfd..9a6b3ae 100644
--- a/tools/h5repack/h5repack_refs.c
+++ b/tools/h5repack/h5repack_refs.c
@@ -431,7 +431,7 @@ static int copy_refs_attr(hid_t loc_in,
*-------------------------------------------------------------------------
*/
/* open attribute */
- if((attr_id = H5Aopen_idx(loc_in, u)) < 0)
+ if((attr_id = H5Aopen_by_idx(loc_in, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)u, H5P_DEFAULT, H5P_DEFAULT)) < 0)
goto error;
/* get name */
diff --git a/tools/lib/h5diff_attr.c b/tools/lib/h5diff_attr.c
index 26c93d3..d73b3c4 100644
--- a/tools/lib/h5diff_attr.c
+++ b/tools/lib/h5diff_attr.c
@@ -86,7 +86,7 @@ hsize_t diff_attr(hid_t loc1_id,
buf2 = NULL;
/* open attribute */
- if((attr1_id = H5Aopen_idx(loc1_id, u)) < 0)
+ if((attr1_id = H5Aopen_by_idx(loc1_id, ".", H5_INDEX_CRT_ORDER, H5_ITER_INC, (hsize_t)u, H5P_DEFAULT, H5P_DEFAULT)) < 0)
goto error;
/* get name */
if(H5Aget_name(attr1_id, 255, name1) < 0)