Mercurial > repos > rliterman > csp2
diff 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 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/opt/bbmap-39.01-1/current/aligner/Aligner.java Tue Mar 18 16:23:26 2025 -0400 @@ -0,0 +1,40 @@ +package aligner; + +public interface Aligner { + + /** return new int[] {rows, maxCol, maxState, maxScore, maxStart}; + * Will not fill areas that cannot match minScore */ + int[] fillLimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore); + + /** return new int[] {rows, maxCol, maxState, maxScore, maxStart}; + * Does not require a min score (ie, same as old method) */ + int[] fillUnlimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc); + + /** return new int[] {rows, maxCol, maxState, maxScore, maxStart}; + * Min score is optional */ + int[] fillUnlimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore); + + /** Generates the match string */ + byte[] traceback(byte[] query, byte[] ref, int refStartLoc, int refEndLoc, int row, int col, int state); + + /** Generates identity; + * fills 'extra' with {match, sub, del, ins, N, clip} if present */ + float tracebackIdentity(byte[] query, byte[] ref, int refStartLoc, int refEndLoc, int row, int col, int state, int[] extra); + + /** @return {score, bestRefStart, bestRefStop} */ + int[] score(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int maxRow, int maxCol, + int maxState/*, final int maxScore, final int maxStart*/); + + /** Will not fill areas that cannot match minScore. + * @return {score, bestRefStart, bestRefStop} */ + int[] fillAndScoreLimited(byte[] read, byte[] ref, int refStartLoc, int refEndLoc, int minScore); + + /** Lowest possible alignment score for a read with this length and this identity */ + int minScoreByIdentity(int len, float identity); + +// int maxRows(); +// int maxColumns(); + int rows(); + int columns(); + +} \ No newline at end of file