File indexing completed on 2024-06-13 03:23:09
0001 import os
0002 import shutil
0003 import argparse
0004 import subprocess
0005 import helpers
0006
0007
0008 def main():
0009 parser = argparse.ArgumentParser(description="Automatically run APE measurements")
0010 parser.add_argument("--iteration", action="store", dest="iteration", type=int,
0011 help="Current iteration number")
0012 parser.add_argument("--numFiles", action="store", dest="numFiles", type=int,
0013 help="Number of files")
0014 parser.add_argument("--workingArea", action="store", dest="workingArea",
0015 help="Working Area folder")
0016 parser.add_argument("--measName", action="store", dest="measName",
0017 help="Measurement name.")
0018 parser.add_argument("--isBaseline", action="store", dest="isBaseline",
0019 help="Is baseline measurement")
0020
0021 args = parser.parse_args()
0022 args.isBaseline = (args.isBaseline == "True")
0023
0024 fileNames = [os.path.join(args.workingArea, args.measName, "out{}.root".format(i)) for i in range(1, args.numFiles+1) ]
0025
0026 if not args.isBaseline:
0027 helpers.newIterFolder(args.workingArea, args.measName, "iter"+str(args.iteration))
0028 targetName = os.path.join(args.workingArea, args.measName, "iter"+str(args.iteration), "allData.root")
0029 else:
0030 helpers.newIterFolder(args.workingArea, args.measName, "baseline")
0031 targetName = os.path.join(args.workingArea, args.measName, "baseline", "allData.root")
0032
0033 subprocess.call("hadd {} {}".format(targetName, " ".join(fileNames)), shell=True)
0034
0035 for name in fileNames:
0036 os.remove(name)
0037
0038 if args.iteration>0 and not args.isBaseline:
0039
0040 shutil.copyfile( os.path.join(args.workingArea, args.measName, "iter"+str(args.iteration-1), "allData_iterationApe.root"),
0041 os.path.join(args.workingArea, args.measName, "iter"+str(args.iteration), "allData_iterationApe.root"))
0042
0043
0044 if __name__ == "__main__":
0045 main()