Class LightPairDPCursor

  • All Implemented Interfaces:
    PairDPCursor

    public class LightPairDPCursor
    extends Object
    implements PairDPCursor
    A LIGHT implementation of PairDPCursor.

    This object manages memory that is linear on the length of the shortest sequence. It does not maintain any data beyond that necessary for the next round of calcCell invocations.

    Author:
    Matthew Pocock, David Huen (fixes for magical state)
    • Constructor Detail

      • LightPairDPCursor

        public LightPairDPCursor​(SymbolList seq1,
                                 SymbolList seq2,
                                 int depth1,
                                 int depth2,
                                 int numStates,
                                 EmissionCache eCache)
                          throws IllegalSymbolException
        Constructor for the LightPairDPCursor object
        Parameters:
        seq1 - First sequence in this twohead DP.
        seq2 - Second sequence in this twohead DP.
        depth1 - The number of bases of context required in first sequence to compute DP matrix at a point (= max advance in first sequence + 1).
        depth2 - The number of bases of context required in second sequence to compute DP matrix at a point (= max advance in second sequence + 1).
        numStates - Total number of states in model.
        eCache - Emission cache to be used with this run.
        Throws:
        IllegalSymbolException - Description of Exception
    • Method Detail

      • getDepth

        public int[] getDepth()
        Gets the Depth attribute of the LightPairDPCursor object
        Specified by:
        getDepth in interface PairDPCursor
        Returns:
        The Depth value
      • hasNext

        public boolean hasNext()
        Are there further Cells to be computed?
        Specified by:
        hasNext in interface PairDPCursor
        Returns:
        Description of the Returned Value
      • press

        public Cell[][] press()
        Returns the minimal context of the DP matrix necessary to compute the value of a single point in that matrix.

        The Cell [][] array has the origin as the current point to be evaluated and successive rows/columns represent rows/columns backwards within the DP matrix.

        Specified by:
        press in interface PairDPCursor
        Returns:
        An array representing the immediate context around the element to be computed.