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::SaveFilelfile::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.

Platforms

Win32, x64

See Also

Functions

LFile::SaveFile 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); 
} 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS DICOM C++ Class Library Help