1 /***************************************************************************/ 2 /* */ 3 /* svttglyf.h */ 4 /* */ 5 /* The FreeType TrueType glyph service. */ 6 /* */ 7 /* Copyright 2007 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 35 FT_DEFINE_SERVICE( TTGlyf ) 36 { 37 TT_Glyf_GetLocationFunc get_location; 38 }; 39 40 #ifndef FT_CONFIG_OPTION_PIC 41 42 #define FT_DEFINE_SERVICE_TTGLYFREC(class_, get_location_ ) \ 43 static const FT_Service_TTGlyfRec class_ = \ 44 { \ 45 get_location_ \ 46 }; 47 48 #else /* FT_CONFIG_OPTION_PIC */ 49 50 #define FT_DEFINE_SERVICE_TTGLYFREC(class_, get_location_ ) \ 51 void \ 52 FT_Init_Class_##class_( FT_Service_TTGlyfRec* clazz ) \ 53 { \ 54 clazz->get_location = get_location_; \ 55 } 56 57 #endif /* FT_CONFIG_OPTION_PIC */ 58 59 /* */ 60 61 62 FT_END_HEADER 63 64 #endif /* __SVTTGLYF_H__ */ 65 66 67 /* END */ 68