ドキュメンテーション センター

  • 評価版
  • 製品アップデート

目次

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

H5L.iterate

構文

[status,idx_out,opdata_out] = H5L.iterate(group_id,index_type,order,idx_in,iter_func,opdata_in)

説明

[status,idx_out,opdata_out] = H5L.iterate(group_id,index_type,order,idx_in,iter_func,opdata_in) は、group_id で指定されたグループ内のリンクを反復し、関数ハンドルが iter_func である共通の関数を実行します。H5L.iterate は、指定されたグループのサブグループまで再帰的にリンクをたどることはありません。

index_typeorder は反復を作成します。index_type は使用されるインデックスを指定します。インデックス タイプによりリンクのインデックスが付いていない場合は、まずそのインデックスでの並べ替えが行われ、その後で反復が開始します。リンクにインデックスが付いている場合、並べ替えステップは必要ないため、さらに反復の開始が早くなります。有効な値は次のとおりです。

'H5_INDEX_NAME'名前に基づく英数字のインデックス
'H5_INDEX_CRT_ORDER'作成順に基づくインデックス

order は、index_type で指定されるインデックスに従ってオブジェクトを検査する順序を指定します。有効な値は次のとおりです。

'H5_ITER_INC'昇順
'H5_ITER_DEC'降順
'H5_ITER_NATIVE'最速で可能な順序

idx_in は反復の開始点を指定し、idx_out は反復が停止した点を返します。これにより、反復を中断してから再開できます。

コールバック関数 iter_func は次のようなシグネチャをもたなければなりません。

function [status,opdata_out] = iter_func(group_id,name,opdata_in)

opdata_in はユーザー定義の値または構造体であり、パラメーター iter_func opdata_in の反復の最初のステップに渡されます。反復ステップの opdata_out は、次の反復ステップのために opdata_in を作成します。反復の最後の最終的な opdata_out は、呼び出し元に opdata_out として返されます。

iter_func が返す status 値は次のように解釈されます。

ゼロ反復を続行するか、すべてのメンバーが処理されると呼び出し元にステータス値ゼロを返します。
反復を停止して呼び出し元に正のステータス値を返します。
反復を停止して失敗を示すエラーをスローします。

この情報は役に立ちましたか?