vulkan: Remove unused stuff fom renderpass
authorBenjamin Otte <otte@redhat.com>
Tue, 18 Jul 2023 21:15:22 +0000 (23:15 +0200)
committerBenjamin Otte <otte@redhat.com>
Wed, 19 Jul 2023 19:30:35 +0000 (21:30 +0200)
... and move it to the one place where it is used.

gsk/vulkan/gskvulkanrenderpass.c
gsk/vulkan/gskvulkanrenderpassop.c
gsk/vulkan/gskvulkanrenderpassprivate.h

index 59f338568d1ef70d0bb1c84b2beda5f0bf71be5e..a6acd0a1c0989d807bc29effeb9f4bea461adcb4 100644 (file)
@@ -43,12 +43,6 @@ typedef struct _GskVulkanParseState GskVulkanParseState;
 struct _GskVulkanRenderPass
 {
   GdkVulkanContext *vulkan;
-
-  GskVulkanImage *target;
-  graphene_rect_t viewport;
-  cairo_region_t *clip;
-
-  graphene_vec2_t scale;
 };
 
 struct _GskVulkanParseState
@@ -61,38 +55,14 @@ struct _GskVulkanParseState
   GskVulkanClip          clip;
 };
 
-#ifdef G_ENABLE_DEBUG
-static GQuark fallback_pixels_quark;
-static GQuark texture_pixels_quark;
-#endif
-
 GskVulkanRenderPass *
-gsk_vulkan_render_pass_new (GdkVulkanContext      *context,
-                            GskVulkanRender       *render,
-                            GskVulkanImage        *target,
-                            const graphene_vec2_t *scale,
-                            const graphene_rect_t *viewport,
-                            cairo_region_t        *clip,
-                            GskRenderNode         *node)
+gsk_vulkan_render_pass_new (GdkVulkanContext *context)
 {
   GskVulkanRenderPass *self;
 
   self = g_new0 (GskVulkanRenderPass, 1);
   self->vulkan = g_object_ref (context);
 
-  self->target = g_object_ref (target);
-  self->clip = cairo_region_copy (clip);
-  self->viewport = *viewport;
-  graphene_vec2_init_from_vec2 (&self->scale, scale);
-
-#ifdef G_ENABLE_DEBUG
-  if (fallback_pixels_quark == 0)
-    {
-      fallback_pixels_quark = g_quark_from_static_string ("fallback-pixels");
-      texture_pixels_quark = g_quark_from_static_string ("texture-pixels");
-    }
-#endif
-
   return self;
 }
 
@@ -100,8 +70,6 @@ void
 gsk_vulkan_render_pass_free (GskVulkanRenderPass *self)
 {
   g_object_unref (self->vulkan);
-  g_object_unref (self->target);
-  cairo_region_destroy (self->clip);
 
   g_free (self);
 }
@@ -1292,17 +1260,20 @@ gsk_vulkan_render_pass_add_node (GskVulkanRenderPass       *self,
 }
 
 void
-gsk_vulkan_render_pass_add (GskVulkanRenderPass *self,
-                            GskVulkanRender     *render,
-                            GskRenderNode       *node)
+gsk_vulkan_render_pass_add (GskVulkanRenderPass   *self,
+                            GskVulkanRender       *render,
+                            const graphene_vec2_t *scale,
+                            const graphene_rect_t *viewport,
+                            cairo_region_t        *clip_region,
+                            GskRenderNode         *node)
 {
   GskVulkanParseState state;
   graphene_rect_t clip;
   float scale_x, scale_y;
 
-  scale_x = 1 / graphene_vec2_get_x (&self->scale);
-  scale_y = 1 / graphene_vec2_get_y (&self->scale);
-  cairo_region_get_extents (self->clip, &state.scissor);
+  scale_x = 1 / graphene_vec2_get_x (scale);
+  scale_y = 1 / graphene_vec2_get_y (scale);
+  cairo_region_get_extents (clip_region, &state.scissor);
   clip = GRAPHENE_RECT_INIT(state.scissor.x, state.scissor.y,
                             state.scissor.width, state.scissor.height);
   graphene_rect_scale (&clip, scale_x, scale_y, &clip);
@@ -1310,13 +1281,13 @@ gsk_vulkan_render_pass_add (GskVulkanRenderPass *self,
 
   state.modelview = NULL;
   graphene_matrix_init_ortho (&state.projection,
-                              0, self->viewport.size.width,
-                              0, self->viewport.size.height,
+                              0, viewport->size.width,
+                              0, viewport->size.height,
                               2 * ORTHO_NEAR_PLANE - ORTHO_FAR_PLANE,
                               ORTHO_FAR_PLANE);
-  graphene_vec2_init_from_vec2 (&state.scale, &self->scale);
-  state.offset = GRAPHENE_POINT_INIT (-self->viewport.origin.x * scale_x,
-                                      -self->viewport.origin.y * scale_y);
+  graphene_vec2_init_from_vec2 (&state.scale, scale);
+  state.offset = GRAPHENE_POINT_INIT (-viewport->origin.x * scale_x,
+                                      -viewport->origin.y * scale_y);
 
   gsk_vulkan_render_pass_append_scissor (render, node, &state);
   gsk_vulkan_render_pass_append_push_constants (render, node, &state);
index a85469cd8e37e65c57b8cb764984325885e86fc2..db48b5c0dc4e91b063d56be8da1f2e2813affa31 100644 (file)
@@ -264,16 +264,15 @@ gsk_vulkan_render_pass_op (GskVulkanRender       *render,
   cairo_region_get_extents (clip, &self->area);
   self->viewport_size = viewport->size;
 
-  self->render_pass = gsk_vulkan_render_pass_new (context,
-                                                  render,
-                                                  self->image,
-                                                  scale,
-                                                  viewport,
-                                                  clip,
-                                                  node);
+  self->render_pass = gsk_vulkan_render_pass_new (context);
 
   /* This invalidates the self pointer */
-  gsk_vulkan_render_pass_add (self->render_pass, render, node);
+  gsk_vulkan_render_pass_add (self->render_pass,
+                              render,
+                              scale,
+                              viewport,
+                              clip,
+                              node);
 
   end = (GskVulkanRenderPassEndOp *) gsk_vulkan_op_alloc (render, &GSK_VULKAN_RENDER_PASS_END_OP_CLASS);
 
index 08505e8b62a5ae77e308026991eda2d79531076e..c7486bec05f6f98c5ea44cdb29ac64423bea8be3 100644 (file)
 G_BEGIN_DECLS
 
 
-GskVulkanRenderPass *   gsk_vulkan_render_pass_new                      (GdkVulkanContext       *context,
-                                                                         GskVulkanRender        *render,
-                                                                         GskVulkanImage         *target,
-                                                                         const graphene_vec2_t  *scale,
-                                                                         const graphene_rect_t  *viewport,
-                                                                         cairo_region_t         *clip,
-                                                                         GskRenderNode          *node);
+GskVulkanRenderPass *   gsk_vulkan_render_pass_new                      (GdkVulkanContext       *context);
 
 void                    gsk_vulkan_render_pass_free                     (GskVulkanRenderPass    *self);
 
 void                    gsk_vulkan_render_pass_add                      (GskVulkanRenderPass    *self,
                                                                          GskVulkanRender        *render,
+                                                                         const graphene_vec2_t  *scale,
+                                                                         const graphene_rect_t  *viewport,
+                                                                         cairo_region_t         *clip,
                                                                          GskRenderNode          *node);
 
 G_END_DECLS