1/*
2 * @(#)KernTable.h	1.1 04/10/13
3 *
4 * (C) Copyright IBM Corp. 2004-2005 - All Rights Reserved
5 *
6 */
7
8#ifndef __KERNTABLE_H
9#define __KERNTABLE_H
10
11#ifndef __LETYPES_H
12#include "LETypes.h"
13#endif
14
15#include "LETypes.h"
16//#include "LEFontInstance.h"
17//#include "LEGlyphStorage.h"
18
19#include <stdio.h>
20
21U_NAMESPACE_BEGIN
22struct PairInfo;
23class  LEFontInstance;
24class  LEGlyphStorage;
25
26/**
27 * Windows type 0 kerning table support only for now.
28 */
29class U_LAYOUT_API KernTable
30{
31 private:
32  le_uint16 coverage;
33  le_uint16 nPairs;
34  const PairInfo* pairs;
35  const LEFontInstance* font;
36  le_uint16 searchRange;
37  le_uint16 entrySelector;
38  le_uint16 rangeShift;
39
40 public:
41  KernTable(const LEFontInstance* font, const void* tableData);
42
43  /*
44   * Process the glyph positions.
45   */
46  void process(LEGlyphStorage& storage);
47};
48
49U_NAMESPACE_END
50
51#endif
52