0
|
1 =head1 LICENSE
|
|
2
|
|
3 Copyright (c) 1999-2012 The European Bioinformatics Institute and
|
|
4 Genome Research Limited. All rights reserved.
|
|
5
|
|
6 This software is distributed under a modified Apache license.
|
|
7 For license details, please see
|
|
8
|
|
9 http://www.ensembl.org/info/about/code_licence.html
|
|
10
|
|
11 =head1 CONTACT
|
|
12
|
|
13 Please email comments or questions to the public Ensembl
|
|
14 developers list at <dev@ensembl.org>.
|
|
15
|
|
16 Questions may also be sent to the Ensembl help desk at
|
|
17 <helpdesk@ensembl.org>.
|
|
18
|
|
19 =cut
|
|
20
|
|
21 =head1 NAME
|
|
22
|
|
23 Bio::EnsEMBL::SeqFeatureI
|
|
24
|
|
25 =head1 DESCRIPTION
|
|
26
|
|
27 Do not use this class. It is deprecated and has been replaced by
|
|
28 Bio::EnsEMBL::Feature.
|
|
29
|
|
30 =head1 METHODS
|
|
31
|
|
32 =cut
|
|
33
|
|
34
|
|
35 # Let the code begin...
|
|
36
|
|
37
|
|
38 package Bio::EnsEMBL::SeqFeatureI;
|
|
39
|
|
40 use vars qw(@ISA);
|
|
41 use strict;
|
|
42 use Carp;
|
|
43
|
|
44 # Object preamble - inherits from Bio::Root::Object
|
|
45
|
|
46 use Bio::SeqFeatureI;
|
|
47 use Bio::EnsEMBL::Root;
|
|
48
|
|
49 @ISA = qw(Bio::EnsEMBL::Root Bio::SeqFeatureI);
|
|
50
|
|
51
|
|
52 =head1 Abstract methods
|
|
53
|
|
54 These methods must be implemented in all subclasses.
|
|
55
|
|
56
|
|
57 =head2 analysis
|
|
58
|
|
59 Title : analysis
|
|
60 Usage : $sf->analysis();
|
|
61 Function: Store details of the program/database
|
|
62 and versions used to create this feature.
|
|
63
|
|
64 Example :
|
|
65 Returns :
|
|
66 Args :
|
|
67
|
|
68
|
|
69 =cut
|
|
70
|
|
71 sub analysis {
|
|
72 my ($self,$value) = @_;
|
|
73
|
|
74 $self->throw("Have not implemeneted analysis");
|
|
75
|
|
76 }
|
|
77
|
|
78 =head2 validate
|
|
79
|
|
80 Title : validate
|
|
81 Usage : $sf->validate;
|
|
82 Function: Checks whether all the data is present in the
|
|
83 object.
|
|
84 Example :
|
|
85 Returns :
|
|
86 Args :
|
|
87
|
|
88
|
|
89 =cut
|
|
90
|
|
91 sub validate {
|
|
92 my ($self,$value) = @_;
|
|
93
|
|
94 $self->throw("Have not implemeneted validate");
|
|
95
|
|
96
|
|
97 }
|
|
98
|
|
99
|
|
100 sub id {
|
|
101 my ($self,$value) = @_;
|
|
102
|
|
103 $self->throw("Have not implemented id");
|
|
104 }
|
|
105
|
|
106 =head2 percent_id
|
|
107
|
|
108 Title : percent_id
|
|
109 Usage : $pid = $feat->percent_id()
|
|
110 $feat->percent_id($pid)
|
|
111 Function: get/set on percentage identity information
|
|
112 Returns : float
|
|
113 Args : none if get, the new value if set
|
|
114
|
|
115 =cut
|
|
116
|
|
117 sub percent_id {
|
|
118 my ($self) = @_;
|
|
119 $self->throw("percent_id() not yet implemented");
|
|
120 }
|
|
121
|
|
122 =head2 e_value
|
|
123
|
|
124 Title : p_value
|
|
125 Usage : $p_val = $feat->p_value()
|
|
126 $feat->p_value($p_val)
|
|
127 Function: get/set on p value information
|
|
128 Returns : float
|
|
129 Args : none if get, the new value if set
|
|
130
|
|
131 =cut
|
|
132
|
|
133 sub e_value {
|
|
134 my ($self) = @_;
|
|
135 $self->throw("e value() not yet implemented");
|
|
136 }
|
|
137
|
|
138 =head2 phase
|
|
139
|
|
140 Title : phase
|
|
141 Usage : $phase = $feat->phase()
|
|
142 $feat->phase($phase)
|
|
143 Function: get/set on start phase of predicted exon feature
|
|
144 Returns : [0,1,2]
|
|
145 Args : none if get, 0,1 or 2 if set.
|
|
146
|
|
147 =cut
|
|
148
|
|
149 sub phase {
|
|
150 my ($self) = @_;
|
|
151 $self->throw("phase() not yet implemented");
|
|
152 }
|
|
153
|
|
154 =head2 end_phase
|
|
155
|
|
156 Title : end_phase
|
|
157 Usage : $end_phase = $feat->end_phase()
|
|
158 $feat->end_phase($end_phase)
|
|
159 Function: get/set on end phase of predicted exon feature
|
|
160 Returns : [0,1,2]
|
|
161 Args : none if get, 0,1 or 2 if set.
|
|
162
|
|
163 =cut
|
|
164
|
|
165 sub end_phase {
|
|
166 my ($self) = @_;
|
|
167 $self->throw("end_phase() not yet implemented");
|
|
168 }
|
|
169
|
|
170
|
|
171 # this is a bit too sneaky.
|
|
172 sub location {
|
|
173 my ($self)= @_;
|
|
174 return $self;
|
|
175 }
|
|
176
|
|
177
|
|
178 1;
|