2000-05-11 20:23:52 +02:00
|
|
|
/***************************************************************************/
|
|
|
|
/* */
|
|
|
|
/* fterrors.h */
|
|
|
|
/* */
|
2000-07-14 08:16:47 +02:00
|
|
|
/* FreeType error codes (specification). */
|
2000-05-11 20:23:52 +02:00
|
|
|
/* */
|
|
|
|
/* Copyright 1996-2000 by */
|
|
|
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
|
|
|
/* */
|
2000-07-09 21:15:30 +02:00
|
|
|
/* This file is part of the FreeType project, and may only be used, */
|
|
|
|
/* modified, and distributed under the terms of the FreeType project */
|
2000-05-11 20:23:52 +02:00
|
|
|
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
|
|
|
/* this file you indicate that you have read the license and */
|
|
|
|
/* understand and accept it fully. */
|
|
|
|
/* */
|
|
|
|
/***************************************************************************/
|
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
|
|
|
/*************************************************************************/
|
|
|
|
/* */
|
2000-08-27 00:16:44 +02:00
|
|
|
/* This file is used to define the FreeType error enumeration constants. */
|
2000-07-09 21:15:30 +02:00
|
|
|
/* It can also be used to create an error message table easily with */
|
2000-08-27 00:16:44 +02:00
|
|
|
/* something like */
|
2000-07-09 21:15:30 +02:00
|
|
|
/* */
|
|
|
|
/* { */
|
2000-12-09 01:45:38 +01:00
|
|
|
/* #undef __FTERRORS_H__ */
|
2000-07-09 21:15:30 +02:00
|
|
|
/* #define FT_ERRORDEF( e, v, s ) { e, s }, */
|
|
|
|
/* #define FT_ERROR_START_LIST { */
|
|
|
|
/* #define FT_ERROR_END_LIST { 0, 0 } }; */
|
|
|
|
/* */
|
|
|
|
/* const struct */
|
|
|
|
/* { */
|
|
|
|
/* int err_code; */
|
|
|
|
/* const char* err_msg */
|
|
|
|
/* } ft_errors[] = */
|
|
|
|
/* */
|
2000-12-09 01:45:38 +01:00
|
|
|
/* #include FT_ERRORS_H */
|
2000-07-09 21:15:30 +02:00
|
|
|
/* } */
|
|
|
|
/* */
|
2000-10-10 05:58:32 +02:00
|
|
|
/* For C++ it might be necessary to use `extern "C" {' and to define */
|
|
|
|
/* FT_NEED_EXTERN_C also. */
|
|
|
|
/* */
|
2000-07-09 21:15:30 +02:00
|
|
|
/*************************************************************************/
|
|
|
|
|
|
|
|
|
2000-12-01 00:12:33 +01:00
|
|
|
#ifndef __FTERRORS_H__
|
|
|
|
#define __FTERRORS_H__
|
2000-05-11 20:23:52 +02:00
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-10-10 05:58:32 +02:00
|
|
|
#undef FT_NEED_EXTERN_C
|
2000-08-01 15:17:04 +02:00
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
* INSTALL: Revised.
* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
builds/win32/w32-bccd.mk: Revised.
* include/freetype/config/ftbuild.h,
include/freetype/internal/internal.h: Revised.
* include/freetype/ftimage.h: Updated to new header inclusion scheme.
* builds/toplevel.mk (.PHONY): Adding `distclean'.
* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
`setup'.
* INSTALL: Slightly updated the quick starter documentation to
include IDE compilation, prevent against BSD Make, and specify "make
setup" instead of a single "make" for build configuration.
* include/config/ftbuild.h, include/internal/internal.h: Added new
configuration files used to determine the location of all public,
configuration, and internal header files for FreeType 2. Modified
all headers under "include/freetype" to reflect this change. Note
that we still need to change the library source files themselves
though.
builds/win32/detect.mk: Added new files to support compilation with
the free Borland C++ command-line compiler. Modified the detection
rules to recognize the new "bcc32" target in "make setup bcc32".
src/truetype/ttobjs.c, src/truetype/ttgload.c,
src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
didn't really like. Basically, this compiler complains when FT_UInt
is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
in these cases).
2000-12-01 18:25:58 +01:00
|
|
|
#ifndef FT_ERRORDEF
|
2000-07-09 21:15:30 +02:00
|
|
|
|
* INSTALL: Revised.
* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
builds/win32/w32-bccd.mk: Revised.
* include/freetype/config/ftbuild.h,
include/freetype/internal/internal.h: Revised.
* include/freetype/ftimage.h: Updated to new header inclusion scheme.
* builds/toplevel.mk (.PHONY): Adding `distclean'.
* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
`setup'.
* INSTALL: Slightly updated the quick starter documentation to
include IDE compilation, prevent against BSD Make, and specify "make
setup" instead of a single "make" for build configuration.
* include/config/ftbuild.h, include/internal/internal.h: Added new
configuration files used to determine the location of all public,
configuration, and internal header files for FreeType 2. Modified
all headers under "include/freetype" to reflect this change. Note
that we still need to change the library source files themselves
though.
builds/win32/detect.mk: Added new files to support compilation with
the free Borland C++ command-line compiler. Modified the detection
rules to recognize the new "bcc32" target in "make setup bcc32".
src/truetype/ttobjs.c, src/truetype/ttgload.c,
src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
didn't really like. Basically, this compiler complains when FT_UInt
is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
in these cases).
2000-12-01 18:25:58 +01:00
|
|
|
#define FT_ERRORDEF( e, v, s ) e = v,
|
|
|
|
#define FT_ERROR_START_LIST enum {
|
|
|
|
#define FT_ERROR_END_LIST FT_Err_Max };
|
2000-10-10 05:58:32 +02:00
|
|
|
|
* INSTALL: Revised.
* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
builds/win32/w32-bccd.mk: Revised.
* include/freetype/config/ftbuild.h,
include/freetype/internal/internal.h: Revised.
* include/freetype/ftimage.h: Updated to new header inclusion scheme.
* builds/toplevel.mk (.PHONY): Adding `distclean'.
* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
`setup'.
* INSTALL: Slightly updated the quick starter documentation to
include IDE compilation, prevent against BSD Make, and specify "make
setup" instead of a single "make" for build configuration.
* include/config/ftbuild.h, include/internal/internal.h: Added new
configuration files used to determine the location of all public,
configuration, and internal header files for FreeType 2. Modified
all headers under "include/freetype" to reflect this change. Note
that we still need to change the library source files themselves
though.
builds/win32/detect.mk: Added new files to support compilation with
the free Borland C++ command-line compiler. Modified the detection
rules to recognize the new "bcc32" target in "make setup bcc32".
src/truetype/ttobjs.c, src/truetype/ttgload.c,
src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
didn't really like. Basically, this compiler complains when FT_UInt
is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
in these cases).
2000-12-01 18:25:58 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
#define FT_NEED_EXTERN_C
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
2000-10-10 05:58:32 +02:00
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
#endif /* !FT_ERRORDEF */
|
|
|
|
|
2000-05-11 20:23:52 +02:00
|
|
|
|
|
|
|
#ifdef FT_ERROR_START_LIST
|
2000-07-09 21:15:30 +02:00
|
|
|
FT_ERROR_START_LIST
|
2000-05-11 20:23:52 +02:00
|
|
|
#endif
|
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* generic errors */
|
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Ok, 0x0000, \
|
|
|
|
"no error" )
|
|
|
|
FT_ERRORDEF( FT_Err_Cannot_Open_Resource, 0x0001, \
|
2000-08-27 00:16:44 +02:00
|
|
|
"cannot open resource" )
|
2000-07-09 21:15:30 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Unknown_File_Format, 0x0002, \
|
|
|
|
"unknown file format" )
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_File_Format, 0x0003, \
|
|
|
|
"broken file" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Version, 0x0004, \
|
|
|
|
"invalid FreeType version" )
|
|
|
|
FT_ERRORDEF( FT_Err_Lower_Module_Version, 0x0005, \
|
|
|
|
"module version is too low" )
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Argument, 0x0006, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid argument" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Unimplemented_Feature, 0x0007, \
|
|
|
|
"unimplemented feature" )
|
|
|
|
|
|
|
|
/* glyph/character errors */
|
|
|
|
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Glyph_Index, 0x0010, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid glyph index" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Character_Code, 0x0011, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid character code" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Glyph_Format, 0x0012, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"unsupported glyph image format" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Cannot_Render_Glyph, 0x0013, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"cannot render this glyph format" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Outline, 0x0014, \
|
|
|
|
"invalid outline" )
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Composite, 0x0015, \
|
|
|
|
"invalid composite glyph" )
|
|
|
|
FT_ERRORDEF( FT_Err_Too_Many_Hints, 0x0016, \
|
|
|
|
"too many hints" )
|
2000-09-29 08:41:56 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Pixel_Size, 0x0017, \
|
|
|
|
"invalid pixel size" )
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* handle errors */
|
|
|
|
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Handle, 0x0020, \
|
|
|
|
"invalid object handle" )
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Library_Handle, 0x0021, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid library handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Driver_Handle, 0x0022, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid module handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Face_Handle, 0x0023, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid face handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Size_Handle, 0x0024, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid size handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Slot_Handle, 0x0025, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid glyph slot handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_CharMap_Handle, 0x0026, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid charmap handle" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Cache_Handle, 0x0027, \
|
|
|
|
"invalid cache manager handle" )
|
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Stream_Handle, 0x0028, \
|
|
|
|
"invalid stream handle" )
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* driver errors */
|
|
|
|
|
|
|
|
FT_ERRORDEF( FT_Err_Too_Many_Drivers, 0x0030, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"too many modules" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Too_Many_Extensions, 0x0031, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"too many extensions" )
|
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* memory errors */
|
|
|
|
|
|
|
|
FT_ERRORDEF( FT_Err_Out_Of_Memory, 0x0040, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"out of memory" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Unlisted_Object, 0x0041, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"unlisted object" )
|
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* stream errors */
|
|
|
|
|
|
|
|
FT_ERRORDEF( FT_Err_Cannot_Open_Stream, 0x0051, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"cannot open stream" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Stream_Seek, 0x0052, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid stream seek" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Stream_Skip, 0x0053, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid stream skip" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Stream_Read, 0x0054, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid stream read" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Stream_Operation, 0x0055, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid stream operation" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Frame_Operation, 0x0056, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid frame operation" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Nested_Frame_Access, 0x0057, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"nested frame access" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Invalid_Frame_Read, 0x0058, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"invalid frame read" )
|
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
/* raster errors */
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Raster_Uninitialized, 0x0060, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"raster uninitialized" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Raster_Corrupted, 0x0061, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"raster corrupted" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Raster_Overflow, 0x0062, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"raster overflow" )
|
2000-08-27 00:16:44 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Raster_Negative_Height, 0x0063, \
|
2000-07-09 21:15:30 +02:00
|
|
|
"negative height while rastering" )
|
|
|
|
|
2000-09-16 00:50:59 +02:00
|
|
|
/* cache errors */
|
2000-10-24 07:44:59 +02:00
|
|
|
|
2000-09-16 00:50:59 +02:00
|
|
|
FT_ERRORDEF( FT_Err_Too_Many_Caches, 0x0070, \
|
|
|
|
"too many registered caches" )
|
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
/* range 0x400 - 0x4FF is reserved for TrueType specific stuff */
|
|
|
|
|
|
|
|
/* range 0x500 - 0x5FF is reserved for CFF specific stuff */
|
|
|
|
|
|
|
|
/* range 0x600 - 0x6FF is reserved for Type1 specific stuff */
|
2000-05-11 20:23:52 +02:00
|
|
|
|
|
|
|
#ifdef FT_ERROR_END_LIST
|
2000-07-09 21:15:30 +02:00
|
|
|
FT_ERROR_END_LIST
|
2000-05-11 20:23:52 +02:00
|
|
|
#endif
|
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-05-11 20:23:52 +02:00
|
|
|
#undef FT_ERROR_START_LIST
|
|
|
|
#undef FT_ERROR_END_LIST
|
|
|
|
#undef FT_ERRORDEF
|
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-10-10 05:58:32 +02:00
|
|
|
#ifdef FT_NEED_EXTERN_C
|
2000-08-01 15:17:04 +02:00
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2000-12-01 00:12:33 +01:00
|
|
|
#endif /* __FTERRORS_H__ */
|
2000-05-11 20:23:52 +02:00
|
|
|
|
2000-07-09 21:15:30 +02:00
|
|
|
|
2000-05-11 20:23:52 +02:00
|
|
|
/* END */
|