1
IJG JPEG LIBRARY: FILE LIST
3
Copyright (C) 1994-2009, Thomas G. Lane, Guido Vollbeding.
4
This file is part of the Independent JPEG Group's software.
5
For conditions of distribution and use, see the accompanying README file.
8
Here is a road map to the files in the IJG JPEG distribution. The
9
distribution includes the JPEG library proper, plus two application
10
programs ("cjpeg" and "djpeg") which use the library to convert JPEG
11
files to and from some other popular image formats. A third application
12
"jpegtran" uses the library to do lossless conversion between different
13
variants of JPEG. There are also two stand-alone applications,
14
"rdjpgcom" and "wrjpgcom".
22
jpeglib.h JPEG library's exported data and function declarations.
23
jconfig.h Configuration declarations. Note: this file is not present
24
in the distribution; it is generated during installation.
25
jmorecfg.h Additional configuration declarations; need not be changed
26
for a standard installation.
27
jerror.h Declares JPEG library's error and trace message codes.
28
jinclude.h Central include file used by all IJG .c files to reference
30
jpegint.h JPEG library's internal data structures.
31
jdct.h Private declarations for forward & reverse DCT subsystems.
32
jmemsys.h Private declarations for memory management subsystem.
33
jversion.h Version information.
35
Applications using the library should include jpeglib.h (which in turn
36
includes jconfig.h and jmorecfg.h). Optionally, jerror.h may be included
37
if the application needs to reference individual JPEG error codes. The
38
other include files are intended for internal use and would not normally
39
be included by an application program. (cjpeg/djpeg/etc do use jinclude.h,
40
since its function is to improve portability of the whole IJG distribution.
41
Most other applications will directly include the system include files they
42
want, and hence won't need jinclude.h.)
47
These files contain most of the functions intended to be called directly by
48
an application program:
50
jcapimin.c Application program interface: core routines for compression.
51
jcapistd.c Application program interface: standard compression.
52
jdapimin.c Application program interface: core routines for decompression.
53
jdapistd.c Application program interface: standard decompression.
54
jcomapi.c Application program interface routines common to compression
56
jcparam.c Compression parameter setting helper routines.
57
jctrans.c API and library routines for transcoding compression.
58
jdtrans.c API and library routines for transcoding decompression.
60
Compression side of the library:
62
jcinit.c Initialization: determines which other modules to use.
63
jcmaster.c Master control: setup and inter-pass sequencing logic.
64
jcmainct.c Main buffer controller (preprocessor => JPEG compressor).
65
jcprepct.c Preprocessor buffer controller.
66
jccoefct.c Buffer controller for DCT coefficient buffer.
67
jccolor.c Color space conversion.
68
jcsample.c Downsampling.
69
jcdctmgr.c DCT manager (DCT implementation selection & control).
70
jfdctint.c Forward DCT using slow-but-accurate integer method.
71
jfdctfst.c Forward DCT using faster, less accurate integer method.
72
jfdctflt.c Forward DCT using floating-point arithmetic.
73
jchuff.c Huffman entropy coding.
74
jcarith.c Arithmetic entropy coding.
75
jcmarker.c JPEG marker writing.
76
jdatadst.c Data destination managers for memory and stdio output.
78
Decompression side of the library:
80
jdmaster.c Master control: determines which other modules to use.
81
jdinput.c Input controller: controls input processing modules.
82
jdmainct.c Main buffer controller (JPEG decompressor => postprocessor).
83
jdcoefct.c Buffer controller for DCT coefficient buffer.
84
jdpostct.c Postprocessor buffer controller.
85
jdmarker.c JPEG marker reading.
86
jdhuff.c Huffman entropy decoding.
87
jdarith.c Arithmetic entropy decoding.
88
jddctmgr.c IDCT manager (IDCT implementation selection & control).
89
jidctint.c Inverse DCT using slow-but-accurate integer method.
90
jidctfst.c Inverse DCT using faster, less accurate integer method.
91
jidctflt.c Inverse DCT using floating-point arithmetic.
92
jdsample.c Upsampling.
93
jdcolor.c Color space conversion.
94
jdmerge.c Merged upsampling/color conversion (faster, lower quality).
95
jquant1.c One-pass color quantization using a fixed-spacing colormap.
96
jquant2.c Two-pass color quantization using a custom-generated colormap.
97
Also handles one-pass quantization to an externally given map.
98
jdatasrc.c Data source managers for memory and stdio input.
100
Support files for both compression and decompression:
102
jaricom.c Tables for common use in arithmetic entropy encoding and
104
jerror.c Standard error handling routines (application replaceable).
105
jmemmgr.c System-independent (more or less) memory management code.
106
jutils.c Miscellaneous utility routines.
108
jmemmgr.c relies on a system-dependent memory management module. The IJG
109
distribution includes the following implementations of the system-dependent
112
jmemnobs.c "No backing store": assumes adequate virtual memory exists.
113
jmemansi.c Makes temporary files with ANSI-standard routine tmpfile().
114
jmemname.c Makes temporary files with program-generated file names.
115
jmemdos.c Custom implementation for MS-DOS (16-bit environment only):
116
can use extended and expanded memory as well as temp files.
117
jmemmac.c Custom implementation for Apple Macintosh.
119
Exactly one of the system-dependent modules should be configured into an
120
installed JPEG library (see install.txt for hints about which one to use).
121
On unusual systems you may find it worthwhile to make a special
122
system-dependent memory manager.
125
Non-C source code files:
127
jmemdosa.asm 80x86 assembly code support for jmemdos.c; used only in
128
MS-DOS-specific configurations of the JPEG library.
136
cdjpeg.h Declarations shared by cjpeg/djpeg/jpegtran modules.
137
cderror.h Additional error and trace message codes for cjpeg et al.
138
transupp.h Declarations for jpegtran support routines in transupp.c.
142
cjpeg.c Main program for cjpeg.
143
djpeg.c Main program for djpeg.
144
jpegtran.c Main program for jpegtran.
145
cdjpeg.c Utility routines used by all three programs.
146
rdcolmap.c Code to read a colormap file for djpeg's "-map" switch.
147
rdswitch.c Code to process some of cjpeg's more complex switches.
148
Also used by jpegtran.
149
transupp.c Support code for jpegtran: lossless image manipulations.
151
Image file reader modules for cjpeg:
153
rdbmp.c BMP file input.
154
rdgif.c GIF file input (now just a stub).
155
rdppm.c PPM/PGM file input.
156
rdrle.c Utah RLE file input.
157
rdtarga.c Targa file input.
159
Image file writer modules for djpeg:
161
wrbmp.c BMP file output.
162
wrgif.c GIF file output (a mere shadow of its former self).
163
wrppm.c PPM/PGM file output.
164
wrrle.c Utah RLE file output.
165
wrtarga.c Targa file output.
173
rdjpgcom.c Stand-alone rdjpgcom application.
174
wrjpgcom.c Stand-alone wrjpgcom application.
176
These programs do not depend on the IJG library. They do use
177
jconfig.h and jinclude.h, only to improve portability.
183
Documentation (see README for a guide to the documentation files):
185
README Master documentation file.
186
*.txt Other documentation files.
187
*.1 Documentation in Unix man page format.
188
change.log Version-to-version change highlights.
189
example.c Sample code for calling JPEG library.
191
Configuration/installation files and programs (see install.txt for more info):
193
configure Unix shell script to perform automatic configuration.
194
configure.ac Source file for use with Autoconf to generate configure.
195
ltmain.sh Support scripts for configure (from GNU libtool).
200
install-sh Install shell script for those Unix systems lacking one.
201
Makefile.in Makefile input for configure.
202
Makefile.am Source file for use with Automake to generate Makefile.in.
203
ckconfig.c Program to generate jconfig.h on non-Unix systems.
204
jconfig.txt Template for making jconfig.h by hand.
205
mak*.* Sample makefiles for particular systems.
206
jconfig.* Sample jconfig.h for particular systems.
207
libjpeg.map Script to generate shared library with versioned symbols.
208
aclocal.m4 M4 macro definitions for use with Autoconf.
209
ansi2knr.c De-ANSIfier for pre-ANSI C compilers (courtesy of
210
L. Peter Deutsch and Aladdin Enterprises).
212
Test files (see install.txt for test procedure):
214
test*.* Source and comparison files for confidence test.
215
These are binary image files, NOT text files.