~ubuntu-branches/ubuntu/vivid/gnome-flashback/vivid

« back to all changes in this revision

Viewing changes to gnome-flashback/libsound-applet/gvc/gvc-mixer-ui-device.h

  • Committer: Package Import Robot
  • Author(s): Dmitry Shachnev
  • Date: 2014-09-19 17:09:43 UTC
  • Revision ID: package-import@ubuntu.com-20140919170943-oboafsedi6z69951
Tags: upstream-3.10.0
ImportĀ upstreamĀ versionĀ 3.10.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
 
2
/*
 
3
 * Copyright (C) Conor Curran 2011 <conor.curran@canonical.com>
 
4
 *
 
5
 * This is free software: you can redistribute it and/or modify it
 
6
 * under the terms of the GNU General Public License as published by the
 
7
 * Free Software Foundation, either version 2 of the License, or
 
8
 * (at your option) any later version.
 
9
 *
 
10
 * gvc-mixer-ui-device.h is distributed in the hope that it will be useful, but
 
11
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
13
 * See the GNU General Public License for more details.
 
14
 *
 
15
 * You should have received a copy of the GNU General Public License along
 
16
 * with this program. If not, see <http://www.gnu.org/licenses/>.
 
17
 */
 
18
 
 
19
#ifndef _GVC_MIXER_UI_DEVICE_H_
 
20
#define _GVC_MIXER_UI_DEVICE_H_
 
21
 
 
22
#include <glib-object.h>
 
23
#include <gio/gio.h>
 
24
 
 
25
G_BEGIN_DECLS
 
26
 
 
27
#define GVC_TYPE_MIXER_UI_DEVICE             (gvc_mixer_ui_device_get_type ())
 
28
#define GVC_MIXER_UI_DEVICE(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), GVC_TYPE_MIXER_UI_DEVICE, GvcMixerUIDevice))
 
29
#define GVC_MIXER_UI_DEVICE_CLASS(klass)     (G_TYPE_CHECK_CLASS_CAST ((klass), GVC_TYPE_MIXER_UI_DEVICE, GvcMixerUIDeviceClass))
 
30
#define GVC_IS_MIXER_UI_DEVICE(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GVC_TYPE_MIXER_UI_DEVICE))
 
31
#define GVC_IS_MIXER_UI_DEVICE_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE ((klass), GVC_TYPE_MIXER_UI_DEVICE))
 
32
#define GVC_MIXER_UI_DEVICE_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), GVC_TYPE_MIXER_UI_DEVICE, GvcMixerUIDeviceClass))
 
33
 
 
34
#define GVC_MIXER_UI_DEVICE_INVALID          -1
 
35
 
 
36
typedef struct GvcMixerUIDevicePrivate GvcMixerUIDevicePrivate;
 
37
 
 
38
typedef struct
 
39
{
 
40
        GObjectClass parent_class;
 
41
} GvcMixerUIDeviceClass;
 
42
 
 
43
typedef struct
 
44
{
 
45
        GObject parent_instance;
 
46
        GvcMixerUIDevicePrivate *priv;
 
47
} GvcMixerUIDevice;
 
48
 
 
49
typedef enum
 
50
{
 
51
        UIDeviceInput,
 
52
        UIDeviceOutput,
 
53
} GvcMixerUIDeviceDirection;
 
54
 
 
55
GType gvc_mixer_ui_device_get_type (void) G_GNUC_CONST;
 
56
 
 
57
guint          gvc_mixer_ui_device_get_id                      (GvcMixerUIDevice *device);
 
58
gint           gvc_mixer_ui_device_get_stream_id               (GvcMixerUIDevice *device);
 
59
const gchar *  gvc_mixer_ui_device_get_description             (GvcMixerUIDevice *device);
 
60
const gchar *  gvc_mixer_ui_device_get_icon_name               (GvcMixerUIDevice *device);
 
61
GIcon *        gvc_mixer_ui_device_get_gicon                   (GvcMixerUIDevice *device);
 
62
const gchar *  gvc_mixer_ui_device_get_origin                  (GvcMixerUIDevice *device);
 
63
const gchar *  gvc_mixer_ui_device_get_port                    (GvcMixerUIDevice *device);
 
64
const gchar *  gvc_mixer_ui_device_get_best_profile            (GvcMixerUIDevice *device,
 
65
                                                                const gchar      *selected,
 
66
                                                                const gchar      *current);
 
67
const gchar *  gvc_mixer_ui_device_get_active_profile          (GvcMixerUIDevice* device);
 
68
const gchar *  gvc_mixer_ui_device_get_matching_profile        (GvcMixerUIDevice *device,
 
69
                                                                const gchar      *profile);
 
70
const gchar *  gvc_mixer_ui_device_get_user_preferred_profile  (GvcMixerUIDevice *device);
 
71
const gchar *  gvc_mixer_ui_device_get_top_priority_profile    (GvcMixerUIDevice *device);
 
72
GList *        gvc_mixer_ui_device_get_profiles                (GvcMixerUIDevice *device);
 
73
GList *        gvc_mixer_ui_device_get_supported_profiles      (GvcMixerUIDevice *device);
 
74
gboolean       gvc_mixer_ui_device_should_profiles_be_hidden   (GvcMixerUIDevice *device);
 
75
void           gvc_mixer_ui_device_set_profiles                (GvcMixerUIDevice *device,
 
76
                                                                const GList      *in_profiles);
 
77
void           gvc_mixer_ui_device_set_user_preferred_profile  (GvcMixerUIDevice *device,
 
78
                                                                const gchar      *profile);
 
79
void           gvc_mixer_ui_device_invalidate_stream           (GvcMixerUIDevice *device);
 
80
gboolean       gvc_mixer_ui_device_has_ports                   (GvcMixerUIDevice *device);
 
81
gboolean       gvc_mixer_ui_device_is_output                   (GvcMixerUIDevice *device);
 
82
 
 
83
G_END_DECLS
 
84
 
 
85
#endif /* _GVC_MIXER_UI_DEVICE_H_ */