PageRenderTime 25ms CodeModel.GetById 10ms app.highlight 12ms RepoModel.GetById 1ms app.codeStats 0ms

/src/freetype/src/psaux/psobjs.h

https://bitbucket.org/cabalistic/ogredeps/
C++ Header | 212 lines | 109 code | 58 blank | 45 comment | 0 complexity | 0d47790777761c45db4868f8597bb7b1 MD5 | raw file
  1/***************************************************************************/
  2/*                                                                         */
  3/*  psobjs.h                                                               */
  4/*                                                                         */
  5/*    Auxiliary functions for PostScript fonts (specification).            */
  6/*                                                                         */
  7/*  Copyright 1996-2001, 2002, 2003 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#ifndef __PSOBJS_H__
 20#define __PSOBJS_H__
 21
 22
 23#include <ft2build.h>
 24#include FT_INTERNAL_POSTSCRIPT_AUX_H
 25
 26
 27FT_BEGIN_HEADER
 28
 29
 30  /*************************************************************************/
 31  /*************************************************************************/
 32  /*****                                                               *****/
 33  /*****                             T1_TABLE                          *****/
 34  /*****                                                               *****/
 35  /*************************************************************************/
 36  /*************************************************************************/
 37
 38
 39  FT_CALLBACK_TABLE
 40  const PS_Table_FuncsRec    ps_table_funcs;
 41
 42  FT_CALLBACK_TABLE
 43  const PS_Parser_FuncsRec   ps_parser_funcs;
 44
 45  FT_CALLBACK_TABLE
 46  const T1_Builder_FuncsRec  t1_builder_funcs;
 47
 48
 49  FT_LOCAL( FT_Error )
 50  ps_table_new( PS_Table   table,
 51                FT_Int     count,
 52                FT_Memory  memory );
 53
 54  FT_LOCAL( FT_Error )
 55  ps_table_add( PS_Table    table,
 56                FT_Int      idx,
 57                void*       object,
 58                FT_PtrDist  length );
 59
 60  FT_LOCAL( void )
 61  ps_table_done( PS_Table  table );
 62
 63
 64  FT_LOCAL( void )
 65  ps_table_release( PS_Table  table );
 66
 67
 68  /*************************************************************************/
 69  /*************************************************************************/
 70  /*****                                                               *****/
 71  /*****                            T1 PARSER                          *****/
 72  /*****                                                               *****/
 73  /*************************************************************************/
 74  /*************************************************************************/
 75
 76
 77  FT_LOCAL( void )
 78  ps_parser_skip_spaces( PS_Parser  parser );
 79
 80  FT_LOCAL( void )
 81  ps_parser_skip_PS_token( PS_Parser  parser );
 82
 83  FT_LOCAL( void )
 84  ps_parser_to_token( PS_Parser  parser,
 85                      T1_Token   token );
 86
 87  FT_LOCAL( void )
 88  ps_parser_to_token_array( PS_Parser  parser,
 89                            T1_Token   tokens,
 90                            FT_UInt    max_tokens,
 91                            FT_Int*    pnum_tokens );
 92
 93  FT_LOCAL( FT_Error )
 94  ps_parser_load_field( PS_Parser       parser,
 95                        const T1_Field  field,
 96                        void**          objects,
 97                        FT_UInt         max_objects,
 98                        FT_ULong*       pflags );
 99
100  FT_LOCAL( FT_Error )
101  ps_parser_load_field_table( PS_Parser       parser,
102                              const T1_Field  field,
103                              void**          objects,
104                              FT_UInt         max_objects,
105                              FT_ULong*       pflags );
106
107  FT_LOCAL( FT_Long )
108  ps_parser_to_int( PS_Parser  parser );
109
110
111  FT_LOCAL( FT_Error )
112  ps_parser_to_bytes( PS_Parser  parser,
113                      FT_Byte*   bytes,
114                      FT_Offset  max_bytes,
115                      FT_Long*   pnum_bytes,
116                      FT_Bool    delimiters );
117
118
119  FT_LOCAL( FT_Fixed )
120  ps_parser_to_fixed( PS_Parser  parser,
121                      FT_Int     power_ten );
122
123
124  FT_LOCAL( FT_Int )
125  ps_parser_to_coord_array( PS_Parser  parser,
126                            FT_Int     max_coords,
127                            FT_Short*  coords );
128
129  FT_LOCAL( FT_Int )
130  ps_parser_to_fixed_array( PS_Parser  parser,
131                            FT_Int     max_values,
132                            FT_Fixed*  values,
133                            FT_Int     power_ten );
134
135
136  FT_LOCAL( void )
137  ps_parser_init( PS_Parser  parser,
138                  FT_Byte*   base,
139                  FT_Byte*   limit,
140                  FT_Memory  memory );
141
142  FT_LOCAL( void )
143  ps_parser_done( PS_Parser  parser );
144
145
146  /*************************************************************************/
147  /*************************************************************************/
148  /*****                                                               *****/
149  /*****                            T1 BUILDER                         *****/
150  /*****                                                               *****/
151  /*************************************************************************/
152  /*************************************************************************/
153
154  FT_LOCAL( void )
155  t1_builder_init( T1_Builder    builder,
156                   FT_Face       face,
157                   FT_Size       size,
158                   FT_GlyphSlot  glyph,
159                   FT_Bool       hinting );
160
161  FT_LOCAL( void )
162  t1_builder_done( T1_Builder  builder );
163
164  FT_LOCAL( FT_Error )
165  t1_builder_check_points( T1_Builder  builder,
166                           FT_Int      count );
167
168  FT_LOCAL( void )
169  t1_builder_add_point( T1_Builder  builder,
170                        FT_Pos      x,
171                        FT_Pos      y,
172                        FT_Byte     flag );
173
174  FT_LOCAL( FT_Error )
175  t1_builder_add_point1( T1_Builder  builder,
176                         FT_Pos      x,
177                         FT_Pos      y );
178
179  FT_LOCAL( FT_Error )
180  t1_builder_add_contour( T1_Builder  builder );
181
182
183  FT_LOCAL( FT_Error )
184  t1_builder_start_point( T1_Builder  builder,
185                          FT_Pos      x,
186                          FT_Pos      y );
187
188
189  FT_LOCAL( void )
190  t1_builder_close_contour( T1_Builder  builder );
191
192
193  /*************************************************************************/
194  /*************************************************************************/
195  /*****                                                               *****/
196  /*****                            OTHER                              *****/
197  /*****                                                               *****/
198  /*************************************************************************/
199  /*************************************************************************/
200
201  FT_LOCAL( void )
202  t1_decrypt( FT_Byte*   buffer,
203              FT_Offset  length,
204              FT_UShort  seed );
205
206
207FT_END_HEADER
208
209#endif /* __PSOBJS_H__ */
210
211
212/* END */