erange version 4.0a dev release
[erange.git] / stallCategory.py
index 92cd5199c63be59aa2c8b2e39c6847a9ba307c23..5c6145cf46f475836b1b77e32405d219e9feea22 100755 (executable)
@@ -11,8 +11,9 @@ except:
 
 import sys
 import optparse
+from commoncode import getConfigParser, getConfigOption, getConfigFloatOption
 
-print "%prog: version 1.1"
+print "stallCategory: version 1.2"
 
 
 def main(argv=None):
@@ -21,11 +22,7 @@ def main(argv=None):
 
     usage = "usage: python %prog stalledPercentFile1 stalledPercentFile2 transcriptFile [--out oufile] [--statout statoutfile] [--expression level]"
 
-    parser = optparse.OptionParser(usage=usage)
-    parser.add_option("--out", dest="outFileName")
-    parser.add_option("--statout", dest="statOutFileName")
-    parser.add_option("--expression", type="float", dest="expressionLevel")
-    parser.set_defaults(outFileName=None, statOutFileName=None, expressionLevel=0.9)
+    parser = makeParser(usage)
     (options, args) = parser.parse_args(argv[1:])
 
     if len(args) < 3:
@@ -39,6 +36,23 @@ def main(argv=None):
     stallCategory(infile1, infile2, transcriptFile, options.outFileName, options.statOutFileName, options.expressionLevel)
 
 
+def makeParser(usage=""):
+    parser = optparse.OptionParser(usage=usage)
+    parser.add_option("--out", dest="outFileName")
+    parser.add_option("--statout", dest="statOutFileName")
+    parser.add_option("--expression", type="float", dest="expressionLevel")
+
+    configParser = getConfigParser()
+    section = "stallCategory"
+    outFileName = getConfigOption(configParser, section, "outFileName", None)
+    statOutFileName = getConfigOption(configParser, section, "statOutFileName", None)
+    expressionLevel = getConfigFloatOption(configParser, section, "expressionLevel", 0.9)
+
+    parser.set_defaults(outFileName=outFileName, statOutFileName=statOutFileName, expressionLevel=expressionLevel)
+
+    return parser
+
+
 def stallCategory(inFile1Name, inFile2Name, transcriptFileName, outFileName=None, statOutFileName=None, expressionLevel=0.9):
 
     infile1 = open(inFile1Name)