LEADTOOLS Raster Imaging C DLL Help > Function References > 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
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: |
|
|
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; }