From 3d51113401b585dc2fc813cbe67f8250e2bcfd43 Mon Sep 17 00:00:00 2001 From: martinahansen Date: Wed, 28 Nov 2012 18:08:46 +0000 Subject: [PATCH] fixing up backtrack code git-svn-id: http://biopieces.googlecode.com/svn/trunk@2008 74ccb610-7750-0410-82ae-013aeee3265d --- bp_bin/remove_primers | 2 ++ code_ruby/lib/maasha/seq.rb | 1 - code_ruby/lib/maasha/seq/backtrack.rb | 5 ++++- code_ruby/test/maasha/seq/test_backtrack.rb | 2 ++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/bp_bin/remove_primers b/bp_bin/remove_primers index 720d943..5f26eb6 100755 --- a/bp_bin/remove_primers +++ b/bp_bin/remove_primers @@ -33,6 +33,8 @@ require 'pp' require 'maasha/biopieces' require 'maasha/seq' +include BackTrack + casts = [] casts << {:long=>'forward', :short=>'f', :type=>'string', :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil} casts << {:long=>'reverse', :short=>'r', :type=>'string', :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil} diff --git a/code_ruby/lib/maasha/seq.rb b/code_ruby/lib/maasha/seq.rb index a864601..57d70b2 100644 --- a/code_ruby/lib/maasha/seq.rb +++ b/code_ruby/lib/maasha/seq.rb @@ -78,7 +78,6 @@ class SeqError < StandardError; end class Seq #include Patscan include PatternMatcher - include BackTrack include Digest include Trim diff --git a/code_ruby/lib/maasha/seq/backtrack.rb b/code_ruby/lib/maasha/seq/backtrack.rb index 0bb5789..714cb22 100644 --- a/code_ruby/lib/maasha/seq/backtrack.rb +++ b/code_ruby/lib/maasha/seq/backtrack.rb @@ -65,13 +65,16 @@ module BackTrack matches = [] while result = track_C(self.seq, self.length, pattern, offset, max_mismatches, max_insertions, max_deletions) - match = Match.new(result[0], result[1], result[2], result[3], result[4], self.seq[result[0] ... result[0] + result[1]]) + pos, length, mis, ins, del = result + + match = Match.new(pos, length, mis, ins, del, self.seq[pos ... pos + length]) if block_given? yield match else matches << match end + offset = match.pos + 1 end diff --git a/code_ruby/test/maasha/seq/test_backtrack.rb b/code_ruby/test/maasha/seq/test_backtrack.rb index 43af1de..02260e8 100644 --- a/code_ruby/test/maasha/seq/test_backtrack.rb +++ b/code_ruby/test/maasha/seq/test_backtrack.rb @@ -28,6 +28,8 @@ $:.unshift File.join(File.dirname(__FILE__),'..','lib') require 'test/unit' require 'maasha/seq' +include BackTrack + class BackTrackTest < Test::Unit::TestCase def setup # 0 1 -- 2.39.5