3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
7 #ifndef __SINGLEPOSITIONINGSUBTABLES_H
8 #define __SINGLEPOSITIONINGSUBTABLES_H
16 #include "LEFontInstance.h"
17 #include "OpenTypeTables.h"
18 #include "GlyphPositioningTables.h"
19 #include "ValueRecords.h"
20 #include "GlyphIterator.h"
24 struct SinglePositioningSubtable
: GlyphPositioningSubtable
26 le_uint32
process(const LEReferenceTo
<SinglePositioningSubtable
> &base
, GlyphIterator
*glyphIterator
, const LEFontInstance
*fontInstance
, LEErrorCode
&success
) const;
29 struct SinglePositioningFormat1Subtable
: SinglePositioningSubtable
31 ValueFormat valueFormat
;
32 ValueRecord valueRecord
;
34 le_uint32
process(const LEReferenceTo
<SinglePositioningFormat1Subtable
> &base
, GlyphIterator
*glyphIterator
, const LEFontInstance
*fontInstance
, LEErrorCode
&success
) const;
37 struct SinglePositioningFormat2Subtable
: SinglePositioningSubtable
39 ValueFormat valueFormat
;
41 ValueRecord valueRecordArray
[ANY_NUMBER
];
43 le_uint32
process(const LEReferenceTo
<SinglePositioningFormat2Subtable
> &base
, GlyphIterator
*glyphIterator
, const LEFontInstance
*fontInstance
, LEErrorCode
&success
) const;
45 LE_VAR_ARRAY(SinglePositioningFormat2Subtable
, valueRecordArray
)