diff options
author | Brian Paul <[email protected]> | 2014-02-08 09:51:14 -0800 |
---|---|---|
committer | Brian Paul <[email protected]> | 2014-02-14 08:21:44 -0700 |
commit | 823fbfdca7165ac11eab2a7e168960f5874ebdc3 (patch) | |
tree | e89dcc3accdf6739f9e69746c973a065f3bfb25a /src/gallium/drivers/svga/svga_cmd.h | |
parent | d993ada50cf2f112bfff2bd7fbb5a6c25ca00306 (diff) |
svga: add new GBS commands
And update some existing commands.
Reviewed-by: Thomas Hellstrom <[email protected]>
Cc: "10.1" <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_cmd.h')
-rw-r--r-- | src/gallium/drivers/svga/svga_cmd.h | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/src/gallium/drivers/svga/svga_cmd.h b/src/gallium/drivers/svga/svga_cmd.h index 9bbe95f18b8..6f658bf3abf 100644 --- a/src/gallium/drivers/svga/svga_cmd.h +++ b/src/gallium/drivers/svga/svga_cmd.h @@ -46,6 +46,7 @@ struct svga_transfer; struct svga_winsys_context; struct svga_winsys_buffer; struct svga_winsys_surface; +struct svga_winsys_gb_shader; /* @@ -224,6 +225,91 @@ SVGA3D_SetShader(struct svga_winsys_context *swc, /* + * Guest-backed surface functions + */ + +enum pipe_error +SVGA3D_DefineGBShader(struct svga_winsys_context *swc, + struct svga_winsys_gb_shader *gbshader, + SVGA3dShaderType type, + uint32 sizeInBytes); + +enum pipe_error +SVGA3D_BindGBShader(struct svga_winsys_context *swc, + struct svga_winsys_gb_shader *gbshader); + +enum pipe_error +SVGA3D_SetGBShader(struct svga_winsys_context *swc, + SVGA3dShaderType type, + struct svga_winsys_gb_shader *gbshader); + +enum pipe_error +SVGA3D_DestroyGBShader(struct svga_winsys_context *swc, + struct svga_winsys_gb_shader *gbshader); + +enum pipe_error +SVGA3D_BindGBSurface(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface); + +enum pipe_error +SVGA3D_DefineGBContext(struct svga_winsys_context *swc); + +enum pipe_error +SVGA3D_DestroyGBContext(struct svga_winsys_context *swc); + +enum pipe_error +SVGA3D_BindGBContext(struct svga_winsys_context *swc); + +enum pipe_error +SVGA3D_InvalidateGBContext(struct svga_winsys_context *swc); + +enum pipe_error +SVGA3D_UpdateGBImage(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface, + const SVGA3dBox *box, + unsigned face, unsigned mipLevel); + +enum pipe_error +SVGA3D_UpdateGBSurface(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface); + + +enum pipe_error +SVGA3D_ReadbackGBImage(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface, + unsigned face, unsigned mipLevel); + + +enum pipe_error +SVGA3D_ReadbackGBSurface(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface); + + +enum pipe_error +SVGA3D_ReadbackGBImagePartial(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface, + unsigned face, unsigned mipLevel, + const SVGA3dBox *box, + bool invertBox); + + +enum pipe_error +SVGA3D_InvalidateGBImagePartial(struct svga_winsys_context *swc, + struct svga_winsys_surface *surface, + unsigned face, unsigned mipLevel, + const SVGA3dBox *box, + bool invertBox); + + +enum pipe_error +SVGA3D_SetGBShaderConstsInline(struct svga_winsys_context *swc, + unsigned regStart, + unsigned numRegs, + SVGA3dShaderType shaderType, + SVGA3dShaderConstType constType, + const void *values); + +/* * Queries */ |