1 *cdf0e10cSrcweir#!/bin/perl 2 *cdf0e10cSrcweir# 3 *cdf0e10cSrcweir# spose - start pose 4 *cdf0e10cSrcweir# 5 *cdf0e10cSrcweir 6 *cdf0e10cSrcweiruse Getopt::Std; 7 *cdf0e10cSrcweir 8 *cdf0e10cSrcweir# Location of needed files 9 *cdf0e10cSrcweir# 10 *cdf0e10cSrcweir$pose2_exe = $ENV{'POSE2_EXE'}; 11 *cdf0e10cSrcweir$pose3_exe = $ENV{'POSE3_EXE'}; 12 *cdf0e10cSrcweir$pose_prc = $ENV{'POSE_PRC'}; 13 *cdf0e10cSrcweir 14 *cdf0e10cSrcweir 15 *cdf0e10cSrcweirif (getopts('23qmwo:r:d:v') != 1) 16 *cdf0e10cSrcweir{ 17 *cdf0e10cSrcweir &usage(); 18 *cdf0e10cSrcweir} 19 *cdf0e10cSrcweir 20 *cdf0e10cSrcweir$apps_load = ""; 21 *cdf0e10cSrcweir 22 *cdf0e10cSrcweirif ($opt_q) 23 *cdf0e10cSrcweir{ 24 *cdf0e10cSrcweir &add_app("$pose_prc/Quickword.PRC"); 25 *cdf0e10cSrcweir} 26 *cdf0e10cSrcweirif ($opt_m) 27 *cdf0e10cSrcweir{ 28 *cdf0e10cSrcweir &add_app("$pose_prc/MiniCalc.prc"); 29 *cdf0e10cSrcweir} 30 *cdf0e10cSrcweirif ($opt_w) 31 *cdf0e10cSrcweir{ 32 *cdf0e10cSrcweir &add_app("$pose_prc/WordSmith.PRC"); 33 *cdf0e10cSrcweir} 34 *cdf0e10cSrcweirif ($opt_o) 35 *cdf0e10cSrcweir{ 36 *cdf0e10cSrcweir &add_app("$opt_o"); 37 *cdf0e10cSrcweir} 38 *cdf0e10cSrcweirif ($opt_r) 39 *cdf0e10cSrcweir{ 40 *cdf0e10cSrcweir $run_prog .= "-run_app $opt_r"; 41 *cdf0e10cSrcweir} 42 *cdf0e10cSrcweirif ($opt_d) 43 *cdf0e10cSrcweir{ 44 *cdf0e10cSrcweir $directory = $opt_d; 45 *cdf0e10cSrcweir @files = `/bin/ls -1 $directory/*.pdb`; 46 *cdf0e10cSrcweir 47 *cdf0e10cSrcweir for ($i=0; $i <= $#files; $i++) 48 *cdf0e10cSrcweir { 49 *cdf0e10cSrcweir $add_file = "$files[$i]"; 50 *cdf0e10cSrcweir chomp $add_file; 51 *cdf0e10cSrcweir &add_app("$add_file"); 52 *cdf0e10cSrcweir } 53 *cdf0e10cSrcweir} 54 *cdf0e10cSrcweir 55 *cdf0e10cSrcweirif ($opt_3) 56 *cdf0e10cSrcweir{ 57 *cdf0e10cSrcweir $pose_exe = $pose3_exe; 58 *cdf0e10cSrcweir} 59 *cdf0e10cSrcweirelse 60 *cdf0e10cSrcweir{ 61 *cdf0e10cSrcweir $pose_exe = $pose2_exe; 62 *cdf0e10cSrcweir} 63 *cdf0e10cSrcweirif ($pose_exe eq "") 64 *cdf0e10cSrcweir{ 65 *cdf0e10cSrcweir print "\nPose not found: Please set \n POSE2_EXE\n or POSE3_EXE\n"; 66 *cdf0e10cSrcweir exit 0; 67 *cdf0e10cSrcweir} 68 *cdf0e10cSrcweirif ($opt_v) 69 *cdf0e10cSrcweir{ 70 *cdf0e10cSrcweir print ("\n$pose_exe $apps_load $run_prog &\n\n"); 71 *cdf0e10cSrcweir} 72 *cdf0e10cSrcweirelse 73 *cdf0e10cSrcweir{ 74 *cdf0e10cSrcweir system ("$pose_exe $apps_load $run_prog &"); 75 *cdf0e10cSrcweir} 76 *cdf0e10cSrcweir 77 *cdf0e10cSrcweirexit 0; 78 *cdf0e10cSrcweir 79 *cdf0e10cSrcweirsub usage 80 *cdf0e10cSrcweir{ 81 *cdf0e10cSrcweir print "\nUsage: getopt [ -m ] [ -q ] [ -w ] [ -o <PrcFile> ] [ -r <RunProg> ]\n"; 82 *cdf0e10cSrcweir print " -2 Runs pose version 3.2 [ current default ]\n"; 83 *cdf0e10cSrcweir print " -3 Runs pose version 3.3\n"; 84 *cdf0e10cSrcweir print " -d Load all PDB files in specified directory\n"; 85 *cdf0e10cSrcweir print " -m Load MiniCalc PRC file\n"; 86 *cdf0e10cSrcweir print " -q Load QuickWord PRC file\n"; 87 *cdf0e10cSrcweir print " -w Load WordSmith PRC file\n"; 88 *cdf0e10cSrcweir print " -o <PrcFile> Other PRC files to load\n"; 89 *cdf0e10cSrcweir print " -r <RunProg> Program to run on startup\n"; 90 *cdf0e10cSrcweir print " -v Display the command instead of running\n\n"; 91 *cdf0e10cSrcweir exit(-1); 92 *cdf0e10cSrcweir} 93 *cdf0e10cSrcweir 94 *cdf0e10cSrcweirsub add_app 95 *cdf0e10cSrcweir{ 96 *cdf0e10cSrcweir my $new_app = $_[0]; 97 *cdf0e10cSrcweir 98 *cdf0e10cSrcweir if ($apps_load ne "") 99 *cdf0e10cSrcweir { 100 *cdf0e10cSrcweir $apps_load .= ","; 101 *cdf0e10cSrcweir } 102 *cdf0e10cSrcweir else 103 *cdf0e10cSrcweir { 104 *cdf0e10cSrcweir $apps_load = "-load_apps "; 105 *cdf0e10cSrcweir } 106 *cdf0e10cSrcweir 107 *cdf0e10cSrcweir $apps_load .= "$new_app"; 108 *cdf0e10cSrcweir} 109