Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Content Layer
id1195548671
Content Column
width50.00001%
id1195578110
classrm_pagetree_col mobile-hide
Content Block
id1195578111
 
Content Column
width50.00001%
id1195548673
classhdf-rm-main-column
Content Block
id1195548672
Hdf rm purpose

Excerpt

Iterates over all selected elements in a dataspace

HTML Wrap
classhdf-rm-content-block
Hdf rm procedure

H5D_ITERATE(buf, type_id, space_id, operator, operator_data)

Hdf rm anchor
AnchorNamesignature

Signature:
HTML Wrap
classhdf-rm-section
Comment

Edit each block below with the corresponding language signature for this function.

If there is no implementation for a given language, simply remove the entire block (left click --> Remove) for that language signature.

Hdf rm c signature
herr_t H5Diterate( void *buf, hid_t type_id, hid_t space_id, H5D_operator_t operator, void *operator_data )
Hdf rm parameters
void *bufIN/OUT: Pointer to the buffer in memory containing the elements to iterate over
hid_t type_idIN: Datatype identifier for the elements stored in buf
hid_t space_idIN: Dataspace identifier for buf
H5D_operator_t operator    IN: Function pointer to the routine to be called for each element in buf iterated over
void *operator_dataIN/OUT: Pointer to any user-defined data associated with the operation
Hdf rm description

H5D_ITERATE iterates over all the data elements in the memory buffer buf, executing the callback function operator once for each such data element.

The protoype of the callback function operator is as follows (as defined in the source code file H5Lpublic.h):

herr_t (*H5D_operator_t)(void elem, hid_t type_id, unsigned ndim, 
                         const hsize_t *point, void *operator_data)

The parameters of this callback function have the following values or meanings:

void *elemIN/OUT: Pointer to the memory buffer containing the current data element
hid_t type_idIN: Datatype identifier for the elements stored in elem
unsigned ndimIN: Number of dimensions for the point array
const hsize_t *pointIN: Array containing the location of the element within the original dataspace
void *operator_dataIN/OUT: Pointer to any user-defined data associated with the operation

The possible return values from the callback function, and the effect ofeach,are as follows:

  • Zero causes the iterator to continue, returning zero when all data elements have been processed.
  • A positive value causes the iterator to immediately return that positive value, indicating short-circuit success.
  • A negative value causes the iterator to immediately return that value, indicating failure.

The H5D_ITERATE operator_data parameter is a user-defined pointer to the data required to process dataset elements in the course of the iteration. If operator needs to pass data back to the application, such data can be returned in this same buffer. This pointer is passed back to each step of the iteration in the operator callback function’s operator_data parameter.

Unlike other HDF5 iterators, this iteration operation cannot be restarted at the point of exit; a second H5D_ITERATE call will always restart at the beginning.

Hdf rm returnvals

Returns the return value of the last operator if it was non-zero, or zero if all elements have been processed. Otherwise returns a negative value.

Hdf rm anchor
AnchorNameexample

Example:
HTML Wrap
classhdf-rm-section

Coming Soon!

Comment
HTML Wrap
classhdf-togglebox hdf-c

Bitbucket Server file
repoSlughdf5
branchIdrefs/heads/1.10/master
projectKeyHDFFV
filepathexamples/h5_subset.c
showLineNumberstrue
lineStart32
progLangcpp
lineEnd42
applicationLink5ac7b370-7412-3c8c-ad20-807a68261336

HTML Wrap
classhdf-togglebox hdf-fortran hdf-togglebox-hidden

Bitbucket Server file
repoSlughdf5
branchIdrefs/heads/1.10/master
projectKeyHDFFV
filepathfortran/examples/compound.f90
showLineNumberstrue
lineStart25
progLangplain
lineEnd35
applicationLink5ac7b370-7412-3c8c-ad20-807a68261336

Hdf rm history
Release    C
Release    Change
1.6.4The following changes occuredin occured in the H5D_operator_t function in this release:
   ndim parameter type was changed to unsigned
   point parameter type was changed to const hsize_t