4.1.6 送信メッセージの通番編集UOCインタフェース

送信メッセージの通番編集UOCは,次に示す形式でsend_uoc関数として作成します。

<この項の構成>
(1) 形式
(2) MCFから値が渡される引数
(3) リターン値
(4) OpenTP1への組み込み方法

(1) 形式

ANSI C,C++の形式

#include <dcmcf.h>
DCLONG send_uoc(DCLONG flags, char *termname, DCLONG sendno,
               DCLONG sendid,DCLONG dataleng, char *senddata)

K&R版 Cの形式

#include <dcmcf.h>
DCLONG send_uoc (flags, termname, sendno, sendid, dataleng, senddata)
DCLONG flags;
char   *termname;
DCLONG sendno;
DCLONG sendid;
DCLONG dataleng;
char   *senddata;

(2) MCFから値が渡される引数

(3) リターン値

リターン値意味
DC_OK正常リターン

(4) OpenTP1への組み込み方法

UAPのメイン関数の中に,UOCの関数アドレスを登録しておきます。UAPのメイン関数に登録するdc_mcf_regster関数の形式を次に示します。

(a) 形式
ANSI C,C++の形式

#include <dcmcf.h>
int dc_mcf_regster(DCLONG flags, DCLONG (*uoc_addr)())

K&R版 Cの形式

#include <dcmcf.h>
int dc_mcf_regster(flags,uoc_addr)
DCLONG flags;
DCLONG (*uoc_addr)();

(b) ユーザが値を設定する項目
(c) リターン値
リターン値意味
DC_OK正常に終了しました。
DCMCFER_INVALID_ARGS引数の指定が間違っています。
DCMCFER_NOMEMローカルメモリが不足しています。

メイン関数への登録例を次に示します。

main()
{
extern DCLONG send_uoc();

dc_rpc_open();
dc_mcf_open();
dc_mcf_regster(DCMCF_SEND_UOC,send_uoc);
dc_mcf_mainloop();
dc_mcf_close();
dc_rpc_close();
}