org.biojava.bio.symbol
Interface BasisSymbol

All Superinterfaces:
Annotatable, Changeable, Symbol
All Known Subinterfaces:
AtomicSymbol, DotState, EmissionState, ModelInState, State
All Known Implementing Classes:
DoubleAlphabet.DoubleRange, DoubleAlphabet.DoubleSymbol, FundamentalAtomicSymbol, IntegerAlphabet.IntegerSymbol, MagicalState, ProfileEmissionState, SimpleAtomicSymbol, SimpleDotState, SimpleEmissionState, SimpleModelInState

public interface BasisSymbol
extends Symbol

A symbol that can be represented as a string of Symbols.

BasisSymbol instances can always be represented uniquely as a single List of BasisSymbol instances. The symbol N is a BasisSymbol - it can be uniquely represented by N. It matches {a, g, c, t}. Similarly, the symbol atn is a BasisSymbol, as it can be uniquely represented with a single list of symbols [a, t, n]. Its getMatches will return the set {ata, att, atg, atc}.

The getSymbols method returns the unique list of BasisSymbol instances that this is composed from. For example, the codon ambiguity symbol atn will have a getSymbols method that returns the list [a, t, n]. The getMatches method will return an Alphabet containing each AtomicSymbol that can be made by expanding the list of BasisSymbol instances.

Since:
1.1
Author:
Matthew Pocock

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
 
Field Summary
 
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
 
Method Summary
 List getSymbols()
           The list of symbols that this symbol is composed from.
 
Methods inherited from interface org.biojava.bio.symbol.Symbol
getMatches, getName
 
Methods inherited from interface org.biojava.bio.Annotatable
getAnnotation
 
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
 

Method Detail

getSymbols

List getSymbols()

The list of symbols that this symbol is composed from.

In the usual case, this list will contain just this single symbol. In the case where a symbol represents an ordered combination of other symbols, the list will contain each of these BasisSymbols.

Returns:
the List of Symbols that this Symbol is built from