summaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/softpipe
diff options
context:
space:
mode:
authorZack Rusin <[email protected]>2007-09-19 12:35:29 -0400
committerZack Rusin <[email protected]>2007-09-19 13:12:09 -0400
commitc0bf7322088715bb411068c3d631b0c4be8cdff5 (patch)
treeacc04e8f411800c3dbdc6672585d38894dd11b5d /src/mesa/pipe/softpipe
parentb3cc74aa448f42340cbd01578a51f94eb2949618 (diff)
Redo the cso cache to map driver data in a lot more pleasing way.
Drivers can now create whatever they want from the state template. We use cso_state object to store the template (necessary during lookups), and the driver data. Convert blend state to the new semantics.
Diffstat (limited to 'src/mesa/pipe/softpipe')
-rw-r--r--src/mesa/pipe/softpipe/sp_state.h6
-rw-r--r--src/mesa/pipe/softpipe/sp_state_blend.c10
2 files changed, 8 insertions, 8 deletions
diff --git a/src/mesa/pipe/softpipe/sp_state.h b/src/mesa/pipe/softpipe/sp_state.h
index 04cc743bd03..8e7776a6c7d 100644
--- a/src/mesa/pipe/softpipe/sp_state.h
+++ b/src/mesa/pipe/softpipe/sp_state.h
@@ -33,13 +33,13 @@
#include "pipe/p_state.h"
-const struct pipe_blend_state *
+void *
softpipe_create_blend_state(struct pipe_context *,
const struct pipe_blend_state *);
void softpipe_bind_blend_state(struct pipe_context *,
- const struct pipe_blend_state *);
+ void *);
void softpipe_delete_blend_state(struct pipe_context *,
- const struct pipe_blend_state *);
+ void *);
const struct pipe_sampler_state *
softpipe_create_sampler_state(struct pipe_context *,
diff --git a/src/mesa/pipe/softpipe/sp_state_blend.c b/src/mesa/pipe/softpipe/sp_state_blend.c
index 83f456ded55..7a94e82d6f8 100644
--- a/src/mesa/pipe/softpipe/sp_state_blend.c
+++ b/src/mesa/pipe/softpipe/sp_state_blend.c
@@ -30,7 +30,7 @@
#include "sp_context.h"
#include "sp_state.h"
-const struct pipe_blend_state *
+void *
softpipe_create_blend_state(struct pipe_context *pipe,
const struct pipe_blend_state *blend)
{
@@ -41,19 +41,19 @@ softpipe_create_blend_state(struct pipe_context *pipe,
}
void softpipe_bind_blend_state( struct pipe_context *pipe,
- const struct pipe_blend_state *blend )
+ void *blend )
{
struct softpipe_context *softpipe = softpipe_context(pipe);
- softpipe->blend = blend;
+ softpipe->blend = (const struct pipe_blend_state *)blend;
softpipe->dirty |= SP_NEW_BLEND;
}
void softpipe_delete_blend_state(struct pipe_context *pipe,
- const struct pipe_blend_state *blend )
+ void *blend )
{
- free((struct pipe_blend_state *)blend);
+ free(blend);
}