#!/usr/bin/env python import os; import dircache; import sys; os.chdir(sys.argv[1]) class Axis: def __init__(self, atype): self.type = atype self.values = dircache.listdir('by-%s'%atype) def __str__(self): if self.type == "kern": return "kernel" elif self.type == "clck": return "CPU clock" elif self.type == "test": return "test" else: raise Exception, "Unknown type" def __iter__(self): return iter(self.values) def __getitem__(self, key): return self.values[key] def getLabel(self, v): if self.type == "clck": return v+" MHz" elif self.type == "test": return "%s"%(v, v) else: return v def labels(self): for v in self.values: yield self.getLabel(v) kernels = Axis('kern') clocks = Axis('clck') tests = Axis('test') class PageSet: def __init__(self, values, x, y): self.values = values self.x = x self.y = y def getPages(self): for v in self.values: yield Page(self.values.type, str(self.values), v, self.x, self.y) class Page: def __init__(self, prefix, name, value, xvals, yvals): self.prefix = prefix self.name = name self.value = value self.xvals = xvals self.yvals = yvals def generate(self, pagesets): html = open("%s-%s.html"%(self.prefix, self.value), "w") print >> html, """