DECOMPRESSDATA

typedef struct _DECOMPRESSDATA
{
   L_UINT uStructSize; 
   L_UCHAR * pBuffer; 
   L_INT nWidth; 
   L_INT nHeight; 
   L_UINT32 uOffset; 
   L_INT nBufferSize; 
   L_INT nRow; 
   L_INT nCol; 
   L_UINT uFlags; 
} DECOMPRESSDATA, L_FAR * LPDECOMPRESSDATA;

The DECOMPRESSDATA structure provides decompression to the L_DecompressBuffer function.

Member

Description

uStructSize

Size of this structure in bytes, for versioning. Use the sizeof() macro to calculate this value.

pBuffer

Pointer to the raw compressed data.

nWidth

Width of the uncompressed strip or tile, in bytes.

nHeight

Height of the uncompressed strip or tile, in bytes. If the image consists of a single compressed strip, as with TWAIN, this is the height of the image.

uOffset

Offset of the strip, relative to the buffer. This is usually zero.

nBufferSize

Size of the strip before decompression. For TWAIN, this is the buffer size determined by DAT_SETUPMEMXFER.

nRow

Row offset of the tile or strip.

nCol

Column offset of the tile or strip.

uFlags

Flags that indicate whether which part of a strip or tile is being processed. Possible values are:

 

Value

Meaning

 

DECOMPRESS_STRIP_START

Processing the beginning of a tile or strip.

 

DECOMPRESS_STRIP_END

Processing the end of a tile or strip.

 

DECOMPRESS_CHUNK_COMPLETE

Process a complete tile or strip. This is the same as DECOMPRESS_STRIP_START | DECOMPRESS_STRIP_END.

uReserved1

Reserved for future use. Pass 0.

Comments

If pBuffer does not point to a full tile or strip, set uFlags to DECOMPRESS_STRIP_START when the tile/strip begins and set it to DECOPMRESS_STRIP_END when the tile/strip ends.

Some functions which take this structure as a parameter require that the structure be initialized prior to the function call. You must set the uStructSize member to the total size, in bytes, of the structure. Use the sizeof() macro to calculate this value. Functions that do not require the structure be initialized will take the total size of the structure, in bytes, as an additional function parameter.