diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2012-06-06 13:52:43 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-15 15:08:54 +0100 |
commit | 1f0791109e1aed715f02945834d6d7fdb9a411b4 (patch) | |
tree | 027c0b6c76212952b0450174476c69ca511639de /scripts/pybootchartgui/pybootchartgui/batch.py | |
parent | 66cc81d2a5f5c74e4a44e79521a791f402deeb26 (diff) | |
download | openembedded-core-contrib-1f0791109e1aed715f02945834d6d7fdb9a411b4.tar.gz |
pybootchartgui: add the original code
This is from:
http://pybootchartgui.googlecode.com/files/pybootchartgui-r124.tar.gz
Will modify it to make the build profiling in pictures.
Remove the examples since they would not work any more, and they cost
much disk space.
[YOCTO #2403]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Diffstat (limited to 'scripts/pybootchartgui/pybootchartgui/batch.py')
-rw-r--r-- | scripts/pybootchartgui/pybootchartgui/batch.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/pybootchartgui/pybootchartgui/batch.py b/scripts/pybootchartgui/pybootchartgui/batch.py new file mode 100644 index 0000000000..bd67c9350e --- /dev/null +++ b/scripts/pybootchartgui/pybootchartgui/batch.py @@ -0,0 +1,23 @@ +import cairo + +import draw + +def render(res, format, filename): + handlers = { + "png": (lambda w,h: cairo.ImageSurface(cairo.FORMAT_ARGB32,w,h), lambda sfc: sfc.write_to_png(filename)), + "pdf": (lambda w,h: cairo.PDFSurface(filename, w, h), lambda sfc: 0), + "svg": (lambda w,h: cairo.SVGSurface(filename, w, h), lambda sfc: 0) + } + + if not(handlers.has_key(format)): + print "Unknown format '%s'." % format + return 10 + + make_surface, write_surface = handlers[format] + w,h = draw.extents(*res) + w = max(w, draw.MIN_IMG_W) + surface = make_surface(w,h) + ctx = cairo.Context(surface) + draw.render(ctx, *res) + write_surface(surface) + |