OSDN Git Service

Please enter the commit message for your changes. Lines starting
[eos/base.git] / include / tiffio.h
1 /* $Header: /CVS_DB/Eos/include/tiffio.h,v 1.1.1.1 2002/02/01 05:14:00 tacyas Exp $ */
2
3 /*
4  * Copyright (c) 1988, 1989, 1990, 1991, 1992 Sam Leffler
5  * Copyright (c) 1991, 1992 Silicon Graphics, Inc.
6  *
7  * Permission to use, copy, modify, distribute, and sell this software and 
8  * its documentation for any purpose is hereby granted without fee, provided
9  * that (i) the above copyright notices and this permission notice appear in
10  * all copies of the software and related documentation, and (ii) the names of
11  * Sam Leffler and Silicon Graphics may not be used in any advertising or
12  * publicity relating to the software without the specific, prior written
13  * permission of Sam Leffler and Silicon Graphics.
14  * 
15  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
16  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
17  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
18  * 
19  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
20  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
21  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
22  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
24  * OF THIS SOFTWARE.
25  */
26
27 #ifndef _TIFFIO_
28 #define _TIFFIO_
29
30 /*
31  * TIFF I/O Library Definitions.
32  */
33 #include "tiff.h"
34
35 /*
36  * TIFF is defined as an incomplete type to hide the
37  * library's internal data structures from clients.
38  */
39 typedef struct tiff TIFF;
40
41 #ifndef NULL
42 #define NULL    0
43 #endif
44
45 /*
46  * Flags to pass to TIFFPrintDirectory to control
47  * printing of data structures that are potentially
48  * very large.   Bit-or these flags to enable printing
49  * multiple items.
50  */
51 #define TIFFPRINT_NONE          0x0             /* no extra info */
52 #define TIFFPRINT_STRIPS        0x1             /* strips/tiles info */
53 #define TIFFPRINT_CURVES        0x2             /* color/gray response curves */
54 #define TIFFPRINT_COLORMAP      0x4             /* colormap */
55 #define TIFFPRINT_JPEGQTABLES   0x100           /* JPEG Q matrices */
56 #define TIFFPRINT_JPEGACTABLES  0x200           /* JPEG AC tables */
57 #define TIFFPRINT_JPEGDCTABLES  0x200           /* JPEG DC tables */
58
59 #if defined(__STDC__) || defined(__EXTENDED__) || USE_CONST
60 extern const char TIFFVersion[];
61 extern const unsigned char TIFFBitRevTable[256];
62 extern const unsigned char TIFFNoBitRevTable[256];
63 #else
64 extern char TIFFVersion[];
65 extern unsigned char TIFFBitRevTable[256];
66 extern unsigned char TIFFNoBitRevTable[256];
67 #endif
68
69 /*
70  * Macros for extracting components from the
71  * packed ABGR form returned by TIFFReadRGBAImage.
72  */
73 #define TIFFGetR(abgr)  ((abgr) & 0xff)
74 #define TIFFGetG(abgr)  (((abgr) >> 8) & 0xff)
75 #define TIFFGetB(abgr)  (((abgr) >> 16) & 0xff)
76 #define TIFFGetA(abgr)  (((abgr) >> 24) & 0xff)
77
78 #if defined(c_plusplus) || defined(__cplusplus) || defined(__STDC__) || defined(__EXTENDED__) || USE_PROTOTYPES
79 #include <stdio.h>
80 #include <stdarg.h>
81
82 typedef void (*TIFFErrorHandler)(char* module, char* fmt, va_list ap);
83
84 #if defined(__cplusplus)
85 extern "C" {
86 #endif
87 extern  void TIFFClose(TIFF*);
88 extern  int TIFFFlush(TIFF*);
89 extern  int TIFFFlushData(TIFF*);
90 extern  int TIFFGetField(TIFF*, int, ...);
91 extern  int TIFFVGetField(TIFF*, int, va_list);
92 extern  int TIFFGetFieldDefaulted(TIFF*, int, ...);
93 extern  int TIFFVGetFieldDefaulted(TIFF*, int, va_list);
94 extern  int TIFFReadDirectory(TIFF*);
95 extern  int TIFFScanlineSize(TIFF*);
96 extern  unsigned long TIFFStripSize(TIFF*);
97 extern  unsigned long TIFFVStripSize(TIFF*, unsigned long);
98 extern  unsigned long TIFFTileRowSize(TIFF*);
99 extern  unsigned long TIFFTileSize(TIFF*);
100 extern  unsigned long TIFFVTileSize(TIFF*, unsigned long);
101 extern  int TIFFFileno(TIFF*);
102 extern  int TIFFGetMode(TIFF*);
103 extern  int TIFFIsTiled(TIFF*);
104 extern  long TIFFCurrentRow(TIFF*);
105 extern  int TIFFCurrentDirectory(TIFF*);
106 extern  int TIFFCurrentStrip(TIFF*);
107 extern  int TIFFCurrentTile(TIFF*);
108 extern  int TIFFReadBufferSetup(TIFF*, char*, unsigned);
109 extern  int TIFFSetDirectory(TIFF*, int);
110 extern  int TIFFSetField(TIFF*, int, ...);
111 extern  int TIFFVSetField(TIFF*, int, va_list);
112 extern  int TIFFWriteDirectory(TIFF *);
113 #if defined(c_plusplus) || defined(__cplusplus)
114 extern  TIFF* TIFFOpen(const char*, const char*);
115 extern  TIFF* TIFFFdOpen(const int, const char*, const char*);
116 extern  const char* TIFFFileName(TIFF*);
117 extern  void TIFFError(const char*, const char*, ...);
118 extern  void TIFFWarning(const char*, const char*, ...);
119 extern  void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
120 extern  int TIFFReadScanline(TIFF*, unsigned char*, unsigned, unsigned = 0);
121 extern  int TIFFWriteScanline(TIFF*, unsigned char*, unsigned, unsigned = 0);
122 extern  int TIFFReadRGBAImage(TIFF*, unsigned long, unsigned long, unsigned long*, int stop = 0);
123 #else
124 extern  TIFF* TIFFOpen(char*, char*);
125 extern  TIFF* TIFFFdOpen(int, char*, char*);
126 extern  char* TIFFFileName(TIFF*);
127 extern  void TIFFError(char*, char*, ...);
128 extern  TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler handler);
129 extern  void TIFFWarning(char*, char*, ...);
130 extern  TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler handler);
131 extern  void TIFFPrintDirectory(TIFF*, FILE*, long);
132 extern  int TIFFReadScanline(TIFF*, unsigned char*, unsigned, unsigned);
133 extern  int TIFFWriteScanline(TIFF*, unsigned char*, unsigned, unsigned);
134 extern  int TIFFReadRGBAImage(TIFF*, unsigned long, unsigned long, unsigned long*, int stop);
135 #endif
136 extern  unsigned int TIFFComputeTile(TIFF*, unsigned long, unsigned long, unsigned int, unsigned long);
137 extern  int TIFFCheckTile(TIFF*, unsigned long, unsigned long, unsigned long, unsigned);
138 extern  unsigned int TIFFNumberOfTiles(TIFF*);
139 extern  int TIFFReadTile(TIFF*, unsigned char*, unsigned long, unsigned long, unsigned long, unsigned);
140 extern  unsigned int TIFFComputeStrip(TIFF*, unsigned long, unsigned int);
141 extern  unsigned int TIFFNumberOfStrips(TIFF*);
142 extern  int TIFFReadEncodedStrip(TIFF*, unsigned, unsigned char*, unsigned);
143 extern  int TIFFReadRawStrip(TIFF*, unsigned, unsigned char*, unsigned);
144 extern  int TIFFReadEncodedTile(TIFF*, unsigned, unsigned char*, unsigned);
145 extern  int TIFFReadRawTile(TIFF*, unsigned, unsigned char*, unsigned);
146 extern  int TIFFWriteEncodedStrip(TIFF*, unsigned, unsigned char*, unsigned);
147 extern  int TIFFWriteRawStrip(TIFF*, unsigned, unsigned char*, unsigned);
148 extern  int TIFFWriteEncodedTile(TIFF*, unsigned, unsigned char*, unsigned);
149 extern  int TIFFWriteRawTile(TIFF*, unsigned, unsigned char*, unsigned);
150 extern  int TIFFSwabShort(unsigned short *);
151 extern  int TIFFSwabLong(unsigned long *);
152 extern  int TIFFSwabArrayOfShort(unsigned short *, int);
153 extern  int TIFFSwabArrayOfLong(unsigned long *, int);
154 extern  int TIFFReverseBits(unsigned char *, int);
155 #if defined(__cplusplus)
156 }
157 #endif
158 #else
159 typedef void (*TIFFErrorHandler)();
160
161 extern  void TIFFClose();
162 extern  TIFF *TIFFOpen();
163 extern  TIFF *TIFFFdOpen();
164 extern  char* TIFFFileName();
165 extern  int TIFFFileno();
166 extern  int TIFFGetMode();
167 extern  int TIFFIsTiled();
168 extern  unsigned int TIFFComputeTile();
169 extern  long TIFFCurrentRow();
170 extern  int TIFFCurrentDirectory();
171 extern  int TIFFCurrentStrip();
172 extern  int TIFFCurrentTile();
173 extern  void TIFFError();
174 extern  TIFFErrorHandler TIFFSetErrorHandler();
175 extern  int TIFFFlush();
176 extern  int TIFFFlushData();
177 extern  int TIFFGetField();
178 extern  int TIFFVGetField();
179 extern  int TIFFGetFieldDefaulted();
180 extern  int TIFFVGetFieldDefaulted();
181 extern  unsigned int TIFFNumberOfTiles();
182 extern  void TIFFPrintDirectory();
183 extern  int TIFFReadDirectory();
184 extern  int TIFFReadBufferSetup();
185 extern  int TIFFReadScanline();
186 extern  int TIFFReadTile();
187 extern  unsigned int TIFFComputeStrip();
188 extern  unsigned int TIFFNumberOfStrips();
189 extern  int TIFFReadEncodedStrip();
190 extern  int TIFFReadRawStrip();
191 extern  int TIFFReadEncodedTile();
192 extern  int TIFFReadRGBAImage();
193 extern  int TIFFReadRawTile();
194 extern  int TIFFScanlineSize();
195 extern  unsigned long TIFFStripSize();
196 extern  unsigned long TIFFVStripSize();
197 extern  unsigned long TIFFTileRowSize();
198 extern  unsigned long TIFFTileSize();
199 extern  unsigned long TIFFVTileSize();
200 extern  int TIFFSetDirectory();
201 extern  int TIFFSetField();
202 extern  int TIFFVSetField();
203 extern  void TIFFWarning();
204 extern  TIFFErrorHandler TIFFSetWarningHandler();
205 extern  int TIFFWriteDirectory();
206 extern  int TIFFWriteScanline();
207 extern  int TIFFWriteEncodedStrip();
208 extern  int TIFFWriteRawStrip();
209 extern  int TIFFWriteEncodedTile();
210 extern  int TIFFWriteRawTile();
211 extern  int TIFFSwabShort();
212 extern  int TIFFSwabLong();
213 extern  int TIFFSwabArrayOfShort();
214 extern  int TIFFSwabArrayOfLong();
215 extern  int TIFFReverseBits();
216 extern  int TIFFCheckTile();
217 #endif
218 #endif /* _TIFFIO_ */