Выполните итерации через ссылки в группе, заданной по наименованию
[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
. Отправная точка итерации соединяется заданного ID местоположения и относительным названием группы. 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
является пользовательским значением или структурой и передается первому шагу итерации в параметре opdata_in
iter_func
. opdata_out
шага итерации формирует opdata_in
для следующего шага итерации. Финал opdata_out в конце итерации затем возвращен в вызывающую сторону как opdata_out
.
Значение status
, возвращенное iter_func
, интерпретировано можно следующим образом:
нуль | Продолжает итерацию или возвращает нулевое значение состояния вызывающей стороне, если все участники были обработаны |
положительный | Останавливает итерацию и возвращает положительное значение состояния вызывающей стороне |
отрицательный | Останавливает итерацию и выдает ошибку при указании на отказ |