Haka
|
#include <haka/vbuffer.h>
Go to the source code of this file.
Data Structures | |
struct | vbuffer_stream |
Functions | |
bool | vbuffer_stream_init (struct vbuffer_stream *stream, void(*userdata_cleanup)(void *)) |
void | vbuffer_stream_clear (struct vbuffer_stream *stream) |
bool | vbuffer_stream_push (struct vbuffer_stream *stream, struct vbuffer *buffer, void *userdata, struct vbuffer_iterator *current) |
void | vbuffer_stream_finish (struct vbuffer_stream *stream) |
bool | vbuffer_stream_isfinished (struct vbuffer_stream *stream) |
bool | vbuffer_stream_pop (struct vbuffer_stream *stream, struct vbuffer *buffer, void **userdata) |
struct vbuffer * | vbuffer_stream_data (struct vbuffer_stream *stream) |
Stream based on vbuffer.
void vbuffer_stream_clear | ( | struct vbuffer_stream * | stream | ) |
Clear a stream.
struct vbuffer* vbuffer_stream_data | ( | struct vbuffer_stream * | stream | ) |
Get the buffer inside the stream.
void vbuffer_stream_finish | ( | struct vbuffer_stream * | stream | ) |
Finish the stream and mark the end as the eof. It is not possible to push any more data after calling this function.
bool vbuffer_stream_init | ( | struct vbuffer_stream * | stream, |
void(*)(void *) | userdata_cleanup | ||
) |
Initialize a new stream.
bool vbuffer_stream_isfinished | ( | struct vbuffer_stream * | stream | ) |
Check if the stream has been finished.
bool vbuffer_stream_pop | ( | struct vbuffer_stream * | stream, |
struct vbuffer * | buffer, | ||
void ** | userdata | ||
) |
Get some data out of the stream. The data are only extracted if no mark have been inserted in the buffer. Otherwise, the mark will need to be removed before calling this function again.
bool vbuffer_stream_push | ( | struct vbuffer_stream * | stream, |
struct vbuffer * | buffer, | ||
void * | userdata, | ||
struct vbuffer_iterator * | current | ||
) |
Push some data in the stream. Fill the iterator current
with the position right before the data just added.