summaryrefslogtreecommitdiff
path: root/src/mesa
diff options
context:
space:
mode:
authorBrian <brian.paul@tungstengraphics.com>2007-10-19 12:45:54 -0600
committerBrian <brian.paul@tungstengraphics.com>2007-10-19 12:45:54 -0600
commitd4a9d4bdefb0670554c2e8ee35129d40c06b64ad (patch)
tree8c2b287f6b14959090f297522b558501cf78add5 /src/mesa
parentffd37b1fda1c880028f2c353edbf4807d55b6844 (diff)
added get/put_tile_raw() methods
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/pipe/p_state.h21
1 files changed, 17 insertions, 4 deletions
diff --git a/src/mesa/pipe/p_state.h b/src/mesa/pipe/p_state.h
index 1c3b2811a4..daa74ec053 100644
--- a/src/mesa/pipe/p_state.h
+++ b/src/mesa/pipe/p_state.h
@@ -286,13 +286,26 @@ struct pipe_surface
unsigned offset; /**< offset from start of region, in bytes */
unsigned refcount;
- /** get block/tile of pixels from surface */
+ /**
+ * Get block/tile of pixels from surface as floats
+ * If color surface, return float[4]. If depth surface, return float[1].
+ */
void (*get_tile)(struct pipe_surface *ps,
- unsigned x, unsigned y, unsigned w, unsigned h, float *p);
+ uint x, uint y, uint w, uint h, float *p);
- /** put block/tile of pixels into surface */
+ /**
+ * Put block/tile of pixels into surface as floats
+ * If color surface, data is float[4]. If depth surface, data is float[1].
+ */
void (*put_tile)(struct pipe_surface *ps,
- unsigned x, unsigned y, unsigned w, unsigned h, const float *p);
+ uint x, uint y, uint w, uint h, const float *p);
+
+ /** As above, but data is raw pixel data */
+ void (*get_tile_raw)(struct pipe_surface *ps,
+ uint x, uint y, uint w, uint h, void *p);
+ /** As above, but data is raw pixel data */
+ void (*put_tile_raw)(struct pipe_surface *ps,
+ uint x, uint y, uint w, uint h, const void *p);
};