1 /***************************************************************************/
2 /*                                                                         */
3 /*  svttglyf.h                                                             */
4 /*                                                                         */
5 /*    The FreeType TrueType glyph service.                                 */
6 /*                                                                         */
7 /*  Copyright 2007, 2009, 2012 by David Turner.                            */
8 /*                                                                         */
9 /*  This file is part of the FreeType project, and may only be used,       */
10 /*  modified, and distributed under the terms of the FreeType project      */
11 /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
12 /*  this file you indicate that you have read the license and              */
13 /*  understand and accept it fully.                                        */
14 /*                                                                         */
15 /***************************************************************************/
16 
17 #ifndef __SVTTGLYF_H__
18 #define __SVTTGLYF_H__
19 
20 #include FT_INTERNAL_SERVICE_H
21 #include FT_TRUETYPE_TABLES_H
22 
23 
24 FT_BEGIN_HEADER
25 
26 
27 #define FT_SERVICE_ID_TT_GLYF  "tt-glyf"
28 
29 
30   typedef FT_ULong
31   (*TT_Glyf_GetLocationFunc)( FT_Face    face,
32                               FT_UInt    gindex,
33                               FT_ULong  *psize );
34 
FT_DEFINE_SERVICE(TTGlyf)35   FT_DEFINE_SERVICE( TTGlyf )
36   {
37     TT_Glyf_GetLocationFunc  get_location;
38   };
39 
40 
41 #ifndef FT_CONFIG_OPTION_PIC
42 
43 #define FT_DEFINE_SERVICE_TTGLYFREC( class_, get_location_ )  \
44   static const FT_Service_TTGlyfRec  class_ =                 \
45   {                                                           \
46     get_location_                                             \
47   };
48 
49 #else /* FT_CONFIG_OPTION_PIC */
50 
51 #define FT_DEFINE_SERVICE_TTGLYFREC( class_, get_location_ )  \
52   void                                                        \
53   FT_Init_Class_ ## class_( FT_Service_TTGlyfRec*  clazz )    \
54   {                                                           \
55     clazz->get_location = get_location_;                      \
56   }
57 
58 #endif /* FT_CONFIG_OPTION_PIC */
59 
60   /* */
61 
62 
63 FT_END_HEADER
64 
65 #endif /* __SVTTGLYF_H__ */
66 
67 
68 /* END */
69