SMOOTHCALLBACK Function

#include "l_bitmap.h"

L_INT pEXT_CALLBACK Your Function(uBumpOrNick, iStartRow, iStartCol, iLength, uHorV, pUserData)

L_UINT uBumpOrNick;

/* flag */

L_INT iStartRow;

/* starting row */

L_INT iStartCol;

/* starting column */

L_INT iLength;

/* length */

L_UINT uHorV;

/* flag */

L_VOID *pUserData;

/* pointer to additional parameters */

Handles each bump or nick found by L_SmoothBitmap.

This function is available in the Document and Medical Imaging toolkits.

Parameter

Description

uBumpOrNick

Flag that indicates whether to remove bumps or fill in nicks. Possible values are:

 

Value

Meaning

 

SMOOTH_NONE

Do nothing.

 

SMOOTH_BUMP

Remove a bump.

 

SMOOTH_NICK

Fill in a nick.

iStartRow

The starting row of the bump or nick. The rows are zero-based.

iStartCol

The starting column of the bump or nick. The columns are zero-based.

iLength

Length (in pixels) of the bump or nick.

uHorV

Flag that indicates whether the element being smoothed is vertical or horizontal. Possible values are:

 

 

Value

Meaning

 

SMOOTH_HORIZONTAL_ELEMENT

A horizontal bump or nick

 

SMOOTH_VERTICAL_ELEMENT

A vertical bump or nick

pUserData

A void pointer that you can use to access a variable or structure containing data that your callback function needs. This gives you a way to receive data indirectly from the function that uses this callback function. (This is the same pointer that you pass in the pUserData parameter of L_SmoothBitmap).

 

Keep in mind that this is a void pointer, which must be cast to the appropriate data type within your callback function.

Returns

SUCCESS_REMOVE

Remove the bump or nick.

SUCCESS_NOREMOVE

Do not remove the bump or nick.

Otherwise

An error occurred. Refer to Return Codes.

Comments

The callback is called for each bump and nick found. Return SUCCESS_REMOVE to have the bump or nick removed. Return SUCCESS_NOREMOVE to leave the bump or nick unchanged. Pass any other value to abort. This value will be the return value of the L_SmoothBitmap(). If flags SMOOTH_IMAGE_UNCHANGED and SMOOTH_SINGLE_REGION are being used, then the return value of the callback affects only the internal single region that contains all the changes.

Required DLLs and Libraries

LTIMGCOR

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:

L_SmoothBitmap

Topics:

Cleaning Up 1-Bit Images

Example

For an example, refer to L_SmoothBitmap.