#!/usr/local/bin/perl
# fasta2ccp
# Reads a directory and writes fasta files with coiled coil predictions
# for fasta files found in the directory
# usage fasta2ccp -d <directory_where_fasta_files_are>
# 
# Author: Leonardo Marino-Ramirez <marino@tofu.tamu.edu>
# 
# Please cite the author in any work or product based on this material.
#

use strict;
use Getopt::Std;
use File::Basename;

use vars qw($opt_d $file @fasta_files $fname $dirname $ccp $opt_h
	    );

## Check command line
my $prog = basename($0);

getopt('hd');

if ($opt_h) {
    usage($prog); exit();
} if ($opt_d) {
$dirname = "$opt_d";
$ccp = '/usr/local/bin/ccp';
} else {
    usage($prog); exit();
}

## Get a working directory containing fasta files
if (opendir (DIR, $dirname)) {
    while  ($file = readdir(DIR)) {
	## abi files must contain the .Seq suffix 
	push (@fasta_files, "$file") if ($file =~ /\.aa$/);
    }
}
closedir(DIR);

my $num_fasta_files = scalar (@fasta_files);

foreach $fname (@fasta_files) {
    
    print "Writing ccp file for $fname\n";
    system "$ccp -f $fname -S T > $fname.ccp";
    
}

print "$num_fasta_files file(s) converted\n";

## Normal end
exit(0);

## Usage display
sub usage {
  my $p = shift;
  print STDERR <<USAGE
usage: $p [options] <file>

options [default]:
    -h           Usage display.
    -d           Directory containing fasta files (*.aa).
USAGE
}