NAME¶
vrb_move - read data into a VRB
LIBRARY¶
-lvrb
SYNOPSIS¶
#include <vrb.h>
size_t vrb_move(vrb_p target, vrb_p
source, size_t size);
DESCRIPTION¶
vrb_move moves data from one virtual ring buffer to another, up to the
lesser of the available data in the source, the available space in the target,
and the maximum size specified.
ARGUMENTS¶
vrb_p target
specifies which virtual ring buffer to put data into.
vrb_p source
specifies which virtual ring buffer to get data from.
size_t size
specifies the maximum length to move, or
~0 for unlimited (all of
buffer).
RETURN VALUE¶
size_t
If successful, the actual length of data moved is returned. If an error occurs,
~0 is returned.
ERRORS¶
If an error is returned, then
errno will have the following value:
- EINVAL
- An invalid virtual ring buffer pointer was specified for
either the target or the source.
SEE ALSO¶
vrb(3),
vrb_capacity(3),
vrb_data_len(3),
vrb_data_ptr(3),
vrb_destroy(3),
vrb_get(3),
vrb_get_min(3),
vrb_give(3),
vrb_init(3),
vrb_init_opt(3),
vrb_is_empty(3),
vrb_is_full(3),
vrb_is_not_empty(3),
vrb_is_not_full(3),
vrb_new(3),
vrb_new_opt(3),
vrb_put(3),
vrb_put_all(3),
vrb_read(3),
vrb_read_min(3),
vrb_resize(3),
vrb_space_len(3),
vrb_space_ptr(3),
vrb_take(3),
vrb_uninit(3),
vrb_write(3),
vrb_write_min(3)