2 * @(#)GlyphSubstitutionTables.h 1.9 00/03/15
4 * (C) Copyright IBM Corp. 1998-2003 - All Rights Reserved
8 #ifndef __GLYPHSUBSTITUTIONTABLES_H
9 #define __GLYPHSUBSTITUTIONTABLES_H
17 #include "LEGlyphFilter.h"
18 #include "OpenTypeTables.h"
20 #include "GlyphDefinitionTables.h"
21 #include "GlyphPositionAdjustments.h"
25 struct GlyphSubstitutionTableHeader
28 Offset scriptListOffset
;
29 Offset featureListOffset
;
30 Offset lookupListOffset
;
32 void process(LEGlyphID
*glyphs
, const LETag
**glyphTags
, le_int32 glyphCount
,
33 le_bool rightToLeft
, LETag scriptTag
, LETag languageTag
,
34 const GlyphDefinitionTableHeader
*glyphDefinitionTableHeader
,
35 const LEGlyphFilter
*filter
= NULL
, const LETag
*featureOrder
= NULL
) const;
37 le_bool
coversScript(LETag scriptTag
) const;
38 le_bool
coversScriptAndLanguage(LETag scriptTag
, LETag languageTag
) const;
41 enum GlyphSubstitutionSubtableTypes
48 gsstChainingContext
= 6,
50 gsstReverseChaining
= 8
53 typedef LookupSubtable GlyphSubstitutionSubtable
;