changeset 2:31f689324222

Uploaded Updated version of the prepare program with subprocess and tempfile enhancements + debug displays
author george-weingart
date Tue, 06 May 2014 16:46:16 -0400
parents caffff6e32e2
children 800220830386
files micropita_prepare.py
diffstat 1 files changed, 60 insertions(+), 33 deletions(-) [+]
line wrap: on
line diff
--- a/micropita_prepare.py	Mon May 05 01:24:26 2014 -0400
+++ b/micropita_prepare.py	Tue May 06 16:46:16 2014 -0400
@@ -40,6 +40,18 @@
 import os
 from time import gmtime, strftime
 from pprint import pprint
+import subprocess  
+import blist
+import shlex
+import tempfile
+
+##################################################################################
+#   Modification                                                                 #
+#   Using subprocess                                                             #
+##################################################################################
+
+
+
 
 ##################################################################################
 #  Decode Parms                                                                  #
@@ -52,6 +64,7 @@
 	parser.add_argument('-n', action="store",dest='NSamples')
 	parser.add_argument('--lastmeta', action="store",dest='lastmeta')
 	parser.add_argument('--stratify_value', action="store",dest='stratify_value')
+	parser.add_argument('--root_dir', action="store", dest='root_dir',nargs='?')
 
 
 	try:
@@ -77,8 +90,6 @@
 ##################################################################################
 parser = read_params( sys.argv )
 results = parser.parse_args()
-root_dir = os.environ.get('micropita_SCRIPT_PATH')
-
 
 fname =  results.inputname
 input_file = open(fname,'rU')
@@ -117,8 +128,8 @@
 		TBTargets.append(int(tb_entry))
 
 
-	TempTargetsFileName = "/tmp/micropita_targets" + FileTimeStamp
-	OutTargetsFile = open(TempTargetsFileName,"w")
+	OutTargetsFile  = tempfile.NamedTemporaryFile('w' )
+	TempTargetsFileName = OutTargetsFile.name 
 	indx = -1
 	for  c in table_lines:
 		indx+=1
@@ -126,47 +137,63 @@
 			OutputString = table_lines[indx] + "\n"
 			OutTargetsFile.write(OutputString)
 	OutTargetsFile.close()
-
 	os_command = "python " + \
-        root_dir + "/" +\
-	"MicroPITA.py "+\
-	"--lastmeta " + table_lines[LastMetaInt]+ " " +\
-        "--feature_method " + results.feature_method + " " + \
-	"--target " + TempTargetsFileName + " " +\
-	"-m " + results.MParameter + " " + \
-	"-n " + results.NSamples + " " +\
+		results.root_dir + \
+		"/tools/micropita/" + \
+		"MicroPITA.py "+\
+		"--lastmeta " + table_lines[LastMetaInt]+ " " +\
+		"--feature_method " + results.feature_method + " " + \
+		"--target " + TempTargetsFileName + " " +\
+		"-m " + results.MParameter + " " + \
+		"-n " + results.NSamples + " " +\
 	stratify_string + " " +\
 	results.inputname + " " +\
 	results.outputname
 	#print os_command
 	os.system(os_command)
 
+	
+
+print "Before invoking the call"
+
 if results.MParameter == "representative"\
 or results.MParameter == "diverse"\
 or results.MParameter == "extreme": 
+		os_command = "python " + \
+		results.root_dir +  \
+		"/tools/micropita/" + \
+		"MicroPITA.py "+\
+		"--lastmeta " + table_lines[LastMetaInt]+ " " +\
+		"-m " + results.MParameter + " " + \
+		"-n " + results.NSamples + " " +\
+		stratify_string + " " + \
+		results.inputname + " " +\
+		results.outputname
+		print os_command
+		argsx = shlex.split(os_command)
+		print argsx
+		try:
+				######os.system(os_command)
+				subprocess.check_call(argsx , shell=False)
+		except:
+				print "The call to micropita failed============="
+		sys.exit(0)
+ 
+	
+	
+	
+if results.MParameter == "distinct"\
+or results.MParameter == "discriminant": 
 	os_command = "python " + \
-        root_dir + "/" +\
-	"MicroPITA.py "+\
-	"--lastmeta " + table_lines[LastMetaInt]+ " " +\
-	"-m " + results.MParameter + " " + \
-	"-n " + results.NSamples + " " +\
-        stratify_string + " " + \
+		results.root_dir + \
+		"/tools/micropita/" + \
+		"MicroPITA.py "+\
+		"--lastmeta " + table_lines[LastMetaInt]+ " " +\
+		"--label " + table_lines[LastMetaInt]+ " " +\
+		"-m " + results.MParameter + " " + \
+		"-n " + results.NSamples + " " +\
+		stratify_string + " " + \
 	results.inputname + " " +\
 	results.outputname
 	#print os_command
 	os.system(os_command)
-
-if results.MParameter == "distinct"\
-or results.MParameter == "discriminant": 
-	os_command = "python " + \
-        root_dir + "/" +\
-	"MicroPITA.py "+\
-	"--lastmeta " + table_lines[LastMetaInt]+ " " +\
-	"--label " + table_lines[LastMetaInt]+ " " +\
-	"-m " + results.MParameter + " " + \
-	"-n " + results.NSamples + " " +\
-        stratify_string + " " + \
-	results.inputname + " " +\
-	results.outputname
-	#print os_command
-	os.system(os_command)