| #include "qemu/osdep.h" | |
| #include "hw/core/stream.h" | |
| #include "qemu/module.h" | |
| size_t | |
| stream_push(StreamSink *sink, uint8_t *buf, size_t len, bool eop) | |
| { | |
| StreamSinkClass *k = STREAM_SINK_GET_CLASS(sink); | |
| return k->push(sink, buf, len, eop); | |
| } | |
| bool | |
| stream_can_push(StreamSink *sink, StreamCanPushNotifyFn notify, | |
| void *notify_opaque) | |
| { | |
| StreamSinkClass *k = STREAM_SINK_GET_CLASS(sink); | |
| return k->can_push ? k->can_push(sink, notify, notify_opaque) : true; | |
| } | |
| static const TypeInfo stream_sink_info = { | |
| .name = TYPE_STREAM_SINK, | |
| .parent = TYPE_INTERFACE, | |
| .class_size = sizeof(StreamSinkClass), | |
| }; | |
| static void stream_sink_register_types(void) | |
| { | |
| type_register_static(&stream_sink_info); | |
| } | |
| type_init(stream_sink_register_types) |