r300/radeon: move face_for_target

This commit is contained in:
Dave Airlie 2009-01-21 18:41:11 +10:00
parent e0ec3243e8
commit 2bf31b7ffd
3 changed files with 18 additions and 21 deletions

View file

@ -509,23 +509,6 @@ static void r300_teximage(
}
}
static GLuint face_for_target(GLenum target)
{
switch (target) {
case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
return (GLuint) target - (GLuint) GL_TEXTURE_CUBE_MAP_POSITIVE_X;
default:
return 0;
}
}
static void r300TexImage1D(GLcontext * ctx, GLenum target, GLint level,
GLint internalFormat,
GLint width, GLint border,
@ -546,7 +529,7 @@ static void r300TexImage2D(GLcontext * ctx, GLenum target, GLint level,
struct gl_texture_object *texObj,
struct gl_texture_image *texImage)
{
GLuint face = face_for_target(target);
GLuint face = radeon_face_for_target(target);
r300_teximage(ctx, 2, face, level, internalFormat, width, height, 1,
0, format, type, pixels, packing, texObj, texImage, 0);
@ -559,7 +542,7 @@ static void r300CompressedTexImage2D(GLcontext * ctx, GLenum target,
struct gl_texture_object *texObj,
struct gl_texture_image *texImage)
{
GLuint face = face_for_target(target);
GLuint face = radeon_face_for_target(target);
r300_teximage(ctx, 2, face, level, internalFormat, width, height, 1,
imageSize, 0, 0, data, 0, texObj, texImage, 1);

View file

@ -1447,7 +1447,20 @@ void radeonUnmapTexture(GLcontext *ctx, struct gl_texture_object *texObj)
radeon_bo_unmap(t->mt->bo);
}
GLuint radeon_face_for_target(GLenum target)
{
switch (target) {
case GL_TEXTURE_CUBE_MAP_POSITIVE_X:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_X:
case GL_TEXTURE_CUBE_MAP_POSITIVE_Y:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:
case GL_TEXTURE_CUBE_MAP_POSITIVE_Z:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
return (GLuint) target - (GLuint) GL_TEXTURE_CUBE_MAP_POSITIVE_X;
default:
return 0;
}
}
/**
* Wraps Mesa's implementation to ensure that the base level image is mapped.
@ -1457,7 +1470,7 @@ void radeonUnmapTexture(GLcontext *ctx, struct gl_texture_object *texObj)
*/
void radeon_generate_mipmap(GLcontext* ctx, GLenum target, struct gl_texture_object *texObj)
{
GLuint face = face_for_target(target);
GLuint face = radeon_face_for_target(target);
radeon_texture_image *baseimage = get_radeon_texture_image(texObj->Image[face][texObj->BaseLevel]);
radeon_teximage_map(baseimage, GL_FALSE);

View file

@ -42,4 +42,5 @@ void radeon_teximage_unmap(radeon_texture_image *image);
void radeonMapTexture(GLcontext *ctx, struct gl_texture_object *texObj);
void radeonUnmapTexture(GLcontext *ctx, struct gl_texture_object *texObj);
void radeon_generate_mipmap(GLcontext* ctx, GLenum target, struct gl_texture_object *texObj);
GLuint radeon_face_for_target(GLenum target);
#endif