zenilib
0.5.3.0
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
inftrees.h
Go to the documentation of this file.
1
/* inftrees.h -- header to use inftrees.c
2
* Copyright (C) 1995-2002 Mark Adler
3
* For conditions of distribution and use, see copyright notice in zlib.h
4
*/
5
6
/* WARNING: this file should *not* be used by applications. It is
7
part of the implementation of the compression library and is
8
subject to change. Applications should only use zlib.h.
9
*/
10
11
/* Huffman code lookup table entry--this entry is four bytes for machines
12
that have 16-bit pointers (e.g. PC's in the small or medium model). */
13
14
#ifndef _INFTREES_H
15
#define _INFTREES_H
16
17
typedef
struct
inflate_huft_s
FAR
inflate_huft
;
18
19
struct
inflate_huft_s
{
20
union
{
21
struct
{
22
Byte
Exop
;
/* number of extra bits or operation */
23
Byte
Bits
;
/* number of bits in this code or subcode */
24
}
what
;
25
uInt
pad
;
/* pad structure to a power of 2 (4 bytes for */
26
}
word
;
/* 16-bit, 8 bytes for 32-bit int's) */
27
uInt
base
;
/* literal, length base, distance base,
28
or table offset */
29
};
30
31
/* Maximum size of dynamic tree. The maximum found in a long but non-
32
exhaustive search was 1004 huft structures (850 for length/literals
33
and 154 for distances, the latter actually the result of an
34
exhaustive search). The actual maximum is not known, but the
35
value below is more than safe. */
36
#define MANY 1440
37
38
local
int
inflate_trees_bits
OF
((
39
uIntf
*,
/* 19 code lengths */
40
uIntf
*,
/* bits tree desired/actual depth */
41
inflate_huft
*
FAR
*,
/* bits tree result */
42
inflate_huft
*,
/* space for trees */
43
z_streamp
));
/* for messages */
44
45
local
int
inflate_trees_dynamic
OF
((
46
uInt
,
/* number of literal/length codes */
47
uInt
,
/* number of distance codes */
48
uIntf
*,
/* that many (total) code lengths */
49
uIntf
*,
/* literal desired/actual bit depth */
50
uIntf
*,
/* distance desired/actual bit depth */
51
inflate_huft
*
FAR
*,
/* literal/length tree result */
52
inflate_huft
* FAR *,
/* distance tree result */
53
inflate_huft
*,
/* space for trees */
54
z_streamp
));
/* for messages */
55
56
local
int
inflate_trees_fixed
OF
((
57
uIntf
*,
/* literal desired/actual bit depth */
58
uIntf
*,
/* distance desired/actual bit depth */
59
const
inflate_huft
*
FAR
*,
/* literal/length tree result */
60
const
inflate_huft
* FAR *,
/* distance tree result */
61
z_streamp
));
/* for memory allocation */
62
63
#endif
/* _INFTREES_H */
inflate_huft_s::base
uInt base
Definition:
inftrees.h:27
inflate_trees_fixed
local int inflate_trees_fixed(uIntf *bl, uIntf *bd, const inflate_huft *FAR *tl, const inflate_huft *FAR *td, z_streamp z)
Definition:
inftrees.c:409
local
#define local
Definition:
zutil.h:30
uInt
unsigned int uInt
Definition:
zconf.h:221
inflate_huft_s::word
union inflate_huft_s::@32 word
inflate_huft_s::what
struct inflate_huft_s::@32::@33 what
inflate_huft_s::pad
uInt pad
Definition:
inftrees.h:25
inflate_trees_bits
local int inflate_trees_bits(uIntf *c, uIntf *bb, inflate_huft *FAR *tb, inflate_huft *hp, z_streamp z)
Definition:
inftrees.c:299
inflate_huft_s::Bits
Byte Bits
Definition:
inftrees.h:23
inflate_huft_s
Definition:
inftrees.h:19
FAR
#define FAR
Definition:
zconf.h:215
OF
#define OF(args)
Definition:
zconf.h:146
z_streamp
z_stream FAR * z_streamp
Definition:
zlib.h:89
inflate_huft_s::Exop
Byte Exop
Definition:
inftrees.h:22
Byte
unsigned char Byte
Definition:
zconf.h:219
uIntf
uInt FAR uIntf
Definition:
zconf.h:232
inflate_huft
struct inflate_huft_s FAR inflate_huft
Definition:
inftrees.h:17
inflate_trees_dynamic
local int inflate_trees_dynamic(uInt nl, uInt nd, uIntf *c, uIntf *bl, uIntf *bd, inflate_huft *FAR *tl, inflate_huft *FAR *td, inflate_huft *hp, z_streamp z)
Definition:
inftrees.c:327
zenilib
jni
external
freetype2
src
gzip
inftrees.h
Generated on Thu Oct 3 2013 19:56:05 for zenilib by
1.8.5