X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bp_bin%2Fextract_seq;h=40260cc9e490b3629fb131f8435b8f6c3c81144c;hb=27a34d675d07468851f2076a62ca2b8dbefb5923;hp=c900bc77eef4d92afdf2492f15ccfec7d9fe57b6;hpb=b607bb9d6e4adcebd9f9e128aacc91a212010ee0;p=biopieces.git diff --git a/bp_bin/extract_seq b/bp_bin/extract_seq index c900bc7..40260cc 100755 --- a/bp_bin/extract_seq +++ b/bp_bin/extract_seq @@ -1,4 +1,4 @@ -#!/usr/bin/env perl -w +#!/usr/bin/env perl # Copyright (C) 2007-2009 Martin A. Hansen. @@ -26,6 +26,7 @@ # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< +use warnings; use strict; use Maasha::Biopieces; @@ -68,23 +69,34 @@ while ( $record = Maasha::Biopieces::get_record( $in ) ) { if ( defined $beg and defined $end ) { - if ( $end - $beg + 1 > length $record->{ "SEQ" } ) { - $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; - } else { - $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg, $end - $beg + 1; + if ( $end - $beg + 1 > length $record->{ "SEQ" } ) + { + $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; + $record->{ "SCORES" } = substr $record->{ "SEQ" }, $beg if $record->{ "SCORES" }; + } + else + { + $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg, $end - $beg + 1; + $record->{ "SCORES" } = substr $record->{ "SCORES" }, $beg, $end - $beg + 1 if $record->{ "SCORES" }; } } elsif ( defined $beg and defined $len ) { - if ( $len > length $record->{ "SEQ" } ) { - $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; - } else { - $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg, $len; + if ( $len > length $record->{ "SEQ" } ) + { + $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; + $record->{ "SCORES" } = substr $record->{ "SCORES" }, $beg if $record->{ "SCORES" }; + } + else + { + $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg, $len; + $record->{ "SCORES" } = substr $record->{ "SCORES" }, $beg, $len if $record->{ "SCORES" }; } } elsif ( defined $beg ) { - $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; + $record->{ "SEQ" } = substr $record->{ "SEQ" }, $beg; + $record->{ "SCORES" } = substr $record->{ "SCORES" }, $beg if $record->{ "SCORES" }; } $record->{ "SEQ_LEN" } = length $record->{ "SEQ" }; @@ -93,26 +105,22 @@ while ( $record = Maasha::Biopieces::get_record( $in ) ) Maasha::Biopieces::put_record( $record, $out ); } +Maasha::Biopieces::close_stream( $in ); +Maasha::Biopieces::close_stream( $out ); + # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< BEGIN { - $run_time_beg = Maasha::Biopieces::run_time(); - - Maasha::Biopieces::log_biopiece(); + Maasha::Biopieces::status_set(); } END { - Maasha::Biopieces::close_stream( $in ); - Maasha::Biopieces::close_stream( $out ); - - $run_time_end = Maasha::Biopieces::run_time(); - - Maasha::Biopieces::run_time_print( $run_time_beg, $run_time_end, $options ); + Maasha::Biopieces::status_log(); } @@ -120,4 +128,3 @@ END __END__ -