svttglyf.h revision ec0bab5697bb31ba980810145f62e3799946ec60
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
24FT_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
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
63FT_END_HEADER
64
65#endif /* __SVTTGLYF_H__ */
66
67
68/* END */
69