blob: c95391b61fe29157f8920674f476536ad7e7a863 [file] [log] [blame]
/***************************************************************************/
/* */
/* gxvmort.h */
/* */
/* TrueTypeGX/AAT common definition for mort table (specification). */
/* */
/* Copyright 2004-2015 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_ULong nFeatureFlags,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_coverage_validate( FT_UShort coverage,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_subtable_type0_validate( FT_Bytes table,
FT_Bytes limit,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_subtable_type1_validate( FT_Bytes table,
FT_Bytes limit,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_subtable_type2_validate( FT_Bytes table,
FT_Bytes limit,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_subtable_type4_validate( FT_Bytes table,
FT_Bytes limit,
GXV_Validator gxvalid );
FT_LOCAL( void )
gxv_mort_subtable_type5_validate( FT_Bytes table,
FT_Bytes limit,
GXV_Validator gxvalid );
#endif /* __GXVMORT_H__ */
/* END */