os/textandloc/fontservices/textshaperplugin/IcuSource/layout/GlyphSubstitutionTables.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /*
     2  *
     3  * (C) Copyright IBM Corp. 1998-2005 - All Rights Reserved
     4  *
     5  */
     6 
     7 #ifndef __GLYPHSUBSTITUTIONTABLES_H
     8 #define __GLYPHSUBSTITUTIONTABLES_H
     9 
    10 /**
    11  * \file
    12  * \internal
    13  */
    14 
    15 #include "LETypes.h"
    16 #include "OpenTypeTables.h"
    17 #include "Lookups.h"
    18 #include "GlyphLookupTables.h"
    19 
    20 U_NAMESPACE_BEGIN
    21 
    22 class  LEGlyphStorage;
    23 class  LEGlyphFilter;
    24 struct GlyphDefinitionTableHeader;
    25 
    26 struct GlyphSubstitutionTableHeader : public GlyphLookupTableHeader
    27 {
    28     le_int32    process(LEGlyphStorage &glyphStorage, le_bool rightToLeft, LETag scriptTag, LETag languageTag,
    29                  const GlyphDefinitionTableHeader *glyphDefinitionTableHeader,
    30                  LEErrorCode &success,
    31                  const LEGlyphFilter *filter = NULL, const LETag *featureOrder = NULL) const;
    32 };
    33 
    34 enum GlyphSubstitutionSubtableTypes
    35 {
    36     gsstSingle          = 1,
    37     gsstMultiple        = 2,
    38     gsstAlternate       = 3,
    39     gsstLigature        = 4,
    40     gsstContext         = 5,
    41     gsstChainingContext = 6,
    42     gsstExtension       = 7,
    43     gsstReverseChaining = 8
    44 };
    45 
    46 typedef LookupSubtable GlyphSubstitutionSubtable;
    47 
    48 U_NAMESPACE_END
    49 #endif