From: José Fonseca Date: Wed, 4 Mar 2009 15:23:35 +0000 (+0000) Subject: Merge commit 'origin/master' into gallium-map-range X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5b04939b16eb6e13858b070315dee1d0fc09d94f;p=mesa.git Merge commit 'origin/master' into gallium-map-range --- 5b04939b16eb6e13858b070315dee1d0fc09d94f diff --cc src/gallium/include/pipe/p_screen.h index 48f6b69d921,3688d581186..d7e79ec655e --- a/src/gallium/include/pipe/p_screen.h +++ b/src/gallium/include/pipe/p_screen.h @@@ -209,31 -202,11 +202,30 @@@ struct pipe_screen void *(*buffer_map)( struct pipe_screen *screen, struct pipe_buffer *buf, unsigned usage ); + /** + * Map a subrange of the buffer data store into the client's address space. + * + * Return pointer is always relative to offset 0, regardless of the + * read/write ranges. + */ + void *(*buffer_map_range)( struct pipe_screen *screen, + struct pipe_buffer *buf, + unsigned offset, + unsigned length, + unsigned usage); + + /** + * written is the range that the client actually wrote. + */ + void (*buffer_flush_mapped_range)( struct pipe_screen *screen, + struct pipe_buffer *buf, + unsigned offset, + unsigned length); void (*buffer_unmap)( struct pipe_screen *screen, - struct pipe_buffer *buf ); + struct pipe_buffer *buf ); - void (*buffer_destroy)( struct pipe_screen *screen, - struct pipe_buffer *buf ); + void (*buffer_destroy)( struct pipe_buffer *buf ); /**