diff options
Diffstat (limited to 'src/gallium/include/pipe/p_context.h')
-rw-r--r-- | src/gallium/include/pipe/p_context.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/include/pipe/p_context.h b/src/gallium/include/pipe/p_context.h index b74e649219..2c7e1e7799 100644 --- a/src/gallium/include/pipe/p_context.h +++ b/src/gallium/include/pipe/p_context.h @@ -565,12 +565,19 @@ struct pipe_context { * out_transfer will contain the transfer object that must be passed * to all the other transfer functions. It also contains useful * information (like texture strides). + * + * If \p user_stride is non-zero, the driver should attempt to provide + * a transfer with stride == user_stride. However, the resulting stride + * may be different, e.g. if user_stride is not sufficiently aligned. + * The map may also fail if user_stride is insufficiently aligned or too + * large, and the behavior is undefined if user_stride is too small. */ void *(*transfer_map)(struct pipe_context *, struct pipe_resource *resource, unsigned level, unsigned usage, /* a combination of PIPE_TRANSFER_x */ const struct pipe_box *, + unsigned user_stride, struct pipe_transfer **out_transfer); /* If transfer was created with WRITE|FLUSH_EXPLICIT, only the |