/** * Free a swrast_texture_image (a subclass of gl_texture_image). * Called via ctx->Driver.DeleteTextureImage(). */ void _swrast_delete_texture_image(struct gl_context *ctx, struct gl_texture_image *texImage) { /* Nothing special for the subclass yet */ _mesa_delete_texture_image(ctx, texImage); }
/** * Deallocate a texture object struct. It should have already been * removed from the texture object pool. * * \param shared the shared GL state to which the object belongs. * \param texOjb the texture object to delete. */ void _mesa_delete_texture_object( GLcontext *ctx, struct gl_texture_object *texObj ) { GLuint i, face; (void) ctx; _mesa_free_colortable_data(&texObj->Palette); /* free the texture images */ for (face = 0; face < 6; face++) { for (i = 0; i < MAX_TEXTURE_LEVELS; i++) { if (texObj->Image[face][i]) { _mesa_delete_texture_image( ctx, texObj->Image[face][i] ); } } } /* destroy the mutex -- it may have allocated memory (eg on bsd) */ _glthread_DESTROY_MUTEX(texObj->Mutex); /* free this object */ _mesa_free(texObj); }
/** * Delete a texture image object. */ static void radeonDeleteTextureImage(struct gl_context *ctx, struct gl_texture_image *img) { /* nothing special (yet) for radeon_texture_image */ _mesa_delete_texture_image(ctx, img); }