1.4.2 アプリケーション起動サービスのMCFメイン関数の作成方法
アプリケーション起動機能とMCFイベント処理用MHPを使用する場合,プロトコル用とは別に,アプリケーション起動サービス用にMCFメイン関数をコーディングし,コンパイルおよびリンケージを行ってアプリケーション起動サービスの実行形式プログラムを作成する必要があります。
MCFメイン関数ではスタート関数(dc_mcf_svstart)を発行します。
タイマ起動引き継ぎ決定UOCを使用する場合は,アプリケーション起動サービス用のメイン関数で,タイマ起動引き継ぎ決定UOCのアドレスを指定してください。タイマ起動引き継ぎ決定UOCは,MCFメイン関数と同じ言語(K&R版 C,ANSI C,またはC++)で作成してください。タイマ起動引き継ぎ決定UOCについては,マニュアル「OpenTP1 プログラム作成リファレンス C言語編」を参照してください。
アプリケーション起動サービス用のMCFメイン関数のコーディング概要を図1-7と図1-8に示します。
-
アプリケーション起動サービス提供のヘッダファイルを取り込みます。
-
使用するUOCの関数をextern宣言します。UOCのリターン値はDCLONG型にしてください。
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
UOCテーブルをextern宣言します。
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
タイマ起動引き継ぎ決定UOCの関数アドレスを,次に示すシステム提供変数に設定します。
dcmcf_uoctbl.rrntime /*タイマ起動引き継ぎ決定UOCアドレス*/
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
スタート関数を発行します。必ずコーディングしてください。
スタート関数を呼び出したあとは,MCFメイン関数に制御が戻りません。このため,スタート関数のあとにコーディングした処理は実行されませんので,ご注意ください。
-
アプリケーション起動サービス提供のヘッダファイルを取り込みます。
-
使用するUOCの関数をextern宣言します。UOCのリターン値はDCLONG型にしてください。
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
UOCテーブルをextern宣言します。
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
タイマ起動引き継ぎ決定UOCの関数アドレスを,次に示すシステム提供変数に設定します。
dcmcf_uoctbl.rrntime /*タイマ起動引き継ぎ決定UOCアドレス*/
タイマ起動引き継ぎ決定UOCを使用する場合だけコーディングしてください。
-
スタート関数を発行します。必ずコーディングしてください。
スタート関数を呼び出したあとは,MCFメイン関数に制御が戻りません。このため,スタート関数のあとにコーディングした処理は実行されませんので,ご注意ください。