Available in LEADTOOLS Vector Imaging toolkits. |
L_VecEnumGroups
#include "lvkrn.h"
L_LVKRN_API L_INT L_VecEnumGroups(pVector, pEnumProc, pUserData)
pVECTORHANDLE pVector; |
/* pointer to a vector handle */ |
pVECTORENUMGROUPSPROC pEnumProc; |
/* pointer to a callback function */ |
L_VOID * pUserData; |
/* pointer to more parameters for the callback */ |
Enumerates all groups inside a vector handle.
Parameter |
Description |
pVector |
Pointer to a vector handle. The groups within this vector handle will be enumerated. |
pEnumProc |
Pointer to the callback function used to enumerate the groups within the vector handle. The callback function must adhere to the function prototype described in VECTORENUMGROUPSPROC. |
pUserData |
Void pointer that you can use to pass one or more additional parameters that the callback function needs. |
|
To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID *. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. |
|
If the additional parameters are not needed, you can pass NULL in this parameter. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
The L_VecEnumGroups function calls the callback function as it gets the handle of each vector group.
Required DLLs and Libraries
LVKRN For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
See Also
Functions: |
|
Topics: |
Example
L_INT EXT_CALLBACK MyEnumGroupsProc( pVECTORHANDLE pVector, pVECTORGROUP pGroup, L_VOID* pUserData) { L_INT nRet; VECTORGROUPDESC GroupDesc; UNREFERENCED_PARAMETER( pUserData ); /* show group name */ nRet = L_VecGetGroup( pVector, pGroup, &GroupDesc ); if(nRet != SUCCESS) return nRet; MessageBox( NULL, GroupDesc.szName, TEXT("Group Name"), MB_OK ); nRet = L_VecFreeGroup( &GroupDesc ); /* Continue enumerating */ return nRet; } L_INT VecEnumGroupsCBExample(pVECTORHANDLE pVector) { L_INT nRet; /* Enumerate all groups */ nRet = L_VecEnumGroups( pVector, (pVECTORENUMGROUPSPROC)MyEnumGroupsProc, NULL ); return nRet; }