• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
66