org.biojava.bio.symbol
Interface TranslationTable

All Known Subinterfaces:
ManyToOneTranslationTable, ReversibleTranslationTable
All Known Implementing Classes:
AbstractManyToOneTranslationTable, AbstractReversibleTranslationTable, SimpleGeneticCodeTable, SimpleManyToOneTranslationTable, SimpleReversibleTranslationTable, SimpleTranslationTable

public interface TranslationTable

Encapsulates the mapping from a source to a destination alphabet.

A TranslationTable is in effect a map or function with the source domain being getSourceAlphabet() and the target domain being getTargetAlphabet(). The method translate() maps a single symbol from source to target.

It is presumed that there will be some explicit declaration of the mapping for attomic symbols, and that the mapping for all other symbols will be infered from these.

If you wish to translate every symbol in a symbol list then use TranslatedSymbolList to automate the job. If you want to translate windowed regions then first construct a WindowedSymbolList from the original sequence and then build a TranslatedSymbolList from this windowed view.

There are a range of named tables available. Their names are specified by the public static final fields in this interface. Each table can be retrieved by calling the static method RNATools.getGeneticCode(name) which will return the appropriate TanslationTable instance.

Author:
Matthew Pocock, Keith James

Field Summary
static String ALT_YEAST_NUC
          Translation table name for the alternative yeast nuclear genetic code.
static String ASCID_MITO
          Translation table name for the ascidian mitochondrial genetic code.
static String BACTERIAL
          Translation table name for the bacterial and plant plastid genetic code.
static String BLEPH_MNUC
          Translation table name for the blepharisma macronuclear genetic code.
static String CHLORO_MITO
          Translation table name for the chlorophycean mitochondrial genetic code.
static String CILIATE_NUC
          Translation table name for the ciliate nuclear genetic code.
static String ECHIN_MITO
          Translation table name for the echinoderm mitochondrial genetic code.
static String EUPL_NUC
          Translation table name for the euplotid nuclear genetic code.
static String FWORM_MITO
          Translation table name for the flatworm mitochondrial genetic code.
static String INVERT_MITO
          Translation table name for the invertebrate mitochondrial genetic code.
static String MOLD_MITO
          Translation table name for the mold mitochondrial genetic code.
static String SCENE_MITO
          Translation table name for the scenedesmus obliquus mitochondrial genetic code.
static String TREMA_MITO
          Translation table name for the trematode mitochondrial genetic code.
static String UNIVERSAL
          Translation table name for the universal genetic code.
static String VERT_MITO
          Translation table name for the vertebrate mitochondrial genetic code.
static String YEAST_MITO
          Translation table name for the yeast mitochondrial genetic code.
 
Method Summary
 Alphabet getSourceAlphabet()
          The alphabet of Symbols that can be translated.
 Alphabet getTargetAlphabet()
          The alphabet of Symbols that will be produced.
 Symbol translate(Symbol sym)
          Translate a single symbol from source alphabet to the target alphabet.
 

Field Detail

UNIVERSAL

static final String UNIVERSAL
Translation table name for the universal genetic code.

See Also:
Constant Field Values

VERT_MITO

static final String VERT_MITO
Translation table name for the vertebrate mitochondrial genetic code.

See Also:
Constant Field Values

YEAST_MITO

static final String YEAST_MITO
Translation table name for the yeast mitochondrial genetic code.

See Also:
Constant Field Values

MOLD_MITO

static final String MOLD_MITO
Translation table name for the mold mitochondrial genetic code.

See Also:
Constant Field Values

INVERT_MITO

static final String INVERT_MITO
Translation table name for the invertebrate mitochondrial genetic code.

See Also:
Constant Field Values

CILIATE_NUC

static final String CILIATE_NUC
Translation table name for the ciliate nuclear genetic code.

See Also:
Constant Field Values

ECHIN_MITO

static final String ECHIN_MITO
Translation table name for the echinoderm mitochondrial genetic code.

See Also:
Constant Field Values

EUPL_NUC

static final String EUPL_NUC
Translation table name for the euplotid nuclear genetic code.

See Also:
Constant Field Values

BACTERIAL

static final String BACTERIAL
Translation table name for the bacterial and plant plastid genetic code.

See Also:
Constant Field Values

ALT_YEAST_NUC

static final String ALT_YEAST_NUC
Translation table name for the alternative yeast nuclear genetic code.

See Also:
Constant Field Values

ASCID_MITO

static final String ASCID_MITO
Translation table name for the ascidian mitochondrial genetic code.

See Also:
Constant Field Values

FWORM_MITO

static final String FWORM_MITO
Translation table name for the flatworm mitochondrial genetic code.

See Also:
Constant Field Values

BLEPH_MNUC

static final String BLEPH_MNUC
Translation table name for the blepharisma macronuclear genetic code.

See Also:
Constant Field Values

CHLORO_MITO

static final String CHLORO_MITO
Translation table name for the chlorophycean mitochondrial genetic code.

See Also:
Constant Field Values

TREMA_MITO

static final String TREMA_MITO
Translation table name for the trematode mitochondrial genetic code.

See Also:
Constant Field Values

SCENE_MITO

static final String SCENE_MITO
Translation table name for the scenedesmus obliquus mitochondrial genetic code.

See Also:
Constant Field Values
Method Detail

getSourceAlphabet

Alphabet getSourceAlphabet()
The alphabet of Symbols that can be translated.

Returns:
the source Alphabet

getTargetAlphabet

Alphabet getTargetAlphabet()
The alphabet of Symbols that will be produced.

Returns:
the target Alphabet

translate

Symbol translate(Symbol sym)
                 throws IllegalSymbolException
Translate a single symbol from source alphabet to the target alphabet.

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