Man Linux: Main Page and Category List

NAME

       hdf_sort_obj  - sort the children of an HDF node

SYNOPSIS

       #include <util/neo_hdf.h>

       hdf_sort_obj()

ARGUMENTS

       h - HDF node
       compareFunc - function which returns 1,0,-1 depending on some
       criteria.  The arguments to this sort function
       are pointers to pointers to HDF elements.  For
       example:
       int sortByName(const void *a, const void *b) {
       HDF **ha = (HDF **)a;
       HDF **hb = (HDF **)b;
       *
       return strcasecmp(hdf_obj_name(*ha), hdf_obj_name(*hb));
       }
       *

DESCRIPTION

       hdf_sort_obj  will sort the children of an HDF node, based on the given
       comparison function.  This function works by creating an array  of  the
       pointers  for  each  child object of h, using qsort to sort that array,
       and then re-ordering the linked list of children to the new order.  The
       qsort  compare function uses a pointer to the value in the array, which
       in our case is a pointer to an HDF struct, so your comparison  function
       should work on HDF ** pointers.

RETURN VALUE

       None (h children will be sorted)

SEE ALSO

       hdf_set_symlink(3),         hdf_get_valuef(3),         compareFunc)(3),
       hdf_dump_str(3),    hdf_get_int_value(3),    hdf_read_string_ignore(3),
       hdf_copy(3),   hdf_get_node(3),   hdf_set_value(3),   hdf_obj_child(3),
       hdf_read_string(3),      hdf_set_buf(3),      hdf_register_fileload(3),
       hdf_get_obj(3),  hdf_get_attr(3),  hdf_obj_top(3),  hdf_dump_format(3),
       hdf_destroy(3),  hdf_init(3),  hdf_obj_value(3),   hdf_write_string(3),
       hdf_set_valuevf(3),      hdf_sort_obj(3),     hdf_write_file_atomic(3),
       hdf_obj_attr(3), hdf_set_valuef(3), hdf_get_copy(3), hdf_write_file(3),
       hdf_get_valuevf(3),          hdf_set_int_value(3),         hdf_dump(3),
       hdf_get_value(3), hdf_set_copy(3), hdf_obj_next(3), hdf_search_path(3),
       hdf_obj_name(3), hdf_set_attr(3), hdf_get_child(3), hdf_remove_tree