Lines Matching refs:self

32     def __init__(self, filename):
33 self.filename = filename
40 self[line[3:]] = current
46 def __init__(self, filename):
47 self.filename = filename
49 def __getattribute__(self, attr):
52 for value in self.itervalues():
57 return FileData(self.filename)
60 return max([ len(sym) for sym in self.iterkeys() ])
62 return super(RunData, self).__getattribute__(attr)
64 def display(self, output=None, limit=None, maxsymlen=None):
71 total = float(self.total)
74 symbols = [ (count,name) for name,count in self.iteritems() ]
80 maxsymlen = self.maxsymlen
87 def __init__(self, filename=None, categorize=None, showidle=True):
88 super(PCData, self).__init__(self, filename)
90 filedata = self.filedata['PC data']
104 self[category] = count
135 def total(self):
136 total = self.count
137 for child in self.children:
142 def aggregate(self, dict, categorize, incategory):
145 category = categorize(self.symbol)
147 total = self.count
148 for child in self.children:
155 dict[self.symbol] = dict.get(self.symbol, 0) + total
159 def dump(self):
160 kids = [ child.symbol for child in self.children]
161 print '%s %d <%s>' % (self.symbol, self.count, ', '.join(kids))
162 for child in self.children:
165 def _dot(self, dot, threshold, categorize, total):
167 self.dot_node = None
169 value = self.total() * 100.0 / total
173 category = categorize(self.symbol)
176 label = '%s %.2f%%' % (self.symbol, value)
177 self.dot_node = Node(self, label=label)
178 dot.add_node(self.dot_node)
180 for child in self.children:
183 dot.add_edge(Edge(self, child))
185 def _cleandot(self):
186 for child in self.children:
188 self.dot_node = None
189 del self.__dict__['dot_node']
191 def dot(self, dot, threshold=0.1, categorize=None):
192 self._dot(dot, threshold, categorize, self.total())
193 self._cleandot()
196 def __init__(self, filename, categorize=None):
197 super(FuncData, self).__init__(filename)
198 tree = self.tree
199 tree.aggregate(self, categorize, incategory=False)
200 self.total = tree.total()
202 def __getattribute__(self, attr):
204 return FuncNode(self.filedata)
205 return super(FuncData, self).__getattribute__(attr)
207 def displayx(self, output=None, maxcount=None):
212 items = [ (val,key) for key,val in self.iteritems() ]
220 percent = val * 100.0 / self.total
235 def __init__(self, datatype, categorize=None):
238 self.datatype = datatype
239 self.categorize = categorize
240 self.data = {}
241 self.categories = categories[:]
242 self.rcategories = categories[:]
243 self.rcategories.reverse()
244 self.cpu = 0
247 def inputdir(self, directory):
262 data = self.datatype(filename, self.categorize)
263 self.setdata(dirname, match.group(1), data)
265 def setdata(self, run, cpu, data):
266 if run not in self.data:
267 self.data[run] = {}
269 if cpu in self.data[run]:
273 self.data[run][cpu] = data
275 def getdata(self, run, cpu):
277 return self.data[run][cpu]
282 def alldata(self):
283 for run,cpus in self.data.iteritems():
287 def get(self, job, stat, system=None):
294 cpu = '%s.run%d' % (system, self.cpu)
296 data = self.getdata(str(job), cpu)
301 for category in self.categories:
309 def dump(self):
310 for run,cpu,data in self.alldata():
315 def write_dot(self, threshold, jobfile=None, jobs=None):
322 cpu = '%s.run%d' % (job.system, self.cpu)
323 symbols = self.getdata(job.name, cpu)
331 def write_txt(self, jobfile=None, jobs=None, limit=None):
336 cpu = '%s.run%d' % (job.system, self.cpu)
337 symbols = self.getdata(job.name, cpu)
344 def display(self, jobfile=None, jobs=None, limit=None):
352 cpu = '%s.run%d' % (job.system, self.cpu)
353 symbols = self.getdata(job.name, cpu)
359 cpu = '%s.run%d' % (job.system, self.cpu)
360 symbols = self.getdata(job.name, cpu)
368 def __init__(self, categorize=pc_categorize):
369 super(PCProfile, self).__init__(PCData, categorize)
373 def __init__(self, categorize=func_categorize):
374 super(FuncProfile, self).__init__(FuncData, categorize)