zenilib: zenilib/jni/external/freetype2/include/freetype/internal/services/svmm.h Source File

zenilib 0.5.3.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
svmm.h
Go to the documentation of this file.
1 /***************************************************************************/
2 /* */
3 /* svmm.h */
4 /* */
5 /* The FreeType Multiple Masters and GX var services (specification). */
6 /* */
7 /* Copyright 2003, 2004, 2009, 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 __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 #ifndef FT_CONFIG_OPTION_PIC
73
74 #define FT_DEFINE_SERVICE_MULTIMASTERSREC( class_, \
75 get_mm_, \
76 set_mm_design_, \
77 set_mm_blend_, \
78 get_mm_var_, \
79 set_var_design_ ) \
80 static const FT_Service_MultiMastersRec class_ = \
81 { \
82 get_mm_, set_mm_design_, set_mm_blend_, get_mm_var_, set_var_design_ \
83 };
84
85 #else /* FT_CONFIG_OPTION_PIC */
86
87 #define FT_DEFINE_SERVICE_MULTIMASTERSREC( class_, \
88 get_mm_, \
89 set_mm_design_, \
90 set_mm_blend_, \
91 get_mm_var_, \
92 set_var_design_ ) \
93 void \
94 FT_Init_Class_ ## class_( FT_Service_MultiMastersRec* clazz ) \
95 { \
96 clazz->get_mm = get_mm_; \
97 clazz->set_mm_design = set_mm_design_; \
98 clazz->set_mm_blend = set_mm_blend_; \
99 clazz->get_mm_var = get_mm_var_; \
100 clazz->set_var_design = set_var_design_; \
101 }
102
103 #endif /* FT_CONFIG_OPTION_PIC */
104
105 /* */
106
107
108 FT_END_HEADER
109
110 #endif /* __SVMM_H__ */
111
112
113 /* END */
FT_Error
int FT_Error
Definition: fttypes.h:296
FT_DEFINE_SERVICE
#define FT_DEFINE_SERVICE(name)
Definition: ftserv.h:650
FT_Long
signed long FT_Long
Definition: fttypes.h:238
FT_END_HEADER
#define FT_END_HEADER
Definition: ftheader.h:54
coords
GLenum GLuint coords
Definition: glew.h:7189
FT_Get_MM_Func
FT_Error(* FT_Get_MM_Func)(FT_Face face, FT_Multi_Master *master)
Definition: svmm.h:39
FT_BEGIN_HEADER
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
FT_MM_Var_
Definition: ftmm.h:210
FT_Multi_Master_
Definition: ftmm.h:103
FT_FaceRec_
Definition: freetype.h:912
FT_Set_MM_Design_Func
FT_Error(* FT_Set_MM_Design_Func)(FT_Face face, FT_UInt num_coords, FT_Long *coords)
Definition: svmm.h:47
FT_Get_MM_Var_Func
FT_Error(* FT_Get_MM_Var_Func)(FT_Face face, FT_MM_Var **master)
Definition: svmm.h:43
face
GLenum face
Definition: gl2ext.h:1490
FT_Set_Var_Design_Func
FT_Error(* FT_Set_Var_Design_Func)(FT_Face face, FT_UInt num_coords, FT_Fixed *coords)
Definition: svmm.h:52
FT_Fixed
signed long FT_Fixed
Definition: fttypes.h:284
FT_UInt
unsigned int FT_UInt
Definition: fttypes.h:227
FT_Set_MM_Blend_Func
FT_Error(* FT_Set_MM_Blend_Func)(FT_Face face, FT_UInt num_coords, FT_Long *coords)
Definition: svmm.h:57