sub next_aln
{ my $self = shift;
my $entry;
my ($acc, $fake_id, $start, $end, $seq, $add, %names);
my $aln = Bio::SimpleAlign->new(-source => 'prodom');
while( $entry = $self->_readline) {
if ($entry =~ /^AC\s+(\S+)\s*$/) { $aln->id( $1 );
}
elsif ($entry =~ /^AL\s+(\S+)\|(\S+)\s+(\d+)\s+(\d+)\s+\S+\s+(\S+)\s*$/){ $acc=$1;
$fake_id=$2; $start=$3;
$end=$4;
$seq=$5;
$names{'fake_id'} = $fake_id;
$add = new Bio::LocatableSeq('-seq'=>$seq,
'-id'=>$acc,
'-start'=>$start,
'-end'=>$end,
);
$aln->add_seq($add);
}
elsif ($entry =~ /^CO/) {
last;
}
}
if ($end <= 0) { undef $aln;}
return $aln; } |
sub write_aln
{ my ($self,@aln) = @_;
$self->throw("Sorry: prodom-format output, not yet implemented! /n");
}
1; } |
Report bugs to the Bioperl bug tracking system to help us keep track
the bugs and their resolution.
Bug reports can be submitted via email or the web:
bioperl-bugs@bio.perl.org
http://bugzilla.bioperl.org/