gallivm: Cleanup/simplify lp_build_const_string_variable.
[mesa.git] / src / mesa / state_tracker / st_draw.h
index 3e0face656b0a040cdcc8d6b4cac759d5a9fd5a3..47bdb11f81cdda4746ac343a1fe6b744eeab2835 100644 (file)
 #ifndef ST_DRAW_H
 #define ST_DRAW_H
 
-struct _mesa_prim;
+#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_destroy_draw( struct st_context *st );
 
 extern void
-st_draw_vbo(GLcontext *ctx,
+st_draw_vbo(struct gl_context *ctx,
             const struct gl_client_array **arrays,
             const struct _mesa_prim *prims,
             GLuint nr_prims,
             const struct _mesa_index_buffer *ib,
            GLboolean index_bounds_valid,
             GLuint min_index,
-            GLuint max_index);
+            GLuint max_index,
+            struct gl_transform_feedback_object *tfb_vertcount);
 
 extern void
-st_feedback_draw_vbo(GLcontext *ctx,
+st_feedback_draw_vbo(struct gl_context *ctx,
                      const struct gl_client_array **arrays,
                      const struct _mesa_prim *prims,
                      GLuint nr_prims,
                      const struct _mesa_index_buffer *ib,
                     GLboolean index_bounds_valid,
                      GLuint min_index,
-                     GLuint max_index);
+                     GLuint max_index,
+                     struct gl_transform_feedback_object *tfb_vertcount);
 
 /* Internal function:
  */
-extern GLuint
+extern enum pipe_format
 st_pipe_vertex_format(GLenum type, GLuint size, GLenum format,
-                      GLboolean normalized);
+                      GLboolean normalized, GLboolean integer);
 
 
 /**