annotate variant_effect_predictor/Bio/EnsEMBL/DB/ExternalFeatureFactoryI.pm @ 3:d30fa12e4cc5 default tip

Merge heads 2:a5976b2dce6f and 1:09613ce8151e which were created as a result of a recently fixed bug.
author devteam <devteam@galaxyproject.org>
date Mon, 13 Jan 2014 10:38:30 -0500
parents 1f6dce3d34e0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
1 =head1 LICENSE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3 Copyright (c) 1999-2012 The European Bioinformatics Institute and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 Genome Research Limited. All rights reserved.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 This software is distributed under a modified Apache license.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 For license details, please see
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
8
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
9 http://www.ensembl.org/info/about/code_licence.html
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
10
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
11 =head1 CONTACT
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
12
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
13 Please email comments or questions to the public Ensembl
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
14 developers list at <dev@ensembl.org>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
15
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
16 Questions may also be sent to the Ensembl help desk at
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
17 <helpdesk@ensembl.org>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
18
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
19 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21 =head1 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23 Bio::EnsEMBL::DB::ExternalFeatureFactoryI -
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24 Legacy Abstract interface for External Feature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25 Factories. Bio::EnsEMBL::External::ExternalFeatureAdaptor should be used
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26 instead if possible.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28 =head1 SYNOPSIS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 $external_ff = new ImplementingExternalFeatureFactoryClass;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32 $database_adaptor = new Bio::EnsEMBL::DBSQL::DBAdaptor(
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33 -host => 'blah',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34 -dbname => 'other',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35 -pass => 'pass'
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 # alternatively, you can add external databases to an obj once made
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39 $database_adaptor->add_ExternalFeatureFactory($external_ff);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41 # now the ExternalFeatureFactory has been added, Ensembl RawContigs
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42 # and Slices will now have ExternalFeatures on them
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43 $contig =
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44 $db_adaptor->get_RawContigAdaptor->fetch_by_name('AC00056.00001');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 @external = @{ $contig->get_all_ExternalFeatures() };
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47 # this works on Slices as well
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48 $slice =
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 $db_adaptor->get_SliceAdaptor->fetch_by_chr_start_end( '12', 10000,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50 30000 );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51 @external = @{ $slice->get_all_ExternalFeatures() };
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55 This is a legacy class. It is included only for backwards
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56 compatibility with ExternalFeatureFactories which are presumably
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57 still used to place data into ensembl. It is recommended that if
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58 you wish to create EnsEMBL features externally that you use the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59 Bio::EnsEMBL::External::ExternalFeatureAdaptor instead.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61 This object defines the abstract interface for External Database access
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62 inside Ensembl. The aim is that one can attach an External Database
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63 which will generate Sequence Features and these Sequence Features will
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 be accessible along side all the internal Ensembl sequence features, for
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65 drawing, EMBL dumping etc. In particular, the external database does not
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66 have to worry about the transformation of the Sequence Feature objects
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67 into VirtualContigs.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 Sequence Features have to be defined in one of two coordinate systems:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70 Original EMBL/GenBank coordinates of a particular sequnence version or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71 the Ensembl contig coordinates. This means you have to calculate your
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72 sequence features in one these two coordinate systems
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74 The methods that have to be implemented are:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76 get_External_SeqFeatures_contig( $ensembl_contig_identifier,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77 $sequence_version, $start, $end );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79 get_External_SeqFeatures_clone( $embl_accession_number,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80 $sequence_version, $start, $end );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82 The semantics of this method is as follows:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84 $ensembl_contig_identifier - the ensembl contig id (external id).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
85 $sequence_version - embl/genbank sequence version
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
86 $embl_accession_number - the embl/genbank accession number
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
87
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
88 The $start/$end can be ignored, but methods can take advantage of it.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
89 This is so that ensembl can ask for features only on a region of DNA,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90 and if desired, the external database can respond with features only in
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91 this region, rather than the entire sequence.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93 The hope is that the second method could potentially have a very complex
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94 set of mappings of other embl_accession numbers to one embl_accession
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95 number and provide the complex mapping.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
97 The methods should return Sequence Features with the following spec:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
98
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
99 a) must implement the Bio::SeqFeatureI interface.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
100
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
101 b) must accept "set" calls on
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
102
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
103 start,end,strand
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
104
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
105 to provide coordinate transformation of the feature.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
106
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
107 c) must be unique in-memory objects, ie, the implementation is not
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
108 allowed to cache the sequence feature in its entirity. Two separate
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
109 calls to get_External_SeqFeatures_contig must be able to separately
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
110 set start,end,strand information without clobbering each other. The
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
111 other information, if so wished, can be cached by each SeqFeature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
112 holding onto another object, but this is left to the implementor to
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
113 decide on the correct strategy.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
114
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
115 d) must return an unique identifier when called with method id.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
116
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
117 You must implement both functions. In most cases, one function will
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
118 always return an empty list, whereas the other function will actually
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
119 query the external database.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
120
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
121 The second way of accessing the External Database from Ensembl is using
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
122 unique internal identifiers in that database. The method is:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
123
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
124 get_SeqFeature_by_id($id);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
125
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
126 It should return exactly one Sequence Feature object of the same type as
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
127 above.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
128
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
129 =head1 METHODS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
130
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
131 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
132
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
133 package Bio::EnsEMBL::DB::ExternalFeatureFactoryI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
134 use Bio::EnsEMBL::External::ExternalFeatureAdaptor;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
135 use vars qw(@ISA);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
136
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
137 @ISA = ( 'Bio::EnsEMBL::External::ExternalFeatureAdaptor' );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
138
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
139
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
140 =head2 coordinate_systems
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
141
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
142 Arg [1] : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
143 Example : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
144 Description: This method is present to make the ExternalFeatureFactory
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
145 interface behave as an ExternalFeatureAdaptor. It is for
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
146 backwards compatibility.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
147 Returntype : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
148 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
149 Caller : internal
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
150
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
151 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
152
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
153 sub coordinate_systems {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
154 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
155 return qw(CONTIG);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
156 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
157
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
158
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
159 =head2 fetch_all_by_contig_name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
160
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
161 Arg [1] : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
162 Example : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
163 Description: This method is present to make the ExternalFeatureFactory
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
164 interface behave as an ExternalFeatureAdaptor. It is for
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
165 backwards compatibility.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
166 Returntype : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
167 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
168 Caller : internal
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
169
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
170 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
171
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
172 sub fetch_all_by_contig_name {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
173 my ($self, $contig_name) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
174
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
175 unless($self->db) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
176 $self->throw('DB attribute not set. This value must be set for the ' .
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
177 'ExternalFeatureFactory to function correctly');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
178 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
179
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
180 my @features = ();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
181
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
182 my $ctg = $self->db->get_RawContigAdaptor->fetch_by_name($contig_name);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
183 my $clone = $ctg->clone;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
184 my $version = $clone->version;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
185 my $ctg_length = $ctg->length;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
186
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
187 #get contig features
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
188 push @features, $self->get_Ensembl_SeqFeatures_contig($ctg->name,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
189 $version,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
190 1,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
191 $ctg_length);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
192
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
193 #get clone features
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
194 my $clone_start = $ctg->embl_offset;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
195 my $clone_end = $clone_start + $ctg_length - 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
196 my @clone_features = $self->get_Ensembl_SeqFeatures_clone($clone->id,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
197 $version,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
198 $clone_start,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
199 $clone_end);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
200
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
201 #change clone coordinates to contig coordinates
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
202 my ($start, $end);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
203 foreach my $f (@clone_features) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
204 $start = $f->start - $clone_start + 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
205 $end = $f->end - $clone_start + 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
206
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
207 #skip features outside the contig
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
208 next if($end < 1 || $start > $ctg_length);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
209
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
210 $f->start($start);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
211 $f->end($end);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
212
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
213 push @features, $f;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
214 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
215
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
216 return \@features;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
217 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
218
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
219 =head2 get_Ensembl_SeqFeatures_contig
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
220
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
221 Title : get_Ensembl_SeqFeatures_contig (Abstract)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
222 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
223 Function:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
224 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
225 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
226 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
227
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
228
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
229 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
230
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
231 sub get_Ensembl_SeqFeatures_contig{
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
232 my ($self) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
233
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
234 $self->warn("Abstract method get_External_SeqFeatures_contig " .
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
235 "encountered in base class. Implementation failed to complete it");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
236
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
237 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
238
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
239 =head2 get_Ensembl_SeqFeatures_clone
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
240
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
241 Title : get_Ensembl_SeqFeatures_clone (Abstract)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
242 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
243 Function:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
244 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
245 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
246 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
247
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
248
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
249 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
250
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
251 sub get_Ensembl_SeqFeatures_clone{
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
252 my ($self) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
253
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
254 $self->warn("Abstract method get_Ensembl_SeqFeatures_clone " .
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
255 "encountered in base class. Implementation failed to complete it");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
256
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
257 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
258
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
259 =head2 get_Ensembl_Genes_clone
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
260
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
261 Title : get_Ensembl_Genes_clone
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
262 Function: returns Gene objects in clone coordinates from a gene id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
263 Returns : An array of Gene objects
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
264 Args : clone id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
265
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
266 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
267
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
268 sub get_Ensembl_Genes_clone {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
269 my $self = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
270
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
271 return;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
272 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
273
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
274 =head2 get_SeqFeature_by_id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
275
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
276 Title : get_SeqFeature_by_id (Abstract)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
277 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
278 Function: Return SeqFeature object for any valid unique id
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
279 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
280 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
281 Args : id as determined by the External Database
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
282
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
283
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
284 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
285
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
286
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
287 sub get_SeqFeature_by_id {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
288 my ($self) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
289 $self->warn("Abstract method get_SeqFeature_by_id encountered " .
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
290 "in base class. Implementation failed to complete it");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
291 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
292
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
293
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
294 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
295
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
296
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
297
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
298
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
299
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
300
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
301