Man Linux: Main Page and Category List

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)