diff options
author | José Fonseca <[email protected]> | 2008-05-06 14:57:18 +0900 |
---|---|---|
committer | José Fonseca <[email protected]> | 2008-05-06 14:57:18 +0900 |
commit | 6361d6f48d13ce481253faf106fba5c6a41488ed (patch) | |
tree | 0f8cbb8a5fc4207e9dda248f93df0d585bb6bbd7 /src | |
parent | 131a1fbc91725c11e4822b82e58b94ec3a711476 (diff) |
gallium: New pipe_screen interface to overlay a texture on existing memory.
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/include/pipe/p_screen.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gallium/include/pipe/p_screen.h b/src/gallium/include/pipe/p_screen.h index c080579c26e..cc8430dae16 100644 --- a/src/gallium/include/pipe/p_screen.h +++ b/src/gallium/include/pipe/p_screen.h @@ -89,6 +89,18 @@ struct pipe_screen { struct pipe_texture * (*texture_create)(struct pipe_screen *, const struct pipe_texture *templat); + /** + * Create a new texture object, using the given template info, but on top of + * existing memory. + * + * It is assumed that the buffer data is layed out according to the expected + * by the hardware. NULL will be returned if any inconsistency is found. + */ + struct pipe_texture * (*texture_blanket)(struct pipe_screen *, + const struct pipe_texture *templat, + const unsigned *pitch, + struct pipe_buffer *buffer); + void (*texture_release)(struct pipe_screen *, struct pipe_texture **pt); |