]>
Commit | Line | Data |
---|---|---|
b75a7d8f | 1 | /* |
57a6839d | 2 | * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved |
b75a7d8f A |
3 | * |
4 | */ | |
5 | ||
6 | #ifndef __GLYPHPOSITIONINGTABLES_H | |
7 | #define __GLYPHPOSITIONINGTABLES_H | |
8 | ||
9 | /** | |
10 | * \file | |
11 | * \internal | |
12 | */ | |
13 | ||
14 | #include "LETypes.h" | |
b75a7d8f A |
15 | #include "OpenTypeTables.h" |
16 | #include "Lookups.h" | |
374ca955 | 17 | #include "GlyphLookupTables.h" |
57a6839d | 18 | #include "LETableReference.h" |
b75a7d8f A |
19 | |
20 | U_NAMESPACE_BEGIN | |
21 | ||
73c04bcf A |
22 | class LEFontInstance; |
23 | class LEGlyphStorage; | |
24 | class LEGlyphFilter; | |
25 | class GlyphPositionAdjustments; | |
26 | struct GlyphDefinitionTableHeader; | |
b75a7d8f | 27 | |
374ca955 A |
28 | struct GlyphPositioningTableHeader : public GlyphLookupTableHeader |
29 | { | |
57a6839d | 30 | void process(const LEReferenceTo<GlyphPositioningTableHeader> &base, LEGlyphStorage &glyphStorage, GlyphPositionAdjustments *glyphPositionAdjustments, |
b75a7d8f | 31 | le_bool rightToLeft, LETag scriptTag, LETag languageTag, |
57a6839d | 32 | const LEReferenceTo<GlyphDefinitionTableHeader> &glyphDefinitionTableHeader, LEErrorCode &success, |
73c04bcf | 33 | const LEFontInstance *fontInstance, const FeatureMap *featureMap, le_int32 featureMapCount, le_bool featureOrder) const; |
b75a7d8f A |
34 | }; |
35 | ||
36 | enum GlyphPositioningSubtableTypes | |
37 | { | |
38 | gpstSingle = 1, | |
39 | gpstPair = 2, | |
40 | gpstCursive = 3, | |
41 | gpstMarkToBase = 4, | |
42 | gpstMarkToLigature = 5, | |
43 | gpstMarkToMark = 6, | |
44 | gpstContext = 7, | |
45 | gpstChainedContext = 8, | |
46 | gpstExtension = 9 | |
47 | }; | |
48 | ||
49 | typedef LookupSubtable GlyphPositioningSubtable; | |
50 | ||
51 | U_NAMESPACE_END | |
52 | #endif |