This function sets error stack callback data and functions that are called to signal error stack changes for the current thread.
Declaration:
Copy Code | |
---|---|
AT_ERRCODE ACCUAPI IG_err_callback_set( LPVOID lpPrivate, LPFNIG_ERRSTACK_ADD lpfnAddCB, LPFNIG_ERRSTACK_CLEAR lpfnClearCB ); |
Arguments:
lpPrivate | Any private data that will be passed to lpfnAddCB and lpfnClearCB callbacks. NULL is acceptable. |
lpfnAddCB | Pointer to the callback function that will be called after the record is added to the error stack. See LPFNIG_ERRSTACK_ADD for the declaration. |
lpfnClearCB | Pointer to the callback function that will be called after the error stack is cleared. See LPFNIG_ERRSTACK_CLEAR for the declaration. |
Return Value:
Returns the code of the ImageGear error that occurred during this function call. A value of zero means no errors have occurred. Errors that occurred during this function call are not appended onto the error stack.
Supported Raster Image Formats:
This function does not process image pixels.
Sample:
Filters, MFC Threads, Multimedia, Flashpix
Example:
Copy Code | |
---|---|
VOID ACCUAPI ErrAdd( LPVOID lpPrivate, UINT nRecord, INT iLineNumber, AT_ERRCODE iCode, UINT nLevel, AT_INT lValue1, AT_INT lValue2, LPCHAR lpFileName, LPCHAR lpExtratext) { HWND hWnd = (HWND)lpPrivate; // update error window with new records // ... } VOID ACCUAPI ErrClear( LPVOID lpPrivate, UINT nRecords) { HWND hWnd = (HWND)lpPrivate; // remove records from error window // ... } VOID Example_IG_err_callback_set() { HWND hWnd = 0; // This assuming to be a real window AT_ERRCODE iErrCode; iErrCode = IG_err_callback_set((LPVOID)hWnd, ErrAdd, ErrClear); } |
Remarks:
Callback data and functions can be obtained using IG_err_callback_get function.
Each thread has its own independent error stack. There are two types of callbacks - local to thread and global. This API allows you to set the thread specific callbacks. Use IG_errmngr_callback_set to set the global data and callbacks.