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