aboutsummaryrefslogtreecommitdiffstats
path: root/src/mixer/plugins/AlsaMixerPlugin.cxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2014-02-05 00:02:02 +0100
committerMax Kellermann <max@duempel.org>2014-02-05 00:02:02 +0100
commite8938b1069739eca2bd2f27705c1c7783e834e59 (patch)
tree482330dbf228c12a60c9a401f0428cc4e292e234 /src/mixer/plugins/AlsaMixerPlugin.cxx
parent4a283330394fd2e1541a03bd312e5fadf54aa055 (diff)
downloadmpd-e8938b1069739eca2bd2f27705c1c7783e834e59.tar.gz
mpd-e8938b1069739eca2bd2f27705c1c7783e834e59.tar.xz
mpd-e8938b1069739eca2bd2f27705c1c7783e834e59.zip
MixerPlugin: add EventLoop& init() parameter
Diffstat (limited to 'src/mixer/plugins/AlsaMixerPlugin.cxx')
-rw-r--r--src/mixer/plugins/AlsaMixerPlugin.cxx13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mixer/plugins/AlsaMixerPlugin.cxx b/src/mixer/plugins/AlsaMixerPlugin.cxx
index a15820fc7..6e99cfa3e 100644
--- a/src/mixer/plugins/AlsaMixerPlugin.cxx
+++ b/src/mixer/plugins/AlsaMixerPlugin.cxx
@@ -21,7 +21,6 @@
#include "mixer/MixerInternal.hxx"
#include "output/OutputAPI.hxx"
#include "GlobalEvents.hxx"
-#include "Main.hxx"
#include "event/MultiSocketMonitor.hxx"
#include "event/DeferredMonitor.hxx"
#include "event/Loop.hxx"
@@ -62,6 +61,8 @@ private:
};
class AlsaMixer final : public Mixer {
+ EventLoop &event_loop;
+
const char *device;
const char *control;
unsigned int index;
@@ -75,7 +76,8 @@ class AlsaMixer final : public Mixer {
AlsaMixerMonitor *monitor;
public:
- AlsaMixer():Mixer(alsa_mixer_plugin) {}
+ AlsaMixer(EventLoop &_event_loop)
+ :Mixer(alsa_mixer_plugin), event_loop(_event_loop) {}
void Configure(const config_param &param);
bool Setup(Error &error);
@@ -162,10 +164,11 @@ AlsaMixer::Configure(const config_param &param)
}
static Mixer *
-alsa_mixer_init(gcc_unused void *ao, const config_param &param,
+alsa_mixer_init(EventLoop &event_loop, gcc_unused void *ao,
+ const config_param &param,
gcc_unused Error &error)
{
- AlsaMixer *am = new AlsaMixer();
+ AlsaMixer *am = new AlsaMixer(event_loop);
am->Configure(param);
return am;
@@ -237,7 +240,7 @@ AlsaMixer::Setup(Error &error)
snd_mixer_elem_set_callback(elem, alsa_mixer_elem_callback);
- monitor = new AlsaMixerMonitor(*main_loop, handle);
+ monitor = new AlsaMixerMonitor(event_loop, handle);
return true;
}