NAME
vrb_give - create a new virtual ring buffer
LIBRARY
-lvrb
SYNOPSIS
#include <vrb.h>
vrb_p vrb_give(vrb_p vrb, size_t size);
DESCRIPTION
vrb_give specifies how much data has been placed into the empty portion
of the virtual ring buffer by the caller.
The caller will have called vrb_empty_len(3) and vrb_empty_ptr(3) to
get the length of empty space in the buffer and a pointer to it, and
having placed some data into that space, starting from the pointer
obtained and placing no more that the length obtained.
ARGUMENTS
vrb_p vrb
specifies which virtual ring buffer.
size_t size
specifies the length of data that has been placed into the virtual ring
buffer empty space by the caller.
RETURN VALUE
int
On success, 0 is returned. On error, -1 is returned.
ERRORS
If an error is returned, then errno will have one of the following
values:
EINVAL An invalid virtual ring buffer pointer was specified.
ENOSPC The specified length is greater than the empty space in the
virtual ring buffer.
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_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_move(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)