X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bp_bin%2Fdigest_seq;h=2aa9ff9837fded6ad832d44fffacf99b08f96742;hb=5de6112b70b59420b245ce636a8b2e3c90acbe00;hp=e3a7c4fb4ebfc66a3666bd4569f4f275065f57e9;hpb=a0cc93e32e6f8ece751b2b653bac0ebbe5f40b37;p=biopieces.git diff --git a/bp_bin/digest_seq b/bp_bin/digest_seq index e3a7c4f..2aa9ff9 100755 --- a/bp_bin/digest_seq +++ b/bp_bin/digest_seq @@ -30,7 +30,6 @@ require 'maasha/biopieces' require 'maasha/seq' -require 'maasha/digest' casts = [] casts << {:long=>'pattern', :short=>'p', :type=>'string', :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil} @@ -40,12 +39,11 @@ options = Biopieces.options_parse(ARGV, casts) Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output| input.each_record do |record| - if record.has_key? :SEQ_NAME and record.has_key? :SEQ - seq = Seq.new_bp(record) - digest = Digest.new(seq, options[:pattern].to_s, options[:cut_pos]) + if record[:SEQ_NAME] and record[:SEQ] + seq = Seq.new_bp(record) - digest.each do |subseq| - new_record = subseq.to_bp + seq.each_digest(options[:pattern].to_s, options[:cut_pos]) do |digest| + new_record = digest.to_bp if new_record[:SEQ_NAME] =~ /\[(\d+)-(\d+)\]$/ s_beg = $1 @@ -55,6 +53,7 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output| new_record[:S_BEG] = s_beg new_record[:S_END] = s_end new_record[:REC_TYPE] = "DIGEST" + output.puts new_record end else