annotate variant_effect_predictor/Bio/EnsEMBL/Funcgen/ExternalFeature.pm @ 1:d6778b5d8382 draft default tip

Deleted selected files
author willmclaren
date Fri, 03 Aug 2012 10:05:43 -0400
parents 21066c0abaf5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
2 # Ensembl module for Bio::EnsEMBL::Funcgen::ExternalFeature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
3 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
4
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
5
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
6 =head1 LICENSE
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
7
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
8 Copyright (c) 1999-2011 The European Bioinformatics Institute and
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
9 Genome Research Limited. All rights reserved.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
10
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
11 This software is distributed under a modified Apache license.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
12 For license details, please see
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
13
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
14 http://www.ensembl.org/info/about/code_licence.html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
15
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
16 =head1 CONTACT
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
17
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
18 Please email comments or questions to the public Ensembl
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
19 developers list at <ensembl-dev@ebi.ac.uk>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
20
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
21 Questions may also be sent to the Ensembl help desk at
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
22 <helpdesk@ensembl.org>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
23
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
24
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
25 =head1 NAME
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
26
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
27 Bio::EnsEMBL::ExternalFeature - A module to represent an externally curated feature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
28 mapping from an external_db.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
29
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
30 =head1 SYNOPSIS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
31
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
32 use Bio::EnsEMBL::Funcgen::ExternalFeature;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
33
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
34 my $feature = Bio::EnsEMBL::Funcgen::ExternalFeature->new(
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
35 -SLICE => $chr_1_slice,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
36 -START => 1_000_000,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
37 -END => 1_000_024,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
38 -STRAND => -1,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
39 -DISPLAY_LABEL => $text,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
40 -FEATURE_SET => $fset,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
41 -FEATURE_TYPE => $ftype,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
42 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
43
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
44
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
45
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
46 =head1 DESCRIPTION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
47
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
48 An ExternalFeature object represents the genomic placement of an externally curated
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
49 feature from and DB external to Ensembl.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
50
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
51 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
52
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
53 use strict;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
54 use warnings;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
55
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
56 package Bio::EnsEMBL::Funcgen::ExternalFeature;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
57
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
58 use Bio::EnsEMBL::Utils::Argument qw( rearrange );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
59 use Bio::EnsEMBL::Utils::Exception qw( throw );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
60 use Bio::EnsEMBL::Funcgen::SetFeature;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
61 use Bio::EnsEMBL::Funcgen::FeatureType;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
62
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
63 use vars qw(@ISA);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
64 @ISA = qw(Bio::EnsEMBL::Funcgen::SetFeature);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
65
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
66
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
67 =head2 new
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
68
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
69
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
70 Arg [-FEATURE_SET] : Bio::EnsEMBL::Funcgen::FeatureSet
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
71 Arg [-FEATURE_TYPE] : Bio::EnsEMBL::Funcgen::FeatureType
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
72 Arg [-ANALYSIS] : Bio::EnsEMBL::Analysis
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
73 Arg [-SLICE] : Bio::EnsEMBL::Slice - The slice on which this feature is.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
74 Arg [-START] : int - The start coordinate of this feature relative to the start of the slice
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
75 it is sitting on. Coordinates start at 1 and are inclusive.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
76 Arg [-END] : int -The end coordinate of this feature relative to the start of the slice
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
77 it is sitting on. Coordinates start at 1 and are inclusive.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
78 Arg [-DISPLAY_LABEL]: string - Display label for this feature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
79 Arg [-STRAND] : int - The orientation of this feature. Valid values are 1, -1 and 0.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
80 Arg [-dbID] : (optional) int - Internal database ID.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
81 Arg [-ADAPTOR] : (optional) Bio::EnsEMBL::DBSQL::BaseAdaptor - Database adaptor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
82 Example : my $feature = Bio::EnsEMBL::Funcgen::ExternalFeature->new(
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
83 -SLICE => $chr_1_slice,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
84 -START => 1_000_000,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
85 -END => 1_000_024,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
86 -STRAND => -1,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
87 -DISPLAY_LABEL => $text,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
88 -FEATURE_SET => $fset,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
89 -FEATURE_TYPE => $ftpe,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
90 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
91
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
92
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
93 Description: Constructor for ExternalFeature objects.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
94 Returntype : Bio::EnsEMBL::Funcgen::ExternalFeature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
95 Exceptions : None
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
96 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
97 Status : At Risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
98
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
99 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
100
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
101 sub new {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
102 my $caller = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
103
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
104 my $class = ref($caller) || $caller;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
105 my $self = $class->SUPER::new(@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
106
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
107 #Remove this method if we interdb_stable_id to SetFeature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
108 ($self->{'interdb_stable_id'}) = rearrange(['INTERDB_STABLE_ID'], @_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
109
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
110 return $self;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
111 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
112
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
113 =head2 interdb_stable_id
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
114
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
115 Arg [1] : (optional) int - stable_id e.g 1
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
116 Example : my $idb_sid = $feature->interdb_stable_id();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
117 Description: Getter for the interdb_stable_id attribute for this feature.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
118 This is simply to avoid using internal db IDs for inter DB linking
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
119 Returntype : int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
120 Exceptions : None
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
121 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
122 Status : At Risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
123
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
124 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
125
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
126 sub interdb_stable_id {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
127 return $_[0]->{'interdb_stable_id'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
128 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
129
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
130
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
131
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
132
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
133 =head2 display_label
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
134
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
135 Example : my $label = $feature->display_label();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
136 Description: Getter for the display label of this feature.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
137 Returntype : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
138 Exceptions : None
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
139 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
140 Status : Medium risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
141
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
142 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
143
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
144 sub display_label {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
145 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
146
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
147 if(! $self->{'display_label'} && $self->adaptor){
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
148
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
149 $self->{'display_label'} = $self->feature_set->feature_type->name().' - ';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
150 $self->{'display_label'} .= $self->cell_type->name() if $self->cell_type();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
151 $self->{'display_label'} .= $self->feature_type->name() if(defined $self->{'feature_type'});
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
152 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
153
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
154 return $self->{'display_label'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
155 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
156
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
157
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
158
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
159 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
160