Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /***************************************************************************/
  2. /*                                                                         */
  3. /*  ttpic.h                                                                */
  4. /*                                                                         */
  5. /*    The FreeType position independent code services for truetype module. */
  6. /*                                                                         */
  7. /*  Copyright 2009, 2012, 2013 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 __TTPIC_H__
  20. #define __TTPIC_H__
  21.  
  22.  
  23. FT_BEGIN_HEADER
  24.  
  25. #ifndef FT_CONFIG_OPTION_PIC
  26.  
  27. #define TT_SERVICES_GET                  tt_services
  28. #define TT_SERVICE_GX_MULTI_MASTERS_GET  tt_service_gx_multi_masters
  29. #define TT_SERVICE_TRUETYPE_GLYF_GET     tt_service_truetype_glyf
  30. #define TT_SERVICE_PROPERTIES_GET        tt_service_properties
  31.  
  32. #else /* FT_CONFIG_OPTION_PIC */
  33.  
  34. #include FT_MULTIPLE_MASTERS_H
  35. #include FT_SERVICE_MULTIPLE_MASTERS_H
  36. #include FT_SERVICE_TRUETYPE_GLYF_H
  37. #include FT_SERVICE_PROPERTIES_H
  38.  
  39.  
  40.   typedef struct  TTModulePIC_
  41.   {
  42.     FT_ServiceDescRec*          tt_services;
  43. #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
  44.     FT_Service_MultiMastersRec  tt_service_gx_multi_masters;
  45. #endif
  46.     FT_Service_TTGlyfRec        tt_service_truetype_glyf;
  47.     FT_Service_PropertiesRec    tt_service_properties;
  48.  
  49.   } TTModulePIC;
  50.  
  51.  
  52. #define GET_PIC( lib )                                      \
  53.           ( (TTModulePIC*)((lib)->pic_container.truetype) )
  54. #define TT_SERVICES_GET                       \
  55.           ( GET_PIC( library )->tt_services )
  56. #define TT_SERVICE_GX_MULTI_MASTERS_GET                       \
  57.           ( GET_PIC( library )->tt_service_gx_multi_masters )
  58. #define TT_SERVICE_TRUETYPE_GLYF_GET                       \
  59.           ( GET_PIC( library )->tt_service_truetype_glyf )
  60. #define TT_SERVICE_PROPERTIES_GET                       \
  61.           ( GET_PIC( library )->tt_service_properties )
  62.  
  63.  
  64.   /* see ttpic.c for the implementation */
  65.   void
  66.   tt_driver_class_pic_free( FT_Library  library );
  67.  
  68.   FT_Error
  69.   tt_driver_class_pic_init( FT_Library  library );
  70.  
  71. #endif /* FT_CONFIG_OPTION_PIC */
  72.  
  73.  /* */
  74.  
  75.  
  76. FT_END_HEADER
  77.  
  78. #endif /* __TTPIC_H__ */
  79.  
  80.  
  81. /* END */
  82.