00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00027 #ifndef MPD_MIXER_PLUGIN_H
00028 #define MPD_MIXER_PLUGIN_H
00029
00030 #include <glib.h>
00031
00032 #include <stdbool.h>
00033
00034 struct config_param;
00035 struct mixer;
00036
00037 struct mixer_plugin {
00048 struct mixer *(*init)(void *ao, const struct config_param *param,
00049 GError **error_r);
00050
00054 void (*finish)(struct mixer *data);
00055
00063 bool (*open)(struct mixer *data, GError **error_r);
00064
00068 void (*close)(struct mixer *data);
00069
00078 int (*get_volume)(struct mixer *mixer, GError **error_r);
00079
00088 bool (*set_volume)(struct mixer *mixer, unsigned volume,
00089 GError **error_r);
00090
00096 bool global;
00097 };
00098
00099 #endif