1#ifndef fooclicommandhfoo
2#define fooclicommandhfoo
3
4/***
5  This file is part of PulseAudio.
6
7  Copyright 2004-2006 Lennart Poettering
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#include <pulsecore/strbuf.h>
24#include <pulsecore/core.h>
25
26/* Execute a single CLI command. Write the results to the string
27 * buffer *buf. If *fail is non-zero the function will return -1 when
28 * one or more of the executed commands failed. *fail
29 * may be modified by the function call. */
30int pa_cli_command_execute_line(pa_core *c, const char *s, pa_strbuf *buf, bool *fail);
31
32/* Execute a whole file of CLI commands */
33int pa_cli_command_execute_file(pa_core *c, const char *fn, pa_strbuf *buf, bool *fail);
34
35/* Execute a whole file of CLI commands */
36int pa_cli_command_execute_file_stream(pa_core *c, FILE *f, pa_strbuf *buf, bool *fail);
37
38/* Split the specified string into lines and run pa_cli_command_execute_line() for each. */
39int pa_cli_command_execute(pa_core *c, const char *s, pa_strbuf *buf, bool *fail);
40
41/* Same as pa_cli_command_execute_line() but also take ifstate var. */
42int pa_cli_command_execute_line_stateful(pa_core *c, const char *s, pa_strbuf *buf, bool *fail, int *ifstate);
43
44#endif
45