gallium: use new framebuffer width, height fields
authorBrian <brian.paul@tungstengraphics.com>
Thu, 20 Mar 2008 21:03:43 +0000 (15:03 -0600)
committerBrian <brian.paul@tungstengraphics.com>
Thu, 20 Mar 2008 21:04:08 +0000 (15:04 -0600)
src/gallium/drivers/softpipe/sp_context.h
src/gallium/drivers/softpipe/sp_prim_setup.c
src/gallium/drivers/softpipe/sp_quad_stipple.c
src/gallium/drivers/softpipe/sp_state_derived.c
src/gallium/drivers/softpipe/sp_state_surface.c

index 31d7062dcc0e30c90cb767866d54b970cfb2b2ff..19e6cfaf02e8827ba7febabc6d56cc7fd099b43e 100644 (file)
@@ -84,8 +84,6 @@ struct softpipe_context {
    unsigned num_samplers;
    unsigned num_textures;
 
-   uint fb_width, fb_height;
-
    /* Counter for occlusion queries.  Note this supports overlapping
     * queries.
     */
index f2d6043e2ed519df02397e2d8de1e6ad73acd5a7..6a81e4d8cc293d8291a14e035de668dd30e693f4 100644 (file)
@@ -485,7 +485,7 @@ setup_fragcoord_coeff(struct setup_stage *setup, uint slot)
    /*Y*/
    if (setup->softpipe->rasterizer->origin_lower_left) {
       /* y=0=bottom */
-      const int winHeight = setup->softpipe->fb_height;
+      const int winHeight = setup->softpipe->framebuffer.height;
       setup->coef[slot].a0[1] = (float) (winHeight - 1);
       setup->coef[slot].dady[1] = -1.0;
    }
index 9a39249576b0312cc228bc95c073cefaa04c4e86..f1e9b80e09a0eff6d11ac2290dcbc6f75b7f2c3a 100644 (file)
@@ -25,7 +25,7 @@ stipple_quad(struct quad_stage *qs, struct quad_header *quad)
       int y0, y1;
       uint stipple0, stipple1;
       if (softpipe->rasterizer->origin_lower_left) {
-         y0 = softpipe->fb_height - 1 - quad->y0;
+         y0 = softpipe->framebuffer.height - 1 - quad->y0;
          y1 = y0 - 1;
       }
       else {
index 53b2056b8a6e58655fcbcdd2520f242f5ece1f17..14abb20eeb2e1319beef00ae1e06ce370eb360ae 100644 (file)
@@ -171,8 +171,8 @@ softpipe_get_vbuf_vertex_info(struct softpipe_context *softpipe)
 static void
 compute_cliprect(struct softpipe_context *sp)
 {
-   uint surfWidth = sp->fb_width;
-   uint surfHeight = sp->fb_height;
+   uint surfWidth = sp->framebuffer.width;
+   uint surfHeight = sp->framebuffer.height;
 
    if (sp->rasterizer->scissor) {
       /* clip to scissor rect */
index 2f556844644dae20b6f8aafd85701ea9717386fc..ba8c9eece72462fa52cf60c3b75741ead3417aed 100644 (file)
@@ -48,9 +48,6 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
    struct softpipe_context *sp = softpipe_context(pipe);
    uint i;
 
-   /* updated below */
-   sp->fb_width = sp->fb_height = 0;
-
    for (i = 0; i < PIPE_MAX_COLOR_BUFS; i++) {
       /* check if changing cbuf */
       if (sp->framebuffer.cbufs[i] != fb->cbufs[i]) {
@@ -63,10 +60,6 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
          /* update cache */
          sp_tile_cache_set_surface(sp->cbuf_cache[i], fb->cbufs[i]);
       }
-      if (fb->cbufs[i]) {
-         sp->fb_width = fb->cbufs[i]->width;
-         sp->fb_height = fb->cbufs[i]->height;
-      }
    }
 
    sp->framebuffer.num_cbufs = fb->num_cbufs;
@@ -81,11 +74,6 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
 
       /* update cache */
       sp_tile_cache_set_surface(sp->zsbuf_cache, fb->zsbuf);
-
-      if (!sp->fb_width && fb->zsbuf) {
-         sp->fb_width = fb->zsbuf->width;
-         sp->fb_height = fb->zsbuf->height;
-      }
    }
 
 #if 0
@@ -113,9 +101,8 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
    }
 #endif
 
+   sp->framebuffer.width = fb->width;
+   sp->framebuffer.height = fb->height;
+
    sp->dirty |= SP_NEW_FRAMEBUFFER;
 }
-
-
-
-