[mutter] cogl/gl-framebuffer: GObject:ify helper functions
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] cogl/gl-framebuffer: GObject:ify helper functions
- Date: Sat, 30 Jan 2021 09:39:50 +0000 (UTC)
commit dd55c3699c650a2e95c45df2195f09a12aa65e9a
Author: Jonas Ã…dahl <jadahl gmail com>
Date: Tue Oct 20 11:24:43 2020 +0200
cogl/gl-framebuffer: GObject:ify helper functions
The object was still pretending to be CoglFramebuffer itself, by using
naming and calling conventions making it seem like that. Fix that by
passing around the driver instead of the framebuffer.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1514>
cogl/cogl/driver/gl/cogl-framebuffer-gl.c | 57 ++++++++++++++++++++-----------
1 file changed, 38 insertions(+), 19 deletions(-)
---
diff --git a/cogl/cogl/driver/gl/cogl-framebuffer-gl.c b/cogl/cogl/driver/gl/cogl-framebuffer-gl.c
index e053d0ad4d..d7407bee5c 100644
--- a/cogl/cogl/driver/gl/cogl-framebuffer-gl.c
+++ b/cogl/cogl/driver/gl/cogl-framebuffer-gl.c
@@ -57,8 +57,11 @@ context_from_driver (CoglFramebufferDriver *driver)
}
static void
-_cogl_framebuffer_gl_flush_viewport_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_viewport_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
float viewport_x, viewport_y, viewport_width, viewport_height;
float gl_viewport_y;
@@ -97,19 +100,26 @@ _cogl_framebuffer_gl_flush_viewport_state (CoglFramebuffer *framebuffer)
}
static void
-_cogl_framebuffer_gl_flush_clip_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_clip_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
+
_cogl_clip_stack_flush (_cogl_framebuffer_get_clip_stack (framebuffer),
framebuffer);
}
static void
-_cogl_framebuffer_gl_flush_dither_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_dither_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
CoglContext *ctx = cogl_framebuffer_get_context (framebuffer);
- gboolean is_dither_enabled =
- cogl_framebuffer_get_dither_enabled (framebuffer);
+ gboolean is_dither_enabled;
+ is_dither_enabled = cogl_framebuffer_get_dither_enabled (framebuffer);
if (ctx->current_gl_dither_enabled != is_dither_enabled)
{
if (is_dither_enabled)
@@ -121,8 +131,11 @@ _cogl_framebuffer_gl_flush_dither_state (CoglFramebuffer *framebuffer)
}
static void
-_cogl_framebuffer_gl_flush_modelview_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_modelview_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
CoglContext *ctx = cogl_framebuffer_get_context (framebuffer);
CoglMatrixEntry *modelview_entry =
_cogl_framebuffer_get_modelview_entry (framebuffer);
@@ -131,8 +144,11 @@ _cogl_framebuffer_gl_flush_modelview_state (CoglFramebuffer *framebuffer)
}
static void
-_cogl_framebuffer_gl_flush_projection_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_projection_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
CoglContext *ctx = cogl_framebuffer_get_context (framebuffer);
CoglMatrixEntry *projection_entry =
_cogl_framebuffer_get_projection_entry (framebuffer);
@@ -141,8 +157,11 @@ _cogl_framebuffer_gl_flush_projection_state (CoglFramebuffer *framebuffer)
}
static void
-_cogl_framebuffer_gl_flush_front_face_winding_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_front_face_winding_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
CoglContext *context = cogl_framebuffer_get_context (framebuffer);
CoglPipelineCullFaceMode mode;
@@ -173,8 +192,11 @@ _cogl_framebuffer_gl_flush_front_face_winding_state (CoglFramebuffer *framebuffe
}
static void
-_cogl_framebuffer_gl_flush_stereo_mode_state (CoglFramebuffer *framebuffer)
+cogl_gl_framebuffer_flush_stereo_mode_state (CoglGlFramebuffer *gl_framebuffer)
{
+ CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
+ CoglFramebuffer *framebuffer =
+ cogl_framebuffer_driver_get_framebuffer (driver);
CoglContext *ctx = cogl_framebuffer_get_context (framebuffer);
GLenum draw_buffer = GL_BACK;
@@ -212,9 +234,6 @@ void
cogl_gl_framebuffer_flush_state_differences (CoglGlFramebuffer *gl_framebuffer,
unsigned long differences)
{
- CoglFramebufferDriver *driver = COGL_FRAMEBUFFER_DRIVER (gl_framebuffer);
- CoglFramebuffer *framebuffer =
- cogl_framebuffer_driver_get_framebuffer (driver);
int bit;
COGL_FLAGS_FOREACH_START (&differences, 1, bit)
@@ -226,29 +245,29 @@ cogl_gl_framebuffer_flush_state_differences (CoglGlFramebuffer *gl_framebuffer,
switch (bit)
{
case COGL_FRAMEBUFFER_STATE_INDEX_VIEWPORT:
- _cogl_framebuffer_gl_flush_viewport_state (framebuffer);
+ cogl_gl_framebuffer_flush_viewport_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_CLIP:
- _cogl_framebuffer_gl_flush_clip_state (framebuffer);
+ cogl_gl_framebuffer_flush_clip_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_DITHER:
- _cogl_framebuffer_gl_flush_dither_state (framebuffer);
+ cogl_gl_framebuffer_flush_dither_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_MODELVIEW:
- _cogl_framebuffer_gl_flush_modelview_state (framebuffer);
+ cogl_gl_framebuffer_flush_modelview_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_PROJECTION:
- _cogl_framebuffer_gl_flush_projection_state (framebuffer);
+ cogl_gl_framebuffer_flush_projection_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_FRONT_FACE_WINDING:
- _cogl_framebuffer_gl_flush_front_face_winding_state (framebuffer);
+ cogl_gl_framebuffer_flush_front_face_winding_state (gl_framebuffer);
break;
case COGL_FRAMEBUFFER_STATE_INDEX_DEPTH_WRITE:
/* Nothing to do for depth write state change; the state will always
* be taken into account when flushing the pipeline's depth state. */
break;
case COGL_FRAMEBUFFER_STATE_INDEX_STEREO_MODE:
- _cogl_framebuffer_gl_flush_stereo_mode_state (framebuffer);
+ cogl_gl_framebuffer_flush_stereo_mode_state (gl_framebuffer);
break;
default:
g_warn_if_reached ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]