misc/libfreetype/src/psaux/psauxmod.c
author nemo
Thu, 04 Apr 2013 08:10:59 -0400
changeset 8848 e9ebd63f8a03
parent 5172 88f2e05288ba
permissions -rw-r--r--
So. Some themes have objects that seem to be large natural extensions of the landscape. Masks allow maintaining that. Lemme know if it doesn't look good. If it doesn't, can still use for ice/bounce/indestructible. Indestructible bunker object for example.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5172
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     1
/***************************************************************************/
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     2
/*                                                                         */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     3
/*  psauxmod.c                                                             */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     4
/*                                                                         */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     5
/*    FreeType auxiliary PostScript module implementation (body).          */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     6
/*                                                                         */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     7
/*  Copyright 2000-2001, 2002, 2003, 2006 by                               */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     8
/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
     9
/*                                                                         */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    10
/*  This file is part of the FreeType project, and may only be used,       */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    11
/*  modified, and distributed under the terms of the FreeType project      */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    12
/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    13
/*  this file you indicate that you have read the license and              */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    14
/*  understand and accept it fully.                                        */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    15
/*                                                                         */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    16
/***************************************************************************/
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    17
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    18
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    19
#include <ft2build.h>
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    20
#include "psauxmod.h"
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    21
#include "psobjs.h"
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    22
#include "t1decode.h"
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    23
#include "t1cmap.h"
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    24
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    25
#ifndef T1_CONFIG_OPTION_NO_AFM
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    26
#include "afmparse.h"
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    27
#endif
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    28
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    29
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    30
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    31
  const PS_Table_FuncsRec  ps_table_funcs =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    32
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    33
    ps_table_new,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    34
    ps_table_done,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    35
    ps_table_add,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    36
    ps_table_release
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    37
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    38
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    39
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    40
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    41
  const PS_Parser_FuncsRec  ps_parser_funcs =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    42
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    43
    ps_parser_init,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    44
    ps_parser_done,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    45
    ps_parser_skip_spaces,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    46
    ps_parser_skip_PS_token,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    47
    ps_parser_to_int,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    48
    ps_parser_to_fixed,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    49
    ps_parser_to_bytes,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    50
    ps_parser_to_coord_array,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    51
    ps_parser_to_fixed_array,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    52
    ps_parser_to_token,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    53
    ps_parser_to_token_array,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    54
    ps_parser_load_field,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    55
    ps_parser_load_field_table
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    56
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    57
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    58
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    59
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    60
  const T1_Builder_FuncsRec  t1_builder_funcs =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    61
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    62
    t1_builder_init,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    63
    t1_builder_done,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    64
    t1_builder_check_points,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    65
    t1_builder_add_point,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    66
    t1_builder_add_point1,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    67
    t1_builder_add_contour,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    68
    t1_builder_start_point,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    69
    t1_builder_close_contour
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    70
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    71
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    72
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    73
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    74
  const T1_Decoder_FuncsRec  t1_decoder_funcs =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    75
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    76
    t1_decoder_init,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    77
    t1_decoder_done,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    78
    t1_decoder_parse_charstrings
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    79
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    80
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    81
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    82
#ifndef T1_CONFIG_OPTION_NO_AFM
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    83
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    84
  const AFM_Parser_FuncsRec  afm_parser_funcs =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    85
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    86
    afm_parser_init,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    87
    afm_parser_done,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    88
    afm_parser_parse
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    89
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    90
#endif
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    91
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    92
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    93
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    94
  const T1_CMap_ClassesRec  t1_cmap_classes =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    95
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    96
    &t1_cmap_standard_class_rec,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    97
    &t1_cmap_expert_class_rec,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    98
    &t1_cmap_custom_class_rec,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
    99
    &t1_cmap_unicode_class_rec
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   100
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   101
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   102
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   103
  static
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   104
  const PSAux_Interface  psaux_interface =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   105
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   106
    &ps_table_funcs,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   107
    &ps_parser_funcs,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   108
    &t1_builder_funcs,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   109
    &t1_decoder_funcs,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   110
    t1_decrypt,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   111
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   112
    (const T1_CMap_ClassesRec*) &t1_cmap_classes,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   113
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   114
#ifndef T1_CONFIG_OPTION_NO_AFM
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   115
    &afm_parser_funcs,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   116
#else
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   117
    0,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   118
#endif
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   119
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   120
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   121
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   122
  FT_CALLBACK_TABLE_DEF
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   123
  const FT_Module_Class  psaux_module_class =
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   124
  {
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   125
    0,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   126
    sizeof( FT_ModuleRec ),
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   127
    "psaux",
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   128
    0x20000L,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   129
    0x20000L,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   130
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   131
    &psaux_interface,  /* module-specific interface */
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   132
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   133
    (FT_Module_Constructor)0,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   134
    (FT_Module_Destructor) 0,
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   135
    (FT_Module_Requester)  0
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   136
  };
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   137
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   138
88f2e05288ba aaand let's add freetype as well while we are at it
koda
parents:
diff changeset
   139
/* END */