Raw content of Bio::EnsEMBL::Compara::SyntenyRegion
#
# Ensembl module for Bio::EnsEMBL::Compara::SyntenyRegion
#
# Cared for by Ewan Birney
#
# Copyright GRL and EBI
#
# You may distribute this module under the same terms as perl itself
# POD documentation - main docs before the code
=head1 NAME
Bio::EnsEMBL::Compara::SyntenyRegion - Synteny region
=head1 SYNOPSIS
print $this_synteny_region->dbID;
print $this_synteny_region->method_link_species_set_id;
my $these_dnafrag_regions = $this_synteny_region->get_all_DnaFragRegions();
foreach my $this_dnafrag_region (@$these_dnafrag_regions) {
print $this_dnafrag_region->genome_db->name, ": ", $this_dnafrag_region->slice->name, "\n";
}
=head1 DESCRIPTION
A Bio::EnsEMBL::Compara::SyntenyRegion object is a container of Bio::EnsEMBL::Compara::DnaFragRegion
objects. Each Bio::EnsEMBL::Compara::DnaFragRegion represent a genomic region which is in synteny
with the other regions represented in the Bio::EnsEMBL::Compara::SyntenyRegion object.
Also, the Bio::EnsEMBL::Compara::SyntenyRegion object implicitly contains a
Bio::EnsEMBL::Compara::MethodLinkSpeciesSet object which defines the type of synteny.
=head1 OBJECT ATTRIBUTES
=over
=item dbID
corresponds to synteny_region.synteny_region_id
=item adaptor
Bio::EnsEMBL::Compara::DBSQL::SyntenyRegionAdaptor object to access DB
=item method_link_species_set_id
corresponds to synteny_region.method_link_species_set_id
=back
=head1 CONTACT
Ensembl - ensembl-dev@ebi.ac.uk
=head1 APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
=cut
# Let the code begin...
package Bio::EnsEMBL::Compara::SyntenyRegion;
use strict;
use Bio::EnsEMBL::Utils::Argument;
use Bio::EnsEMBL::Utils::Exception;
use Bio::EnsEMBL::Compara::NestedSet;
our @ISA = qw(Bio::EnsEMBL::Compara::NestedSet);
=head2 new_fast
Arg [-DBID] : integer $dbID
Arg [-METHOD_LINK_SPECIES_SET_ID]
: integer $method_link_species_set_id
Arg [-ADAPTOR]
: Bio::EnsEMBL::Compara::DBSQL::SyntenyRegionAdaptor $adaptor
Example : none
Description : This is the default constructor
Returntype : Bio::EnsEMBL::Compara::SyntenyRegion object
Exceptions : none
Caller :
Status : Stable
=cut
sub new {
my ($class, @args) = @_;
my $self = $class->SUPER::new(@args);
# my $self = bless {}, $class;
if (scalar @args) {
#do this explicitly.
my ($dbid, $method_link_species_set_id, $adaptor) =
rearrange([qw(DBID METHOD_LINK_SPECIES_SET_ID ADAPTOR)], @args);
$dbid && $self->dbID($dbid);
$method_link_species_set_id && $self->method_link_species_set_id($method_link_species_set_id);
$adaptor && $self->adaptor($adaptor);
}
return $self;
}
=head2 new_fast
Arg [1] : hash reference $hashref
Example : none
Description : This is an ultra fast constructor which requires knowledge of
the objects internals to be used.
Returntype : Bio::EnsEMBL::Compara::SyntenyRegion object
Exceptions : none
Caller :
Status : Stable
=cut
sub new_fast {
my ($class, $hashref) = @_;
return bless $hashref, $class;
}
=head2 stable_id
DEPRECATED: SyntenyRegions don't have any stable id.
=cut
sub stable_id {
my $obj = shift;
deprecate("SyntenyRegions don't have any stable id.");
if( @_ ) {
my $value = shift;
$obj->{'stable_id'} = $value;
}
return $obj->{'stable_id'};
}
=head2 method_link_species_set_id
Arg [1] : (optional) integer $method_link_species_set_id
Example : none
Description : Getter/setter for the method_link_species_set_id value.
Returntype : integer
Exceptions : none
Caller : general
Status : Stable
=cut
sub method_link_species_set_id {
my $obj = shift;
if( @_ ) {
my $value = shift;
$obj->{'method_link_species_set_id'} = $value;
}
return $obj->{'method_link_species_set_id'};
}
=head2 dbID
Arg [1] : (optional) integer $dbID
Example : none
Description : Getter/setter for the dbID value. This corresponds to
synteny_region.synteny_region_id
Returntype : integer
Exceptions : none
Caller : general
Status : Stable
=cut
sub dbID {
my $obj = shift;
if (@_) {
my $value = shift;
$obj->{'dbID'} = $value;
}
return $obj->{'dbID'};
}
=head2 adaptor
Arg [1] : (optional) Bio::EnsEMBL::Compara::DBSQL::SyntenyRegionAdaptor $adaptor
Example : none
Description : Getter/setter for the adaptor
Returntype : Bio::EnsEMBL::Compara::DBSQL::SyntenyRegionAdaptor object
Exceptions : none
Caller : general
Status : Stable
=cut
sub adaptor {
my $obj = shift;
if (@_) {
my $value = shift;
$obj->{'adaptor'} = $value;
}
return $obj->{'adaptor'};
}
=head2 get_all_DnaFragRegions
Arg 1 : -none-
Example : my $all_dnafrag_regions = $obj->get_all_DnaFragRegions();
Description: returns all the DnaFragRegion objects for this syntenic
region. This method is an alias for children(), see
Bio::EnsEMBL::Compara::NestedSet for more details.
Returntype : a ref. to an array of Bio::EnsEMBL::Compara::DnaFragRegion
objects
Exception :
Caller : general
Status : Stable
=cut
sub get_all_DnaFragRegions {
my $obj = shift;
return $obj->children();
}
1;