G::Tools HMMER
Included librariesPackage variablesGeneral documentationMethods
Package variables
No package variables defined.
Included modules
G::Messenger
SelfLoader
SubOpt
Inherit
Exporter
Synopsis
No synopsis!
Description
No description!
Methods
_hmmpfam
No description
Code
Methods description
None available.
Methods code
_hmmpfamdescriptionprevnextTop
sub _hmmpfam {
    &opt_default(qr=>'off',input=>"file",filename=>"hmmpfam.hmm",output=>"f");
    my @param;
    my @tmp;
    foreach(@_){
	if($_ eq '-n' || $_ eq '--forward' || $_ eq '--null2' || $_ eq '--pvm' ||$_ eq '--xnu'){
	    push(@param,$_);
	}
	else{
	    push(@tmp,$_);
	}
    }
    @_=@tmp;
    my @args=opt_get(@_);

    my $qr=&opt_val("qr");
    my $input=&opt_val("input");
    my $output=&opt_val("output");
    my $data=shift @args;
    my $file;
    my $filename;
    my $seq;
    my $param;
    my %opt;
    my $num;

    if($input eq "seq"){
	$seq=shift @args;
	opendir(DIR,'/tmp');
	@tmp=readdir(DIR);
	$num=$#tmp+1+time;
	@tmp=keys(%$seq);
	open(FILE,'>/tmp/hmmpfam_'.$num.'.seq');
	print FILE ">$tmp[0]\n";
	print FILE $$seq{$tmp[0]},"\n";
	close(FILE);
	$file='/tmp/hmmpfam_'.$num.'.seq'; 
	$filename=&opt_val("filename");
    }
    else{
	$file=shift @args;
	$filename=$file.'.hmm';
    }

    $opt{A}=&opt_val("A");
    $opt{E}=&opt_val("E");
    $opt{T}=&opt_val("T");
    $opt{Z}=&opt_val("Z");
    $opt{-cpu}=&opt_val('-cpu');
    $opt{-domE}=&opt_val('-domE');
    $opt{-domT}=&opt_val('-domT');

    foreach(sort keys(%opt)){
	next if($opt{$_} eq '');
	push(@param,'-'.$_);
	push(@param,$opt{$_});
    }
    $param=join(" ",@param);
    
    if($qr eq "on"){
	system('qr',"hmmpfam $param $data $file") if($output eq "stdout");
	system('qr',"hmmpfam $param $data $file > $filename") if($output ne "stdout");
    }
    else{
	system("hmmpfam $param $data $file") if($output eq "stdout");
	system("hmmpfam $param $data $file > $filename") if($output ne "stdout");
    }

    unlink('/tmp/hmmpfam_'.$num.'.seq') if($input eq "seq" && $qr ne 'on');

    return "$param $data $file";
}
General documentation
No general documentation available.