4 from xml.etree
import ElementTree
7 def generateOptions(counter, cmask, invmask, sampling_period, startatevent,
8 storeresultsat, family):
9 cmask =
map(int, cmask)
10 invmask =
map(int, invmask)
11 sampling_period =
map(int, sampling_period)
12 startatevent = int(startatevent)
14 from Configurables
import ApplicationMgr, AuditorSvc, PerfMonAuditor
16 app.AuditAlgorithms = 1
19 pfaud.EVENT0 = counter[0]
20 pfaud.SP0 = sampling_period[0]
21 pfaud.INV0 = int(invmask[0])
22 pfaud.CMASK0 = int(cmask[0])
23 pfaud.EVENT1 = counter[1]
24 pfaud.SP1 = sampling_period[1]
25 pfaud.INV1 = int(invmask[1])
26 pfaud.CMASK1 = int(cmask[1])
27 pfaud.EVENT2 = counter[2]
28 pfaud.SP2 = sampling_period[2]
29 pfaud.INV2 = int(invmask[2])
30 pfaud.CMASK2 = int(cmask[2])
31 pfaud.EVENT3 = counter[3]
32 pfaud.SP3 = sampling_period[3]
33 pfaud.INV3 = int(invmask[3])
34 pfaud.CMASK3 = int(cmask[3])
39 pfaud.PREFIX =
"%s_%s" % (storeresultsat,
40 "S" if sampling_period[0] > 0
else "C")
41 pfaud.SAMPLE = int(sampling_period[0] > 0)
42 pfaud.START_AT_EVENT = startatevent
50 Adds object like functionality to the standard dictionary. 56 dict.__init__(self, initdict)
59 return self.__getitem__(item)
62 self.__setitem__(item, value)
65 if self.has_key(
'_text'):
66 return self.__getitem__(
'_text')
73 Static method to wrap a dictionary recursively as an XmlDictObject 76 if isinstance(x, dict):
78 (k, XmlDictObject.Wrap(v))
for (k, v)
in x.iteritems())
79 elif isinstance(x, list):
80 return [XmlDictObject.Wrap(v)
for v
in x]
86 if isinstance(x, dict):
88 (k, XmlDictObject._UnWrap(v))
for (k, v)
in x.iteritems())
89 elif isinstance(x, list):
90 return [XmlDictObject._UnWrap(v)
for v
in x]
96 Recursively converts an XmlDictObject to a standard dictionary and returns the result. 99 return XmlDictObject._UnWrap(self)
103 assert type(dictitem)
is not type([])
105 if isinstance(dictitem, dict):
106 for (tag, child)
in dictitem.iteritems():
107 if str(tag) ==
'_text':
108 parent.text = str(child)
111 for listchild
in child:
112 elem = ElementTree.Element(tag)
116 elem = ElementTree.Element(tag)
120 parent.text = str(dictitem)
125 Converts a dictionary to an XML ElementTree Element 128 roottag = xmldict.keys()[0]
129 root = ElementTree.Element(roottag)
135 nodedict = dictclass()
137 if len(node.items()) > 0:
139 nodedict.update(dict(node.items()))
144 if nodedict.has_key(child.tag):
146 if type(nodedict[child.tag])
is type([]):
148 nodedict[child.tag].append(newitem)
151 nodedict[child.tag] = [nodedict[child.tag], newitem]
154 nodedict[child.tag] = newitem
156 if node.text
is None:
159 text = node.text.strip()
161 if len(nodedict) > 0:
164 nodedict[
'_text'] = text
174 Converts an XML file or ElementTree Element to a dictionary 179 root = ElementTree.parse(root).getroot()
180 elif not isinstance(root, ElementTree.Element):
181 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)