aroarfw
|
00001 //proto.h: 00002 00003 /* 00004 * Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010, 2011 00005 * 00006 * This file is part of aroarfw, a RoarAudio framework for 00007 * embedded systems (µControlers). 00008 * 00009 * This file is free software; you can redistribute it and/or modify 00010 * it under the terms of the GNU General Public License version 3 00011 * or (at your option) any later version as published by 00012 * the Free Software Foundation. 00013 * 00014 * aroarfw is distributed in the hope that it will be useful, 00015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 * GNU General Public License for more details. 00018 * 00019 * You should have received a copy of the GNU General Public License 00020 * along with this software; see the file COPYING. If not, write to 00021 * the Free Software Foundation, 51 Franklin Street, Fifth Floor, 00022 * Boston, MA 02110-1301, USA. 00023 */ 00024 00025 #ifndef _AROARFW_PROTO_H_ 00026 #define _AROARFW_PROTO_H_ 00027 00029 typedef enum { 00030 // grep ^'#define MUROAR_CMD_' muroar.h | sed 's/ */ /g; s/^#define MUROAR_/R/;' | while read c i d; do printf " //! XXX\n %-24s = %3i,\n" $c $i; done 00032 RCMD_NOOP = 0, 00034 RCMD_IDENTIFY = 1, 00036 RCMD_AUTH = 2, 00038 RCMD_NEW_STREAM = 3, 00040 RCMD_SET_META = 4, 00042 RCMD_EXEC_STREAM = 5, 00044 RCMD_QUIT = 6, 00046 RCMD_GET_STANDBY = 7, 00048 RCMD_SET_STANDBY = 8, 00050 RCMD_SERVER_INFO = 9, 00052 RCMD_SERVER_STATS = 10, 00054 RCMD_SERVER_OINFO = 11, 00056 RCMD_ADD_DATA = 12, 00058 RCMD_EXIT = 13, 00060 RCMD_LIST_STREAMS = 14, 00062 RCMD_LIST_CLIENTS = 15, 00064 RCMD_GET_CLIENT = 16, 00066 RCMD_GET_STREAM = 17, 00068 RCMD_KICK = 18, 00070 RCMD_SET_VOL = 19, 00072 RCMD_GET_VOL = 20, 00074 RCMD_CON_STREAM = 21, 00076 RCMD_GET_META = 22, 00078 RCMD_LIST_META = 23, 00080 RCMD_BEEP = 24, 00082 RCMD_GET_ACL = 25, 00084 RCMD_SET_ACL = 26, 00086 RCMD_AUTHCTL = 25, 00088 RCMD_ACLCTL = 26, 00090 RCMD_GET_STREAM_PARA = 27, 00092 RCMD_SET_STREAM_PARA = 28, 00094 RCMD_ATTACH = 29, 00096 RCMD_PASSFH = 30, 00098 RCMD_GETTIMEOFDAY = 31, 00100 RCMD_WHOAMI = 32, 00102 RCMD_DEVCTL = 33, 00104 RCMD_CAPS = 34, 00106 RCMD_WAIT = 35, 00108 RCMD_NOTIFY = 36, 00110 RCMD_SEEK = 37, 00112 RCMD_CLIENTCTL = 38, 00114 RCMD_LOOKUP = 39, 00116 RCMD_CONCTL = 40, 00118 RCMD_SHIFT_DATA = 41, 00120 RCMD_OK = 254, 00122 RCMD_ERROR = 255 00123 } rcmd_t; 00124 00126 typedef enum { 00128 RTERM_EXIT = 0, 00130 RTERM_TERM = 1 00131 } rterm_t; 00132 00134 typedef enum { 00136 RVOL_SET_ALL = 1, 00138 RVOL_SET_ONE = 2, 00140 RVOL_SET_MS = 3, 00142 RVOL_SET_UNMAPED = 4 00143 } rvolch_t; 00144 00146 typedef enum { 00148 RFLAGCH_SET = 0, 00150 RFLAGCH_RESET = 1, 00152 RFLAGCH_TOGGLE = 2, 00154 RFLAGCH_NOOP = 3, 00156 RFLAGCH_PROTECT = 0x8000 00157 } rflagch_t; 00158 00160 typedef enum { 00162 RSTREAMSTATE_UNKNOWN = -1, 00164 RSTREAMSTATE_NULL = 0, 00166 RSTREAMSTATE_UNUSED = RSTREAMSTATE_NULL, 00168 RSTREAMSTATE_INITING = 1, 00170 RSTREAMSTATE_NEW = 2, 00172 RSTREAMSTATE_OLD = 3, 00175 RSTREAMSTATE_CLOSING = 4, 00177 RSTREAMSTATE_ERROR = 5, 00179 RSTREAMSTATE_NEEDSEEK = 6 00180 } rstreamstat_t; 00181 00182 00184 typedef enum { 00186 RDIR_PLAY = 1, 00188 RDIR_RECORD = 2, 00190 RDIR_MONITOR = 3, 00192 RDIR_FILTER = 4, 00194 RDIR_OUTPUT = 5, 00196 RDIR_MIXING = 6, 00197 // RDIR_INTERNAL = 7, // unused, undefined. 00199 RDIR_META = 8, 00201 RDIR_BIDIR = 9, 00203 RDIR_THRU = 10, 00205 RDIR_BRIDGE = 11, 00207 RDIR_MIDI_IN = 12, 00209 RDIR_MIDI_OUT = 13, 00211 RDIR_LIGHT_IN = 14, 00213 RDIR_LIGHT_OUT = 15, 00215 RDIR_RAW_IN = 16, 00217 RDIR_RAW_OUT = 17, 00219 RDIR_COMPLEX_IN = 18, 00221 RDIR_COMPLEX_OUT = 19, 00223 RDIR_RDTCS_IN = 20, 00225 RDIR_RDTCS_OUT = 21, 00227 RDIR_DIRIDS = 22 00228 } rdir_t; 00229 00231 typedef enum { 00233 RROLE_UNKNOWN = -1, 00235 RROLE_NONE = 0, 00237 RROLE_MUSIC = 1, 00239 RROLE_VIDEO = 2, 00241 RROLE_GAME = 3, 00243 RROLE_EVENT = 4, 00245 RROLE_BEEP = 5, 00247 RROLE_PHONE = 6, 00249 RROLE_BACKGROUND_MUSIC = 7, 00251 RROLE_VOICE = 8, 00253 RROLE_INSTRUMENT = 9, 00255 RROLE_RHYTHM = 10, 00257 RROLE_CLICK = 11, 00259 RROLE_MIXED = 12, 00260 } rrole_t; 00261 00263 typedef enum { 00265 RSTANDBY_INACTIVE = 0, 00267 RSTANDBY_ACTIVE = 1 00268 } rstandby_t; 00269 00270 00272 typedef enum { 00274 ROT_CLIENT = 1, 00276 ROT_STREAM = 2, 00278 ROT_SOURCE = 3, 00280 ROT_SAMPLE = 4, 00282 ROT_OUTPUT = 5, 00284 ROT_MIXER = 6, 00286 ROT_BRIDGE = 7, 00288 ROT_LISTEN = 8, 00290 ROT_ACTION = 9, 00292 ROT_MSGQUEUE = 10, 00294 ROT_MSGBUS = 11 00295 } rot_t; 00296 00298 typedef enum { 00300 RATTACH_SIMPLE = 1, 00302 RATTACH_SOURCE = 2, 00304 RATTACH_OUTPUT = 3, 00306 RATTACH_MIXER = 4, 00308 RATTACH_BRIDGE = 5 00309 } rattach_t; 00310 00312 typedef enum { 00314 RSTREAMPARA_INFO = 1, 00316 RSTREAMPARA_FLAGS = 2, 00318 RSTREAMPARA_NAME = 3, 00320 RSTREAMPARA_CHANMAP = 4, 00322 RSTREAMPARA_ROLE = 5, 00324 RSTREAMPARA_HASHTABLE = 6, 00326 RSTREAMPARA_WININFO = 7, 00328 RSTREAMPARA_PROPTABLE = 8, 00330 RSTREAMPARA_LTM = 9, 00332 RSTREAMPARA_RADIO = 11 00333 } rstreampata_t; 00334 00336 typedef enum { 00339 RAUTH_AUTO = -1, 00343 RAUTH_NONE = 0, 00345 RAUTH_COOKIE = 1, 00349 RAUTH_TRUST = 2, 00351 RAUTH_PASSWORD = 3, 00354 RAUTH_SYSUSER = 4, 00356 RAUTH_OPENPGP_SIGN = 5, 00358 RAUTH_OPENPGP_ENCRYPT = 6, 00360 RAUTH_OPENPGP_AUTH = 7, 00362 RAUTH_KERBEROS = 8, 00364 RAUTH_RHOST = 9, 00366 RAUTH_XAUTH = 10, 00368 RAUTH_IDENT = 11 00369 } rauth_t; 00370 00372 typedef enum { 00374 RPROTO_NONE = 0, 00376 RPROTO_ROARAUDIO = 1, 00378 RPROTO_ESOUND = 2, 00380 RPROTO_AUTO = 3, 00382 RPROTO_HTTP = 4, 00384 RPROTO_GOPHER = 5, 00386 RPROTO_ICY = 7, 00388 RPROTO_SIMPLE = 8, 00390 RPROTO_RSOUND = 9, 00392 RPROTO_RPLAY = 10, 00394 RPROTO_IRC = 11, 00396 RPROTO_DCC = 12, 00398 RPROTO_ECHO = 13 00399 } rproto_t; 00400 00402 typedef enum { 00404 RCT_CAPS = 0, 00406 RCT_STANDARDS = 1 00407 } rcaps_t; 00408 00410 typedef enum { 00412 RHQ_BAD = 0, 00414 RHQ_BAD_NB = 1, 00416 RHQ_NEAR = 2, 00418 RHQ_NEAR_NB = 3, 00422 RHQ_GOOD = 4, 00424 RHQ_GOOD_NB = 5, 00428 RHQ_EXACT_NB = 7, 00430 RHQ_EXACT = RHQ_EXACT_NB 00431 } rhq_t; 00432 00434 typedef enum { 00437 RWHENCE_BEGIN = 0, 00440 RWHENCE_CUR = 1, 00442 RWHENCE_END = 2 00443 } rwhence_t; 00444 00446 typedef enum { 00448 RIT_SERVER = 1, 00450 RIT_COUNTERS = 2, 00452 RIT_LISTEN = 3 00453 } rit_t; 00454 00456 typedef enum { 00459 RITST_VERSION = 0, 00461 RITST_LOCATION = 1, 00463 RITST_DESCRIPTION = 2, 00466 RITST_CONTACT = 3, 00468 RITST_UN_SYSNAME = 4, 00470 RITST_UN_NODENAME = 5, 00472 RITST_UN_RELEASE = 6, 00474 RITST_UN_MACHINE = 7, 00476 RITST_SERIAL = 8, 00479 RITST_ADDRESS = 9, 00482 RITST_UIURL = 10, 00485 RITST_HOSTID = 11 00486 } ritst_t; 00487 00488 #endif 00489 00490 //ll