This is a utility function that can be called by the user’s code during invocation of bipInitializeUserExits. It is invoked by the user’s code if the user wants to register functions to be called every time certain events occur.
typedef struct cci_UEVft { int reserved; char StrucId[4]; int Version; cciInputMessageCallback iFpInputMessageCallback; cciTransactionEventCallback iFpTransactionEventCallback; cciPropagatedMessageCallback iFpPropagatedMessageCallback; cciNodeCompletionCallback iFpNodeCompletionCallback; } CCI_UE_VFT; void cciRegisterUserExit ( int* returnCode, CciChar* name, CciDataContext* userContext, CCI_UE_VFT* functionTable);
The specified name matches the name of a user exit previously registered in the current execution group.
The specified name was invalid. This can be caused if a NULL pointer, empty string or a string containing non alpha-numeric characters was specified.
None. If an error occurs, the returnCode parameter indicates the reason for the error.
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; cciRegisterUserExit(&rc, MyConstants::myUserExitName, 0, &myVft); /*you should now check the rc for unexpected values*/ return; } }/*end of extern "C" */