diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2014-06-19 13:19:01 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2014-09-05 13:27:11 +0200 |
commit | 43c7d8bd449d1c0f435775aefe391666a4b86dd6 (patch) | |
tree | da88f6670402f3b1fa95c8c0fe531339f20315a9 /ui | |
parent | 4c38762fb5cab19f50d2ba004736d7426abba3c0 (diff) |
console: add qemu_pixman_linebuf_copy
Helper function for copying data from linebuf to framebuffer using
pixman, possibly converting in case src and dst formats differ.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'ui')
-rw-r--r-- | ui/qemu-pixman.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ui/qemu-pixman.c b/ui/qemu-pixman.c index 5d8bd46ed2..30c7fdd011 100644 --- a/ui/qemu-pixman.c +++ b/ui/qemu-pixman.c @@ -133,6 +133,7 @@ pixman_image_t *qemu_pixman_linebuf_create(pixman_format_code_t format, return image; } +/* fill linebuf from framebuffer */ void qemu_pixman_linebuf_fill(pixman_image_t *linebuf, pixman_image_t *fb, int width, int x, int y) { @@ -140,6 +141,14 @@ void qemu_pixman_linebuf_fill(pixman_image_t *linebuf, pixman_image_t *fb, x, y, 0, 0, 0, 0, width, 1); } +/* copy linebuf to framebuffer */ +void qemu_pixman_linebuf_copy(pixman_image_t *fb, int width, int x, int y, + pixman_image_t *linebuf) +{ + pixman_image_composite(PIXMAN_OP_SRC, linebuf, NULL, fb, + 0, 0, 0, 0, x, y, width, 1); +} + pixman_image_t *qemu_pixman_mirror_create(pixman_format_code_t format, pixman_image_t *image) { |