summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/draw/draw_pt.h
diff options
context:
space:
mode:
authorChia-I Wu <[email protected]>2010-08-08 00:53:02 +0800
committerChia-I Wu <[email protected]>2010-08-16 20:46:27 +0800
commitf132498347c41294042db0cc6830abe928d827de (patch)
tree946116c4018aa6376f476e65e58d01283037a24c /src/gallium/auxiliary/draw/draw_pt.h
parentf141abdc8fdbff41e16b0ce53fa3fa8fba32a7f9 (diff)
draw: Add prim flags to middle ends.
Update the middle end interface to pass the primitive flags from the frontends to the pipeline. No frontend sets the flags yet.
Diffstat (limited to 'src/gallium/auxiliary/draw/draw_pt.h')
-rw-r--r--src/gallium/auxiliary/draw/draw_pt.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/gallium/auxiliary/draw/draw_pt.h b/src/gallium/auxiliary/draw/draw_pt.h
index 44356fba4c5..8d69b8c8c8d 100644
--- a/src/gallium/auxiliary/draw/draw_pt.h
+++ b/src/gallium/auxiliary/draw/draw_pt.h
@@ -80,6 +80,8 @@ struct draw_pt_front_end {
/* The "middle end" - prepares actual hardware vertices for the
* hardware backend.
*
+ * prim_flags is as defined by pipe_draw_info::flags.
+ *
* Currently two versions of this:
* - fetch, vertex shade, cliptest, prim-pipeline
* - fetch, emit (ie passthrough)
@@ -94,11 +96,13 @@ struct draw_pt_middle_end {
const unsigned *fetch_elts,
unsigned fetch_count,
const ushort *draw_elts,
- unsigned draw_count );
+ unsigned draw_count,
+ unsigned prim_flags );
void (*run_linear)(struct draw_pt_middle_end *,
unsigned start,
- unsigned count);
+ unsigned count,
+ unsigned prim_flags );
/* Transform all vertices in a linear range and then draw them with
* the supplied element list. May fail and return FALSE.
@@ -107,7 +111,8 @@ struct draw_pt_middle_end {
unsigned fetch_start,
unsigned fetch_count,
const ushort *draw_elts,
- unsigned draw_count );
+ unsigned draw_count,
+ unsigned prim_flags );
int (*get_max_vertex_count)( struct draw_pt_middle_end * );