pal.alignment
Class AbstractAlignment

java.lang.Object
  |
  +--pal.alignment.AbstractAlignment
All Implemented Interfaces:
Alignment, IdGroup, Report, java.io.Serializable
Direct Known Subclasses:
AminoAcidAlignment, BootstrappedAlignment, CodonAlignment, ConcatenatedAlignment, ConcatenatedAnnotatedAlignment, GapBalancedAlignment, IndelAlignment, JumbledAlignment, ReadAlignment, SimpleAlignment, SimulatedAlignment, SitePattern, StrippedAlignment

public abstract class AbstractAlignment
extends java.lang.Object
implements Alignment, java.io.Serializable, IdGroup, Report

abstract base class for any alignment data.

See Also:
Serialized Form

Field Summary
protected  DataType dataType
          data type
protected  double[] frequency
          frequencies of the allowed states (scaled to sum to 1.0 and suitable for RateMatrix)
protected  IdGroup idGroup
          sequence identifiers
protected  int numSeqs
          number of sequences
protected  int numSites
          length of each sequence
 
Fields inherited from interface pal.alignment.Alignment
GAP
 
Constructor Summary
AbstractAlignment()
           
 
Method Summary
 java.lang.String getAlignedSequenceString(int seq)
          Returns a string representing a single sequence (including gaps) from this alignment.
abstract  char getData(int seq, int site)
          sequence alignment at (sequence, site)
 DataType getDataType()
          Returns the datatype of this alignment
 double[] getFrequency()
          Returns frequency of character states.
 int getIdCount()
          Returns the number of identifiers in this group
 Identifier getIdentifier(int i)
          Returns the ith identifier.
 int getLength()
          Return number of sites in this alignment
 int getSequenceCount()
          Return number of sequences in this alignment
 int getSiteCount()
          Return number of sites for each sequence in this alignment
 int[][] getStates()
          Fills a [numsequences][length] matrix with indices.
 void guessDataType()
          Guess data type
 boolean isGap(int seq, int site)
          returns true if there is a gap in the give position.
 void report(java.io.PrintWriter out)
          print human readable report (e.g., on parameters and associated model)
 void setDataType(DataType d)
          Sets the datatype of this alignment
 void setFrequency(double[] f)
          Sets frequency of character states.
 void setIdentifier(int i, Identifier ident)
          Sets the ith identifier.
 java.lang.String toString()
          returns representation of this alignment as a string
 int whichIdNumber(java.lang.String name)
          returns the index of the identifier with the given name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

numSeqs

protected int numSeqs
number of sequences

numSites

protected int numSites
length of each sequence

idGroup

protected IdGroup idGroup
sequence identifiers

frequency

protected double[] frequency
frequencies of the allowed states (scaled to sum to 1.0 and suitable for RateMatrix)

dataType

protected DataType dataType
data type
Constructor Detail

AbstractAlignment

public AbstractAlignment()
Method Detail

getData

public abstract char getData(int seq,
                             int site)
sequence alignment at (sequence, site)
Specified by:
getData in interface Alignment

isGap

public boolean isGap(int seq,
                     int site)
returns true if there is a gap in the give position.

guessDataType

public void guessDataType()
Guess data type

getDataType

public DataType getDataType()
Returns the datatype of this alignment
Specified by:
getDataType in interface Alignment

setDataType

public void setDataType(DataType d)
Sets the datatype of this alignment
Specified by:
setDataType in interface Alignment

toString

public java.lang.String toString()
returns representation of this alignment as a string
Overrides:
toString in class java.lang.Object

report

public void report(java.io.PrintWriter out)
Description copied from interface: Report
print human readable report (e.g., on parameters and associated model)
Specified by:
report in interface Report
Following copied from interface: pal.misc.Report
Parameters:
out - output stream

getStates

public int[][] getStates()
Fills a [numsequences][length] matrix with indices. Each index represents the sequence state, -1 means a gap.

getLength

public final int getLength()
Return number of sites in this alignment

getSequenceCount

public final int getSequenceCount()
Return number of sequences in this alignment
Specified by:
getSequenceCount in interface Alignment

getSiteCount

public final int getSiteCount()
Return number of sites for each sequence in this alignment
Specified by:
getSiteCount in interface Alignment
Following copied from interface: pal.alignment.Alignment
Returns:
number of sites for each sequence in this alignment

getAlignedSequenceString

public java.lang.String getAlignedSequenceString(int seq)
Returns a string representing a single sequence (including gaps) from this alignment.
Specified by:
getAlignedSequenceString in interface Alignment

getIdentifier

public Identifier getIdentifier(int i)
Description copied from interface: IdGroup
Returns the ith identifier.
Specified by:
getIdentifier in interface IdGroup

setIdentifier

public void setIdentifier(int i,
                          Identifier ident)
Description copied from interface: IdGroup
Sets the ith identifier.
Specified by:
setIdentifier in interface IdGroup

getIdCount

public int getIdCount()
Description copied from interface: IdGroup
Returns the number of identifiers in this group
Specified by:
getIdCount in interface IdGroup

whichIdNumber

public int whichIdNumber(java.lang.String name)
Description copied from interface: IdGroup
returns the index of the identifier with the given name.
Specified by:
whichIdNumber in interface IdGroup

getFrequency

public double[] getFrequency()
Description copied from interface: Alignment
Returns frequency of character states.
Specified by:
getFrequency in interface Alignment

setFrequency

public void setFrequency(double[] f)
Description copied from interface: Alignment
Sets frequency of character states.
Specified by:
setFrequency in interface Alignment