Remove packaging direcotry
[platform/upstream/icu.git] / source / layout / GlyphSubstitutionTables.h
1 /*
2  *
3  * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
4  *
5  */
6
7 #ifndef __GLYPHSUBSTITUTIONTABLES_H
8 #define __GLYPHSUBSTITUTIONTABLES_H
9
10 /**
11  * \file
12  * \internal
13  */
14
15 #include "LETypes.h"
16 #include "OpenTypeTables.h"
17 #include "Lookups.h"
18 #include "GlyphLookupTables.h"
19
20 U_NAMESPACE_BEGIN
21
22 class  LEGlyphStorage;
23 class  LEGlyphFilter;
24 struct GlyphDefinitionTableHeader;
25
26 struct GlyphSubstitutionTableHeader : public GlyphLookupTableHeader
27 {
28   le_int32    process(const LEReferenceTo<GlyphSubstitutionTableHeader> &base, 
29                       LEGlyphStorage &glyphStorage, 
30                         le_bool rightToLeft, 
31                         LETag scriptTag, 
32                         LETag languageTag,
33                         const LEReferenceTo<GlyphDefinitionTableHeader> &glyphDefinitionTableHeader, 
34                         const LEGlyphFilter *filter,
35                         const FeatureMap *featureMap, 
36                         le_int32 featureMapCount, 
37                         le_bool featureOrder,
38                         LEErrorCode &success) const;
39 };
40
41 enum GlyphSubstitutionSubtableTypes
42 {
43     gsstSingle          = 1,
44     gsstMultiple        = 2,
45     gsstAlternate       = 3,
46     gsstLigature        = 4,
47     gsstContext         = 5,
48     gsstChainingContext = 6,
49     gsstExtension       = 7,
50     gsstReverseChaining = 8
51 };
52
53 typedef LookupSubtable GlyphSubstitutionSubtable;
54
55 U_NAMESPACE_END
56 #endif