aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/include/pipe
diff options
context:
space:
mode:
authorChristoph Bumiller <[email protected]>2012-07-25 13:47:58 +0200
committerChristoph Bumiller <[email protected]>2012-07-28 14:58:18 +0200
commit5d5af7d359e0060fa00b90a8f04900b96f9058b0 (patch)
treea104989f811f7c0b7712fb6f7e73025bbf31ce0b /src/gallium/include/pipe
parent51e41a0d894109249448ecc6a6bfc09e095acada (diff)
gallium: specify resource_resolve destination via a pipe_surface
The format member of pipe_surface may differ from that of the pipe_resource, which is used to communicate, for instance, whether sRGB encode should be enabled in the resolve operation or not. Fixes resolve to sRGB surfaces in mesa/st when GL_FRAMEBUFFER_SRGB is disabled. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/include/pipe')
-rw-r--r--src/gallium/include/pipe/p_state.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h
index c828c806aef..dbe726dbf9a 100644
--- a/src/gallium/include/pipe/p_state.h
+++ b/src/gallium/include/pipe/p_state.h
@@ -572,9 +572,7 @@ struct pipe_draw_info
struct pipe_resolve_info
{
struct {
- struct pipe_resource *res;
- unsigned level;
- unsigned layer;
+ struct pipe_surface *surface;
int x0; /**< always left */
int y0; /**< always top */
int x1; /**< determines scale if PIPE_CAP_SCALED_RESOLVE is supported */
@@ -587,7 +585,7 @@ struct pipe_resolve_info
int x0;
int y0;
int x1; /**< may be < x0 only if PIPE_CAP_SCALED_RESOLVE is supported */
- int y1; /**< may be < y1 even if PIPE_CAP_SCALED_RESOLVE not supported */
+ int y1; /**< may be < y0 even if PIPE_CAP_SCALED_RESOLVE not supported */
} src;
unsigned mask; /**< PIPE_MASK_RGBA, Z, S or ZS */