Home | History | Annotate | Download | only in services
      1 /***************************************************************************/
      2 /*                                                                         */
      3 /*  svttglyf.h                                                             */
      4 /*                                                                         */
      5 /*    The FreeType TrueType glyph service.                                 */
      6 /*                                                                         */
      7 /*  Copyright 2007-2018 by                                                 */
      8 /*  David Turner.                                                          */
      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 #ifndef SVTTGLYF_H_
     19 #define SVTTGLYF_H_
     20 
     21 #include FT_INTERNAL_SERVICE_H
     22 #include FT_TRUETYPE_TABLES_H
     23 
     24 
     25 FT_BEGIN_HEADER
     26 
     27 
     28 #define FT_SERVICE_ID_TT_GLYF  "tt-glyf"
     29 
     30 
     31   typedef FT_ULong
     32   (*TT_Glyf_GetLocationFunc)( FT_Face    face,
     33                               FT_UInt    gindex,
     34                               FT_ULong  *psize );
     35 
     36   FT_DEFINE_SERVICE( TTGlyf )
     37   {
     38     TT_Glyf_GetLocationFunc  get_location;
     39   };
     40 
     41 
     42 #ifndef FT_CONFIG_OPTION_PIC
     43 
     44 #define FT_DEFINE_SERVICE_TTGLYFREC( class_, get_location_ )  \
     45   static const FT_Service_TTGlyfRec  class_ =                 \
     46   {                                                           \
     47     get_location_                                             \
     48   };
     49 
     50 #else /* FT_CONFIG_OPTION_PIC */
     51 
     52 #define FT_DEFINE_SERVICE_TTGLYFREC( class_, get_location_ )  \
     53   void                                                        \
     54   FT_Init_Class_ ## class_( FT_Service_TTGlyfRec*  clazz )    \
     55   {                                                           \
     56     clazz->get_location = get_location_;                      \
     57   }
     58 
     59 #endif /* FT_CONFIG_OPTION_PIC */
     60 
     61   /* */
     62 
     63 
     64 FT_END_HEADER
     65 
     66 #endif /* SVTTGLYF_H_ */
     67 
     68 
     69 /* END */
     70