4 // header file defining BMGLib libTIFF structures and functions
6 // Copyright 2000, 2001 Scott Heiman
7 // libTIFF is Copyright Sam Leffler and SGI
8 // zLib Copyright (C) 1995-1998 Jean-loup Gailly.
10 // Permission to use, copy, modify, distribute, and sell this software and
11 // its documentation for any purpose is hereby granted without fee, provided
12 // that (i) the above copyright notices and this permission notice appear in
13 // all copies of the software and related documentation, and (ii) the names of
14 // Sam Leffler and Silicon Graphics may not be used in any advertising or
15 // publicity relating to the software without the specific, prior written
16 // permission of Sam Leffler and Silicon Graphics.
18 // THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
19 // EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
20 // WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
22 // IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
23 // ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
24 // OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
25 // WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
26 // LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
32 /* enumeration types that support libTIFF */
33 enum TiffCompressionEnum { NONE, CCITTRLE, CCITTFAX3, CCITTFAX4, LZW, JPEG6,
34 JPEG_DCT, NeXT, CCITTRLEW, MACINTOSH, THUNDERSCAN,
35 PIXARFILM, PIXARLOG, ZIP, KODAK, JBIG };
36 enum TiffPhotometricEnum { MINISWHITE, MINISBLACK, RGB, PALETTE, MASK,
37 SEPARATED, YCBCR, CIELAB, CIE_LOGL, CIE_LOGLUV };
38 enum TiffOrientationEnum { TOPLEFT, BOTTOMLEFT };
40 typedef enum TiffCompressionEnum TiffCompression;
41 typedef enum TiffPhotometricEnum TiffPhotometric;
42 typedef enum TiffOrientationEnum TiffOrientation;
47 TiffCompression compression;
48 TiffPhotometric photometric;
49 TiffOrientation orientation;
50 unsigned short predictor;
54 #if defined(__cplusplus)
59 BMGError ReadTIFF( const char *filename,
60 struct BMGImageStruct *img,
61 struct TIFFInfoStruct *info );
64 BMGError WriteTIFF( const char *filename,
65 struct BMGImageStruct img,
66 struct TIFFInfoStruct *info );
69 #if defined(__cplusplus)