ENUMGEOKEYSCALLBACK Function

#include "l_bitmap.h"

L_INT pEXT_CALLBACK YourFunction(uTag, uType, uCount, pData, pUserData)

L_UINT16 uTag;

/* GeoKey ID */

L_UINT16 uType;

/* GeoKey type */

L_UINT32 uCount;

/* number of GeoKey values */

L_VOID L_FAR * pData;

/* pointer to GeoKey data */

L_VOID L_FAR * pUserData;

/* pointer to additional parameters */

This function is called for each GeoKey enumerated by the L_EnumFileGeoKeys function.

Parameter

Description

uTag

GeoKey ID identifying the GeoTIFF key.

uType

The type of GeoKey. This indicates whether the data pointed to by pData is SHORT, DOUBLE or ASCII. Possible values are:

 

Value

Meaning

 

TAG_ASCII

[2] Byte in the range of 0 to 255. Null-terminated.

 

TAG_SHORT

[3] Two bytes, unsigned.

 

TAG_DOUBLE

[12] Eight bytes used as a double-precision floating-point number.

uCount

The number of items in the pData buffer. Note that this doesn't describe the number of bytes. For example, if uCount is 10 and uType is TAG_DOUBLE, you will need 10 x 8 = 80 bytes to read the tag data.

pData

A void pointer that you can use to access a variable or structure containing the GeoKey data. This gives you a way to receive data indirectly from the function that uses this callback function.

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 the L_EnumFileGeoKeys function.)

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

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

This function will be called for every GeoKey on the page.

See Also

Functions:

L_EnumFileGeoKeys, L_ReadFileGeoKey

Topics:

Implementing TIFF Comments and Tags

 

Raster Image Functions: Working with GeoKeys

Example

For an example, refer to L_EnumFileGeoKeys function.