From bf803e241f4f1210e7ed1e71895a561de81d7a94 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 28 Jan 2014 23:39:48 +0100 Subject: AudioOutput: pass plugin to constructor Make it "const". --- src/output/Init.cxx | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'src/output/Init.cxx') diff --git a/src/output/Init.cxx b/src/output/Init.cxx index 52ff14b58..a4a22e33a 100644 --- a/src/output/Init.cxx +++ b/src/output/Init.cxx @@ -46,8 +46,9 @@ #define AUDIO_OUTPUT_FORMAT "format" #define AUDIO_FILTERS "filters" -AudioOutput::AudioOutput() - :enabled(true), really_enabled(false), +AudioOutput::AudioOutput(const AudioOutputPlugin &_plugin) + :plugin(&_plugin), + enabled(true), really_enabled(false), open(false), pause(false), allow_play(true), @@ -58,6 +59,10 @@ AudioOutput::AudioOutput() other_replay_gain_filter(nullptr), command(AO_COMMAND_NONE) { + assert(plugin->finish != nullptr); + assert(plugin->open != nullptr); + assert(plugin->close != nullptr); + assert(plugin->play != nullptr); } static const AudioOutputPlugin * @@ -143,15 +148,9 @@ audio_output_load_mixer(AudioOutput *ao, bool ao_base_init(AudioOutput *ao, - const AudioOutputPlugin *plugin, const config_param ¶m, Error &error) { assert(ao != nullptr); - assert(plugin != nullptr); - assert(plugin->finish != nullptr); - assert(plugin->open != nullptr); - assert(plugin->close != nullptr); - assert(plugin->play != nullptr); if (!param.IsNull()) { ao->name = param.GetBlockValue(AUDIO_OUTPUT_NAME); @@ -176,7 +175,6 @@ ao_base_init(AudioOutput *ao, ao->config_audio_format.Clear(); } - ao->plugin = plugin; ao->tags = param.GetBlockValue("tags", true); ao->always_on = param.GetBlockValue("always_on", false); ao->enabled = param.GetBlockValue("enabled", true); -- cgit v1.2.3