[Mesa-dev] [PATCH 01/14] util: added util_set_index_buffer()
Brian Paul
brianp at vmware.com
Fri Aug 28 14:31:20 PDT 2015
Like util_set_vertex_buffers_count(), this basically just copies a
pipe_index_buffer object, taking care of refcounting.
---
src/gallium/auxiliary/util/u_helpers.c | 15 +++++++++++++++
src/gallium/auxiliary/util/u_helpers.h | 3 +++
2 files changed, 18 insertions(+)
diff --git a/src/gallium/auxiliary/util/u_helpers.c b/src/gallium/auxiliary/util/u_helpers.c
index ac1edcd..09619c1 100644
--- a/src/gallium/auxiliary/util/u_helpers.c
+++ b/src/gallium/auxiliary/util/u_helpers.c
@@ -88,3 +88,18 @@ void util_set_vertex_buffers_count(struct pipe_vertex_buffer *dst,
*dst_count = util_last_bit(enabled_buffers);
}
+
+
+void
+util_set_index_buffer(struct pipe_index_buffer *dst,
+ const struct pipe_index_buffer *src)
+{
+ if (src) {
+ pipe_resource_reference(&dst->buffer, src->buffer);
+ memcpy(dst, src, sizeof(*dst));
+ }
+ else {
+ pipe_resource_reference(&dst->buffer, NULL);
+ memset(dst, 0, sizeof(*dst));
+ }
+}
diff --git a/src/gallium/auxiliary/util/u_helpers.h b/src/gallium/auxiliary/util/u_helpers.h
index 09c7116..f25f280 100644
--- a/src/gallium/auxiliary/util/u_helpers.h
+++ b/src/gallium/auxiliary/util/u_helpers.h
@@ -44,6 +44,9 @@ void util_set_vertex_buffers_count(struct pipe_vertex_buffer *dst,
const struct pipe_vertex_buffer *src,
unsigned start_slot, unsigned count);
+void util_set_index_buffer(struct pipe_index_buffer *dst,
+ const struct pipe_index_buffer *src);
+
#ifdef __cplusplus
}
#endif
--
1.9.1
More information about the mesa-dev
mailing list