Hyperslabs allow you to select specific, non-contiguous, or regular sub-regions of a dataset for reading or writing. This is essential for efficient I/O when you only need a portion of a large dataset.
Key components and functions:
BlockRange: A type used to define the range of elements in a selection.select_hyperslab!(ds, selection): Selects a specific hyperslab within the dataspace ds using the provided selection.get_regular_hyperslab(ds): Retrieves the current regular hyperslab selection from a dataspace.is_selection_valid(ds): Checks if the current selection on the dataspace is valid.
# Example conceptual usage
using HDF5
# Select a regular hyperslab
# (Assuming 'selection' is a valid BlockRange or selection object)
select_hyperslab!(ds, selection)
# Verify the selection
if is_selection_valid(ds)
# Perform I/O on the selected subset
end