aboutsummaryrefslogtreecommitdiffstats
path: root/framebuffer.c
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@android.com>2010-07-27 11:34:16 -0700
committerDavid 'Digit' Turner <digit@android.com>2010-07-27 12:25:52 -0700
commit055ae42d36d9d78a7920f66ee2df485d81d24264 (patch)
treea1d84474063ea614199ab6a31602711b88d02175 /framebuffer.c
parent657a3521a1f4d354b57f0e524b1cd57bed177bb0 (diff)
downloadexternal_qemu-055ae42d36d9d78a7920f66ee2df485d81d24264.zip
external_qemu-055ae42d36d9d78a7920f66ee2df485d81d24264.tar.gz
external_qemu-055ae42d36d9d78a7920f66ee2df485d81d24264.tar.bz2
Better separation of UI and Core sources for framebuffer emulation.
+ new document under docs/DISPLAY-STATE.TXT to explain what's happening. Change-Id: Ia0d233377266212da49af932c7528f46f5feb92d
Diffstat (limited to 'framebuffer.c')
-rw-r--r--framebuffer.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/framebuffer.c b/framebuffer.c
index d0f9b40..adbebb3 100644
--- a/framebuffer.c
+++ b/framebuffer.c
@@ -19,6 +19,7 @@ typedef struct {
void* fb_opaque;
QFrameBufferUpdateFunc fb_update;
QFrameBufferRotateFunc fb_rotate;
+ QFrameBufferPollFunc fb_poll;
QFrameBufferDoneFunc fb_done;
void* pr_opaque;
@@ -122,6 +123,7 @@ qframebuffer_add_client( QFrameBuffer* qfbuff,
void* fb_opaque,
QFrameBufferUpdateFunc fb_update,
QFrameBufferRotateFunc fb_rotate,
+ QFrameBufferPollFunc fb_poll,
QFrameBufferDoneFunc fb_done )
{
QFrameBufferExtra* extra = qfbuff->extra;
@@ -129,6 +131,7 @@ qframebuffer_add_client( QFrameBuffer* qfbuff,
extra->fb_opaque = fb_opaque;
extra->fb_update = fb_update;
extra->fb_rotate = fb_rotate;
+ extra->fb_poll = fb_poll;
extra->fb_done = fb_done;
}
@@ -170,6 +173,15 @@ qframebuffer_rotate( QFrameBuffer* qfbuff, int rotation )
extra->fb_rotate( extra->fb_opaque, rotation );
}
+void
+qframebuffer_poll( QFrameBuffer* qfbuff )
+{
+ QFrameBufferExtra* extra = qfbuff->extra;
+
+ if (extra->fb_poll)
+ extra->fb_poll( extra->fb_opaque );
+}
+
extern void
qframebuffer_done( QFrameBuffer* qfbuff )