ATLAS Offline Software
dumpTgcDigiJitter.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 import logging
4  from argparse import ArgumentParser
5 
6  parser = ArgumentParser()
7  parser.add_argument("--inFile", help="Input file to be translated",
8  default="TGC_Digitization_timejitter.dat")
9  parser.add_argument("--outFile", help="Output JSON file",
10  default="TGC_Digitization_timejitter.json")
11  return parser
12 
13 if __name__ == "__main__":
15  from ROOT import PathResolver
16  resolver = PathResolver()
17 
18  resolvedInFile = resolver.find_file(args.inFile, "DATAPATH")
19  if not resolvedInFile or len(resolvedInFile) == 0:
20  logging.error("Failed to find file {fileName}".format(fileName = resolvedInFile))
21  exit(1)
22 
23  jitterFields = []
24  with open (resolvedInFile, 'r') as inStream:
25  for line in inStream:
26  tokens = [x.strip() for x in line.split(" ") if len(x.strip())]
27 
28  angle = tokens[0]
29  nBins = tokens[1]
30  timeJitters= tokens[2:]
31  jitterEntry ="\n".join([ " {",
32  " \"angle\" : {angle},".format(angle = angle),
33  " \"nBins\" : {nBins},".format(nBins = nBins),
34  " \"values\" : [{timeJitters}]".format(timeJitters = ",".join(timeJitters)),
35  " }"])
36  logging.debug(jitterEntry)
37  jitterFields+=[jitterEntry]
38 
39  with open(args.outFile, 'w') as outStream:
40  outStream.write("[\n")
41  for num, jitter in enumerate(jitterFields, 1):
42  outStream.write(jitter)
43  if num != len(jitterFields): outStream.write(",")
44  outStream.write("\n")
45  outStream.write("]\n")
vtune_athena.format
format
Definition: vtune_athena.py:14
dumpTgcDigiJitter.setupArgParser
def setupArgParser()
Definition: dumpTgcDigiJitter.py:3
calibdata.exit
exit
Definition: calibdata.py:236
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
Trk::open
@ open
Definition: BinningType.h:40
confTool.parse_args
def parse_args()
Definition: confTool.py:35