## org.biojava.bio.symbol
Class SimpleTranslationTable

    java.lang.Object
      |
      +--org.biojava.bio.symbol.SimpleTranslationTable

public class SimpleTranslationTable
extends java.lang.Object
implements TranslationTable, java.io.Serializable

A no-frills implementation of TranslationTable that uses a Map to map from symbols in a finite source alphabet into a target alphabet.

Author:
  Matthew Pocock
See Also:
  Serialized Form

Constructor Summary
`SimpleTranslationTable(FiniteAlphabet source, Alphabet target)` Create a new translation table that will translate symbols from source to target.
`SimpleTranslationTable(FiniteAlphabet source, Alphabet target, java.util.Map transMap)` Create a new translation table that will translate symbols from source to target.

Method Summary
`Alphabet` `getSourceAlphabet()` The alphabet of Symbols that can be translated.
`Alphabet` `getTargetAlphabet()` The alphabet of Symbols that will be produced.
`void` `setTranslation(Symbol from, Symbol to)` Alter the translation mapping.
`Symbol` `translate(Symbol res)` Translate a single symbol from source alphabet to the target alphabet.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SimpleTranslationTable

    public SimpleTranslationTable(FiniteAlphabet source,
                                  Alphabet target)

  Create a new translation table that will translate symbols from source to target.

  The source alphabet must be finite, as a Map object is used to associate a source Symbol with a target Symbol. The target alphabet need not be finite.

  Parameters:
    `source` - the FiniteAlphabet to translate from
    `target` - the Alphabet to translate into

### SimpleTranslationTable

    public SimpleTranslationTable(FiniteAlphabet source,
                                  Alphabet target,
                                  java.util.Map transMap)

  Create a new translation table that will translate symbols from source to target.

  The Map transMap should contain keys in the source alphabet with values in the target alphabet. However, this is not currently checked.

  The source alphabet must be finite, as a Map object is used to associate a source Symbol with a target Symbol. The target alphabet need not be finite.

  Parameters:
    `source` - the FiniteAlphabet to translate from
    `target` - the Alphabet to translate into

Method Detail

### getSourceAlphabet

    public Alphabet getSourceAlphabet()

  Description copied from interface: TranslationTable
  The alphabet of Symbols that can be translated.
  Specified by:
    getSourceAlphabet in interface TranslationTable
  Tags copied from interface: TranslationTable
  Returns:
    the source Alphabet

### getTargetAlphabet

    public Alphabet getTargetAlphabet()

  Description copied from interface: TranslationTable
  The alphabet of Symbols that will be produced.
  Specified by:
    getTargetAlphabet in interface TranslationTable
  Tags copied from interface: TranslationTable
  Returns:
    the target Alphabet

### translate

    public Symbol translate(Symbol res)
                     throws IllegalSymbolException

  Description copied from interface: TranslationTable
  Translate a single symbol from source alphabet to the target alphabet.
  Specified by:
    translate in interface TranslationTable
  Tags copied from interface: TranslationTable
  Parameters:
    `sym` - the Symbol to translate (member of source alphabet)
  Returns:
    the translated version of sym (member of target alphabet)
  Throws:
    IllegalSymbolException - if sym is not a member of the source alphabet

### setTranslation

    public void setTranslation(Symbol from,
                               Symbol to)
                        throws IllegalSymbolException

  Alter the translation mapping.
  Parameters:
    `from` - source Symbol
    `to` - target Symbol to be returned by translate(from)
  Throws:
    IllefalSymbolException - if either from is not in the source alphabet or to is not in the target alphabet