| 
   Available in LEADTOOLS Medical Imaging toolkits.  | 
FILESAVECALLBACK Function
#include "l_bitmap.h"
L_INT pEXT_CALLBACK YourFunction (pBitmap, pBuffer, uRow, uLines, pUserData)
| 
 pBITMAPHANDLE pBitmap;  | 
 /* pointer to the bitmap handle */  | 
| 
 L_UCHAR * pBuffer;  | 
 /* pointer to a buffer for the caller's input data */  | 
| 
 L_UINT uRow;  | 
 /* first line to write to the buffer */  | 
| 
 L_UINT uLines;  | 
 /* number of lines to write to the buffer */  | 
| 
 L_VOID * pUserData;  | 
 /* pointer to additional parameters */  | 
Provides input to the LFile::SaveFile, LFile::SaveOffset, LDicomDS::InsertImage, and LDicomDS::SetImage functions.
| 
 Parameter  | 
 Description  | 
| 
 pBitmap  | 
 Pointer to the bitmap handle that contains the image information.  | 
| 
 pBuffer  | 
 Pointer to the caller's input buffer where the callback function must put the data.  | 
| 
 uRow  | 
 The number of the first line that the callback function must put in the buffer.  | 
| 
 uLines  | 
 The number of lines that the callback function must put in the buffer.  | 
| 
 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
This type callback function is optional. If you provide a callback function, it must supply the image data. It can also do other useful things, such as updating a status bar. If you do not provide a callback function, the calling function saves data from the specified bitmap.
See Also
| 
 Functions  | 
 LFile::SaveFile LFile::SaveOffset, LMemoryFile::StartCompressBuffer, LDicomDS::InsertImage, LDicomDS::SetImage  | 
Example
This FILESAVECALLBACK function supplies image data from the LEAD bitmap
to fulfill the minimum requirements of the callback
L_INT EXT_CALLBACK SaveImageCB (pBITMAPHANDLE pBitmap,
                                L_UCHAR     * pBuffer,
                                L_UINT        nRowBegin,
                                L_UINT        nRowsToGet,
                                L_VOID       * pUserData)
{
   UNREFERENCED_PARAMETER(pUserData);
   UNREFERENCED_PARAMETER(pBuffer);
   UNREFERENCED_PARAMETER(pBitmap);
   L_UINT i; /* Row counter */
   L_UINT nRowLast = nRowBegin + nRowsToGet; /* Used when counting rows */
   L_TCHAR szMessage [50];
   /* Put the required rows in the buffer */
   for (i = nRowBegin; i < nRowLast; i++)
   {
      wsprintf(szMessage, TEXT("Row no. %u\n"),i); 
      MessageBox(NULL, szMessage, TEXT("Row"), MB_OK );
   }
   return (SUCCESS);
}