#!/usr/bin/env python | |
"""This script reads struct | |
Author ykk | |
Date Jan 2010 | |
""" | |
import sys | |
import getopt | |
import cpythonize | |
import cheader | |
def usage(): | |
"""Display usage | |
""" | |
print "Usage "+sys.argv[0]+" <options> header_files... output_file\n"+\ | |
"Options:\n"+\ | |
"-h/--help\n\tPrint this usage guide\n"+\ | |
"" | |
#Parse options and arguments | |
try: | |
opts, args = getopt.getopt(sys.argv[1:], "h", | |
["help"]) | |
except getopt.GetoptError: | |
usage() | |
sys.exit(2) | |
#Parse options | |
for opt,arg in opts: | |
if (opt in ("-h","--help")): | |
usage() | |
sys.exit(0) | |
else: | |
print "Unhandled option :"+opt | |
sys.exit(2) | |
#Check there is at least 1 input file with 1 output file | |
if (len(args) < 2): | |
usage() | |
sys.exit(2) | |
ch = cheader.cheaderfile(args[:-1]) | |
py = cpythonize.pythonizer(ch) | |
fileRef = open(args[len(args)-1], "w") | |
for l in py.pycode(): | |
fileRef.write(l+"\n") | |
fileRef.close() | |