#!/usr/bin/perl -w
use strict;

#person in charge of this script
#this should be the person currently in charge of scripts for the SGN project
my $script_maintainer='Teri Solow <tms45@cornell.edu>';

#local packages to use
use db_link;
use projects;


@ARGV or print "No input parameters, proceeding with default.\n";

my @arg_pairs = split (/\-/, (join ' ', @ARGV));

my %args=();

foreach (@arg_pairs){
	$_ or next;
	my ($flag, $val)=split /\s+/;
	$args{$flag}=$val;
}

my $project=$args{'p'};
my $lib=$args{'l'};
my $seq_in_file=$args{'i'};
my $output_file=$args{'o'};

$project or die "Please specify a project (cgn, fgn, pgn) using the -p flag\n";
$lib or die "No library specified, try '-l library_name (-l all to process all libraries)'\n";

my ($db, $usr) = @{projects::get_db_info($project)};
$db or die "No known database for project $project";


#set defaults for io, script filename, etc
$seq_in_file ||= "/data/shared/pgn_data_processing/unigene_builds/$project/$lib/$lib.fasta";
$output_file ||= "/data/shared/pgn_data_processing/unigene_builds/$project/$lib/${lib}_cap.out";

my $assembler = "/usr/local/bin/cap3";
my $assembler_options = "-e 5000 -s 401 -p 90 -d 10000 -b 60";

#main body of script
#####################
my $command = "$assembler $seq_in_file $assembler_options >$output_file";
#print $command;
system($command);

