aroarfw
Enumerations
include/aroarfw/proto.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  rcmd_t {
  RCMD_NOOP = 0, RCMD_IDENTIFY = 1, RCMD_AUTH = 2, RCMD_NEW_STREAM = 3,
  RCMD_SET_META = 4, RCMD_EXEC_STREAM = 5, RCMD_QUIT = 6, RCMD_GET_STANDBY = 7,
  RCMD_SET_STANDBY = 8, RCMD_SERVER_INFO = 9, RCMD_SERVER_STATS = 10, RCMD_SERVER_OINFO = 11,
  RCMD_ADD_DATA = 12, RCMD_EXIT = 13, RCMD_LIST_STREAMS = 14, RCMD_LIST_CLIENTS = 15,
  RCMD_GET_CLIENT = 16, RCMD_GET_STREAM = 17, RCMD_KICK = 18, RCMD_SET_VOL = 19,
  RCMD_GET_VOL = 20, RCMD_CON_STREAM = 21, RCMD_GET_META = 22, RCMD_LIST_META = 23,
  RCMD_BEEP = 24, RCMD_GET_ACL = 25, RCMD_SET_ACL = 26, RCMD_AUTHCTL = 25,
  RCMD_ACLCTL = 26, RCMD_GET_STREAM_PARA = 27, RCMD_SET_STREAM_PARA = 28, RCMD_ATTACH = 29,
  RCMD_PASSFH = 30, RCMD_GETTIMEOFDAY = 31, RCMD_WHOAMI = 32, RCMD_DEVCTL = 33,
  RCMD_CAPS = 34, RCMD_WAIT = 35, RCMD_NOTIFY = 36, RCMD_SEEK = 37,
  RCMD_CLIENTCTL = 38, RCMD_LOOKUP = 39, RCMD_CONCTL = 40, RCMD_SHIFT_DATA = 41,
  RCMD_OK = 254, RCMD_ERROR = 255
}
 Command values used for rmsg*_t. More...
enum  rterm_t { RTERM_EXIT = 0, RTERM_TERM = 1 }
 Parameter for server termination (RCMD_EXIT) More...
enum  rvolch_t { RVOL_SET_ALL = 1, RVOL_SET_ONE = 2, RVOL_SET_MS = 3, RVOL_SET_UNMAPED = 4 }
 Parameter for type of volume change. More...
enum  rflagch_t {
  RFLAGCH_SET = 0, RFLAGCH_RESET = 1, RFLAGCH_TOGGLE = 2, RFLAGCH_NOOP = 3,
  RFLAGCH_PROTECT = 0x8000
}
 Parameter for stream flag operation. More...
enum  rstreamstat_t {
  RSTREAMSTATE_UNKNOWN = -1, RSTREAMSTATE_NULL = 0, RSTREAMSTATE_UNUSED = RSTREAMSTATE_NULL, RSTREAMSTATE_INITING = 1,
  RSTREAMSTATE_NEW = 2, RSTREAMSTATE_OLD = 3, RSTREAMSTATE_CLOSING = 4, RSTREAMSTATE_ERROR = 5,
  RSTREAMSTATE_NEEDSEEK = 6
}
 States a stream can have. More...
enum  rdir_t {
  RDIR_PLAY = 1, RDIR_RECORD = 2, RDIR_MONITOR = 3, RDIR_FILTER = 4,
  RDIR_OUTPUT = 5, RDIR_MIXING = 6, RDIR_META = 8, RDIR_BIDIR = 9,
  RDIR_THRU = 10, RDIR_BRIDGE = 11, RDIR_MIDI_IN = 12, RDIR_MIDI_OUT = 13,
  RDIR_LIGHT_IN = 14, RDIR_LIGHT_OUT = 15, RDIR_RAW_IN = 16, RDIR_RAW_OUT = 17,
  RDIR_COMPLEX_IN = 18, RDIR_COMPLEX_OUT = 19, RDIR_RDTCS_IN = 20, RDIR_RDTCS_OUT = 21,
  RDIR_RECPLAY = 22, RDIR_DIRIDS = 23
}
 Type for stream directions. More...
enum  rrole_t {
  RROLE_UNKNOWN = -1, RROLE_NONE = 0, RROLE_MUSIC = 1, RROLE_VIDEO = 2,
  RROLE_GAME = 3, RROLE_EVENT = 4, RROLE_BEEP = 5, RROLE_PHONE = 6,
  RROLE_BACKGROUND_MUSIC = 7, RROLE_VOICE = 8, RROLE_INSTRUMENT = 9, RROLE_RHYTHM = 10,
  RROLE_CLICK = 11, RROLE_MIXED = 12
}
 Roles a stream can have. More...
enum  rstandby_t { RSTANDBY_INACTIVE = 0, RSTANDBY_ACTIVE = 1 }
 Possible standby modes. More...
enum  rot_t {
  ROT_CLIENT = 1, ROT_STREAM = 2, ROT_SOURCE = 3, ROT_SAMPLE = 4,
  ROT_OUTPUT = 5, ROT_MIXER = 6, ROT_BRIDGE = 7, ROT_LISTEN = 8,
  ROT_ACTION = 9, ROT_MSGQUEUE = 10, ROT_MSGBUS = 11
}
 RoarAudio object types. More...
enum  rattach_t {
  RATTACH_SIMPLE = 1, RATTACH_SOURCE = 2, RATTACH_OUTPUT = 3, RATTACH_MIXER = 4,
  RATTACH_BRIDGE = 5
}
 Types of attaches for the RCMD_ATTACH command. More...
enum  rstreampata_t {
  RSTREAMPARA_INFO = 1, RSTREAMPARA_FLAGS = 2, RSTREAMPARA_NAME = 3, RSTREAMPARA_CHANMAP = 4,
  RSTREAMPARA_ROLE = 5, RSTREAMPARA_HASHTABLE = 6, RSTREAMPARA_WININFO = 7, RSTREAMPARA_PROPTABLE = 8,
  RSTREAMPARA_LTM = 9, RSTREAMPARA_RADIO = 11
}
 Sub-Commands for the RCMD_?ET_STREAM_PARA commands. More...
enum  rauth_t {
  RAUTH_AUTO = -1, RAUTH_NONE = 0, RAUTH_COOKIE = 1, RAUTH_TRUST = 2,
  RAUTH_PASSWORD = 3, RAUTH_SYSUSER = 4, RAUTH_OPENPGP_SIGN = 5, RAUTH_OPENPGP_ENCRYPT = 6,
  RAUTH_OPENPGP_AUTH = 7, RAUTH_KERBEROS = 8, RAUTH_RHOST = 9, RAUTH_XAUTH = 10,
  RAUTH_IDENT = 11
}
 Auth methodes for the RCMD_AUTH command. More...
enum  rproto_t {
  RPROTO_NONE = 0, RPROTO_ROARAUDIO = 1, RPROTO_ESOUND = 2, RPROTO_AUTO = 3,
  RPROTO_HTTP = 4, RPROTO_GOPHER = 5, RPROTO_ICY = 7, RPROTO_SIMPLE = 8,
  RPROTO_RSOUND = 9, RPROTO_RPLAY = 10, RPROTO_IRC = 11, RPROTO_DCC = 12,
  RPROTO_ECHO = 13, RPROTO_DISCARD = 14, RPROTO_WHOIS = 15, RPROTO_FINGER = 16,
  RPROTO_QUOTE = 17, RPROTO_DAYTIME = 18
}
 Protocol IDs. More...
enum  rcaps_t { RCT_CAPS = 0, RCT_STANDARDS = 1 }
 Subtypes for CAPS command. More...
enum  rhq_t {
  RHQ_BAD = 0, RHQ_BAD_NB = 1, RHQ_NEAR = 2, RHQ_NEAR_NB = 3,
  RHQ_GOOD = 4, RHQ_GOOD_NB = 5, RHQ_EXACT_NB = 7, RHQ_EXACT = RHQ_EXACT_NB
}
 Hint Quality values for SEEK command. More...
enum  rwhence_t { RWHENCE_BEGIN = 0, RWHENCE_CUR = 1, RWHENCE_END = 2 }
 Whence for SEEK command. More...
enum  rit_t { RIT_SERVER = 1, RIT_COUNTERS = 2, RIT_LISTEN = 3 }
 Information types for SERVER_INFO command. More...
enum  ritst_t {
  RITST_VERSION = 0, RITST_LOCATION = 1, RITST_DESCRIPTION = 2, RITST_CONTACT = 3,
  RITST_UN_SYSNAME = 4, RITST_UN_NODENAME = 5, RITST_UN_RELEASE = 6, RITST_UN_MACHINE = 7,
  RITST_SERIAL = 8, RITST_ADDRESS = 9, RITST_UIURL = 10, RITST_HOSTID = 11,
  RITST_LICENSE = 12, RITST_BUILD = 13
}
 Information types for Server Type (ITST) for SERVER_INFO command. More...

Enumeration Type Documentation

enum rattach_t

Types of attaches for the RCMD_ATTACH command.

Enumerator:
RATTACH_SIMPLE 

Simple Attach: Attach stream to a diffrent client.

RATTACH_SOURCE 

Source Attach: Attach stream to a source driver.

RATTACH_OUTPUT 

Output Attach: Attach stream to a output driver.

RATTACH_MIXER 

Mixer Attach: Attaches a mixer device.

RATTACH_BRIDGE 

Bridge Attach: Attches a bridge between diffrent subsystems.

Definition at line 300 of file proto.h.

enum rauth_t

Auth methodes for the RCMD_AUTH command.

Enumerator:
RAUTH_AUTO 

Ask the library to automaticly search for a working auth method. This MUST NOT be send to the wire.

RAUTH_NONE 

Send a dummy auth request. The server may grand access. This is a bit like anonymous FTP. (The server is free to do some magicly checking like TRUST does)

RAUTH_COOKIE 

Send a binary-save cookie. This is normaly stored in a cookie file.

RAUTH_TRUST 

Ask the server to grand access based on information provided by the operating system. This is usefull for UNIX sockets. With UNIX sockets the server may for example match the uid of the client with an internal list.

RAUTH_PASSWORD 

Send a user supplyed password. The user should get asked for the password.

RAUTH_SYSUSER 

Send Username/Password for the current system user. The user should be matched using local, NIS, PAM, LDAP,... databases.

RAUTH_OPENPGP_SIGN 

Use a OpenPGP based method using a signing key. (not recommented!)

RAUTH_OPENPGP_ENCRYPT 

Use a OpenPGP based method using a encryption key.

RAUTH_OPENPGP_AUTH 

Use a OpenPGP based method using a auth key. (recommented)

RAUTH_KERBEROS 

Use Kerveros.

RAUTH_RHOST 

Auth based on client's host or node name or address.

RAUTH_XAUTH 

Use xauth cookie.

RAUTH_IDENT 

Use Ident service.

Definition at line 338 of file proto.h.

enum rcaps_t

Subtypes for CAPS command.

Enumerator:
RCT_CAPS 

???

RCT_STANDARDS 

List of Standards.

Definition at line 414 of file proto.h.

enum rcmd_t

Command values used for rmsg*_t.

Enumerator:
RCMD_NOOP 

No Operation Commands.

RCMD_IDENTIFY 

Identify our client to the server.

RCMD_AUTH 

Auth our client on the server.

RCMD_NEW_STREAM 

Create a new stream.

RCMD_SET_META 

Set meta data on a stream.

RCMD_EXEC_STREAM 

Exec a stream.

RCMD_QUIT 

Terminate the client connection.

RCMD_GET_STANDBY 

Get standby state from from server.

RCMD_SET_STANDBY 

Ask the server to change it's standby state.

RCMD_SERVER_INFO 

Asks server for general information.

RCMD_SERVER_STATS 

Asks the server for some stats.

RCMD_SERVER_OINFO 

Asks the server for information on outputs.

RCMD_ADD_DATA 

Add data to the stream's input buffer.

RCMD_EXIT 

Terminate the server.

RCMD_LIST_STREAMS 

List streams.

RCMD_LIST_CLIENTS 

List clients.

RCMD_GET_CLIENT 

Get a client object.

RCMD_GET_STREAM 

Get a stream object.

RCMD_KICK 

Kick (terminate) a object from the server.

RCMD_SET_VOL 

Change the volume of a stream.

RCMD_GET_VOL 

Get volume information of a stream.

RCMD_CON_STREAM 

Connect a stream to IO resource (to a socket)

RCMD_GET_META 

Get meta data of a stream.

RCMD_LIST_META 

List meta data of a stream.

RCMD_BEEP 

Asks the server to generate a notify sound (beep)

RCMD_GET_ACL 

Get Access Control List informations (deprecated, do not use!)

RCMD_SET_ACL 

Set Access Control List informations (deprecated, do not use!)

RCMD_AUTHCTL 

Control parameters for AUTH command.

RCMD_ACLCTL 

Control Access Control List informations.

RCMD_GET_STREAM_PARA 

Get stream parameters.

RCMD_SET_STREAM_PARA 

Set stream parameters.

RCMD_ATTACH 

Attach a stream to some resource (client, driver, ...)

RCMD_PASSFH 

Pass an open file handle to the server.

RCMD_GETTIMEOFDAY 

Get current system clock time of server.

RCMD_WHOAMI 

Asks the server for our client ID.

RCMD_DEVCTL 

Device Control.

RCMD_CAPS 

Query or Tell capabilitys.

RCMD_WAIT 

Wait for events.

RCMD_NOTIFY 

Get Notified about events.

RCMD_SEEK 

Seek within a stream.

RCMD_CLIENTCTL 

Control Client Parameters.

RCMD_LOOKUP 

Look up objects.

RCMD_CONCTL 

Control Connection parameters.

RCMD_SHIFT_DATA 

Read some stream data from the server.

RCMD_OK 

Positive return value for request.

RCMD_ERROR 

Negative (error) return value for request.

Definition at line 29 of file proto.h.

enum rdir_t

Type for stream directions.

Enumerator:
RDIR_PLAY 

Waveform Playback stream.

RDIR_RECORD 

Waveform recoard stream.

RDIR_MONITOR 

Waveform monitoring stream.

RDIR_FILTER 

Waveform filter stream.

RDIR_OUTPUT 

Waveform (and maybe other) stream attached to a driver.

RDIR_MIXING 

Mixer core.

RDIR_META 

Meta data stream, obsolete.

RDIR_BIDIR 

Waveform bidirectional stream (this is PLAY and MONITOR in one stream)

RDIR_THRU 

Thru stream, this stream type sends raw copys of data passing thru a stream.

RDIR_BRIDGE 

Bridge between subsystems or two objects in the same subsystem.

RDIR_MIDI_IN 

MIDI input stream.

RDIR_MIDI_OUT 

MIDI output stream.

RDIR_LIGHT_IN 

Light Control input stream.

RDIR_LIGHT_OUT 

Light Control output stream.

RDIR_RAW_IN 

Raw data input stream.

RDIR_RAW_OUT 

Raw data output stream.

RDIR_COMPLEX_IN 

Complex data input stream.

RDIR_COMPLEX_OUT 

Complex data output stream.

RDIR_RDTCS_IN 

Radio Data and Transmitter Control System input stream.

RDIR_RDTCS_OUT 

Radio Data and Transmitter Control System output stream.

RDIR_RECPLAY 

Record and Play at the same time.

RDIR_DIRIDS 

One more than the maximum direction ID.

Definition at line 184 of file proto.h.

enum rflagch_t

Parameter for stream flag operation.

Enumerator:
RFLAGCH_SET 

Set flag.

RFLAGCH_RESET 

Reset flag.

RFLAGCH_TOGGLE 

Toggle a given flag.

RFLAGCH_NOOP 

Noop.

RFLAGCH_PROTECT 

Protect a flag from being changed.

Definition at line 146 of file proto.h.

enum rhq_t

Hint Quality values for SEEK command.

Enumerator:
RHQ_BAD 

Bad hint.

RHQ_BAD_NB 

Bad hint, requested position is not before this point.

RHQ_NEAR 

Requested position is near this point.

RHQ_NEAR_NB 

Requested position is near this point but not before this point.

RHQ_GOOD 

Hint is of good quality (very close to position). This is normally used if no additional seek is required like in case the the hint points directly to the keyframe just before the possition.

RHQ_GOOD_NB 

Hint is of good quality (very close to position) and requested position is not before this point.

RHQ_EXACT_NB 

This is exackt possition. The possition is the exact offset. This can not be used with codecs not using samples directly like Vorbis but may be used with all kinds of PCM.

RHQ_EXACT 

This is exackt possition (alias).

Definition at line 422 of file proto.h.

enum rit_t

Information types for SERVER_INFO command.

Enumerator:
RIT_SERVER 

General information about the server like implementation name and version.

RIT_COUNTERS 

Counters.

RIT_LISTEN 

Information about listen sockets (this may be removed again in later versions of protocol specs)

Definition at line 458 of file proto.h.

enum ritst_t

Information types for Server Type (ITST) for SERVER_INFO command.

Enumerator:
RITST_VERSION 

Implementation Name and version number. Format: Format: Product/Version <VendorID/VendorName> (comments)

RITST_LOCATION 

Freeform Location of server.

RITST_DESCRIPTION 

Freform description of server.

RITST_CONTACT 

Contact information. Format: first ["']nick["'] last (comment) <email>/OpenPGPkey/Phone/Room

RITST_UN_SYSNAME 

Opering System name, like uname -s.

RITST_UN_NODENAME 

Opering System node name, like uname -n.

RITST_UN_RELEASE 

Opering System release, like uname -r.

RITST_UN_MACHINE 

Opering System host type, like uname -m.

RITST_SERIAL 

Freeform serial of device.

RITST_ADDRESS 

Address information of device. Format not yet defined.

RITST_UIURL 

URL of some kind of user interface. Can be of any type like http, telnet, ssh or gopher.

RITST_HOSTID 

UNIX hostid in hex format (%.8x), with leading zeros (8 or 16 hex-digits). This is returned by gethostid() on POSIX conforming systems.

RITST_LICENSE 

License the server software is under. Format is: LicenseName-Version (options). Examples include: GPL-3.0, LGPL-2.1, LGPL-3.0 (or later).

RITST_BUILD 

Build date and time of this software or hardware. Format is YYYY-MM-DD HH:MM:SS (worker).

Definition at line 468 of file proto.h.

enum rot_t

RoarAudio object types.

Enumerator:
ROT_CLIENT 

Clients.

ROT_STREAM 

Streams.

ROT_SOURCE 

Sources.

ROT_SAMPLE 

Samples.

ROT_OUTPUT 

Outputs of some kind, normally using some kind of (audio) driver.

ROT_MIXER 

Mixer streams. May be hardware mixer devices or software mixers.

ROT_BRIDGE 

Bridges between diffrent subsystems within a server.

ROT_LISTEN 

Listen sockets.

ROT_ACTION 

Actions.

ROT_MSGQUEUE 

Message queues.

ROT_MSGBUS 

Message busses.

Definition at line 274 of file proto.h.

enum rproto_t

Protocol IDs.

Enumerator:
RPROTO_NONE 

No protocol given, unused entry, use default.

RPROTO_ROARAUDIO 

The RoarAudio protocol.

RPROTO_ESOUND 

Old EsounD protocol.

RPROTO_AUTO 

Auto select protocol.

RPROTO_HTTP 

HTTP.

RPROTO_GOPHER 

Gopher.

RPROTO_ICY 

Nullsoft ICY protocol.

RPROTO_SIMPLE 

PulseAudio Simple protocol.

RPROTO_RSOUND 

RSound protocol.

RPROTO_RPLAY 

RPlay protocol.

RPROTO_IRC 

Internet Relay Chat (IRC)

RPROTO_DCC 

Direct Client-to-Client (DCC)

RPROTO_ECHO 

Echo.

RPROTO_DISCARD 

Discard.

RPROTO_WHOIS 

Whois protocol.

RPROTO_FINGER 

Finger protocol.

RPROTO_QUOTE 

Quote.

RPROTO_DAYTIME 

Daytime protocol.

Definition at line 374 of file proto.h.

enum rrole_t

Roles a stream can have.

Enumerator:
RROLE_UNKNOWN 

Unknown role.

RROLE_NONE 

No role assigned.

RROLE_MUSIC 

Normal music.

RROLE_VIDEO 

Sound from a video.

RROLE_GAME 

Sound generted by a game (see also RROLE_BACKGROUND_MUSIC)

RROLE_EVENT 

Event sounds?

RROLE_BEEP 

Notify beep sounds.

RROLE_PHONE 

Voice connections (RoN, VoIP, ISDN,...)

RROLE_BACKGROUND_MUSIC 

Background music.

RROLE_VOICE 

Voice stream (singer, speaker, ....)

RROLE_INSTRUMENT 

General instrument.

RROLE_RHYTHM 

Rhythem instrument.

RROLE_CLICK 

Click track.

RROLE_MIXED 

Already mixed data (for example outout of another sound daemon)

Definition at line 233 of file proto.h.

enum rstandby_t

Possible standby modes.

Enumerator:
RSTANDBY_INACTIVE 

Standby is inactive.

RSTANDBY_ACTIVE 

Standby is active.

Definition at line 265 of file proto.h.

Sub-Commands for the RCMD_?ET_STREAM_PARA commands.

Enumerator:
RSTREAMPARA_INFO 

Ask for info structure.

RSTREAMPARA_FLAGS 

Operate on stream flags.

RSTREAMPARA_NAME 

Get or set stream name.

RSTREAMPARA_CHANMAP 

Get or set channel mapping.

RSTREAMPARA_ROLE 

Get or set stream role.

RSTREAMPARA_HASHTABLE 

Get or set stream's HashTable.

RSTREAMPARA_WININFO 

Get or set stream's hints for windowing systems.

RSTREAMPARA_PROPTABLE 

Get or set stream's PropTable.

RSTREAMPARA_LTM 

Get or set stream's Long Term Monitoring (LTM) parameters.

RSTREAMPARA_RADIO 

Get or set radio transmitter or receiver parameters.

Definition at line 314 of file proto.h.

States a stream can have.

Enumerator:
RSTREAMSTATE_UNKNOWN 

The state of stream is unknown.

RSTREAMSTATE_NULL 

The stream does not exist.

RSTREAMSTATE_UNUSED 

The stream object is unused.

RSTREAMSTATE_INITING 

The stream is initing (is creating)

RSTREAMSTATE_NEW 

The stream is new. This means the stream have not been used yet.

RSTREAMSTATE_OLD 

The stream is old, This means it was arrady used for data.

RSTREAMSTATE_CLOSING 

The stream is currently closing. This state should only be rarly seen from outsite the server.

RSTREAMSTATE_ERROR 

Stream is in error condition.

RSTREAMSTATE_NEEDSEEK 

like RSTREAMSTATE_ERROR but can be reset using SEEK command

Definition at line 160 of file proto.h.

enum rterm_t

Parameter for server termination (RCMD_EXIT)

Enumerator:
RTERM_EXIT 

Request the server to exit without waiting for clients to exit.

RTERM_TERM 

Request the server to exit but wait for clients to exit.

Definition at line 126 of file proto.h.

enum rvolch_t

Parameter for type of volume change.

Enumerator:
RVOL_SET_ALL 

Set all channels at once.

RVOL_SET_ONE 

Set only one channel.

RVOL_SET_MS 

Set volume in a Mid/Side way (Volume/Balance)

RVOL_SET_UNMAPED 

Set volume unmapped to current stream.

Definition at line 134 of file proto.h.

enum rwhence_t

Whence for SEEK command.

Enumerator:
RWHENCE_BEGIN 

Point is relative to begin of stream. This is normally used for absolute seeks.

RWHENCE_CUR 

Point is relative to current possition of stream. This is normally used for relative seeks like +/-10sec.

RWHENCE_END 

Point is relative to end of stream.

Definition at line 446 of file proto.h.