os/textandloc/fontservices/textshaperplugin/IcuSource/layout/KernTable.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     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 
    21 U_NAMESPACE_BEGIN
    22 struct PairInfo;
    23 
    24 /**
    25  * Windows type 0 kerning table support only for now.
    26  */
    27 class U_LAYOUT_API KernTable
    28 {
    29  private:
    30   le_uint16 coverage;
    31   le_uint16 nPairs;
    32   const PairInfo* pairs;
    33   const LEFontInstance* font;
    34   le_uint16 searchRange;
    35   le_uint16 entrySelector;
    36   le_uint16 rangeShift;
    37 
    38  public:
    39   KernTable(const LEFontInstance* font, const void* tableData);
    40 
    41   /*
    42    * Process the glyph positions.
    43    */
    44   void process(LEGlyphStorage& storage);
    45 };
    46 
    47 U_NAMESPACE_END
    48 
    49 #endif