diff options
author | David 'Digit' Turner <digit@android.com> | 2011-02-02 15:58:45 +0100 |
---|---|---|
committer | David 'Digit' Turner <digit@android.com> | 2011-02-02 21:09:41 +0100 |
commit | 7a5ee57895822a769f48ab40e590711a2459e2d1 (patch) | |
tree | 1c4ff6ef3cc7bd0c944b65385bba8782de35c875 /android/display-core.h | |
parent | ce747472342237e882369e486254684ab7708362 (diff) | |
download | external_qemu-7a5ee57895822a769f48ab40e590711a2459e2d1.zip external_qemu-7a5ee57895822a769f48ab40e590711a2459e2d1.tar.gz external_qemu-7a5ee57895822a769f48ab40e590711a2459e2d1.tar.bz2 |
Simplify core framebuffer management.
Remove one layer of indirection between the core's DisplayState
and a ProxyFramebuffer object. The main ideas behind this patch
are that:
- We don't need a QFrameBuffer object when in the core process,
each proxy can receive display updates directly from QEMU.
- The DisplayChangeListener is really lame: its can't dissociate
between several listeners that use the same callback pointers,
so introduce DisplayUpdateListener in console.h to work around
this. This is preferably to modifying DisplayChangeListener
which is going to introduce conflicts with upstream.
- Simplify a lot the console code and display-core. Note that
we can have several framebuffer clients at the same time now.
Note that QFrameBuffer is still used by both the UI program and
the standalone emulator.
Change-Id: I6d5ad6ecd9b34b9d9d1a30ea5000e875c285e84e
Diffstat (limited to 'android/display-core.h')
-rw-r--r-- | android/display-core.h | 34 |
1 files changed, 3 insertions, 31 deletions
diff --git a/android/display-core.h b/android/display-core.h index edeccac..e6a1b7d 100644 --- a/android/display-core.h +++ b/android/display-core.h @@ -18,42 +18,14 @@ #ifndef _ANDROID_DISPLAY_CORE_H #define _ANDROID_DISPLAY_CORE_H -#include "android/framebuffer.h" -#include "android/display.h" -#include "android/protocol/fb-updates-proxy.h" - -/* Descriptor for a core display instance */ -typedef struct CoreDisplay CoreDisplay; +#include "console.h" /* * Initializes one and only one instance of a core display. - * Param: + * Only used to register a dummy display change listener that + * will trigger a timer. * ds - Display state to use for the core display. */ extern void coredisplay_init(DisplayState* ds); -/* - * Attaches framebuffer service to the core display. - * Param: - * core_fb - Framebuffer service descriptor to attach. - * Return: - * 0 on success, or -1 on failure. - */ -extern int coredisplay_attach_fb_service(ProxyFramebuffer* core_fb); - -/* - * Detaches framebuffer service previously attached to the core display. - * Return: - * Framebuffer service descriptor attached to the core display, or NULL if - * the core display didn't have framebuffer service attached to it. - */ -extern ProxyFramebuffer* coredisplay_detach_fb_service(void); - -/* - * Get framebuffer descriptor for core display. - * Return: - * Framebuffer descriptor for core display. - */ -extern QFrameBuffer* coredisplay_get_framebuffer(void); - #endif /* _ANDROID_DISPLAY_CORE_H */ |