cciRegisterUserExit は、 bipInitializeUserExits が呼び出されるときにユーザーのコードで呼び出すことができるユーティリティー関数です。
この関数は、特定のイベントが発生するたびに関数が呼び出されるようユーザーが登録する場合に、ユーザーのコードによって呼び出されます。
typedef struct cci_UEVft {
int reserved;
char StrucId[4];
int Version;
cciInputMessageCallback iFpInputMessageCallback;
cciTransactionEventCallback iFpTransactionEventCallback;
cciPropagatedMessageCallback iFpPropagatedMessageCallback;
cciNodeCompletionCallback iFpNodeCompletionCallback;
cciOutputMessageCallback iFpOutputMessageCallback;
} CCI_UE_VFT;
void cciRegisterUserExit (
int* returnCode,
CciChar* name,
CciDataContext* userContext,
CCI_UE_VFT* functionTable);
指定された名前が、現在の実行グループに以前に登録されたユーザー出口の名前と一致します。
指定された名前が無効でした。 これは、NULL ポインター、空ストリング、または英数字以外の文字を含むストリングが指定された場合に発生する可能性があります。
定義 CCI_UE_VFT_DEFAULT を使用して、構造を初期化します。 これにより、バージョンが CCI_UE_VFT_CURRENT_VERSION に設定されます。 cciOutputMessageCallback は、バージョン 2 の CCI_UE_VFT_VERSION_2 で追加されました。
なし。 エラーが発生した場合、returnCode パラメーターがエラーの理由を示します。
extern "C"{
void bipInitializeUserExits(){
int rc = CCI_SUCCESS;
CCI_UE_VFT myVft = {CCI_UE_VFT_DEFAULT};
myVft.iFpInputMessageCallback = myInputMessageCallback;
myVft.iFpTransactionEventCallback = myTransactionEventCallback;
myVft.iFpPropagatedMessageCallback = myPropagatedMessageCallback;
myVft.iFpNodeCompletionCallback = myNodeCompletionCallback;
myVft.iFpOutputMessageCallback = myOutputMessageCallback;
cciRegisterUserExit(&rc,
MyConstants::myUserExitName,
0,
&myVft);
/*you should now check the rc for unexpected values*/
return;
}
}/*end of extern "C" */