Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

StateTableProcessor.h

Go to the documentation of this file.
00001 /*
00002  * @(#)StateTableProcessor.h    1.6 00/03/15
00003  *
00004  * (C) Copyright IBM Corp. 1998, 1999, 2000 - All Rights Reserved
00005  *
00006  */
00007 
00008 #ifndef __STATETABLEPROCESSOR_H
00009 #define __STATETABLEPROCESSOR_H
00010 
00011 #include "LETypes.h"
00012 #include "MorphTables.h"
00013 #include "MorphStateTables.h"
00014 #include "SubtableProcessor.h"
00015 
00016 class StateTableProcessor : public SubtableProcessor
00017 {
00018 public:
00019     void process(LEGlyphID *glyphs, le_int32 *charIndices, le_int32 glyph);
00020 
00021     virtual void beginStateTable() = 0;
00022 
00023     virtual ByteOffset processStateEntry(LEGlyphID *glyphs, le_int32 *charIndices, le_int32 &currGlyph,
00024         le_int32 glyphCount, EntryTableIndex index) = 0;
00025 
00026     virtual void endStateTable() = 0;
00027 
00028 protected:
00029     StateTableProcessor(MorphSubtableHeader *morphSubtableHeader);
00030     virtual ~StateTableProcessor();
00031 
00032     StateTableProcessor();
00033 
00034     le_int16 stateSize;
00035     ByteOffset classTableOffset;
00036     ByteOffset stateArrayOffset;
00037     ByteOffset entryTableOffset;
00038 
00039     ClassTable *classTable;
00040     le_int16 firstGlyph;
00041     le_int16 lastGlyph;
00042 
00043     MorphStateTableHeader *stateTableHeader;
00044 };
00045 
00046 #endif

Generated at Tue Dec 5 18:13:04 2000 for ICU by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000