ICU-57131.0.1.tar.gz
[apple/icu.git] / icuSources / layout / OpenTypeTables.h
1 /*
2 *
3 * (C) Copyright IBM Corp. 1998-2013 - 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 #include "LETableReference.h"
17
18 U_NAMESPACE_BEGIN
19
20 #define ANY_NUMBER 1
21
22 typedef le_uint16 Offset;
23 typedef le_uint8 ATag[4];
24 typedef le_uint32 fixed32;
25
26 #define LE_GLYPH_GROUP_MASK 0x00000001UL
27 typedef le_uint32 FeatureMask;
28
29 #define SWAPT(atag) ((LETag) (((atag[0]) << 24) + ((atag[1]) << 16) + ((atag[2]) << 8) + (atag[3])))
30
31 struct TagAndOffsetRecord
32 {
33 ATag tag;
34 Offset offset;
35 };
36
37 struct GlyphRangeRecord
38 {
39 TTGlyphID firstGlyph;
40 TTGlyphID lastGlyph;
41 le_int16 rangeValue;
42 };
43
44 struct FeatureMap
45 {
46 LETag tag;
47 FeatureMask mask;
48 };
49
50 U_NAMESPACE_END
51 #endif