1 /* ttfautohint-errors.h */
4 * Copyright (C) 2011-2014 by Werner Lemberg.
6 * This file is part of the ttfautohint library, and may only be used,
7 * modified, and distributed under the terms given in `COPYING'. By
8 * continuing to use, modify, or distribute this file you indicate that you
9 * have read `COPYING' and understand and accept it fully.
11 * The file `COPYING' mentioned in the previous paragraph is distributed
12 * with the ttfautohint library.
16 #ifndef __TTFAUTOHINT_ERRORS_H__
17 #define __TTFAUTOHINT_ERRORS_H__
19 /* We duplicate FreeType's error handling macros for simplicity; */
20 /* however, we don't use module-specific error codes. */
24 #define TA_ERR_XCAT(x, y) x ## y
25 #define TA_ERR_CAT(x, y) TA_ERR_XCAT(x, y)
28 #define TA_ERR_PREFIX TA_Err_
31 # define TA_ERRORDEF(e, v, s) e = v,
32 # define TA_ERROR_START_LIST enum {
33 # define TA_ERROR_END_LIST TA_ERR_CAT(TA_ERR_PREFIX, Max) };
36 #define TA_ERRORDEF_(e, v, s) \
37 TA_ERRORDEF(TA_ERR_CAT(TA_ERR_PREFIX, e), v, s)
38 #define TA_NOERRORDEF_ TA_ERRORDEF_
41 /* The error codes. */
43 #ifdef TA_ERROR_START_LIST
47 TA_NOERRORDEF_(Ok
, 0x00,
50 TA_ERRORDEF_(Invalid_FreeType_Version
, 0x0E,
51 "invalid FreeType version (need 2.4.5 or higher)")
52 TA_ERRORDEF_(Missing_Legal_Permission
, 0x0F,
53 "legal permission bit in `OS/2' font table is set")
54 TA_ERRORDEF_(Invalid_Stream_Write
, 0x5F,
55 "invalid stream write")
56 TA_ERRORDEF_(Hinter_Overflow
, 0xF0,
58 TA_ERRORDEF_(Missing_Glyph
, 0xF1,
59 "missing standard character glyph")
60 TA_ERRORDEF_(Missing_Unicode_CMap
, 0xF2,
61 "missing Unicode character map")
62 TA_ERRORDEF_(Missing_Symbol_CMap
, 0xF3,
63 "missing symbol character map")
64 TA_ERRORDEF_(Canceled
, 0xF4,
66 TA_ERRORDEF_(Already_Processed
, 0xF5,
67 "font already processed by ttfautohint")
68 TA_ERRORDEF_(Invalid_Font_Type
, 0xF6,
69 "not a font with TrueType outlines in SFNT format")
70 TA_ERRORDEF_(Unknown_Argument
, 0xF7,
73 TA_ERRORDEF_(XHeightSnapping_Invalid_Character
, 0x101,
75 TA_ERRORDEF_(XHeightSnapping_Overflow
, 0x102,
77 TA_ERRORDEF_(XHeightSnapping_Invalid_Range
, 0x103,
79 TA_ERRORDEF_(XHeightSnapping_Overlapping_Ranges
, 0x104,
81 TA_ERRORDEF_(XHeightSnapping_Not_Ascending
, 0x105,
82 "not ascending ranges or values")
83 TA_ERRORDEF_(XHeightSnapping_Allocation_Error
, 0x106,
86 TA_ERRORDEF_(Control_Syntax_Error
, 0x201,
88 TA_ERRORDEF_(Control_Invalid_Font_Index
, 0x202,
90 TA_ERRORDEF_(Control_Invalid_Glyph_Index
, 0x203,
91 "invalid glyph index")
92 TA_ERRORDEF_(Control_Invalid_Glyph_Name
, 0x204,
94 TA_ERRORDEF_(Control_Invalid_Character
, 0x205,
96 TA_ERRORDEF_(Control_Invalid_Shift
, 0x206,
98 TA_ERRORDEF_(Control_Invalid_Range
, 0x207,
100 TA_ERRORDEF_(Control_Invalid_Glyph
, 0x208,
102 TA_ERRORDEF_(Control_Overflow
, 0x209,
104 TA_ERRORDEF_(Control_Overlapping_Ranges
, 0x20A,
105 "overlapping ranges")
106 TA_ERRORDEF_(Control_Ranges_Not_Ascending
, 0x20B,
107 "ranges not ascending")
108 TA_ERRORDEF_(Control_Allocation_Error
, 0x20C,
110 TA_ERRORDEF_(Control_Flex_Error
, 0x20D,
111 "internal flex error")
113 #ifdef TA_ERROR_END_LIST
118 #undef TA_ERROR_START_LIST
119 #undef TA_ERROR_END_LIST
122 #undef TA_NOERRORDEF_
124 #endif /* __TTFAUTOHINT_ERRORS_H__ */
126 /* end of ttfautohint-errors.h */