st/mesa: use _mesa_texstore()
authorBrian Paul <brianp@vmware.com>
Tue, 29 Sep 2009 03:52:23 +0000 (21:52 -0600)
committerBrian Paul <brianp@vmware.com>
Tue, 29 Sep 2009 03:52:23 +0000 (21:52 -0600)
src/mesa/state_tracker/st_cb_drawpixels.c
src/mesa/state_tracker/st_cb_texture.c

index c56f987628c0216a166803feb503b2e8005e5689..6da57e817b8e9665005d5ae444f52d9cfab896e2 100644 (file)
@@ -392,8 +392,6 @@ make_texture(struct st_context *st,
       GLboolean success;
       GLubyte *dest;
       const GLbitfield imageTransferStateSave = ctx->_ImageTransferState;
-      const StoreTexImageFunc storeImage =
-         _mesa_get_texstore_func(mformat->MesaFormat);
 
       /* we'll do pixel transfer in a fragment shader */
       ctx->_ImageTransferState = 0x0;
@@ -410,17 +408,17 @@ make_texture(struct st_context *st,
        * Note that the image is actually going to be upside down in
        * the texture.  We deal with that with texcoords.
        */
-      success = storeImage(ctx, 2,           /* dims */
-                           baseFormat,       /* baseInternalFormat */
-                           mformat,          /* gl_texture_format */
-                           dest,             /* dest */
-                           0, 0, 0,          /* dstX/Y/Zoffset */
-                           transfer->stride, /* dstRowStride, bytes */
-                           &dstImageOffsets, /* dstImageOffsets */
-                           width, height, 1, /* size */
-                           format, type,     /* src format/type */
-                           pixels,           /* data source */
-                           unpack);
+      success = _mesa_texstore(ctx, 2,           /* dims */
+                               baseFormat,       /* baseInternalFormat */
+                               mformat,          /* gl_texture_format */
+                               dest,             /* dest */
+                               0, 0, 0,          /* dstX/Y/Zoffset */
+                               transfer->stride, /* dstRowStride, bytes */
+                               &dstImageOffsets, /* dstImageOffsets */
+                               width, height, 1, /* size */
+                               format, type,     /* src format/type */
+                               pixels,           /* data source */
+                               unpack);
 
       /* unmap */
       screen->transfer_unmap(screen, transfer);
index 8bbffc3ff6109a83a85415411a02d526289ab4ef..d96484c439e681d66d12b52c919abad30e6b2bcc 100644 (file)
@@ -417,7 +417,6 @@ compress_with_blit(GLcontext * ctx,
    struct pipe_surface *dst_surface;
    struct pipe_transfer *tex_xfer;
    void *map;
-   StoreTexImageFunc storeImage;
 
    if (!stImage->pt) {
       /* XXX: Can this happen? Should we assert? */
@@ -464,18 +463,15 @@ compress_with_blit(GLcontext * ctx,
                                             0, 0, width, height); /* x, y, w, h */
    map = screen->transfer_map(screen, tex_xfer);
 
-   storeImage = _mesa_get_texstore_func(mesa_format->MesaFormat);
-
-
-   storeImage(ctx, 2, GL_RGBA, mesa_format,
-              map,              /* dest ptr */
-              0, 0, 0,          /* dest x/y/z offset */
-              tex_xfer->stride, /* dest row stride (bytes) */
-              dstImageOffsets,  /* image offsets (for 3D only) */
-              width, height, 1, /* size */
-              format, type,     /* source format/type */
-              pixels,           /* source data */
-              unpack);          /* source data packing */
+   _mesa_texstore(ctx, 2, GL_RGBA, mesa_format,
+                  map,              /* dest ptr */
+                  0, 0, 0,          /* dest x/y/z offset */
+                  tex_xfer->stride, /* dest row stride (bytes) */
+                  dstImageOffsets,  /* image offsets (for 3D only) */
+                  width, height, 1, /* size */
+                  format, type,     /* source format/type */
+                  pixels,           /* source data */
+                  unpack);          /* source data packing */
 
    screen->transfer_unmap(screen, tex_xfer);
    screen->tex_transfer_destroy(tex_xfer);
@@ -737,19 +733,17 @@ st_TexImage(GLcontext * ctx,
          _mesa_image_image_stride(unpack, width, height, format, type);
       GLint i;
       const GLubyte *src = (const GLubyte *) pixels;
-      StoreTexImageFunc storeImage =
-         _mesa_get_texstore_func(texImage->TexFormat->MesaFormat);
 
       for (i = 0; i < depth; i++) {
-        if (!storeImage(ctx, dims, 
-                         texImage->_BaseFormat, 
-                         texImage->TexFormat, 
-                         texImage->Data,
-                         0, 0, 0, /* dstX/Y/Zoffset */
-                         dstRowStride,
-                         texImage->ImageOffsets,
-                         width, height, 1,
-                         format, type, src, unpack)) {
+        if (!_mesa_texstore(ctx, dims, 
+                             texImage->_BaseFormat, 
+                             texImage->TexFormat, 
+                             texImage->Data,
+                             0, 0, 0, /* dstX/Y/Zoffset */
+                             dstRowStride,
+                             texImage->ImageOffsets,
+                             width, height, 1,
+                             format, type, src, unpack)) {
            _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage");
         }
 
@@ -1056,9 +1050,6 @@ st_TexSubimage(GLcontext *ctx, GLint dims, GLenum target, GLint level,
    const GLubyte *src;
    /* init to silence warning only: */
    enum pipe_transfer_usage transfer_usage = PIPE_TRANSFER_WRITE;
-   StoreTexImageFunc storeImage =
-      _mesa_get_texstore_func(texImage->TexFormat->MesaFormat);
-
 
    DBG("%s target %s level %d offset %d,%d %dx%d\n", __FUNCTION__,
        _mesa_lookup_enum_by_nr(target),
@@ -1115,14 +1106,14 @@ st_TexSubimage(GLcontext *ctx, GLint dims, GLenum target, GLint level,
    dstRowStride = stImage->transfer->stride;
 
    for (i = 0; i < depth; i++) {
-      if (!storeImage(ctx, dims, texImage->_BaseFormat,
-                      texImage->TexFormat,
-                      texImage->Data,
-                      0, 0, 0,
-                      dstRowStride,
-                      texImage->ImageOffsets,
-                      width, height, 1,
-                      format, type, src, packing)) {
+      if (!_mesa_texstore(ctx, dims, texImage->_BaseFormat,
+                          texImage->TexFormat,
+                          texImage->Data,
+                          0, 0, 0,
+                          dstRowStride,
+                          texImage->ImageOffsets,
+                          width, height, 1,
+                          format, type, src, packing)) {
         _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexSubImage");
       }
 
@@ -1361,8 +1352,6 @@ fallback_copy_texsubimage(GLcontext *ctx, GLenum target, GLint level,
          const GLint dstRowStride = stImage->transfer->stride;
          struct gl_texture_image *texImage = &stImage->base;
          struct gl_pixelstore_attrib unpack = ctx->DefaultPacking;
-         StoreTexImageFunc storeImage =
-            _mesa_get_texstore_func(texImage->TexFormat->MesaFormat);
 
          if (st_fb_orientation(ctx->ReadBuffer) == Y_0_TOP) {
             unpack.Invert = GL_TRUE;
@@ -1380,16 +1369,16 @@ fallback_copy_texsubimage(GLcontext *ctx, GLenum target, GLint level,
           * is actually RGBA but the user created the texture as GL_RGB we
           * need to fill-in/override the alpha channel with 1.0.
           */
-         storeImage(ctx, dims,
-                    texImage->_BaseFormat, 
-                    texImage->TexFormat, 
-                    texDest,
-                    0, 0, 0,
-                    dstRowStride,
-                    texImage->ImageOffsets,
-                    width, height, 1,
-                    GL_RGBA, GL_FLOAT, tempSrc, /* src */
-                    &unpack);
+         _mesa_texstore(ctx, dims,
+                        texImage->_BaseFormat, 
+                        texImage->TexFormat, 
+                        texDest,
+                        0, 0, 0,
+                        dstRowStride,
+                        texImage->ImageOffsets,
+                        width, height, 1,
+                        GL_RGBA, GL_FLOAT, tempSrc, /* src */
+                        &unpack);
       }
       else {
          _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexSubImage");