Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. |
LMemoryFile::SaveFileCallBack
#include "ltwrappr.h"
virtual L_INT LMemoryFile::SaveFileCallBack(pLBitmap, pLBuffer, uRow, uLines)
LBitmapBase *pLBitmap; |
/* pointer to an LBitmap object */ |
LBuffer * pLBuffer; |
/* pointer to an LBuffer object */ |
L_UINT uRow; |
/* row number */ |
L_UINT uLines; |
/* number of lines to save */ |
This function is called by the LMemoryFile::SaveFileBuffer function to save the specified image data.
Parameter |
Description |
pLBitmap |
Pointer to an LBitmapBase object that contains the image data. |
pLBuffer |
Pointer to an LBuffer object into which the bitmap will be saved. |
uRow |
Number of the first row of data that the callback will write to the buffer. |
uLines |
Number of lines that the callback will write to the buffer. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
If this function is overridden, the user must supply the image data that the function will save. The base class implementation saves data from the class object's associated bitmap.
This function does not support signed data images, unless they are DICOM images. It returns the error code ERROR_SIGNED_DATA_NOT_SUPPORTED if a signed data image that is not a DICOM image is passed to this function.
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. |
Win32, x64.
See Also
Functions: |
|
Topics: |
|
|
|
|
|
|
Example
class LUserMemoryFile : public LMemoryFile { virtual L_INT SaveFileCallBack(LBitmapBase * pLBitmap, LBuffer * pLBuffer, L_UINT uRow, L_UINT uLines) { UNREFERENCED_PARAMETER(pLBitmap); UNREFERENCED_PARAMETER(pLBuffer); UNREFERENCED_PARAMETER(uRow); L_TCHAR szMessage[64]; wsprintf(szMessage, TEXT("The number of lines is %u."), uLines); MessageBox(NULL, szMessage, TEXT("Testing"), MB_OK); return SUCCESS; } }; L_INT LMemoryFile__SaveFileCallBackExample(LBitmapBase & Bitmap) { LUserMemoryFile MemoryFile; LBuffer Buffer(1000); // 1000 bytes; supposed to be enough L_SIZE_T dwFileSize; MemoryFile.SetBitmap(&Bitmap); if (!MemoryFile.IsCallBackEnabled()) MemoryFile.EnableCallBack(TRUE); return MemoryFile.SaveFileBuffer(&Buffer, &dwFileSize, FILE_TIF, 0, QS, SAVEFILE_FIXEDPALETTE, NULL); }