Sync with main trunk
[bioperl-live.git] / Bio / Factory / AnalysisI.pm
blob25c7028955b71381227b866e2a6f4138c75d5b13
1 # $Id$
3 # BioPerl module for Bio::Factory::AnalysisI
5 # Cared for by Martin Senger <martin.senger@gmail.com>
6 # For copyright and disclaimer see below.
9 # POD documentation - main docs before the code
11 =head1 NAME
13 Bio::Factory::AnalysisI - An interface to analysis tool factory
15 =head1 SYNOPSIS
17 This is an interface module - you do not instantiate it.
18 Use I<Bio::Tools::Run::AnalysisFactory> module:
20 use Bio::Tools::Run::AnalysisFactory;
21 my $list = Bio::Tools::Run::AnalysisFactory->new->available_analyses;
23 =head1 DESCRIPTION
25 This interface contains all public methods for showing available
26 analyses and for creating objects representing them.
28 =head1 FEEDBACK
30 =head2 Mailing Lists
32 User feedback is an integral part of the evolution of this and other
33 Bioperl modules. Send your comments and suggestions preferably to
34 the Bioperl mailing list. Your participation is much appreciated.
36 bioperl-l@bioperl.org - General discussion
37 http://bioperl.org/wiki/Mailing_lists - About the mailing lists
39 =head2 Reporting Bugs
41 Report bugs to the Bioperl bug tracking system to help us keep track
42 of the bugs and their resolution. Bug reports can be submitted via the
43 web:
45 http://bugzilla.open-bio.org/
47 =head1 AUTHOR
49 Martin Senger (martin.senger@gmail.com)
51 =head1 COPYRIGHT
53 Copyright (c) 2003, Martin Senger and EMBL-EBI.
54 All Rights Reserved.
56 This module is free software; you can redistribute it and/or modify
57 it under the same terms as Perl itself.
59 =head1 DISCLAIMER
61 This software is provided "as is" without warranty of any kind.
63 =head1 SEE ALSO
65 =over
67 =item *
69 http://www.ebi.ac.uk/soaplab/Perl_Client.html
71 =back
73 =head1 APPENDIX
75 This is actually the main documentation...
77 If you try to call any of these methods directly on this
78 C<Bio::Factory::AnalysisI> object you will get a I<not implemented>
79 error message. You need to call them on a
80 C<Bio::Tools::Run::AnalysisFactory> object instead.
82 =cut
85 # Let the code begin...
87 package Bio::Factory::AnalysisI;
88 use strict;
90 use base qw(Bio::Root::RootI);
93 # -----------------------------------------------------------------------------
95 =head2 available_categories
97 Usage : $factory->available_categories;
98 Returns : an array reference with the names of
99 available categories
100 Args : none
102 The analysis tools may be grouped into categories by their functional
103 similarity, or by the similar data types they deal with. This method
104 shows all available such categories.
106 =cut
108 sub available_categories { shift->throw_not_implemented(); }
110 # -----------------------------------------------------------------------------
112 =head2 available_analyses
114 Usage : $factory->available_analyses;
115 $factory->available_analyses ($category);
116 Returns : an array reference with the names of
117 all available analyses, or the analyses
118 available in the given '$category'
119 Args : none || category_name
121 Show available analyses. Their names usually consist of category
122 analysis names, separated by C<::>.
124 =cut
126 sub available_analyses { shift->throw_not_implemented(); }
128 # -----------------------------------------------------------------------------
130 =head2 create_analysis
132 Usage : $factory->create_analysis ($name);
133 Returns : a Bio::Tools::Run::Analyis object
134 Args : analysis name
136 A real I<factory> method creating an analysis object. The created
137 object gets all access and location information from the factory
138 object.
140 =cut
142 sub create_analysis { shift->throw_not_implemented(); }
144 # -----------------------------------------------------------------------------
148 __END__