Delete all Trailing spaces in code.
[reactos.git] / reactos / dll / 3rdparty / freetype / src / cff / cffgload.h
index f67864a..e257bfc 100644 (file)
-/***************************************************************************/
-/*                                                                         */
-/*  cffgload.h                                                             */
-/*                                                                         */
-/*    OpenType Glyph Loader (specification).                               */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by                   */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __CFFGLOAD_H__
-#define __CFFGLOAD_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include "cffobjs.h"
-
-
-FT_BEGIN_HEADER
-
-
-#define CFF_MAX_OPERANDS     48
-#define CFF_MAX_SUBRS_CALLS  32
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Structure>                                                           */
-  /*    CFF_Builder                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*     A structure used during glyph loading to store its outline.       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    memory        :: The current memory object.                        */
-  /*                                                                       */
-  /*    face          :: The current face object.                          */
-  /*                                                                       */
-  /*    glyph         :: The current glyph slot.                           */
-  /*                                                                       */
-  /*    loader        :: The current glyph loader.                         */
-  /*                                                                       */
-  /*    base          :: The base glyph outline.                           */
-  /*                                                                       */
-  /*    current       :: The current glyph outline.                        */
-  /*                                                                       */
-  /*    last          :: The last point position.                          */
-  /*                                                                       */
-  /*    scale_x       :: The horizontal scale (FUnits to sub-pixels).      */
-  /*                                                                       */
-  /*    scale_y       :: The vertical scale (FUnits to sub-pixels).        */
-  /*                                                                       */
-  /*    pos_x         :: The horizontal translation (if composite glyph).  */
-  /*                                                                       */
-  /*    pos_y         :: The vertical translation (if composite glyph).    */
-  /*                                                                       */
-  /*    left_bearing  :: The left side bearing point.                      */
-  /*                                                                       */
-  /*    advance       :: The horizontal advance vector.                    */
-  /*                                                                       */
-  /*    bbox          :: Unused.                                           */
-  /*                                                                       */
-  /*    path_begun    :: A flag which indicates that a new path has begun. */
-  /*                                                                       */
-  /*    load_points   :: If this flag is not set, no points are loaded.    */
-  /*                                                                       */
-  /*    no_recurse    :: Set but not used.                                 */
-  /*                                                                       */
-  /*    metrics_only  :: A boolean indicating that we only want to compute */
-  /*                     the metrics of a given glyph, not load all of its */
-  /*                     points.                                           */
-  /*                                                                       */
-  /*    hints_funcs   :: Auxiliary pointer for hinting.                    */
-  /*                                                                       */
-  /*    hints_globals :: Auxiliary pointer for hinting.                    */
-  /*                                                                       */
-  typedef struct  CFF_Builder_
-  {
-    FT_Memory       memory;
-    TT_Face         face;
-    CFF_GlyphSlot   glyph;
-    FT_GlyphLoader  loader;
-    FT_Outline*     base;
-    FT_Outline*     current;
-
-    FT_Vector       last;
-
-    FT_Fixed        scale_x;
-    FT_Fixed        scale_y;
-
-    FT_Pos          pos_x;
-    FT_Pos          pos_y;
-
-    FT_Vector       left_bearing;
-    FT_Vector       advance;
-
-    FT_BBox         bbox;          /* bounding box */
-    FT_Bool         path_begun;
-    FT_Bool         load_points;
-    FT_Bool         no_recurse;
-
-    FT_Bool         metrics_only;
-
-    void*           hints_funcs;    /* hinter-specific */
-    void*           hints_globals;  /* hinter-specific */
-
-  } CFF_Builder;
-
-
-  /* execution context charstring zone */
-
-  typedef struct  CFF_Decoder_Zone_
-  {
-    FT_Byte*  base;
-    FT_Byte*  limit;
-    FT_Byte*  cursor;
-
-  } CFF_Decoder_Zone;
-
-
-  typedef struct  CFF_Decoder_
-  {
-    CFF_Builder        builder;
-    CFF_Font           cff;
-
-    FT_Fixed           stack[CFF_MAX_OPERANDS + 1];
-    FT_Fixed*          top;
-
-    CFF_Decoder_Zone   zones[CFF_MAX_SUBRS_CALLS + 1];
-    CFF_Decoder_Zone*  zone;
-
-    FT_Int             flex_state;
-    FT_Int             num_flex_vectors;
-    FT_Vector          flex_vectors[7];
-
-    FT_Pos             glyph_width;
-    FT_Pos             nominal_width;
-
-    FT_Bool            read_width;
-    FT_Int             num_hints;
-    FT_Fixed*          buildchar;
-    FT_Int             len_buildchar;
-
-    FT_UInt            num_locals;
-    FT_UInt            num_globals;
-
-    FT_Int             locals_bias;
-    FT_Int             globals_bias;
-
-    FT_Byte**          locals;
-    FT_Byte**          globals;
-
-    FT_Byte**          glyph_names;   /* for pure CFF fonts only  */
-    FT_UInt            num_glyphs;    /* number of glyphs in font */
-
-    FT_Render_Mode     hint_mode;
-
-  } CFF_Decoder;
-
-
-  FT_LOCAL( void )
-  cff_decoder_init( CFF_Decoder*    decoder,
-                    TT_Face         face,
-                    CFF_Size        size,
-                    CFF_GlyphSlot   slot,
-                    FT_Bool         hinting,
-                    FT_Render_Mode  hint_mode );
-
-  FT_LOCAL( FT_Error )
-  cff_decoder_prepare( CFF_Decoder*  decoder,
-                       FT_UInt       glyph_index );
-
-#if 0  /* unused until we support pure CFF fonts */
-
-  /* Compute the maximum advance width of a font through quick parsing */
-  FT_LOCAL( FT_Error )
-  cff_compute_max_advance( TT_Face  face,
-                           FT_Int*  max_advance );
-
-#endif /* 0 */
-
-  FT_LOCAL( FT_Error )
-  cff_decoder_parse_charstrings( CFF_Decoder*  decoder,
-                                 FT_Byte*      charstring_base,
-                                 FT_ULong      charstring_len );
-
-  FT_LOCAL( FT_Error )
-  cff_slot_load( CFF_GlyphSlot  glyph,
-                 CFF_Size       size,
-                 FT_UInt        glyph_index,
-                 FT_Int32       load_flags );
-
-
-FT_END_HEADER
-
-#endif /* __CFFGLOAD_H__ */
-
-
-/* END */
+/***************************************************************************/\r
+/*                                                                         */\r
+/*  cffgload.h                                                             */\r
+/*                                                                         */\r
+/*    OpenType Glyph Loader (specification).                               */\r
+/*                                                                         */\r
+/*  Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by                   */\r
+/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */\r
+/*                                                                         */\r
+/*  This file is part of the FreeType project, and may only be used,       */\r
+/*  modified, and distributed under the terms of the FreeType project      */\r
+/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */\r
+/*  this file you indicate that you have read the license and              */\r
+/*  understand and accept it fully.                                        */\r
+/*                                                                         */\r
+/***************************************************************************/\r
+\r
+\r
+#ifndef __CFFGLOAD_H__\r
+#define __CFFGLOAD_H__\r
+\r
+\r
+#include <ft2build.h>\r
+#include FT_FREETYPE_H\r
+#include "cffobjs.h"\r
+\r
+\r
+FT_BEGIN_HEADER\r
+\r
+\r
+#define CFF_MAX_OPERANDS     48\r
+#define CFF_MAX_SUBRS_CALLS  32\r
+\r
+\r
+  /*************************************************************************/\r
+  /*                                                                       */\r
+  /* <Structure>                                                           */\r
+  /*    CFF_Builder                                                        */\r
+  /*                                                                       */\r
+  /* <Description>                                                         */\r
+  /*     A structure used during glyph loading to store its outline.       */\r
+  /*                                                                       */\r
+  /* <Fields>                                                              */\r
+  /*    memory        :: The current memory object.                        */\r
+  /*                                                                       */\r
+  /*    face          :: The current face object.                          */\r
+  /*                                                                       */\r
+  /*    glyph         :: The current glyph slot.                           */\r
+  /*                                                                       */\r
+  /*    loader        :: The current glyph loader.                         */\r
+  /*                                                                       */\r
+  /*    base          :: The base glyph outline.                           */\r
+  /*                                                                       */\r
+  /*    current       :: The current glyph outline.                        */\r
+  /*                                                                       */\r
+  /*    last          :: The last point position.                          */\r
+  /*                                                                       */\r
+  /*    scale_x       :: The horizontal scale (FUnits to sub-pixels).      */\r
+  /*                                                                       */\r
+  /*    scale_y       :: The vertical scale (FUnits to sub-pixels).        */\r
+  /*                                                                       */\r
+  /*    pos_x         :: The horizontal translation (if composite glyph).  */\r
+  /*                                                                       */\r
+  /*    pos_y         :: The vertical translation (if composite glyph).    */\r
+  /*                                                                       */\r
+  /*    left_bearing  :: The left side bearing point.                      */\r
+  /*                                                                       */\r
+  /*    advance       :: The horizontal advance vector.                    */\r
+  /*                                                                       */\r
+  /*    bbox          :: Unused.                                           */\r
+  /*                                                                       */\r
+  /*    path_begun    :: A flag which indicates that a new path has begun. */\r
+  /*                                                                       */\r
+  /*    load_points   :: If this flag is not set, no points are loaded.    */\r
+  /*                                                                       */\r
+  /*    no_recurse    :: Set but not used.                                 */\r
+  /*                                                                       */\r
+  /*    metrics_only  :: A boolean indicating that we only want to compute */\r
+  /*                     the metrics of a given glyph, not load all of its */\r
+  /*                     points.                                           */\r
+  /*                                                                       */\r
+  /*    hints_funcs   :: Auxiliary pointer for hinting.                    */\r
+  /*                                                                       */\r
+  /*    hints_globals :: Auxiliary pointer for hinting.                    */\r
+  /*                                                                       */\r
+  typedef struct  CFF_Builder_\r
+  {\r
+    FT_Memory       memory;\r
+    TT_Face         face;\r
+    CFF_GlyphSlot   glyph;\r
+    FT_GlyphLoader  loader;\r
+    FT_Outline*     base;\r
+    FT_Outline*     current;\r
+\r
+    FT_Vector       last;\r
+\r
+    FT_Fixed        scale_x;\r
+    FT_Fixed        scale_y;\r
+\r
+    FT_Pos          pos_x;\r
+    FT_Pos          pos_y;\r
+\r
+    FT_Vector       left_bearing;\r
+    FT_Vector       advance;\r
+\r
+    FT_BBox         bbox;          /* bounding box */\r
+    FT_Bool         path_begun;\r
+    FT_Bool         load_points;\r
+    FT_Bool         no_recurse;\r
+\r
+    FT_Bool         metrics_only;\r
+\r
+    void*           hints_funcs;    /* hinter-specific */\r
+    void*           hints_globals;  /* hinter-specific */\r
+\r
+  } CFF_Builder;\r
+\r
+\r
+  /* execution context charstring zone */\r
+\r
+  typedef struct  CFF_Decoder_Zone_\r
+  {\r
+    FT_Byte*  base;\r
+    FT_Byte*  limit;\r
+    FT_Byte*  cursor;\r
+\r
+  } CFF_Decoder_Zone;\r
+\r
+\r
+  typedef struct  CFF_Decoder_\r
+  {\r
+    CFF_Builder        builder;\r
+    CFF_Font           cff;\r
+\r
+    FT_Fixed           stack[CFF_MAX_OPERANDS + 1];\r
+    FT_Fixed*          top;\r
+\r
+    CFF_Decoder_Zone   zones[CFF_MAX_SUBRS_CALLS + 1];\r
+    CFF_Decoder_Zone*  zone;\r
+\r
+    FT_Int             flex_state;\r
+    FT_Int             num_flex_vectors;\r
+    FT_Vector          flex_vectors[7];\r
+\r
+    FT_Pos             glyph_width;\r
+    FT_Pos             nominal_width;\r
+\r
+    FT_Bool            read_width;\r
+    FT_Int             num_hints;\r
+    FT_Fixed*          buildchar;\r
+    FT_Int             len_buildchar;\r
+\r
+    FT_UInt            num_locals;\r
+    FT_UInt            num_globals;\r
+\r
+    FT_Int             locals_bias;\r
+    FT_Int             globals_bias;\r
+\r
+    FT_Byte**          locals;\r
+    FT_Byte**          globals;\r
+\r
+    FT_Byte**          glyph_names;   /* for pure CFF fonts only  */\r
+    FT_UInt            num_glyphs;    /* number of glyphs in font */\r
+\r
+    FT_Render_Mode     hint_mode;\r
+\r
+  } CFF_Decoder;\r
+\r
+\r
+  FT_LOCAL( void )\r
+  cff_decoder_init( CFF_Decoder*    decoder,\r
+                    TT_Face         face,\r
+                    CFF_Size        size,\r
+                    CFF_GlyphSlot   slot,\r
+                    FT_Bool         hinting,\r
+                    FT_Render_Mode  hint_mode );\r
+\r
+  FT_LOCAL( FT_Error )\r
+  cff_decoder_prepare( CFF_Decoder*  decoder,\r
+                       FT_UInt       glyph_index );\r
+\r
+#if 0  /* unused until we support pure CFF fonts */\r
+\r
+  /* Compute the maximum advance width of a font through quick parsing */\r
+  FT_LOCAL( FT_Error )\r
+  cff_compute_max_advance( TT_Face  face,\r
+                           FT_Int*  max_advance );\r
+\r
+#endif /* 0 */\r
+\r
+  FT_LOCAL( FT_Error )\r
+  cff_decoder_parse_charstrings( CFF_Decoder*  decoder,\r
+                                 FT_Byte*      charstring_base,\r
+                                 FT_ULong      charstring_len );\r
+\r
+  FT_LOCAL( FT_Error )\r
+  cff_slot_load( CFF_GlyphSlot  glyph,\r
+                 CFF_Size       size,\r
+                 FT_UInt        glyph_index,\r
+                 FT_Int32       load_flags );\r
+\r
+\r
+FT_END_HEADER\r
+\r
+#endif /* __CFFGLOAD_H__ */\r
+\r
+\r
+/* END */\r