def parse_arguments()

in src/main/python/dna_rna_variant_qc_metrics.py [0:0]


def parse_arguments(argv):
	sample, align, insert, gcbias, mkdup_hybrid, rmdup_hybrid, duplicate, pileup, bedcoverage, project, run, date, read_type= \
																					None,None,None,None,None,None,None,None,None,None,None,None,None
	type = "capture"
	read_type = "paired"
	
	try:
		opts, args = getopt.getopt(argv[1:], "h", \
					["sample=","align=","insert=","gcbias=","mkdup_hybrid=","rmdup_hybrid=","duplicate=","bedcov=","pileup=","type=","output=","project=","run=","date=","read_type=","help"])
	except getopt.GetoptError as err:
		# print help information and exit:
		print str(err)  # will print something like "option -a not recognized"
		usage()

	for opt, arg in opts:
		if opt == ('-h','--help'):
			usage()

		elif opt in ("--align"):
			align = arg
			if not os.path.isfile(align):
				raise ArgumentError("Argument Error: Invalid alignment summary file passed.")
		
		elif opt in ("--insert"):
			insert = arg
			if not os.path.isfile(insert):
				raise ArgumentError("Argument Error: Invalid insertsize summary file passed.")
				
		elif opt in ("--gcbias"):
			gcbias = arg
			if not os.path.isfile(gcbias):
				raise ArgumentError("Argument Error: Invalid gcbias summary file passed.")
				
		elif opt in ("--mkdup_hybrid"):
			mkdup_hybrid = arg
			if not os.path.isfile(mkdup_hybrid):
				raise ArgumentError("Argument Error: Invalid mkdup_hybrid summary file passed.")
		
		elif opt in ("--rmdup_hybrid"):
			rmdup_hybrid = arg
			if not os.path.isfile(rmdup_hybrid):
				raise ArgumentError("Argument Error: Invalid rmdup_hybrid summary file passed.")
				
		elif opt in ("--duplicate"):
			duplicate = arg
			if not os.path.isfile(duplicate):
				raise ArgumentError("Argument Error: Invalid duplicate summary file passed.")

		elif opt in ("--pileup"):
			pileup = arg
			if not os.path.isfile(pileup):
				raise ArgumentError("Argument Error: Invalid pileup file passed.")
		
		elif opt in ("--bedcov"):
			bedcoverage = arg
			if not os.path.isfile(bedcoverage):
				raise ArgumentError("Argument Error: Invalid target bed coverage file passed.")
				
		elif opt in ("--output"):
			outfile = arg
			if not os.path.isdir(os.path.dirname(outfile)):
				raise ArgumentError("Argument Error: Invalid output file containing directory passed.")
		
		elif opt in ("--sample"):
			sample = arg
		
		elif opt in ("--type"):
			type = arg
		
		elif opt in ("--read_type"):
			read_type = arg
			
		elif opt in ("--project"):
			project = arg
			
		elif opt in ("--run"):
			run = arg
			
		elif opt in ("--date"):
			date = arg
			
		else:
			raise ArgumentError("Bad Argument: I don't know what %s is" % arg)
	
    # return argument values
	return sample, align, insert, gcbias, mkdup_hybrid, rmdup_hybrid, duplicate, bedcoverage, pileup, type, project, run, date, read_type,outfile