00001 /* 00002 * @(#)SingleSubstitutionSubtables.h 1.6 00/03/15 00003 * 00004 * (C) Copyright IBM Corp. 1998, 1999, 2000 - All Rights Reserved 00005 * 00006 */ 00007 00008 #ifndef __SINGLESUBSTITUTIONSUBTABLES_H 00009 #define __SINGLESUBSTITUTIONSUBTABLES_H 00010 00011 #include "LETypes.h" 00012 #include "LEGlyphFilter.h" 00013 #include "OpenTypeTables.h" 00014 #include "GlyphSubstitutionTables.h" 00015 #include "GlyphIterator.h" 00016 00017 struct SingleSubstitutionSubtable : GlyphSubstitutionSubtable 00018 { 00019 le_uint32 process(GlyphIterator *glyphIterator, LEGlyphFilter *filter = NULL); 00020 }; 00021 00022 struct SingleSubstitutionFormat1Subtable : SingleSubstitutionSubtable 00023 { 00024 le_int16 deltaGlyphID; 00025 00026 le_uint32 process(GlyphIterator *glyphIterator, LEGlyphFilter *filter = NULL); 00027 }; 00028 00029 struct SingleSubstitutionFormat2Subtable : SingleSubstitutionSubtable 00030 { 00031 le_uint16 glyphCount; 00032 LEGlyphID substituteArray[ANY_NUMBER]; 00033 00034 le_uint32 process(GlyphIterator *glyphIterator, LEGlyphFilter *filter = NULL); 00035 }; 00036 00037 #endif 00038 00039