PageRenderTime 26ms CodeModel.GetById 16ms app.highlight 7ms RepoModel.GetById 2ms app.codeStats 0ms

/src/compiler/android-ndk/jni/freetype/src/psaux/psauxmod.c

http://ftk.googlecode.com/
C | 139 lines | 97 code | 25 blank | 17 comment | 0 complexity | dee35a638c6d03b58fc08cb87a0cc789 MD5 | raw file
  1/***************************************************************************/
  2/*                                                                         */
  3/*  psauxmod.c                                                             */
  4/*                                                                         */
  5/*    FreeType auxiliary PostScript module implementation (body).          */
  6/*                                                                         */
  7/*  Copyright 2000-2001, 2002, 2003, 2006 by                               */
  8/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
  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#include <ft2build.h>
 20#include "psauxmod.h"
 21#include "psobjs.h"
 22#include "t1decode.h"
 23#include "t1cmap.h"
 24
 25#ifndef T1_CONFIG_OPTION_NO_AFM
 26#include "afmparse.h"
 27#endif
 28
 29
 30  FT_CALLBACK_TABLE_DEF
 31  const PS_Table_FuncsRec  ps_table_funcs =
 32  {
 33    ps_table_new,
 34    ps_table_done,
 35    ps_table_add,
 36    ps_table_release
 37  };
 38
 39
 40  FT_CALLBACK_TABLE_DEF
 41  const PS_Parser_FuncsRec  ps_parser_funcs =
 42  {
 43    ps_parser_init,
 44    ps_parser_done,
 45    ps_parser_skip_spaces,
 46    ps_parser_skip_PS_token,
 47    ps_parser_to_int,
 48    ps_parser_to_fixed,
 49    ps_parser_to_bytes,
 50    ps_parser_to_coord_array,
 51    ps_parser_to_fixed_array,
 52    ps_parser_to_token,
 53    ps_parser_to_token_array,
 54    ps_parser_load_field,
 55    ps_parser_load_field_table
 56  };
 57
 58
 59  FT_CALLBACK_TABLE_DEF
 60  const T1_Builder_FuncsRec  t1_builder_funcs =
 61  {
 62    t1_builder_init,
 63    t1_builder_done,
 64    t1_builder_check_points,
 65    t1_builder_add_point,
 66    t1_builder_add_point1,
 67    t1_builder_add_contour,
 68    t1_builder_start_point,
 69    t1_builder_close_contour
 70  };
 71
 72
 73  FT_CALLBACK_TABLE_DEF
 74  const T1_Decoder_FuncsRec  t1_decoder_funcs =
 75  {
 76    t1_decoder_init,
 77    t1_decoder_done,
 78    t1_decoder_parse_charstrings
 79  };
 80
 81
 82#ifndef T1_CONFIG_OPTION_NO_AFM
 83  FT_CALLBACK_TABLE_DEF
 84  const AFM_Parser_FuncsRec  afm_parser_funcs =
 85  {
 86    afm_parser_init,
 87    afm_parser_done,
 88    afm_parser_parse
 89  };
 90#endif
 91
 92
 93  FT_CALLBACK_TABLE_DEF
 94  const T1_CMap_ClassesRec  t1_cmap_classes =
 95  {
 96    &t1_cmap_standard_class_rec,
 97    &t1_cmap_expert_class_rec,
 98    &t1_cmap_custom_class_rec,
 99    &t1_cmap_unicode_class_rec
100  };
101
102
103  static
104  const PSAux_Interface  psaux_interface =
105  {
106    &ps_table_funcs,
107    &ps_parser_funcs,
108    &t1_builder_funcs,
109    &t1_decoder_funcs,
110    t1_decrypt,
111
112    (const T1_CMap_ClassesRec*) &t1_cmap_classes,
113
114#ifndef T1_CONFIG_OPTION_NO_AFM
115    &afm_parser_funcs,
116#else
117    0,
118#endif
119  };
120
121
122  FT_CALLBACK_TABLE_DEF
123  const FT_Module_Class  psaux_module_class =
124  {
125    0,
126    sizeof( FT_ModuleRec ),
127    "psaux",
128    0x20000L,
129    0x20000L,
130
131    &psaux_interface,  /* module-specific interface */
132
133    (FT_Module_Constructor)0,
134    (FT_Module_Destructor) 0,
135    (FT_Module_Requester)  0
136  };
137
138
139/* END */