annotate contra_wrapper.pl @ 11:8c16a08d48e1 draft

Uploaded
author fcaramia
date Mon, 17 Jun 2013 03:00:00 -0400
parents cd31a9b4744e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
1 use strict;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
2 use warnings;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
3 use File::Basename;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
4 use Cwd;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
5 use File::Path qw(make_path remove_tree);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
6 die qq(
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
7 Bad numbr of inputs
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
8
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
9 ) if(!@ARGV);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
10
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
11
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
12 my $player_options = "";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
13 my $contra_output;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
14 my $contra_dir;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
15
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
16 my $dir = getcwd;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
17 my $variable;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
18
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
19 foreach my $input (@ARGV)
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
20 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
21 my @tmp = split "::", $input;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
22
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
23 if($tmp[0] eq "PLAYEROPTION")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
24 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
25 $variable = $tmp[1];
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
26 $variable =~ s/=/ /g;
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
27 print "$variable\n";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
28 $player_options = "$player_options $variable";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
29 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
30 elsif($tmp[0] eq "CONTRAOUTPUT")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
31 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
32 $contra_output = $tmp[1];
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
33 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
34 elsif($tmp[0] eq "CONTRADIR")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
35 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
36 $contra_dir = $tmp[1];
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
37 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
38 else
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
39 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
40 die("Unknown Input: $input\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
41 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
42 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
43
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
44
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
45 my $working_dir = "CONTRA_OUTPUT";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
46 make_path($contra_dir);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
47 #remove extension
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
48
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
49 #run contra
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
50 system ("contra.py -o $working_dir $player_options > /dev/null 2>&1");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
51
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
52
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
53 #set html
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
54 #print "$contra_output - $working_dir\n";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
55 open(HTML, ">$contra_output");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
56 print HTML "<html><head><title>Contra: Copy Number Analysis for Targeted Resequencing</title></head><body><h3>Contra Output Files:</h3><p><ul>\n";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
57 move_files($working_dir);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
58 print HTML "</ul></p>\n";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
59 close(HTML);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
60
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
61 sub move_files
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
62 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
63 my $local_dir = $_[0];
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
64 opendir(DIR, $local_dir);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
65 #print ("Openning: $local_dir\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
66 my @FILES= readdir(DIR);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
67 closedir(DIR);
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
68 foreach my $file (@FILES)
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
69 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
70 if ($file eq "." || $file eq "..")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
71 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
72 #print ("./ or ../ skipped\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
73 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
74 elsif (-d "$local_dir/$file")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
75 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
76 #print ("moving to: $local_dir/$file\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
77 move_files("$local_dir/$file");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
78 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
79 elsif (-f "$local_dir/$file")
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
80 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
81 #print ("mv $local_dir/$file $contra_dir\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
82 print HTML "<li><a href=$file>$file</a></li>\n";
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
83 system ("mv $local_dir/$file $contra_dir");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
84 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
85 else
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
86 {
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
87 die("Unrecognized file generated: $file\n");
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
88 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
89
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
90
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
91 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
92
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
93 }
cd31a9b4744e Uploaded
fcaramia
parents:
diff changeset
94