Data Fields | |
void(* | destroy )(struct pb_buffer *buf) |
void *(* | map )(struct pb_buffer *buf, unsigned flags) |
Map the entire data store of a buffer object into the client's address. | |
void(* | unmap )(struct pb_buffer *buf) |
void(* | get_base_buffer )(struct pb_buffer *buf, struct pb_buffer **base_buf, unsigned *offset) |
Get the base buffer and the offset. |
Note that creation is not done through this table.
Definition at line 94 of file pb_buffer.h.
void(* pb_vtbl::destroy)(struct pb_buffer *buf) |
void*(* pb_vtbl::map)(struct pb_buffer *buf, unsigned flags) |
Map the entire data store of a buffer object into the client's address.
flags is bitmask of PIPE_BUFFER_FLAG_READ/WRITE.
void(* pb_vtbl::unmap)(struct pb_buffer *buf) |
void(* pb_vtbl::get_base_buffer)(struct pb_buffer *buf, struct pb_buffer **base_buf, unsigned *offset) |
Get the base buffer and the offset.
A buffer can be subdivided in smaller buffers. This method should return the underlaying buffer, and the relative offset.
Buffers without an underlaying base buffer should return themselves, with a zero offset.
Note that this will increase the reference count of the base buffer.