/***************************************************************************/ /* */ /* gxvmort.h */ /* */ /* TrueTypeGX/AAT common definition for mort table (specification). */ /* */ /* Copyright 2004, 2005 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., */ /* 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. */ /* */ /***************************************************************************/ /***************************************************************************/ /* */ /* gxvalid is derived from both gxlayout module and otvalid module. */ /* Development of gxlayout is supported by the Information-technology */ /* Promotion Agency(IPA), Japan. */ /* */ /***************************************************************************/ #ifndef __GXVMORT_H__ #define __GXVMORT_H__ #include "gxvalid.h" #include "gxvcommn.h" #include FT_SFNT_NAMES_H typedef struct GXV_mort_featureRec_ { FT_UShort featureType; FT_UShort featureSetting; FT_ULong enableFlags; FT_ULong disableFlags; } GXV_mort_featureRec, *GXV_mort_feature; #define GXV_MORT_FEATURE_OFF {0, 1, 0x00000000UL, 0x00000000UL} #define IS_GXV_MORT_FEATURE_OFF( f ) \ ( (f).featureType == 0 || \ (f).featureSetting == 1 || \ (f).enableFlags == 0x00000000UL || \ (f).disableFlags == 0x00000000UL ) FT_LOCAL( void ) gxv_mort_featurearray_validate( FT_Bytes table, FT_Bytes limit, FT_UInt nFeatureFlags, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_coverage_validate( FT_UShort coverage, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_subtable_type0_validate( FT_Bytes table, FT_Bytes limit, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_subtable_type1_validate( FT_Bytes table, FT_Bytes limit, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_subtable_type2_validate( FT_Bytes table, FT_Bytes limit, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_subtable_type4_validate( FT_Bytes table, FT_Bytes limit, GXV_Validator valid ); FT_LOCAL( void ) gxv_mort_subtable_type5_validate( FT_Bytes table, FT_Bytes limit, GXV_Validator valid ); #endif /* __GXVMORT_H__ */ /* END */