主要内容

对象(H5O)

文件中的对象

描述

使用MATLAB®HDF5对象接口;H5O,处理和访问有关HDF5对象的信息。

功能

H5O.are_mdc_flushes_disabled

确定是否禁用元数据项的刷新

tf = H5O.are_mdc_flushes_disabled(objID)返回逻辑1真正的指定的HDF5对象objID是否已禁用元数据刷新,以及逻辑刷新0如果没有的话。

H5O.close

关闭对象

H5O.close (objID)关闭对象objID。输入objID不能是数据空间、属性、属性列表或文件。

H5O.copy

将对象从源位置复制到目标位置

H5O.copy (srcID、srcname destID、destname ocplID, lcplID)指定的数据集、组或已提交的数据类型srcname指定的文件或组srcID到目标位置destID

细节

H5O.disable_mdc_flushes

防止刷新对象的元数据项

H5O.disable_mdc_flushes (objID)阻止HDF5对象的元数据条目objID由通常的缓存退出/刷新策略从元数据缓存刷新到存储。

相反,您必须使用适当的函数手动刷新单个对象的缓存或条目:

  • H5F.flush

  • H5D.flush

  • H5G.flush

  • H5O.flush

  • H5T.flush

H5O.enable_mdc_flushes

允许刷新对象的元数据项

H5O.enable_mdc_flushes (objID)允许对象或缓存的脏元数据项objID通过通常的缓存退出/刷新策略从缓存中刷新。输入对象标识符必须是数据集、组或已提交数据类型的标识符。

H5O.flush

将所有数据缓冲区刷新到磁盘

H5O.flush (objID)导致与该对象关联的所有缓冲区objID立即刷新到磁盘,而不从缓存中删除数据。的objID可以是与文件关联的任何命名对象,包括数据集、组或提交的数据类型。

H5O.get_comment

获取由对象标识符指定的对象的注释

注释= H5O.get_comment(objID)指定对象的注释objID

H5O.get_comment_by_name

获取对象位置和对象名称的注释

注释= H5O.get_comment_by_name(locID,objname,laplID)检索位置id和名称一起指定对象的注释。如果通过链接访问对象,链接访问属性列表可能会影响结果。

H5O.get_info

对象的元数据

info = H5O.get_info(objID)指定对象的元数据objID。有关对象元数据的详细信息,请参阅HDF5文档。

H5O.get_info2

指定字段中的对象元数据

info = H5O.get_info2(objID,fields)指定对象的元数据objID使用参数字段

如果遇到性能问题,请使用H5O.get_info,使用H5O.get_info2可以帮助提高表现。

细节

H5O.link

创建指向指定对象的硬链接

locID H5O.link (objID,链接名,lcplID laplID)对象指定的对象的硬链接objID在哪里locID链接名指定位置。H5O.link旨在向现有文件添加额外的结构,以便在多个组之间共享对象。

细节

H5O.open

打开指定对象

objID = H5O.open(objID,relname,laplID)打开指定的对象objID和相对路径名relname

细节

H5O.open_by_idx

打开由索引指定的对象

objID = H5O.open_by_idx(locID,groupName,idxtype,order,n,laplID)在索引处打开对象n在指定的组中locIDgroupName

细节

H5O.refresh

清除并重新加载所有数据缓冲区

H5O.refresh (objID)导致与该对象关联的所有缓冲区objID要清除并立即从磁盘重新加载更新的内容。这个函数本质上是关闭对象,从缓存中移除与之关联的所有元数据,然后重新打开对象。重新打开的对象将自动使用相同的标识符重新注册。的objID可以是与文件关联的任何命名对象,包括数据集、组或提交的数据类型。

H5O.set_comment

为对象标识符指定的对象设置注释

H5O.set_comment (objID、评论)为指定的对象设置注释objID

H5O.set_comment_by_name

为由位置和对象名称指定的对象设置注释

laplID H5O.set_comment_by_name (objID relname、评论)为指定的对象设置注释objID以及相对名称relname。链接访问属性列表标识符,laplID,如果遍历链接,则会影响结果。

H5O.visit

递归遍历由标识符指定的组或文件中的对象

[status,opdataOut] = H5O.visit(objID,idxtype,order,fnc,opdataIn)指定的组或文件中及其下的所有对象进行递归迭代objID执行函数句柄为的公共函数fnc

细节

H5O.visit2

递归遍历由标识符指定的组或文件中的对象

[status,opdataOut] = H5O.visit2(objID,idxtype,order,fnc,opdataIn,fields)递归访问所有可从object访问的对象objID中指定的标志字段,并执行该函数fnc中的每个对象objID

如果遇到性能问题,请使用H5O.visit,使用H5O.visit2可以帮助提高表现。

细节

H5O.visit_by_name

递归地遍历由位置和组名指定的组或文件中的对象

[status,opdataOut] = H5O.visit_by_name(locID,objname,idxtype,order,fnc,opdataIn,laplID)递归地遍历组或文件内及以下的所有对象,以执行函数句柄为的公共函数fnc。迭代的起始点由位置标识符和相对对象名称确定。链接访问属性列表,laplID,可能会影响结果,具体取决于所遍历的链接类型。

细节

H5O.visit_by_name2

递归地遍历由位置和组名指定的组或文件中的对象

[status,opdataOut] = H5O.visit_by_name2(locID,objname,idxtype,order,fnc,opdataIn,fields,laplID)递归地遍历组或文件内及以下的所有对象,以执行函数句柄为的公共函数fnc。迭代的起始点由位置标识符和相对对象名称确定。链接访问属性列表,laplID,可能会影响结果,具体取决于所遍历的链接类型。

如果遇到性能问题,请使用H5O.visit_by_name,使用H5O.visit_by_name2可以帮助提高表现。

细节

例子

全部展开

复制组“g3 /”所有的数据集放到一个新的组里“/ g3.5”

srcFile = [matlabroot .“/工具箱/ matlab /演示/ example.h5”];拷贝文件(srcFile“myfile.h5”);fileattrib (“myfile.h5”“+ w”);ocpl = H5P.create(“H5P_OBJECT_COPY”);lcpl = H5P.create(“H5P_LINK_CREATE”);H5P.set_create_intermediate_group (lcpl,真实);fid = H5F.open()“myfile.h5”“H5F_ACC_RDWR”“H5P_DEFAULT”);gid = H5G.open(fid;“/”);H5O.copy (gid,“g3”gid,“g3.5”、ocpl lcpl);H5G.close (gid);H5F.close (fid);H5P.close (lcpl);H5P.close (ocpl);
fid = H5F.open()“example.h5”);objID = h5 .open(fid)“g3”“H5P_DEFAULT”);H5O.close (objID);H5F.close (fid);

版本历史

R2006a之前引入

全部展开