LAnnotationWindow::AnnLoadMemory

#include "ltwrappr.h"

virtual L_INT LAnnotationWindow::AnnLoadMemory(phGlobalAnn, uMemSize)

L_UCHAR * phGlobalAnn;

/* pointer to the file in memory to be loaded */

L_UINT32 uMemSize;

/* file size, in bytes */

Loads an annotation from a file that is stored in memory.

Parameter

Description

phGlobalAnn

Pointer to the file in memory to be loaded.

uMemSize

The size, in bytes, of the file referenced by phGlobalAnn.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Required DLLs and Libraries

LTANN
LTDIS
LTDLG
LTEFX
LTFIL
LTIMG
LTSCR
LTTWN

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Win32, x64.

See Also

Functions:

Class Members

Topics:

Annotation Functions: Implementing Automation

 

Implementing Annotations

 

Automated User Interface for Annotations

Example

L_INT LAnnotationWindow_AnnLoadMemoryExample(LAnnContainer  * pLeadAContainer, LAnnotationWindow * pLeadAnnWnd)
{
   L_INT nRet;

  LAnnContainer TmpContainer ;// Temporary container for the annotations

  HGLOBAL hFileInMemory = NULL;// Memory handle

  L_SIZE_T uMemSize; // Size of the data in memory

  L_UCHAR  *pData; // Pointer to the data in memory

  // Load the initial annotations

  nRet = TmpContainer.Load( TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\TEST.ANN"));

  if(nRet != SUCCESS)

     return nRet;

  // Save the annotations as a file in memory

  nRet = TmpContainer.SaveMemory( ANNFMT_XML, FALSE, &hFileInMemory, &uMemSize);

  if(nRet != SUCCESS)

     return nRet;

  // Destroy the temporary container

  nRet = TmpContainer.Destroy( ANNFLAG_RECURSE);

  if(nRet != SUCCESS)

     return nRet;

  // Get the pointer to the memory-resident file

  pData = (L_UCHAR  *) GlobalLock (hFileInMemory);

  // Load the new file from memory

  nRet = pLeadAnnWnd->AnnLoadMemory((L_UCHAR *)pData, (L_UINT32)uMemSize);

  if(nRet != SUCCESS)

     return nRet;

  /* Clean up */

  GlobalUnlock (hFileInMemory);

  GlobalFree (hFileInMemory);

  return SUCCESS; }