|
|
typesw(5)
名前
typesw-バッファ・タイプ・スイッチ構造体。各バッファ・タイプに必要なパラメータとルーチンを識別するスイッチ
形式
バッファ・タイプの構造
/*
* 以下の定義は、$TUXDIR/include/tmtypes.h にあります。
*/
#define TMTYPELEN ED_TYPELEN
#define TMSTYPELEN ED_STYPELEN
struct tmtype_sw_t {
char type[TMTYPELEN]; /* バッファのタイプ */
char subtype[TMSTYPELEN]; /* バッファのサブタイプ */
long dfltsize; /* バッファのデフォルトのサイズ */
/* バッファ初期化関数ポインタ */
int (_TMDLLENTRY *initbuf) _((char _TM_FAR *, long));
/* バッファ再初期化関数ポインタ */
int (_TMDLLENTRY *reinitbuf) _((char _TM_FAR *, long));
/* バッファ非初期化関数ポインタ */
int (_TMDLLENTRY *uninitbuf) _((char _TM_FAR *, long));
/* バッファ送信前操作関数ポインタ*/
long (_TMDLLENTRY *presend) _((char _TM_FAR *, long, long));
/* バッファ送信後操作関数ポインタ */
void (_TMDLLENTRY *postsend) _((char _TM_FAR *, long, long));
/* バッファ受信後操作関数ポインタ */
long (_TMDLLENTRY *postrecv) _((char _TM_FAR *, long, long));
/* 符号化/復号化関数ポインタ */
long (_TMDLLENTRY *encdec) _((int, char _TM_FAR *, long, char _TM_FAR *, long));
/* ルーティング関数ポインタ */
int (_TMDLLENTRY *route) _((char _TM_FAR *, char _TM_FAR *, char _TM_FAR *,
long, char _TM_FAR *));
/* バッファ・フィルタ関数ポインタ */
int (_TMDLLENTRY *filter) _((char _TM_FAR *, long, char _TM_FAR *, long));
/* バッファ・フォーマット関数ポインタ */
int (_TMDLLENTRY *format) _((char _TM_FAR *, long, char _TM_FAR *,
char _TM_FAR *, long));
/* 送信前のバッファの処理。コピーを生成する場合がある */
long (_TMDLLENTRY *presend2) _((char _TM_FAR *, long, char _TM_FAR *, long,
long _TM_FAR *));
/* この領域は将来の拡張のために予約されています */
void (_TMDLLENTRY *reserved[9]) _((void));
};
/*
* アプリケーション・タイプ・スイッチ・ポインタ
* テーブルのアクセス時には常にこのポインタを使用
*/
extern struct tmtype_sw_t *tm_typeswp;
機能説明
バッファ・タイプとサブタイプにはそれぞれ、バッファが操作されるときに適切なルーチンが呼び出されるように、tm_typesw 配列内に対応するエントリが必要です。BEA Tuxedo が提供するバッファ・タイプについては、tuxtypes(5) を参照してください。
カスタマイズしたバッファ・タイプを指定する場合には、$TUXDIR/lib/tmtypesw.c. の tm_typesw 配列にインスタンスを追加します。この方法については、tuxtypes(5) を参照してください。新しいタイプを追加する場合に指定しなければならないルーチンのセマンティクスは、buffer(3c) に説明されています。
ファイル
$TUXDIR/tuxedo/include/tmtypes.h -タイプ・スイッチの定義
$TUXDIR/lib/tmtypesw.c -タイプ・スイッチの具体例
関連項目
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|