Main Content

hdfvs

HDF Vdata 接口中 VS 函数的入口

语法

[out1,...,outN] = hdfvs(funcstr,input1,...,inputN)

说明

hdfvs 是 HDF Vdata 接口中 VS 函数的 MATLAB® 入口。

[out1,...,outN] = hdfvs(funcstr,input1,...,inputN) 返回与 HDF 库中由 functstr 指定的 VS 函数对应的一个或多个输出。

HDF 库中的 VS 函数与 funcstr 的有效值之间存在一对一的对应关系。例如,hdfvs('detach',vdata_id) 对应于 C 库调用 VSdetach(vdata_id)

访问函数

访问函数连接或允许访问 vdata。只有在访问了 vdata 之后才会进行数据传输。当数据传输完成时,这些例程将与 vdata 分离或正确终止对其的访问。

funcstr 的值函数语法描述
'attach'vdata_id = hdfvs('attach',file_id,vdata_ref,access)建立对指定 vdata 的访问。access 可以是 'r''w'
'detach'status = hdfvs('detach',vdata_id)终止对指定 vdata 的访问。

读取和写入函数

读取和写入函数可以读取和写入 vdata 的内容。

funcstr 的值函数语法描述
'fdefine'status = hdfvs('fdefine',vdata_id,fieldname,data_type,order)定义一个新的 vdata 字段。data_type 是一个字符向量或字符串标量,其中包含 HDF 数值类型。可将 data_type 指定为下列值之一:'uchar8''uchar''char8''char''double''uint8''uint16''uint32''float''int8''int16''int32'
'setclass'status = hdfvs('setclass',vdata_id,class)为 vdata 分配一个类。
'setfields'status = hdfvs('setfields',vdata_id,fields)指定要写入的 vdata 字段。
'setinterlace'status = hdfvs('setinterlace',vdata_id,interlace)设置 vdata 的交错模式。interlace 可以是 'full''no'
'setname'status = hdfvs('setname',vdata_id,name)为 vdata 分配一个名称。
'write'count = hdfvs('write', vdata_id, data)写入 vdata。数据必须为 nfields×1 元胞数组。每个元胞必须包含一个 order(i)×n 数据向量,其中 order(i) 是每个字段中标量值的数目。数据类型必须与通过 hdfvs('setfields') 设置的字段类型或已存在的 vdata 中的字段匹配。
'read'[data,count] = hdfvs('read',vdata_id,n)读取 vdata。在一个 nfields×1 元胞数组中返回数据。每个元胞包含一个 order(i)×n 数据向量,其中 order 是每个字段中标量值的数目。字段的返回顺序与在 hdfvs('setfields',...) 中指定的顺序相同。
'seek'pos = hdfvs('seek',vdata_id,record)寻找 vdata 中的指定记录。
'setattr'status = hdfvs('setattr',vdata_id,field_index,name,A)设置 vdata 字段或 vdata 的属性。
'setexternalfile'status = hdfvs('setexternalfile',vdata_id,filename,offset)将 vdata 信息存储在一个外部文件中。
'getattr'[value,status] = hdfvs('getattr',vdata_id,field_index,attr_index)读取附加到 vdata 或 vdata 字段的属性的值。将 field_index 设置为 'vdata' 以检索附加到字段自身的属性。将 field_index 设置为字段的数值索引,以检索附加到 vdata 字段的属性。
'setattr'status = hdfvs('setattr',vdata_id,field_index,name,A)设置 vdata 字段或 vdata 的属性。field_index 可以是索引编号或 'vdata'

文件查询函数

文件查询函数提供有关 vdata 在文件中的存储方式的信息。可以使用这些信息来定位文件中的 vdata。

funcstr 的值函数语法描述
'find'vdata_ref = hdfvs('find',file_id,vdata_name)在指定的 HDF 文件中搜索给定的 vdata 名称。
'findclass'vdata_ref = hdfvs('findclass',file_id,vdata_class)返回对应于指定 vdata 类的第一个 vdata 的引用编号。
'getid'next_ref = hdfvs('getid',file_id,vdata_ref)返回文件中下一个 vdata 的标识符。
'lone'[refs,count] = hdfvs('lone',file_id,maxsize)返回未链接到 vgroup 的 vdata 的引用编号。

Vdata 查询函数

Vdata 查询函数提供有关给定 vdata 的特定信息,包括 vdata 的名称、类、字段数、记录数、标记和参考对组、交错模式和大小。

funcstr 的值函数语法描述
'fexist'status = hdfvs('fexist',vdata_id,fields)测试指定 vdata 中是否存在字段。
'inquire'[n,interlace,fields,nbytes,vdata_name,status] = ... hdfvs('inquire',vdata_id)返回有关指定 vdata 的信息。
'elts'count = hdfvs('elts',vdata_id)返回指定 vdata 中的记录数。
'getclass'[class_name,status] = hdfvs('getclass',vdata_id)返回指定的 vdata 的 HDF 类。
'getfields'[field_names,count] = hdfvs('getfields',vdata_id)返回指定 vdata 中的所有字段名称。
'getinterlace'[interlace,status] = hdfvs('getinterlace',vdata_id)检索指定 vdata 的交错模式。
'getname'[vdata_name,status] = hdfvs('getname',vdata_id)检索指定 vdata 的名称。
'getversion'version = hdfvs('getversion',vdata_id)返回 vdata 的版本号。
'sizeof'nbytes = hdfvs('sizeof',vdata_id,fields)返回指定的 vdata 的字段大小。
'Queryfields'[fields,status] = hdfvs('Queryfields',vdata_id)返回指定的 vdata 的字段名称。
'Queryname'[name,status] = hdfvs('Queryname',vdata_id)返回指定 vdata 的名称。
'Queryref'ref = hdfvs('Queryref',vdata_id)检索指定 vdata 的引用编号。
'Querytag'tag = hdfvs('Querytag',vdata_id)检索指定 vdata 的标记。
'Querycount'[count,status] = hdfvs('Querycount',vdata_id)返回指定 vdata 中的记录数。
'Queryinterlace'[interlace,status] = hdfvs('Queryinterlace',vdata_id)返回指定的 vdata 的交错模式。
'Queryvsize'vsize = hdfvs('Queryvsize',vdata_id)检索指定 vdata 记录的本地大小(以字节为单位)。
'findex'[field_index,status] = hdfvs('findex',vdata_id,fieldname)查询给定字段名称的 vdata 字段的索引。
'nattrs'count = hdfvs('nattrs',vdata_id)返回指定 vdata 及其中包含的 vdata 字段的属性的数目。
'fnattrs'count = hdfvs('fnattrs',vdata_id,field_index)查询 vdata 属性的总数。
'findattr'attr_index = hdfvs('findattr',vdata_id,field_index,attr_name)检索具有给定属性名称的属性的索引。
'isattr'tf = hdfvs('isattr',vdata_id)确定给定的 vdata 是否为属性。
'attrinfo'[name,data_type,count,nbytes,status] = hdfvs('attrinfo',... vdata_id,field_index,attr_index)返回指定 vdata 字段或 vdata 的指定属性的名称、数据类型、值数和值大小。

输出参数

status 或标识符输出为 -1 表示操作失败。

版本历史记录

在 R2006a 之前推出