sl@0: /* sl@0: * sl@0: * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved sl@0: * sl@0: */ sl@0: sl@0: #ifndef __SINGLEPOSITIONINGSUBTABLES_H sl@0: #define __SINGLEPOSITIONINGSUBTABLES_H sl@0: sl@0: /** sl@0: * \file sl@0: * \internal sl@0: */ sl@0: sl@0: #include "LETypes.h" sl@0: #include "LEFontInstance.h" sl@0: #include "OpenTypeTables.h" sl@0: #include "GlyphPositioningTables.h" sl@0: #include "ValueRecords.h" sl@0: #include "GlyphIterator.h" sl@0: sl@0: U_NAMESPACE_BEGIN sl@0: sl@0: struct SinglePositioningSubtable : GlyphPositioningSubtable sl@0: { sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEFontInstance *fontInstance) const; sl@0: }; sl@0: sl@0: struct SinglePositioningFormat1Subtable : SinglePositioningSubtable sl@0: { sl@0: ValueFormat valueFormat; sl@0: ValueRecord valueRecord; sl@0: sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEFontInstance *fontInstance) const; sl@0: }; sl@0: sl@0: struct SinglePositioningFormat2Subtable : SinglePositioningSubtable sl@0: { sl@0: ValueFormat valueFormat; sl@0: le_uint16 valueCount; sl@0: ValueRecord valueRecordArray[ANY_NUMBER]; sl@0: sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEFontInstance *fontInstance) const; sl@0: }; sl@0: sl@0: U_NAMESPACE_END sl@0: #endif sl@0: sl@0: