comparison variant_effect_predictor/Bio/SeqFeature/Gene/TranscriptI.pm @ 0:21066c0abaf5 draft

Uploaded
author willmclaren
date Fri, 03 Aug 2012 10:04:48 -0400
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:21066c0abaf5
1 # $Id: TranscriptI.pm,v 1.7 2002/10/22 07:38:41 lapp Exp $
2 #
3 # BioPerl module for Bio::SeqFeature::Gene::TranscriptI
4 #
5 # Cared for by Hilmar Lapp <hlapp@gmx.net>
6 #
7 # Copyright Hilmar Lapp
8 #
9 # You may distribute this module under the same terms as perl itself
10
11 # POD documentation - main docs before the code
12
13 =head1 NAME
14
15 Bio::SeqFeature::Gene::TranscriptI - Interface for a feature representing a
16 transcript of exons, promoter(s), UTR, and a poly-adenylation site.
17
18 =head1 SYNOPSIS
19
20 #documentation needed
21
22 =head1 DESCRIPTION
23
24 A feature representing a transcript.
25
26 =head1 FEEDBACK
27
28 =head2 Mailing Lists
29
30 User feedback is an integral part of the evolution of this
31 and other Bioperl modules. Send your comments and suggestions preferably
32 to one of the Bioperl mailing lists.
33 Your participation is much appreciated.
34
35 bioperl-l@bioperl.org - General discussion
36 http://bio.perl.org/MailList.html - About the mailing lists
37
38 =head2 Reporting Bugs
39
40 Report bugs to the Bioperl bug tracking system to help us keep track
41 the bugs and their resolution.
42 Bug reports can be submitted via email or the web:
43
44 bioperl-bugs@bio.perl.org
45 http://bugzilla.bioperl.org/
46
47 =head1 AUTHOR - Hilmar Lapp
48
49 Email hlapp@gmx.net
50
51 Describe contact details here
52
53 =head1 APPENDIX
54
55 The rest of the documentation details each of the object methods.
56 Internal methods are usually preceded with a _
57
58 =cut
59
60
61 # Let the code begin...
62
63
64 package Bio::SeqFeature::Gene::TranscriptI;
65 use vars qw(@ISA);
66 use strict;
67
68 use Carp;
69 use Bio::SeqFeatureI;
70
71 @ISA = qw(Bio::SeqFeatureI);
72
73 =head2 promoters
74
75 Title : promoters()
76 Usage : @proms = $transcript->promoters();
77 Function: Get the promoter features of this transcript.
78
79 Note that OO-modeling of regulatory elements is not stable yet.
80 This means that this method might change or even disappear in a
81 future release. Be aware of this if you use it.
82
83 Returns : An array of Bio::SeqFeatureI implementing objects representing the
84 promoter regions or sites.
85 Args :
86
87 =cut
88
89 sub promoters {
90 my ($self) = @_;
91 $self->throw_not_implemented();
92 }
93
94 =head2 exons
95
96 Title : exons()
97 Usage : @exons = $transcript->exons();
98 @inital = $transcript->exons('Initial');
99 Function: Get the individual exons this transcript comprises of, or all exons
100 of a specified type.
101
102 Refer to the documentation of the class that produced this
103 transcript object for information about the possible types.
104
105 See Bio::SeqFeature::Gene::ExonI for properties of the
106 returned objects.
107
108 Returns : An array of Bio::SeqFeature::Gene::ExonI implementing objects
109 Args : An optional string specifying the type of the exon.
110
111 =cut
112
113 sub exons {
114 my ($self, $type) = @_;
115 $self->throw_not_implemented();
116 }
117
118 =head2 introns
119
120 Title : introns()
121 Usage : @introns = $transcript->introns();
122 Function: Get all introns this transcript comprises of.
123 Returns : An array of Bio::SeqFeatureI implementing objects representing the
124 introns.
125 Args :
126
127
128 =cut
129
130 sub introns {
131 my ($self) = @_;
132 $self->throw_not_implemented();
133 }
134
135 =head2 poly_A_site
136
137 Title : poly_A_site()
138 Usage : $polyAsite = $transcript->poly_A_site();
139 Function: Get the poly-adenylation site of this transcript.
140 Returns : A Bio::SeqFeatureI implementing object.
141 Args :
142
143
144 =cut
145
146 sub poly_A_site {
147 my ($self) = @_;
148 $self->throw_not_implemented();
149 }
150
151 =head2 utrs
152
153 Title : utrs()
154 Usage : @utr_sites = $transcript->utrs();
155 Function: Get the UTR regions this transcript comprises of.
156
157 See Bio::SeqFeature::Gene::ExonI for properties of the
158 returned objects.
159
160 Returns : An array of Bio::SeqFeature::Gene::ExonI implementing objects
161 Args :
162
163
164 =cut
165
166 sub utrs {
167 my ($self) = @_;
168 $self->throw_not_implemented();
169 }
170
171 =head2 mrna
172
173 Title : mrna()
174 Usage : $mrna = $transcript->mrna();
175 Function: Get the mRNA of the transcript as a sequence object.
176
177 Returns : A Bio::PrimarySeqI implementing object.
178 Args :
179
180
181 =cut
182
183 sub mrna {
184 my ($self) = @_;
185 $self->throw_not_implemented();
186 }
187
188 =head2 cds
189
190 Title : cds()
191 Usage : $cds = $transcript->cds();
192 Function: Get the CDS (coding sequence) of the transcript as a sequence
193 object.
194
195 Returns : A Bio::PrimarySeqI implementing object.
196 Args :
197
198
199 =cut
200
201 sub cds {
202 my ($self) = @_;
203 $self->throw_not_implemented();
204 }
205
206 =head2 protein
207
208 Title : protein()
209 Usage : $protein = $transcript->protein();
210 Function: Get the protein encoded by the transcript as a sequence object.
211
212 Returns : A Bio::PrimarySeqI implementing object.
213 Args :
214
215
216 =cut
217
218 sub protein {
219 my ($self) = @_;
220 $self->throw_not_implemented();
221 }
222
223 =head2 parent
224
225 Title : parent
226 Usage : $obj->parent($newval)
227 Function: get the parent gene of the transcript
228 Returns : value of parent - a Bio::SeqFeature::Gene::GeneStructureI-compliant object
229 Args : a Bio::SeqFeature::Gene::GeneStructureI-compliant object (optional)
230
231
232 =cut
233
234 sub parent{
235 my ($self,$value) = @_;
236 if( defined $value) {
237 if ($value->isa("Bio::SeqFeature::Gene::GeneStructureI")) {
238 $self->{'parent'} = $value;
239 } else {
240 $self->throw("$value must be a Bio::SeqFeature::Gene::GeneStructureI")
241 }
242 }
243 return $self->{'parent'};
244 }
245
246
247 1;
248
249
250
251
252
253