NAME

Bio::Factory::EMBOSS - EMBOSS application factory class

SYNOPSIS

# Get an EMBOSS factory
use Bio::Factory::EMBOSS;
$f = Bio::Factory::EMBOSS -> new();
# Get an EMBOSS application  object from the factory
$water = $f->program('water') || die "Program not found!\n";

# Here is an example of running the application - water can
# compare 1 sequence against 1 or more sequences using Smith-Waterman.
# Pass a Sequence object and a reference to an array of objects.

my $wateroutfile = 'out.water';
$water->run({-asequence => $seq_object,
             -bsequence => \@seq_objects,
             -gapopen   => '10.0',
             -gapextend => '0.5',
             -outfile   => $wateroutfile});

# Now you might want to get the alignment
use Bio::AlignIO;
my $alnin = Bio::AlignIO->new(-format => 'emboss',
                              -file   => $wateroutfile);

while ( my $aln = $alnin->next_aln ) {
    # process the alignment -- these will be Bio::SimpleAlign objects
}

DESCRIPTION

The EMBOSS factory class encapsulates access to EMBOSS programs. A factory object allows creation of only known applications.

If you want to check command line options before sending them to the program set $prog->verbose to positive integer. The value is passed on to programs objects and the ADC description of the available command line options is parsed and compared to input.

See also Bio::Tools::Run::EMBOSSApplication and Bio::Tools::Run::EMBOSSacd.

FEEDBACK

Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing lists Your participation is much appreciated.

bioperl-l@bioperl.org                  - General discussion
http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

Support

Please direct usage questions or support issues to the mailing list:

bioperl-l@bioperl.org

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web:

http://redmine.open-bio.org/projects/bioperl/

AUTHOR - Heikki Lehvaslaiho

Email heikki-at-bioperl-dot-org

APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

location

Title   : location
Usage   : $embossfactory->location
Function: get/set the location of EMBOSS programs.
          Valid values are 'local' and 'novella'.
Returns : string, defaults to 'local'
Args    : string

program

Title   : program
Usage   : $embossfactory->program('program_name')
Function: Creates a representation of a single EMBOSS program and issues a
          warning if the program was not found.
Returns : Bio::Tools::Run::EMBOSSApplication object or undef
Args    : string, program name

version

Title   : $self->version
Usage   : $embossfactory->version()
Function: gets the version of EMBOSS programs
Throws  : if EMBOSS suite is not accessible
Returns : version value
Args    : None

Programs

These methods allow the programmer to query the EMBOSS suite and find out which program names can be used and what arguments can be used.

program_info

Title   : program_info
Usage   : $embossfactory->program_info('emma')
Function: Finds out if the program is available.
Returns : definition string of the program, undef if program name not known
Args    : string, prgramname

Internal methods

Do not call these methods directly

_program_list

Title   : _program_list
Usage   : $embossfactory->_program_list()
Function: Finds out what programs are available.
          Writes the names into an internal hash.
Returns : true if successful
Args    : None