• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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