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>
This commit is contained in:
parent
4c38762fb5
commit
43c7d8bd44
@ -42,6 +42,8 @@ pixman_image_t *qemu_pixman_linebuf_create(pixman_format_code_t format,
|
||||
int width);
|
||||
void qemu_pixman_linebuf_fill(pixman_image_t *linebuf, pixman_image_t *fb,
|
||||
int width, int x, int y);
|
||||
void qemu_pixman_linebuf_copy(pixman_image_t *fb, int width, int x, int y,
|
||||
pixman_image_t *linebuf);
|
||||
pixman_image_t *qemu_pixman_mirror_create(pixman_format_code_t format,
|
||||
pixman_image_t *image);
|
||||
void qemu_pixman_image_unref(pixman_image_t *image);
|
||||
|
@ -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)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user