1#ifndef foodbusifacecorehfoo
2#define foodbusifacecorehfoo
3
4/***
5  This file is part of PulseAudio.
6
7  Copyright 2009 Tanu Kaskinen
8
9  PulseAudio is free software; you can redistribute it and/or modify
10  it under the terms of the GNU Lesser General Public License as published
11  by the Free Software Foundation; either version 2.1 of the License,
12  or (at your option) any later version.
13
14  PulseAudio is distributed in the hope that it will be useful, but
15  WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  General Public License for more details.
18
19  You should have received a copy of the GNU Lesser General Public License
20  along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
21***/
22
23/* This object implements the D-Bus interface org.PulseAudio.Core1.
24 *
25 * See http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/Developer/Clients/DBus/Core/
26 * for the Core interface documentation.
27 */
28
29#include <pulsecore/core.h>
30
31typedef struct pa_dbusiface_core pa_dbusiface_core;
32
33pa_dbusiface_core *pa_dbusiface_core_new(pa_core *core);
34void pa_dbusiface_core_free(pa_dbusiface_core *c);
35
36const char *pa_dbusiface_core_get_card_path(pa_dbusiface_core *c, const pa_card *card);
37const char *pa_dbusiface_core_get_sink_path(pa_dbusiface_core *c, const pa_sink *sink);
38const char *pa_dbusiface_core_get_source_path(pa_dbusiface_core *c, const pa_source *source);
39const char *pa_dbusiface_core_get_playback_stream_path(pa_dbusiface_core *c, const pa_sink_input *sink_input);
40const char *pa_dbusiface_core_get_record_stream_path(pa_dbusiface_core *c, const pa_source_output *source_output);
41const char *pa_dbusiface_core_get_module_path(pa_dbusiface_core *c, const pa_module *module);
42const char *pa_dbusiface_core_get_client_path(pa_dbusiface_core *c, const pa_client *client);
43
44/* Returns NULL if there's no sink with the given path. */
45pa_sink *pa_dbusiface_core_get_sink(pa_dbusiface_core *c, const char *object_path);
46
47/* Returns NULL if there's no source with the given path. */
48pa_source *pa_dbusiface_core_get_source(pa_dbusiface_core *c, const char *object_path);
49
50#endif
51