xref: /plan9-contrib/sys/src/cmd/gs/jpeg/cderror.h (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
17dd7cddfSDavid du Colombier /*
27dd7cddfSDavid du Colombier  * cderror.h
37dd7cddfSDavid du Colombier  *
4*593dc095SDavid du Colombier  * Copyright (C) 1994-1997, Thomas G. Lane.
57dd7cddfSDavid du Colombier  * This file is part of the Independent JPEG Group's software.
67dd7cddfSDavid du Colombier  * For conditions of distribution and use, see the accompanying README file.
77dd7cddfSDavid du Colombier  *
87dd7cddfSDavid du Colombier  * This file defines the error and message codes for the cjpeg/djpeg
97dd7cddfSDavid du Colombier  * applications.  These strings are not needed as part of the JPEG library
107dd7cddfSDavid du Colombier  * proper.
117dd7cddfSDavid du Colombier  * Edit this file to add new codes, or to translate the message strings to
127dd7cddfSDavid du Colombier  * some other language.
137dd7cddfSDavid du Colombier  */
147dd7cddfSDavid du Colombier 
157dd7cddfSDavid du Colombier /*
167dd7cddfSDavid du Colombier  * To define the enum list of message codes, include this file without
177dd7cddfSDavid du Colombier  * defining macro JMESSAGE.  To create a message string table, include it
187dd7cddfSDavid du Colombier  * again with a suitable JMESSAGE definition (see jerror.c for an example).
197dd7cddfSDavid du Colombier  */
207dd7cddfSDavid du Colombier #ifndef JMESSAGE
217dd7cddfSDavid du Colombier #ifndef CDERROR_H
227dd7cddfSDavid du Colombier #define CDERROR_H
237dd7cddfSDavid du Colombier /* First time through, define the enum list */
247dd7cddfSDavid du Colombier #define JMAKE_ENUM_LIST
257dd7cddfSDavid du Colombier #else
267dd7cddfSDavid du Colombier /* Repeated inclusions of this file are no-ops unless JMESSAGE is defined */
277dd7cddfSDavid du Colombier #define JMESSAGE(code,string)
287dd7cddfSDavid du Colombier #endif /* CDERROR_H */
297dd7cddfSDavid du Colombier #endif /* JMESSAGE */
307dd7cddfSDavid du Colombier 
317dd7cddfSDavid du Colombier #ifdef JMAKE_ENUM_LIST
327dd7cddfSDavid du Colombier 
337dd7cddfSDavid du Colombier typedef enum {
347dd7cddfSDavid du Colombier 
357dd7cddfSDavid du Colombier #define JMESSAGE(code,string)	code ,
367dd7cddfSDavid du Colombier 
377dd7cddfSDavid du Colombier #endif /* JMAKE_ENUM_LIST */
387dd7cddfSDavid du Colombier 
397dd7cddfSDavid du Colombier JMESSAGE(JMSG_FIRSTADDONCODE=1000, NULL) /* Must be first entry! */
407dd7cddfSDavid du Colombier 
417dd7cddfSDavid du Colombier #ifdef BMP_SUPPORTED
427dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_BADCMAP, "Unsupported BMP colormap format")
437dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_BADDEPTH, "Only 8- and 24-bit BMP files are supported")
447dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_BADHEADER, "Invalid BMP file: bad header length")
457dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_BADPLANES, "Invalid BMP file: biPlanes not equal to 1")
467dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_COLORSPACE, "BMP output must be grayscale or RGB")
477dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_COMPRESSED, "Sorry, compressed BMPs not yet supported")
487dd7cddfSDavid du Colombier JMESSAGE(JERR_BMP_NOT, "Not a BMP file - does not start with BM")
497dd7cddfSDavid du Colombier JMESSAGE(JTRC_BMP, "%ux%u 24-bit BMP image")
507dd7cddfSDavid du Colombier JMESSAGE(JTRC_BMP_MAPPED, "%ux%u 8-bit colormapped BMP image")
517dd7cddfSDavid du Colombier JMESSAGE(JTRC_BMP_OS2, "%ux%u 24-bit OS2 BMP image")
527dd7cddfSDavid du Colombier JMESSAGE(JTRC_BMP_OS2_MAPPED, "%ux%u 8-bit colormapped OS2 BMP image")
537dd7cddfSDavid du Colombier #endif /* BMP_SUPPORTED */
547dd7cddfSDavid du Colombier 
557dd7cddfSDavid du Colombier #ifdef GIF_SUPPORTED
567dd7cddfSDavid du Colombier JMESSAGE(JERR_GIF_BUG, "GIF output got confused")
577dd7cddfSDavid du Colombier JMESSAGE(JERR_GIF_CODESIZE, "Bogus GIF codesize %d")
587dd7cddfSDavid du Colombier JMESSAGE(JERR_GIF_COLORSPACE, "GIF output must be grayscale or RGB")
597dd7cddfSDavid du Colombier JMESSAGE(JERR_GIF_IMAGENOTFOUND, "Too few images in GIF file")
607dd7cddfSDavid du Colombier JMESSAGE(JERR_GIF_NOT, "Not a GIF file")
617dd7cddfSDavid du Colombier JMESSAGE(JTRC_GIF, "%ux%ux%d GIF image")
627dd7cddfSDavid du Colombier JMESSAGE(JTRC_GIF_BADVERSION,
637dd7cddfSDavid du Colombier 	 "Warning: unexpected GIF version number '%c%c%c'")
647dd7cddfSDavid du Colombier JMESSAGE(JTRC_GIF_EXTENSION, "Ignoring GIF extension block of type 0x%02x")
657dd7cddfSDavid du Colombier JMESSAGE(JTRC_GIF_NONSQUARE, "Caution: nonsquare pixels in input")
667dd7cddfSDavid du Colombier JMESSAGE(JWRN_GIF_BADDATA, "Corrupt data in GIF file")
677dd7cddfSDavid du Colombier JMESSAGE(JWRN_GIF_CHAR, "Bogus char 0x%02x in GIF file, ignoring")
687dd7cddfSDavid du Colombier JMESSAGE(JWRN_GIF_ENDCODE, "Premature end of GIF image")
697dd7cddfSDavid du Colombier JMESSAGE(JWRN_GIF_NOMOREDATA, "Ran out of GIF bits")
707dd7cddfSDavid du Colombier #endif /* GIF_SUPPORTED */
717dd7cddfSDavid du Colombier 
727dd7cddfSDavid du Colombier #ifdef PPM_SUPPORTED
737dd7cddfSDavid du Colombier JMESSAGE(JERR_PPM_COLORSPACE, "PPM output must be grayscale or RGB")
747dd7cddfSDavid du Colombier JMESSAGE(JERR_PPM_NONNUMERIC, "Nonnumeric data in PPM file")
75*593dc095SDavid du Colombier JMESSAGE(JERR_PPM_NOT, "Not a PPM/PGM file")
767dd7cddfSDavid du Colombier JMESSAGE(JTRC_PGM, "%ux%u PGM image")
777dd7cddfSDavid du Colombier JMESSAGE(JTRC_PGM_TEXT, "%ux%u text PGM image")
787dd7cddfSDavid du Colombier JMESSAGE(JTRC_PPM, "%ux%u PPM image")
797dd7cddfSDavid du Colombier JMESSAGE(JTRC_PPM_TEXT, "%ux%u text PPM image")
807dd7cddfSDavid du Colombier #endif /* PPM_SUPPORTED */
817dd7cddfSDavid du Colombier 
827dd7cddfSDavid du Colombier #ifdef RLE_SUPPORTED
837dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_BADERROR, "Bogus error code from RLE library")
847dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_COLORSPACE, "RLE output must be grayscale or RGB")
857dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_DIMENSIONS, "Image dimensions (%ux%u) too large for RLE")
867dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_EMPTY, "Empty RLE file")
877dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_EOF, "Premature EOF in RLE header")
887dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_MEM, "Insufficient memory for RLE header")
897dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_NOT, "Not an RLE file")
907dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_TOOMANYCHANNELS, "Cannot handle %d output channels for RLE")
917dd7cddfSDavid du Colombier JMESSAGE(JERR_RLE_UNSUPPORTED, "Cannot handle this RLE setup")
927dd7cddfSDavid du Colombier JMESSAGE(JTRC_RLE, "%ux%u full-color RLE file")
937dd7cddfSDavid du Colombier JMESSAGE(JTRC_RLE_FULLMAP, "%ux%u full-color RLE file with map of length %d")
947dd7cddfSDavid du Colombier JMESSAGE(JTRC_RLE_GRAY, "%ux%u grayscale RLE file")
957dd7cddfSDavid du Colombier JMESSAGE(JTRC_RLE_MAPGRAY, "%ux%u grayscale RLE file with map of length %d")
967dd7cddfSDavid du Colombier JMESSAGE(JTRC_RLE_MAPPED, "%ux%u colormapped RLE file with map of length %d")
977dd7cddfSDavid du Colombier #endif /* RLE_SUPPORTED */
987dd7cddfSDavid du Colombier 
997dd7cddfSDavid du Colombier #ifdef TARGA_SUPPORTED
1007dd7cddfSDavid du Colombier JMESSAGE(JERR_TGA_BADCMAP, "Unsupported Targa colormap format")
1017dd7cddfSDavid du Colombier JMESSAGE(JERR_TGA_BADPARMS, "Invalid or unsupported Targa file")
1027dd7cddfSDavid du Colombier JMESSAGE(JERR_TGA_COLORSPACE, "Targa output must be grayscale or RGB")
1037dd7cddfSDavid du Colombier JMESSAGE(JTRC_TGA, "%ux%u RGB Targa image")
1047dd7cddfSDavid du Colombier JMESSAGE(JTRC_TGA_GRAY, "%ux%u grayscale Targa image")
1057dd7cddfSDavid du Colombier JMESSAGE(JTRC_TGA_MAPPED, "%ux%u colormapped Targa image")
1067dd7cddfSDavid du Colombier #else
1077dd7cddfSDavid du Colombier JMESSAGE(JERR_TGA_NOTCOMP, "Targa support was not compiled")
1087dd7cddfSDavid du Colombier #endif /* TARGA_SUPPORTED */
1097dd7cddfSDavid du Colombier 
1107dd7cddfSDavid du Colombier JMESSAGE(JERR_BAD_CMAP_FILE,
1117dd7cddfSDavid du Colombier 	 "Color map file is invalid or of unsupported format")
1127dd7cddfSDavid du Colombier JMESSAGE(JERR_TOO_MANY_COLORS,
1137dd7cddfSDavid du Colombier 	 "Output file format cannot handle %d colormap entries")
1147dd7cddfSDavid du Colombier JMESSAGE(JERR_UNGETC_FAILED, "ungetc failed")
1157dd7cddfSDavid du Colombier #ifdef TARGA_SUPPORTED
1167dd7cddfSDavid du Colombier JMESSAGE(JERR_UNKNOWN_FORMAT,
1177dd7cddfSDavid du Colombier 	 "Unrecognized input file format --- perhaps you need -targa")
1187dd7cddfSDavid du Colombier #else
1197dd7cddfSDavid du Colombier JMESSAGE(JERR_UNKNOWN_FORMAT, "Unrecognized input file format")
1207dd7cddfSDavid du Colombier #endif
1217dd7cddfSDavid du Colombier JMESSAGE(JERR_UNSUPPORTED_FORMAT, "Unsupported output file format")
1227dd7cddfSDavid du Colombier 
1237dd7cddfSDavid du Colombier #ifdef JMAKE_ENUM_LIST
1247dd7cddfSDavid du Colombier 
1257dd7cddfSDavid du Colombier   JMSG_LASTADDONCODE
1267dd7cddfSDavid du Colombier } ADDON_MESSAGE_CODE;
1277dd7cddfSDavid du Colombier 
1287dd7cddfSDavid du Colombier #undef JMAKE_ENUM_LIST
1297dd7cddfSDavid du Colombier #endif /* JMAKE_ENUM_LIST */
1307dd7cddfSDavid du Colombier 
1317dd7cddfSDavid du Colombier /* Zap JMESSAGE macro so that future re-inclusions do nothing by default */
1327dd7cddfSDavid du Colombier #undef JMESSAGE
133