ATLAS Offline Software
Loading...
Searching...
No Matches
SeparateEncodingFile Namespace Reference

Functions

 readXML (filename)
 mioctAsXML (mioct, depth, filter, stats)
 sectorAsXML (sector, depth, stats)
 roiAsXML (roi, depth)
 writeXML (geometry, dettype)
 main (args)

Variables

 parser
 dest
 default
 type
 help
 args = parser.parse_args()

Function Documentation

◆ main()

SeparateEncodingFile.main ( args)

Definition at line 80 of file SeparateEncodingFile.py.

80def main(args):
81
82 print("Using input %s" % args.infile)
83 geometry = readXML( args.infile )
84
85 writeXML(geometry, "RPC")
86 writeXML(geometry, "TGC")
87
88
89
void print(char *figname, TCanvas *c1)
StatusCode writeXML(const string &name, int type)
int main()
Definition hello.cxx:18

◆ mioctAsXML()

SeparateEncodingFile.mioctAsXML ( mioct,
depth,
filter,
stats )

Definition at line 11 of file SeparateEncodingFile.py.

11def mioctAsXML(mioct, depth, filter, stats):
12 attr = ["id", "slot"]
13 s = ' '*depth + "<%s %s>\n" % (mioct.tag, " ".join(['%s="%s"' % (a, mioct[a]) for a in attr]) )
14 s += ' '*depth + ' <!-- contains sectors __SECTORS__ -->\n'
15 sectorList = []
16 for sector in mioct.Sectors:
17 if not filter(sector):
18 continue
19 sectorList += [sector['name']]
20 s += sectorAsXML(sector, depth + 4, stats )
21 s += ' '*depth + "</%s>\n" % mioct.tag
22 s = s.replace('__SECTORS__', ", ".join(sorted(sectorList)) )
23 stats['sectors'] += len(sectorList)
24 return s
25
26

◆ readXML()

SeparateEncodingFile.readXML ( filename)

Definition at line 7 of file SeparateEncodingFile.py.

7def readXML(filename):
8 return MioctGeometryXMLReader(filename)
9
10

◆ roiAsXML()

SeparateEncodingFile.roiAsXML ( roi,
depth )

Definition at line 38 of file SeparateEncodingFile.py.

38def roiAsXML(roi, depth):
39 attr = ["eta", "phi", "etacode", "phicode", "etamin", "etamax", "phimin", "phimax", "roiid"]
40 s = ' ' * depth + "<ROI %s/>\n" % (" ".join(['%s="%s"' % (a, roi[a]) for a in attr]) )
41 return s
42
43

◆ sectorAsXML()

SeparateEncodingFile.sectorAsXML ( sector,
depth,
stats )

Definition at line 27 of file SeparateEncodingFile.py.

27def sectorAsXML(sector, depth, stats):
28 attr = ["connector", "name"]
29 s = ' '*depth + "<%s %s>\n" % (sector.tag, " ".join(['%s="%s"' % (a, sector[a]) for a in attr]) )
30 s += ' '*depth + ' <!-- contains %i ROIs -->\n' % len(sector.ROIs)
31 s += ' '*depth + ' <!-- mapping from ROI to coding scheme -->\n'
32 for roi in sorted(sector.ROIs, key=lambda roi: int(roi['roiid'])):
33 s += roiAsXML(roi, depth + 4 )
34 s += ' '*depth + "</%s>\n" % sector.tag
35 stats['rois'] += len(sector.ROIs)
36 return s
37

◆ writeXML()

SeparateEncodingFile.writeXML ( geometry,
dettype )

Definition at line 44 of file SeparateEncodingFile.py.

44def writeXML(geometry, dettype):
45
46 if dettype != "RPC" and dettype != "TGC":
47 return
48
49 stats = {'miocts' : 0, 'sectors' : 0, 'rois' : 0}
50
51 infile = geometry.getFileName()
52 outfile = infile.replace(".","_%s." % dettype)
53
54 if dettype == 'RPC':
55 sectorFilter = lambda s : s['name'].startswith('B') # noqa: E731
56 else:
57 sectorFilter = lambda s : s['name'].startswith('E') or s['name'].startswith('F') # noqa: E731
58
59 f = open(outfile,"write")
60
61 print('<?xml version="1.0" ?>\n', file=f)
62 print('<!DOCTYPE MuCTPiGeometry SYSTEM "MUCTPIGeometry.dtd">\n', file=f)
63 print(geometry.MuCTPiGeometry, file=f)
64 for mioct in geometry.getMIOCTs():
65 print(mioctAsXML(mioct, 4, sectorFilter, stats), file=f)
66
67 print("</%s>" % geometry.MuCTPiGeometry.tag, file=f)
68 stats['miocts'] = len(geometry.getMIOCTs())
69 print("Wrote %s" % outfile)
70
71 print("Numbers for %s" % dettype)
72 print("#MIOCTs : %i" % stats['miocts'])
73 print("#Sectors : %i" % stats['sectors'])
74 print("#ROIs : %i" % stats['rois'])
75
76 f.close()
77
78
79

Variable Documentation

◆ args

SeparateEncodingFile.args = parser.parse_args()

Definition at line 99 of file SeparateEncodingFile.py.

◆ default

SeparateEncodingFile.default

Definition at line 96 of file SeparateEncodingFile.py.

◆ dest

SeparateEncodingFile.dest

Definition at line 96 of file SeparateEncodingFile.py.

◆ help

SeparateEncodingFile.help

Definition at line 97 of file SeparateEncodingFile.py.

◆ parser

SeparateEncodingFile.parser
Initial value:
1= argparse.ArgumentParser( description=__doc__,
2 formatter_class = argparse.RawTextHelpFormatter)

Definition at line 93 of file SeparateEncodingFile.py.

◆ type

SeparateEncodingFile.type

Definition at line 96 of file SeparateEncodingFile.py.