org.apache.fop.complexscripts.fonts

## Class GlyphClassTable

- java.lang.Object
- - org.apache.fop.complexscripts.fonts.GlyphMappingTable
  - - org.apache.fop.complexscripts.fonts.GlyphClassTable

- All Implemented Interfaces:
    GlyphClassMapping

      public final class GlyphClassTable
      extends GlyphMappingTable
      implements GlyphClassMapping

  Base class implementation of glyph class table.

  This work was originally authored by Glenn Adams (gadams@apache.org).

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.fop.complexscripts.fonts.GlyphMappingTable

      `GlyphMappingTable.EmptyMappingTable, GlyphMappingTable.MappedMappingTable, GlyphMappingTable.MappingRange, GlyphMappingTable.RangeMappingTable`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `GLYPH_CLASS_TYPE_COVERAGE_SET` empty mapping table
    `static int` | `GLYPH_CLASS_TYPE_EMPTY` empty mapping table
    `static int` | `GLYPH_CLASS_TYPE_MAPPED` mapped mapping table
    `static int` | `GLYPH_CLASS_TYPE_RANGE` range based mapping table

    - ### Fields inherited from class org.apache.fop.complexscripts.fonts.GlyphMappingTable

      `GLYPH_MAPPING_TYPE_EMPTY, GLYPH_MAPPING_TYPE_MAPPED, GLYPH_MAPPING_TYPE_RANGE`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static GlyphClassTable` | `createClassTable(java.util.List entries)` Create glyph class table.
    `int` | `getClassIndex(int gid, int set)` Map glyph identifier (code) to coverge index.
    `int` | `getClassSize(int set)` Obtain size of class table, i.e., ciMax + 1, where ciMax is the maximum class index.
    `java.util.List` | `getEntries()` Obtain mapping entries.
    `int` | `getType()` Obtain mapping type.

    - ### Methods inherited from class org.apache.fop.complexscripts.fonts.GlyphMappingTable

      `getMappedIndex, getMappingSize`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### GLYPH_CLASS_TYPE_EMPTY

          public static final int GLYPH_CLASS_TYPE_EMPTY

      empty mapping table
      See Also:
        Constant Field Values

    - #### GLYPH_CLASS_TYPE_MAPPED

          public static final int GLYPH_CLASS_TYPE_MAPPED

      mapped mapping table
      See Also:
        Constant Field Values

    - #### GLYPH_CLASS_TYPE_RANGE

          public static final int GLYPH_CLASS_TYPE_RANGE

      range based mapping table
      See Also:
        Constant Field Values

    - #### GLYPH_CLASS_TYPE_COVERAGE_SET

          public static final int GLYPH_CLASS_TYPE_COVERAGE_SET

      empty mapping table
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getType

          public int getType()

      Obtain mapping type.
      Overrides:
        `getType` in class `GlyphMappingTable`
      Returns:
        mapping format type

    - #### getEntries

          public java.util.List getEntries()

      Obtain mapping entries.
      Overrides:
        `getEntries` in class `GlyphMappingTable`
      Returns:
        list of mapping entries

    - #### getClassSize

          public int getClassSize(int set)

      Obtain size of class table, i.e., ciMax + 1, where ciMax is the maximum class index.
      Specified by:
        `getClassSize` in interface `GlyphClassMapping`
      Parameters:
        `set` - for coverage set based class mappings, indicates set index, otherwise ignored
      Returns:
        size of class table

    - #### getClassIndex

          public int getClassIndex(int gid,
                                   int set)

      Map glyph identifier (code) to coverge index. Returns -1 if glyph identifier is not in the domain of the class table.
      Specified by:
        `getClassIndex` in interface `GlyphClassMapping`
      Parameters:
        `gid` - glyph identifier (code)
        `set` - for coverage set based class mappings, indicates set index, otherwise ignored
      Returns:
        non-negative glyph class index or -1 if glyph identifiers is not mapped by table

    - #### createClassTable

          public static GlyphClassTable createClassTable(java.util.List entries)

      Create glyph class table.
      Parameters:
        `entries` - list of mapped or ranged class entries, or null or empty list
      Returns:
        a new covera table instance

Copyright 1999-2022 The Apache Software Foundation. All Rights Reserved.