zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
afpic.h
Go to the documentation of this file.
1 /***************************************************************************/
2 /* */
3 /* afpic.h */
4 /* */
5 /* The FreeType position independent code services for autofit module. */
6 /* */
7 /* Copyright 2009, 2011 by */
8 /* Oran Agra and Mickey Gabel. */
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 __AFPIC_H__
20 #define __AFPIC_H__
21 
22 
24 
25 #include FT_INTERNAL_PIC_H
26 
27 #ifndef FT_CONFIG_OPTION_PIC
28 
29 #define AF_SCRIPT_CLASSES_GET af_script_classes
30 #define AF_AF_AUTOFITTER_SERVICE_GET af_autofitter_service
31 
32 #else /* FT_CONFIG_OPTION_PIC */
33 
34 #include "aftypes.h"
35 
36  /* increase these when you add new scripts, */
37  /* and update autofit_module_class_pic_init */
38 #ifdef FT_OPTION_AUTOFIT2
39 #define AF_SCRIPT_CLASSES_COUNT 6
40 #else
41 #define AF_SCRIPT_CLASSES_COUNT 5
42 #endif
43 #define AF_SCRIPT_CLASSES_REC_COUNT ( AF_SCRIPT_CLASSES_COUNT - 1 )
44 
45  typedef struct AFModulePIC_
46  {
47  AF_ScriptClass af_script_classes[AF_SCRIPT_CLASSES_COUNT];
48  AF_ScriptClassRec af_script_classes_rec[AF_SCRIPT_CLASSES_REC_COUNT];
49  FT_AutoHinter_ServiceRec af_autofitter_service;
50 
51  } AFModulePIC;
52 
53 #define GET_PIC( lib ) \
54  ( (AFModulePIC*)((lib)->pic_container.autofit) )
55 #define AF_SCRIPT_CLASSES_GET \
56  ( GET_PIC( FT_FACE_LIBRARY(globals->face) )->af_script_classes )
57 #define AF_AF_AUTOFITTER_SERVICE_GET \
58  ( GET_PIC( library )->af_autofitter_service )
59 
60  /* see afpic.c for the implementation */
61  void
62  autofit_module_class_pic_free( FT_Library library );
63 
64  FT_Error
65  autofit_module_class_pic_init( FT_Library library );
66 
67 #endif /* FT_CONFIG_OPTION_PIC */
68 
69  /* */
70 
72 
73 #endif /* __AFPIC_H__ */
74 
75 
76 /* END */
int FT_Error
Definition: fttypes.h:296
#define FT_END_HEADER
Definition: ftheader.h:54
FT_Library library
Definition: cffdrivr.c:409
#define FT_BEGIN_HEADER
Definition: ftheader.h:36
struct AF_ScriptClassRec_ const * AF_ScriptClass
Definition: aftypes.h:247
static AF_ScriptClass const af_script_classes[]
Definition: afglobal.c:38