H5I_ITERATE calls the callback function op for each member of the identifier type type . The callback function type for op , H5I_iterate_func_t, is defined in H5Ipublic.h as: typedef herr_t (*H5I_iterate_func_t)(hid_t id, void *udata);
op takes as parameters the identifier and a pass through of op_data , and returns an herr_t .
A positive return from op will cause the iteration to stop and H5I_ITERATE will return the value returned by op . A negative return from op will cause the iteration to stop and H5I_ITERATE will return failure. A zero return from op will allow iteration to continue, as long as there are other identifiers remaining in type . H5I_type_t is defined in H5Ipublic.h in the HDF5 source code. Valid H5I_type_t values for use with H5I_ITERATE are: H5I_FILE = 1, /* type ID for File objects */ H5I_GROUP, /* type ID for Group objects */ H5I_DATATYPE, /* type ID for Datatype objects */ H5I_DATASPACE, /* type ID for Dataspace objects */ H5I_DATASET, /* type ID for Dataset objects */ H5I_MAP, /* type ID for Map objects */ H5I_ATTR, /* type ID for Attribute objects */ H5I_VFL, /* type ID for virtual file layer */ H5I_VOL, /* type ID for virtual object layer */ H5I_GENPROP_CLS, /* type ID for generic property list classes */ H5I_GENPROP_LST, /* type ID for generic property lists */ H5I_ERROR_CLASS, /* type ID for error classes */ H5I_ERROR_MSG, /* type ID for error messages */ H5I_ERROR_STACK, /* type ID for error stacks */ H5I_SPACE_SEL_ITER, /* type ID for dataspace selection iterator */ |