]> git.saurik.com Git - apple/icu.git/blob - icuSources/layout/IndicRearrangement.h
ICU-491.11.2.tar.gz
[apple/icu.git] / icuSources / layout / IndicRearrangement.h
1 /*
2 *
3 * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved
4 *
5 */
6
7 #ifndef __INDICREARRANGEMENT_H
8 #define __INDICREARRANGEMENT_H
9
10 /**
11 * \file
12 * \internal
13 */
14
15 #include "LETypes.h"
16 #include "LayoutTables.h"
17 #include "StateTables.h"
18 #include "MorphTables.h"
19 #include "MorphStateTables.h"
20
21 U_NAMESPACE_BEGIN
22
23 struct IndicRearrangementSubtableHeader : MorphStateTableHeader
24 {
25 };
26
27 enum IndicRearrangementFlags
28 {
29 irfMarkFirst = 0x8000,
30 irfDontAdvance = 0x4000,
31 irfMarkLast = 0x2000,
32 irfReserved = 0x1FF0,
33 irfVerbMask = 0x000F
34 };
35
36 enum IndicRearrangementVerb
37 {
38 irvNoAction = 0x0000, /* no action */
39 irvxA = 0x0001, /* Ax => xA */
40 irvDx = 0x0002, /* xD => Dx */
41 irvDxA = 0x0003, /* AxD => DxA */
42
43 irvxAB = 0x0004, /* ABx => xAB */
44 irvxBA = 0x0005, /* ABx => xBA */
45 irvCDx = 0x0006, /* xCD => CDx */
46 irvDCx = 0x0007, /* xCD => DCx */
47
48 irvCDxA = 0x0008, /* AxCD => CDxA */
49 irvDCxA = 0x0009, /* AxCD => DCxA */
50 irvDxAB = 0x000A, /* ABxD => DxAB */
51 irvDxBA = 0x000B, /* ABxD => DxBA */
52
53 irvCDxAB = 0x000C, /* ABxCD => CDxAB */
54 irvCDxBA = 0x000D, /* ABxCD => CDxBA */
55 irvDCxAB = 0x000E, /* ABxCD => DCxAB */
56 irvDCxBA = 0x000F /* ABxCD => DCxBA */
57 };
58
59 struct IndicRearrangementStateEntry : StateEntry
60 {
61 };
62
63 U_NAMESPACE_END
64 #endif
65