summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i915tex/intel_tex_image.c
diff options
context:
space:
mode:
authorJouk <joukj@tarantella.(none)>2007-06-08 13:38:24 +0200
committerJouk <joukj@tarantella.(none)>2007-06-08 13:38:24 +0200
commit55f8b7053065ce88296608071feed6f9540f6c0d (patch)
tree86ac301ed5805c895985040caf56f857de017233 /src/mesa/drivers/dri/i915tex/intel_tex_image.c
parent518f9168862b2096278ae14a65c8c854c208e004 (diff)
parent7b559a91028d297b34df9ec939bd4d00fad6027c (diff)
Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa
Diffstat (limited to 'src/mesa/drivers/dri/i915tex/intel_tex_image.c')
-rw-r--r--src/mesa/drivers/dri/i915tex/intel_tex_image.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_image.c b/src/mesa/drivers/dri/i915tex/intel_tex_image.c
index 42679ef9db..f790b1e6f7 100644
--- a/src/mesa/drivers/dri/i915tex/intel_tex_image.c
+++ b/src/mesa/drivers/dri/i915tex/intel_tex_image.c
@@ -385,7 +385,6 @@ intelTexImage(GLcontext * ctx,
}
}
-
assert(!intelImage->mt);
if (intelObj->mt &&
@@ -667,3 +666,26 @@ intelGetCompressedTexImage(GLcontext *ctx, GLenum target, GLint level,
texObj, texImage, 1);
}
+
+void
+intelSetTexOffset(__DRIcontext *pDRICtx, GLint texname,
+ unsigned long long offset, GLint depth, GLuint pitch)
+{
+ struct intel_context *intel = (struct intel_context*)
+ ((__DRIcontextPrivate*)pDRICtx->private)->driverPrivate;
+ struct gl_texture_object *tObj = _mesa_lookup_texture(&intel->ctx, texname);
+ struct intel_texture_object *intelObj = intel_texture_object(tObj);
+
+ if (!intelObj)
+ return;
+
+ if (intelObj->mt)
+ intel_miptree_release(intel, &intelObj->mt);
+
+ intelObj->imageOverride = GL_TRUE;
+ intelObj->depthOverride = depth;
+ intelObj->pitchOverride = pitch;
+
+ if (offset)
+ intelObj->textureOffset = offset;
+}