[FREETYPE]
[reactos.git] / reactos / lib / 3rdparty / freetype / src / type42 / t42objs.h
1 /***************************************************************************/
2 /* */
3 /* t42objs.h */
4 /* */
5 /* Type 42 objects manager (specification). */
6 /* */
7 /* Copyright 2002, 2003, 2006, 2007, 2011 by Roberto Alameda. */
8 /* */
9 /* This file is part of the FreeType project, and may only be used, */
10 /* modified, and distributed under the terms of the FreeType project */
11 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
12 /* this file you indicate that you have read the license and */
13 /* understand and accept it fully. */
14 /* */
15 /***************************************************************************/
16
17
18 #ifndef __T42OBJS_H__
19 #define __T42OBJS_H__
20
21 #include <ft2build.h>
22 #include FT_FREETYPE_H
23 #include FT_TYPE1_TABLES_H
24 #include FT_INTERNAL_TYPE1_TYPES_H
25 #include "t42types.h"
26 #include FT_INTERNAL_OBJECTS_H
27 #include FT_INTERNAL_DRIVER_H
28 #include FT_SERVICE_POSTSCRIPT_CMAPS_H
29 #include FT_INTERNAL_POSTSCRIPT_HINTS_H
30
31
32 FT_BEGIN_HEADER
33
34
35 /* Type42 size */
36 typedef struct T42_SizeRec_
37 {
38 FT_SizeRec root;
39 FT_Size ttsize;
40
41 } T42_SizeRec, *T42_Size;
42
43
44 /* Type42 slot */
45 typedef struct T42_GlyphSlotRec_
46 {
47 FT_GlyphSlotRec root;
48 FT_GlyphSlot ttslot;
49
50 } T42_GlyphSlotRec, *T42_GlyphSlot;
51
52
53 /* Type 42 driver */
54 typedef struct T42_DriverRec_
55 {
56 FT_DriverRec root;
57 FT_Driver_Class ttclazz;
58 void* extension_component;
59
60 } T42_DriverRec, *T42_Driver;
61
62
63 /* */
64
65
66 FT_LOCAL( FT_Error )
67 T42_Face_Init( FT_Stream stream,
68 FT_Face face,
69 FT_Int face_index,
70 FT_Int num_params,
71 FT_Parameter* params );
72
73
74 FT_LOCAL( void )
75 T42_Face_Done( FT_Face face );
76
77
78 FT_LOCAL( FT_Error )
79 T42_Size_Init( FT_Size size );
80
81
82 FT_LOCAL( FT_Error )
83 T42_Size_Request( FT_Size size,
84 FT_Size_Request req );
85
86
87 FT_LOCAL( FT_Error )
88 T42_Size_Select( FT_Size size,
89 FT_ULong strike_index );
90
91
92 FT_LOCAL( void )
93 T42_Size_Done( FT_Size size );
94
95
96 FT_LOCAL( FT_Error )
97 T42_GlyphSlot_Init( FT_GlyphSlot slot );
98
99
100 FT_LOCAL( FT_Error )
101 T42_GlyphSlot_Load( FT_GlyphSlot glyph,
102 FT_Size size,
103 FT_UInt glyph_index,
104 FT_Int32 load_flags );
105
106 FT_LOCAL( void )
107 T42_GlyphSlot_Done( FT_GlyphSlot slot );
108
109
110 FT_LOCAL( FT_Error )
111 T42_Driver_Init( FT_Module module );
112
113 FT_LOCAL( void )
114 T42_Driver_Done( FT_Module module );
115
116 /* */
117
118 FT_END_HEADER
119
120
121 #endif /* __T42OBJS_H__ */
122
123
124 /* END */