annotate variant_effect_predictor/Bio/Tools/AnalysisResult.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 # $Id: AnalysisResult.pm,v 1.12 2002/10/22 07:38:45 lapp Exp $
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3 # BioPerl module for Bio::Tools::AnalysisResult
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5 # Cared for by Hilmar Lapp <hlapp@gmx.net>
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 # Copyright Hilmar Lapp
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::Tools::AnalysisResult - Base class for analysis result objects and parsers
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 # obtain a AnalysisResult derived object somehow
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20 print "Method ", $result->analysis_method(),
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21 ", version " $result->analysis_method_version(),
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22 ", performed on ", $result->analysis_date(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23 # annotate a sequence utilizing SeqAnalysisParserI methods
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24 while($feat = $result->next_feature()) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25 $seq->add_SeqFeature($feat);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27 $result->close();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28 # query object, e.g. a Bio::SeqI implementing object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29 $queryseq = $result->analysis_query();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 # Subject of the analysis -- may be undefined. Refer to derived module
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31 # to find out what is returned.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32 $subject = $result->analysis_subject();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 The AnalysisResult module is supposed to be the base class for modules
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37 encapsulating parsers and interpreters for the result of a analysis that was
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 carried out with a query sequence.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40 The notion of an analysis represented by this base class is that of a unary or
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41 binary operator, taking either one query or a query and a subject and producing
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42 a result. The query is e.g. a sequence, and a subject is either a sequence,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43 too, or a database of sequences.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 This module also implements the Bio::SeqAnalysisParserI interface, and thus
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46 can be used wherever such an object fits.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47 See L<Bio::SeqAnalysisParserI|Bio::SeqAnalysisParserI>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48 Developers will find a ready-to-use B<parse()> method, but need to implement
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 B<next_feature()> in an inheriting class. Support for initialization with input
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50 file names and reading from streams is also ready to use.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52 Note that this module does not provide support for B<running> an analysis.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53 Rather, it is positioned in the subsequent parsing step (concerned with
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54 turning raw results into BioPerl objects).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56 =head1 FEEDBACK
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58 =head2 Mailing Lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60 User feedback is an integral part of the evolution of this and other
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61 Bioperl modules. Send your comments and suggestions preferably to one
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62 of the Bioperl mailing lists. Your participation is much appreciated.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 bioperl-l@bioperl.org - General discussion
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65 http://bio.perl.org/MailList.html - About the mailing lists
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67 =head2 Reporting Bugs
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 Report bugs to the Bioperl bug tracking system to help us keep track
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70 the bugs and their resolution. Bug reports can be submitted via email
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71 or the web:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73 bioperl-bugs@bio.perl.org
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74 http://bugzilla.bioperl.org/
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76 =head1 AUTHOR - Hilmar Lapp
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78 Email hlapp@gmx.net
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80 Describe contact details here
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82 =head1 APPENDIX
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84 The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
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 # Let the code begin...
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92 package Bio::Tools::AnalysisResult;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93 use vars qw(@ISA);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94 use strict;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96 use Bio::Root::Root;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
97 use Bio::Root::IO;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
98 use Bio::SeqAnalysisParserI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
99 use Bio::AnalysisResultI;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
100
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
101 @ISA = qw(Bio::Root::Root Bio::SeqAnalysisParserI
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
102 Bio::AnalysisResultI Bio::Root::IO);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
103
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
104 sub new {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
105 my ($class, @args) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
106 my $self = $class->SUPER::new(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
107 $self->_initialize(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
108 return $self;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
109 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
110
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
111 sub _initialize {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
112 my($self,@args) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
113
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
114 my $make = $self->SUPER::_initialize(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
115
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
116 $self->_initialize_state(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
117 return $make; # success - we hope!
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
118 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
119
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
120 =head2 _initialize_state
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
121
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
122 Title : _initialize_state
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
123 Usage : n/a; usually called by _initialize()
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
124 Function: This method is for BioPerl B<developers> only, as indicated by the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
125 leading underscore in its name.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
126
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
127 Performs initialization or reset of the state of this object. The
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
128 difference to _initialize() is that it may be called at any time,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
129 and repeatedly within the lifetime of this object. B<Note, however,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
130 that this is potentially dangerous in a multi-threading
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
131 environment. In general, calling this method twice is discouraged
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
132 for this reason.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
133
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
134 This method is supposed to reset the state such that any 'history'
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
135 is lost. State information that does not change during object
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
136 lifetime is not considered as history, e.g. parent, name, etc shall
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
137 not be reset. An inheriting object should only be concerned with
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
138 state information it introduces itself, and for everything else
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
139 call SUPER::_initialize_state(@args).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
140
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
141 An example is parsing an input file: a state reset implies
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
142 discarding any unread input, and the actual input itself, followed
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
143 by setting the new input.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
144
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
145 The argument syntax is the same as for L<new()|new> and L<_initialize()|_initialize>,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
146 i.e., named parameters following the -name=>$value convention.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
147 The following parameters are dealt with by the implementation
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
148 provided here:
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
149 -INPUT, -FH, -FILE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
150 (tags are case-insensitive).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
151 Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
152 Returns :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
153 Args :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
154
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
155 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
156
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
157 sub _initialize_state {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
158 my ($self,@args) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
159
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
160 $self->close();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
161 $self->_initialize_io(@args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
162
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
163 $self->{'_analysis_sbjct'} = undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
164 $self->{'_analysis_query'} = undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
165 $self->{'_analysis_prog'} = undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
166 $self->{'_analysis_progVersion'} = undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
167 $self->{'_analysis_date'} = undef;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
168
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
169 return 1;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
170 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
171
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
172 # =head2 parse
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
173 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
174 # Title : parse
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
175 # Usage : $obj->parse(-input=>$inputobj, [ -params=>[@params] ],
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
176 # [ -method => $method ] )
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
177 # Function: Sets up parsing for feature retrieval from an analysis file,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
178 # or object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
179 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
180 # This method was originally required by SeqAnalysisParserI, but
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
181 # is now discouraged due to potential problems in a multi-
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
182 # threading environment (CORBA!). If called only once, it doesn't
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
183 # add any functionality to calling new() with the same
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
184 # parameters.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
185 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
186 # The implementation provided here calls automatically
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
187 # _initialize_state() and passes on -input=>$inputobj and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
188 # @params as final arguments.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
189 # Example :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
190 # Returns : void
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
191 # Args : B<input> - object/file where analysis are coming from
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
192 # B<params> - parameter to use when parsing/running analysis
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
193 # B<method> - method of analysis
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
194 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
195 # =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
196
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
197 sub parse {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
198 my ($self, @args) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
199
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
200 my ($input, $params, $method) =
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
201 $self->_rearrange([qw(INPUT
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
202 PARAMS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
203 METHOD
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
204 )],
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
205 @args);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
206
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
207 # initialize with new input
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
208 if($params) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
209 $self->_initialize_state('-input' => $input, @$params);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
210 } else {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
211 $self->_initialize_state('-input' => $input);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
212 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
213 $self->analysis_method($method) if $method;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
214 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
215
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
216 =head2 analysis_query
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
217
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
218 Usage : $query_obj = $result->analysis_query();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
219 Purpose : Set/Get the name of the query used to generate the result, that
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
220 is, the entity on which the analysis was performed. Will mostly
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
221 be a sequence object (Bio::PrimarySeq compatible).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
222 Argument :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
223 Returns : The object set before. Mostly a Bio::PrimarySeq compatible object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
224
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
225 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
226
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
227 #--------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
228 sub analysis_query {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
229 my ($self, $obj) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
230 if($obj) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
231 $self->{'_analysis_query'} = $obj;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
232 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
233 return $self->{'_analysis_query'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
234 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
235 #--------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
236
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
237 =head2 analysis_subject
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
238
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
239 Usage : $result->analyis_subject();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
240 Purpose : Set/Get the subject of the analysis against which it was
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
241 performed. For similarity searches it will probably be a database,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
242 and for sequence feature predictions (exons, promoters, etc) it
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
243 may be a collection of models or homologous sequences that were
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
244 used, or undefined.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
245 Returns : The object that was set before, or undef.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
246 Argument :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
247
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
248 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
249
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
250 #---------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
251 sub analysis_subject {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
252 #---------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
253 my ($self, $sbjct_obj) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
254 if($sbjct_obj) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
255 $self->{'_analysis_sbjct'} = $sbjct_obj;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
256 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
257 return $self->{'_analysis_sbjct'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
258 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
259
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
260
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
261 =head2 analysis_date
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
262
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
263 Usage : $result->analysis_date();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
264 Purpose : Set/Get the date on which the analysis was performed.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
265 Returns : String
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
266 Argument :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
267 Comments :
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
268
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
269 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
270
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
271 #----------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
272 sub analysis_date {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
273 my ($self, $date) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
274 if($date) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
275 $self->{'_analysis_date'} = $date;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
276 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
277 return $self->{'_analysis_date'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
278 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
279 #----------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
280
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
281 =head2 analysis_method
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
282
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
283 Usage : $result->analysis_method();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
284 Purpose : Set/Get the name of the sequence analysis method that was used
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
285 to produce this result (BLASTP, FASTA, etc.). May also be the
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
286 actual name of a program.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
287 Returns : String
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
288 Argument : n/a
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
289
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
290 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
291
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
292 #-------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
293 sub analysis_method {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
294 #-------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
295 my ($self, $method) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
296 if($method) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
297 $self->{'_analysis_prog'} = $method;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
298 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
299 return $self->{'_analysis_prog'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
300 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
301
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
302 =head2 analysis_method_version
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
303
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
304 Usage : $result->analysis_method_version();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
305 Purpose : Set/Get the version string of the analysis program.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
306 : (e.g., 1.4.9MP, 2.0a19MP-WashU).
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
307 Returns : String
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
308 Argument : n/a
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
309
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
310 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
311
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
312 #---------------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
313 sub analysis_method_version {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
314 #---------------------
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
315 my ($self, $version) = @_;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
316 if($version) {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
317 $self->{'_analysis_progVersion'} = $version;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
318 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
319 return $self->{'_analysis_progVersion'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
320 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
321
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
322
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
323 1;