summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/softpipe/sp_tile.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/pipe/softpipe/sp_tile.h')
-rw-r--r--src/mesa/pipe/softpipe/sp_tile.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/mesa/pipe/softpipe/sp_tile.h b/src/mesa/pipe/softpipe/sp_tile.h
index f4808b99d2..86c17180bf 100644
--- a/src/mesa/pipe/softpipe/sp_tile.h
+++ b/src/mesa/pipe/softpipe/sp_tile.h
@@ -33,10 +33,24 @@
struct softpipe_context;
struct quad_header;
-void quad_shade( struct softpipe_context *softpipe,
- struct quad_header *quad );
-void quad_output( struct softpipe_context *softpipe,
- struct quad_header *quad );
+struct quad_stage {
+ struct softpipe_context *softpipe;
+
+ struct quad_stage *next;
+
+ /** the stage action */
+ void (*run)(struct quad_stage *qs, struct quad_header *quad);
+};
+
+
+
+struct quad_stage *sp_quad_shade_stage( struct softpipe_context *softpipe );
+struct quad_stage *sp_quad_depth_test_stage( struct softpipe_context *softpipe );
+struct quad_stage *sp_quad_blend_stage( struct softpipe_context *softpipe );
+struct quad_stage *sp_quad_output_stage( struct softpipe_context *softpipe );
+
+void
+sp_build_quad_pipeline(struct softpipe_context *sp);
#endif