Bio::Tools::Run::PiseWorkflow.3pm

Langue: en

Autres versions - même langue

Version: 2008-11-10 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Bio::Tools::Run::PiseWorkflow

SYNOPSIS

   # First, create a Bio::Tools::Run::AnalysisFactory::Pise object:
   my $factory = new Bio::Tools::Run::AnalysisFactory::Pise();
   # Then create the application objects (Pise::Run::Tools::PiseApplication):
   my $clustalw = $factory->program('clustalw');
   $clustalw->infile($my_alignment_file);
   my $protpars = $factory->program('protpars');
 
   # You can specify different servers for different applications :
   my $protdist = $factory->program('protpars'
                                    -remote => 'http://kun.homelinux.com/cgi-bin/Pise/5.a//protpars.pl',
                                    -email => 'your_email');
 
   # Create a new workflow object : 
   my $workflow = Bio::Tools::Run::PiseWorkflow->new(); 
 
   # Define the workflow's methods using the application objects:
   # the application method $protpars will receive the output of 
   # type 'readseq_ok_alig' from the application method $clustalw.
   $workflow->addpipe(-method => $clustalw,
                      -tomethod => $protpars,
                      -pipetype => 'readseq_ok_alig');
 
   # The application method $clustalw will be piped to a second 
   # application method ($protdist) using the output of type 'readseq_ok_alig'.
   $workflow->addpipe(-method => $clustalw,
                      -tomethod => $protdist,
                      -pipetype => 'readseq_ok_alig');
 
   # The application method $protpars will be piped to the application 
   # method $consense using the output of type 'phylip_tree'.
   my $consense = $factory->program('consense');
   $workflow->addpipe(-method => $protpars,
                      -tomethod => $consense,
                      -pipetype => 'phylip_tree');
 
   # Run the workflow.
   $workflow->run();
 
 

DESCRIPTION

A class to create a Pise workflow using Pise application objects as methods. A workflow is defined by a set of methods which all instanciate the class PiseApplication.

Create the workflow object :

   my $workflow = Bio::Tools::Run::PiseWorkflow->new();
 
 

You can specify which application will be used as the first method at creation of the workflow object: (by default, this first method will be the one specified by the option -method at the First call of the function addpipe().

   my $workflow = Bio::Tools::Run::PiseWorkflow->new($clustalw);
 
 

Use the function addpipe to define the workflow :

   $workflow->addpipe(-method => $clustalw,
                      -tomethod => $protpars,
                      -pipetype => 'readseq_ok_alig');
 
 

One method may be piped to different methods in the workflow:

   $workflow->addpipe(-method => $clustalw,
                      -tomethod => $protdist,
                      -pipetype => 'readseq_ok_alig');
 
 

To run the workflow (processes will be forked when possible):

   $workflow->run();
 
 

An html temporary file summarising the jobs status will be created in the working directory.  The html output file can also be specified:

   $workflow->run(-html => 'jobs.html');
 
 

new

  Title   : new()
  Usage   : my $workflow = Bio::Tools::Run::PiseWorkflow->new();
  Function: Creates a Bio::Tools::Run::PiseWorkflow object.
  Example : my $workflow = Bio::Tools::Run::PiseWorkflow->new();
  Returns : An instance of Bio::Tools::Run::PiseWorkflow.
 
 

addpipe

  Title   : addpipe()
  Usage   : $workflow = Bio::Tools::Run::PiseWorkflow->addpipe(
                              -method => $clustalw,
                              -tomethod => $protpars,
                              -pipetype => 'readseq_ok_alig');
  Function: Pipe two methods of class PiseApplication in the workflow object.
  Example : $workflow = Bio::Tools::Run::PiseWorkflow->addpipe($clustalw, $protpars, 'readseq_ok_alig');
  Returns :
 
 

run

  Title   : run()
  Usage   : $workflow = Bio::Tools::Run::PiseWorkflow->run();
  Function: Run the defined workflow. You may provide an
            interval for jobs' completion checking and a file for html output.
  Examples : $workflow = Bio::Tools::Run::PiseWorkflow->run();
         $workflow = Bio::Tools::Run::PiseWorkflow->run(-interval => '200', -html => 'jobs.html');
  Returns :