Use _mesa_format_image_size() instead.
GLsizei width, GLsizei height, GLsizei depth,
GLuint mesaFormat)
{
- GLuint size = _mesa_compressed_texture_size(ctx, width, height, depth, mesaFormat);
+ GLuint size = _mesa_format_image_size(mesaFormat, width, height, depth);
if (mesaFormat == MESA_FORMAT_RGB_DXT1 ||
mesaFormat == MESA_FORMAT_RGBA_DXT1) {
/* allocate mipmap buffer */
assert(!texImage->Data);
if (_mesa_is_format_compressed(texImage->TexFormat)) {
- texImage->CompressedSize = _mesa_compressed_texture_size(ctx,
- mml->width,
- mml->height,
- 1,
- internalFormat);
+ texImage->CompressedSize = _mesa_format_image_size(texImage->TexFormat,
+ mml->width,
+ mml->height, 1);
dstRowStride = _mesa_compressed_row_stride(internalFormat, mml->width);
texImage->Data = _mesa_malloc(texImage->CompressedSize);
} else {
/* allocate new storage for texture image, if needed */
if (!texImage->Data) {
- texImage->CompressedSize = _mesa_compressed_texture_size(ctx,
- mml->width,
- mml->height,
- 1,
- internalFormat);
+ texImage->CompressedSize = _mesa_format_image_size(texImage->TexFormat,
+ mml->width,
+ mml->height, 1);
texImage->Data = _mesa_malloc(texImage->CompressedSize);
if (!texImage->Data) {
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glCompressedTexImage2D");
}
-
-/**
- * Return number of bytes needed to store a texture of the given size
- * using the specified (compressed?) format.
- * This is called via the ctx->Driver.CompressedTextureSize function,
- * unless a device driver overrides it. A driver might override this
- * if it needs to use an unusual or padded texture memory layout.
- *
- * \param width texture width in texels.
- * \param height texture height in texels.
- * \param depth texture depth in texels.
- * \param mesaFormat one of the MESA_FORMAT_* compressed formats
- *
- * \return size in bytes, or zero if bad format
- */
-GLuint
-_mesa_compressed_texture_size( GLcontext *ctx,
- GLsizei width, GLsizei height, GLsizei depth,
- gl_format mesaFormat )
-{
- return _mesa_format_image_size(mesaFormat, width, height, depth);
-}
-
-
/**
* As above, but format is specified by a GLenum (GL_COMPRESSED_*) token.
*
extern GLuint
_mesa_get_compressed_formats(GLcontext *ctx, GLint *formats, GLboolean all);
-extern GLuint
-_mesa_compressed_texture_size( GLcontext *ctx,
- GLsizei width, GLsizei height, GLsizei depth,
- gl_format mesaFormat );
-
extern GLuint
_mesa_compressed_texture_size_glenum(GLcontext *ctx,
GLsizei width, GLsizei height,
/* no-op macros */
#define _mesa_get_compressed_formats( c, f ) 0
-#define _mesa_compressed_texture_size( c, w, h, d, f ) 0
#define _mesa_compressed_texture_size_glenum( c, w, h, d, f ) 0
#define _mesa_compressed_row_stride( f, w) 0
#define _mesa_compressed_image_address(c, r, i, f, w, i2 ) 0
struct gl_texture_object *texObj,
struct gl_texture_image *texImage)
{
- GLuint size;
-
- /* don't use texImage->CompressedSize since that may be padded out */
- size = _mesa_compressed_texture_size(ctx, texImage->Width, texImage->Height,
- texImage->Depth,
- texImage->TexFormat);
+ const GLuint size = _mesa_format_image_size(texImage->TexFormat,
+ texImage->Width,
+ texImage->Height,
+ texImage->Depth);
if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) {
/* pack texture image into a PBO */
/* GL_ARB_texture_compression */
case GL_TEXTURE_COMPRESSED_IMAGE_SIZE:
if (_mesa_is_format_compressed(img->TexFormat) && !isProxy) {
- /* Don't use ctx->Driver.CompressedTextureSize() since that
- * may returned a padded hardware size.
- */
- *params = _mesa_compressed_texture_size(ctx, img->Width,
- img->Height, img->Depth,
- texFormat);
+ *params = _mesa_format_image_size(texFormat, img->Width,
+ img->Height, img->Depth);
}
else {
_mesa_error(ctx, GL_INVALID_OPERATION,