gxvmort.h

Go to the documentation of this file.
00001 /***************************************************************************/
00002 /*                                                                         */
00003 /*  gxvmort.h                                                              */
00004 /*                                                                         */
00005 /*    TrueTypeGX/AAT common definition for mort table (specification).     */
00006 /*                                                                         */
00007 /*  Copyright 2004, 2005 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., */
00008 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
00009 /*                                                                         */
00010 /*  This file is part of the FreeType project, and may only be used,       */
00011 /*  modified, and distributed under the terms of the FreeType project      */
00012 /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
00013 /*  this file you indicate that you have read the license and              */
00014 /*  understand and accept it fully.                                        */
00015 /*                                                                         */
00016 /***************************************************************************/
00017 
00018 /***************************************************************************/
00019 /*                                                                         */
00020 /* gxvalid is derived from both gxlayout module and otvalid module.        */
00021 /* Development of gxlayout is supported by the Information-technology      */
00022 /* Promotion Agency(IPA), Japan.                                           */
00023 /*                                                                         */
00024 /***************************************************************************/
00025 
00026 
00027 #ifndef __GXVMORT_H__
00028 #define __GXVMORT_H__
00029 
00030 #include "gxvalid.h"
00031 #include "gxvcommn.h"
00032 
00033 #include FT_SFNT_NAMES_H
00034 
00035 
00036   typedef struct  GXV_mort_featureRec_
00037   {
00038     FT_UShort  featureType;
00039     FT_UShort  featureSetting;
00040     FT_ULong   enableFlags;
00041     FT_ULong   disableFlags;
00042 
00043   } GXV_mort_featureRec, *GXV_mort_feature;
00044 
00045 #define GXV_MORT_FEATURE_OFF  {0, 1, 0x00000000UL, 0x00000000UL}
00046 
00047 #define IS_GXV_MORT_FEATURE_OFF( f )              \
00048           ( (f).featureType    == 0            || \
00049             (f).featureSetting == 1            || \
00050             (f).enableFlags    == 0x00000000UL || \
00051             (f).disableFlags   == 0x00000000UL )
00052 
00053 
00054   FT_LOCAL( void )
00055   gxv_mort_featurearray_validate( FT_Bytes       table,
00056                                   FT_Bytes       limit,
00057                                   FT_ULong       nFeatureFlags,
00058                                   GXV_Validator  valid );
00059 
00060   FT_LOCAL( void )
00061   gxv_mort_coverage_validate( FT_UShort      coverage,
00062                               GXV_Validator  valid );
00063 
00064   FT_LOCAL( void )
00065   gxv_mort_subtable_type0_validate( FT_Bytes       table,
00066                                     FT_Bytes       limit,
00067                                     GXV_Validator  valid );
00068 
00069   FT_LOCAL( void )
00070   gxv_mort_subtable_type1_validate( FT_Bytes       table,
00071                                     FT_Bytes       limit,
00072                                     GXV_Validator  valid );
00073 
00074   FT_LOCAL( void )
00075   gxv_mort_subtable_type2_validate( FT_Bytes       table,
00076                                     FT_Bytes       limit,
00077                                     GXV_Validator  valid );
00078 
00079   FT_LOCAL( void )
00080   gxv_mort_subtable_type4_validate( FT_Bytes       table,
00081                                     FT_Bytes       limit,
00082                                     GXV_Validator  valid );
00083 
00084   FT_LOCAL( void )
00085   gxv_mort_subtable_type5_validate( FT_Bytes       table,
00086                                     FT_Bytes       limit,
00087                                     GXV_Validator  valid );
00088 
00089 
00090 #endif /* __GXVMORT_H__ */
00091 
00092 
00093 /* END */

Generated on Tue Jul 5 14:13:47 2011 for ROOT_528-00b_version by  doxygen 1.5.1