Mercurial > hg > Game > Cerium
annotate freetype2/freetype/ftmodapi.h @ 1769:4baed436fc58 draft
minor fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 23 Nov 2013 02:15:22 +0900 |
parents | a8ab91f49cac |
children |
rev | line source |
---|---|
1206
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 /***************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 /* ftmodapi.h */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 /* FreeType modules public interface (specification). */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 /* Copyright 1996-2001, 2002, 2003, 2006, 2008, 2009, 2010 by */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 /* This file is part of the FreeType project, and may only be used, */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 /* modified, and distributed under the terms of the FreeType project */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 /* this file you indicate that you have read the license and */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
14 /* understand and accept it fully. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 /***************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 #ifndef __FTMODAPI_H__ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20 #define __FTMODAPI_H__ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
21 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
22 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 #include <ft2build.h> |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 #include FT_FREETYPE_H |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
26 #ifdef FREETYPE_H |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 #error "freetype.h of FreeType 1 has been loaded!" |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
28 #error "Please fix the directory search order for header files" |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
29 #error "so that freetype.h of FreeType 2 is found first." |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
30 #endif |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
31 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
33 FT_BEGIN_HEADER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
34 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
35 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
36 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 /* <Section> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
39 /* module_management */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
40 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
41 /* <Title> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
42 /* Module Management */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
43 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
44 /* <Abstract> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
45 /* How to add, upgrade, and remove modules from FreeType. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
46 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
47 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
48 /* The definitions below are used to manage modules within FreeType. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
49 /* Modules can be added, upgraded, and removed at runtime. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
50 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
51 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
52 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
53 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
54 /* module bit flags */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
55 #define FT_MODULE_FONT_DRIVER 1 /* this module is a font driver */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
56 #define FT_MODULE_RENDERER 2 /* this module is a renderer */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
57 #define FT_MODULE_HINTER 4 /* this module is a glyph hinter */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
58 #define FT_MODULE_STYLER 8 /* this module is a styler */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
59 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
60 #define FT_MODULE_DRIVER_SCALABLE 0x100 /* the driver supports */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
61 /* scalable fonts */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
62 #define FT_MODULE_DRIVER_NO_OUTLINES 0x200 /* the driver does not */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
63 /* support vector outlines */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
64 #define FT_MODULE_DRIVER_HAS_HINTER 0x400 /* the driver provides its */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
65 /* own hinter */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
66 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
67 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
68 /* deprecated values */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
69 #define ft_module_font_driver FT_MODULE_FONT_DRIVER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
70 #define ft_module_renderer FT_MODULE_RENDERER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
71 #define ft_module_hinter FT_MODULE_HINTER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
72 #define ft_module_styler FT_MODULE_STYLER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
73 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
74 #define ft_module_driver_scalable FT_MODULE_DRIVER_SCALABLE |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
75 #define ft_module_driver_no_outlines FT_MODULE_DRIVER_NO_OUTLINES |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
76 #define ft_module_driver_has_hinter FT_MODULE_DRIVER_HAS_HINTER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
77 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
78 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
79 typedef FT_Pointer FT_Module_Interface; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
80 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
81 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
82 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
83 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
84 /* <FuncType> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
85 /* FT_Module_Constructor */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
86 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
87 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
88 /* A function used to initialize (not create) a new module object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
89 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
90 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
91 /* module :: The module to initialize. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
92 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
93 typedef FT_Error |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
94 (*FT_Module_Constructor)( FT_Module module ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
95 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
96 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
97 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
98 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
99 /* <FuncType> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
100 /* FT_Module_Destructor */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
101 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
102 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
103 /* A function used to finalize (not destroy) a given module object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
104 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
105 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
106 /* module :: The module to finalize. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
107 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
108 typedef void |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
109 (*FT_Module_Destructor)( FT_Module module ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
110 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
111 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
112 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
113 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
114 /* <FuncType> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
115 /* FT_Module_Requester */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
116 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
117 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
118 /* A function used to query a given module for a specific interface. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
119 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
120 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
121 /* module :: The module to finalize. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
122 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
123 /* name :: The name of the interface in the module. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
124 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
125 typedef FT_Module_Interface |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
126 (*FT_Module_Requester)( FT_Module module, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
127 const char* name ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
128 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
129 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
130 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
131 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
132 /* <Struct> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
133 /* FT_Module_Class */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
134 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
135 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
136 /* The module class descriptor. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
137 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
138 /* <Fields> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
139 /* module_flags :: Bit flags describing the module. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
140 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
141 /* module_size :: The size of one module object/instance in */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
142 /* bytes. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
143 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
144 /* module_name :: The name of the module. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
145 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
146 /* module_version :: The version, as a 16.16 fixed number */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
147 /* (major.minor). */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
148 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
149 /* module_requires :: The version of FreeType this module requires, */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
150 /* as a 16.16 fixed number (major.minor). Starts */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
151 /* at version 2.0, i.e., 0x20000. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
152 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
153 /* module_init :: The initializing function. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
154 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
155 /* module_done :: The finalizing function. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
156 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
157 /* get_interface :: The interface requesting function. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
158 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
159 typedef struct FT_Module_Class_ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
160 { |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
161 FT_ULong module_flags; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
162 FT_Long module_size; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
163 const FT_String* module_name; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
164 FT_Fixed module_version; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
165 FT_Fixed module_requires; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
166 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
167 const void* module_interface; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
168 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
169 FT_Module_Constructor module_init; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
170 FT_Module_Destructor module_done; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
171 FT_Module_Requester get_interface; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
172 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
173 } FT_Module_Class; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
174 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
175 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
176 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
177 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
178 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
179 /* FT_Add_Module */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
180 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
181 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
182 /* Add a new module to a given library instance. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
183 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
184 /* <InOut> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
185 /* library :: A handle to the library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
186 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
187 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
188 /* clazz :: A pointer to class descriptor for the module. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
189 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
190 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
191 /* FreeType error code. 0~means success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
192 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
193 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
194 /* An error will be returned if a module already exists by that name, */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
195 /* or if the module requires a version of FreeType that is too great. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
196 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
197 FT_EXPORT( FT_Error ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
198 FT_Add_Module( FT_Library library, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
199 const FT_Module_Class* clazz ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
200 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
201 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
202 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
203 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
204 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
205 /* FT_Get_Module */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
206 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
207 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
208 /* Find a module by its name. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
209 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
210 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
211 /* library :: A handle to the library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
212 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
213 /* module_name :: The module's name (as an ASCII string). */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
214 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
215 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
216 /* A module handle. 0~if none was found. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
217 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
218 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
219 /* FreeType's internal modules aren't documented very well, and you */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
220 /* should look up the source code for details. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
221 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
222 FT_EXPORT( FT_Module ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
223 FT_Get_Module( FT_Library library, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
224 const char* module_name ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
225 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
226 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
227 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
228 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
229 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
230 /* FT_Remove_Module */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
231 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
232 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
233 /* Remove a given module from a library instance. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
234 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
235 /* <InOut> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
236 /* library :: A handle to a library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
237 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
238 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
239 /* module :: A handle to a module object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
240 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
241 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
242 /* FreeType error code. 0~means success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
243 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
244 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
245 /* The module object is destroyed by the function in case of success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
246 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
247 FT_EXPORT( FT_Error ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
248 FT_Remove_Module( FT_Library library, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
249 FT_Module module ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
250 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
251 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
252 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
253 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
254 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
255 /* FT_Reference_Library */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
256 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
257 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
258 /* A counter gets initialized to~1 at the time an @FT_Library */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
259 /* structure is created. This function increments the counter. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
260 /* @FT_Done_Library then only destroys a library if the counter is~1, */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
261 /* otherwise it simply decrements the counter. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
262 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
263 /* This function helps in managing life-cycles of structures which */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
264 /* reference @FT_Library objects. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
265 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
266 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
267 /* library :: A handle to a target library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
268 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
269 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
270 /* FreeType error code. 0~means success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
271 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
272 /* <Since> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
273 /* 2.4.2 */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
274 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
275 FT_EXPORT( FT_Error ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
276 FT_Reference_Library( FT_Library library ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
277 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
278 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
279 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
280 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
281 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
282 /* FT_New_Library */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
283 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
284 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
285 /* This function is used to create a new FreeType library instance */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
286 /* from a given memory object. It is thus possible to use libraries */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
287 /* with distinct memory allocators within the same program. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
288 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
289 /* Normally, you would call this function (followed by a call to */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
290 /* @FT_Add_Default_Modules or a series of calls to @FT_Add_Module) */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
291 /* instead of @FT_Init_FreeType to initialize the FreeType library. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
292 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
293 /* Don't use @FT_Done_FreeType but @FT_Done_Library to destroy a */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
294 /* library instance. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
295 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
296 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
297 /* memory :: A handle to the original memory object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
298 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
299 /* <Output> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
300 /* alibrary :: A pointer to handle of a new library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
301 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
302 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
303 /* FreeType error code. 0~means success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
304 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
305 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
306 /* See the discussion of reference counters in the description of */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
307 /* @FT_Reference_Library. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
308 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
309 FT_EXPORT( FT_Error ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
310 FT_New_Library( FT_Memory memory, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
311 FT_Library *alibrary ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
312 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
313 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
314 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
315 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
316 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
317 /* FT_Done_Library */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
318 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
319 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
320 /* Discard a given library object. This closes all drivers and */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
321 /* discards all resource objects. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
322 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
323 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
324 /* library :: A handle to the target library. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
325 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
326 /* <Return> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
327 /* FreeType error code. 0~means success. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
328 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
329 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
330 /* See the discussion of reference counters in the description of */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
331 /* @FT_Reference_Library. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
332 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
333 FT_EXPORT( FT_Error ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
334 FT_Done_Library( FT_Library library ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
335 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
336 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
337 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
338 typedef void |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
339 (*FT_DebugHook_Func)( void* arg ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
340 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
341 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
342 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
343 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
344 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
345 /* FT_Set_Debug_Hook */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
346 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
347 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
348 /* Set a debug hook function for debugging the interpreter of a font */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
349 /* format. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
350 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
351 /* <InOut> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
352 /* library :: A handle to the library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
353 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
354 /* <Input> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
355 /* hook_index :: The index of the debug hook. You should use the */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
356 /* values defined in `ftobjs.h', e.g., */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
357 /* `FT_DEBUG_HOOK_TRUETYPE'. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
358 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
359 /* debug_hook :: The function used to debug the interpreter. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
360 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
361 /* <Note> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
362 /* Currently, four debug hook slots are available, but only two (for */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
363 /* the TrueType and the Type~1 interpreter) are defined. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
364 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
365 /* Since the internal headers of FreeType are no longer installed, */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
366 /* the symbol `FT_DEBUG_HOOK_TRUETYPE' isn't available publicly. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
367 /* This is a bug and will be fixed in a forthcoming release. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
368 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
369 FT_EXPORT( void ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
370 FT_Set_Debug_Hook( FT_Library library, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
371 FT_UInt hook_index, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
372 FT_DebugHook_Func debug_hook ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
373 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
374 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
375 /*************************************************************************/ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
376 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
377 /* <Function> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
378 /* FT_Add_Default_Modules */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
379 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
380 /* <Description> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
381 /* Add the set of default drivers to a given library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
382 /* This is only useful when you create a library object with */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
383 /* @FT_New_Library (usually to plug a custom memory manager). */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
384 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
385 /* <InOut> */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
386 /* library :: A handle to a new library object. */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
387 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
388 FT_EXPORT( void ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
389 FT_Add_Default_Modules( FT_Library library ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
390 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
391 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
392 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
393 /************************************************************************** |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
394 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
395 * @section: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
396 * truetype_engine |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
397 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
398 * @title: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
399 * The TrueType Engine |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
400 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
401 * @abstract: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
402 * TrueType bytecode support. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
403 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
404 * @description: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
405 * This section contains a function used to query the level of TrueType |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
406 * bytecode support compiled in this version of the library. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
407 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
408 */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
409 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
410 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
411 /************************************************************************** |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
412 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
413 * @enum: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
414 * FT_TrueTypeEngineType |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
415 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
416 * @description: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
417 * A list of values describing which kind of TrueType bytecode |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
418 * engine is implemented in a given FT_Library instance. It is used |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
419 * by the @FT_Get_TrueType_Engine_Type function. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
420 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
421 * @values: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
422 * FT_TRUETYPE_ENGINE_TYPE_NONE :: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
423 * The library doesn't implement any kind of bytecode interpreter. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
424 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
425 * FT_TRUETYPE_ENGINE_TYPE_UNPATENTED :: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
426 * The library implements a bytecode interpreter that doesn't |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
427 * support the patented operations of the TrueType virtual machine. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
428 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
429 * Its main use is to load certain Asian fonts which position and |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
430 * scale glyph components with bytecode instructions. It produces |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
431 * bad output for most other fonts. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
432 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
433 * FT_TRUETYPE_ENGINE_TYPE_PATENTED :: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
434 * The library implements a bytecode interpreter that covers |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
435 * the full instruction set of the TrueType virtual machine (this |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
436 * was governed by patents until May 2010, hence the name). |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
437 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
438 * @since: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
439 * 2.2 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
440 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
441 */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
442 typedef enum FT_TrueTypeEngineType_ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
443 { |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
444 FT_TRUETYPE_ENGINE_TYPE_NONE = 0, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
445 FT_TRUETYPE_ENGINE_TYPE_UNPATENTED, |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
446 FT_TRUETYPE_ENGINE_TYPE_PATENTED |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
447 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
448 } FT_TrueTypeEngineType; |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
449 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
450 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
451 /************************************************************************** |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
452 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
453 * @func: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
454 * FT_Get_TrueType_Engine_Type |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
455 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
456 * @description: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
457 * Return an @FT_TrueTypeEngineType value to indicate which level of |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
458 * the TrueType virtual machine a given library instance supports. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
459 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
460 * @input: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
461 * library :: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
462 * A library instance. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
463 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
464 * @return: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
465 * A value indicating which level is supported. |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
466 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
467 * @since: |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
468 * 2.2 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
469 * |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
470 */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
471 FT_EXPORT( FT_TrueTypeEngineType ) |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
472 FT_Get_TrueType_Engine_Type( FT_Library library ); |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
473 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
474 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
475 /* */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
476 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
477 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
478 FT_END_HEADER |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
479 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
480 #endif /* __FTMODAPI_H__ */ |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
481 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
482 |
a8ab91f49cac
add freetype2,ft2build.h
Takao YONAMINE <e095763@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
483 /* END */ |