aroarfw
include/aroarfw/proto.h
Go to the documentation of this file.
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