3 * (C) Copyright IBM Corp. and others 1998-2013 - All Rights Reserved
7 #ifndef __STATETABLEPROCESSOR2_H
8 #define __STATETABLEPROCESSOR2_H
16 #include "MorphTables.h"
17 #include "MorphStateTables.h"
18 #include "SubtableProcessor2.h"
19 #include "LookupTables.h"
25 class StateTableProcessor2
: public SubtableProcessor2
28 void process(LEGlyphStorage
&glyphStorage
);
30 virtual void beginStateTable() = 0;
32 virtual le_uint16
processStateEntry(LEGlyphStorage
&glyphStorage
, le_int32
&currGlyph
, EntryTableIndex2 index
) = 0;
34 virtual void endStateTable() = 0;
37 StateTableProcessor2(const MorphSubtableHeader2
*morphSubtableHeader
);
38 virtual ~StateTableProcessor2();
40 StateTableProcessor2();
45 le_uint32 classTableOffset
;
46 le_uint32 stateArrayOffset
;
47 le_uint32 entryTableOffset
;
49 const LookupTable
*classTable
;
50 const EntryTableIndex2
*stateArray
;
51 const MorphStateTableHeader2
*stateTableHeader
;
54 StateTableProcessor2(const StateTableProcessor2
&other
); // forbid copying of this class
55 StateTableProcessor2
&operator=(const StateTableProcessor2
&other
); // forbid copying of this class