From: Brian Paul Date: Mon, 27 Mar 2017 14:30:43 +0000 (-0600) Subject: st/mesa: move duplicated st_ws_framebuffer() function into header file X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b71ef173a5a61a667380dc77f5ae1f7e8c0c2fb8;p=mesa.git st/mesa: move duplicated st_ws_framebuffer() function into header file Reviewed-by: Marek Olšák --- diff --git a/src/mesa/state_tracker/st_cb_fbo.h b/src/mesa/state_tracker/st_cb_fbo.h index 414a6616b23..d3e05547729 100644 --- a/src/mesa/state_tracker/st_cb_fbo.h +++ b/src/mesa/state_tracker/st_cb_fbo.h @@ -30,6 +30,7 @@ #define ST_CB_FBO_H #include "main/compiler.h" +#include "main/fbobject.h" #include "main/glheader.h" #include "main/mtypes.h" @@ -74,6 +75,22 @@ st_renderbuffer(struct gl_renderbuffer *rb) } +/** + * Cast wrapper to convert a struct gl_framebuffer to an st_framebuffer. + * Return NULL if the struct gl_framebuffer is a user-created framebuffer. + * We'll only return non-null for window system framebuffers. + * Note that this function may fail. + */ +static inline struct st_framebuffer * +st_ws_framebuffer(struct gl_framebuffer *fb) +{ + /* FBO cannot be casted. See st_new_framebuffer */ + if (fb && _mesa_is_winsys_fbo(fb)) + return (struct st_framebuffer *) fb; + return NULL; +} + + extern struct gl_renderbuffer * st_new_renderbuffer_fb(enum pipe_format format, int samples, boolean sw); diff --git a/src/mesa/state_tracker/st_cb_viewport.c b/src/mesa/state_tracker/st_cb_viewport.c index d7a34125ebd..ff18fd0e6a4 100644 --- a/src/mesa/state_tracker/st_cb_viewport.c +++ b/src/mesa/state_tracker/st_cb_viewport.c @@ -27,26 +27,13 @@ #include "main/glheader.h" #include "st_context.h" +#include "st_cb_fbo.h" #include "st_cb_viewport.h" #include "pipe/p_state.h" #include "pipe/p_defines.h" #include "util/u_atomic.h" -/** - * Cast wrapper to convert a struct gl_framebuffer to an st_framebuffer. - * Return NULL if the struct gl_framebuffer is a user-created framebuffer. - * We'll only return non-null for window system framebuffers. - * Note that this function may fail. - */ -static inline struct st_framebuffer * -st_ws_framebuffer(struct gl_framebuffer *fb) -{ - /* FBO cannot be casted. See st_new_framebuffer */ - if (fb && _mesa_is_winsys_fbo(fb)) - return (struct st_framebuffer *) fb; - return NULL; -} static void st_viewport(struct gl_context *ctx) { diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c index dad408a451e..5942bb7c8f4 100644 --- a/src/mesa/state_tracker/st_manager.c +++ b/src/mesa/state_tracker/st_manager.c @@ -58,20 +58,6 @@ #include "util/u_atomic.h" #include "util/u_surface.h" -/** - * Cast wrapper to convert a struct gl_framebuffer to an st_framebuffer. - * Return NULL if the struct gl_framebuffer is a user-created framebuffer. - * We'll only return non-null for window system framebuffers. - * Note that this function may fail. - */ -static inline struct st_framebuffer * -st_ws_framebuffer(struct gl_framebuffer *fb) -{ - /* FBO cannot be casted. See st_new_framebuffer */ - if (fb && _mesa_is_winsys_fbo(fb)) - return (struct st_framebuffer *) fb; - return NULL; -} /** * Map an attachment to a buffer index.