LOADINFOCALLBACK Function
#include "l_bitmap.h"
L_INT pEXT_CALLBACK YourFunction(hFile, pInfo, pUserData)
L_HFILE hFile; |
/* file handle of the file to load */ |
pLOADINFO pInfo; |
/* pointer to the structure with file information */ |
L_VOID* pUserData; |
/* pointer to additional parameters */ |
This function handles input data that is in a format (such as raw FAX) that LEADTOOLS cannot recognize.
Parameter |
Description |
hFile |
The Windows file handle of the file to be loaded. |
pInfo |
Pointer to the LOADINFO structure that supplies information about the file that LEADTOOLS needs. |
pUserData |
A void pointer that you can use to access a variable or structure containing data that your callback function needs. This gives you a way to receive data indirectly from the function that uses this callback function. (This is the same pointer that you pass in the pUserData parameter of the calling function.) |
|
Keep in mind that this is a void pointer, which must be cast to the appropriate data type within your callback function. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
Refer to L_SetLoadInfoCallback for a description of how this type of callback function is used.
Required DLLs and Libraries
LTFIL For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application |
Example
This LOADINFOCALLBACK function provides information for a raw fax file. This example uses hard-coded and saved information. Your application probably would get the information in some other way.
typedef struct _MYDATA { L_INT nWidth; L_INT nHeight; } MYDATA; L_INT EXT_CALLBACK LoadInfoCallBack(L_HFILE fd, pLOADINFO pInfo, L_VOID * pUserData ) { MYDATA *pData = (MYDATA *)pUserData; UNREFERENCED_PARAMETER(fd); /* Set the LOADINFO structure's fields */ pInfo->BitsPerPixel = 1; pInfo->Flags = LOADINFO_TOPLEFT; pInfo->Format = FILE_FAX_G3_2D; pInfo->Height = pData->nHeight; /* Value set before we created the file */ pInfo->Width = pData->nWidth; /* Value set before we created the file */ pInfo->Offset = 0; return SUCCESS; }