BEA Logo BEA Tuxedo Release 8.0

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

 

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

 


Flen、Flen32(3fml)

名前

Flen()Flen32() - バッファ中のフィールド・オカレンスの長さを返す

形式

#include <stdio.h> 
#include "fml.h"

int
Flen(FBFR *fbfr, FLDID fieldid, FLDOCC oc)

#include "fml32.h"

long
Flen32(FBFR32 *fbfr, FLDID32 fieldid, FLDOCC32 oc)

機能説明

Flen() は、バッファ中の指定したフィールド・オカレンスの値を見つけ出し、そのフィールド長を返します。fbfr は、フィールド化バッファを指すポインタです。 fieldid は、フィールド識別子です。oc はフィールドのオカレンス番号です。

FLD_PTR 型の値の場合、Flen32()sizeof(char*) に基づくポインタ・フィールドの固定長を返します。FLD_FML32 型の値の場合、Flen32() は入れ子になったバッファの長さに対する Fused32() の値を返します。FLD_VIEW32 型の値の場合、Flen32() は VIEW データの長さと VIEW 名の長さを返します。

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

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

戻り値

Flen() は、正しく終了するとフィールド長を返します。

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

エラー

次の条件が発生すると、Flen() は異常終了し、Ferror を次のように設定します。

[FALIGNERR]

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

[FNOTFLD]

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

[FNOTPRES]

"field not present"
フィールド・オカレンスが要求されましたが、指定されたフィールドとオカレンスの両方、あるいはどちらかは、フィールド化バッファにありませんでした。

[FBADFLD]

"unknown field number or type"
指定されたフィールド識別子は無効です。

関連項目

FML 関数の紹介」、Fnum、Fnum32(3fml)Fpres、Fpres32(3fml)

 

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