数据类型(H5T)
数据集中元素的数据类型
描述
使用MATLAB®HDF5数据类型接口,H5T
,以创建和处理数据类型,并访问有关数据类型的信息。
HDF5数据类型描述单个数据元素的存储格式,例如数字和字符数据的数据类型。除了数字和字符,HDF5数据类型还可以描述类型的更多抽象类,包括枚举、字符串和引用。用户还可以在数据类型类中定义新的数据类型。
一般数据类型操作
H5T.close
关闭数据类型
H5T.close(类型id)
释放指定的数据类型类型id
.
H5T.commit
提交瞬态数据类型
H5T.commit (locID、名称、类型id)
将瞬态数据类型提交给文件,创建一个新的命名数据类型。该语法对应于H5Tcommit
hdf5c库1.6版的接口。
H5T.commit (locID、名称、类型id, lcplID tcplID, taplID)
将瞬态数据类型提交到文件,创建新的命名数据类型,并使用链接创建、数据类型创建和数据类型访问属性列表。该语法对应于H5Tcommit
hdf5c库1.8版本的接口。
H5T.committed
确定是否提交了数据类型
output = H5T.committed(typeID)
属性指定的数据类型,则返回正值类型id
已经承诺了,而且0
如果没有的话。
H5T.copy
复制数据类型
newtypeID = H5T.copy(typeID)
复制现有数据类型标识符,即指定的数据集标识符类型id
,或预定义的数据类型,例如“H5T_NATIVE_DOUBLE”
.
H5T.create
创建新的数据类型
newtype = H5T.create(classID,typesize)
属性所指定的类的新数据类型classID
,指定的字节数typesize
.
H5T.detect_class
确定数据类型是否包含特定类的数据类型
output = H5T.detect_class(typeID,classID)
属性指定的数据类型,则返回正值类型id
包含数据类型类的任何数据类型classID
,0
如果没有。
H5T.equal
确定数据类型的相等性
output = H5T.equal(type1ID,type2ID)
如果数据类型标识符为,type1ID
而且type2ID
,引用相同的数据类型,和0
如果他们不这样做。
指定type1ID
而且type2ID
作为包含HDF5数据类型的字符串标量或字符向量。
H5T.get_create_plist
数据类型创建属性列表的副本
plistID = H5T.get_create_plist(typeID)
属性所指定的数据类型关联的数据类型创建属性列表的属性列表标识符类型id
.
H5T.get_native_type
指定数据类型的本机数据类型
nativetypeID = H5T.get_native_type(typeID,方向)
中指定的数据集数据类型的等效本机数据类型类型id
.
H5T.get_size
数据类型大小(以字节为单位)
typeSize = H5T.get_size(typeID)
返回指定的数据类型的大小类型id
在字节。
H5T.get_super
基本数据类型
superTypeID = H5T.get_super(typeID)
属性所指定的数据类型的基本数据类型类型id
是派生的。
H5T.lock
锁数据类型
H5T.lock(类型id)
锁定指定的数据类型类型id
使其只读且不可破坏。
H5T.open
开放命名数据类型
typeID = H5T.open(locID,typename)
打开一个命名数据类型typename
指定的文件或组中locID
并返回一个数据类型标识符。
这个函数对应于H5Topen1
HDF5库C API中的函数。
数组数据类型
H5T.array_create
创建数组数据类型对象
arraytypeID = H5T.array_create(baseID,rank,dims,perms)
创建一个rank的新数组数据类型对象排名
还有维度会变暗
.该语法对应于H5Tarray_create
hdf5c库1.6版的接口。的烫发
Input参数此时不使用,可以省略。
arraytypeID = H5T.array_create(baseID,dims)
创建一个新的数组数据类型对象。该语法对应于H5Tarray_create
hdf5c库1.8版本的接口。
H5T.get_array_dims
数组尺寸的大小
dims = H5T.get_array_dims(typeID)
所指定的数组数据类型的维的大小和维的排列类型id
.该语法对应于H5Tget_array_dims
hdf5c库1.8版本的接口。
[ndims,dimsizes,perm] = H5T.get_array_dims(typeID)
对应hdf5c库1.6版中的接口。强烈反对。
H5T.get_array_ndims
数组数据类型的秩
rank = H5T.get_array_ndims(typeID)
返回指定的数组数据类型的秩类型id
.
原子数据类型属性
H5T.get_cset
字符串数据类型的字符集
cset = H5T.get_cset(typeID)
返回指定的数据类型的字符集类型类型id
.
H5T.get_ebias
浮点类型的指数偏差
output = H5T.get_ebias(typeID)
返回指定的浮点数据类型的指数偏置类型id
.
H5T.get_fields
浮点数据类型位字段信息
[spos,epos, size,mpos,msize] = H5T.get_fields(typeID)
返回关于浮点数据类型的各个位字段位置的信息。
H5T.get_offset
第一个有效位的位偏移量
offset = H5T.get_offset(typeID)
返回第一个有效位的偏移量。
H5T.get_pad
最小位和最高位的填充类型
[lsb,msb] = H5T.get_pad(typeID)
返回最低有效位填充类型的填充类型,lsb
,以及最有效位填充类型,最高有效位
指定的数据类型类型id
.
H5T.get_precision
原子数据类型的精度
precision = H5T.get_precision(typeID)
返回指定的原子数据类型的精度类型id
.
H5T.set_cset
为字符串数据类型设置字符数据集
H5T.set_cset (typeID cset)
设置用于创建字符串的字符编码。指定cset
作为“H5T_CSET_ASCII”
,“H5T_CSET_UTF8”
或者它们等价的数值。
H5T.set_ebias
设置浮点数据类型的指数偏差
H5T.set_ebias (typeID ebias)
设置指数偏置ebias
指定的浮点数据类型的类型id
.
H5T.set_offset
设置第一个有效位的位偏移量
H5T.set_offset(类型id,抵消)
设置第一个有效位的位偏移量。类型id
数据类型的标识符。抵消
指定出现的填充位数。
H5T.set_pad
为最低和最高有效位设置填充类型
H5T.set_pad(类型id, lsb (msb)
设置最低有效位填充类型的填充类型,lsb
,和最有效位填充类型,最高有效位
指定的数据类型类型id
.
H5T.set_precision
设置原子数据类型的精度
H5T.set_precision(类型id, prec)
设置精度的比特数,前的
指定的原子数据类型的类型id
.
H5T.set_sign
设置整数数据类型的符号属性
H5T.set_sign(类型id,标志)
为指定的整数类型设置符号属性类型id
.指定标志
作为“H5T_SGN_NONE”
或“H5T_SGN_2”
.
H5T.set_size
以字节为单位设置数据类型的大小
H5T.set_size (typeID typeSize)
属性指定的数据类型的总大小(以字节为单位)类型id
.如果需要一个可变长度的字符串,那么typesize
可以指定为“H5T_VARIABLE”
.
复合数据类型
H5T.get_member_class
复合数据类型成员的数据类型类
memclass = H5T.get_member_class(typeID, memberno)
属性指定的复合数据类型成员的数据类型类membno
.的类型id
参数是复合对象的数据类型标识符。
H5T.get_member_index
复合或枚举类型成员的索引
idx = H5T.get_member_index(typeID,name)
返回属于复合数据类型或枚举数据类型元素的字段的索引的名字
而且类型id
.
H5T.get_member_name
复合或枚举类型成员的名称
name = H5T.get_member_name(typeID, memberno)
属性指定的复合数据类型或枚举数据类型的元素的字段的名称类型id
.指定membno
作为字段的从零开始的索引,或者作为元素的名称。
H5T.get_member_offset
复合数据类型字段的偏移量
get_member_offset(typeID, memberno)
返回指定字段的字节偏移量membno
指定的复合数据类型中类型id
.的值0
是有效的偏移量。
H5T.get_member_type
指定成员的数据类型
typeID = H5T.get_member_type(typeID, memberno)
返回指定的成员的数据类型membno
指定的数据类型类型id
.
H5T.get_nmembers
复合或枚举数据类型中的元素个数
5 .get_nmembers(typeID)
返回复合数据类型中的字段数或属于枚举数据类型的成员数,由类型id
.
H5T.pack
递归地从复合数据类型中删除填充
H5T.pack(类型id)
类型指定的复合数据类型内递归地删除填充类型id
为了更有效地(在空间方面)存储数据。
枚举数据类型
H5T.enum_create
创建新的枚举数据类型
typeID = H5T.enum_create(parentID)
创建基于基本数据类型的新枚举数据类型parentID
.类型id
新枚举数据类型的数据类型标识符。
H5T.enum_insert
插入枚举数据类型成员
H5T.enum_insert(类型id、名称、值)
属性指定的枚举数据类型中插入新的枚举数据类型成员类型id
.的的名字
参数是一个字符串标量或字符向量,用于指定枚举的新成员的名称,并且价值
成员的值。
H5T.enum_nameof
枚举数据类型成员的名称
name = H5T.enum_nameof(typeID, memberno)
属性指定的枚举数据类型的成员所对应的符号名称类型id
.
H5T.enum_valueof
枚举数据类型成员的值
value = H5T.enum_valueof(typeID,membname)
属性指定的枚举数据类型的指定成员的名称对应的值类型id
.
H5T.get_member_value
枚举数据类型成员的值
value = H5T.get_member_value(typeID, memberno)
属性所指定的成员的值membno
属性指定的枚举数据类型类型id
.
不透明数据类型属性
H5T.get_tag
与不透明数据类型关联的标记
tag = H5T.get_tag(typeID)
返回与指定的不透明数据类型关联的标记类型id
.
H5T.set_tag
用描述标记不透明数据类型
H5T.set_tag(类型id、标签)
标记指定的不透明数据类型类型id
使用描述性文本标签
.指定标签
作为字符串标量或字符向量。
变长数据类型
H5T.is_variable_str
确定数据类型是否为变长字符串
output = H5T.is_variable_str(typeID)
属性指定的数据类型,则返回正值类型id
是可变长度的字符串,而0
如果不是的话。
元数据缓存调优属性
H5T.flush
将所有数据缓冲区刷新到磁盘
H5T.flush(类型id)
导致与提交的数据类型关联的所有缓冲区都被刷新到磁盘,而不从缓存中删除数据。
H5T.refresh
清除并重新加载所有数据缓冲区
H5T.refresh(类型id)
清除与提交的数据类型相关的所有缓冲区,并立即从磁盘重新加载更新的内容。该函数关闭提交的数据类型,从缓存中清除与之相关的所有元数据,然后重新打开具有相同标识符的数据类型。