<< h5mv HDF5 files h5open >>

Scilab Help >> HDF5 files > H5 Objects

H5 Objects

種々のH5オブジェクトのプロパティを説明

内容

説明

H5オブジェクトはアクセス可能なプロパティを有します. 全てのプロパティ名は,大文字小文字を区別します(パス名およびオブジェクト名を 除きます).

H5ファイル

以下のプロパティにアクセス可能です:

フィールド名が'/'で始まる場合, パスとみなされ, 戻り値はこのパスに対応するH5オブジェクトとなります.

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
// aはファイル
h5isFile(a)
// プロパティにアクセス
a.name, a.size, a.version, a.root
// データセットxをオープン
a("/x")
// 全リソースを解放
h5close(a);

H5グループ

以下のプロパティがアクセス可能:

フィールド名が過去のリストにない場合, 他のH5オブジェクトへのローカルパスとみなされます.

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
root = a.root;
// rootはグループ
h5isGroup(root)
// プロパティにアクセス
root.name, root.path, root.datasets, root.attributes
// データセットxをオープン
dset_x = root.x
// 全リソースを解放
h5close(a);

H5 Dataset

以下のプロパティにアクセス可能です:

フィールド名が過去のリストに存在しない場合, 属性名とみなされます.

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
dset_x = a.root.x;
// dset_x がデータセットです
h5isSet(dset_x)
// プロパティにアクセス
dset_x.attributes, dset_x.type, dset_x.dataspace, dset_x.data
// 属性xをオープン
attr_x = dset_x.SCILAB_Class
// 全リソースを解放
h5close(a);

H5データスペース

以下のプロパティにアクセスできます:

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
dspace_x = a.root.x.dataspace;
// dspace_x はスペース
h5isSpace(dspace_x)
// プロパティにアクセス
dspace_x.dims, dspace_x.extents, dspace_x.type
// 全リソースを解放
h5close(a);

H5属性

以下のプロパティにアクセス可能です:

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
attr_x = a.root.x.SCILAB_Class;
// attr_x は属性
h5isAttr(attr_x)
// プロパティにアクセス
attr_x.type, attr_x.dataspace, attr_x.data
// 全リソースを解放
h5close(a);

H5型

以下のプロパティにアクセス可能です:

x = [1 2;3 4];
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
type_x = a.root.x.type;
// type_x は型
h5isType(type_x)
// プロパティにアクセス
type_x.class, type_x.type, type_x.size, type_x.nativetype, type_x.nativesize,
// 全リソースを解放
h5close(a);

H5リファレンス

H5リファレンスオブジェクトは,各要素がH5オブジェクトへのリファレンスであるハイパー行列オブジェクト をラップします.

x = list([1 2;3 4], "Hello", uint32(123));
save(TMPDIR + "/x.sod", "x");
a = h5open(TMPDIR + "/x.sod");
dims_x = a.root.x.dataspace.dims
ref_x = a.root.x.data;
// ref_x はリファレンス
h5isRef(ref_x)
// 3個の要素を取得
x1 = ref_x(1), x2 = ref_x(2), x3 = ref_x(3)
// データを取得
x1.data, x2.data, x3.data
// 全リソース解放
h5close(a);

参照

履歴

VersionDescription
5.5.0 HDF5モジュールが導入されました.

Report an issue
<< h5mv HDF5 files h5open >>