Langue: en

Autres versions - même langue

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

Section: 3 (Bibliothèques de fonctions)




   # 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');
   my $protpars = $factory->program('protpars');
   # You can specify different servers for different applications :
   my $protdist = $factory->program('protpars'
                                    -remote => '',
                                    -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.


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):


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');


  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.


  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 :


  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 :