summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2017-01-26 23:27:36 +0100
committerMarek Olšák <marek.olsak@amd.com>2017-02-14 21:46:16 +0100
commit998396c32e4e95fef5a1efef6cb1a9efb0868aa6 (patch)
tree9765c0565dafce40c8aeec8b3f38227ea5473cf2
parentd71bc0d741a20d146e8580e80e148c291aad0e64 (diff)
gallium/u_upload_mgr: add a helper that creates the default uploader
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Tested-by: Charmaine Lee <charmainel@vmware.com>
-rw-r--r--src/gallium/auxiliary/util/u_upload_mgr.c9
-rw-r--r--src/gallium/auxiliary/util/u_upload_mgr.h7
2 files changed, 16 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/util/u_upload_mgr.c b/src/gallium/auxiliary/util/u_upload_mgr.c
index cfef1f0693b..11662e7e9b3 100644
--- a/src/gallium/auxiliary/util/u_upload_mgr.c
+++ b/src/gallium/auxiliary/util/u_upload_mgr.c
@@ -86,6 +86,15 @@ u_upload_create(struct pipe_context *pipe, unsigned default_size,
return upload;
}
+struct u_upload_mgr *
+u_upload_create_default(struct pipe_context *pipe)
+{
+ return u_upload_create(pipe, 1024 * 1024,
+ PIPE_BIND_VERTEX_BUFFER |
+ PIPE_BIND_INDEX_BUFFER |
+ PIPE_BIND_CONSTANT_BUFFER,
+ PIPE_USAGE_STREAM);
+}
static void upload_unmap_internal(struct u_upload_mgr *upload, boolean destroying)
{
diff --git a/src/gallium/auxiliary/util/u_upload_mgr.h b/src/gallium/auxiliary/util/u_upload_mgr.h
index b36e9e5d9db..fcd6235847f 100644
--- a/src/gallium/auxiliary/util/u_upload_mgr.h
+++ b/src/gallium/auxiliary/util/u_upload_mgr.h
@@ -52,6 +52,13 @@ u_upload_create(struct pipe_context *pipe, unsigned default_size,
unsigned bind, enum pipe_resource_usage usage);
/**
+ * Create the default uploader for pipe_context. Only pipe_context::screen
+ * needs to be set for this to succeed.
+ */
+struct u_upload_mgr *
+u_upload_create_default(struct pipe_context *pipe);
+
+/**
* Destroy the upload manager.
*/
void u_upload_destroy( struct u_upload_mgr *upload );