3  * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved 
   7 #ifndef __STATETABLEPROCESSOR_H 
   8 #define __STATETABLEPROCESSOR_H 
  16 #include "MorphTables.h" 
  17 #include "MorphStateTables.h" 
  18 #include "SubtableProcessor.h" 
  24 class StateTableProcessor 
: public SubtableProcessor
 
  27     void process(LEGlyphStorage 
&glyphStorage
); 
  29     virtual void beginStateTable() = 0; 
  31     virtual ByteOffset 
processStateEntry(LEGlyphStorage 
&glyphStorage
, le_int32 
&currGlyph
, EntryTableIndex index
) = 0; 
  33     virtual void endStateTable() = 0; 
  36     StateTableProcessor(const MorphSubtableHeader 
*morphSubtableHeader
); 
  37     virtual ~StateTableProcessor(); 
  39     StateTableProcessor(); 
  42     ByteOffset classTableOffset
; 
  43     ByteOffset stateArrayOffset
; 
  44     ByteOffset entryTableOffset
; 
  46     const ClassTable 
*classTable
; 
  50     const MorphStateTableHeader 
*stateTableHeader
; 
  53     StateTableProcessor(const StateTableProcessor 
&other
); // forbid copying of this class 
  54     StateTableProcessor 
&operator=(const StateTableProcessor 
&other
); // forbid copying of this class