| OLD | NEW |
| 1 /***************************************************************************/ | 1 /***************************************************************************/ |
| 2 /* */ | 2 /* */ |
| 3 /* afpic.h */ | 3 /* afpic.h */ |
| 4 /* */ | 4 /* */ |
| 5 /* The FreeType position independent code services for autofit module. */ | 5 /* The FreeType position independent code services for autofit module. */ |
| 6 /* */ | 6 /* */ |
| 7 /* Copyright 2009, 2011 by */ | 7 /* Copyright 2009, 2011-2012 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 __AFPIC_H__ | 19 #ifndef __AFPIC_H__ |
| 20 #define __AFPIC_H__ | 20 #define __AFPIC_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 | 29 |
| 29 #define AF_SCRIPT_CLASSES_GET af_script_classes | 30 #define AF_SERVICES_GET af_services |
| 30 #define AF_AF_AUTOFITTER_SERVICE_GET af_autofitter_service | 31 #define AF_SERVICE_PROPERTIES_GET af_service_properties |
| 32 |
| 33 #define AF_SCRIPT_CLASSES_GET af_script_classes |
| 34 #define AF_INTERFACE_GET af_autofitter_interface |
| 31 | 35 |
| 32 #else /* FT_CONFIG_OPTION_PIC */ | 36 #else /* FT_CONFIG_OPTION_PIC */ |
| 33 | 37 |
| 38 /* some include files required for members of AFModulePIC */ |
| 39 #include FT_SERVICE_PROPERTIES_H |
| 40 |
| 34 #include "aftypes.h" | 41 #include "aftypes.h" |
| 35 | 42 |
| 36 /* increase these when you add new scripts, */ | 43 /* increase these when you add new scripts, */ |
| 37 /* and update autofit_module_class_pic_init */ | 44 /* and update autofit_module_class_pic_init */ |
| 38 #ifdef FT_OPTION_AUTOFIT2 | 45 #ifdef FT_OPTION_AUTOFIT2 |
| 39 #define AF_SCRIPT_CLASSES_COUNT 6 | 46 #define AF_SCRIPT_CLASSES_COUNT 6 |
| 40 #else | 47 #else |
| 41 #define AF_SCRIPT_CLASSES_COUNT 5 | 48 #define AF_SCRIPT_CLASSES_COUNT 5 |
| 42 #endif | 49 #endif |
| 50 |
| 43 #define AF_SCRIPT_CLASSES_REC_COUNT ( AF_SCRIPT_CLASSES_COUNT - 1 ) | 51 #define AF_SCRIPT_CLASSES_REC_COUNT ( AF_SCRIPT_CLASSES_COUNT - 1 ) |
| 44 | 52 |
| 45 typedef struct AFModulePIC_ | 53 |
| 54 typedef struct AFModulePIC_ |
| 46 { | 55 { |
| 47 AF_ScriptClass af_script_classes[AF_SCRIPT_CLASSES_COUNT]; | 56 FT_ServiceDescRec* af_services; |
| 48 AF_ScriptClassRec af_script_classes_rec[AF_SCRIPT_CLASSES_REC_COUNT]
; | 57 FT_Service_PropertiesRec af_service_properties; |
| 49 FT_AutoHinter_ServiceRec af_autofitter_service; | 58 |
| 59 AF_ScriptClass af_script_classes[AF_SCRIPT_CLASSES_COUNT]; |
| 60 AF_ScriptClassRec af_script_classes_rec[AF_SCRIPT_CLASSES_REC_COUN
T]; |
| 61 FT_AutoHinter_InterfaceRec af_autofitter_interface; |
| 50 | 62 |
| 51 } AFModulePIC; | 63 } AFModulePIC; |
| 52 | 64 |
| 53 #define GET_PIC( lib ) \ | 65 |
| 66 #define GET_PIC( lib ) \ |
| 54 ( (AFModulePIC*)((lib)->pic_container.autofit) ) | 67 ( (AFModulePIC*)((lib)->pic_container.autofit) ) |
| 55 #define AF_SCRIPT_CLASSES_GET \ | 68 |
| 56 ( GET_PIC( FT_FACE_LIBRARY(globals->face) )->af_script_classes ) | 69 #define AF_SERVICES_GET \ |
| 57 #define AF_AF_AUTOFITTER_SERVICE_GET \ | 70 ( GET_PIC( library )->af_services ) |
| 58 ( GET_PIC( library )->af_autofitter_service ) | 71 #define AF_SERVICE_PROPERTIES_GET \ |
| 72 ( GET_PIC( library )->af_service_properties ) |
| 73 |
| 74 #define AF_SCRIPT_CLASSES_GET \ |
| 75 ( GET_PIC( FT_FACE_LIBRARY( globals->face ) )->af_script_classes ) |
| 76 #define AF_INTERFACE_GET \ |
| 77 ( GET_PIC( library )->af_autofitter_interface ) |
| 78 |
| 59 | 79 |
| 60 /* see afpic.c for the implementation */ | 80 /* see afpic.c for the implementation */ |
| 61 void | 81 void |
| 62 autofit_module_class_pic_free( FT_Library library ); | 82 autofit_module_class_pic_free( FT_Library library ); |
| 63 | 83 |
| 64 FT_Error | 84 FT_Error |
| 65 autofit_module_class_pic_init( FT_Library library ); | 85 autofit_module_class_pic_init( FT_Library library ); |
| 66 | 86 |
| 67 #endif /* FT_CONFIG_OPTION_PIC */ | 87 #endif /* FT_CONFIG_OPTION_PIC */ |
| 68 | 88 |
| 69 /* */ | 89 /* */ |
| 70 | 90 |
| 71 FT_END_HEADER | 91 FT_END_HEADER |
| 72 | 92 |
| 73 #endif /* __AFPIC_H__ */ | 93 #endif /* __AFPIC_H__ */ |
| 74 | 94 |
| 75 | 95 |
| 76 /* END */ | 96 /* END */ |
| OLD | NEW |