ReactOS  0.4.15-dev-1177-g6cb3b62
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-2018 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
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:300
enum PS_Dict_Keys_ PS_Dict_Keys
signed long FT_Long
Definition: fttypes.h:242
#define FT_END_HEADER
Definition: ftheader.h:54
signed int FT_Int
Definition: fttypes.h:220
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
unsigned int idx
Definition: utils.c:41
FT_Long(* PS_GetFontValueFunc)(FT_Face face, PS_Dict_Keys key, FT_UInt idx, void *value, FT_Long value_len)
Definition: svpsinfo.h:48
WORD face[3]
Definition: mesh.c:4747
FT_Error(* PS_GetFontExtraFunc)(FT_Face face, PS_FontExtraRec *afont_extra)
Definition: svpsinfo.h:37
HKEY key
Definition: reg.c:42
GLsizei const GLfloat * value
Definition: glext.h:6069
unsigned int FT_UInt
Definition: fttypes.h:231
FT_DEFINE_SERVICE(PsInfo)
Definition: svpsinfo.h:55
FT_BEGIN_HEADER struct PS_FontInfoRec_ PS_FontInfoRec
FT_Int(* PS_HasGlyphNamesFunc)(FT_Face face)
Definition: svpsinfo.h:41
FT_Error(* PS_GetFontPrivateFunc)(FT_Face face, PS_PrivateRec *afont_private)
Definition: svpsinfo.h:44
FT_Error(* PS_GetFontInfoFunc)(FT_Face face, PS_FontInfoRec *afont_info)
Definition: svpsinfo.h:33