Mesa (master): rbug: adapt to clear interface changes

Roland Scheidegger sroland at kemper.freedesktop.org
Thu Jun 3 08:47:35 PDT 2010


Module: Mesa
Branch: master
Commit: 9d596ea492e23c92d5044e7bec4562b73181f330
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9d596ea492e23c92d5044e7bec4562b73181f330

Author: Roland Scheidegger <sroland at vmware.com>
Date:   Sat May 29 01:20:11 2010 +0200

rbug: adapt to clear interface changes

---

 src/gallium/drivers/rbug/rbug_context.c |   76 +++++++++++++++++++-----------
 1 files changed, 48 insertions(+), 28 deletions(-)

diff --git a/src/gallium/drivers/rbug/rbug_context.c b/src/gallium/drivers/rbug/rbug_context.c
index bb7d13b..b294831 100644
--- a/src/gallium/drivers/rbug/rbug_context.c
+++ b/src/gallium/drivers/rbug/rbug_context.c
@@ -800,33 +800,6 @@ rbug_resource_copy_region(struct pipe_context *_pipe,
 }
 
 static void
-rbug_resource_fill_region(struct pipe_context *_pipe,
-                          struct pipe_resource *_dst,
-                          struct pipe_subresource subdst,
-                          unsigned dstx,
-                          unsigned dsty,
-                          unsigned dstz,
-                          unsigned width,
-                          unsigned height,
-                          unsigned value)
-{
-   struct rbug_context *rb_pipe = rbug_context(_pipe);
-   struct rbug_resource *rb_resource_dst = rbug_resource(_dst);
-   struct pipe_context *pipe = rb_pipe->pipe;
-   struct pipe_resource *dst = rb_resource_dst->resource;
-
-   pipe->resource_fill_region(pipe,
-                              dst,
-                              subdst,
-                              dstx,
-                              dsty,
-                              dstz,
-                              width,
-                              height,
-                              value);
-}
-
-static void
 rbug_clear(struct pipe_context *_pipe,
            unsigned buffers,
            const float *rgba,
@@ -844,6 +817,52 @@ rbug_clear(struct pipe_context *_pipe,
 }
 
 static void
+rbug_clearRT(struct pipe_context *_pipe,
+             struct pipe_surface *_dst,
+             const float *rgba,
+             unsigned dstx, unsigned dsty,
+             unsigned width, unsigned height)
+{
+   struct rbug_context *rb_pipe = rbug_context(_pipe);
+   struct rbug_surface *rb_surface_dst = rbug_surface(_dst);
+   struct pipe_context *pipe = rb_pipe->pipe;
+   struct pipe_surface *dst = rb_surface_dst->surface;
+
+   pipe->clearRT(pipe,
+                 dst,
+                 rgba,
+                 dstx,
+                 dsty,
+                 width,
+                 height);
+}
+
+static void
+rbug_clearDS(struct pipe_context *_pipe,
+             struct pipe_surface *_dst,
+             unsigned clear_flags,
+             double depth,
+             unsigned stencil,
+             unsigned dstx, unsigned dsty,
+             unsigned width, unsigned height)
+{
+   struct rbug_context *rb_pipe = rbug_context(_pipe);
+   struct rbug_surface *rb_surface_dst = rbug_surface(_dst);
+   struct pipe_context *pipe = rb_pipe->pipe;
+   struct pipe_surface *dst = rb_surface_dst->surface;
+
+   pipe->clearDS(pipe,
+                 dst,
+                 clear_flags,
+                 depth,
+                 stencil,
+                 dstx,
+                 dsty,
+                 width,
+                 height);
+}
+
+static void
 rbug_flush(struct pipe_context *_pipe,
            unsigned flags,
            struct pipe_fence_handle **fence)
@@ -1075,8 +1094,9 @@ rbug_context_create(struct pipe_screen *_screen, struct pipe_context *pipe)
    rb_pipe->base.set_vertex_buffers = rbug_set_vertex_buffers;
    rb_pipe->base.set_sample_mask = rbug_set_sample_mask;
    rb_pipe->base.resource_copy_region = rbug_resource_copy_region;
-   rb_pipe->base.resource_fill_region = rbug_resource_fill_region;
    rb_pipe->base.clear = rbug_clear;
+   rb_pipe->base.clearRT = rbug_clearRT;
+   rb_pipe->base.clearDS = rbug_clearDS;
    rb_pipe->base.flush = rbug_flush;
    rb_pipe->base.is_resource_referenced = rbug_is_resource_referenced;
    rb_pipe->base.create_sampler_view = rbug_context_create_sampler_view;



More information about the mesa-commit mailing list