From 264fc5bde4448558701cb0f6e7e4cf0320fa9b55 Mon Sep 17 00:00:00 2001 From: Franck Dary <franck.dary@lis-lab.fr> Date: Mon, 11 Oct 2021 16:10:19 +0200 Subject: [PATCH] Allow for multiple input file in readTrace --- readTrace.py | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/readTrace.py b/readTrace.py index e3ae03f..a9e9177 100755 --- a/readTrace.py +++ b/readTrace.py @@ -387,7 +387,7 @@ def prettyNumber(num) : ################################################################################ if __name__ == "__main__" : parser = argparse.ArgumentParser() - parser.add_argument("trace", type=str, + parser.add_argument("traces", nargs="+", default=[], help="File produced by debug mode (-d) of the decoding.") parser.add_argument("--steps", default=False, action="store_true", help="Print all decoding steps.") @@ -395,20 +395,28 @@ if __name__ == "__main__" : help="Print global stats about the decoding.") args = parser.parse_args() - history = History() - history.readFromTrace(args.trace) - - history.segmentInBlocks() - - stats = history.computeStats() + histories = [] + stats = [] + for trace in args.traces : + histories.append(History()) + histories[-1].readFromTrace(trace) + histories[-1].segmentInBlocks() + stats.append(histories[-1].computeStats()) if args.steps : - history.printHumanReadable(sys.stdout) + for i in range(len(args.traces)) : + print("History of '%s' :\n"%args.traces[i]) + histories[i].printHumanReadable(sys.stdout) if args.stats : - asList = [list(stats.keys()), list(stats.values())] - maxLen = max(map(len, asList[0])) + asList = [["Filename"]+list(stats[0].keys())] + for i in range(len(args.traces)) : + asList.append([args.traces[i]]+list(map(prettyNumber, list(stats[i].values())))) + maxLens = [max(map(len, asList[i])) for i in range(len(asList))] for i in range(len(asList[0])) : - print("%s %s"%(asList[0][i]+"."*(1+maxLen-len(asList[0][i])), prettyNumber(asList[1][i]))) + for j in range(len(asList)) : + sep = "." if j == 0 else " " + print("%s"%(asList[j][i]+sep*(1+maxLens[j]-len(asList[j][i]))), end=" ") + print("") ################################################################################ -- GitLab