summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/savage/savagetex.h
diff options
context:
space:
mode:
authorFelix Kuehling <fxkuehl@gmx.de>2004-03-07 20:41:42 +0000
committerFelix Kuehling <fxkuehl@gmx.de>2004-03-07 20:41:42 +0000
commit156df3e83417149efc1f18e9e47ed7d5dbba629c (patch)
tree2fadc13d353c40d052b9960d42c15b74d17d74cd /src/mesa/drivers/dri/savage/savagetex.h
parent2cd815b66009eea8e06dc4b6dfd32cb7898ff416 (diff)
Rewrote tiled texture upload. Small mipmap levels work correctly now.
Diffstat (limited to 'src/mesa/drivers/dri/savage/savagetex.h')
-rw-r--r--src/mesa/drivers/dri/savage/savagetex.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/savage/savagetex.h b/src/mesa/drivers/dri/savage/savagetex.h
index 9ff85e2e32..d26f625f4d 100644
--- a/src/mesa/drivers/dri/savage/savagetex.h
+++ b/src/mesa/drivers/dri/savage/savagetex.h
@@ -61,12 +61,20 @@ typedef struct {
GLuint hwPhysAddress;
} savage_texture_parameter_t;
+/** \brief Texture tiling information */
+typedef struct savage_tileinfo_t {
+ GLuint width, height; /**< tile width and height */
+ GLuint wInSub, hInSub; /**< tile width and height in subtiles */
+ GLuint subWidth, subHeight; /**< subtile width and height */
+ GLuint tinyOffset[2]; /**< internal offsets size 1 and 2 images */
+} savageTileInfo, *savageTileInfoPtr;
+
struct savage_texture_object_t {
struct savage_texture_object_t *next, *prev;
struct gl_texture_object *globj;
GLuint age;
-
+ const savageTileInfo *tileInfo;
GLuint texelBytes;
GLuint totalSize;
GLuint bound;
@@ -100,7 +108,7 @@ struct savage_texture_object_t {
#define __HWParseTexEnvCombine(imesa, flag0, TexCtrl, TexBlendCtrl)
-extern void (*savageUpdateTextureState)( GLcontext *ctx );
+void savageUpdateTextureState( GLcontext *ctx );
void savageDDInitTextureFuncs( struct dd_function_table *functions );
void savageDestroyTexObj( savageContextPtr imesa, savageTextureObjectPtr t);