1 /* 2 * 3 * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved 4 * 5 */ 6 7 #ifndef __OPENTYPEUTILITIES_H 8 #define __OPENTYPEUTILITIES_H 9 10 /** 11 * \file 12 * \internal 13 */ 14 15 #include "LETypes.h" 16 #include "OpenTypeTables.h" 17 18 U_NAMESPACE_BEGIN 19 20 class OpenTypeUtilities /* not : public UObject because all methods are static */ { 21 public: 22 static le_int8 highBit(le_int32 value); 23 static Offset getTagOffset(LETag tag, const TagAndOffsetRecord *records, le_int32 recordCount); 24 static le_int32 getGlyphRangeIndex(TTGlyphID glyphID, const GlyphRangeRecord *records, le_int32 recordCount); 25 static le_int32 search(le_uint16 value, const le_uint16 array[], le_int32 count); 26 static le_int32 search(le_uint32 value, const le_uint32 array[], le_int32 count); 27 static void sort(le_uint16 *array, le_int32 count); 28 29 private: OpenTypeUtilities()30 OpenTypeUtilities() {} // private - forbid instantiation 31 }; 32 33 U_NAMESPACE_END 34 #endif 35