glthread: track instance divisor changes
[mesa.git] / src / mesa / state_tracker / st_draw.h
index d85c3b7facdd32183fb55d6eb60f74fba37f6bfe..d04277a23258799e200547dbe9d0dd720b3d3060 100644 (file)
 #ifndef ST_DRAW_H
 #define ST_DRAW_H
 
-#include "main/compiler.h"
 #include "main/glheader.h"
 
 struct _mesa_index_buffer;
 struct _mesa_prim;
-struct gl_client_array;
 struct gl_context;
 struct st_context;
 
-void st_init_draw( struct st_context *st );
+void st_init_draw_functions(struct dd_function_table *functions);
 
 void st_destroy_draw( struct st_context *st );
 
-extern void
-st_draw_vbo(struct gl_context *ctx,
-            const struct _mesa_prim *prims,
-            GLuint nr_prims,
-            const struct _mesa_index_buffer *ib,
-           GLboolean index_bounds_valid,
-            GLuint min_index,
-            GLuint max_index,
-            struct gl_transform_feedback_object *tfb_vertcount,
-            unsigned stream,
-            struct gl_buffer_object *indirect);
+struct draw_context *st_get_draw_context(struct st_context *st);
 
 extern void
 st_feedback_draw_vbo(struct gl_context *ctx,
@@ -67,9 +55,10 @@ st_feedback_draw_vbo(struct gl_context *ctx,
                     GLboolean index_bounds_valid,
                      GLuint min_index,
                      GLuint max_index,
+                     GLuint num_instances,
+                     GLuint base_instance,
                      struct gl_transform_feedback_object *tfb_vertcount,
-                     unsigned stream,
-                     struct gl_buffer_object *indirect);
+                     unsigned stream);
 
 /**
  * When drawing with VBOs, the addresses specified with