コールバック関数

AioSetCntCallBackProc関数を使用して、コールバック関数の登録を行います。

Ret = AioSetCntCallBackProc ( Id , CntChannel , CallBackProc , CntEvent , Param)

CallBackProcには、作成したコールバック関数のポインタを指定します。

コールバック関数名をCallBackProcとした場合
VC:Ret = AioSetCntCallBackProc(Id, 0 , CallBackProc, CNTE_DATA_NUM , this);

CntEventには、イベント要因を以下の範囲からマクロもしくは数値で指定します。
CntEventはビット単位で以下のような意味を持ち、これらを組み合わせて指定可能です。

イベント要因

マクロ

比較カウント一致イベント

CNTE_DATA_NUM

00000010H

カウントオーバーランイベント

CNTE_ORERR

00010000H

カウンタ動作エラー

CNTE_ERR

00010001H

比較カウント一致イベント (マクロ:CNTE_DATA_NUM 値:00000010H)
カウンタの比較カウント一致が成立したときに発生するイベントです。

カウントオーバーランイベント (マクロ:CNTE_ORERR 値:00010000H)
カウンタのオーバーラン発生時にイベントを発生します。

カウンタ動作エラー (マクロ:CNTE_ERR 値:00010001H)
カウンタ動作エラーによりカウンタ動作が停止するときに発生するイベントです。

Paramにはコールバック関数に渡す任意のパラメータをポインタで設定します。