Class CodonSequence

  • All Implemented Interfaces:
    java.lang.Comparable, Sequence, Attributable

    public class CodonSequence
    extends java.lang.Object
    implements Sequence
    A codon implementation of the Sequence interface.
    Version:
    $Id: BasicSequence.java 1042 2009-12-08 00:14:20Z amyzeta $
    Author:
    Andrew Rambaut, Alexei Drummond
    • Constructor Detail

      • CodonSequence

        public CodonSequence​(Taxon taxon,
                             State[] states)
        Creates a sequence with a name corresponding to the taxon name
        Parameters:
        taxon -
        states -
    • Method Detail

      • 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.
      • getSequenceCharacters

        public byte[] getSequenceCharacters()
        Get the sequence characters representing the sequence. This return is a byte[] rather than a char[] to avoid using twice as much memory as necessary. The individual elements of the returned array can be cast to chars.
        Returns:
        the sequence characters as an array of characters.
      • 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
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object