diff options
author | Max Kellermann <max@duempel.org> | 2009-11-03 21:18:22 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2009-11-03 21:18:22 +0100 |
commit | 98d30ac9cfdd12c5bb5932145adc7218ff4fca9e (patch) | |
tree | 93ac23d35ea4ae6c834f300b9e0000d3e2604b32 /src/decoder_control.h | |
parent | 98150f503a808f4bb0d7be343f1a231a4c8ff0dc (diff) | |
download | mpd-98d30ac9cfdd12c5bb5932145adc7218ff4fca9e.tar.gz mpd-98d30ac9cfdd12c5bb5932145adc7218ff4fca9e.tar.xz mpd-98d30ac9cfdd12c5bb5932145adc7218ff4fca9e.zip |
decoder_control: pass pipe and buffer to dc_start()
Don't access decoder_control attributes directly.
Diffstat (limited to '')
-rw-r--r-- | src/decoder_control.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/decoder_control.h b/src/decoder_control.h index 635855e17..38c4f0d83 100644 --- a/src/decoder_control.h +++ b/src/decoder_control.h @@ -84,7 +84,10 @@ struct decoder_control { /** the #music_chunk allocator */ struct music_buffer *buffer; - /** the destination pipe for decoded chunks */ + /** + * The destination pipe for decoded chunks. The caller thread + * owns this object, and is responsible for freeing it. + */ struct music_pipe *pipe; }; @@ -211,8 +214,17 @@ decoder_current_song(const struct decoder_control *dc) void dc_command_wait(struct decoder_control *dc); +/** + * Start the decoder. + * + * @param the decoder + * @param song the song to be decoded + * @param pipe the pipe which receives the decoded chunks (owned by + * the caller) + */ void -dc_start(struct decoder_control *dc, struct song *song); +dc_start(struct decoder_control *dc, struct song *song, + struct music_buffer *buffer, struct music_pipe *pipe); void dc_stop(struct decoder_control *dc); |