Raw content of Bio::EnsEMBL::Analysis::RunnableDB::BlastGenscanDNA # Ensembl module for Bio::EnsEMBL::Analysis::RunnableDB::BlastGenscanDNA # # Copyright (c) 2004 Ensembl # =head1 NAME Bio::EnsEMBL::Analysis::RunnableDB::Blast =head1 SYNOPSIS my $blast = Bio::EnsEMBL::Analysis::RunnableDB::BlastGenscanDNA-> new( -analysis => $analysis, -db => $db, -input_id => 'contig::AL1347153.1.3517:1:3571:1' ); $blast->fetch_input; $blast->run; my @output =@{$blast->output}; =head1 DESCRIPTION This module inherits from the Blast runnable and instantiates BlastTranscriptDNA passing in prediction transcript =head1 CONTACT Post questions to the Ensembl development list: ensembl-dev@ebi.ac.uk =cut package Bio::EnsEMBL::Analysis::RunnableDB::BlastGenscanDNA; use strict; use warnings; use Bio::EnsEMBL::Analysis::Runnable::BlastTranscriptDNA; use Bio::EnsEMBL::Analysis::RunnableDB::Blast; use Bio::EnsEMBL::Utils::Exception qw(throw warning); use Bio::EnsEMBL::Analysis::Config::General; use Bio::EnsEMBL::Analysis::Config::Blast; use vars qw(@ISA); @ISA = qw(Bio::EnsEMBL::Analysis::RunnableDB::Blast); =head2 fetch_input Arg [1] : Bio::EnsEMBL::Analysis::RunnableDB::BlastGenscanDNA Function : fetch sequence and prediction transcripts of database, read config files instantiate the filter, parser and finally the blast runnables Returntype: none Exceptions: none Example : =cut sub fetch_input{ my ($self) = @_; my $slice = $self->fetch_sequence($self->input_id, $self->db); $self->query($slice); my %blast = %{$self->BLAST_PARAMS}; my $logic_name = $BLAST_AB_INITIO_LOGICNAME; $logic_name = 'Genscan' if(!$logic_name); my $pta = $self->db->get_PredictionTranscriptAdaptor; my $pts = $pta->fetch_all_by_Slice($self->query, $logic_name); my $parser = $self->make_parser; my $filter; if($self->BLAST_FILTER){ $filter = $self->make_filter; } foreach my $t(@$pts){ my $runnable = Bio::EnsEMBL::Analysis::Runnable::BlastTranscriptDNA-> new( -transcript => $t, -query => $self->query, -program => $self->analysis->program_file, -parser => $parser, -filter => $filter, -database => $self->analysis->db_file, -analysis => $self->analysis, %blast, ); $self->runnable($runnable); } }