blob: 21a336f908a6c7adc8e4e99ee4cd7a96209d512c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
/*
* The Python Imaging Library.
* $Id$
*
* declarations for the ZIP codecs
*
* Copyright (c) Fredrik Lundh 1996.
*/
#include "zlib.h"
/* modes */
#define ZIP_PNG 0 /* continuous, filtered image data */
#define ZIP_PNG_PALETTE 1 /* non-continuous data, disable filtering */
#define ZIP_TIFF_PREDICTOR 2 /* TIFF, with predictor */
#define ZIP_TIFF 3 /* TIFF, without predictor */
typedef struct {
/* CONFIGURATION */
/* Codec mode */
int mode;
/* Optimize (max compression) SLOW!!! */
int optimize;
/* 0 no compression, 9 best compression, -1 default compression */
int compress_level;
/* compression strategy Z_XXX */
int compress_type;
/* Predefined dictionary (experimental) */
char* dictionary;
int dictionary_size;
/* PRIVATE CONTEXT (set by decoder/encoder) */
z_stream z_stream; /* (de)compression stream */
UINT8* previous; /* previous line (allocated) */
int last_output; /* # bytes last output by inflate */
/* Compressor specific stuff */
UINT8* prior; /* filter storage (allocated) */
UINT8* up;
UINT8* average;
UINT8* paeth;
UINT8* output; /* output data */
int prefix; /* size of filter prefix (0 for TIFF data) */
int interlaced; /* is the image interlaced? (PNG) */
int pass; /* current pass of the interlaced image (PNG) */
} ZIPSTATE;
|