1 /***************************************************************************/ 2 /* */ 3 /* pspic.h */ 4 /* */ 5 /* The FreeType position independent code services for psnames module. */ 6 /* */ 7 /* Copyright 2009-2018 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 PSPIC_H_ 20 #define PSPIC_H_ 21 22 23 #include FT_INTERNAL_PIC_H 24 25 26 #ifndef FT_CONFIG_OPTION_PIC 27 28 #define PSCMAPS_SERVICES_GET pscmaps_services 29 #define PSCMAPS_INTERFACE_GET pscmaps_interface 30 31 #else /* FT_CONFIG_OPTION_PIC */ 32 33 #include FT_SERVICE_POSTSCRIPT_CMAPS_H 34 35 36 FT_BEGIN_HEADER 37 38 typedef struct PSModulePIC_ 39 { 40 FT_ServiceDescRec* pscmaps_services; 41 FT_Service_PsCMapsRec pscmaps_interface; 42 43 } PSModulePIC; 44 45 46 #define GET_PIC( lib ) \ 47 ( (PSModulePIC*)((lib)->pic_container.psnames) ) 48 #define PSCMAPS_SERVICES_GET ( GET_PIC( library )->pscmaps_services ) 49 #define PSCMAPS_INTERFACE_GET ( GET_PIC( library )->pscmaps_interface ) 50 51 52 /* see pspic.c for the implementation */ 53 void 54 psnames_module_class_pic_free( FT_Library library ); 55 56 FT_Error 57 psnames_module_class_pic_init( FT_Library library ); 58 59 FT_END_HEADER 60 61 #endif /* FT_CONFIG_OPTION_PIC */ 62 63 /* */ 64 65 #endif /* PSPIC_H_ */ 66 67 68 /* END */ 69