[Mesa-dev] [PATCH] Remove gallium draw_arrays() and draw_arrays_instanced() functions
Arnas Milasevicius
giant1gf at gmail.com
Wed Jun 5 13:57:19 PDT 2013
Because these 2 functions are only used in state_tracker's st_draw_feedback.c file, I moved them there from draw_pt.c and made them static.
---
src/gallium/auxiliary/draw/draw_context.h | 10 --------
src/gallium/auxiliary/draw/draw_pt.c | 40 ------------------------------
src/mesa/state_tracker/st_draw_feedback.c | 41 +++++++++++++++++++++++++++++++
3 files changed, 41 insertions(+), 50 deletions(-)
diff --git a/src/gallium/auxiliary/draw/draw_context.h b/src/gallium/auxiliary/draw/draw_context.h
index 2d843b7..6d39da9 100644
--- a/src/gallium/auxiliary/draw/draw_context.h
+++ b/src/gallium/auxiliary/draw/draw_context.h
@@ -241,16 +241,6 @@ draw_set_mapped_so_targets(struct draw_context *draw,
void draw_vbo(struct draw_context *draw,
const struct pipe_draw_info *info);
-void draw_arrays(struct draw_context *draw, unsigned prim,
- unsigned start, unsigned count);
-
-void
-draw_arrays_instanced(struct draw_context *draw,
- unsigned mode,
- unsigned start,
- unsigned count,
- unsigned startInstance,
- unsigned instanceCount);
/*******************************************************************************
diff --git a/src/gallium/auxiliary/draw/draw_pt.c b/src/gallium/auxiliary/draw/draw_pt.c
index ce36ed0..131bd13 100644
--- a/src/gallium/auxiliary/draw/draw_pt.c
+++ b/src/gallium/auxiliary/draw/draw_pt.c
@@ -413,46 +413,6 @@ draw_pt_arrays_restart(struct draw_context *draw,
}
-
-/**
- * Non-instanced drawing.
- * \sa draw_arrays_instanced
- */
-void
-draw_arrays(struct draw_context *draw, unsigned prim,
- unsigned start, unsigned count)
-{
- draw_arrays_instanced(draw, prim, start, count, 0, 1);
-}
-
-
-/**
- * Instanced drawing.
- * \sa draw_vbo
- */
-void
-draw_arrays_instanced(struct draw_context *draw,
- unsigned mode,
- unsigned start,
- unsigned count,
- unsigned startInstance,
- unsigned instanceCount)
-{
- struct pipe_draw_info info;
-
- util_draw_init_info(&info);
-
- info.mode = mode;
- info.start = start;
- info.count = count;
- info.start_instance = startInstance;
- info.instance_count = instanceCount;
- info.min_index = start;
- info.max_index = start + count - 1;
-
- draw_vbo(draw, &info);
-}
-
/**
* Resolve true values within pipe_draw_info.
* If we're rendering from transform feedback/stream output
diff --git a/src/mesa/state_tracker/st_draw_feedback.c b/src/mesa/state_tracker/st_draw_feedback.c
index b19d913..56e3018 100644
--- a/src/mesa/state_tracker/st_draw_feedback.c
+++ b/src/mesa/state_tracker/st_draw_feedback.c
@@ -40,6 +40,7 @@
#include "pipe/p_context.h"
#include "pipe/p_defines.h"
#include "util/u_inlines.h"
+#include "util/u_draw.h"
#include "draw/draw_private.h"
#include "draw/draw_context.h"
@@ -81,6 +82,46 @@ set_feedback_vertex_format(struct gl_context *ctx)
/**
+ * Instanced drawing.
+ * \sa draw_vbo
+ */
+static void
+draw_arrays_instanced(struct draw_context *draw,
+ unsigned mode,
+ unsigned start,
+ unsigned count,
+ unsigned startInstance,
+ unsigned instanceCount)
+{
+ struct pipe_draw_info info;
+
+ util_draw_init_info(&info);
+
+ info.mode = mode;
+ info.start = start;
+ info.count = count;
+ info.start_instance = startInstance;
+ info.instance_count = instanceCount;
+ info.min_index = start;
+ info.max_index = start + count - 1;
+
+ draw_vbo(draw, &info);
+}
+
+
+/**
+ * Non-instanced drawing.
+ * \sa draw_arrays_instanced
+ */
+static void
+draw_arrays(struct draw_context *draw, unsigned prim,
+ unsigned start, unsigned count)
+{
+ draw_arrays_instanced(draw, prim, start, count, 0, 1);
+}
+
+
+/**
* Called by VBO to draw arrays when in selection or feedback mode and
* to implement glRasterPos.
* This is very much like the normal draw_vbo() function above.
--
1.8.3
More information about the mesa-dev
mailing list