1ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/***************************************************************************/
2ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*                                                                         */
3ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  ftpic.h                                                                */
4ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*                                                                         */
5ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*    The FreeType position independent code services (declaration).       */
6ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*                                                                         */
7ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  Copyright 2009, 2012 by                                                */
8ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  Oran Agra and Mickey Gabel.                                            */
9ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*                                                                         */
10ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  This file is part of the FreeType project, and may only be used,       */
11ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  modified, and distributed under the terms of the FreeType project      */
12ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  this file you indicate that you have read the license and              */
14ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*  understand and accept it fully.                                        */
15ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/*                                                                         */
16ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/***************************************************************************/
17ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
18ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*************************************************************************/
19ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*                                                                       */
20ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*  Modules that ordinarily have const global data that need address     */
21ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*  can instead define pointers here.                                    */
22ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*                                                                       */
23ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /*************************************************************************/
24ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
25ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
26ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#ifndef __FTPIC_H__
27ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#define __FTPIC_H__
28ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
29ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
30ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovFT_BEGIN_HEADER
31ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
32ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#ifdef FT_CONFIG_OPTION_PIC
33ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
34ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  typedef struct  FT_PIC_Container_
35ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  {
36ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    /* pic containers for base */
37ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  base;
38ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
39ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    /* pic containers for modules */
40ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  autofit;
41ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  cff;
42ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  pshinter;
43ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  psnames;
44ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  raster;
45ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  sfnt;
46ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  smooth;
47ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov    void*  truetype;
48ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
49ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  } FT_PIC_Container;
50ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
51ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
52ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /* Initialize the various function tables, structs, etc. */
53ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /* stored in the container.                              */
54ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  FT_BASE( FT_Error )
55ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  ft_pic_container_init( FT_Library  library );
56ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
57ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
58ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  /* Destroy the contents of the container. */
59ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  FT_BASE( void )
60ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov  ft_pic_container_destroy( FT_Library  library );
61ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
62ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif /* FT_CONFIG_OPTION_PIC */
63ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
64ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov /* */
65ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
66ee451cb395940862dad63c85adfe8f2fd55e864cSvet GanovFT_END_HEADER
67ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
68ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif /* __FTPIC_H__ */
69ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
70ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov
71ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/* END */
72