]> code.delx.au - pulseaudio/blob - src/pulsecore/native-common.h
add new commands opcode for moving sink inputs and source outputs
[pulseaudio] / src / pulsecore / native-common.h
1 #ifndef foonativecommonhfoo
2 #define foonativecommonhfoo
3
4 /* $Id$ */
5
6 /***
7 This file is part of PulseAudio.
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
11 published by the Free Software Foundation; either version 2.1 of the
12 License, 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 Lesser General Public License for more details.
18
19 You should have received a copy of the GNU Lesser General Public
20 License along with PulseAudio; if not, write to the Free Software
21 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
22 USA.
23 ***/
24
25 #include <pulse/cdecl.h>
26 #include <pulse/def.h>
27
28 PA_C_DECL_BEGIN
29
30 enum {
31 /* Generic commands */
32 PA_COMMAND_ERROR,
33 PA_COMMAND_TIMEOUT, /* pseudo command */
34 PA_COMMAND_REPLY,
35
36 /* Commands from client to server */
37 PA_COMMAND_CREATE_PLAYBACK_STREAM,
38 PA_COMMAND_DELETE_PLAYBACK_STREAM,
39 PA_COMMAND_CREATE_RECORD_STREAM,
40 PA_COMMAND_DELETE_RECORD_STREAM,
41 PA_COMMAND_EXIT,
42 PA_COMMAND_AUTH,
43 PA_COMMAND_SET_CLIENT_NAME,
44 PA_COMMAND_LOOKUP_SINK,
45 PA_COMMAND_LOOKUP_SOURCE,
46 PA_COMMAND_DRAIN_PLAYBACK_STREAM,
47 PA_COMMAND_STAT,
48 PA_COMMAND_GET_PLAYBACK_LATENCY,
49 PA_COMMAND_CREATE_UPLOAD_STREAM,
50 PA_COMMAND_DELETE_UPLOAD_STREAM,
51 PA_COMMAND_FINISH_UPLOAD_STREAM,
52 PA_COMMAND_PLAY_SAMPLE,
53 PA_COMMAND_REMOVE_SAMPLE,
54
55 PA_COMMAND_GET_SERVER_INFO,
56 PA_COMMAND_GET_SINK_INFO,
57 PA_COMMAND_GET_SINK_INFO_LIST,
58 PA_COMMAND_GET_SOURCE_INFO,
59 PA_COMMAND_GET_SOURCE_INFO_LIST,
60 PA_COMMAND_GET_MODULE_INFO,
61 PA_COMMAND_GET_MODULE_INFO_LIST,
62 PA_COMMAND_GET_CLIENT_INFO,
63 PA_COMMAND_GET_CLIENT_INFO_LIST,
64 PA_COMMAND_GET_SINK_INPUT_INFO,
65 PA_COMMAND_GET_SINK_INPUT_INFO_LIST,
66 PA_COMMAND_GET_SOURCE_OUTPUT_INFO,
67 PA_COMMAND_GET_SOURCE_OUTPUT_INFO_LIST,
68 PA_COMMAND_GET_SAMPLE_INFO,
69 PA_COMMAND_GET_SAMPLE_INFO_LIST,
70 PA_COMMAND_SUBSCRIBE,
71
72 PA_COMMAND_SET_SINK_VOLUME,
73 PA_COMMAND_SET_SINK_INPUT_VOLUME,
74 PA_COMMAND_SET_SOURCE_VOLUME,
75
76 PA_COMMAND_SET_SINK_MUTE,
77 PA_COMMAND_SET_SOURCE_MUTE,
78
79 PA_COMMAND_CORK_PLAYBACK_STREAM,
80 PA_COMMAND_FLUSH_PLAYBACK_STREAM,
81 PA_COMMAND_TRIGGER_PLAYBACK_STREAM,
82
83 PA_COMMAND_SET_DEFAULT_SINK,
84 PA_COMMAND_SET_DEFAULT_SOURCE,
85
86 PA_COMMAND_SET_PLAYBACK_STREAM_NAME,
87 PA_COMMAND_SET_RECORD_STREAM_NAME,
88
89 PA_COMMAND_KILL_CLIENT,
90 PA_COMMAND_KILL_SINK_INPUT,
91 PA_COMMAND_KILL_SOURCE_OUTPUT,
92 PA_COMMAND_LOAD_MODULE,
93 PA_COMMAND_UNLOAD_MODULE,
94 PA_COMMAND_ADD_AUTOLOAD,
95 PA_COMMAND_REMOVE_AUTOLOAD,
96 PA_COMMAND_GET_AUTOLOAD_INFO,
97 PA_COMMAND_GET_AUTOLOAD_INFO_LIST,
98 PA_COMMAND_GET_RECORD_LATENCY,
99 PA_COMMAND_CORK_RECORD_STREAM,
100 PA_COMMAND_FLUSH_RECORD_STREAM,
101 PA_COMMAND_PREBUF_PLAYBACK_STREAM,
102
103 /* Commands from server to client */
104 PA_COMMAND_REQUEST,
105 PA_COMMAND_OVERFLOW,
106 PA_COMMAND_UNDERFLOW,
107 PA_COMMAND_PLAYBACK_STREAM_KILLED,
108 PA_COMMAND_RECORD_STREAM_KILLED,
109 PA_COMMAND_SUBSCRIBE_EVENT,
110
111 /* A few more client->server commands */
112 PA_COMMAND_MOVE_SINK_INPUT,
113 PA_COMMAND_MOVE_SOURCE_OUTPUT,
114
115 PA_COMMAND_MAX
116 };
117
118 #define PA_NATIVE_COOKIE_LENGTH 256
119 #define PA_NATIVE_COOKIE_FILE ".pulse-cookie"
120
121 #define PA_NATIVE_DEFAULT_PORT 4713
122
123 #define PA_NATIVE_COOKIE_PROPERTY_NAME "protocol-native-cookie"
124 #define PA_NATIVE_SERVER_PROPERTY_NAME "protocol-native-server"
125
126 #define PA_NATIVE_DEFAULT_UNIX_SOCKET "native"
127
128
129 PA_C_DECL_END
130
131 #endif