Mesa (master): wgl: Add winsys framebuffer object
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Nov 18 10:43:32 UTC 2020
Module: Mesa
Branch: master
Commit: 23bfe0356748c6d3e4bb9db490910c0f29c70197
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=23bfe0356748c6d3e4bb9db490910c0f29c70197
Author: Jesse Natalie <jenatali at ntdev.microsoft.com>
Date: Sat Apr 25 16:04:12 2020 -0400
wgl: Add winsys framebuffer object
Reviewed-by: Charmaine Lee <charmainel at vmware.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7535>
---
src/gallium/frontends/wgl/stw_winsys.h | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/src/gallium/frontends/wgl/stw_winsys.h b/src/gallium/frontends/wgl/stw_winsys.h
index 236812afa5d..07a0729a7b8 100644
--- a/src/gallium/frontends/wgl/stw_winsys.h
+++ b/src/gallium/frontends/wgl/stw_winsys.h
@@ -31,6 +31,7 @@
#include <windows.h> /* for HDC */
#include "pipe/p_compiler.h"
+#include "frontend/api.h"
struct pipe_screen;
struct pipe_context;
@@ -44,6 +45,24 @@ typedef enum
stw_pfd_double_buffer = 1 << 1,
} stw_pfd_flag;
+struct stw_winsys_framebuffer
+{
+ void
+ (*destroy)(struct stw_winsys_framebuffer *fb);
+
+ boolean
+ (*present)(struct stw_winsys_framebuffer *fb);
+
+ void
+ (*resize)(struct stw_winsys_framebuffer *fb,
+ struct pipe_context *context,
+ struct pipe_resource *templ);
+
+ struct pipe_resource *
+ (*get_resource)(struct stw_winsys_framebuffer *fb,
+ enum st_attachment_type statt);
+};
+
struct stw_winsys
{
struct pipe_screen *
@@ -104,6 +123,14 @@ struct stw_winsys
*/
unsigned
(*get_pfd_flags)( struct pipe_screen *screen );
+
+ /**
+ * Create a winsys-specific object for a given DC's framebuffer
+ */
+ struct stw_winsys_framebuffer *
+ (*create_framebuffer)( struct pipe_screen *screen,
+ HDC hDC,
+ int iPixelFormat );
};
boolean
More information about the mesa-commit
mailing list