]> Creatis software - gdcm.git/blob - src/gdcmjpeg/filelist.doc
*** empty log message ***
[gdcm.git] / src / gdcmjpeg / filelist.doc
1 IJG JPEG LIBRARY:  FILE LIST
2
3 Copyright (C) 1994-1997, Thomas G. Lane.
4 This file is part of the Independent JPEG Group's software.
5 For conditions of distribution and use, see the accompanying README file.
6
7
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".
15
16
17 THE JPEG LIBRARY
18 ================
19
20 Include files:
21
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
29                 system include files.
30 jpegint.h       JPEG library's internal data structures.
31 jlossls.h       JPEG library's lossless codec data structures.
32 jlossy.h        JPEG library's lossy codec structures.
33 jchuff.h        Private declarations for Huffman encoder modules.
34 jdhuff.h        Private declarations for Huffman decoder modules.
35 jdct.h          Private declarations for forward & reverse DCT subsystems.
36 jmemsys.h       Private declarations for memory management subsystem.
37 jversion.h      Version information.
38
39 Applications using the library should include jpeglib.h (which in turn
40 includes jconfig.h and jmorecfg.h).  Optionally, jerror.h may be included
41 if the application needs to reference individual JPEG error codes.  The
42 other include files are intended for internal use and would not normally
43 be included by an application program.  (cjpeg/djpeg/etc do use jinclude.h,
44 since its function is to improve portability of the whole IJG distribution.
45 Most other applications will directly include the system include files they
46 want, and hence won't need jinclude.h.)
47
48
49 C source code files:
50
51 These files contain most of the functions intended to be called directly by
52 an application program:
53
54 jcapimin.c      Application program interface: core routines for compression.
55 jcapistd.c      Application program interface: standard compression.
56 jdapimin.c      Application program interface: core routines for decompression.
57 jdapistd.c      Application program interface: standard decompression.
58 jcomapi.c       Application program interface routines common to compression
59                 and decompression.
60 jcparam.c       Compression parameter setting helper routines.
61 jctrans.c       API and library routines for transcoding compression.
62 jdtrans.c       API and library routines for transcoding decompression.
63
64 Compression side of the library:
65
66 jcinit.c        Initialization: determines which other modules to use.
67 jcmaster.c      Master control: setup and inter-pass sequencing logic.
68 jcmainct.c      Main buffer controller (preprocessor => JPEG compressor).
69 jchuff.c        Codec-independent Huffman entropy encoding routines.
70 jcprepct.c      Preprocessor buffer controller.
71 jccolor.c       Color space conversion.
72 jcsample.c      Downsampling.
73 jcmarker.c      JPEG marker writing.
74 jdatadst.c      Data destination manager for stdio output.
75
76 Lossy (DCT) codec:
77
78 jlossy.c        Lossy compressor proper.
79 jccoefct.c      Buffer controller for DCT coefficient buffer.
80 jcdctmgr.c      DCT manager (DCT implementation selection & control).
81 jfdctint.c      Forward DCT using slow-but-accurate integer method.
82 jfdctfst.c      Forward DCT using faster, less accurate integer method.
83 jfdctflt.c      Forward DCT using floating-point arithmetic.
84 jcshuff.c       Huffman entropy coding for sequential JPEG.
85 jcphuff.c       Huffman entropy coding for progressive JPEG.
86
87 Lossless (spatial) codec:
88
89 jclossls.c      Lossless compressor proper.
90 jcdiffct.c      Buffer controller for difference buffer.
91 jcscale.c       Point transformation.
92 jcpred.c        Sample predictor and differencer.
93 jclhuff.c       Huffman entropy encoding for lossless JPEG.
94
95 Decompression side of the library:
96
97 jdmaster.c      Master control: determines which other modules to use.
98 jdinput.c       Input controller: controls input processing modules.
99 jdmainct.c      Main buffer controller (JPEG decompressor => postprocessor).
100 jdhuff.c        Codec-independent Huffman entropy decoding routines.
101 jdpostct.c      Postprocessor buffer controller.
102 jdmarker.c      JPEG marker reading.
103 jdsample.c      Upsampling.
104 jdcolor.c       Color space conversion.
105 jdmerge.c       Merged upsampling/color conversion (faster, lower quality).
106 jquant1.c       One-pass color quantization using a fixed-spacing colormap.
107 jquant2.c       Two-pass color quantization using a custom-generated colormap.
108                 Also handles one-pass quantization to an externally given map.
109 jdatasrc.c      Data source manager for stdio input.
110
111 Lossy (DCT) codec:
112
113 jdlossy.c       Lossy decompressor proper.
114 jdcoefct.c      Buffer controller for DCT coefficient buffer.
115 jdshuff.c       Huffman entropy decoding for sequential JPEG.
116 jdphuff.c       Huffman entropy decoding for progressive JPEG.
117 jddctmgr.c      IDCT manager (IDCT implementation selection & control).
118 jidctint.c      Inverse DCT using slow-but-accurate integer method.
119 jidctfst.c      Inverse DCT using faster, less accurate integer method.
120 jidctflt.c      Inverse DCT using floating-point arithmetic.
121 jidctred.c      Inverse DCTs with reduced-size outputs.
122
123 Lossless (spatial) codec:
124
125 jdlossls.c      Lossless decompressor proper.
126 jddiffct.c      Buffer controller for difference buffers.
127 jdlhuff.c       Huffman entropy decoding for lossless JPEG.
128 jdpred.c        Sample predictor and undifferencer.
129 jdscale.c       Point transformation, sample size scaling.
130
131 Support files for both compression and decompression:
132
133 jerror.c        Standard error handling routines (application replaceable).
134 jmemmgr.c       System-independent (more or less) memory management code.
135 jcodec.c        Codec-independent utility routines.
136 jutils.c        Miscellaneous utility routines.
137
138 jmemmgr.c relies on a system-dependent memory management module.  The IJG
139 distribution includes the following implementations of the system-dependent
140 module:
141
142 jmemnobs.c      "No backing store": assumes adequate virtual memory exists.
143 jmemansi.c      Makes temporary files with ANSI-standard routine tmpfile().
144 jmemname.c      Makes temporary files with program-generated file names.
145 jmemdos.c       Custom implementation for MS-DOS (16-bit environment only):
146                 can use extended and expanded memory as well as temp files.
147 jmemmac.c       Custom implementation for Apple Macintosh.
148
149 Exactly one of the system-dependent modules should be configured into an
150 installed JPEG library (see install.doc for hints about which one to use).
151 On unusual systems you may find it worthwhile to make a special
152 system-dependent memory manager.
153
154
155 Non-C source code files:
156
157 jmemdosa.asm    80x86 assembly code support for jmemdos.c; used only in
158                 MS-DOS-specific configurations of the JPEG library.
159
160
161 CJPEG/DJPEG/JPEGTRAN
162 ====================
163
164 Include files:
165
166 cdjpeg.h        Declarations shared by cjpeg/djpeg/jpegtran modules.
167 cderror.h       Additional error and trace message codes for cjpeg et al.
168 transupp.h      Declarations for jpegtran support routines in transupp.c.
169
170 C source code files:
171
172 cjpeg.c         Main program for cjpeg.
173 djpeg.c         Main program for djpeg.
174 jpegtran.c      Main program for jpegtran.
175 cdjpeg.c        Utility routines used by all three programs.
176 rdcolmap.c      Code to read a colormap file for djpeg's "-map" switch.
177 rdswitch.c      Code to process some of cjpeg's more complex switches.
178                 Also used by jpegtran.
179 transupp.c      Support code for jpegtran: lossless image manipulations.
180
181 Image file reader modules for cjpeg:
182
183 rdbmp.c         BMP file input.
184 rdgif.c         GIF file input (now just a stub).
185 rdppm.c         PPM/PGM file input.
186 rdrle.c         Utah RLE file input.
187 rdtarga.c       Targa file input.
188
189 Image file writer modules for djpeg:
190
191 wrbmp.c         BMP file output.
192 wrgif.c         GIF file output (a mere shadow of its former self).
193 wrppm.c         PPM/PGM file output.
194 wrrle.c         Utah RLE file output.
195 wrtarga.c       Targa file output.
196
197
198 RDJPGCOM/WRJPGCOM
199 =================
200
201 C source code files:
202
203 rdjpgcom.c      Stand-alone rdjpgcom application.
204 wrjpgcom.c      Stand-alone wrjpgcom application.
205
206 These programs do not depend on the IJG library.  They do use
207 jconfig.h and jinclude.h, only to improve portability.
208
209
210 ADDITIONAL FILES
211 ================
212
213 Documentation (see README for a guide to the documentation files):
214
215 README          Master documentation file.
216 *.doc           Other documentation files.
217 *.1             Documentation in Unix man page format.
218 change.log      Version-to-version change highlights.
219 example.c       Sample code for calling JPEG library.
220
221 Configuration/installation files and programs (see install.doc for more info):
222
223 configure       Unix shell script to perform automatic configuration.
224 ltconfig        Support scripts for configure (from GNU libtool).
225 ltmain.sh
226 config.guess
227 config.sub
228 install-sh      Install shell script for those Unix systems lacking one.
229 ckconfig.c      Program to generate jconfig.h on non-Unix systems.
230 jconfig.doc     Template for making jconfig.h by hand.
231 makefile.*      Sample makefiles for particular systems.
232 jconfig.*       Sample jconfig.h for particular systems.
233 ansi2knr.c      De-ANSIfier for pre-ANSI C compilers (courtesy of
234                 L. Peter Deutsch and Aladdin Enterprises).
235
236 Test files (see install.doc for test procedure):
237
238 test*.*         Source and comparison files for confidence test.
239                 These are binary image files, NOT text files.