comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/opt/bbmap-39.01-1/current/aligner/Aligner.java @ 68:5028fdace37b

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