3import sys, os, glob, subprocess, tarfile
5from PyJobTransforms.TransformUtils
import processPreExec, processPreInclude, processPostExec, processPostInclude
6from TRT_CalibAlgs.TRTCalibrationMgrConfig
import CalibConfig, TRT_CalibrationMgrCfg, TRT_StrawStatusCfg
35 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
36 flags=initConfigFlags()
38 commonRunArgsToFlags(runArgs, flags)
40 processPreInclude(runArgs, flags)
41 processPreExec(runArgs, flags)
43 if "TRTCalibAccu_ART_Output" in runArgs.outputTARFile:
44 print(
"WARNING - Testing the TRTCalib_accu transform")
46 print(
"INFO - Running TRTCalib_accu transform")
48 flags.Input.Files=runArgs.inputRAWFile
49 flags.Output.HISTFileName=runArgs.outputTARFile
59 cfg=MainServicesCfg(flags)
61 from ByteStreamCnvSvc.ByteStreamConfig
import ByteStreamReadCfg
62 cfg.merge(ByteStreamReadCfg(flags))
64 from InDetConfig.TrackRecoConfig
import InDetTrackRecoCfg
65 cfg.merge(InDetTrackRecoCfg(flags))
67 cfg.merge(TRT_StrawStatusCfg(flags))
68 cfg.merge(TRT_CalibrationMgrCfg(flags, calibconstants=runArgs.calibconstants ,DoCalibrate=runArgs.calibrate))
70 processPostInclude(runArgs, flags, cfg)
71 processPostExec(runArgs, flags, cfg)
73 with open(
"ConfigTRTCalib_accu.pkl",
"wb")
as f:
78 if not sc.isSuccess():
79 sys.exit(
not sc.isSuccess())
81 outputFile = runArgs.outputTARFile
83 nextstep(
"Generating the tracktuple and StrawStatus file")
86 os.rename(outputFile, outputFile+
'.basic.root')
87 command =
'TRTCalib_bhadd dumfile %s.basic.root' % (outputFile)
89 tryError(command,
"ERROR: Failed in process TRTCalib_bhadd\n")
92 nextstep(
"Renaming outputs from Athena and TRTCalib_bhadd")
95 command =
"mv -v tracktuple.root %s.tracktuple.root ; " % (outputFile)
96 command +=
"mv -v %s %s.straw.txt" % (glob.glob(
'TRT_StrawStatusOutput.*newFormat.txt')[0],outputFile)
98 tryError(command,
"ERROR: Failed in renaming\n")
106 files_list=glob.glob(outputFile+
".*")
108 tar = tarfile.open(outputFile,
"w:gz")
109 print(
"Compressing files in %s output file:" % outputFile)
110 for file
in files_list:
115 print(
"ERROR: Failed compressing the output files\n",e)
119 print(
"\nListing files:")
120 for file
in sorted(glob.glob(
"./*", recursive=
True)):