]> git.saurik.com Git - apple/icu.git/blob - icuSources/layout/CanonShaping.h
ICU-57166.0.1.tar.gz
[apple/icu.git] / icuSources / layout / CanonShaping.h
1 /*
2 *
3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
4 *
5 */
6
7 #ifndef __CANONSHAPING_H
8 #define __CANONSHAPING_H
9
10 #include "LETypes.h"
11
12 U_NAMESPACE_BEGIN
13
14 class LEGlyphStorage;
15
16 class U_LAYOUT_API CanonShaping /* not : public UObject because all members are static */
17 {
18 public:
19 static const le_uint8 glyphSubstitutionTable[];
20 static const size_t glyphSubstitutionTableLen;
21 static const le_uint8 glyphDefinitionTable[];
22 static const size_t glyphDefinitionTableLen;
23
24 static void reorderMarks(const LEUnicode *inChars, le_int32 charCount, le_bool rightToLeft,
25 LEUnicode *outChars, LEGlyphStorage &glyphStorage);
26
27 private:
28 static void sortMarks(le_int32 *indices, const le_int32 *combiningClasses, le_int32 index, le_int32 limit);
29 };
30
31 U_NAMESPACE_END
32 #endif