equal
deleted
inserted
replaced
|
1 /* |
|
2 * |
|
3 * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved |
|
4 * |
|
5 */ |
|
6 |
|
7 #ifndef __INDICREARRANGEMENTPROCESSOR_H |
|
8 #define __INDICREARRANGEMENTPROCESSOR_H |
|
9 |
|
10 /** |
|
11 * \file |
|
12 * \internal |
|
13 */ |
|
14 |
|
15 #include "LETypes.h" |
|
16 #include "MorphTables.h" |
|
17 #include "SubtableProcessor.h" |
|
18 #include "StateTableProcessor.h" |
|
19 #include "IndicRearrangement.h" |
|
20 |
|
21 U_NAMESPACE_BEGIN |
|
22 |
|
23 class LEGlyphStorage; |
|
24 |
|
25 class IndicRearrangementProcessor : public StateTableProcessor |
|
26 { |
|
27 public: |
|
28 virtual void beginStateTable(); |
|
29 |
|
30 virtual ByteOffset processStateEntry(LEGlyphStorage &glyphStorage, le_int32 &currGlyph, EntryTableIndex index); |
|
31 |
|
32 virtual void endStateTable(); |
|
33 |
|
34 void doRearrangementAction(LEGlyphStorage &glyphStorage, IndicRearrangementVerb verb) const; |
|
35 |
|
36 IndicRearrangementProcessor(const MorphSubtableHeader *morphSubtableHeader); |
|
37 virtual ~IndicRearrangementProcessor(); |
|
38 |
|
39 /** |
|
40 * ICU "poor man's RTTI", returns a UClassID for the actual class. |
|
41 * |
|
42 * @stable ICU 2.8 |
|
43 */ |
|
44 virtual UClassID getDynamicClassID() const; |
|
45 |
|
46 /** |
|
47 * ICU "poor man's RTTI", returns a UClassID for this class. |
|
48 * |
|
49 * @stable ICU 2.8 |
|
50 */ |
|
51 static UClassID getStaticClassID(); |
|
52 |
|
53 protected: |
|
54 le_int32 firstGlyph; |
|
55 le_int32 lastGlyph; |
|
56 |
|
57 const IndicRearrangementStateEntry *entryTable; |
|
58 const IndicRearrangementSubtableHeader *indicRearrangementSubtableHeader; |
|
59 |
|
60 }; |
|
61 |
|
62 U_NAMESPACE_END |
|
63 #endif |