Home | History | Annotate | Download | only in cff
      1 /***************************************************************************/
      2 /*                                                                         */
      3 /*  cffpic.h                                                               */
      4 /*                                                                         */
      5 /*    The FreeType position independent code services for cff module.      */
      6 /*                                                                         */
      7 /*  Copyright 2009 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 __CFFPIC_H__
     20 #define __CFFPIC_H__
     21 
     22 
     23 FT_BEGIN_HEADER
     24 
     25 #include FT_INTERNAL_PIC_H
     26 
     27 #ifndef FT_CONFIG_OPTION_PIC
     28 #define FT_CFF_SERVICE_PS_INFO_GET         cff_service_ps_info
     29 #define FT_CFF_SERVICE_GLYPH_DICT_GET      cff_service_glyph_dict
     30 #define FT_CFF_SERVICE_PS_NAME_GET         cff_service_ps_name
     31 #define FT_CFF_SERVICE_GET_CMAP_INFO_GET   cff_service_get_cmap_info
     32 #define FT_CFF_SERVICE_CID_INFO_GET        cff_service_cid_info
     33 #define FT_CFF_SERVICES_GET                cff_services
     34 #define FT_CFF_CMAP_ENCODING_CLASS_REC_GET cff_cmap_encoding_class_rec
     35 #define FT_CFF_CMAP_UNICODE_CLASS_REC_GET  cff_cmap_unicode_class_rec
     36 #define FT_CFF_FIELD_HANDLERS_GET          cff_field_handlers
     37 
     38 #else /* FT_CONFIG_OPTION_PIC */
     39 
     40 #include FT_SERVICE_GLYPH_DICT_H
     41 #include "cffparse.h"
     42 #include FT_SERVICE_POSTSCRIPT_INFO_H
     43 #include FT_SERVICE_POSTSCRIPT_NAME_H
     44 #include FT_SERVICE_TT_CMAP_H
     45 #include FT_SERVICE_CID_H
     46 
     47   typedef struct CffModulePIC_
     48   {
     49     FT_ServiceDescRec* cff_services;
     50     CFF_Field_Handler* cff_field_handlers;
     51     FT_Service_PsInfoRec cff_service_ps_info;
     52     FT_Service_GlyphDictRec cff_service_glyph_dict;
     53     FT_Service_PsFontNameRec cff_service_ps_name;
     54     FT_Service_TTCMapsRec  cff_service_get_cmap_info;
     55     FT_Service_CIDRec  cff_service_cid_info;
     56     FT_CMap_ClassRec cff_cmap_encoding_class_rec;
     57     FT_CMap_ClassRec cff_cmap_unicode_class_rec;
     58   } CffModulePIC;
     59 
     60 #define GET_PIC(lib)                       ((CffModulePIC*)((lib)->pic_container.cff))
     61 #define FT_CFF_SERVICE_PS_INFO_GET         (GET_PIC(library)->cff_service_ps_info)
     62 #define FT_CFF_SERVICE_GLYPH_DICT_GET      (GET_PIC(library)->cff_service_glyph_dict)
     63 #define FT_CFF_SERVICE_PS_NAME_GET         (GET_PIC(library)->cff_service_ps_name)
     64 #define FT_CFF_SERVICE_GET_CMAP_INFO_GET   (GET_PIC(library)->cff_service_get_cmap_info)
     65 #define FT_CFF_SERVICE_CID_INFO_GET        (GET_PIC(library)->cff_service_cid_info)
     66 #define FT_CFF_SERVICES_GET                (GET_PIC(library)->cff_services)
     67 #define FT_CFF_CMAP_ENCODING_CLASS_REC_GET (GET_PIC(library)->cff_cmap_encoding_class_rec)
     68 #define FT_CFF_CMAP_UNICODE_CLASS_REC_GET  (GET_PIC(library)->cff_cmap_unicode_class_rec)
     69 #define FT_CFF_FIELD_HANDLERS_GET          (GET_PIC(library)->cff_field_handlers)
     70 
     71 #endif /* FT_CONFIG_OPTION_PIC */
     72 
     73  /* */
     74 
     75 FT_END_HEADER
     76 
     77 #endif /* __CFFPIC_H__ */
     78 
     79 
     80 /* END */
     81