From 940ecf5345f339b9d3ec3e8029e345540358fa4c Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 26 Aug 2008 08:27:14 +0200 Subject: added decoder_read() On our way to stabilize the decoder API, we will one day remove the input stream functions. The most basic function, read() will be provided by decoder_api.h with this patch. It already contains a loop (still with manual polling), error/eof handling and decoder command checks. This kind of code used to be duplicated in all decoder plugins. --- src/decoder_api.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/decoder_api.h') diff --git a/src/decoder_api.h b/src/decoder_api.h index 5afa06e7..7a77bc93 100644 --- a/src/decoder_api.h +++ b/src/decoder_api.h @@ -121,6 +121,15 @@ double decoder_seek_where(struct decoder * decoder); void decoder_seek_error(struct decoder * decoder); +/** + * Blocking read from the input stream. Returns the number of bytes + * read, or 0 if one of the following occurs: end of file; error; + * command (like SEEK or STOP). + */ +size_t decoder_read(struct decoder *decoder, + InputStream *inStream, + void *buffer, size_t length); + /** * This function is called by the decoder plugin when it has * successfully decoded block of input data. -- cgit v1.2.3