1 /***************************************************************************/
   2 /*                                                                         */
   3 /*  ftspic.h                                                               */
   4 /*                                                                         */
   5 /*    The FreeType position independent code services for smooth module.   */
   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 #ifndef FTSPIC_H_
  20 #define FTSPIC_H_
  21 
  22 
  23 #include FT_INTERNAL_PIC_H
  24 
  25 
  26 FT_BEGIN_HEADER
  27 
  28 #ifndef FT_CONFIG_OPTION_PIC
  29 
  30 #define FT_GRAYS_RASTER_GET  ft_grays_raster
  31 
  32 #else /* FT_CONFIG_OPTION_PIC */
  33 
  34   typedef struct  SmoothPIC_
  35   {
  36     int              ref_count;
  37     FT_Raster_Funcs  ft_grays_raster;
  38 
  39   } SmoothPIC;
  40 
  41 
  42 #define GET_PIC( lib ) \
  43           ( (SmoothPIC*)( (lib)->pic_container.smooth ) )
  44 #define FT_GRAYS_RASTER_GET  ( GET_PIC( library )->ft_grays_raster )
  45 
  46 
  47   /* see ftspic.c for the implementation */
  48   void
  49   ft_smooth_renderer_class_pic_free( FT_Library  library );
  50 
  51   void
  52   ft_smooth_lcd_renderer_class_pic_free( FT_Library  library );
  53 
  54   void
  55   ft_smooth_lcdv_renderer_class_pic_free( FT_Library  library );
  56 
  57   FT_Error
  58   ft_smooth_renderer_class_pic_init( FT_Library  library );
  59 
  60   FT_Error
  61   ft_smooth_lcd_renderer_class_pic_init( FT_Library  library );
  62 
  63   FT_Error
  64   ft_smooth_lcdv_renderer_class_pic_init( FT_Library  library );
  65 
  66 #endif /* FT_CONFIG_OPTION_PIC */
  67 
  68  /* */
  69 
  70 FT_END_HEADER
  71 
  72 #endif /* FTSPIC_H_ */
  73 
  74 
  75 /* END */