summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/failover/fo_context.h
diff options
context:
space:
mode:
authorZack Rusin <zack@tungstengraphics.com>2007-09-19 12:35:29 -0400
committerZack Rusin <zack@tungstengraphics.com>2007-09-19 13:12:09 -0400
commitc0bf7322088715bb411068c3d631b0c4be8cdff5 (patch)
treeacc04e8f411800c3dbdc6672585d38894dd11b5d /src/mesa/pipe/failover/fo_context.h
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/failover/fo_context.h')
-rw-r--r--src/mesa/pipe/failover/fo_context.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/pipe/failover/fo_context.h b/src/mesa/pipe/failover/fo_context.h
index 9556a17e4d..ea7fb109b3 100644
--- a/src/mesa/pipe/failover/fo_context.h
+++ b/src/mesa/pipe/failover/fo_context.h
@@ -60,13 +60,17 @@
#define FO_HW 0
#define FO_SW 1
+struct fo_state {
+ void *sw_state;
+ void *hw_state;
+};
struct failover_context {
struct pipe_context pipe; /**< base class */
/* The most recent drawing state as set by the driver:
*/
- const struct pipe_blend_state *blend;
+ const struct fo_state *blend;
const struct pipe_sampler_state *sampler[PIPE_MAX_SAMPLERS];
const struct pipe_depth_stencil_state *depth_stencil;
const struct pipe_rasterizer_state *rasterizer;