5 #ifndef HAKA_VBUFFER_DATA_H 6 #define HAKA_VBUFFER_DATA_H 8 #include <haka/thread.h> 14 struct vbuffer_data_basic {
21 struct vbuffer_data_basic *vbuffer_data_basic(
size_t size,
bool zero);
25 struct vbuffer_data_ctl {
32 struct vbuffer_data_ctl_select {
33 struct vbuffer_data_ctl super;
36 struct vbuffer_data_ctl_select *vbuffer_data_ctl_select();
40 struct vbuffer_data_ctl_push {
41 struct vbuffer_data_ctl super;
43 struct vbuffer_stream_chunk *chunk;
46 struct vbuffer_data_ctl_push *vbuffer_data_ctl_push(
struct vbuffer_stream *stream,
47 struct vbuffer_stream_chunk *chunk);
51 struct vbuffer_data_ctl_mark {
52 struct vbuffer_data_ctl super;
56 struct vbuffer_data_ctl_mark *vbuffer_data_ctl_mark(
bool readonly);
58 #define vbuffer_data_cast(data, type) ((data) ? ((data)->ops == &type ## _ops ? (struct type*)(data) : NULL) : NULL)
Definition: vbuffer_stream.h:23
volatile uint32 atomic_t
Definition: thread.h:267
unsigned char uint8
Definition: types.h:27