Выполните итерации в шкалах, присоединенных к размерности набора данных
[status,idx_out,opdata_out] = H5DS.iterate_scales(dset_id,dim,idx_in,iter_func,opdata_in)
[status,idx_out,opdata_out] = H5DS.iterate_scales(dset_id,dim,idx_in,iter_func,opdata_in)
выполняет итерации по шкалам, присоединенным, чтобы определить размеры dim
набора данных dset_id
, чтобы выполнить общую операцию, указателем на функцию которой является iter_func
.
idx_in
задает отправную точку итерации. idx_out
возвращает точку, в которой была остановлена итерация. Это позволяет прерванной итерации быть возобновленной. Если idx_in
является []
, то итератор запускается в первом участнике.
Функция обратного вызова iter_func
должна иметь следующую подпись:
function [status,opdata_out] = iter_func(dset_id,dim,dimscale_id,opdata_in)
opdata_in
является пользовательским значением или структурой и передается первому шагу итерации в параметре opdata_in
iter_func
. opdata_out
шага итерации формирует opdata_in
для следующего шага итерации. Итоговый opdata_out
в конце итерации затем возвращен в вызывающую сторону как opdata_out
.
dimscale_id
указывает, что текущая размерность масштабирует идентификатор набора данных, и dim
является связанной размерностью.
значение состояния, возвращенное iter_func
, интерпретировано можно следующим образом:
нуль | Продолжает итерацию или возвращает нулевое значение состояния вызывающей стороне, если все участники были обработаны |
положительный | Останавливает итерацию и возвращает положительное значение состояния вызывающей стороне |
отрицательный | Останавливает итерацию и выдает ошибку при указании на отказ |