20 #ifndef MPD_MIXER_INTERNAL_HXX
21 #define MPD_MIXER_INTERNAL_HXX
55 :plugin(_plugin), listener(_listener),
64 return &plugin == &other;
72 virtual void Open() = 0;
77 virtual void Close() = 0;
97 virtual void SetVolume(
unsigned volume) = 0;
Mixer(const MixerPlugin &_plugin, MixerListener &_listener)
virtual void Close()=0
Close mixer device.
virtual void Open()=0
Open mixer device.
This header declares the mixer_plugin class.
Mutex mutex
This mutex protects all of the mixer struct, including its implementation, so plugins don't have to d...
bool IsPlugin(const MixerPlugin &other) const
An interface that listens on events from mixer plugins.
const MixerPlugin & plugin
virtual void SetVolume(unsigned volume)=0
Sets the volume.
bool failed
Has this mixer failed, and should not be reopened automatically?
bool open
Is the mixer device currently open?
This header provides "extern" declarations for all mixer plugins.
virtual gcc_pure int GetVolume()=0
Reads the current volume.