gallium: add PIPE_BIND_COMMAND_ARGS_BUFFER
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Fri, 5 Apr 2013 12:29:35 +0000 (14:29 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 1 Jul 2014 22:47:09 +0000 (00:47 +0200)
Intended for use with GL_ARB_draw_indirect's DRAW_INDIRECT_BUFFER
target or for D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS.

src/gallium/docs/source/screen.rst
src/gallium/include/pipe/p_defines.h

index 5e01df50875ca7827697c0751890c1270ec9243b..40ad823b487e314a18a5c9b2b6a96dd88e565a7d 100644 (file)
@@ -369,6 +369,9 @@ resources might be created and handled quite differently.
   bound to the graphics pipeline as a shader resource.
 * ``PIPE_BIND_COMPUTE_RESOURCE``: A buffer or texture that can be
   bound to the compute program as a shader resource.
+* ``PIPE_BIND_COMMAND_ARGS_BUFFER``: A buffer that may be sourced by the
+  GPU command processor. It can contain, for example, the arguments to
+  indirect draw calls.
 
 .. _pipe_usage:
 
index 702bb0b830b9aade1b0706828237d083c2567247..0c958cf050ade5b05ea547a67a6a8cfb6fe0226e 100644 (file)
@@ -350,6 +350,7 @@ enum pipe_flush_flags {
 #define PIPE_BIND_GLOBAL               (1 << 18) /* set_global_binding */
 #define PIPE_BIND_SHADER_RESOURCE      (1 << 19) /* set_shader_resources */
 #define PIPE_BIND_COMPUTE_RESOURCE     (1 << 20) /* set_compute_resources */
+#define PIPE_BIND_COMMAND_ARGS_BUFFER  (1 << 21) /* pipe_draw_info.indirect */
 
 /* The first two flags above were previously part of the amorphous
  * TEXTURE_USAGE, most of which are now descriptions of the ways a