Edit

kc3-lang/freetype/src/otvalid/otvalid.h

Branch :

  • Show log

    Commit

  • Author : Werner Lemberg
    Date : 2004-09-10 14:39:00
    Hash : ee95b6f0
    Message : Adding OpenType validation module. The code is based on the (unfinished) `otlayout' module but has been heavily modified to make it much more compact. * src/otvalid/*: New module. * include/freetype/ftotval.h, src/base/ftotval.c, include/freetype/internal/services/svotval.h: New files. * include/freetype/config/ftmodule.h: Add otv_module_class. * include/freetype/config/ftheader.h (FT_OPENTYPE_VALIDATE_H): New macro. * include/freetype/internal/ftserv.h (FT_SERVICE_OPENTYPE_VALIDATE_H): New macro. * include/freetype/internal/fttrace.h (otvmodule, otvcommon, otvbase, otvgdef, otvgpos, otvgsub, otvjstf): New trace components. * include/freetype/ftchapters.h: Updated. * src/base/Jamfile (Library), src/base/descrip.mms (OBJS), src/base/rules.mk (BASE_EXT_SRC): Updated. * docs/CHANGES: Updated.

  • src/otvalid/otvalid.h
  • /***************************************************************************/
    /*                                                                         */
    /*  otvalid.h                                                              */
    /*                                                                         */
    /*    OpenType table validation (specification only).                      */
    /*                                                                         */
    /*  Copyright 2004 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 __OTVALID_H__
    #define __OTVALID_H__
    
    
    #include <ft2build.h>
    #include FT_FREETYPE_H
    
    #include "otverror.h"           /* must come before FT_INTERNAL_VALIDATE_H */
    
    #include FT_INTERNAL_VALIDATE_H
    #include FT_INTERNAL_STREAM_H
    
    
    FT_BEGIN_HEADER
    
    
      FT_LOCAL( void )
      otv_BASE_validate( FT_Bytes      table,
                         FT_Validator  valid );
    
      /* GSUB and GPOS tables should already be validated; */
      /* if missing, set corresponding argument to 0       */
      FT_LOCAL( void )
      otv_GDEF_validate( FT_Bytes      table,
                         FT_Bytes      gsub,
                         FT_Bytes      gpos,
                         FT_Validator  valid );
    
      FT_LOCAL( void )
      otv_GPOS_validate( FT_Bytes      table,
                         FT_UInt       glyph_count,
                         FT_Validator  valid );
    
      FT_LOCAL( void )
      otv_GSUB_validate( FT_Bytes      table,
                         FT_UInt       glyph_count,
                         FT_Validator  valid );
    
      /* GSUB and GPOS tables should already be validated; */
      /* if missing, set corresponding argument to 0       */
      FT_LOCAL( void )
      otv_JSTF_validate( FT_Bytes      table,
                         FT_Bytes      gsub,
                         FT_Bytes      gpos,
                         FT_UInt       glyph_count,
                         FT_Validator  valid );
    
    
    FT_END_HEADER
    
    #endif /* __OTVALID_H__ */
    
    
    /* END */