Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. /***************************************************************************/
  2. /*                                                                         */
  3. /*  svpostnm.h                                                             */
  4. /*                                                                         */
  5. /*    The FreeType PostScript name services (specification).               */
  6. /*                                                                         */
  7. /*  Copyright 2003, 2007 by                                                */
  8. /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
  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 __SVPOSTNM_H__
  20. #define __SVPOSTNM_H__
  21.  
  22. #include FT_INTERNAL_SERVICE_H
  23.  
  24.  
  25. FT_BEGIN_HEADER
  26.  
  27.   /*
  28.    *  A trivial service used to retrieve the PostScript name of a given
  29.    *  font when available.  The `get_name' field should never be NULL.
  30.    *
  31.    *  The corresponding function can return NULL to indicate that the
  32.    *  PostScript name is not available.
  33.    *
  34.    *  The name is owned by the face and will be destroyed with it.
  35.    */
  36.  
  37. #define FT_SERVICE_ID_POSTSCRIPT_FONT_NAME  "postscript-font-name"
  38.  
  39.  
  40.   typedef const char*
  41.   (*FT_PsName_GetFunc)( FT_Face  face );
  42.  
  43.  
  44.   FT_DEFINE_SERVICE( PsFontName )
  45.   {
  46.     FT_PsName_GetFunc  get_ps_font_name;
  47.   };
  48.  
  49. #ifndef FT_CONFIG_OPTION_PIC
  50.  
  51. #define FT_DEFINE_SERVICE_PSFONTNAMEREC(class_, get_ps_font_name_) \
  52.   static const FT_Service_PsFontNameRec class_ =                   \
  53.   {                                                                \
  54.     get_ps_font_name_                                              \
  55.   };
  56.  
  57. #else /* FT_CONFIG_OPTION_PIC */
  58.  
  59. #define FT_DEFINE_SERVICE_PSFONTNAMEREC(class_, get_ps_font_name_) \
  60.   void                                                             \
  61.   FT_Init_Class_##class_( FT_Library library,                      \
  62.                           FT_Service_PsFontNameRec* clazz)         \
  63.   {                                                                \
  64.     FT_UNUSED(library);                                            \
  65.     clazz->get_ps_font_name = get_ps_font_name_;                   \
  66.   }
  67.  
  68. #endif /* FT_CONFIG_OPTION_PIC */
  69.  
  70.   /* */
  71.  
  72.  
  73. FT_END_HEADER
  74.  
  75.  
  76. #endif /* __SVPOSTNM_H__ */
  77.  
  78.  
  79. /* END */
  80.