Link (H5L)

Описание

Используйте MATLAB® HDF5 соединяют интерфейс, H5L, создать и управлять ссылками в группе HDF5. Этот интерфейс включает функции, которые включают создание и использование пользовательских классов ссылки.

Функции

H5L.copy

Скопируйте ссылку от исходного местоположения до целевого местоположения

H5L.copy(srcID,srcname,destID,destname,lcplID,laplID) копирует ссылку, заданную srcname из файла или группы, заданной srcID к целевому destID. Новая копия ссылки создается с именем destname.

 Детали

H5L.create_external

Создайте гибкую ссылку на внешний объект

H5L.create_external(filename,objname,linkID,linkname,lcplID,laplID) создает гибкую ссылку на объект в различном файле.

 Детали

H5L.create_hard

Создайте жесткую ссылку

H5L.create_hard(objID,objname,linkID,linkname,lcplID,laplID) создает новую жесткую ссылку на существующий ранее объект в файле HDF5. Новая ссылка может быть одним из многих что точка к тому объекту.

 Детали

H5L.create_soft

Создайте гибкую ссылку

H5L.create_soft(targetPath,linkID,linkname,lcplID,laplID) создает новую гибкую ссылку на объект в файле HDF5. Новая ссылка может быть одним из многих что точка к тому объекту i.e., объект, на который указывает новая гибкая ссылка.

 Детали

H5L.delete

Удалите ссылку

H5L.delete(locID,name,laplID) удаляет ссылку, заданную name от местоположения locID на основе идентификатора списка свойств доступа к ссылке, заданного laplID.

H5L.exists

Определите, существует ли ссылка

tf = H5L.exists(locID,linkname,laplID) проверки, если ссылка, заданная соединением идентификатора объекта и имени, существует в группе, на основе идентификатора списка свойств доступа к ссылке, заданного laplID.

H5L.get_info

Информация о ссылке

linkStruct = H5L.get_info(locID,linkname,laplID) возвращает информацию о ссылке. Файл или идентификатор группы, locID, задает местоположение ссылки. linkname аргумент, интерпретированный относительно linkID, задает запрашиваемую ссылку.

H5L.get_name_by_idx

Информация о ссылке указана индексом

name = H5L.get_name_by_idx(locID,groupname,idxtype,order,n,laplID) получает информацию о ссылке в индексе n существующий в группе groupname в местоположении groupID.

name = H5L.get_name_by_idx(locID,groupname,idxtype,order,n,laplID,'TextEncoding',encoding) дополнительно задает текстовое кодирование, чтобы использовать, чтобы интерпретировать имя ссылки.

 Детали

H5L.get_val

Значение символьной ссылки

linkval = H5L.get_val(linklocID,linkname,laplID) возвращает значение символьной ссылки. Эта функция соответствует H5L.get_val и H5Lunpack_elink_val функции в HDF5 1.8 C API.

linkval = H5L.get_val(linklocID,linkname,laplID,'TextEncoding',encoding) дополнительно задает текстовое кодирование, чтобы использовать, чтобы интерпретировать значение ссылки.

 Детали

H5L.iterate

Выполните итерации по ссылкам

[status,idxOut,opdataOut] = H5L.iterate(groupID,idxtype,order,idxIn,fnc,opdataIn) выполняет итерации через ссылки в группе, заданной groupID, выполнять общую функцию, указателем на функцию которой является fncH5L.iterate рекурсивно не переходит по ссылкам в подгруппы заданной группы.

 Детали

H5L.iterate_by_name

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

[status,idx_out,opdataOut] = H5L.iterate_by_name(locID,groupname,idxtype,order,idxIn,fnc,opdataIn,laplID) выполняет итерации через ссылки в группе, чтобы выполнить общую функцию, указателем на функцию которой является fnc. Начальная точка итерации соединяется заданного идентификатором местоположения и относительным названием группы. H5L.iterate_by_name рекурсивно не переходит по ссылкам в подгруппы заданной группы. Список свойств доступа к ссылке, laplID, может влиять на результат в зависимости от типа пересекаемой ссылки.

 Детали

H5L.move

Переименуйте ссылку

H5L.move(srcID,srcname,destID,destname,lcplID,laplID) переименовывает ссылку в файле HDF5. Исходная ссылка, srcname, удален из графика группы и новой ссылки, destname, вставляется. Это изменение выполняется как атомарная операция.

 Детали

H5L.visit

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

[status,opdataOut] = H5L.visit(groupID,idxtype,order,fnc,opdataIn) рекурсивно выполняет итерации через все ссылки в и ниже группы, заданной groupID, выполнять общую функцию, указателем на функцию которой является fnc.

 Детали

H5L.visit_by_name

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

[status,opdataOut] = H5L.visit_by_name(locID,groupname,idxtype,order,fnc,opdataIn,laplID) рекурсивно выполняет итерации, хотя все ссылки в и ниже группы, чтобы выполнить общую функцию, указателем на функцию которой является fnc. Начальная точка итерации задана соединением ID местоположения и относительного названия группы. Список свойств доступа к ссылке, laplID, может влиять на результат в зависимости от типа пересекаемой ссылки.

 Детали

Примеры

развернуть все

Удалите единственную ссылку на '/g3' группа в example.h5.

srcFile = fullfile(matlabroot,'toolbox','matlab','demos','example.h5');
copyfile(srcFile,'myfile.h5');
fileattrib('myfile.h5','+w');
fid = H5F.open('myfile.h5','H5F_ACC_RDWR','H5P_DEFAULT');
H5L.delete(fid,'g3','H5P_DEFAULT');
H5F.close(fid);
fid = H5F.open('example.h5');
gid = H5G.open(fid,'/g1/g1.2/g1.2.1');
if H5L.exists(gid,'slink','H5P_DEFAULT')
    fprintf('link exists\n');
else
    fprintf('link does not exist\n');
end

Переименуйте '/g2' группа к '/g2/g3'.

srcFile = fullfile(matlabroot,'toolbox','matlab','demos','example.h5');
copyfile(srcFile,'myfile.h5');
fileattrib('myfile.h5','+w');
fid = H5F.open('myfile.h5','H5F_ACC_RDWR','H5P_DEFAULT');
g2id = H5G.open(fid,'g2');
H5L.move(fid,'g3',g2id,'g3','H5P_DEFAULT','H5P_DEFAULT');
H5G.close(g2id);
H5F.close(fid);
Представлено до R2006a