5.1.2 論理端末名称決定UOCインタフェース

論理端末名称決定UOCは,次に示す形式で呼び出します。

<この項の構成>
(1) 形式
(2) 説明
(3) パラメタの内容
(4) MCFが値を設定する項目
(5) ユーザが値を設定する項目
(6) リターン値
(7) パラメタとバッファの関係

(1) 形式

ANSI C,C++の形式

#include <dcmcf.h>
#include <dcmcfuoc.h>
#include <dcmpcm.h>
#include <dcmhsc2.h>
DCLONG    uoc_func(dcmcf_uoc_min_n *parm)

K&R版 Cの形式

#include <dcmcf.h>
#include <dcmcfuoc.h>
#include <dcmpcm.h>
#include <dcmhsc2.h>
DCLONG    uoc_func(parm)

dcmcf_uoc_min_n *parm ;

(2) 説明

uoc_func(論理端末名称決定UOC)を呼び出すとき,MCFは次に示す所定のパラメタをparmに設定します。

(3) パラメタの内容

(a) dcmcf_uoc_min_nの内容

typedef struct {
   DCLONG pro_kind;            …プロトコル種別
   char   le_name[9];          …論理端末名称
   char   reserve1[7];         …予備
   DCLONG rcv_prim;            …受信サ-ビスプリミテイブ
   dcmcf_uocbuff_list_n *buflist_adr;
                               …受信バッファリストアドレス
   dcmcf_uocbuff_list_n *ebuflist_adr;
                               …未使用
   char   aplname[9];          …未使用
   char   reserve2[7];         …予備
   char   *pro_indv_ifa;       …dcmhs2_uoc_protを示すポインタ変数
   DCLONG rtn_detail;          …詳細リターンコード
   char   reserve3[8];         …予備
} dcmcf_uoc_min_n;

なお,dcmcf_uoc_min_nは,<dcmcfuoc.h>で定義されています。

(b) dcmcf_uocbuff_list_n(バッファリスト)の内容

typedef struct {
   DCLONG buf_num;             …バッファ情報数
   DCLONG used_buf_num;        …使用バッファ情報数
   char   reserve1[8];         …予備
   dcmcf_uocbufinf_n buf_array[DCMCF_UOC_BUFF_MAX];
                               …バッファ情報
} dcmcf_uocbuff_list_n;

なお,dcmcf_uocbuff_list_nは,<dcmcfuoc.h>で定義されています。

(c) dcmcf_uocbufinf_n(バッファ情報)の内容

typedef struct {
   char    *buf_adr;           …バッファアドレス
   DCULONG buf_size;           …バッファ最大長
   DCULONG seg_size;           …バッファ使用長(セグメント長)
   char    reserve1[4];        …予備
   dcmcfuoc_w_type buff_id;    …MCF内部情報1
   DCMLONG buff_addr;          …MCF内部情報2
   char    reserve2[4];        …予備
} dcmcf_uocbufinf_n;

なお,dcmcf_uocbufinf_nは,<dcmcfuoc.h>で定義されています。

(d) dcmhsc2_uoc_protの内容

typedef struct {
   DCLONG le_num;              …定義されている論理端末数
   DCLONG reserve[3];          …予備
   dcmhs2_le_inf le_list[DCMHS2_UOC_LE_MAX];
                               …論理端末名称リスト
} dcmhsc2_uoc_prot;
typedef struct {
   char   le_name[16];         …論理端末名称
   DCLONG le_inf;              …論理端末の状態
}  dcmhs2_le_inf

(4) MCFが値を設定する項目

(a) dcmcf_uoc_min_n
(b) dcmcf_uocbuff_list_n(バッファリスト)
(c) dcmcf_uocbufinf_n(バッファ情報)
(d) dcmhsc2_uoc_prot

(5) ユーザが値を設定する項目

(a) dcmcf_uoc_min_n
(b) dcmhsc2_uoc_prot

(6) リターン値

uoc_func()は次のコードでリターンしてください。

リターン値意味
DCMCF_UOC_MSG_OK正常リターン
DCMCF_UOC_MSG_NGメッセージ編集エラー

(7) パラメタとバッファの関係

UOCインタフェース用のパラメタとバッファの関係を次の図に示します。

図5-1 UOCインタフェース用のパラメタとバッファの関係(論理端末名称決定UOCの場合)

[図データ]

注※
バッファ情報は32バイトで,次の形式をしています。
[図データ]