L_AnnGetArea

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnGetArea(hObject, puCount)

HANNOBJECT hObject;

/* handle to the annotation object */

L_SIZE_T *puCount;

/* address of a variable to be updated */

Gets the pixel count of the specified annotation object. This function is available in the Document/Medical Toolkits.

Parameter

Description

hObject

Handle to the annotation object from which to get the pixel count.

puCount

Address of the variable to be updated with the pixel count.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

The pixel count is the number of pixels contained in a region extracted from the annotation object, without resizing. It is equivalent to calling L_AnnGetRgnHandle with pRgnXForm set to NULL and then getting a pixel count of the resulting region.

Required DLLs and Libraries

LTANN

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

Windows 2000 / XP/Vista.

See Also

Functions:

L_AnnGetRgnHandle

Topics:

Annotation Functions: Object Information

 

Implementing Annotations

 

Automated User Interface for Annotations

 

Implementing an Automated Annotation Program

 

Obtaining Annotation Object Information

Example

L_INT EXT_CALLBACK AnnGetAreaAnnEnumCallback(HANNOBJECT   hObject,
                                             L_VOID*       pUserData);

 L_INT AnnGetAreaExample(HANNOBJECT hContainer)
{
   L_INT nRet;
   nRet = L_AnnEnumerate(hContainer, AnnGetAreaAnnEnumCallback, NULL, ANNFLAG_RECURSE|ANNFLAG_SELECTED, NULL);
   if(nRet != SUCCESS)
      return nRet;
   return SUCCESS;
}

L_INT EXT_CALLBACK AnnGetAreaAnnEnumCallback(HANNOBJECT   hObject,
                                             L_VOID*       pUserData)
{
   UNREFERENCED_PARAMETER(pUserData);
   L_INT    nRet;
   L_SIZE_T zCount;
   L_TCHAR  cs[80];

   nRet = L_AnnGetArea(hObject, &zCount);
   if (nRet == SUCCESS)
   {
      wsprintf(cs, TEXT("Pixel count = %ld\n"), zCount);
      MessageBox(NULL, cs, TEXT("Notice"), MB_OK);
   }
   else
   {
      wsprintf(cs, TEXT("Error #  %d\n"), nRet);
      MessageBox(NULL, cs, TEXT("Error"), MB_OK);
   }
   return SUCCESS;
}