Bio::Coordinate
Result
Toolbar
Summary
Bio::Coordinate::Result - Results from coordinate transformation
Package variables
No package variables defined.
Included modules
Inherit
Synopsis
use Bio::Coordinate::Result;
#get results from a Bio::Coordinate::MapperI
$matched = $result->each_match;
Description
Methods
Methods description
Title : add_result Usage : $obj->add_result($result) Function: Adds the contents of one Bio::Coordinate::Result Example : Returns : 1 when succeeds Args : Result object |
Title : each_gap Usage : $obj->each_gap(); Function:
Returns a list of Bio::Coordianate::Result::Gap objects.
Returns : list of gaps
Args : none |
Title : each_match Usage : $obj->each_match(); Function:
Returns a list of Bio::Coordinate::Result::Match objects.
Returns : list of Matchs
Args : none |
Title : gap Usage : $gap_object = $obj->gap(); #or $gstart = $obj->gap->start; Function: Read only method for retrieving or accessing the gap object. Returns : one Bio::Coordinate::Result::Gap Args : |
Title : match Usage : $match_object = $obj->match(); #or $gstart = $obj->gap->start; Function: Read only method for retrieving or accessing the match object. Returns : one Bio::Coordinate::Result::Match Args : |
Title : purge_gaps Usage : $gap_count = $obj->purge_gaps; Function: remove all gaps from the Result Returns : count of removed gaps Args : |
Title : seq_id Usage : my $seqid = $location->seq_id(); Function: Get/Set seq_id that location refers to
We override this here in order to propagate to all sublocations
which are not remote (provided this root is not remote either)
Returns : seq_id
Args : [optional] seq_id value to set |
Methods code
sub add_result
{ my ($self,$value) = @_;
$self->throw("Is not a Bio::Coordinate::Result but [$value]")
unless $value->isa('Bio::Coordinate::Result');
map { $self->add_sub_Location($_);} $value->each_Location; } |
sub add_sub_Location
{ my ($self,$value) = @_;
$self->throw("Is not a Bio::LocationI but [$value]")
unless $value->isa('Bio::LocationI');
$self->{'_match'} = $value
if $value->isa('Bio::Coordinate::Result::Match');
$self->{'_gap'} = $value
if $value->isa('Bio::Coordinate::Result::Gap');
$self->SUPER::add_sub_Location($value); } |
sub each_gap
{ my ($self) = @_;
my @gaps;
foreach my $gap ($self->each_Location) {
push @gaps, $gap if $gap->isa('Bio::Coordinate::Result::Gap');
}
return @gaps; } |
sub each_match
{ my ($self) = @_;
my @matches;
foreach my $match ($self->each_Location) {
push @matches, $match if $match->isa('Bio::Coordinate::Result::Match');
}
return @matches; } |
sub gap
{ my ($self) = @_;
$self->warn("More than one gap in results")
if $self->each_gap > 1 and $self->verbose > 0;
unless (defined $self->{'_gap'} ) {
my @m = $self->each_gap;
$self->{'_gap'} = $m[-1];
}
return $self->{'_gap'}; } |
sub match
{ my ($self) = @_;
$self->warn("More than one match in results")
if $self->each_match > 1 and $self->verbose > 0;
unless (defined $self->{'_match'} ) {
my @m = $self->each_match;
$self->{'_match'} = $m[-1];
}
return $self->{'_match'}; } |
sub purge_gaps
{ my ($self) = @_;
my @matches;
my $count = 0;
foreach my $loc ($self->each_Location) {
if ($loc->isa('Bio::Coordinate::Result::Match')) {
push @matches, $loc;
} else {
$count++
}
}
@{$self->{'_sublocations'}} = ();
delete $self->{'_gap'} ;
push @{$self->{'_sublocations'}}, @matches;
return $count;
}
1; } |
sub seq_id
{ my ($self, $seqid) = @_;
my @ls = $self->each_Location;
if (@ls) {
return $ls[0]->seq_id;
} else {
return undef;
} } |
General documentation
User feedback is an integral part of the evolution of this and other
Bioperl modules. Send your comments and suggestions preferably to the
Bioperl mailing lists Your participation is much appreciated.
bioperl-l@bioperl.org - General discussion
http://bio.perl.org/MailList.html - About the mailing lists
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/
AUTHOR - Heikki Lehvaslaiho | Top |
Email:
heikki@ebi.ac.ukAddress:
EMBL Outstation, European Bioinformatics Institute
Wellcome Trust Genome Campus, Hinxton
Cambs. CB10 1SD, United Kingdom
Additional contributors names and emails here
The rest of the documentation details each of the object
methods. Internal methods are usually preceded with a _
Title : add_sub_Location
Usage : $obj->add_sub_Location($variant)
Function:
Pushes one Bio::LocationI into the list of variants.
Example :
Returns : 1 when succeeds
Args : Location object
These methods are shortcuts to Match and Gap locations.