jpayne@68
|
1 package aligner;
|
jpayne@68
|
2
|
jpayne@68
|
3 public interface Aligner {
|
jpayne@68
|
4
|
jpayne@68
|
5 /** return new int[] {rows, maxCol, maxState, maxScore, maxStart};
|
jpayne@68
|
6 * Will not fill areas that cannot match minScore */
|
jpayne@68
|
7 int[] fillLimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore);
|
jpayne@68
|
8
|
jpayne@68
|
9 /** return new int[] {rows, maxCol, maxState, maxScore, maxStart};
|
jpayne@68
|
10 * Does not require a min score (ie, same as old method) */
|
jpayne@68
|
11 int[] fillUnlimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc);
|
jpayne@68
|
12
|
jpayne@68
|
13 /** return new int[] {rows, maxCol, maxState, maxScore, maxStart};
|
jpayne@68
|
14 * Min score is optional */
|
jpayne@68
|
15 int[] fillUnlimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore);
|
jpayne@68
|
16
|
jpayne@68
|
17 /** Generates the match string */
|
jpayne@68
|
18 byte[] traceback(byte[] query, byte[] ref, int refStartLoc, int refEndLoc, int row, int col, int state);
|
jpayne@68
|
19
|
jpayne@68
|
20 /** Generates identity;
|
jpayne@68
|
21 * fills 'extra' with {match, sub, del, ins, N, clip} if present */
|
jpayne@68
|
22 float tracebackIdentity(byte[] query, byte[] ref, int refStartLoc, int refEndLoc, int row, int col, int state, int[] extra);
|
jpayne@68
|
23
|
jpayne@68
|
24 /** @return {score, bestRefStart, bestRefStop} */
|
jpayne@68
|
25 int[] score(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int maxRow, int maxCol,
|
jpayne@68
|
26 int maxState/*, final int maxScore, final int maxStart*/);
|
jpayne@68
|
27
|
jpayne@68
|
28 /** Will not fill areas that cannot match minScore.
|
jpayne@68
|
29 * @return {score, bestRefStart, bestRefStop} */
|
jpayne@68
|
30 int[] fillAndScoreLimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore);
|
jpayne@68
|
31
|
jpayne@68
|
32 /** Lowest possible alignment score for a read with this length and this identity */
|
jpayne@68
|
33 int minScoreByIdentity(int len, float identity);
|
jpayne@68
|
34
|
jpayne@68
|
35 // int maxRows();
|
jpayne@68
|
36 // int maxColumns();
|
jpayne@68
|
37 int rows();
|
jpayne@68
|
38 int columns();
|
jpayne@68
|
39
|
jpayne@68
|
40 } |