annotate variant_effect_predictor/Bio/Annotation/Comment.pm @ 0:2bc9b66ada89 draft default tip

Uploaded
author mahtabm
date Thu, 11 Apr 2013 06:29:17 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
1 # $Id: Comment.pm,v 1.8 2002/09/25 18:11:33 lapp Exp $
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
2 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
3 # BioPerl module for Bio::Annotation::Comment
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
4 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
5 # Cared for by Ewan Birney <birney@ebi.ac.uk>
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
6 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
7 # Copyright Ewan Birney
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
8 #
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
9 # You may distribute this module under the same terms as perl itself
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
10
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
11 # POD documentation - main docs before the code
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
12
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
13 =head1 NAME
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
14
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
15 Bio::Annotation::Comment - A comment object, holding text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
16
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
17 =head1 SYNOPSIS
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
18
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
19
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
20 $comment = Bio::Annotation::Comment->new();
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
21 $comment->text("This is the text of this comment");
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
22 $annotation->add_Annotation('comment', $comment);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
23
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
24
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
25 =head1 DESCRIPTION
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
26
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
27 A holder for comments in annotations, just plain text. This is a very simple
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
28 object, and justifiably so.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
29
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
30 =head1 CONTACT
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
31
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
32 Describe contact details here
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
33
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
34 =head1 APPENDIX
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
35
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
36 The rest of the documentation details each of the object
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
37 methods. Internal methods are usually preceded with a _
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
38
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
39 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
40
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
41
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
42 # Let the code begin...
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
43
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
44 package Bio::Annotation::Comment;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
45 use vars qw(@ISA);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
46 use strict;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
47
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
48 use Bio::Root::Root;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
49 use Bio::AnnotationI;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
50
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
51 @ISA = qw(Bio::Root::Root Bio::AnnotationI);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
52
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
53 =head2 new
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
54
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
55 Title : new
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
56 Usage : $comment = Bio::Annotation::Comment->new( '-text' => 'some text for this comment');
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
57 Function: This returns a new comment object, optionally with
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
58 text filed
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
59 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
60 Returns : a Bio::Annotation::Comment object
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
61 Args : a hash with -text optionally set
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
62
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
63
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
64 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
65
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
66
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
67 sub new {
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
68 my($class,@args) = @_;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
69
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
70 my $self = $class->SUPER::new(@args);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
71 my ($text,$tag) = $self->_rearrange([qw(TEXT TAGNAME)], @args);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
72
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
73 defined $text && $self->text($text);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
74 defined $tag && $self->tagname($tag);
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
75
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
76 return $self;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
77 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
78
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
79 =head1 AnnotationI implementing functions
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
80
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
81 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
82
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
83 =head2 as_text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
84
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
85 Title : as_text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
86 Usage :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
87 Function:
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
88 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
89 Returns :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
90 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
91
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
92
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
93 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
94
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
95 sub as_text{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
96 my ($self) = @_;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
97
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
98 return "Comment: ".$self->text;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
99 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
100
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
101 =head2 hash_tree
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
102
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
103 Title : hash_tree
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
104 Usage :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
105 Function:
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
106 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
107 Returns :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
108 Args :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
109
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
110
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
111 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
112
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
113 sub hash_tree{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
114 my ($self) = @_;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
115
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
116 my $h = {};
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
117 $h->{'text'} = $self->text;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
118 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
119
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
120 =head2 tagname
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
121
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
122 Title : tagname
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
123 Usage : $obj->tagname($newval)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
124 Function: Get/set the tagname for this annotation value.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
125
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
126 Setting this is optional. If set, it obviates the need to provide
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
127 a tag to Bio::AnnotationCollectionI when adding this object. When
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
128 obtaining an AnnotationI object from the collection, the collection
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
129 will set the value to the tag under which it was stored unless the
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
130 object has a tag stored already.
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
131 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
132 Returns : value of tagname (a scalar)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
133 Args : new value (a scalar, optional)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
134
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
135
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
136 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
137
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
138 sub tagname{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
139 my ($self,$value) = @_;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
140 if( defined $value) {
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
141 $self->{'tagname'} = $value;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
142 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
143 return $self->{'tagname'};
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
144 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
145
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
146 =head1 Specific accessors for Comments
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
147
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
148 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
149
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
150
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
151 =head2 text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
152
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
153 Title : text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
154 Usage : $value = $self->text($newval)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
155 Function: get/set for the text field. A comment object
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
156 just holds a single string which is accessible through
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
157 this method
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
158 Example :
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
159 Returns : value of text
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
160 Args : newvalue (optional)
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
161
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
162
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
163 =cut
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
164
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
165 sub text{
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
166 my ($self,$value) = @_;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
167 if( defined $value) {
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
168 $self->{'text'} = $value;
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
169 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
170 return $self->{'text'};
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
171
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
172 }
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
173
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
174
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
175
2bc9b66ada89 Uploaded
mahtabm
parents:
diff changeset
176 1;