H5O.visit

Посетите объекты, заданные идентификатором объекта

Синтаксис

[состояние, opdata_out] = H5O.visit (obj_id, index_type, порядок, iter_func, opdata_in)

Описание

[status,opdata_out] = H5O.visit(obj_id,index_type,order,iter_func,opdata_in) является рекурсивной функцией итерации, чтобы посетить объект object_id и, если object_id является группой, всеми объектами в и ниже его в файле HDF5. Это обеспечивает механизм для приложения, чтобы выполнить единый набор операций через все те объекты или динамически выбранное подмножество.

Если object_id является идентификатором группы, та группа служит корнем рекурсивной итерации. Если object_id является идентификатором файла, что корневая группа файла служит корнем рекурсивной итерации. Если object_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 является пользовательским значением или структурой и передается первому шагу итерации в параметре opdata_in iter_func. opdata_out шага итерации формирует opdata_in для следующего шага итерации. Итоговый opdata_out в конце итерации затем возвращен в вызывающую сторону как opdata_out.

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

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

Смотрите также

Была ли эта тема полезной?