H5L.iterate_by_name

Итерация по ссылкам в группе, заданной по имени

Синтаксис

[status,idx_out,opdata_out] = H5L.iterate_by_name(loc_id,group_name,index_type,order,idx_in,iter_func,opdata_in,lapl_id)

Описание

[status,idx_out,opdata_out] = H5L.iterate_by_name(loc_id,group_name,index_type,order,idx_in,iter_func,opdata_in,lapl_id) итерация по ссылкам в группе для выполнения общей функции, указатель на функцию которой iter_func. Начальной точкой итерации является сопряжение заданного идентификатором местоположения и относительным именем группы. H5L.iterate_by_name не рекурсивно следует по ссылкам в подгруппы указанной группы. Список свойств доступа к ссылке, lapl_id, может повлиять на результат в зависимости от типа проходимой ссылки.

index_type и order установить итерацию. index_type задает используемый индекс. Если ссылки не были индексированы по типу индекса, они сначала будут отсортированы по этому индексу, затем начнется итерация. Если ссылки были так индексированы, шаг сортировки будет ненужным, поэтому итерация может начаться быстрее. Задайте index_type как один из этих векторов символов или строковых скаляров.

'H5_INDEX_NAME'Альфа-числовой индекс по имени
'H5_INDEX_CRT_ORDER'Индекс по порядку создания

order задает порядок проверки объектов по индексу, указанному в index_type. Задайте order как один из этих векторов символов или строковых скаляров.

'H5_ITER_INC'Порядок возрастания
'H5_ITER_DEC'Уменьшение порядка
'H5_ITER_NATIVE'Самый быстрый доступный порядок

idx_in задает начальную точку итерации. idx_out возвращает точку, в которой была остановлена итерация. Это позволяет возобновить прерывание итерации.

Функция обратного вызова iter_func должна иметь следующую подпись:

function [status,opdata_out] = iter_func(group_id,name,opdata_in)

opdata_in является пользовательским значением или структурой и передается на первый шаг итерации в iter_func opdata_in параметр. The opdata_out шага итерации образует opdata_in для следующего шага итерации. Окончательное opdata_out в конце итерации возвращается вызывающему абоненту следующим opdata_out.

status значение, возвращенное iter_func интерпретируется следующим образом:

нульПродолжается с итерацией или возвращает нулевое значение состояния вызывающему абоненту, если все представители были обработаны
положительныйОстанавливает итерацию и возвращает положительное значение состояния вызывающему абоненту
отрицательныйОстанавливает итерацию и выдает ошибку, указывающую на отказ