summaryrefslogtreecommitdiffstats
path: root/tools/lib
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2012-07-11 15:15:21 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2012-07-11 15:15:21 (GMT)
commit5096b7d3ec1047e234049f351b111ef62deb6030 (patch)
tree354c7efc0093d470b56ba77675e020dfa84ba338 /tools/lib
parent91de89d57e82581f3ca5ed4fdea9f0f7cd94d339 (diff)
downloadhdf5-5096b7d3ec1047e234049f351b111ef62deb6030.zip
hdf5-5096b7d3ec1047e234049f351b111ef62deb6030.tar.gz
hdf5-5096b7d3ec1047e234049f351b111ef62deb6030.tar.bz2
[svn-r22551] Merge changes from Trunk revision 22550 for:
HDFFV-4206, -7953, -5930, -2687, -5942 Tested: local linux with cmake
Diffstat (limited to 'tools/lib')
-rw-r--r--tools/lib/h5trav.c16
-rw-r--r--tools/lib/h5trav.h2
2 files changed, 14 insertions, 4 deletions
diff --git a/tools/lib/h5trav.c b/tools/lib/h5trav.c
index ad8b9fe..833b8c4 100644
--- a/tools/lib/h5trav.c
+++ b/tools/lib/h5trav.c
@@ -61,6 +61,13 @@ static void trav_table_addlink(trav_table_t *table,
const char *path);
/*-------------------------------------------------------------------------
+ * local variables
+ *-------------------------------------------------------------------------
+ */
+static H5_index_t trav_index_by = H5_INDEX_NAME;
+static H5_iter_order_t trav_index_order = H5_ITER_INC;
+
+/*-------------------------------------------------------------------------
* "h5trav info" public functions. used in h5diff
*-------------------------------------------------------------------------
*/
@@ -255,12 +262,12 @@ traverse(hid_t file_id, const char *grp_name, hbool_t visit_start,
/* Check for iteration of links vs. visiting all links recursively */
if(recurse) {
/* Visit all links in group, recursively */
- if(H5Lvisit_by_name(file_id, grp_name, H5_INDEX_NAME, H5_ITER_INC, traverse_cb, &udata, H5P_DEFAULT) < 0)
+ if(H5Lvisit_by_name(file_id, grp_name, trav_index_by, trav_index_order, traverse_cb, &udata, H5P_DEFAULT) < 0)
return -1;
} /* end if */
else {
/* Iterate over links in group */
- if(H5Literate_by_name(file_id, grp_name, H5_INDEX_NAME, H5_ITER_INC, NULL, traverse_cb, &udata, H5P_DEFAULT) < 0)
+ if(H5Literate_by_name(file_id, grp_name, trav_index_by, trav_index_order, NULL, traverse_cb, &udata, H5P_DEFAULT) < 0)
return -1;
} /* end else */
@@ -948,11 +955,14 @@ trav_print_visit_lnk(const char *path, const H5L_info_t *linfo, void *udata)
*/
int
-h5trav_print(hid_t fid)
+h5trav_print(hid_t fid, H5_index_t print_index_by, H5_iter_order_t print_index_order)
{
trav_print_udata_t print_udata; /* User data for traversal */
trav_visitor_t print_visitor; /* Visitor structure for printing objects */
+ trav_index_by = print_index_by;
+ trav_index_order = print_index_order;
+
/* Init user data for printing */
print_udata.fid = fid;
diff --git a/tools/lib/h5trav.h b/tools/lib/h5trav.h
index da8dc69..7311897 100644
--- a/tools/lib/h5trav.h
+++ b/tools/lib/h5trav.h
@@ -158,7 +158,7 @@ H5TOOLS_DLL int h5trav_getindext(const char *obj, const trav_table_t *travt);
* "h5trav print" public functions
*-------------------------------------------------------------------------
*/
-H5TOOLS_DLL int h5trav_print(hid_t fid);
+H5TOOLS_DLL int h5trav_print(hid_t fid, H5_index_t print_index_by, H5_iter_order_t print_index_order);
#ifdef __cplusplus
}