From b6995ca0113611613d311250eabfc354658d46a7 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 3 Nov 2009 21:08:48 +0100 Subject: player_control: removed the global variable "pc" Allocate a player_control object where needed, and pass it around. Each "client" object is associated with a "player_control" instance. This prepares multi-player support. --- src/decoder_control.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/decoder_control.h') diff --git a/src/decoder_control.h b/src/decoder_control.h index 449e974b7..fafc6dea3 100644 --- a/src/decoder_control.h +++ b/src/decoder_control.h @@ -27,6 +27,8 @@ #include +struct player_control; + enum decoder_state { DECODE_STATE_STOP = 0, DECODE_STATE_START, @@ -42,6 +44,12 @@ enum decoder_state { }; struct decoder_control { + /** + * The player thread which calls us. This pointer is used to + * signal command completion. + */ + struct player_control *player_control; + /** the handle of the decoder thread, or NULL if the decoder thread isn't running */ GThread *thread; @@ -98,7 +106,7 @@ struct decoder_control { }; void -dc_init(struct decoder_control *dc); +dc_init(struct decoder_control *dc, struct player_control *pc); void dc_deinit(struct decoder_control *dc); -- cgit v1.2.3