Haka: include/haka/vbuffer_stream.h Source File

Haka

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

vbuffer_stream.h
Go to the documentation of this file.
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4
10 #ifndef HAKA_VBUFFER_STREAM_H
11 #define HAKA_VBUFFER_STREAM_H
12
13 #include <haka/vbuffer.h>
14
15
16 struct vbuffer_stream_chunk;
17
23 struct vbuffer_stream {
24 struct lua_object lua_object;
25 struct vbuffer data;
26 struct list2 chunks;
27 struct list2 read_chunks;
28 void (*userdata_cleanup)(void *);
29 };
30
34 bool vbuffer_stream_init(struct vbuffer_stream *stream, void (*userdata_cleanup)(void *));
35
39 void vbuffer_stream_clear(struct vbuffer_stream *stream);
40
45 bool vbuffer_stream_push(struct vbuffer_stream *stream, struct vbuffer *buffer, void *userdata, struct vbuffer_iterator *current);
46
51 void vbuffer_stream_finish(struct vbuffer_stream *stream);
52
56 bool vbuffer_stream_isfinished(struct vbuffer_stream *stream);
57
63 bool vbuffer_stream_pop(struct vbuffer_stream *stream, struct vbuffer *buffer, void **userdata);
64
68 struct vbuffer *vbuffer_stream_data(struct vbuffer_stream *stream);
69
70 #endif /* HAKA_VBUFFER_STREAM_H */
vbuffer_stream_data
struct vbuffer * vbuffer_stream_data(struct vbuffer_stream *stream)
Definition: vbuffer_stream.c:322
vbuffer
Definition: vbuffer.h:64
vbuffer_iterator
Definition: vbuffer.h:77
vbuffer_stream_push
bool vbuffer_stream_push(struct vbuffer_stream *stream, struct vbuffer *buffer, void *userdata, struct vbuffer_iterator *current)
Definition: vbuffer_stream.c:92
vbuffer_stream_clear
void vbuffer_stream_clear(struct vbuffer_stream *stream)
Definition: vbuffer_stream.c:83
vbuffer_stream
Definition: vbuffer_stream.h:23
vbuffer_stream_isfinished
bool vbuffer_stream_isfinished(struct vbuffer_stream *stream)
Definition: vbuffer_stream.c:182
vbuffer_stream_pop
bool vbuffer_stream_pop(struct vbuffer_stream *stream, struct vbuffer *buffer, void **userdata)
Definition: vbuffer_stream.c:188
vbuffer_stream_finish
void vbuffer_stream_finish(struct vbuffer_stream *stream)
Definition: vbuffer_stream.c:176
vbuffer_stream_init
bool vbuffer_stream_init(struct vbuffer_stream *stream, void(*userdata_cleanup)(void *))
Definition: vbuffer_stream.c:72