diff options
Diffstat (limited to 'src/gallium/auxiliary/util/u_transfer.h')
-rw-r--r-- | src/gallium/auxiliary/util/u_transfer.h | 44 |
1 files changed, 13 insertions, 31 deletions
diff --git a/src/gallium/auxiliary/util/u_transfer.h b/src/gallium/auxiliary/util/u_transfer.h index f4fdf9a4840..6c25ee0f024 100644 --- a/src/gallium/auxiliary/util/u_transfer.h +++ b/src/gallium/auxiliary/util/u_transfer.h @@ -27,18 +27,9 @@ void u_default_transfer_flush_region( struct pipe_context *pipe, struct pipe_transfer *transfer, const struct pipe_box *box); -struct pipe_transfer * u_default_get_transfer(struct pipe_context *context, - struct pipe_resource *resource, - unsigned level, - unsigned usage, - const struct pipe_box *box); - void u_default_transfer_unmap( struct pipe_context *pipe, struct pipe_transfer *transfer ); -void u_default_transfer_destroy(struct pipe_context *pipe, - struct pipe_transfer *transfer); - /* Useful helper to allow >1 implementation of resource functionality @@ -53,24 +44,20 @@ struct u_resource_vtbl { void (*resource_destroy)(struct pipe_screen *, struct pipe_resource *pt); - struct pipe_transfer *(*get_transfer)(struct pipe_context *, - struct pipe_resource *resource, - unsigned level, - unsigned usage, - const struct pipe_box *); + void *(*transfer_map)(struct pipe_context *, + struct pipe_resource *resource, + unsigned level, + unsigned usage, + const struct pipe_box *, + struct pipe_transfer **); - void (*transfer_destroy)(struct pipe_context *, - struct pipe_transfer *); - - void *(*transfer_map)( struct pipe_context *, - struct pipe_transfer *transfer ); void (*transfer_flush_region)( struct pipe_context *, struct pipe_transfer *transfer, const struct pipe_box *); void (*transfer_unmap)( struct pipe_context *, - struct pipe_transfer *transfer ); + struct pipe_transfer *transfer ); void (*transfer_inline_write)( struct pipe_context *pipe, struct pipe_resource *resource, @@ -96,17 +83,12 @@ boolean u_resource_get_handle_vtbl(struct pipe_screen *screen, void u_resource_destroy_vtbl(struct pipe_screen *screen, struct pipe_resource *resource); -struct pipe_transfer *u_get_transfer_vtbl(struct pipe_context *context, - struct pipe_resource *resource, - unsigned level, - unsigned usage, - const struct pipe_box *box); - -void u_transfer_destroy_vtbl(struct pipe_context *pipe, - struct pipe_transfer *transfer); - -void *u_transfer_map_vtbl( struct pipe_context *pipe, - struct pipe_transfer *transfer ); +void *u_transfer_map_vtbl(struct pipe_context *context, + struct pipe_resource *resource, + unsigned level, + unsigned usage, + const struct pipe_box *box, + struct pipe_transfer **transfer); void u_transfer_flush_region_vtbl( struct pipe_context *pipe, struct pipe_transfer *transfer, |