Home | History | Annotate | Download | only in layout
      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