H5A_ITERATE1 iterates over the attributes of the object specified by its identifier,
loc_id. The object can be a file, group, dataset, or named datatype. For each attribute of the object, the
op_data and some additional information specified below are passed to the operator function
op. The iteration begins with the attribute specified by its index,
idx; the index for the next attribute to be processed by the operator,
op, is returned in
idx is the null pointer, then all attributes are processed.
The prototype for
typedef herr_t (*H5A_operator1_t)(hid_t loc_id, const char *attr_name, void *operator_data);
The operation receives the identifier for the group, dataset or named datatype being iterated over,
loc_id, the name of the current attribute about the object,
attr_name, and the pointer to the operator data passed in to H5A_ITERATE1,
op_data. The return values from an operator are:
- Zero causes the iterator to continue, returning zero when all attributes have been processed.
- Positive causes the iterator to immediately return that positive value, indicating short-circuit success. The iterator can be restarted at the next attribute.
- Negative causes the iterator to immediately return that value, indicating failure. The iterator can be restarted at the next attribute.