annotate variant_effect_predictor/Bio/SeqFeature/Primer.pm @ 2:a5976b2dce6f

changing defualt values for ensembl database
author mahtabm
date Thu, 11 Apr 2013 17:15:42 +1000
parents 1f6dce3d34e0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
1 # $Id: Primer.pm,v 1.10 2002/10/30 14:21:58 heikki Exp $
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3 # BioPerl module for Bio::SeqFeature::Primer
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5 # Cared for by Chad Matsalla
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 # Copyright Chad Matsalla
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
8 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
9 # You may distribute this module under the same terms as perl itself
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
10
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
11 # POD documentation - main docs before the code
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
12
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
13 =head1 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
14
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
15 Bio::SeqFeature::Primer - Primer Generic SeqFeature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
16
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
17 =head1 SYNOPSIS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
18
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
19 A synopsis does not yet exist for this module.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23 A description does not yet exist for this module.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25 =head1 FEEDBACK
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27 =head2 Mailing Lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29 User feedback is an integral part of the evolution of this and other
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 Bioperl modules. Send your comments and suggestions preferably to one
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31 of the Bioperl mailing lists. Your participation is much appreciated.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33 bioperl-l@bioperl.org - General discussion
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34 http://bio.perl.org/MailList.html - About the mailing lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 =head2 Reporting Bugs
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 Report bugs to the Bioperl bug tracking system to help us keep track
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39 the bugs and their resolution. Bug reports can be submitted via email
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40 or the web:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42 bioperl-bugs@bio.perl.org
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43 http://bugzilla.bioperl.org/
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 =head1 AUTHOR - Chad Matsalla
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47 Chad Matsalla E<lt>bioinformatics1@dieselwurks.comE<gt>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 =head1 APPENDIX
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51 The rest of the documentation details each of the object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52 methods. Internal methods are usually preceded with a _
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57 # Let the code begin...
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60 package Bio::SeqFeature::Primer;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61 use vars qw(@ISA);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62 use strict;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 use Bio::Root::Root;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65 use Bio::SeqFeature::Generic;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66 use Bio::Seq;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67 use Dumpvalue qw(dumpValue);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 my $dumper = new Dumpvalue();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72 @ISA = qw(Bio::Root::Root Bio::SeqFeature::Generic);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76 =head2 new()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78 Title : new()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80 Function:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84 Devel notes: I think that I want to accept a hash
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
85
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
86 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
87
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
88
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
89 sub new {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90 my ($class, @args) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91 my %arguments = @args;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92 my $self = $class->SUPER::new(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93 # these are from generic.pm, with which i started
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94 $self->{'_parse_h'} = {};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95 $self->{'_gsf_tag_hash'} = {};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96 # things that belong with the primer
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
97 my ($sequence, $primer_sequence_id, $id) =
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
98 $self->{'_gsf_seqname'} = $self->{primer_sequence_id};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
99 # i am going to keep an array of the things that have been passed
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
100 # into the object on construction. this will aid retrieval of these
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
101 # things later
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
102 foreach my $argument (sort keys %arguments) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
103 if ($argument eq "-SEQUENCE" || $argument eq "-sequence") {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
104 if (ref($arguments{$argument}) eq "Bio::Seq") {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
105 $self->{seq} = $arguments{$argument};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
106 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
107 else {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
108 $self->{seq} = new Bio::Seq( -seq => $arguments{$argument},
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
109 -id => $arguments{-id});
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
110 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
111 $self->{tags}->{$argument} = "A Bio::Seq. Use seq() to get this 'tag'";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
112 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
113 else {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
114 (my $fixed = $argument) =~ s/-//;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
115 $self->{tags}->{$fixed} = $arguments{$argument};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
116 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
117 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
118 if (!$self->{seq}) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
119 $self->throw("You must pass in a sequence to construct this object.");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
120 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
121
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
122 # a bunch of things now need to be set for this SeqFeature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
123 # things like:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
124 # TARGET=513,26
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
125 # PRIMER_FIRST_BASE_INDEX=1
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
126 # PRIMER_LEFT=484,20
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
127 return $self;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
128 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
129
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
130
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
131 =head2 seq()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
132
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
133 Title : seq()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
134 Usage : $seq = $primer->seq();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
135 Function: Return the _entire_ sequence associated with this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
136 Returns : A Bio::Seq object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
137 Args : None.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
138 Develper Note: Do you want to be able to set the sequence associated with this
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
139 SeqFeature?
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
140
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
141 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
142
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
143 sub seq {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
144 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
145 return $self->{seq};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
146 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
147
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
148
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
149
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
150 =head2 all_tags()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
151
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
152 Title : all_tags()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
153 Usage : @tags = $primer->all_tags();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
154 Function: Return a list of tag names for this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
155 Returns : An array of strings representing the names of tags in this Primer
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
156 Args : None.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
157 Notes : When the Bio::SeqFeature::Primer object is created, the user can
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
158 pass in an arbitrary hash containing key->value pairs. This is allowed
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
159 because I didn't want to assume that the user was trying to model a
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
160 primer3 construct.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
161
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
162 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
163
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
164 #'
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
165
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
166 sub all_tags {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
167 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
168 my @tags = sort keys %{$self->{tags}};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
169 return @tags;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
170 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
171
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
172
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
173 =head2 primary_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
174
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
175 Title : primary_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
176 Usage : $tag = $feature->primary_tag();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
177 Function: Returns the string "Primer"
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
178 Returns : A string.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
179 Args : None.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
180
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
181 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
182
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
183 sub primary_tag {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
184 return "Primer";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
185 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
186
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
187 =head2 source_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
188
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
189 Title : source_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
190 Usage : $tag = $feature->source_tag();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
191 Function: Returns the source of this tag.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
192 Returns : A string.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
193 Args : If an argument is provided, the source of this SeqFeature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
194 is set to that argument.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
195
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
196 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
197
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
198 sub source_tag {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
199 my ($self,$insource) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
200 if ($insource) { $self->{source} = $insource; }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
201 return $self->{source};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
202 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
203
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
204 =head2 has_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
205
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
206 Title : has_tag()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
207 Usage : $true_or_false = $feature->has_tag('MELTING_TEMPERATURE');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
208 Function: Does this SeqFeature have this tag?
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
209 Returns : TRUE or FALSE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
210 Args : A string.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
211
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
212 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
213
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
214 sub has_tag {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
215 my ($self,$tagname) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
216 if ($self->{tags}->{$tagname}) { return "TRUE"; }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
217 return { "FALSE" };
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
218 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
219
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
220 =head2 each_tag_value()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
221
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
222 Title : each_tag_value()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
223 Usage : $tag = $feature->each_tag_value('MELTING_TEMPERATURE');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
224 Function: Returns the value of this tag.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
225 Returns : Unknown. Whatever the value of the given tag was.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
226 Args : None.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
227
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
228 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
229
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
230 sub each_tag_value {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
231 my ($self,$tagname) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
232 return $self->{tags}->{$tagname};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
233 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
234
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
235 =head2 location()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
236
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
237 Title : location()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
238 Usage : $tag = $feature->location();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
239 Function: returns a location object suitable for identifying location of
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
240 feature on sequence or parent feature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
241 Returns : a bio::locationi object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
242 Args : none.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
243 Developer Notes: Chad has no idea how to implement this at this time.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
244
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
245 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
246
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
247 sub location {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
248 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
249 $self->warn("Chad has not written the code for this yet.");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
250 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
251
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
252 =head2 start()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
253
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
254 Title : start()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
255 Usage : $start_position = $feature->start($new_position);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
256 Function: Return the start position of this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
257 Returns : The start position of this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
258 Args : If an argument is provided, the start position of this
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
259 Primer is set to that position.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
260
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
261 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
262
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
263 sub start {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
264 my ($self,$new_position) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
265 if ($new_position) { $self->{start_position} = $new_position; }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
266 return $self->{start_position};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
267 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
268
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
269 =head2 end()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
270
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
271 Title : end()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
272 Usage : $end_position = $feature->end($new_position);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
273 Function: Return the end position of this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
274 Returns : The end position of this Primer.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
275 Args : If an argument is provided, the end position of this
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
276 Primer is set to that position.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
277
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
278 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
279
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
280 sub end {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
281 my ($self,$new_position) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
282 if ($new_position) { $self->{end_position} = $new_position; }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
283 return $self->{end_position};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
284 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
285
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
286 =head2 strand()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
287
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
288 Title : strand()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
289 Usage :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
290 Function:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
291 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
292 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
293 Developer Notes: Chad has no idea how to implement this at this time.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
294
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
295 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
296
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
297 sub strand {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
298 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
299 $self->warn("Chad has not implemented this method at this time.");
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
300 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
301
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
302 =head2 display_id()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
303
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
304 Title : display_id()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
305 Usage : $id = $feature->display_id($new_id)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
306 Function: Returns the display ID for this Primer feature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
307 Returns : A scalar.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
308 Args : If an argument is provided, the display_id of this Primer is
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
309 set to that value.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
310
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
311 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
312
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
313 sub display_id {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
314 my ($self,$newid) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
315 if ($newid) { $self->seq()->display_id($newid); }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
316 return $self->seq()->display_id();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
317 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
318
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
319
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
320 1;