1 | /***************************************************************************/
|
---|
2 | /* */
|
---|
3 | /* svmm.h */
|
---|
4 | /* */
|
---|
5 | /* The FreeType Multiple Masters and GX var services (specification). */
|
---|
6 | /* */
|
---|
7 | /* Copyright 2003, 2004 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 __SVMM_H__
|
---|
20 | #define __SVMM_H__
|
---|
21 |
|
---|
22 | #include FT_INTERNAL_SERVICE_H
|
---|
23 |
|
---|
24 |
|
---|
25 | FT_BEGIN_HEADER
|
---|
26 |
|
---|
27 |
|
---|
28 | /*
|
---|
29 | * A service used to manage multiple-masters data in a given face.
|
---|
30 | *
|
---|
31 | * See the related APIs in `ftmm.h' (FT_MULTIPLE_MASTERS_H).
|
---|
32 | *
|
---|
33 | */
|
---|
34 |
|
---|
35 | #define FT_SERVICE_ID_MULTI_MASTERS "multi-masters"
|
---|
36 |
|
---|
37 |
|
---|
38 | typedef FT_Error
|
---|
39 | (*FT_Get_MM_Func)( FT_Face face,
|
---|
40 | FT_Multi_Master* master );
|
---|
41 |
|
---|
42 | typedef FT_Error
|
---|
43 | (*FT_Get_MM_Var_Func)( FT_Face face,
|
---|
44 | FT_MM_Var* *master );
|
---|
45 |
|
---|
46 | typedef FT_Error
|
---|
47 | (*FT_Set_MM_Design_Func)( FT_Face face,
|
---|
48 | FT_UInt num_coords,
|
---|
49 | FT_Long* coords );
|
---|
50 |
|
---|
51 | typedef FT_Error
|
---|
52 | (*FT_Set_Var_Design_Func)( FT_Face face,
|
---|
53 | FT_UInt num_coords,
|
---|
54 | FT_Fixed* coords );
|
---|
55 |
|
---|
56 | typedef FT_Error
|
---|
57 | (*FT_Set_MM_Blend_Func)( FT_Face face,
|
---|
58 | FT_UInt num_coords,
|
---|
59 | FT_Long* coords );
|
---|
60 |
|
---|
61 |
|
---|
62 | FT_DEFINE_SERVICE( MultiMasters )
|
---|
63 | {
|
---|
64 | FT_Get_MM_Func get_mm;
|
---|
65 | FT_Set_MM_Design_Func set_mm_design;
|
---|
66 | FT_Set_MM_Blend_Func set_mm_blend;
|
---|
67 | FT_Get_MM_Var_Func get_mm_var;
|
---|
68 | FT_Set_Var_Design_Func set_var_design;
|
---|
69 | };
|
---|
70 |
|
---|
71 | /* */
|
---|
72 |
|
---|
73 |
|
---|
74 | FT_END_HEADER
|
---|
75 |
|
---|
76 | #endif /* __SVMM_H__ */
|
---|
77 |
|
---|
78 |
|
---|
79 | /* END */
|
---|