|
1 /***************************************************************************/ |
|
2 /* */ |
|
3 /* afpic.h */ |
|
4 /* */ |
|
5 /* The FreeType position independent code services for autofit module. */ |
|
6 /* */ |
|
7 /* Copyright 2009, 2011 by */ |
|
8 /* Oran Agra and Mickey Gabel. */ |
|
9 /* */ |
|
10 /* This file is part of the FreeType project, and may only be used, */ |
|
11 /* modified, and distributed under the terms of the FreeType project */ |
|
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
|
13 /* this file you indicate that you have read the license and */ |
|
14 /* understand and accept it fully. */ |
|
15 /* */ |
|
16 /***************************************************************************/ |
|
17 |
|
18 |
|
19 #ifndef __AFPIC_H__ |
|
20 #define __AFPIC_H__ |
|
21 |
|
22 |
|
23 FT_BEGIN_HEADER |
|
24 |
|
25 #include FT_INTERNAL_PIC_H |
|
26 |
|
27 #ifndef FT_CONFIG_OPTION_PIC |
|
28 |
|
29 #define AF_SCRIPT_CLASSES_GET af_script_classes |
|
30 #define AF_AF_AUTOFITTER_SERVICE_GET af_autofitter_service |
|
31 |
|
32 #else /* FT_CONFIG_OPTION_PIC */ |
|
33 |
|
34 #include "aftypes.h" |
|
35 |
|
36 /* increase these when you add new scripts, */ |
|
37 /* and update autofit_module_class_pic_init */ |
|
38 #ifdef FT_OPTION_AUTOFIT2 |
|
39 #define AF_SCRIPT_CLASSES_COUNT 6 |
|
40 #else |
|
41 #define AF_SCRIPT_CLASSES_COUNT 5 |
|
42 #endif |
|
43 #define AF_SCRIPT_CLASSES_REC_COUNT ( AF_SCRIPT_CLASSES_COUNT - 1 ) |
|
44 |
|
45 typedef struct AFModulePIC_ |
|
46 { |
|
47 AF_ScriptClass af_script_classes[AF_SCRIPT_CLASSES_COUNT]; |
|
48 AF_ScriptClassRec af_script_classes_rec[AF_SCRIPT_CLASSES_REC_COUNT]; |
|
49 FT_AutoHinter_ServiceRec af_autofitter_service; |
|
50 |
|
51 } AFModulePIC; |
|
52 |
|
53 #define GET_PIC( lib ) \ |
|
54 ( (AFModulePIC*)((lib)->pic_container.autofit) ) |
|
55 #define AF_SCRIPT_CLASSES_GET \ |
|
56 ( GET_PIC( FT_FACE_LIBRARY(globals->face) )->af_script_classes ) |
|
57 #define AF_AF_AUTOFITTER_SERVICE_GET \ |
|
58 ( GET_PIC( library )->af_autofitter_service ) |
|
59 |
|
60 #endif /* FT_CONFIG_OPTION_PIC */ |
|
61 |
|
62 /* */ |
|
63 |
|
64 FT_END_HEADER |
|
65 |
|
66 #endif /* __AFPIC_H__ */ |
|
67 |
|
68 |
|
69 /* END */ |