public class AlignmentBlock
This class is used by the class CrochemoreLandauZivUkelson algorithm to store the information of an alignment block. All fields are public (but final) in order to simplify the access to the data.
For more information on how this class is used, please refer to the specification of the CrochemoreLandauZivUkelson class and it subclasses.
public Factor factor1
A pointer to the factor of the first sequence being aligned.
public Factor factor2
A pointer to the factor of the second sequence being aligned.
public kotlin.Array[] dist_column
The DIST column of this block.
public AlignmentBlock[] ancestor
An array of pointers to prefix blocks of this block.
public kotlin.Array[] output_border
This block's output border.
public kotlin.Array[] source_path
An array of indexes to the source of the highest scoring path for each entry in the output border.
public kotlin.Array[] direction
An array of directions that must be followed to reach the source of the highest scoring path for each entry in the output border.
public AlignmentBlock(Factor factor1, Factor factor2)
Creates a new root block. A root block does not have source_path and ancestor arrays. Moreover, its dist_column and output_border arrays are set to zero, and the direction array is set to contain an STOP_DIRECTION.
factor1 - factor of the first sequence being alignedfactor2 - factor of the second sequence being alignedpublic AlignmentBlock(Factor factor1, Factor factor2, int size)
Creates a new alignment block, with all arrays created with the specified size.
factor1 - factor of the first sequence being alignedfactor2 - factor of the second sequence being alignedsize - size of the arrays to be created