Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4680 | right-hear | 1 | /***************************************************************************/ |
2 | /* */ |
||
3 | /* svpsinfo.h */ |
||
4 | /* */ |
||
5 | /* The FreeType PostScript info service (specification). */ |
||
6 | /* */ |
||
7 | /* Copyright 2003, 2004, 2009 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 | |||
26 | FT_BEGIN_HEADER |
||
27 | |||
28 | |||
29 | #define FT_SERVICE_ID_POSTSCRIPT_INFO "postscript-info" |
||
30 | |||
31 | |||
32 | typedef FT_Error |
||
33 | (*PS_GetFontInfoFunc)( FT_Face face, |
||
34 | PS_FontInfoRec* afont_info ); |
||
35 | |||
36 | typedef FT_Error |
||
37 | (*PS_GetFontExtraFunc)( FT_Face face, |
||
38 | PS_FontExtraRec* afont_extra ); |
||
39 | |||
40 | typedef FT_Int |
||
41 | (*PS_HasGlyphNamesFunc)( FT_Face face ); |
||
42 | |||
43 | typedef FT_Error |
||
44 | (*PS_GetFontPrivateFunc)( FT_Face face, |
||
45 | PS_PrivateRec* afont_private ); |
||
46 | |||
47 | |||
48 | FT_DEFINE_SERVICE( PsInfo ) |
||
49 | { |
||
50 | PS_GetFontInfoFunc ps_get_font_info; |
||
51 | PS_GetFontExtraFunc ps_get_font_extra; |
||
52 | PS_HasGlyphNamesFunc ps_has_glyph_names; |
||
53 | PS_GetFontPrivateFunc ps_get_font_private; |
||
54 | }; |
||
55 | |||
56 | #ifndef FT_CONFIG_OPTION_PIC |
||
57 | |||
58 | #define FT_DEFINE_SERVICE_PSINFOREC(class_, get_font_info_, \ |
||
59 | ps_get_font_extra_, has_glyph_names_, get_font_private_) \ |
||
60 | static const FT_Service_PsInfoRec class_ = \ |
||
61 | { \ |
||
62 | get_font_info_, ps_get_font_extra_, has_glyph_names_, \ |
||
63 | get_font_private_ \ |
||
64 | }; |
||
65 | |||
66 | #else /* FT_CONFIG_OPTION_PIC */ |
||
67 | |||
68 | #define FT_DEFINE_SERVICE_PSINFOREC(class_, get_font_info_, \ |
||
69 | ps_get_font_extra_, has_glyph_names_, get_font_private_) \ |
||
70 | void \ |
||
71 | FT_Init_Class_##class_( FT_Library library, \ |
||
72 | FT_Service_PsInfoRec* clazz) \ |
||
73 | { \ |
||
74 | FT_UNUSED(library); \ |
||
75 | clazz->ps_get_font_info = get_font_info_; \ |
||
76 | clazz->ps_get_font_extra = ps_get_font_extra_; \ |
||
77 | clazz->ps_has_glyph_names = has_glyph_names_; \ |
||
78 | clazz->ps_get_font_private = get_font_private_; \ |
||
79 | } |
||
80 | |||
81 | #endif /* FT_CONFIG_OPTION_PIC */ |
||
82 | |||
83 | /* */ |
||
84 | |||
85 | |||
86 | FT_END_HEADER |
||
87 | |||
88 | |||
89 | #endif /* __SVPSINFO_H__ */ |
||
90 | |||
91 | |||
92 | /* END */ |