diff options
author | Michal Ratajsky <[email protected]> | 2014-07-25 23:47:46 +0200 |
---|---|---|
committer | Michal Ratajsky <[email protected]> | 2014-07-25 23:47:46 +0200 |
commit | 59a9aabf7b66e130f68b797c5a3674798fae437b (patch) | |
tree | 2645bf1511fb6e23540941796373b60a04767bfb /libmatemixer/matemixer-backend.c | |
parent | 0bc3aa762cd794da510f03229840d939ee7bc0c9 (diff) | |
download | libmatemixer-59a9aabf7b66e130f68b797c5a3674798fae437b.tar.bz2 libmatemixer-59a9aabf7b66e130f68b797c5a3674798fae437b.tar.xz |
Support OSS
Diffstat (limited to 'libmatemixer/matemixer-backend.c')
-rw-r--r-- | libmatemixer/matemixer-backend.c | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/libmatemixer/matemixer-backend.c b/libmatemixer/matemixer-backend.c index be5c704..e070090 100644 --- a/libmatemixer/matemixer-backend.c +++ b/libmatemixer/matemixer-backend.c @@ -176,10 +176,15 @@ mate_mixer_backend_close (MateMixerBackend *backend) MateMixerState mate_mixer_backend_get_state (MateMixerBackend *backend) { + MateMixerState state = MATE_MIXER_STATE_UNKNOWN; + g_return_val_if_fail (MATE_MIXER_IS_BACKEND (backend), MATE_MIXER_STATE_UNKNOWN); - /* Implementation required */ - return MATE_MIXER_BACKEND_GET_INTERFACE (backend)->get_state (backend); + g_object_get (G_OBJECT (backend), + "state", &state, + NULL); + + return state; } GList * @@ -230,16 +235,18 @@ mate_mixer_backend_list_cached_streams (MateMixerBackend *backend) MateMixerStream * mate_mixer_backend_get_default_input_stream (MateMixerBackend *backend) { - MateMixerBackendInterface *iface; + MateMixerStream *stream = NULL; g_return_val_if_fail (MATE_MIXER_IS_BACKEND (backend), NULL); - iface = MATE_MIXER_BACKEND_GET_INTERFACE (backend); + g_object_get (G_OBJECT (stream), + "default-input", &stream, + NULL); - if (iface->get_default_input_stream) - return iface->get_default_input_stream (backend); + if (stream != NULL) + g_object_unref (stream); - return NULL; + return stream; } gboolean @@ -261,16 +268,18 @@ mate_mixer_backend_set_default_input_stream (MateMixerBackend *backend, MateMixerStream * mate_mixer_backend_get_default_output_stream (MateMixerBackend *backend) { - MateMixerBackendInterface *iface; + MateMixerStream *stream = NULL; g_return_val_if_fail (MATE_MIXER_IS_BACKEND (backend), NULL); - iface = MATE_MIXER_BACKEND_GET_INTERFACE (backend); + g_object_get (G_OBJECT (stream), + "default-output", &stream, + NULL); - if (iface->get_default_output_stream) - return iface->get_default_output_stream (backend); + if (stream != NULL) + g_object_unref (stream); - return NULL; + return stream; } gboolean |