Список блоков hyperslab
blocklist = H5S.get_select_hyper_blocklist(space_id,startblock,numblocks)
blocklist = H5S.get_select_hyper_blocklist(space_id,startblock,numblocks)
возвращает список выбранных на данный момент блоков hyperslab. space_id
- идентификатор пространства данных. startblock
задает блок, с которого начинаются и numblocks
задает количество извлекаемых блоков hyperslab.
Примечание
Библиотека HDF5 использует упорядоченное расположение C-стиля для многомерных массивов, в то время как MATLAB® использует упорядоченное расположение в стиле ФОРТРАН. The h5_start
, h5_stride
, h5_count
и h5_block
параметры предполагают упорядоченное расположение C-стиля. Для получения дополнительной информации см. раздел «Использование низкоуровневых HDF5 функций MATLAB» в документации MATLAB.
dims = [100 200]; h5_dims = fliplr(dims); space_id = H5S.create_simple(2,h5_dims,h5_dims); start = fliplr([10 20]); block = fliplr([20 25]); H5S.select_hyperslab(space_id,'H5S_SELECT_SET',start,[],[],block); start = fliplr([20 30]); block = fliplr([20 25]); H5S.select_hyperslab(space_id,'H5S_SELECT_NOTB',start,[],[],block); nblocks = H5S.get_select_hyper_nblocks(space_id); for j = 1:nblocks hblocks{j} = H5S.get_select_hyper_blocklist(space_id,j-1,1); end