L_CreateMarkers

#include "l_bitmap.h"

L_LTFIL_API L_INT L_CreateMarkers(phMarkers)

L_HANDLE* phMarkers;

pointer to a marker handle

Creates an empty marker collection.

Parameter

Description

phMarkers

Pointer to a variable to be updated with a handle to an empty marker collection.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Markers can be added to the collection using L_InsertMarker function.

When the marker collection handle is no longer needed, free it by calling L_FreeMarkers.

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.

Platforms

Win32, x64, Linux.

See Also

Functions:

L_LoadMarkers, L_FreeMarkers, L_InsertMarker, L_EnumMarkers, L_GetMarkerCount, L_GetMarker, L_MarkersSupported

Topics:

Raster Image Functions: Markers

 

Working with Markers

Example

This example will copy all APPn markers from one marker collection to another

L_INT EXT_CALLBACK MyCopyCallback(L_UINT             uMarker, 
                                  L_UINT             uMarkerSize, 
                                  L_UCHAR          * pMarkerData, 
                                  L_VOID           * pUserData, 
                                  LEADMARKERCALLBACK pfnLEADCallback, 
                                  L_VOID           * pLEADUserData) 
{ 
   UNREFERENCED_PARAMETER(pfnLEADCallback); 
   UNREFERENCED_PARAMETER(pUserData); 
   UNREFERENCED_PARAMETER(pMarkerData); 
    
   // is it a APPn marker? 
   if(uMarker >= 0xE0 && uMarker < 0xF0) 
   { 
      // just insert all the markers in the destination collection list 
      // L_InsertMarker will never return SUCCESS_IGNOREMARKER, so the source collection list will not be changed. 
      return L_InsertMarker((L_HANDLE)pLEADUserData, 0xFFFFFFFF, uMarker, uMarkerSize, pMarkerData); 
   } 
   return SUCCESS; 
} 
 
L_INT  CreateMarkersExample(HANDLE hSrcMarkers, HANDLE * phDstMarkers) 
{ 
   L_INT nRet; 
 
   nRet = L_CreateMarkers(phDstMarkers); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   // copy the APPn markers from hSrcMarkers 
   nRet = L_EnumMarkers(hSrcMarkers, 0, MyCopyCallback, (L_VOID *)*phDstMarkers); 
   if(nRet != SUCCESS) 
   { 
      // An error occurred. Free the marker list we have created 
      L_FreeMarkers(*phDstMarkers); 
      *phDstMarkers = NULL; 
   } 
   return nRet; 
} 

Help Version 20.0.2018.7.30
Products | Support | Contact Us | Copyright Notices
© 1991-2018 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help