1 from __future__
import print_function
5 from xml.etree
import ElementTree
9 storeresultsat, family):
10 cmask =
map(int, cmask)
11 invmask =
map(int, invmask)
12 sampling_period =
map(int, sampling_period)
13 startatevent = int(startatevent)
15 from Configurables
import ApplicationMgr, AuditorSvc, PerfMonAuditor
17 app.AuditAlgorithms = 1
20 pfaud.EVENT0 = counter[0]
21 pfaud.SP0 = sampling_period[0]
22 pfaud.INV0 = int(invmask[0])
23 pfaud.CMASK0 = int(cmask[0])
24 pfaud.EVENT1 = counter[1]
25 pfaud.SP1 = sampling_period[1]
26 pfaud.INV1 = int(invmask[1])
27 pfaud.CMASK1 = int(cmask[1])
28 pfaud.EVENT2 = counter[2]
29 pfaud.SP2 = sampling_period[2]
30 pfaud.INV2 = int(invmask[2])
31 pfaud.CMASK2 = int(cmask[2])
32 pfaud.EVENT3 = counter[3]
33 pfaud.SP3 = sampling_period[3]
34 pfaud.INV3 = int(invmask[3])
35 pfaud.CMASK3 = int(cmask[3])
40 pfaud.PREFIX =
"%s_%s" % (storeresultsat,
41 "S" if sampling_period[0] > 0
else "C")
42 pfaud.SAMPLE = int(sampling_period[0] > 0)
43 pfaud.START_AT_EVENT = startatevent
51 Adds object like functionality to the standard dictionary. 57 dict.__init__(self, initdict)
60 return self.__getitem__(item)
63 self.__setitem__(item, value)
67 return self.__getitem__(
'_text')
74 Static method to wrap a dictionary recursively as an XmlDictObject 77 if isinstance(x, dict):
79 (k, XmlDictObject.Wrap(v))
for (k, v)
in x.iteritems())
80 elif isinstance(x, list):
81 return [XmlDictObject.Wrap(v)
for v
in x]
87 if isinstance(x, dict):
89 (k, XmlDictObject._UnWrap(v))
for (k, v)
in x.iteritems())
90 elif isinstance(x, list):
91 return [XmlDictObject._UnWrap(v)
for v
in x]
97 Recursively converts an XmlDictObject to a standard dictionary and returns the result. 100 return XmlDictObject._UnWrap(self)
104 assert type(dictitem)
is not type([])
106 if isinstance(dictitem, dict):
107 for (tag, child)
in dictitem.iteritems():
108 if str(tag) ==
'_text':
109 parent.text = str(child)
112 for listchild
in child:
113 elem = ElementTree.Element(tag)
117 elem = ElementTree.Element(tag)
121 parent.text = str(dictitem)
126 Converts a dictionary to an XML ElementTree Element 129 roottag = xmldict.keys()[0]
130 root = ElementTree.Element(roottag)
136 nodedict = dictclass()
138 if len(node.items()) > 0:
140 nodedict.update(dict(node.items()))
145 if child.tag
in nodedict:
147 if type(nodedict[child.tag])
is type([]):
149 nodedict[child.tag].append(newitem)
152 nodedict[child.tag] = [nodedict[child.tag], newitem]
155 nodedict[child.tag] = newitem
157 if node.text
is None:
160 text = node.text.strip()
162 if len(nodedict) > 0:
165 nodedict[
'_text'] = text
175 Converts an XML file or ElementTree Element to a dictionary 180 root = ElementTree.parse(root).getroot()
181 elif not isinstance(root, ElementTree.Element):
182 raise TypeError(
'Expected ElementTree.Element or file path string')
def __setattr__(self, item, value)
def generateOptions(counter, cmask, invmask, sampling_period, startatevent, storeresultsat, family)
def _ConvertXmlToDictRecurse(node, dictclass)
Performance Monitoring Auditor that uses Perfmon2 library to monitor algorithms.
def __getattr__(self, item)
def ConvertDictToXml(xmldict)
struct GAUDI_API map
Parametrisation class for map-like implementation.
def _ConvertDictToXmlRecurse(parent, dictitem)
def ConvertXmlToDict(root, dictclass=XmlDictObject)
The Application Manager class.
def __init__(self, initdict=None)