1 /***************************************************************************/
   2 /*                                                                         */
   3 /*  ftpic.h                                                                */
   4 /*                                                                         */
   5 /*    The FreeType position independent code services (declaration).       */
   6 /*                                                                         */
   7 /*  Copyright 2009-2018 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   /*                                                                       */
  20   /*  Modules that ordinarily have const global data that need address     */
  21   /*  can instead define pointers here.                                    */
  22   /*                                                                       */
  23   /*************************************************************************/
  24 
  25 
  26 #ifndef FTPIC_H_
  27 #define FTPIC_H_
  28 
  29 
  30 FT_BEGIN_HEADER
  31 
  32 #ifdef FT_CONFIG_OPTION_PIC
  33 
  34   typedef struct  FT_PIC_Container_
  35   {
  36     /* pic containers for base */
  37     void*  base;
  38 
  39     /* pic containers for modules */
  40     void*  autofit;
  41     void*  cff;
  42     void*  pshinter;
  43     void*  psnames;
  44     void*  raster;
  45     void*  sfnt;
  46     void*  smooth;
  47     void*  truetype;
  48 
  49   } FT_PIC_Container;
  50 
  51 
  52   /* Initialize the various function tables, structs, etc. */
  53   /* stored in the container.                              */
  54   FT_BASE( FT_Error )
  55   ft_pic_container_init( FT_Library  library );
  56 
  57 
  58   /* Destroy the contents of the container. */
  59   FT_BASE( void )
  60   ft_pic_container_destroy( FT_Library  library );
  61 
  62 #endif /* FT_CONFIG_OPTION_PIC */
  63 
  64  /* */
  65 
  66 FT_END_HEADER
  67 
  68 #endif /* FTPIC_H_ */
  69 
  70 
  71 /* END */