1 /***************************************************************************/ |
|
2 /* */ |
|
3 /* svbdf.h */ |
|
4 /* */ |
|
5 /* The FreeType BDF services (specification). */ |
|
6 /* */ |
|
7 /* Copyright 2003 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 __SVBDF_H__ |
|
20 #define __SVBDF_H__ |
|
21 |
|
22 #include FT_BDF_H |
|
23 #include FT_INTERNAL_SERVICE_H |
|
24 |
|
25 |
|
26 FT_BEGIN_HEADER |
|
27 |
|
28 |
|
29 #define FT_SERVICE_ID_BDF "bdf" |
|
30 |
|
31 typedef FT_Error |
|
32 (*FT_BDF_GetCharsetIdFunc)( FT_Face face, |
|
33 const char* *acharset_encoding, |
|
34 const char* *acharset_registry ); |
|
35 |
|
36 typedef FT_Error |
|
37 (*FT_BDF_GetPropertyFunc)( FT_Face face, |
|
38 const char* prop_name, |
|
39 BDF_PropertyRec *aproperty ); |
|
40 |
|
41 |
|
42 FT_DEFINE_SERVICE( BDF ) |
|
43 { |
|
44 FT_BDF_GetCharsetIdFunc get_charset_id; |
|
45 FT_BDF_GetPropertyFunc get_property; |
|
46 }; |
|
47 |
|
48 #ifndef FT_CONFIG_OPTION_PIC |
|
49 |
|
50 #define FT_DEFINE_SERVICE_BDFRec(class_, get_charset_id_, get_property_) \ |
|
51 static const FT_Service_BDFRec class_ = \ |
|
52 { \ |
|
53 get_charset_id_, get_property_ \ |
|
54 }; |
|
55 |
|
56 #else /* FT_CONFIG_OPTION_PIC */ |
|
57 |
|
58 #define FT_DEFINE_SERVICE_BDFRec(class_, get_charset_id_, get_property_) \ |
|
59 void \ |
|
60 FT_Init_Class_##class_( FT_Service_BDFRec* clazz ) \ |
|
61 { \ |
|
62 clazz->get_charset_id = get_charset_id_; \ |
|
63 clazz->get_property = get_property_; \ |
|
64 } |
|
65 |
|
66 #endif /* FT_CONFIG_OPTION_PIC */ |
|
67 |
|
68 /* */ |
|
69 |
|
70 |
|
71 FT_END_HEADER |
|
72 |
|
73 |
|
74 #endif /* __SVBDF_H__ */ |
|
75 |
|
76 |
|
77 /* END */ |
|