r300g: Correct viewport setup for SW TCL.
[mesa.git] / src / gallium / drivers / r300 / r300_render.h
index 27b5e6a9630b0a79b2cc92376134e4b408a84c20..71dea218be6ee72812c6daf0b5d070ef8c7508c6 100644 (file)
 #ifndef R300_RENDER_H
 #define R300_RENDER_H
 
-uint32_t r300_translate_primitive(unsigned prim);
+void r500_emit_draw_arrays_immediate(struct r300_context *r300,
+                                     unsigned mode,
+                                     unsigned start,
+                                     unsigned count);
+
+void r500_emit_draw_arrays(struct r300_context *r300,
+                           unsigned mode,
+                           unsigned count);
+
+void r500_emit_draw_elements(struct r300_context *r300,
+                             struct pipe_resource* indexBuffer,
+                             unsigned indexSize,
+                             unsigned minIndex,
+                             unsigned maxIndex,
+                             unsigned mode,
+                             unsigned start,
+                             unsigned count);
+
+void r300_emit_draw_arrays_immediate(struct r300_context *r300,
+                                     unsigned mode,
+                                     unsigned start,
+                                     unsigned count);
+
+void r300_emit_draw_arrays(struct r300_context *r300,
+                           unsigned mode,
+                           unsigned count);
+
+void r300_emit_draw_elements(struct r300_context *r300,
+                             struct pipe_resource* indexBuffer,
+                             unsigned indexSize,
+                             unsigned minIndex,
+                             unsigned maxIndex,
+                             unsigned mode,
+                             unsigned start,
+                             unsigned count);
 
 void r300_draw_range_elements(struct pipe_context* pipe,
-                              struct pipe_buffer* indexBuffer,
+                              struct pipe_resource* indexBuffer,
                               unsigned indexSize,
+                              int indexBias,
                               unsigned minIndex,
                               unsigned maxIndex,
                               unsigned mode,
@@ -35,8 +70,8 @@ void r300_draw_range_elements(struct pipe_context* pipe,
                               unsigned count);
 
 void r300_draw_elements(struct pipe_context* pipe,
-                        struct pipe_buffer* indexBuffer,
-                        unsigned indexSize, unsigned mode,
+                        struct pipe_resource* indexBuffer,
+                        unsigned indexSize, int indexBias, unsigned mode,
                         unsigned start, unsigned count);
 
 void r300_draw_arrays(struct pipe_context* pipe, unsigned mode,
@@ -48,8 +83,9 @@ void r300_swtcl_draw_arrays(struct pipe_context* pipe,
                             unsigned count);
 
 void r300_swtcl_draw_range_elements(struct pipe_context* pipe,
-                                    struct pipe_buffer* indexBuffer,
+                                    struct pipe_resource* indexBuffer,
                                     unsigned indexSize,
+                                    int indexBias,
                                     unsigned minIndex,
                                     unsigned maxIndex,
                                     unsigned mode,