except:
pass
-import sys, string, optparse
-from commoncode import readDataset
+import sys
+import string
+import optparse
+import ReadDataset
+from commoncode import getConfigParser, getConfigOption, getConfigIntOption, getConfigBoolOption
def main(argv=None):
if not argv:
argv = sys.argv
- verstring = "%prog: version 3.4"
+ verstring = "makerdsfromeland2: version 3.5"
print verstring
usage = "usage: %prog label infilename outrdsfile [propertyName::propertyValue] [options]\
\ninput reads must be sorted to properly record multireads"
- parser = optparse.OptionParser(usage=usage)
- parser.add_option("--append", action="store_false", dest="init",
- help="append to existing rds file [default: create new]")
- parser.add_option("--RNA", dest="geneDataFileName",
- help="set data type to RNA [default: DNA]")
- parser.add_option("--index", action="store_true", dest="doIndex",
- help="index the output rds file")
- parser.add_option("--cache", type="int", dest="cachePages",
- help="number of cache pages to use [default: 100000")
- parser.add_option("--olddelimiter", action="store_true", dest="useOldDelimiter",
- help="use : as the delimiter")
- parser.add_option("--paired", dest="pairID",
- help="pairID value")
- parser.add_option("--extended", action="store_true", dest="extended",
- help="use eland_extended input")
- parser.add_option("--verbose", action="store_true", dest="verbose")
- parser.add_option("--maxlines", type="int", dest="maxLines",
- help="[default: 1000000000")
- parser.set_defaults(init=True, doIndex=False, cachePages=100000, geneDataFileName=None, useOldDelimiter=False, pairID=None, maxLines=1000000000, extended=False, verbose=False)
+ parser = getParser(usage)
(options, args) = parser.parse_args(argv[1:])
if len(args) < 3:
if options.geneDataFileName is not None:
dataType = 'RNA'
- makeRDSFromEland2(label, filename, outdbname, options.doIndex, delimiter, paired, options.init, options.pairID, dataType, options.geneDataFileName, options.cachePages, options.maxLines, options.extended, options.verbose)
+ makeRDSFromEland2(label, filename, outdbname, options.doIndex, delimiter, paired, options.init,
+ options.pairID, dataType, options.geneDataFileName, options.cachePages,
+ options.maxLines, options.extended, options.verbose)
+
+
+def getParser(usage):
+ parser = optparse.OptionParser(usage=usage)
+ parser.add_option("--append", action="store_false", dest="init",
+ help="append to existing rds file [default: create new]")
+ parser.add_option("--RNA", dest="geneDataFileName",
+ help="set data type to RNA [default: DNA]")
+ parser.add_option("--index", action="store_true", dest="doIndex",
+ help="index the output rds file")
+ parser.add_option("--cache", type="int", dest="cachePages",
+ help="number of cache pages to use [default: 100000")
+ parser.add_option("--olddelimiter", action="store_true", dest="useOldDelimiter",
+ help="use : as the delimiter")
+ parser.add_option("--paired", dest="pairID",
+ help="pairID value")
+ parser.add_option("--extended", action="store_true", dest="extended",
+ help="use eland_extended input")
+ parser.add_option("--verbose", action="store_true", dest="verbose")
+ parser.add_option("--maxlines", type="int", dest="maxLines",
+ help="[default: 1000000000")
+
+ configParser = getConfigParser()
+ section = "makerdsfromeland2"
+ init = getConfigBoolOption(configParser, section, "init", True)
+ doIndex = getConfigBoolOption(configParser, section, "doIndex", False)
+ cachePages = getConfigIntOption(configParser, section, "cachePages", 100000)
+ geneDataFileName = getConfigOption(configParser, section, "geneDataFileName", None)
+ useOldDelimiter = getConfigBoolOption(configParser, section, "useOldDelimiter", False)
+ pairID = getConfigOption(configParser, section, "pairID", None)
+ maxLines = getConfigIntOption(configParser, section, "maxLines", 1000000000)
+ extended = getConfigBoolOption(configParser, section, "extended", False)
+ verbose = getConfigBoolOption(configParser, section, "verbose", False)
+
+ parser.set_defaults(init=init, doIndex=doIndex, cachePages=cachePages,
+ geneDataFileName=geneDataFileName, useOldDelimiter=useOldDelimiter,
+ pairID=pairID, maxLines=maxLines, extended=extended, verbose=verbose)
+
+ return parser
+
+def makeRDSFromEland2(label, filename, outdbname, doIndex=False, delimiter="|", paired=False,
+ init=True, pairID="1", dataType="DNA", geneDataFileName=None,
+ cachePages=100000, maxLines=1000000000, extended=False, verbose=False):
-def makeRDSFromEland2(label, filename, outdbname, doIndex=False, delimiter="|", paired=False, init=True, pairID="1", dataType="DNA", geneDataFileName=None, cachePages=100000, maxLines=1000000000, extended=False, verbose=False):
maxBorder = 0
index = 0
insertSize = 100000
mapDict[uname] = []
genedatafile.close()
- rds = readDataset(outdbname, init, dataType, verbose=True)
+ rds = ReadDataset.ReadDataset(outdbname, init, dataType, verbose=True)
if cachePages > rds.getDefaultCacheSize():
if init: