## org.biojava.bio.symbol
Class FundamentalAtomicSymbol

    java.lang.Object
      org.biojava.utils.AbstractChangeable
          org.biojava.bio.symbol.AbstractSymbol
              org.biojava.bio.symbol.FundamentalAtomicSymbol

All Implemented Interfaces:
  Serializable, Annotatable, AtomicSymbol, BasisSymbol, Symbol, Changeable

Direct Known Subclasses:
  SimpleDotState, SimpleModelInState

    public class FundamentalAtomicSymbol

extends AbstractSymbol
implements AtomicSymbol, Serializable

An atomic symbol consisting only of itself. This is the fundamental type of symbol, and needs a special implementation. If you wish to construct new Symbols, you should normally do so via utility methods on `AlphabetManager`. This may be useful as a base-class for other `Symbol` implementations.

Since:
  1.1
Author:
  Thomas Down
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
`Annotatable.AnnotationForwarder`

Field Summary

Fields inherited from class org.biojava.bio.symbol.AbstractSymbol
`annotationForwarder`

Fields inherited from interface org.biojava.bio.Annotatable
`ANNOTATION`

Constructor Summary
`FundamentalAtomicSymbol(String name, Annotation annotation)`

Method Summary
`Annotation` `getAnnotation()` Should return the associated annotation object.
`Alphabet` `getMatches()` The alphabet containing the symbols matched by this ambiguity symbol.
`String` `getName()` The long name for the symbol.
`List` `getSymbols()` The list of symbols that this symbol is composed from.

Methods inherited from class org.biojava.bio.symbol.AbstractSymbol
`getChangeSupport, toString`

Methods inherited from class org.biojava.utils.AbstractChangeable
`addChangeListener, addChangeListener, generateChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener`

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

Methods inherited from interface org.biojava.utils.Changeable
`addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener`

Constructor Detail

### FundamentalAtomicSymbol

    public FundamentalAtomicSymbol(String name,
                                   Annotation annotation)

Method Detail

### getName

    public String getName()

  Description copied from interface: `Symbol`
  The long name for the symbol.

  Specified by:
    `getName` in interface `Symbol`
  Returns:
    the long name

### getMatches

    public Alphabet getMatches()

  Description copied from interface: `Symbol`
  The alphabet containing the symbols matched by this ambiguity symbol.

  This alphabet contains all of, and only, the symbols matched by this symbol. For example, the symbol representing the DNA ambiguity code for W would contain the symbol for A and T from the DNA alphabet.

  Specified by:
    `getMatches` in interface `Symbol`
  Returns:
    the Alphabet of symbols matched by this symbol

### getSymbols

    public List getSymbols()

  Description copied from interface: `BasisSymbol`

  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.

  Specified by:
    `getSymbols` in interface `BasisSymbol`
  Returns:
    the List of Symbols that this Symbol is built from

### getAnnotation

    public Annotation getAnnotation()

  Description copied from interface: `Annotatable`
  Should return the associated annotation object.

  Specified by:
    `getAnnotation` in interface `Annotatable`
  Returns:
    an Annotation object, never null