blob: 84de0fee9e3838b8d45fde369c1add49d7ac71ec [file] [log] [blame]
Oran Agra2e7a4e92009-04-05 18:03:02 +03001/***************************************************************************/
2/* */
3/* ttpic.h */
4/* */
5/* The FreeType position independent code services for truetype module. */
6/* */
7/* Copyright 2009 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 __TTPIC_H__
20#define __TTPIC_H__
21
22
23FT_BEGIN_HEADER
24
25#ifndef FT_CONFIG_OPTION_PIC
26#define FT_TT_SERVICES_GET tt_services
27#define FT_TT_SERVICE_GX_MULTI_MASTERS_GET tt_service_gx_multi_masters
28#define FT_TT_SERVICE_TRUETYPE_GLYF_GET tt_service_truetype_glyf
29
30#else /* FT_CONFIG_OPTION_PIC */
31
32#include FT_MULTIPLE_MASTERS_H
33#include FT_SERVICE_MULTIPLE_MASTERS_H
34#include FT_SERVICE_TRUETYPE_GLYF_H
35
36 typedef struct TTModulePIC_
37 {
38 FT_ServiceDescRec* tt_services;
39#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
40 FT_Service_MultiMastersRec tt_service_gx_multi_masters;
41#endif
42 FT_Service_TTGlyfRec tt_service_truetype_glyf;
43 } TTModulePIC;
44
45#define GET_PIC(lib) ((TTModulePIC*)((lib)->pic_container.truetype))
46#define FT_TT_SERVICES_GET (GET_PIC(library)->tt_services)
47#define FT_TT_SERVICE_GX_MULTI_MASTERS_GET (GET_PIC(library)->tt_service_gx_multi_masters)
48#define FT_TT_SERVICE_TRUETYPE_GLYF_GET (GET_PIC(library)->tt_service_truetype_glyf)
49
50#endif /* FT_CONFIG_OPTION_PIC */
51
52 /* */
53
54FT_END_HEADER
55
56#endif /* __TTPIC_H__ */
57
58
59/* END */