diff options
author | Brian Paul <[email protected]> | 2011-12-30 08:24:55 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2011-12-30 08:24:55 -0700 |
commit | 92c64624cd7533cde466dbec8722f7f72f275fd8 (patch) | |
tree | cac6f3e610b12f407a088f81c5c10896b1343458 | |
parent | da0cc82a093eb97212e989648da638a262ed3e84 (diff) |
mesa: simplify Driver.TexImage() parameters
As with TexSubImage(), the target, level and texObj values can be obtained
through the texImage pointer.
Reviewed-by: Chad Versace <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_tex_image.c | 43 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_texture.c | 42 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_texture.c | 50 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_texture.h | 23 | ||||
-rw-r--r-- | src/mesa/main/dd.h | 42 | ||||
-rw-r--r-- | src/mesa/main/teximage.c | 23 | ||||
-rw-r--r-- | src/mesa/main/texobj.c | 4 | ||||
-rw-r--r-- | src/mesa/main/texstore.c | 21 | ||||
-rw-r--r-- | src/mesa/main/texstore.h | 21 | ||||
-rw-r--r-- | src/mesa/state_tracker/st_cb_texture.c | 50 |
10 files changed, 134 insertions, 185 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c index 107d3147279..32f2e85515e 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_image.c +++ b/src/mesa/drivers/dri/intel/intel_tex_image.c @@ -202,16 +202,16 @@ try_pbo_upload(struct gl_context *ctx, static void intelTexImage(struct gl_context * ctx, GLint dims, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLenum format, GLenum type, const void *pixels, const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage, GLsizei imageSize) + GLsizei imageSize) { DBG("%s target %s level %d %dx%dx%d\n", __FUNCTION__, - _mesa_lookup_enum_by_nr(target), level, width, height, depth); + _mesa_lookup_enum_by_nr(texImage->TexObject->Target), + texImage->Level, width, height, depth); /* Attempt to use the blitter for PBO image uploads. */ @@ -224,59 +224,52 @@ intelTexImage(struct gl_context * ctx, DBG("%s: upload image %dx%dx%d pixels %p\n", __FUNCTION__, width, height, depth, pixels); - _mesa_store_teximage3d(ctx, target, level, internalFormat, + _mesa_store_teximage3d(ctx, texImage, internalFormat, width, height, depth, 0, - format, type, pixels, - unpack, texObj, texImage); + format, type, pixels, unpack); } static void intelTexImage3D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - intelTexImage(ctx, 3, target, level, + intelTexImage(ctx, 3, texImage, internalFormat, width, height, depth, - format, type, pixels, unpack, texObj, texImage, 0); + format, type, pixels, unpack, 0); } static void intelTexImage2D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - intelTexImage(ctx, 2, target, level, + intelTexImage(ctx, 2, texImage, internalFormat, width, height, 1, - format, type, pixels, unpack, texObj, texImage, 0); + format, type, pixels, unpack, 0); } static void intelTexImage1D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - intelTexImage(ctx, 1, target, level, + intelTexImage(ctx, 1, texImage, internalFormat, width, 1, 1, - format, type, pixels, unpack, texObj, texImage, 0); + format, type, pixels, unpack, 0); } diff --git a/src/mesa/drivers/dri/nouveau/nouveau_texture.c b/src/mesa/drivers/dri/nouveau/nouveau_texture.c index e9f74e81a73..0fb80ffd9cd 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_texture.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_texture.c @@ -452,14 +452,15 @@ get_teximage_placement(struct gl_texture_image *ti) } static void -nouveau_teximage(struct gl_context *ctx, GLint dims, GLenum target, GLint level, +nouveau_teximage(struct gl_context *ctx, GLint dims, + struct gl_texture_image *ti, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *t, - struct gl_texture_image *ti) + const struct gl_pixelstore_attrib *packing) { + struct gl_texture_object *t = ti->TexObject; + const GLuint level = ti->Level; struct nouveau_surface *s = &to_nouveau_teximage(ti)->surface; struct nouveau_teximage *nti = to_nouveau_teximage(ti); int ret; @@ -505,45 +506,42 @@ nouveau_teximage(struct gl_context *ctx, GLint dims, GLenum target, GLint level, } static void -nouveau_teximage_1d(struct gl_context *ctx, GLenum target, GLint level, +nouveau_teximage_1d(struct gl_context *ctx, + struct gl_texture_image *ti, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *t, - struct gl_texture_image *ti) + const struct gl_pixelstore_attrib *packing) { - nouveau_teximage(ctx, 1, target, level, internalFormat, + nouveau_teximage(ctx, 1, ti, internalFormat, width, 1, 1, border, format, type, pixels, - packing, t, ti); + packing); } static void -nouveau_teximage_2d(struct gl_context *ctx, GLenum target, GLint level, +nouveau_teximage_2d(struct gl_context *ctx, + struct gl_texture_image *ti, GLint internalFormat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *t, - struct gl_texture_image *ti) + const struct gl_pixelstore_attrib *packing) { - nouveau_teximage(ctx, 2, target, level, internalFormat, + nouveau_teximage(ctx, 2, ti, internalFormat, width, height, 1, border, format, type, pixels, - packing, t, ti); + packing); } static void -nouveau_teximage_3d(struct gl_context *ctx, GLenum target, GLint level, +nouveau_teximage_3d(struct gl_context *ctx, + struct gl_texture_image *ti, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *t, - struct gl_texture_image *ti) + const struct gl_pixelstore_attrib *packing) { - nouveau_teximage(ctx, 3, target, level, internalFormat, + nouveau_teximage(ctx, 3, ti, internalFormat, width, height, depth, border, format, type, pixels, - packing, t, ti); + packing); } static void diff --git a/src/mesa/drivers/dri/radeon/radeon_texture.c b/src/mesa/drivers/dri/radeon/radeon_texture.c index 71eff75cc04..78fb1b5c7d1 100644 --- a/src/mesa/drivers/dri/radeon/radeon_texture.c +++ b/src/mesa/drivers/dri/radeon/radeon_texture.c @@ -578,58 +578,56 @@ static void teximage_assign_miptree(radeonContextPtr rmesa, */ static void radeon_teximage( struct gl_context *ctx, int dims, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLsizei imageSize, GLenum format, GLenum type, const GLvoid * pixels, const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage, int compressed) { - _mesa_store_teximage3d(ctx, target, level, internalFormat, + _mesa_store_teximage3d(ctx, texImage, internalFormat, width, height, depth, 0, format, type, pixels, - packing, texObj, texImage); + packing); } -void radeonTexImage1D(struct gl_context * ctx, GLenum target, GLint level, +static void +radeonTexImage1D(struct gl_context * ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *packing) { - radeon_teximage(ctx, 1, target, level, internalFormat, width, 1, 1, - 0, format, type, pixels, packing, texObj, texImage, 0); + radeon_teximage(ctx, 1, texImage, internalFormat, width, 1, 1, + 0, format, type, pixels, packing, 0); } -void radeonTexImage2D(struct gl_context * ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint height, GLint border, - GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) +static void +radeonTexImage2D(struct gl_context * ctx, + struct gl_texture_image *texImage, + GLint internalFormat, + GLint width, GLint height, GLint border, + GLenum format, GLenum type, const GLvoid * pixels, + const struct gl_pixelstore_attrib *packing) { - radeon_teximage(ctx, 2, target, level, internalFormat, width, height, 1, - 0, format, type, pixels, packing, texObj, texImage, 0); + radeon_teximage(ctx, 2, texImage, internalFormat, width, height, 1, + 0, format, type, pixels, packing, 0); } -void radeonTexImage3D(struct gl_context * ctx, GLenum target, GLint level, +static void +radeonTexImage3D(struct gl_context * ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *packing) { - radeon_teximage(ctx, 3, target, level, internalFormat, width, height, depth, - 0, format, type, pixels, packing, texObj, texImage, 0); + radeon_teximage(ctx, 3, texImage, internalFormat, width, height, depth, + 0, format, type, pixels, packing, 0); } unsigned radeonIsFormatRenderable(gl_format mesa_format) diff --git a/src/mesa/drivers/dri/radeon/radeon_texture.h b/src/mesa/drivers/dri/radeon/radeon_texture.h index f1af109707f..ebe16c05f99 100644 --- a/src/mesa/drivers/dri/radeon/radeon_texture.h +++ b/src/mesa/drivers/dri/radeon/radeon_texture.h @@ -65,34 +65,13 @@ gl_format radeonChooseTextureFormat(struct gl_context * ctx, GLenum format, GLenum type, GLboolean fbo); -void radeonTexImage1D(struct gl_context * ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint border, - GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); -void radeonTexImage2D(struct gl_context * ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint height, GLint border, - GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); void radeonCompressedTexImage2D(struct gl_context * ctx, GLenum target, GLint level, GLint internalFormat, GLint width, GLint height, GLint border, GLsizei imageSize, const GLvoid * data, struct gl_texture_object *texObj, struct gl_texture_image *texImage); -void radeonTexImage3D(struct gl_context * ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint height, GLint depth, - GLint border, - GLenum format, GLenum type, const GLvoid * pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); + void radeonTexSubImage1D(struct gl_context * ctx, GLenum target, GLint level, GLint xoffset, GLsizei width, diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 5226a6811cf..05e6d354d3c 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -203,42 +203,38 @@ struct dd_function_table { * fully initialized. * The parameters are the same as glTexImage1D(), plus: * \param packing describes how to unpack the source data. - * \param texObj is the target texture object. - * \param texImage is the target texture image. + * \param texImage is the destination texture image. */ - void (*TexImage1D)( struct gl_context *ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint border, - GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage ); + void (*TexImage1D)(struct gl_context *ctx, + struct gl_texture_image *texImage, + GLint internalFormat, + GLint width, GLint border, + GLenum format, GLenum type, const GLvoid *pixels, + const struct gl_pixelstore_attrib *packing); /** * Called by glTexImage2D(). * * \sa dd_function_table::TexImage1D. */ - void (*TexImage2D)( struct gl_context *ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint height, GLint border, - GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage ); + void (*TexImage2D)(struct gl_context *ctx, + struct gl_texture_image *texImage, + GLint internalFormat, + GLint width, GLint height, GLint border, + GLenum format, GLenum type, const GLvoid *pixels, + const struct gl_pixelstore_attrib *packing); /** * Called by glTexImage3D(). * * \sa dd_function_table::TexImage1D. */ - void (*TexImage3D)( struct gl_context *ctx, GLenum target, GLint level, - GLint internalFormat, - GLint width, GLint height, GLint depth, GLint border, - GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage ); + void (*TexImage3D)(struct gl_context *ctx, + struct gl_texture_image *texImage, + GLint internalFormat, + GLint width, GLint height, GLint depth, GLint border, + GLenum format, GLenum type, const GLvoid *pixels, + const struct gl_pixelstore_attrib *packing); /** * Called by glTexSubImage1D(). Replace a subset of the target texture diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index ad7a1ea0c8d..3dfe6dffef9 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -2481,22 +2481,19 @@ teximage(struct gl_context *ctx, GLuint dims, ASSERT(ctx->Driver.TexImage3D); switch (dims) { case 1: - ctx->Driver.TexImage1D(ctx, target, level, internalFormat, + ctx->Driver.TexImage1D(ctx, texImage, internalFormat, width, border, format, - type, pixels, unpack, texObj, - texImage); + type, pixels, unpack); break; case 2: - ctx->Driver.TexImage2D(ctx, target, level, internalFormat, + ctx->Driver.TexImage2D(ctx, texImage, internalFormat, width, height, border, format, - type, pixels, unpack, texObj, - texImage); + type, pixels, unpack); break; case 3: - ctx->Driver.TexImage3D(ctx, target, level, internalFormat, + ctx->Driver.TexImage3D(ctx, texImage, internalFormat, width, height, depth, border, format, - type, pixels, unpack, texObj, - texImage); + type, pixels, unpack); break; default: _mesa_problem(ctx, "invalid dims=%u in teximage()", dims); @@ -2820,14 +2817,14 @@ copyteximage(struct gl_context *ctx, GLuint dims, /* Allocate texture memory (no pixel data yet) */ if (dims == 1) { - ctx->Driver.TexImage1D(ctx, target, level, internalFormat, + ctx->Driver.TexImage1D(ctx, texImage, internalFormat, width, border, GL_NONE, GL_NONE, NULL, - &ctx->Unpack, texObj, texImage); + &ctx->Unpack); } else { - ctx->Driver.TexImage2D(ctx, target, level, internalFormat, + ctx->Driver.TexImage2D(ctx, texImage, internalFormat, width, height, border, GL_NONE, GL_NONE, - NULL, &ctx->Unpack, texObj, texImage); + NULL, &ctx->Unpack); } if (_mesa_clip_copytexsubimage(ctx, &dstX, &dstY, &srcX, &srcY, diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index 8e447cabdd4..425cb5d84fd 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -799,10 +799,10 @@ _mesa_get_fallback_texture(struct gl_context *ctx) ASSERT(texImage->TexFormat != MESA_FORMAT_NONE); /* set image data */ - ctx->Driver.TexImage2D(ctx, GL_TEXTURE_2D, 0, GL_RGBA, + ctx->Driver.TexImage2D(ctx, texImage, GL_RGBA, 8, 8, 0, GL_RGBA, GL_UNSIGNED_BYTE, texels, - &ctx->DefaultPacking, texObj, texImage); + &ctx->DefaultPacking); _mesa_test_texobj_completeness(ctx, texObj); assert(texObj->_Complete); diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index e97178dc8b5..5e18b8a1b88 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -4698,13 +4698,12 @@ store_texsubimage(struct gl_context *ctx, * This is the fallback for Driver.TexImage1D(). */ void -_mesa_store_teximage1d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage1d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *packing) { if (width == 0) return; @@ -4726,13 +4725,12 @@ _mesa_store_teximage1d(struct gl_context *ctx, GLenum target, GLint level, * This is the fallback for Driver.TexImage2D(). */ void -_mesa_store_teximage2d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage2d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *packing) { if (width == 0 || height == 0) return; @@ -4755,13 +4753,12 @@ _mesa_store_teximage2d(struct gl_context *ctx, GLenum target, GLint level, * This is the fallback for Driver.TexImage3D(). */ void -_mesa_store_teximage3d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage3d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *packing) { if (width == 0 || height == 0 || depth == 0) return; diff --git a/src/mesa/main/texstore.h b/src/mesa/main/texstore.h index 83826ce97e0..2a9b17743a5 100644 --- a/src/mesa/main/texstore.h +++ b/src/mesa/main/texstore.h @@ -91,33 +91,30 @@ _mesa_make_temp_float_image(struct gl_context *ctx, GLuint dims, GLbitfield transferOps); extern void -_mesa_store_teximage1d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage1d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); + const struct gl_pixelstore_attrib *packing); extern void -_mesa_store_teximage2d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage2d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); + const struct gl_pixelstore_attrib *packing); extern void -_mesa_store_teximage3d(struct gl_context *ctx, GLenum target, GLint level, +_mesa_store_teximage3d(struct gl_context *ctx, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels, - const struct gl_pixelstore_attrib *packing, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage); + const struct gl_pixelstore_attrib *packing); extern void diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 8d30d7acb54..8597dff0789 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -501,19 +501,20 @@ st_AllocTextureImageBuffer(struct gl_context *ctx, static void st_TexImage(struct gl_context * ctx, GLint dims, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const void *pixels, const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage, GLsizei imageSize, GLboolean compressed_src) { struct st_context *st = st_context(ctx); + struct gl_texture_object *texObj = texImage->TexObject; struct st_texture_object *stObj = st_texture_object(texObj); struct st_texture_image *stImage = st_texture_image(texImage); + const GLenum target = texObj->Target; + const GLuint level = texImage->Level; GLuint dstRowStride = 0; enum pipe_transfer_usage transfer_usage = 0; GLubyte *dstMap; @@ -736,48 +737,41 @@ done: static void st_TexImage3D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint depth, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - st_TexImage(ctx, 3, target, level, internalFormat, width, height, depth, - border, format, type, pixels, unpack, texObj, texImage, - 0, GL_FALSE); + st_TexImage(ctx, 3, texImage, internalFormat, width, height, depth, border, + format, type, pixels, unpack, 0, GL_FALSE); } static void st_TexImage2D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - st_TexImage(ctx, 2, target, level, internalFormat, width, height, 1, border, - format, type, pixels, unpack, texObj, texImage, 0, GL_FALSE); + st_TexImage(ctx, 2, texImage, internalFormat, width, height, 1, border, + format, type, pixels, unpack, 0, GL_FALSE); } static void st_TexImage1D(struct gl_context * ctx, - GLenum target, GLint level, + struct gl_texture_image *texImage, GLint internalFormat, GLint width, GLint border, GLenum format, GLenum type, const void *pixels, - const struct gl_pixelstore_attrib *unpack, - struct gl_texture_object *texObj, - struct gl_texture_image *texImage) + const struct gl_pixelstore_attrib *unpack) { - st_TexImage(ctx, 1, target, level, internalFormat, width, 1, 1, border, - format, type, pixels, unpack, texObj, texImage, 0, GL_FALSE); + st_TexImage(ctx, 1, texImage, internalFormat, width, 1, 1, border, + format, type, pixels, unpack, 0, GL_FALSE); } @@ -789,8 +783,8 @@ st_CompressedTexImage2D(struct gl_context *ctx, GLenum target, GLint level, struct gl_texture_object *texObj, struct gl_texture_image *texImage) { - st_TexImage(ctx, 2, target, level, internalFormat, width, height, 1, border, - 0, 0, data, &ctx->Unpack, texObj, texImage, imageSize, GL_TRUE); + st_TexImage(ctx, 2, texImage, internalFormat, width, height, 1, border, + 0, 0, data, &ctx->Unpack, imageSize, GL_TRUE); } @@ -1644,13 +1638,13 @@ st_get_default_texture(struct st_context *st) 16, 16, 1, 0, /* w, h, d, border */ GL_RGBA, MESA_FORMAT_RGBA8888); - st_TexImage(st->ctx, 2, target, - 0, GL_RGBA, /* level, intformat */ + st_TexImage(st->ctx, 2, + texImg, + GL_RGBA, /* level, intformat */ 16, 16, 1, 0, /* w, h, d, border */ GL_RGBA, GL_UNSIGNED_BYTE, pixels, &st->ctx->DefaultPacking, - texObj, texImg, - 0, 0); + 0, GL_FALSE); texObj->Sampler.MinFilter = GL_NEAREST; texObj->Sampler.MagFilter = GL_NEAREST; |