jebl.evolution.sequences
Class CanonicalSequence

java.lang.Object
  extended by jebl.evolution.sequences.CanonicalSequence
All Implemented Interfaces:
java.lang.Comparable, Sequence, Attributable

public class CanonicalSequence
extends java.lang.Object
implements Sequence

A default implementation of the Sequence interface that converts sequence characters to States such that calling getString() will always return uppercase residues with nucleotide U residues converted to T

Version:
$Id: BasicSequence.java 641 2007-02-16 11:56:21Z rambaut $
Author:
Andrew Rambaut, Alexei Drummond

Nested Class Summary
 
Nested classes/interfaces inherited from interface jebl.util.Attributable
Attributable.Utils
 
Constructor Summary
CanonicalSequence(SequenceType sequenceType, Taxon taxon, java.lang.CharSequence sequenceString)
          Creates a sequence with a name corresponding to the taxon name.
CanonicalSequence(SequenceType sequenceType, Taxon taxon, State[] states)
          Creates a sequence with a name corresponding to the taxon name
 
Method Summary
 int compareTo(java.lang.Object o)
          Sequences are compared by their taxa
 java.lang.Object getAttribute(java.lang.String name)
           
 java.util.Map<java.lang.String,java.lang.Object> getAttributeMap()
          Gets the entire attribute map.
 java.util.Set<java.lang.String> getAttributeNames()
           
 java.lang.String getCleanString()
           
 int getLength()
          Returns the length of the sequence
 SequenceType getSequenceType()
           
 State getState(int site)
           
 byte[] getStateIndices()
           
 State[] getStates()
           
 java.lang.String getString()
           
 Taxon getTaxon()
           
 void removeAttribute(java.lang.String name)
           
 void setAttribute(java.lang.String name, java.lang.Object value)
          Sets an named attribute for this object.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CanonicalSequence

public CanonicalSequence(SequenceType sequenceType,
                         Taxon taxon,
                         java.lang.CharSequence sequenceString)
Creates a sequence with a name corresponding to the taxon name. Use CharSequence so both a String and a StringBuilder are fine

Parameters:
taxon -
sequenceString -

CanonicalSequence

public CanonicalSequence(SequenceType sequenceType,
                         Taxon taxon,
                         State[] states)
Creates a sequence with a name corresponding to the taxon name

Parameters:
taxon -
sequenceType -
states -
Method Detail

getSequenceType

public SequenceType getSequenceType()
Specified by:
getSequenceType in interface Sequence
Returns:
the type of symbols that this sequence is made up of.

getString

public java.lang.String getString()
Specified by:
getString in interface Sequence
Returns:
a string representing the sequence of symbols.

getCleanString

public java.lang.String getCleanString()

getStates

public State[] getStates()
Specified by:
getStates in interface Sequence
Returns:
an array of state objects.

getStateIndices

public byte[] getStateIndices()
Specified by:
getStateIndices in interface Sequence
Returns:
an array of state indices.

getState

public State getState(int site)
Specified by:
getState in interface Sequence
Returns:
the state at site.

getLength

public int getLength()
Returns the length of the sequence

Specified by:
getLength in interface Sequence
Returns:
the length

getTaxon

public Taxon getTaxon()
Specified by:
getTaxon in interface Sequence
Returns:
that taxon that this sequence represents (primarily used to match sequences with tree nodes)

compareTo

public int compareTo(java.lang.Object o)
Sequences are compared by their taxa

Specified by:
compareTo in interface java.lang.Comparable
Parameters:
o - another sequence
Returns:
an integer

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object value)
Description copied from interface: Attributable
Sets an named attribute for this object.

Specified by:
setAttribute in interface Attributable
Parameters:
name - the name of the attribute.
value - the new value of the attribute.

getAttribute

public java.lang.Object getAttribute(java.lang.String name)
Specified by:
getAttribute in interface Attributable
Parameters:
name - the name of the attribute of interest, or null if the attribute doesn't exist.
Returns:
an object representing the named attributed for this object.

removeAttribute

public void removeAttribute(java.lang.String name)
Specified by:
removeAttribute in interface Attributable
Parameters:
name - name of attribute to remove

getAttributeNames

public java.util.Set<java.lang.String> getAttributeNames()
Specified by:
getAttributeNames in interface Attributable
Returns:
an array of the attributeNames that this object has.

getAttributeMap

public java.util.Map<java.lang.String,java.lang.Object> getAttributeMap()
Description copied from interface: Attributable
Gets the entire attribute map.

Specified by:
getAttributeMap in interface Attributable
Returns:
an unmodifiable map


http://code.google.com/p/jebl2/