summaryrefslogtreecommitdiffstats
path: root/include/ui
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2014-11-11 16:54:45 +0100
committerGerd Hoffmann <kraxel@redhat.com>2015-05-05 10:48:26 +0200
commit0b71a5d5caa4f709d37fa1d7786dffc2c94f8414 (patch)
treedb4697889cfdac1fae3cf5a42055cb21cd08aa72 /include/ui
parent19dadfccd0124804e2790e7cb075c9df7cd3154f (diff)
downloadhqemu-0b71a5d5caa4f709d37fa1d7786dffc2c94f8414.zip
hqemu-0b71a5d5caa4f709d37fa1d7786dffc2c94f8414.tar.gz
sdl2: add support for display rendering using opengl.
Add new sdl2-gl.c file, with display rendering functions using opengl. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'include/ui')
-rw-r--r--include/ui/console.h1
-rw-r--r--include/ui/sdl2.h11
2 files changed, 12 insertions, 0 deletions
diff --git a/include/ui/console.h b/include/ui/console.h
index ee00fc5..d211692 100644
--- a/include/ui/console.h
+++ b/include/ui/console.h
@@ -354,6 +354,7 @@ void surface_gl_setup_viewport(ConsoleGLState *gls,
#endif
/* sdl.c */
+void sdl_display_early_init(int opengl);
void sdl_display_init(DisplayState *ds, int full_screen, int no_frame);
/* cocoa.m */
diff --git a/include/ui/sdl2.h b/include/ui/sdl2.h
index e21783a..2fdad8f 100644
--- a/include/ui/sdl2.h
+++ b/include/ui/sdl2.h
@@ -17,6 +17,10 @@ struct sdl2_console {
int last_vm_running; /* per console for caption reasons */
int x, y;
int hidden;
+ int opengl;
+ int updates;
+ SDL_GLContext winctx;
+ ConsoleGLState *gls;
};
void sdl2_window_create(struct sdl2_console *scon);
@@ -37,4 +41,11 @@ void sdl2_2d_redraw(struct sdl2_console *scon);
bool sdl2_2d_check_format(DisplayChangeListener *dcl,
pixman_format_code_t format);
+void sdl2_gl_update(DisplayChangeListener *dcl,
+ int x, int y, int w, int h);
+void sdl2_gl_switch(DisplayChangeListener *dcl,
+ DisplaySurface *new_surface);
+void sdl2_gl_refresh(DisplayChangeListener *dcl);
+void sdl2_gl_redraw(struct sdl2_console *scon);
+
#endif /* SDL2_H */
OpenPOWER on IntegriCloud