BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Tuxedo FML リファレンス   |   先頭へ   |   前へ   |   次へ   |   目次

 


Findex、Findex32(3fml)

名前

Findex()Findex32() - フィールド化バッファのインデックスを行う

形式

#include <stdio.h> 
#include "fml.h"
int
Findex(FBFR *fbfr, FLDOCC intvl)
#include "fml32.h"
int
Findex32(FBFR32 *fbfr, FLDOCC32 intvl)

機能説明

Findex() は、フィールド化バッファのインデックスを行うために明示的に呼び出されます。fbfr は、フィールド化バッファを指すポインタです。2 番目のパラメータ intvl には、インデックスの間隔を指定します。すなわち、インデックスするフィールドを理想的に分離します。intvl の値が 0 の場合は、現在のバッファのインデックス値が使用されます。現在の値が 0 の場合は、FSTDXINTVL (省略時値は 16) が使用されます。インデックス値に 1 を使用すると、必ず、バッファにあるすべてのフィールドがインデックスされます。インデックス間隔の大きさとバッファのインデックスに割り当てられる領域の大きさは、反比例します。したがって、間隔が小さいとより多くのフィールドがインデックスされ、より多くの領域が使用されます。

Findex32() は 32 ビット FML で使用されます。

マルチスレッドのアプリケーション内のスレッドは、TPINVALIDCONTEXT を含め、どのようなコンテキスト状態で実行している場合でも、Findex() または Findex32() を呼び出すことができます。

戻り値

この関数は、エラー発生時に -1 を返し、Ferror を設定してエラー条件を示します。

エラー

次の条件の場合、Findex() は異常終了し、Ferror を次の値に設定します。

[FALIGNERR]

"fielded buffer not aligned"
バッファが適切なバウンダリで開始していません。

[FNOTFLD]

"buffer not fielded"
バッファがフィールド化されていないか、または Finit() で初期化されていません。

[FNOSPACE]

"no space in fielded buffer"
エントリは、インデックスに追加されますが、バッファには十分な領域が残っていません。

関連項目

FML 関数の紹介」、Fidxused、Fidxused32(3fml)Frstrindex、Frstrindex32(3fml)Funindex、Funindex32(3fml)

 

先頭へ戻る 前のトピックへ 次のトピックへ