1 /* 2 * 3 * (C) Copyright IBM Corp. 1998-2007 - All Rights Reserved 4 * 5 */ 6 7 #ifndef __OPENTYPETABLES_H 8 #define __OPENTYPETABLES_H 9 10 /** 11 * \file 12 * \internal 13 */ 14 15 #include "LETypes.h" 16 17 U_NAMESPACE_BEGIN 18 19 #define ANY_NUMBER 1 20 21 typedef le_uint16 Offset; 22 typedef le_uint8 ATag[4]; 23 typedef le_uint32 fixed32; 24 25 #define LE_GLYPH_GROUP_MASK 0x00000001UL 26 typedef le_uint32 FeatureMask; 27 28 #define SWAPT(atag) ((LETag) ((atag[0] << 24) + (atag[1] << 16) + (atag[2] << 8) + atag[3])) 29 30 struct TagAndOffsetRecord 31 { 32 ATag tag; 33 Offset offset; 34 }; 35 36 struct GlyphRangeRecord 37 { 38 TTGlyphID firstGlyph; 39 TTGlyphID lastGlyph; 40 le_int16 rangeValue; 41 }; 42 43 struct FeatureMap 44 { 45 LETag tag; 46 FeatureMask mask; 47 }; 48 49 U_NAMESPACE_END 50 #endif 51