OLD | NEW |
1 /***************************************************************************/ | 1 /***************************************************************************/ |
2 /* */ | 2 /* */ |
3 /* cffpic.h */ | 3 /* cffpic.h */ |
4 /* */ | 4 /* */ |
5 /* The FreeType position independent code services for cff module. */ | 5 /* The FreeType position independent code services for cff module. */ |
6 /* */ | 6 /* */ |
7 /* Copyright 2009 by */ | 7 /* Copyright 2009, 2012, 2013 by */ |
8 /* Oran Agra and Mickey Gabel. */ | 8 /* Oran Agra and Mickey Gabel. */ |
9 /* */ | 9 /* */ |
10 /* This file is part of the FreeType project, and may only be used, */ | 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 */ | 11 /* modified, and distributed under the terms of the FreeType project */ |
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
13 /* this file you indicate that you have read the license and */ | 13 /* this file you indicate that you have read the license and */ |
14 /* understand and accept it fully. */ | 14 /* understand and accept it fully. */ |
15 /* */ | 15 /* */ |
16 /***************************************************************************/ | 16 /***************************************************************************/ |
17 | 17 |
18 | 18 |
19 #ifndef __CFFPIC_H__ | 19 #ifndef __CFFPIC_H__ |
20 #define __CFFPIC_H__ | 20 #define __CFFPIC_H__ |
21 | 21 |
22 | 22 |
23 FT_BEGIN_HEADER | 23 FT_BEGIN_HEADER |
24 | 24 |
25 #include FT_INTERNAL_PIC_H | 25 #include FT_INTERNAL_PIC_H |
26 | 26 |
| 27 |
27 #ifndef FT_CONFIG_OPTION_PIC | 28 #ifndef FT_CONFIG_OPTION_PIC |
28 #define FT_CFF_SERVICE_PS_INFO_GET cff_service_ps_info | 29 |
29 #define FT_CFF_SERVICE_GLYPH_DICT_GET cff_service_glyph_dict | 30 #define CFF_SERVICE_PS_INFO_GET cff_service_ps_info |
30 #define FT_CFF_SERVICE_PS_NAME_GET cff_service_ps_name | 31 #define CFF_SERVICE_GLYPH_DICT_GET cff_service_glyph_dict |
31 #define FT_CFF_SERVICE_GET_CMAP_INFO_GET cff_service_get_cmap_info | 32 #define CFF_SERVICE_PS_NAME_GET cff_service_ps_name |
32 #define FT_CFF_SERVICE_CID_INFO_GET cff_service_cid_info | 33 #define CFF_SERVICE_GET_CMAP_INFO_GET cff_service_get_cmap_info |
33 #define FT_CFF_SERVICES_GET cff_services | 34 #define CFF_SERVICE_CID_INFO_GET cff_service_cid_info |
34 #define FT_CFF_CMAP_ENCODING_CLASS_REC_GET cff_cmap_encoding_class_rec | 35 #define CFF_SERVICE_PROPERTIES_GET cff_service_properties |
35 #define FT_CFF_CMAP_UNICODE_CLASS_REC_GET cff_cmap_unicode_class_rec | 36 #define CFF_SERVICES_GET cff_services |
36 #define FT_CFF_FIELD_HANDLERS_GET cff_field_handlers | 37 #define CFF_CMAP_ENCODING_CLASS_REC_GET cff_cmap_encoding_class_rec |
| 38 #define CFF_CMAP_UNICODE_CLASS_REC_GET cff_cmap_unicode_class_rec |
| 39 #define CFF_FIELD_HANDLERS_GET cff_field_handlers |
37 | 40 |
38 #else /* FT_CONFIG_OPTION_PIC */ | 41 #else /* FT_CONFIG_OPTION_PIC */ |
39 | 42 |
40 #include FT_SERVICE_GLYPH_DICT_H | 43 #include FT_SERVICE_GLYPH_DICT_H |
41 #include "cffparse.h" | 44 #include "cffparse.h" |
42 #include FT_SERVICE_POSTSCRIPT_INFO_H | 45 #include FT_SERVICE_POSTSCRIPT_INFO_H |
43 #include FT_SERVICE_POSTSCRIPT_NAME_H | 46 #include FT_SERVICE_POSTSCRIPT_NAME_H |
44 #include FT_SERVICE_TT_CMAP_H | 47 #include FT_SERVICE_TT_CMAP_H |
45 #include FT_SERVICE_CID_H | 48 #include FT_SERVICE_CID_H |
| 49 #include FT_SERVICE_PROPERTIES_H |
46 | 50 |
47 typedef struct CffModulePIC_ | 51 |
| 52 typedef struct CffModulePIC_ |
48 { | 53 { |
49 FT_ServiceDescRec* cff_services; | 54 FT_ServiceDescRec* cff_services; |
50 CFF_Field_Handler* cff_field_handlers; | 55 CFF_Field_Handler* cff_field_handlers; |
51 FT_Service_PsInfoRec cff_service_ps_info; | 56 FT_Service_PsInfoRec cff_service_ps_info; |
52 FT_Service_GlyphDictRec cff_service_glyph_dict; | 57 FT_Service_GlyphDictRec cff_service_glyph_dict; |
53 FT_Service_PsFontNameRec cff_service_ps_name; | 58 FT_Service_PsFontNameRec cff_service_ps_name; |
54 FT_Service_TTCMapsRec cff_service_get_cmap_info; | 59 FT_Service_TTCMapsRec cff_service_get_cmap_info; |
55 FT_Service_CIDRec cff_service_cid_info; | 60 FT_Service_CIDRec cff_service_cid_info; |
56 FT_CMap_ClassRec cff_cmap_encoding_class_rec; | 61 FT_Service_PropertiesRec cff_service_properties; |
57 FT_CMap_ClassRec cff_cmap_unicode_class_rec; | 62 FT_CMap_ClassRec cff_cmap_encoding_class_rec; |
| 63 FT_CMap_ClassRec cff_cmap_unicode_class_rec; |
| 64 |
58 } CffModulePIC; | 65 } CffModulePIC; |
59 | 66 |
60 #define GET_PIC(lib) ((CffModulePIC*)((lib)->pic_container
.cff)) | 67 |
61 #define FT_CFF_SERVICE_PS_INFO_GET (GET_PIC(library)->cff_service_ps_inf
o) | 68 #define GET_PIC( lib ) \ |
62 #define FT_CFF_SERVICE_GLYPH_DICT_GET (GET_PIC(library)->cff_service_glyph_
dict) | 69 ( (CffModulePIC*)( (lib)->pic_container.cff ) ) |
63 #define FT_CFF_SERVICE_PS_NAME_GET (GET_PIC(library)->cff_service_ps_nam
e) | 70 |
64 #define FT_CFF_SERVICE_GET_CMAP_INFO_GET (GET_PIC(library)->cff_service_get_cm
ap_info) | 71 #define CFF_SERVICE_PS_INFO_GET \ |
65 #define FT_CFF_SERVICE_CID_INFO_GET (GET_PIC(library)->cff_service_cid_in
fo) | 72 ( GET_PIC( library )->cff_service_ps_info ) |
66 #define FT_CFF_SERVICES_GET (GET_PIC(library)->cff_services) | 73 #define CFF_SERVICE_GLYPH_DICT_GET \ |
67 #define FT_CFF_CMAP_ENCODING_CLASS_REC_GET (GET_PIC(library)->cff_cmap_encoding_
class_rec) | 74 ( GET_PIC( library )->cff_service_glyph_dict ) |
68 #define FT_CFF_CMAP_UNICODE_CLASS_REC_GET (GET_PIC(library)->cff_cmap_unicode_c
lass_rec) | 75 #define CFF_SERVICE_PS_NAME_GET \ |
69 #define FT_CFF_FIELD_HANDLERS_GET (GET_PIC(library)->cff_field_handlers
) | 76 ( GET_PIC( library )->cff_service_ps_name ) |
| 77 #define CFF_SERVICE_GET_CMAP_INFO_GET \ |
| 78 ( GET_PIC( library )->cff_service_get_cmap_info ) |
| 79 #define CFF_SERVICE_CID_INFO_GET \ |
| 80 ( GET_PIC( library )->cff_service_cid_info ) |
| 81 #define CFF_SERVICE_PROPERTIES_GET \ |
| 82 ( GET_PIC( library )->cff_service_properties ) |
| 83 #define CFF_SERVICES_GET \ |
| 84 ( GET_PIC( library )->cff_services ) |
| 85 #define CFF_CMAP_ENCODING_CLASS_REC_GET \ |
| 86 ( GET_PIC( library )->cff_cmap_encoding_class_rec ) |
| 87 #define CFF_CMAP_UNICODE_CLASS_REC_GET \ |
| 88 ( GET_PIC( library )->cff_cmap_unicode_class_rec ) |
| 89 #define CFF_FIELD_HANDLERS_GET \ |
| 90 ( GET_PIC( library )->cff_field_handlers ) |
70 | 91 |
71 /* see cffpic.c for the implementation */ | 92 /* see cffpic.c for the implementation */ |
72 void | 93 void |
73 cff_driver_class_pic_free( FT_Library library ); | 94 cff_driver_class_pic_free( FT_Library library ); |
74 | 95 |
75 FT_Error | 96 FT_Error |
76 cff_driver_class_pic_init( FT_Library library ); | 97 cff_driver_class_pic_init( FT_Library library ); |
77 | 98 |
78 #endif /* FT_CONFIG_OPTION_PIC */ | 99 #endif /* FT_CONFIG_OPTION_PIC */ |
79 | 100 |
80 /* */ | 101 /* */ |
81 | 102 |
82 FT_END_HEADER | 103 FT_END_HEADER |
83 | 104 |
84 #endif /* __CFFPIC_H__ */ | 105 #endif /* __CFFPIC_H__ */ |
85 | 106 |
86 | 107 |
87 /* END */ | 108 /* END */ |
OLD | NEW |