/src/freetype/src/gxvalid/gxvmort.h

https://bitbucket.org/cabalistic/ogredeps/ · C++ Header · 93 lines · 47 code · 22 blank · 24 comment · 7 complexity · 12c462bb736b4b255ea74342f0ebfa6a MD5 · raw file

  1. /***************************************************************************/
  2. /* */
  3. /* gxvmort.h */
  4. /* */
  5. /* TrueTypeGX/AAT common definition for mort table (specification). */
  6. /* */
  7. /* Copyright 2004, 2005 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., */
  8. /* David Turner, Robert Wilhelm, and Werner Lemberg. */
  9. /* */
  10. /* This file is part of the FreeType project, and may only be used, */
  11. /* modified, and distributed under the terms of the FreeType project */
  12. /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
  13. /* this file you indicate that you have read the license and */
  14. /* understand and accept it fully. */
  15. /* */
  16. /***************************************************************************/
  17. /***************************************************************************/
  18. /* */
  19. /* gxvalid is derived from both gxlayout module and otvalid module. */
  20. /* Development of gxlayout is supported by the Information-technology */
  21. /* Promotion Agency(IPA), Japan. */
  22. /* */
  23. /***************************************************************************/
  24. #ifndef __GXVMORT_H__
  25. #define __GXVMORT_H__
  26. #include "gxvalid.h"
  27. #include "gxvcommn.h"
  28. #include FT_SFNT_NAMES_H
  29. typedef struct GXV_mort_featureRec_
  30. {
  31. FT_UShort featureType;
  32. FT_UShort featureSetting;
  33. FT_ULong enableFlags;
  34. FT_ULong disableFlags;
  35. } GXV_mort_featureRec, *GXV_mort_feature;
  36. #define GXV_MORT_FEATURE_OFF {0, 1, 0x00000000UL, 0x00000000UL}
  37. #define IS_GXV_MORT_FEATURE_OFF( f ) \
  38. ( (f).featureType == 0 || \
  39. (f).featureSetting == 1 || \
  40. (f).enableFlags == 0x00000000UL || \
  41. (f).disableFlags == 0x00000000UL )
  42. FT_LOCAL( void )
  43. gxv_mort_featurearray_validate( FT_Bytes table,
  44. FT_Bytes limit,
  45. FT_ULong nFeatureFlags,
  46. GXV_Validator valid );
  47. FT_LOCAL( void )
  48. gxv_mort_coverage_validate( FT_UShort coverage,
  49. GXV_Validator valid );
  50. FT_LOCAL( void )
  51. gxv_mort_subtable_type0_validate( FT_Bytes table,
  52. FT_Bytes limit,
  53. GXV_Validator valid );
  54. FT_LOCAL( void )
  55. gxv_mort_subtable_type1_validate( FT_Bytes table,
  56. FT_Bytes limit,
  57. GXV_Validator valid );
  58. FT_LOCAL( void )
  59. gxv_mort_subtable_type2_validate( FT_Bytes table,
  60. FT_Bytes limit,
  61. GXV_Validator valid );
  62. FT_LOCAL( void )
  63. gxv_mort_subtable_type4_validate( FT_Bytes table,
  64. FT_Bytes limit,
  65. GXV_Validator valid );
  66. FT_LOCAL( void )
  67. gxv_mort_subtable_type5_validate( FT_Bytes table,
  68. FT_Bytes limit,
  69. GXV_Validator valid );
  70. #endif /* __GXVMORT_H__ */
  71. /* END */