zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
svpsinfo.h
Go to the documentation of this file.
1 /***************************************************************************/
2 /* */
3 /* svpsinfo.h */
4 /* */
5 /* The FreeType PostScript info service (specification). */
6 /* */
7 /* Copyright 2003, 2004, 2009, 2011, 2012 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 __SVPSINFO_H__
20 #define __SVPSINFO_H__
21 
22 #include FT_INTERNAL_SERVICE_H
23 #include FT_INTERNAL_TYPE1_TYPES_H
24 
25 
27 
28 
29 #define FT_SERVICE_ID_POSTSCRIPT_INFO "postscript-info"
30 
31 
32  typedef FT_Error
34  PS_FontInfoRec* afont_info );
35 
36  typedef FT_Error
38  PS_FontExtraRec* afont_extra );
39 
40  typedef FT_Int
42 
43  typedef FT_Error
45  PS_PrivateRec* afont_private );
46 
47  typedef FT_Long
49  PS_Dict_Keys key,
50  FT_UInt idx,
51  void *value,
52  FT_Long value_len );
53 
54 
56  {
57  PS_GetFontInfoFunc ps_get_font_info;
58  PS_GetFontExtraFunc ps_get_font_extra;
59  PS_HasGlyphNamesFunc ps_has_glyph_names;
60  PS_GetFontPrivateFunc ps_get_font_private;
61  PS_GetFontValueFunc ps_get_font_value;
62  };
63 
64 
65 #ifndef FT_CONFIG_OPTION_PIC
66 
67 #define FT_DEFINE_SERVICE_PSINFOREC( class_, \
68  get_font_info_, \
69  ps_get_font_extra_, \
70  has_glyph_names_, \
71  get_font_private_, \
72  get_font_value_ ) \
73  static const FT_Service_PsInfoRec class_ = \
74  { \
75  get_font_info_, ps_get_font_extra_, has_glyph_names_, \
76  get_font_private_, get_font_value_ \
77  };
78 
79 #else /* FT_CONFIG_OPTION_PIC */
80 
81 #define FT_DEFINE_SERVICE_PSINFOREC( class_, \
82  get_font_info_, \
83  ps_get_font_extra_, \
84  has_glyph_names_, \
85  get_font_private_, \
86  get_font_value_ ) \
87  void \
88  FT_Init_Class_ ## class_( FT_Library library, \
89  FT_Service_PsInfoRec* clazz ) \
90  { \
91  FT_UNUSED( library ); \
92  \
93  clazz->ps_get_font_info = get_font_info_; \
94  clazz->ps_get_font_extra = ps_get_font_extra_; \
95  clazz->ps_has_glyph_names = has_glyph_names_; \
96  clazz->ps_get_font_private = get_font_private_; \
97  clazz->ps_get_font_value = get_font_value_; \
98  }
99 
100 #endif /* FT_CONFIG_OPTION_PIC */
101 
102  /* */
103 
104 
106 
107 
108 #endif /* __SVPSINFO_H__ */
109 
110 
111 /* END */
int FT_Error
Definition: fttypes.h:296
#define FT_DEFINE_SERVICE(name)
Definition: ftserv.h:650
enum PS_Dict_Keys_ PS_Dict_Keys
signed long FT_Long
Definition: fttypes.h:238
#define FT_END_HEADER
Definition: ftheader.h:54
signed int FT_Int
Definition: fttypes.h:216
FT_Long(* PS_GetFontValueFunc)(FT_Face face, PS_Dict_Keys key, FT_UInt idx, void *value, FT_Long value_len)
Definition: svpsinfo.h:48
FT_Int(* PS_HasGlyphNamesFunc)(FT_Face face)
Definition: svpsinfo.h:41
FT_Error(* PS_GetFontExtraFunc)(FT_Face face, PS_FontExtraRec *afont_extra)
Definition: svpsinfo.h:37
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
FT_Error(* PS_GetFontPrivateFunc)(FT_Face face, PS_PrivateRec *afont_private)
Definition: svpsinfo.h:44
FT_UInt idx
Definition: cffcmap.c:125
FT_Error(* PS_GetFontInfoFunc)(FT_Face face, PS_FontInfoRec *afont_info)
Definition: svpsinfo.h:33
GLenum face
Definition: gl2ext.h:1490
EGLSurface EGLint void ** value
Definition: eglext.h:301
unsigned int FT_UInt
Definition: fttypes.h:227
FT_BEGIN_HEADER struct PS_FontInfoRec_ PS_FontInfoRec