Questa è una funzione di utilità, che è possibile richiamare tramite il codice utente durante il richiamo di bipInitializeUserExits. Essa viene richiamata dal codice utente se l'utente desidera registrare delle funzioni da chiamare ogni volta che si verificano determinati eventi.
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);
Il nome specificato corrisponde al nome di un'uscita utente precedentemente registrata nel gruppo di esecuzione corrente.
Il nome specificato non era valido. Tale situazione può verificarsi se si specifica un puntatore NULL, una stringa vuota o una stringa contenente caratteri non alfanumerici.
Nessuno. Se si verifica un errore, il parametro returnCode indica il motivo dell'errore.
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); /*Controllare ora i valori imprevisti nell'rc*/ return; } }/*fine di "C" esterno */