in src/main/python/vcf_annovar_annotation.py [0:0]
def parse_arguments(argv):
sample,srcfile,annofile,tool,canonical_transcripts,annovar,transvar = None,None,None,None,None,None,None
genome,esp6500,dbsnp,clinvar,cosmic,multiscore=False,False,False,False,False,False
coding,pass_status = False,False
refversion = 'hg19'
try:
opts, args = getopt.getopt(argv[1:], "s:i:o:r:h", \
["sample=","input=", "output=", "refversion=", "canonical=","annovar=","transvar=", \
"genome","esp6500","dbsnp","clinvar","cosmic","multiscore","coding_only","pass_only"])
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':
usage()
sys.exit()
elif opt in ("-s", "--sample"):
sample = arg
elif opt in ("-i", "--input"):
srcfile = arg
if not os.path.isfile(srcfile):
raise ArgumentError("Argument Error: Invalid variant vcf file passed.")
if annofile == None:
annofile = srcfile+".annotation"
elif opt in ("-o", "--output"):
annofile = arg
elif opt in ("-r", "--refversion"):
refversion = arg
elif opt in ("--canonical"):
canonical_transcripts = arg
if not os.path.isfile(canonical_transcripts):
raise ArgumentError("Argument Error: Invalid canonical transcript passed.")
elif opt in ("--annovar"):
annovar = arg
if not os.path.exists(annovar):
raise ArgumentError("Argument Error: Invalid annovar directory passed.")
elif opt in ("--transvar"):
transvar = arg
if not os.access(transvar, os.X_OK):
raise ArgumentError("Argument Error: Invalid transvar executable passed.")
elif opt in ("--genome"):
genome = True
elif opt in ("--esp6500"):
esp6500 = True
elif opt in ("--dbsnp"):
dbsnp = True
elif opt in ("--clinvar"):
clinvar = True
elif opt in ("--cosmic"):
cosmic = True
elif opt in ("--multiscore"):
multiscore = True
elif opt in ("--coding_only"):
coding = True
elif opt in ("--pass_only"):
pass_status = True
else:
raise ArgumentError("Bad argument: I don't know what %s is" % arg)
if sample is None or srcfile is None or canonical_transcripts is None or annovar is None or transvar is None:
raise ArgumentError("You need to supply an input vcf, a canonical transcript list, an annovar directory and a transvar executable!")
# return argument values
return sample,srcfile,annofile,refversion,canonical_transcripts,genome,esp6500,dbsnp,clinvar,cosmic,multiscore,annovar,transvar,coding,pass_status