Посещение объектов, указанных расположением и именем объекта
[status,opdata_out] = H5O.visit_by_name(loc_id,obj_name,index_type,order,iter_func,opdata_in,lapl_id)
[status,opdata_out] = H5O.visit_by_name(loc_id,obj_name,index_type,order,iter_func,opdata_in,lapl_id) задает объект по спариванию идентификатора местоположения и имени объекта. loc_id задает файл или объект в файле и obj_name указывает объект в файле с абсолютным именем или относительно loc_id. Список свойств доступа к каналу может повлиять на результат, если задействованы каналы.
Для установления итерации используются два параметра: index_type и order. index_type параметр определяет используемый индекс. Если связи в группе не были проиндексированы по типу индекса, они сначала сортируются по этому индексу, а затем начинается итерация; если связи были проиндексированы, шаг сортировки не нужен, поэтому итерация может начаться быстрее. Определить index_type как один из этих векторов символов или строковых скаляров.
'H5_INDEX_NAME' | Буквенно-числовой индекс для имени |
'H5_INDEX_CRT_ORDER' | Индекс по порядку создания |
Обратите внимание, что тип индекса передан index_type это наилучшая настройка усилий. Если приложение передает значение, указывающее итерацию в порядке создания, и обнаруживается группа, которая не отслеживалась в порядке создания, эта группа будет итерируется в алфавитно-числовом порядке по имени или порядку имен. (Порядок имен - это собственный порядок, используемый библиотекой HDF5 и всегда доступный.) order определяет порядок проверки объектов по индексу, указанному в index_type. Определить order как один из этих векторов символов или строковых скаляров.
'H5_ITER_INC' | Увеличение порядка |
'H5_ITER_DEC' | Порядок убывания |
'H5_ITER_NATIVE' | Самый быстрый доступный заказ |
Функция обратного вызова iter_func должна иметь следующую подпись:
function [status,opdata_out] = iter_func(group_id,name,opdata_in)
opdata_in является пользовательским значением или структурой и передается на первый шаг итерации в iter_func opdata_in параметр. opdata_out этапа итерации формирует opdata_in для следующего шага итерации. Финал opdata_out в конце итерации возвращается вызывающему абоненту как opdata_out.
lapl_id является списком свойств доступа к каналу. Если свойства доступа к каналу по умолчанию допустимы, 'H5P_DEFAULT' может использоваться.
status значение, возвращенное iter_func интерпретируется следующим образом.
| ноль | Продолжение итерации или возврат нулевого значения состояния вызывающему абоненту, если все элементы обработаны |
| положительный | Останавливает итерацию и возвращает вызывающей стороне положительное значение состояния |
| отрицательный | Останавливает итерацию и выдает ошибку, указывающую на сбой |