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