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_OK                  = 254,
00120  RCMD_ERROR               = 255
00121 } rcmd_t;
00122 
00124 typedef enum {
00126  RTERM_EXIT = 0,
00128  RTERM_TERM = 1
00129 } rterm_t;
00130 
00132 typedef enum {
00134  RVOL_SET_ALL     = 1,
00136  RVOL_SET_ONE     = 2,
00138  RVOL_SET_MS      = 3,
00140  RVOL_SET_UNMAPED = 4
00141 } rvolch_t;
00142 
00144 typedef enum {
00146  RFLAGCH_SET     = 0,
00148  RFLAGCH_RESET   = 1,
00150  RFLAGCH_TOGGLE  = 2,
00152  RFLAGCH_NOOP    = 3,
00154  RFLAGCH_PROTECT = 0x8000
00155 } rflagch_t;
00156 
00158 typedef enum {
00160  RSTREAMSTATE_UNKNOWN  = -1,
00162  RSTREAMSTATE_NULL     =  0,
00164  RSTREAMSTATE_UNUSED   = RSTREAMSTATE_NULL,
00166  RSTREAMSTATE_INITING  =  1,
00168  RSTREAMSTATE_NEW      =  2,
00170  RSTREAMSTATE_OLD      =  3,
00173  RSTREAMSTATE_CLOSING  =  4,
00175  RSTREAMSTATE_ERROR    =  5,
00177  RSTREAMSTATE_NEEDSEEK =  6
00178 } rstreamstat_t;
00179 
00180 
00182 typedef enum {
00184  RDIR_PLAY        =  1,
00186  RDIR_RECORD      =  2,
00188  RDIR_MONITOR     =  3,
00190  RDIR_FILTER      =  4,
00192  RDIR_OUTPUT      =  5,
00194  RDIR_MIXING      =  6,
00195 // RDIR_INTERNAL    =  7, // unused, undefined.
00197  RDIR_META        =  8,
00199  RDIR_BIDIR       =  9,
00201  RDIR_THRU        = 10,
00203  RDIR_BRIDGE      = 11,
00205  RDIR_MIDI_IN     = 12,
00207  RDIR_MIDI_OUT    = 13,
00209  RDIR_LIGHT_IN    = 14,
00211  RDIR_LIGHT_OUT   = 15,
00213  RDIR_RAW_IN      = 16,
00215  RDIR_RAW_OUT     = 17,
00217  RDIR_COMPLEX_IN  = 18,
00219  RDIR_COMPLEX_OUT = 19,
00221  RDIR_RDTCS_IN    = 20,
00223  RDIR_RDTCS_OUT   = 21,
00225  RDIR_DIRIDS      = 22,
00226 } rdir_t;
00227 
00229 typedef enum {
00231  RROLE_UNKNOWN          = -1,
00233  RROLE_NONE             =  0,
00235  RROLE_MUSIC            =  1,
00237  RROLE_VIDEO            =  2,
00239  RROLE_GAME             =  3,
00241  RROLE_EVENT            =  4,
00243  RROLE_BEEP             =  5,
00245  RROLE_PHONE            =  6,
00247  RROLE_BACKGROUND_MUSIC =  7,
00249  RROLE_VOICE            =  8,
00251  RROLE_INSTRUMENT       =  9,
00253  RROLE_RHYTHM           = 10,
00255  RROLE_CLICK            = 11,
00257  RROLE_MIXED            = 12,
00258 } rrole_t;
00259 
00261 typedef enum {
00263  RSTANDBY_INACTIVE  = 0,
00265  RSTANDBY_ACTIVE    = 1
00266 } rstandby_t;
00267 
00268 
00270 typedef enum {
00272  ROT_CLIENT   =  1,
00274  ROT_STREAM   =  2,
00276  ROT_SOURCE   =  3,
00278  ROT_SAMPLE   =  4,
00280  ROT_OUTPUT   =  5,
00282  ROT_MIXER    =  6,
00284  ROT_BRIDGE   =  7,
00286  ROT_LISTEN   =  8,
00288  ROT_ACTION   =  9,
00290  ROT_MSGQUEUE = 11,
00292  ROT_MSGBUS   = 12
00293 } rot_t;
00294 
00296 typedef enum {
00298  RATTACH_SIMPLE = 1,
00300  RATTACH_SOURCE = 2,
00302  RATTACH_OUTPUT = 3,
00304  RATTACH_MIXER  = 4,
00306  RATTACH_BRIDGE = 5
00307 } rattach_t;
00308 
00310 typedef enum {
00312  RSTREAMPARA_INFO      = 1,
00314  RSTREAMPARA_FLAGS     = 2,
00316  RSTREAMPARA_NAME      = 3,
00318  RSTREAMPARA_CHANMAP   = 4,
00320  RSTREAMPARA_ROLE      = 5,
00322  RSTREAMPARA_HASHTABLE = 6,
00324  RSTREAMPARA_WININFO   = 7,
00326  RSTREAMPARA_PROPTABLE = 8,
00328  RSTREAMPARA_LTM       = 9
00329 } rstreampata_t;
00330 
00332 typedef enum {
00335  RAUTH_AUTO            = -1,
00339  RAUTH_NONE            =  0,
00341  RAUTH_COOKIE          =  1,
00345  RAUTH_TRUST           =  2,
00347  RAUTH_PASSWORD        =  3,
00350  RAUTH_SYSUSER         =  4,
00352  RAUTH_OPENPGP_SIGN    =  5,
00354  RAUTH_OPENPGP_ENCRYPT =  6,
00356  RAUTH_OPENPGP_AUTH    =  7,
00358  RAUTH_KERBEROS        =  8,
00360  RAUTH_RHOST           =  9,
00362  RAUTH_XAUTH           = 10,
00364  RAUTH_IDENT           = 11
00365 } rauth_t;
00366 
00368 typedef enum {
00370  RPROTO_NONE          = 0,
00372  RPROTO_ROARAUDIO     = 1,
00374  RPROTO_ESOUND        = 2,
00376  RPROTO_AUTO          = 3,
00378  RPROTO_HTTP          = 4,
00380  RPROTO_GOPHER        = 5,
00382  RPROTO_ICY           = 7,
00384  RPROTO_SIMPLE        = 8,
00386  RPROTO_RSOUND        = 9,
00388  RPROTO_RPLAY         = 10,
00390  IRPROTO_IRC          = 11,
00392  IRPROTO_DCC          = 12,
00394  IRPROTO_ECHO         = 13
00395 } rproto_t;
00396 
00398 typedef enum {
00400  RCT_CAPS      = 0,
00402  RCT_STANDARDS = 1
00403 } rcaps_t;
00404 
00406 typedef enum {
00408  RHQ_BAD      = 0,
00410  RHQ_BAD_NB   = 1,
00412  RHQ_NEAR     = 2,
00414  RHQ_NEAR_NB  = 3,
00418  RHQ_GOOD     = 4,
00420  RHQ_GOOD_NB  = 5,
00424  RHQ_EXACT_NB = 7,
00426  RHQ_EXACT    = RHQ_EXACT_NB
00427 } rhq_t;
00428 
00430 typedef enum {
00433  RWHENCE_BEGIN = 0,
00436  RWHENCE_CUR   = 1,
00438  RWHENCE_END   = 2
00439 } rwhence_t;
00440 
00442 typedef enum {
00444  RIT_SERVER   = 1,
00446  RIT_COUNTERS = 2,
00448  RIT_LISTEN   = 3
00449 } rit_t;
00450 
00452 typedef enum {
00455  RITST_VERSION     = 0,
00457  RITST_LOCATION    = 1,
00459  RITST_DESCRIPTION = 2,
00462  RITST_CONTACT     = 3,
00464  RITST_UN_SYSNAME  = 4,
00466  RITST_UN_NODENAME = 5,
00468  RITST_UN_RELEASE  = 6,
00470  RITST_UN_MACHINE  = 7,
00472  RITST_SERIAL      = 8,
00475  RITST_ADDRESS     = 9,
00478  RITST_UIURL       = 10
00479 } ritst_t;
00480 
00481 #endif
00482 
00483 //ll