1 /* 2 * 3 * (C) Copyright IBM Corp. 1998-2006 - 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 le_uint8 glyphDefinitionTable[]; 21 22 static void reorderMarks(const LEUnicode *inChars, le_int32 charCount, le_bool rightToLeft, 23 LEUnicode *outChars, LEGlyphStorage &glyphStorage); 24 25 private: 26 static void sortMarks(le_int32 *indices, const le_int32 *combiningClasses, le_int32 index, le_int32 limit); 27 }; 28 29 U_NAMESPACE_END 30 #endif 31