Index: include/libroar/acl.h
===================================================================
--- include/libroar/acl.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//acl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARACL_H_
-#define _LIBROARACL_H_
-
-#include "libroar.h"
-
-int roar_acl_rule_chk_connect (struct roar_acl_rule * rule, struct sockaddr * addr, socklen_t addrlen);
-
-#endif
-
-//ll
Index: include/libroar/asyncctl.h
===================================================================
--- include/libroar/asyncctl.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//asyncctl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARASYNCCTL_H_
-#define _LIBROARASYNCCTL_H_
-
-#include "libroar.h"
-
-int roar_wait (struct roar_connection * con, struct roar_event * triggered, struct roar_event * events, size_t num);
-
-#endif
-
-//ll
Index: include/libroar/auth.h
===================================================================
--- include/libroar/auth.h	(revision 6052)
+++ include/libroar/auth.h	(revision 0)
@@ -1,36 +1,3 @@
 //auth.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
 
 #ifndef _LIBROARAUTH_H_
@@ -39,25 +6,5 @@
 #include "libroar.h"
 
-struct roar_auth_message {
- int type;
- int stage;
- union {
-  char     c[2];
-  uint16_t ui16;
- } reserved;
- void * data;
- size_t len;
-};
-
 int roar_auth   (struct roar_connection * con);
-
-int roar_auth_from_mes(struct roar_auth_message * ames, struct roar_message * mes, void * data);
-int roar_auth_to_mes(struct roar_message * mes, void ** data, struct roar_auth_message * ames);
-
-int roar_auth_init_mes(struct roar_message * mes, struct roar_auth_message * ames);
-
-
-int    roar_str2autht(const char * str);
-const char * roar_autht2str(const int auth);
 
 #endif
Index: include/libroar/authfile.h
===================================================================
--- include/libroar/authfile.h	(revision 6052)
+++ 	(revision )
@@ -1,83 +1,0 @@
-//authfile.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARAUTHFILE_H_
-#define _LIBROARAUTHFILE_H_
-
-#include "libroar.h"
-
-#define ROAR_AUTHFILE_TYPE_AUTO       -1 /* auto detect type of key */
-#define ROAR_AUTHFILE_TYPE_NONE        0 /* dummy */
-#define ROAR_AUTHFILE_TYPE_ROAR        1 /* RoarAudio */
-#define ROAR_AUTHFILE_TYPE_ESD         2 /* EsounD, plain cookie, len=16 byte */
-#define ROAR_AUTHFILE_TYPE_PULSE       3 /* PulseAudio, plain cookie, len=256 byte */
-#define ROAR_AUTHFILE_TYPE_HTPASSWD    4 /* Common .htpasswd format */
-#define ROAR_AUTHFILE_TYPE_XAUTH       5 /* a xauth file */
-
-#define ROAR_AUTHFILE_VERSION_AUTO    -1
-
-struct roar_authfile;
-
-struct roar_authfile * roar_authfile_open(int type, const char * filename, int rw, int version);
-int roar_authfile_close(struct roar_authfile * authfile);
-
-int roar_authfile_lock(struct roar_authfile * authfile);
-int roar_authfile_unlock(struct roar_authfile * authfile);
-
-int roar_authfile_sync(struct roar_authfile * authfile);
-
-struct roar_authfile_key {
- size_t refc;
- int type;
- int index;
- const char * address;
- void * data;
- size_t len;
-};
-
-struct roar_authfile_key * roar_authfile_key_new(int type, size_t len, const char * addr);
-#define roar_authfile_key_free(key) roar_authfile_key_unref(key)
-int roar_authfile_key_ref(struct roar_authfile_key * key);
-int roar_authfile_key_unref(struct roar_authfile_key * key);
-
-int roar_authfile_add_key(struct roar_authfile * authfile, struct roar_authfile_key * key);
-
-struct roar_authfile_key * roar_authfile_lookup_key(struct roar_authfile * authfile, int type, int minindex, const char * address);
-
-struct roar_authfile_key * roar_authfile_key_new_random(int type, size_t len, const char * addr);
-
-#endif
-
-//ll
Index: include/libroar/base64.h
===================================================================
--- include/libroar/base64.h	(revision 6052)
+++ 	(revision )
@@ -1,68 +1,0 @@
-//base64.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARBASE64_H_
-#define _LIBROARBASE64_H_
-
-#include "libroar.h"
-
-#define ROAR_BASE64_FLAG_NONE           0x0000
-#define ROAR_BASE64_FLAG_EOF            0x0001
-#define ROAR_BASE64_FLAG_OPENPGP        0x0002
-#define ROAR_BASE64_FLAG_CRC_OK         0x0004
-
-struct roar_base64 {
- int flags;
- unsigned char iobuf[3];
- int buflen;
- int reg, reglen;
-};
-
-int roar_base64_init(struct roar_base64 * state, int flags);
-
-#define roar_base64_init_encode(state,flags) roar_base64_init((state),(flags))
-#define roar_base64_init_decode(state,flags) roar_base64_init((state),(flags))
-
-ssize_t roar_base64_encode(struct roar_base64 * state, void * out, size_t outlen, const void * in, size_t inlen, size_t * off, int eof);
-
-ssize_t roar_base64_decode(struct roar_base64 * state, void * out, size_t outlen, const void * in, size_t inlen, size_t * off);
-
-int roar_base64_is_eof(struct roar_base64 * state);
-
-int roar_base64_uninit(struct roar_base64 * state);
-
-#endif
-
-//ll
Index: include/libroar/basic.h
===================================================================
--- include/libroar/basic.h	(revision 6052)
+++ include/libroar/basic.h	(revision 0)
@@ -1,36 +1,3 @@
-//basic.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+//libroarbasic.h:
 
 #ifndef _LIBROARBASIC_H_
@@ -41,18 +8,4 @@
 #define LIBROAR_BUFFER_SMALL   80
 #define LIBROAR_BUFFER_MSGDATA LIBROAR_BUFFER_SMALL
-#define _ROAR_MESSAGE_VERSION 0
-
-#if ROAR_MAX_CHANNELS > (LIBROAR_BUFFER_SMALL - 10)
-#error ROAR_MAX_CHANNELS too large change ROAR_MAX_CHANNELS or LIBROAR_BUFFER_SMALL
-#endif
-
-#define ROAR_CON_FLAGS_NONE        0x00000000UL
-#define ROAR_CON_FLAGS_FH          0x00000001UL /* obsoleted */
-#define ROAR_CON_FLAGS_VIO         0x00000002UL /* mandatory */
-#define ROAR_CON_FLAGS_ISCLIENT    0x00000004UL
-#define ROAR_CON_FLAGS_SUPPORT_V2  0x00000008UL /* mandatory if con.version == 2 */
-#define ROAR_CON_FLAGS_SUPPORT_EF  0x00000010UL /* Both peers support error frames */
-#define ROAR_CON_FLAGS_FREESELF    0x00000020UL /* Free the connection object */
-#define ROAR_CON_FLAGS_TERMINATE   0x00000040UL /* Send TERMINATE before QUIT */
 
 struct roar_message {
@@ -60,74 +13,28 @@
  unsigned int stream;
  uint32_t pos;
- size_t datalen;
+ int datalen;
  char data[LIBROAR_BUFFER_MSGDATA];
- int16_t seq;
- int32_t flags;
- int32_t crc;
- int version;
- uint64_t pos64;
 };
 
-struct roar_stds; // "caps.h" will be included later.
-
 struct roar_connection {
- size_t refc;
- uint32_t flags;
- int version;
- struct roar_vio_calls * viocon;
- struct roar_vio_calls   viocon_store;
- struct roar_error_frame errorframe;
- void * cb_userdata;
- void (*cb)(struct roar_connection * con, struct roar_message * mes, void * data, void * userdata);
- struct roar_stds * server_stds;
- char * server_name;
+ int fh;
 };
 
 
-int roar_connect      (struct roar_connection * con, const char * server, int flags, uint_least32_t timeout);
-int roar_connect_none (struct roar_connection * con);
-int roar_connect_vio  (struct roar_connection * con, struct roar_vio_calls * vio);
-int roar_connect_fh   (struct roar_connection * con, int fh);
-int roar_get_connection_fh  (struct roar_connection * con);
-struct roar_vio_calls * roar_get_connection_vio2 (struct roar_connection * con);
-const char * roar_get_connection_server(struct roar_connection * con);
-int roar_connectionref(struct roar_connection * con);
-int roar_connectionunref(struct roar_connection * con);
-#define roar_disconnect(x) roar_connectionunref((x))
+int roar_connect_raw (char * server);
 
-int roar_set_connection_callback(struct roar_connection * con,
-                                 void (*cb)(struct roar_connection * con,
-                                            struct roar_message    * mes,
-                                            void                   * data,
-                                            void                   * userdata),
-                                 void * userdata);
+int roar_connect    (struct roar_connection * con, char * server);
+int roar_disconnect (struct roar_connection * con);
 
-int roar_set_connection_version(struct roar_connection * con, int version);
-
-int16_t roar_message_genseq(struct roar_connection * con, int is_client);
-
-int roar_sync         (struct roar_connection * con);
-int roar_wait_msg     (struct roar_connection * con, int16_t seq, int16_t seqmask);
-
-int roar_noop         (struct roar_connection * con);
-
-int roar_identify     (struct roar_connection * con, const char * name);
+int roar_identify   (struct roar_connection * con, char * name);
 
 int roar_send_message (struct roar_connection * con, struct roar_message * mes, char *  data);
 int roar_recv_message (struct roar_connection * con, struct roar_message * mes, char ** data);
 int roar_req          (struct roar_connection * con, struct roar_message * mes, char ** data);
-int roar_recv_message2 (struct roar_connection * con, struct roar_message * mes, char ** data,
-                        struct roar_error_frame * errorframe);
-int roar_req2          (struct roar_connection * con, struct roar_message * mes, char ** data,
-                        struct roar_error_frame * errorframe);
-#define roar_req3(con,mes,data) roar_req2((con), (mes), (data), roar_err_errorframe())
 
-int roar_vsend_message(struct roar_vio_calls  * vio, struct roar_message * mes, char *  data);
-int roar_vrecv_message(struct roar_vio_calls  * vio, struct roar_message * mes, char ** data);
-int roar_vreq         (struct roar_vio_calls  * vio, struct roar_message * mes, char ** data);
-int roar_vrecv_message2(struct roar_vio_calls  * vio, struct roar_message * mes, char ** data,
-                        struct roar_error_frame * errorframe);
-int roar_vreq2         (struct roar_vio_calls  * vio, struct roar_message * mes, char ** data,
-                        struct roar_error_frame * errorframe);
+int roar_debug_message_print (struct roar_message * mes);
+
+int roar_debug_audio_info_print (struct roar_audio_info * info);
+
 #endif
 
Index: include/libroar/beep.h
===================================================================
--- include/libroar/beep.h	(revision 6052)
+++ 	(revision )
@@ -1,53 +1,0 @@
-//beep.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARBEEP_H_
-#define _LIBROARBEEP_H_
-
-#include "libroar.h"
-
-struct roar_beep {
- uint16_t vol;
- uint16_t time;
- uint16_t freq;
- uint16_t type;
- int16_t  x, y, z;
-};
-
-int roar_beep(struct roar_connection * con, const struct roar_beep * beep);
-
-#endif
-
-//ll
Index: include/libroar/buffer.h
===================================================================
--- include/libroar/buffer.h	(revision 6052)
+++ include/libroar/buffer.h	(revision 0)
@@ -1,36 +1,3 @@
 //buffer.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
 
 #ifndef _LIBROAR_BUFFER_H_
@@ -39,81 +6,31 @@
 #include <roaraudio.h>
 
-#define ROAR_BUFFER_FLAG_NONE            0x00
-#define ROAR_BUFFER_FLAG_NOFREE          0x01
-#define ROAR_BUFFER_FLAG_RING            0x02
-#define ROAR_BUFFER_FLAG_FREE_RUNNING    0x04
-
-// for memory corruption detection:
-#define ROAR_BUFFER_FLAG_USEABLE         0x40
-#define ROAR_BUFFER_FLAG_FREED           0x80
-
-#define ROAR_BUFFER_SET                     0
-#define ROAR_BUFFER_RESET                   1
-
-#define _LIBROAR_BUFFER_STDATTRS _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL
-
-struct roar_buffer;
-
-struct roar_buffer_stats {
- size_t parts;
- size_t bytes;
- size_t memory_usage;
+struct roar_buffer {
+ size_t               len;
+ size_t               user_len;
+ void               * data;
+ void               * user_data;
+ void               * meta;
+ struct roar_buffer * next;
 };
 
-#define roar_buffer_new(a,len) roar_buffer_new_data((a), (len), NULL)
+#define roar_buffer_next(a) roar_buffer_delete(*(a), (a));
 
-#define roar_buffer_free(x)    roar_buffer_unref(x)
+int roar_buffer_new      (struct roar_buffer ** buf, size_t len);
+int roar_buffer_free     (struct roar_buffer *  buf);
+int roar_buffer_delete   (struct roar_buffer *  buf, struct roar_buffer ** next);
+int roar_buffer_add      (struct roar_buffer *  buf, struct roar_buffer *  next);
 
-#define roar_buffer_foreach(cur) for (; (cur) != NULL; (cur) = (roar_buffer_next(&(cur)) == -1) ? NULL : (cur))
+int roar_buffer_get_next (struct roar_buffer *  buf, struct roar_buffer ** next);
 
-int roar_buffer_new_no_ma(struct roar_buffer ** buf, size_t len, void * data) _LIBROAR_BUFFER_STDATTRS; // no internal malloc
-int roar_buffer_delete   (struct roar_buffer *  buf, struct roar_buffer ** next) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_next     (struct roar_buffer ** buf) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_add      (struct roar_buffer *  buf, struct roar_buffer *  next) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_moveinto (struct roar_buffer *  buf, struct roar_buffer ** next) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_moveintoqueue(struct roar_buffer ** buf, struct roar_buffer ** next) _LIBROAR_BUFFER_STDATTRS;
+int roar_buffer_get_data (struct roar_buffer *  buf, void   ** data);
 
-int roar_buffer_ref      (struct roar_buffer *  buf) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_buffer_unref    (struct roar_buffer *  buf) _LIBROAR_ATTR_NONNULL_ALL;
+int roar_buffer_set_offset (struct roar_buffer *  buf, size_t off);
 
-int roar_buffer_new_data (struct roar_buffer ** buf, size_t len, void ** data) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1);
+int roar_buffer_set_meta (struct roar_buffer *  buf, void   *  meta);
+int roar_buffer_get_meta (struct roar_buffer *  buf, void   ** meta);
 
-int roar_buffer_new_str  (struct roar_buffer ** buf, const char * str, int terminate) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-
-int roar_buffer_ring_new (struct roar_buffer ** buf, size_t len, int free_running) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_get_next   (struct roar_buffer *  buf, struct roar_buffer ** next) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_get_data (struct roar_buffer   * buf, void   ** data) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_datalen(struct roar_buffer * buf, void   ** data, size_t * len) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_set_offset (struct roar_buffer *  buf, size_t off) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_shift_out (struct roar_buffer ** buf, void * data, size_t * len) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_set_meta    (struct roar_buffer *  buf, void    *  meta) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_meta    (struct roar_buffer *  buf, void    ** meta) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_set_meta_i32(struct roar_buffer *  buf, int32_t    meta) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_meta_i32(struct roar_buffer *  buf, int32_t *  meta) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_set_type    (struct roar_buffer *  buf, int        type) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_type    (struct roar_buffer *  buf, int     *  type) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_set_len  (struct roar_buffer *  buf, size_t    len) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_len  (struct roar_buffer *  buf, size_t *  len) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_set_flag (struct roar_buffer *  buf, int flag, int reset) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_get_flag (struct roar_buffer *  buf, int flag) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_duplicate (struct roar_buffer *  buf, struct roar_buffer ** copy) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_ring_stats (struct roar_buffer *  buf, struct roar_buffer_stats * stats) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_ring_read  (struct roar_buffer *  buf, void * data, size_t * len) _LIBROAR_BUFFER_STDATTRS;
-int roar_buffer_ring_write (struct roar_buffer *  buf, void * data, size_t * len) _LIBROAR_BUFFER_STDATTRS;
-
-int roar_buffer_ring_avail(struct roar_buffer *  buf, size_t * readlen, size_t * writelen) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1);
-
-int roar_buffer_ring_reset(struct roar_buffer *  buf) _LIBROAR_BUFFER_STDATTRS;
+int roar_buffer_set_len  (struct roar_buffer *  buf, size_t    len);
+int roar_buffer_get_len  (struct roar_buffer *  buf, size_t *  len);
 
 #endif
Index: include/libroar/caps.h
===================================================================
--- include/libroar/caps.h	(revision 6052)
+++ 	(revision )
@@ -1,69 +1,0 @@
-//caps.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARCAPS_H_
-#define _LIBROARCAPS_H_
-
-#include "libroar.h"
-
-struct roar_caps {
- int version;
- int type;
- int flags;
- void * data;
- size_t len;
-};
-
-struct roar_stds {
- size_t stds_len;
- uint32_t * stds;
-};
-
-const struct roar_stds * libroar_libstds(void);
-
-int roar_caps_to_msg(struct roar_message * mes,  struct roar_caps    * caps, void ** data);
-int roar_caps_from_msg(struct roar_caps  * caps, struct roar_message * mes,  void  * data);
-
-int roar_caps_stds(struct roar_connection * con, struct roar_stds ** out, struct roar_stds * in, int flags);
-
-struct roar_stds * roar_stds_new(size_t len);
-int roar_stds_free(struct roar_stds * stds);
-
-int roar_stds_str2vendor(const char * vendor);
-const char * roar_stds_vendor2str(const int vendor);
-
-#endif
-
-//ll
Index: include/libroar/cdrom.h
===================================================================
--- include/libroar/cdrom.h	(revision 6052)
+++ 	(revision )
@@ -1,73 +1,0 @@
-//cdrom.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARCDROM_H_
-#define _LIBROARCDROM_H_
-
-#include "libroar.h"
-
-#define ROAR_CDROM_MAX_DEVLEN 80
-
-#define ROAR_CDROM_RATE      44100
-#define ROAR_CDROM_CHANNELS  2
-#define ROAR_CDROM_BITS      16
-#define ROAR_CDROM_CODEC     ROAR_CODEC_DEFAULT /* we ask cdparanoia to output in host byte order */
-
-#define ROAR_CDROM_STREAMINFO ROAR_CDROM_RATE, ROAR_CDROM_CHANNELS, ROAR_CDROM_BITS, ROAR_CDROM_CODEC
-
-struct roar_cdrom {
- int play_local;
- int fh;
- int stream;
- int mixer;
- pid_t player;
- char device[ROAR_CDROM_MAX_DEVLEN];
- struct roar_connection * con;
-};
-
-struct roar_cdrom_title {
- int track;                 // 0..n, -1 = unset/end of list
- uint32_t start;            // offset in samples
- uint32_t length;           // length in samples
-};
-
-int roar_cdrom_open (struct roar_connection * con, struct roar_cdrom * cdrom, const char * device, int mixer);
-int roar_cdrom_close(struct roar_cdrom * cdrom);
-int roar_cdrom_stop (struct roar_cdrom * cdrom);
-int roar_cdrom_play (struct roar_cdrom * cdrom, int track);
-
-#endif
-
-//ll
Index: include/libroar/client.h
===================================================================
--- include/libroar/client.h	(revision 6052)
+++ 	(revision )
@@ -1,68 +1,0 @@
-//client.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROACLIENT_H_
-#define _LIBROACLIENT_H_
-
-#include "libroar.h"
-
-#define ROAR_CLIENT(x) ((struct roar_client*)(x))
-
-struct roar_client {
- int fh; /* controll connection */
-// int last_stream; /* id of the last stream created */
- char name[ROAR_BUFFER_NAME];
- int pid;
- int uid;
- int gid;
- int execed;
- int streams[ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT];
- struct roar_acl_target * acl;
- int proto;
- int byteorder;
- struct roar_nnode nnode;
-};
-
-int roar_client_new      (struct roar_client * client);
-int roar_client_set_fh   (struct roar_client * client, int fh);
-int roar_client_set_proto(struct roar_client * client, int proto, int byteorder);
-
-int roar_client_pass     (struct roar_connection * con, struct roar_client * client, uint16_t flags);
-
-int roar_client_exec     (struct roar_connection * con, struct roar_client * client, uint16_t flags);
-
-#endif
-
-//ll
Index: include/libroar/config.h
===================================================================
--- include/libroar/config.h	(revision 6052)
+++ 	(revision )
@@ -1,195 +1,0 @@
-//config.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARCONFIG_H_
-#define _LIBROARCONFIG_H_
-
-#include "libroar.h"
-
-struct roar_connection;
-
-// WorkAroundS:
-#define ROAR_LIBROAR_CONFIG_WAS_NONE        0x00
-#define ROAR_LIBROAR_CONFIG_WAS_USE_EXECED  0x01
-#define ROAR_LIBROAR_CONFIG_WAS_NO_SLP      0x02
-
-#define ROAR_LIBROAR_CONFIG_PSET_Q          0x0001
-#define ROAR_LIBROAR_CONFIG_PSET_COMPLEXITY 0x0002
-#define ROAR_LIBROAR_CONFIG_PSET_DTX        0x0004
-#define ROAR_LIBROAR_CONFIG_PSET_MAX_CC     0x0008
-#define ROAR_LIBROAR_CONFIG_PSET_ABR        0x0010 /* need to implement */
-#define ROAR_LIBROAR_CONFIG_PSET_VAD        0x0020 /* need to implement */
-#define ROAR_LIBROAR_CONFIG_PSET_AGC        0x0040 /* need to implement */
-#define ROAR_LIBROAR_CONFIG_PSET_DENOISE    0x0080 /* need to implement */
-#define ROAR_LIBROAR_CONFIG_PSET_VBR        0x0100
-#define ROAR_LIBROAR_CONFIG_PSET_MODE       0x0200
-
-#define ROAR_LIBROAR_CONFIG_MODE_NB         ROAR_SPEEX_MODE_NB
-#define ROAR_LIBROAR_CONFIG_MODE_WB         ROAR_SPEEX_MODE_WB
-#define ROAR_LIBROAR_CONFIG_MODE_UWB        ROAR_SPEEX_MODE_UWB
-
-// mode of operation:
-enum roar_libroar_config_opmode {
- ROAR_LIBROAR_CONFIG_OPMODE_NORMAL = 0,
-#define ROAR_LIBROAR_CONFIG_OPMODE_NORMAL   ROAR_LIBROAR_CONFIG_OPMODE_NORMAL
- ROAR_LIBROAR_CONFIG_OPMODE_FUNNY  = 1,
-#define ROAR_LIBROAR_CONFIG_OPMODE_FUNNY    ROAR_LIBROAR_CONFIG_OPMODE_FUNNY
- ROAR_LIBROAR_CONFIG_OPMODE_MS     = 2,
-#define ROAR_LIBROAR_CONFIG_OPMODE_MS       ROAR_LIBROAR_CONFIG_OPMODE_MS
-};
-
-struct roar_libroar_forkapi {
- int   (*prefork)(void ** context, void * userdata);
- pid_t (*fork   )(void ** context, void * userdata);
- int   (*failed )(void ** context, void * userdata);
- int   (*parent )(void ** context, void * userdata, pid_t child);
- int   (*child  )(void ** context, void * userdata);
- void * userdata;
-};
-
-struct roar_libroar_memmgrapi {
- void *  (*calloc)   (void * userdata, size_t nmemb, size_t size);
- void *  (*malloc)   (void * userdata, size_t size);
- int     (*free)     (void * userdata, void * ptr);
- void *  (*realloc)  (void * userdata, void * ptr, size_t size);
- int     (*reset)    (void * userdata);
- ssize_t (*sizeofbuf)(void * userdata, void * ptr);
-
-// TODO: Memmory locking is not yet supported this way.
- int (*mlock)        (void * userdata, const void * addr, size_t len);
- int (*munlock)      (void * userdata, const void * addr, size_t len);
- int (*mlockall)     (void * userdata, int flags);
- int (*munlockall)   (void * userdata);
-
- void * userdata;
-};
-
-struct roar_libroar_config_codec {
- uint32_t codec; // Codec ID
-
- // parameters which are set:
- unsigned int para_set;
-
- // the folloing ints are 256 times there correct value
- // to emulate a .8 bit fixed point float.
- int q;
- int complexity;
-
- // currectly bools:
- int dtx;
- int vbr;
-
- // sizes:
- size_t max_cc;
-
- // enums:
- int mode;
-};
-
-struct roar_libroar_config {
- struct {
-  int workarounds;
- } workaround;
- const char * server;
- struct {
-  int sysio;
-  int obsolete;
- } warnings;
- struct {
-  size_t num;
-  struct roar_libroar_config_codec * codec;
- } codecs;
- struct roar_audio_info info;
- char * authfile;
- char * serversfile;
- struct {
-  char * display;
- } x11;
- size_t nowarncounter;
-#ifdef ROAR_SUPPORT_TRAP
- enum roar_trap_policy trap_policy;
-#endif
- enum roar_libroar_config_opmode opmode;
- const struct roar_libroar_forkapi * forkapi;
- struct roar_vio_calls * (*connect_internal)(struct roar_connection * con, const char * server, int type, int flags, uint_least32_t timeout);
- char * daemonimage;
- int serverflags;
- int protocolversion;
-};
-
-struct roar_libroar_config * roar_libroar_get_config_ptr(void) _LIBROAR_ATTR_USE_RESULT;
-struct roar_libroar_config * roar_libroar_get_config(void) _LIBROAR_ATTR_USE_RESULT;
-
-int    roar_libroar_reset_config(void);
-
-int    roar_libroar_config_parse(char * txt, char * delm) _LIBROAR_ATTR_NONNULL(1);
-
-struct roar_libroar_config_codec * roar_libroar_config_codec_get(int32_t codec, int create);
-
-int    roar_libroar_set_server(const char * server);
-const char * roar_libroar_get_server(void) _LIBROAR_ATTR_USE_RESULT;
-
-int    roar_libroar_set_forkapi(const struct roar_libroar_forkapi * api);
-int    roar_libroar_set_memmgrapi(const struct roar_libroar_memmgrapi * api); // implemented in memmgr.c.
-
-int    roar_libroar_set_connect_internal(struct roar_vio_calls * (*func)(struct roar_connection * con, const char * server, int type, int flags, uint_least32_t timeout));
-
-void   roar_libroar_nowarn(void);
-void   roar_libroar_warn(void);
-#define roar_libroar_iswarn(cfg) (((cfg) == NULL ? roar_libroar_get_config_ptr() : (cfg))->nowarncounter ? 0 : 1)
-
-// get a buffer to a system local path (prefix).
-// name is the symbolic name of the path, e.g. "prefix-lib".
-// null_as_universal tells of NULL is considered as "universal".
-// if not set NULL is considered 'do not add product path, give root prefix'.
-// product is the name of the product in standard "product <id/vendor>" format.
-// provider is the "<id/vendor>" format. If NULL this is ignored.
-// Returns buffer which needs to be freed with roar_mm_free().
-// Not all paths support product/provider part. If not supported they are ignored.
-char * roar_libroar_get_path(const char * name, int null_as_universal, const char * product, const char * provider) _LIBROAR_ATTR_USE_RESULT;
-
-// This is similar roar_libroar_get_path() with the following diffrences:
-// * No product, provider or universal attribute can be passed.
-//   The result is as if they were 0, NULL, NULL.
-// * The returned buffer is some read-only memory which does not need to be
-//   freed.
-const char * roar_libroar_get_path_static(const char * name);
-
-// list all known paths:
-ssize_t roar_libroar_list_path(const char ** list, size_t len, size_t offset) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-
-#endif
-
-//ll
Index: include/libroar/crc.h
===================================================================
--- include/libroar/crc.h	(revision 6052)
+++ 	(revision )
@@ -1,57 +1,0 @@
-//crc.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARCRC_H_
-#define _LIBROARCRC_H_
-
-#include "libroar.h"
-
-uint32_t roar_crc24_add(uint32_t state, const void * data, size_t len);
-#define roar_crc24_init() roar_crc24_add(0, NULL, 0)
-
-uint32_t roar_adler32_add(uint32_t state, const void * data, size_t len);
-#define roar_adler32_init() roar_adler32_add(0, NULL, 0)
-
-int roar_hash_crc24_init(void * state);
-int roar_hash_crc24_digest(void * state, void * digest, size_t * len);
-int roar_hash_crc24_proc(void * state, const void * data, size_t len);
-
-int roar_hash_adler32_init(void * state);
-int roar_hash_adler32_digest(void * state, void * digest, size_t * len);
-int roar_hash_adler32_proc(void * state, const void * data, size_t len);
-
-#endif
-
-//ll
Index: include/libroar/crypto.h
===================================================================
--- include/libroar/crypto.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//crypto.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARCRYPTO_H_
-#define _LIBROARCRYPTO_H_
-
-#include "libroar.h"
-
-int roar_crypto_init (void);
-
-#endif
-
-//ll
Index: include/libroar/ctl.h
===================================================================
--- include/libroar/ctl.h	(revision 6052)
+++ include/libroar/ctl.h	(revision 0)
@@ -1,36 +1,3 @@
-//ctl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+//auth.h:
 
 #ifndef _LIBROARCTL_H_
@@ -39,17 +6,15 @@
 #include "libroar.h"
 
-#define _LIBROAR_CTL_STDATTRS _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL
-
-int roar_get_clientid  (struct roar_connection * con) _LIBROAR_CTL_STDATTRS;
-
-int roar_get_standby   (struct roar_connection * con) _LIBROAR_CTL_STDATTRS;
-int roar_set_standby   (struct roar_connection * con, int state) _LIBROAR_CTL_STDATTRS;
-
-int roar_terminate      (struct roar_connection * con, int terminate) _LIBROAR_CTL_STDATTRS;
-int roar_server_oinfo   (struct roar_connection * con, struct roar_stream * s, int dir) _LIBROAR_CTL_STDATTRS;
+#define ROAR_CTL_FILTER_ANY   0
 
 
-int roar_list         (struct roar_connection * con, int * items,   int max, int cmd) _LIBROAR_CTL_STDATTRS;
-int roar_list_filtered(struct roar_connection * con, int * items,   int max, int cmd, unsigned char filter, unsigned char cmp, uint32_t id) _LIBROAR_CTL_STDATTRS;
+int roar_get_standby   (struct roar_connection * con);
+int roar_set_standby   (struct roar_connection * con, int state);
+
+int roar_exit   (struct roar_connection * con);
+int roar_server_oinfo   (struct roar_connection * con, struct roar_stream * s);
+
+
+int roar_list         (struct roar_connection * con, int * items,   int max, int cmd);
 
 /*
@@ -60,11 +25,8 @@
 #define roar_list_streams(c,i,m) roar_list((c),(i),(m),ROAR_CMD_LIST_STREAMS)
 
-int roar_get_client   (struct roar_connection * con, struct roar_client * client, int id) _LIBROAR_CTL_STDATTRS;
-int roar_get_stream   (struct roar_connection * con, struct roar_stream * stream, int id) _LIBROAR_CTL_STDATTRS;
+int roar_get_client   (struct roar_connection * con, struct roar_client * client, int id);
+int roar_get_stream   (struct roar_connection * con, struct roar_stream * stream, int id);
 
-int roar_kick         (struct roar_connection * con, int type, int id) _LIBROAR_ATTR_NONNULL_ALL;
-
-int roar_set_vol      (struct roar_connection * con, int id, struct roar_mixer_settings * mixer, int   channels, int mode) _LIBROAR_CTL_STDATTRS;
-int roar_get_vol      (struct roar_connection * con, int id, struct roar_mixer_settings * mixer, int * channels) _LIBROAR_CTL_STDATTRS;
+int roar_kick         (struct roar_connection * con, int type, int id);
 
 // filter...
@@ -73,26 +35,11 @@
 #define roar_ctl_f2m_any(m) roar_ctl_f2m((m), ROAR_CTL_FILTER_ANY, ROAR_CTL_FILTER_ANY, ROAR_CTL_FILTER_ANY)
 
-int roar_filter_match (const unsigned cmp, const uint32_t a, const uint32_t b) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
 // int array
-int roar_ctl_ia2m     (struct roar_message * m, int * data, size_t len);
-int roar_ctl_m2ia     (struct roar_message * m, int * data, size_t len);
+int roar_ctl_ia2m     (struct roar_message * m, int * data, int len);
+int roar_ctl_m2ia     (struct roar_message * m, int * data, int len);
 
 // client
 int roar_ctl_c2m      (struct roar_message * m, struct roar_client * c);
 int roar_ctl_m2c      (struct roar_message * m, struct roar_client * c);
-int roar_ctl_c2m2     (struct roar_message * m, struct roar_client * c, void ** data);
-int roar_ctl_m2c2     (struct roar_message * m, struct roar_client * c, void  * data);
-
-int    roar_str2proto (const char * proto) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-const char * roar_proto2str (const int    proto) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int    roar_str2byteorder (const char * byteorder) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-const char * roar_byteorder2str (const int    byteorder) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int    roar_str2ot        (const char * ot) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-const char * roar_ot2str  (const int    ot) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int roar_conv_volume (struct roar_mixer_settings * dst, struct roar_mixer_settings * src, int dstchans, int srcchans) _LIBROAR_CTL_STDATTRS;
 
 #endif
Index: include/libroar/debug.h
===================================================================
--- include/libroar/debug.h	(revision 6052)
+++ 	(revision )
@@ -1,83 +1,0 @@
-//debug.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDEBUG_H_
-#define _LIBROARDEBUG_H_
-
-#include "libroar.h"
-
-#define ROAR_WARNING_NEVER       0
-#define ROAR_WARNING_ONCE        1
-#define ROAR_WARNING_ALWAYS      2
-
-#define ROAR_DEBUG_TYPE_ERROR    1
-#define ROAR_DEBUG_TYPE_WARNING  2
-#define ROAR_DEBUG_TYPE_INFO     3
-#define ROAR_DEBUG_TYPE_DEBUG    4
-
-#define ROAR_DEBUG_MODE_SYSIO    0
-#define ROAR_DEBUG_MODE_VIO      1
-#define ROAR_DEBUG_MODE_SYSLOG   2
-
-#if 1
-#define roar_debug_warn_sysio(f,n,i)     roar_debug_warn_sysio_real((f),(n),(i))
-#define roar_debug_warn_obsolete(f,n,i)  roar_debug_warn_obsolete_real((f),(n),(i))
-#else
-#define roar_debug_warn_sysio(f,n,i)
-#define roar_debug_warn_obsolete(f,n,i)
-#endif
-
-void roar_debug_warn_sysio_real   (char * func, char * newfunc, char * info);
-void roar_debug_warn_obsolete_real(char * func, char * newfunc, char * info);
-
-void roar_debug_bin_obsolete(const char * progname, const char * newprog, const char * info);
-void roar_debug_option_obsolete(const char * progname, const char * option, const char * newopt, const char * info);
-
-// Error handle:
-struct roar_vio_calls; // will be declared later in vio.h
-
-void   roar_debug_set_stderr_fh(int fh);
-void   roar_debug_set_stderr_vio(struct roar_vio_calls * vio);
-void   roar_debug_set_stderr_mode(int mode);
-
-struct roar_vio_calls * roar_debug_get_stderr(void);
-
-void roar_debug_msg_simple(const char *format, ...) _LIBROAR_ATTR_PRINTF(1, 2);
-
-void roar_debug_msg(int type, unsigned long int line, const char * file, const char * prefix, const char * format, ...) _LIBROAR_ATTR_PRINTF(5, 6);
-
-#endif
-
-//ll
Index: include/libroar/display.h
===================================================================
--- include/libroar/display.h	(revision 6052)
+++ 	(revision )
@@ -1,50 +1,0 @@
-//display.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDISPLAY_H_
-#define _LIBROARDISPLAY_H_
-
-#include "libroar.h"
-
-#define ROAR_DISPLAY_TYPE_NONE        0
-#define ROAR_DISPLAY_TYPE_X11         1
-
-struct roar_display_info {
- int type;
-};
-
-#endif
-
-//ll
Index: include/libroar/enumdev.h
===================================================================
--- include/libroar/enumdev.h	(revision 6052)
+++ 	(revision )
@@ -1,92 +1,0 @@
-//enumdev.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARENUMDEV_H_
-#define _LIBROARENUMDEV_H_
-
-#include "libroar.h"
-
-#define ROAR_ENUM_FLAG_NONE         0x0000 /* no flags set                     */
-#define ROAR_ENUM_FLAG_DESC         0x0001 /* ask for server description     1 */
-#define ROAR_ENUM_FLAG_LOCATION     0x0002 /* ask for server location        1 */
-#define ROAR_ENUM_FLAG_NONBLOCK     0x0004 /* do not block                     */
-#define ROAR_ENUM_FLAG_HARDNONBLOCK 0x0008 /* do even less block than NONBLOCK */
-#define ROAR_ENUM_FLAG_LOCALONLY    0x0010 /* only list local servers          */
-/*
- * 1 = This is a request. The result may include or not include the data anyway.
- *     This is only so the lib does not need to spend extra work when data is not needed.
- */
-
-struct roar_server {
- const char * server;
- const char * description;
- const char * location;
-};
-
-struct roar_mixer {
- const int dir;
- //...
-};
-
-/* Get a list of possible devices
- *
- * This function returns a list of possible device names.
- * The list is for suggestions in GUIs and simular.
- * A implementation SHOULD (VERY, VERY RECOMMENDED) have a freeform
- * input so the user can enter any server address.
- *
- * The list returned is a array of struct roar_server elements.
- * The final element has the member server set to NULL.
- * This element represents the default server (libroar will try to find
- * a server on it's own).
- *
- */
-struct roar_server * roar_enum_servers(int flags, int dir, int socktype);
-
-/* Free the server list
- */
-int roar_enum_servers_free(struct roar_server * servs);
-
-/* Return the number of elements in the server list
- *
- * This function is a optimized way to find out how may entry are in the server list.
- * However you should not call this too often and avoid needing to know the total at all.
- * Write software in a way that it tests for the server == NULL condition.
- */
-ssize_t roar_enum_servers_num(struct roar_server * servs);
-
-#endif
-
-//ll
Index: include/libroar/env.h
===================================================================
--- include/libroar/env.h	(revision 6052)
+++ 	(revision )
@@ -1,50 +1,0 @@
-//env.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARENV_H_
-#define _LIBROARENV_H_
-
-#include "libroar.h"
-
-int roar_env_set(struct roar_keyval * keyval);
-const char * roar_env_get(const char * key) _LIBROAR_ATTR_USE_RESULT;
-const char * roar_env_get_home(int level) _LIBROAR_ATTR_USE_RESULT;
-int roar_env_get_home_r(int level, char * str, size_t len) _LIBROAR_ATTR_USE_RESULT;
-
-int roar_env_render_path_r(char * out, size_t len, const char * inpath) _LIBROAR_ATTR_USE_RESULT;
-
-#endif
-
-//ll
Index: include/libroar/error.h
===================================================================
--- include/libroar/error.h	(revision 6052)
+++ 	(revision )
@@ -1,154 +1,0 @@
-//error.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARERROR_H_
-#define _LIBROARERROR_H_
-
-#include "libroar.h"
-
-struct roar_message;
-
-enum roar_error_type {
- ROAR_ERROR_TYPE_ROARAUDIO = 0,
- ROAR_ERROR_TYPE_ERRNO,
- ROAR_ERROR_TYPE_WINSOCK,
- ROAR_ERROR_TYPE_HERROR,
- ROAR_ERROR_TYPE_YIFF,
- ROAR_ERROR_TYPE_APPLICATION,
- ROAR_ERROR_TYPE_HTTP,
- ROAR_ERROR_TYPE_EAI /* getaddrinfo() and friends */
-};
-
-/*
-  Off Size (Byte)
-    | | /- Name
-    0 1 Version
-    1 1 Cmd
-    2 1 RA Errno
-    3 1 RA SubErrno
-    4 2 Portable Errno
-    6 2 Flags
-   (8 0 Datalen)
-    8 N Data
- */
-
-struct roar_error_frame {
- int version;
- int cmd;
- int ra_errno;
- int ra_suberrno;
- int p_errno;
- uint16_t flags;
- size_t datalen;
- void * data;
-};
-
-struct roar_error_state {
- size_t refc;
- int libroar_error; // roar_error
- int system_error; // errno
-#ifdef ROAR_TARGET_WIN32
- int winsock_error; // WSAGetLastError(), WSASetLastError()
-#endif
-#ifdef ROAR_HAVE_VAR_H_ERRNO
- int syssock_herror; // h_errno
-#endif
-#ifdef __YIFF__
- yiffc_error_t yiffc_error; // yiffc_error
-#endif
-};
-
-struct roar_error_frame * roar_err_errorframe(void);
-
-int    roar_err_init(struct roar_error_frame * frame);
-void * roar_err_buildmsg(struct roar_message * mes, void ** data, struct roar_error_frame * frame);
-int    roar_err_parsemsg(struct roar_message * mes, void *  data, struct roar_error_frame * frame);
-
-#define roar_error (*roar_errno2())
-int *  roar_errno2(void);
-
-// clear RoarAudio's error value
-void   roar_err_clear(void);
-
-// clear system's error value (errno)
-void   roar_err_clear_errno(void);
-
-// clear all error values (to be used before calling roar_err_update())
-void   roar_err_clear_all(void);
-
-// syncs RoarAudio's and system's error values
-void   roar_err_update(void);
-
-// test of system's error value is set to 'no error'
-int    roar_err_is_errno_clear(void);
-
-// set RoarAudio's error value
-void   roar_err_set(const int error);
-
-// sync RoarAudio's error value with the value from the system
-void   roar_err_from_errno(void);
-
-// sync systen's error value with the value from RoarAudio
-void   roar_err_to_errno(void);
-
-// Convert error codes between diffrent representations.
-// returnes the error or ROAR_ERROR_NONE on success so it does not alter global error state.
-int    roar_err_convert(int * out, const enum roar_error_type outtype, const int in, const enum roar_error_type intype);
-
-// Outputs a default error for the given type.
-// returnes the error or ROAR_ERROR_NONE on success so it does not alter global error state.
-int    roar_err_get_default_error(int * out, const enum roar_error_type type);
-
-// Resets the stored state to 'no error' state. This can be used
-// to init the state.
-int    roar_err_initstore(struct roar_error_state * state);
-
-// store a error state (both libroar and system)
-// returnes the error or ROAR_ERROR_NONE on success so it does not alter global error state.
-int    roar_err_store(struct roar_error_state * state);
-
-// restore error state to values at time of call to roar_err_store()
-// returnes the error or ROAR_ERROR_NONE on success so it does not alter global error state.
-int    roar_err_restore(struct roar_error_state * state);
-
-// Return a string descriping the error
-const char * roar_error2str(const int error);
-
-// Error string looking like a read only variable.
-#define roar_errorstring (roar_error2str(roar_error))
-
-#endif
-
-//ll
Index: include/libroar/file.h
===================================================================
--- include/libroar/file.h	(revision 6052)
+++ 	(revision )
@@ -1,51 +1,0 @@
-//file.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARFILE_H_
-#define _LIBROARFILE_H_
-
-#include "libroar.h"
-
-#ifdef ROAR_HAVE_LINUX_SENDFILE
-#include <sys/sendfile.h>
-#endif
-
-int          roar_file_codecdetect(const char * buf, const int len);
-
-const char * roar_cdromdevice     (void);
-
-#endif
-
-//ll
Index: include/libroar/hash.h
===================================================================
--- include/libroar/hash.h	(revision 6052)
+++ 	(revision )
@@ -1,123 +1,0 @@
-//hash.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARHASH_H_
-#define _LIBROARHASH_H_
-
-#include "libroar.h"
-
-typedef uint_least32_t roar_hash_t;
-
-// the hashtypes:
-#define ROAR_HT_NONE        ((roar_hash_t)0UL)
-#define ROAR_HT_MD5         ((roar_hash_t)1UL)
-#define ROAR_HT_SHA1        ((roar_hash_t)2UL)
-#define ROAR_HT_RIPEMD160   ((roar_hash_t)3UL)
-#define ROAR_HT_MD2         ((roar_hash_t)5UL)
-#define ROAR_HT_TIGER       ((roar_hash_t)6UL)
-#define ROAR_HT_HAVAL       ((roar_hash_t)7UL)
-#define ROAR_HT_SHA256      ((roar_hash_t)8UL)
-#define ROAR_HT_SHA384      ((roar_hash_t)9UL)
-#define ROAR_HT_SHA512      ((roar_hash_t)10UL)
-#define ROAR_HT_SHA224      ((roar_hash_t)11UL)
-#define ROAR_HT_MD4         ((roar_hash_t)301UL)
-#define ROAR_HT_CRC32       ((roar_hash_t)302UL)
-#define ROAR_HT_RFC1510     ((roar_hash_t)303UL)
-#define ROAR_HT_RFC2440     ((roar_hash_t)304UL)
-#define ROAR_HT_WHIRLPOOL   ((roar_hash_t)305UL)
-#define ROAR_HT_UUID        ((roar_hash_t)70000UL)
-#define ROAR_HT_GTN8        ((roar_hash_t)70001UL)
-#define ROAR_HT_GTN16       ((roar_hash_t)70002UL)
-#define ROAR_HT_GTN32       ((roar_hash_t)70004UL)
-#define ROAR_HT_GTN64       ((roar_hash_t)70008UL)
-#define ROAR_HT_CLIENTID    ((roar_hash_t)71001UL)
-#define ROAR_HT_STREAMID    ((roar_hash_t)71002UL)
-#define ROAR_HT_SOURCEID    ((roar_hash_t)71003UL)
-#define ROAR_HT_SAMPLEID    ((roar_hash_t)71004UL)
-#define ROAR_HT_MIXERID     ((roar_hash_t)71005UL)
-#define ROAR_HT_BRIDGEID    ((roar_hash_t)71006UL)
-#define ROAR_HT_LISTENID    ((roar_hash_t)71007UL)
-#define ROAR_HT_ACTIONID    ((roar_hash_t)71008UL)
-#define ROAR_HT_MSGQUEUEID  ((roar_hash_t)71009UL)
-#define ROAR_HT_MSGBUSID    ((roar_hash_t)71010UL)
-#define ROAR_HT_GTIN8       ((roar_hash_t)72001UL)
-#define ROAR_HT_GTIN13      ((roar_hash_t)72002UL)
-#define ROAR_HT_ISBN10      ((roar_hash_t)72003UL)
-#define ROAR_HT_ISBN13      ROAR_HT_GTIN13
-#define ROAR_HT_ADLER32     ((roar_hash_t)73001UL)
-
-struct roar_hash_cmds {
- roar_hash_t algo;
- ssize_t statelen;
- ssize_t blocksize;
- int (*init)(void * state);
- int (*uninit)(void * state);
- int (*digest)(void * state, void * digest, size_t * len);
- int (*proc_block)(void * state, const void * block);
- int (*proc)(void * state, const void * data, size_t len);
-};
-
-const char * roar_ht2str (const roar_hash_t ht);
-roar_hash_t  roar_str2ht (const char  * ht);
-
-ssize_t      roar_ht_digestlen (const roar_hash_t ht);
-
-ssize_t      roar_hash_digest2str(char * out, size_t outlen, void * digest, size_t digestlen, roar_hash_t ht);
-
-int          roar_ht_is_supported(const roar_hash_t ht);
-
-struct roar_hash_state;
-
-struct roar_hash_state * roar_hash_new(roar_hash_t algo);
-int roar_hash_free(struct roar_hash_state * state);
-int roar_hash_digest(struct roar_hash_state * state, void * digest, size_t * len);
-int roar_hash_proc(struct roar_hash_state * state, const void * data, size_t len);
-
-int roar_hash_buffer(void * digest, const void * data, size_t datalen, roar_hash_t algo);
-int roar_hash_salted_buffer(void * digest, const void * data, size_t datalen, roar_hash_t algo, const void * salt, size_t saltlen);
-
-
-// 'forwardings' for hashes without own header:
-struct roar_hash_sha1 {
- uint32_t state[5];
- uint64_t count;
- size_t in_buffer;
- char buffer[64];
- int is_final;
-};
-
-#endif
-
-//ll
Index: include/libroar/hash_tiger.h
===================================================================
--- include/libroar/hash_tiger.h	(revision 6052)
+++ 	(revision )
@@ -1,73 +1,0 @@
-//hash_tiger.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARHASH_TIGER_H_
-#define _LIBROARHASH_TIGER_H_
-
-#include "libroar.h"
-
-struct roar_hash_tiger {
- uint64_t a, b, c;
- char inbuf[64];
- size_t inlen;
- size_t blocks;
- int is_final;
-};
-
-// init and deinit functions:
-int roar_hash_tiger_init(struct roar_hash_tiger * state);
-int roar_hash_tiger_uninit(struct roar_hash_tiger * state);
-
-// functions needed for string internal state:
-int roar_hash_tiger_init_from_pstate(struct roar_hash_tiger * state, void * oldstate);
-int roar_hash_tiger_to_pstate(struct roar_hash_tiger * state, void * newstate, size_t * len);
-ssize_t roar_hash_tiger_statelen(struct roar_hash_tiger * state);
-
-// finalize, should not be called directly:
-int roar_hash_tiger_finalize(struct roar_hash_tiger * state);
-
-// finalize and get final digest:
-int roar_hash_tiger_get_digest(struct roar_hash_tiger * state, void * digest, size_t * len);
-
-// optimized functions to process fixed size data blocks:
-int roar_hash_tiger_proc_block(struct roar_hash_tiger * state, void * block);
-ssize_t roar_hash_tiger_blocklen(struct roar_hash_tiger * state);
-
-// normal function to process data:
-int roar_hash_tiger_proc(struct roar_hash_tiger * state, void * data, size_t len);
-
-#endif
-
-//ll
Index: include/libroar/keyval.h
===================================================================
--- include/libroar/keyval.h	(revision 6052)
+++ 	(revision )
@@ -1,60 +1,0 @@
-//keyval.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARKEYVAL_H_
-#define _LIBROARKEYVAL_H_
-
-#include "libroar.h"
-
-struct roar_keyval {
- char * key;
- char * value;
-};
-
-struct roar_keyval * roar_keyval_lookup (struct roar_keyval *  kv, const char * key, ssize_t len, int casesens);
-
-/* Split string into kv array.
- * Array needs to be freed with roar_mm_free().
- * String is not copied and destroyed by splitting but not freed.
- * fdel is list of seperator chars between kv-pairs.
- * kdel is list of seperator chars between keys and values.
- */
-ssize_t              roar_keyval_split  (struct roar_keyval ** kv, char * str, const char * fdel, const char * kdel, int quotes);
-
-void * roar_keyval_copy(struct roar_keyval ** copy, const struct roar_keyval * src, ssize_t len);
-
-#endif
-
-//ll
Index: include/libroar/kstore.h
===================================================================
--- include/libroar/kstore.h	(revision 6079)
+++ 	(revision )
@@ -1,66 +1,0 @@
-//kstore.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2012-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARKSTORE_H_
-#define _LIBROARKSTORE_H_
-
-#include "libroar.h"
-
-struct roar_kstore;
-
-struct roar_kstore * roar_kstore_new(ssize_t len,
-                                     int (*ref)(void *), int (*unref)(void *),
-                                     const char * (*get_key)(void *));
-int                  roar_kstore_ref(struct roar_kstore * store);
-int                  roar_kstore_unref(struct roar_kstore * store);
-
-int                  roar_kstore_add(struct roar_kstore * store, void * obj, const char * key);
-void *               roar_kstore_get(struct roar_kstore * store, const char * key);
-int                  roar_kstore_delete(struct roar_kstore * store, const char * key);
-const char *         roar_kstore_name(struct roar_kstore * store, const void * obj);
-
-int                  roar_kstore_foreach(struct roar_kstore * store, int (*func)(void *obj, void *userdata), void * userdata);
-
-ssize_t              roar_kstore_length(struct roar_kstore * store);
-
-// aliases:
-#define roar_kstore_new_connection(len) roar_kstore_new((len),                \
-                                        (int (*)(void*))roar_connectionref,   \
-                                        (int (*)(void*))roar_connectionunref, \
-                                        (const char * (*)(void*))roar_get_connection_server)
-
-#endif
-
-//ll
Index: include/libroar/libroar.h
===================================================================
--- include/libroar/libroar.h	(revision 6067)
+++ include/libroar/libroar.h	(revision 0)
@@ -1,304 +1,20 @@
 //libroar.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
 
 #ifndef _LIBROAR_H_
 #define _LIBROAR_H_
 
-//#define ROAR_DBG_PREFIX  "libroar"
+#define ROAR_DBG_PREFIX  "libroar"
+
+#include <fcntl.h>
 
 #include <roaraudio.h>
-
-// Parameter passing:
-
-#include <stdarg.h>
-
-// Process control:
-
-#ifdef ROAR_HAVE_WAIT
-#include <sys/wait.h>
-#endif
-
-// File handle control:
-
-#ifdef ROAR_HAVE_H_FCNTL
-#include <fcntl.h>
-#endif
-
-// Signal handling:
-
-#ifdef ROAR_HAVE_H_SIGNAL
-#include <signal.h>
-#endif
-
-// Logging:
-
-#ifdef ROAR_HAVE_SYSLOG
-#include <syslog.h>
-#endif
-
-// Network:
-
-#ifdef ROAR_TARGET_WIN32
-#include <winsock2.h>
-#elif defined(ROAR_HAVE_BSDSOCKETS)
-
-// <sys/socket.h> is included in <roaraudio.h> as it is required early.
-
-#ifdef ROAR_HAVE_IPV4
-#include <netinet/in_systm.h>
-#include <netinet/in.h>
-#include <netinet/ip.h>
-#include <netinet/tcp.h>
-#endif
-
-#if defined(ROAR_HAVE_IPV4) || defined(ROAR_HAVE_IPV6)
-#include <arpa/inet.h>
-#endif
-
-#include <sys/uio.h>
-
-#ifdef ROAR_HAVE_UNIX
-#include <sys/un.h>
-#endif
-
-#ifdef ROAR_HAVE_LIBDNET
-#include <netdnet/dn.h>
-#include <netdnet/dnetdb.h>
-#endif
-
-#ifdef ROAR_HAVE_IPX
-#include <netipx/ipx.h>
-#endif
-
-#endif /* ROAR_HAVE_BSDSOCKETS */
-
-#if !defined(ROAR_TARGET_WIN32) && !defined(ROAR_TARGET_MICROCONTROLLER)
-#include <netdb.h>
-#endif
-
-// OpenSLP (autoconf):
-
-#ifdef ROAR_HAVE_LIBSLP
-#include <slp.h>
-#ifdef ROAR_HAVE_H_SYS_TIME
-#include <sys/time.h>
-#endif
-#endif
-
-// Time related:
-
-#ifdef ROAR_HAVE_H_TIME
-#include <time.h>
-#endif
-
-// Dynamic loader:
-
-#if defined(ROAR_HAVE_H_DLFCN)
-#include <dlfcn.h>
-#endif
-
-// X11:
-
-#ifdef ROAR_HAVE_LIBX11
-#include <X11/Xlib.h>
-#include <X11/Xatom.h>
-#endif
-
-#include "roarfeatures.h"
-#include "error.h"
-#include "trap.h"
-#include "config.h"
-#include "roarfloat.h"
-#include "crc.h"
-#include "base64.h"
-#include "keyval.h"
-#include "uuid.h"
-#include "env.h"
-#include "roardl.h"
-#include "plugincontainer.h"
-#include "services.h"
-#include "debug.h"
-#include "memmgr.h"
-#include "stack.h"
-#include "buffer.h"
-#include "crypto.h"
-#include "random.h"
-#include "hash.h"
-#include "hash_tiger.h"
-#include "nnode.h"
-#include "vio_ctl.h"
-#include "vio.h"
-#include "vio_buffer.h"
-#include "vio_buffer_store.h"
-#include "vio_cmd.h"
-#include "vio_zlib.h"
-#include "vio_ops.h"
-#include "vio_string.h"
-#include "vio_magic.h"
-#include "vio_bio.h"
-#include "vio_stdio.h"
-#include "vio_stack.h"
-#include "vio_jumbo.h"
-#include "vio_pipe.h"
-#include "vio_socket.h"
-#include "vio_winsock.h"
-#include "vio_proto.h"
-#include "vio_proxy.h"
-#include "vio_rtp.h"
-#include "vio_select.h"
-// dstr needs to have access to all other VIOs, so it must be included last
-#include "vio_dstr.h"
-#include "vio_tantalos.h"
-#include "vio_stdvios.h"
-#include "vio_misc.h"
-#include "client.h"
 #include "basic.h"
-#include "serverinfo.h"
 #include "stream.h"
 #include "simple.h"
-#include "cdrom.h"
-#include "authfile.h"
 #include "auth.h"
 #include "socket.h"
 #include "ctl.h"
-#include "caps.h"
-#include "roartime.h"
-#include "meta.h"
-#include "file.h"
-#include "acl.h"
-#include "pinentry.h"
-#include "sshaskpass.h"
-#include "passwordapi.h"
-#include "roarslp.h"
-#include "display.h"
-#include "roarx11.h"
-#include "beep.h"
-#include "ltm.h"
-#include "vs.h"
-#include "enumdev.h"
-#include "notify.h"
-#include "notify_proxy.h"
-#include "asyncctl.h"
-#include "kstore.h"
-#include "watchdog.h"
-#include "scheduler.h"
-
-// some basic macros:
-#define ROAR_MAX2(a,b) ((a) > (b) ? (a) : (b))
-#define ROAR_MIN2(a,b) ((a) < (b) ? (a) : (b))
-
-#define ROAR_MAX3(a,b,c) ROAR_MAX2(ROAR_MAX2((a),(b)),(c))
-#define ROAR_MIN3(a,b,c) ROAR_MIN2(ROAR_MIN2((a),(b)),(c))
-
-#define ROAR_MAX4(a,b,c,d) ROAR_MAX2(ROAR_MAX2((a),(b)),ROAR_MAX2((c),(d)))
-#define ROAR_MIN4(a,b,c,d) ROAR_MIN2(ROAR_MIN2((a),(b)),ROAR_MIN2((c),(d)))
-
-#define ROAR_MAX ROAR_MAX2
-#define ROAR_MIN ROAR_MIN2
-
-#define ROAR_CKHAVEARGS(x) if ( (i + (x)) >= argc ) { \
-                            ROAR_ERR("Option %s requires more arguments. See --help for more details.", k); \
-                            return 70; \
-                            }
-
-int_least32_t roar_str2usec(const char * str);
-int roar_usleep(uint_least32_t t);
-int roar_sleep(int t);
-pid_t roar_fork(const struct roar_libroar_forkapi * api);
-
-// call this function after we fork/exec()ed or similar.
-enum roar_reset {
- ROAR_RESET_UNKNOWN     = -1,
-#define ROAR_RESET_UNKNOWN ROAR_RESET_UNKNOWN
- ROAR_RESET_NONE        =  0,
-#define ROAR_RESET_NONE ROAR_RESET_NONE
- ROAR_RESET_ON_FORK     =  1,
-#define ROAR_RESET_ON_FORK ROAR_RESET_ON_FORK
- ROAR_RESET_ON_EXIT     =  2,
-#define ROAR_RESET_ON_EXIT ROAR_RESET_ON_EXIT
- ROAR_RESET_ON_PRE_EXEC =  3,
-#define ROAR_RESET_ON_PRE_EXEC ROAR_RESET_ON_PRE_EXEC
- ROAR_RESET_MEMORY      =  0x81,
-#define ROAR_RESET_MEMORY ROAR_RESET_MEMORY
- ROAR_RESET_CONFIG      =  0x82,
-#define ROAR_RESET_CONFIG ROAR_RESET_CONFIG
- ROAR_RESET_RANDOMPOOL  =  0x84,
-#define ROAR_RESET_RANDOMPOOL ROAR_RESET_RANDOMPOOL
- ROAR_RESET_EOL         = -2
-#define ROAR_RESET_EOL ROAR_RESET_EOL
-};
-int roar_reset(enum roar_reset what);
-
-// fatal probelms:
-enum roar_fatal_error {
- ROAR_FATAL_ERROR_NONE = 0,          // ???
- ROAR_FATAL_ERROR_UNKNOWN,           // Unknown error
-#define ROAR_FATAL_ERROR_UNKNOWN ROAR_FATAL_ERROR_UNKNOWN
- ROAR_FATAL_ERROR_MEMORY_CORRUPTION, // some structure has been corrupted
-#define ROAR_FATAL_ERROR_MEMORY_CORRUPTION ROAR_FATAL_ERROR_MEMORY_CORRUPTION
- ROAR_FATAL_ERROR_MEMORY_CORRUPTION_GUARD, // memory was corruppted but no data has been harmed (yet)
-#define ROAR_FATAL_ERROR_MEMORY_CORRUPTION_GUARD ROAR_FATAL_ERROR_MEMORY_CORRUPTION_GUARD
- ROAR_FATAL_ERROR_CPU_FAILURE,      // CPU general CPU failure
-#define ROAR_FATAL_ERROR_CPU_FAILURE ROAR_FATAL_ERROR_CPU_FAILURE
- ROAR_FATAL_ERROR_CPU_FAILTURE = ROAR_FATAL_ERROR_CPU_FAILURE,
- ROAR_FATAL_ERROR_MEMORY_USED_AFTER_FREE,
-#define ROAR_FATAL_ERROR_MEMORY_USED_AFTER_FREE ROAR_FATAL_ERROR_MEMORY_USED_AFTER_FREE
- ROAR_FATAL_ERROR_MEMORY_DOUBLE_FREE,
-#define ROAR_FATAL_ERROR_MEMORY_DOUBLE_FREE ROAR_FATAL_ERROR_MEMORY_DOUBLE_FREE
- ROAR_FATAL_ERROR_WATCHDOG,
-#define ROAR_FATAL_ERROR_WATCHDOG ROAR_FATAL_ERROR_WATCHDOG
-
- ROAR_FATAL_ERROR_EOL
-};
-
-#if __STDC_VERSION__ < 199901L
-#if __GNUC__ >= 2
-#define __roar_func__ __FUNCTION__
-#else
-#define __roar_func__ NULL
-#endif
-#else
-#define __roar_func__ __func__
-#endif
-
-#define roar_panic(err,info) roar_panic_real((err), (info), __LINE__, __FILE__, ROAR_DBG_PREFIX, __roar_func__)
-void roar_panic_real(enum roar_fatal_error error, const char * info,
-                     unsigned long int line, const char * file, const char * prefix, const char * func);
-
-// version stuff:
-const char * roar_version_string(void);
-uint32_t     roar_version_num(void);
+#include "buffer.h"
+#include "convert.h"
 
 #endif
Index: include/libroar/ltm.h
===================================================================
--- include/libroar/ltm.h	(revision 6052)
+++ 	(revision )
@@ -1,166 +1,0 @@
-//ltm.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illegal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLTM_H_
-#define _LIBROARLTM_H_
-
-#include "libroar.h"
-
-// forward declaration for return type of roar_ltm_get().
-// you must not access members directly.
-struct roar_ltm_result;
-
-/* Register streams for LTM.
- * Takes
- * - connection to server,
- * - used MT (monitoring type),
- * - used window,
- * - array of streams,
- * - length of the array of streams.
- * Returns -1 on error or 0 on no error.
- *
- * Registration is stacked.
- * This means that if you register a stream twice you need to unregister it twice.
- * This is because maybe clients may witch to use LTM and it would be bad
- * if the first client which disconnects would remove the LTM from the stream.
- */
-int roar_ltm_register(struct roar_connection * con, int mt, int window, int * streams, size_t slen);
-
-/* Unregister streams from LTM.
- * This function works just like roar_ltm_register() just that it
- * unregisters the streams again.
- *
- * The set of streams you unregister in one stream does not need to be
- * the same as the set you registered. It is perfectly valid to just
- * unregister a subset. or a larger set of streams.
- *
- * The given mt must match. If it does not the behavior is undefined.
- * The server may refuse the request or just unregister the given bits.
- * you should not do this.
- *
- * you must not unregister streams which got deleted by the server.
- */
-int roar_ltm_unregister(struct roar_connection * con, int mt, int window, int * streams, size_t slen);
-
-/* Read values for LTM from the server.
- * This function takes:
- * - The connection to the server,
- * - the monitoring types you request,
- * - the window you request data from,
- * - an array of streams you want data for,
- * - the length of the streams array,
- * - an old result of this function.
- *
- * It returns a pointer to an result object or NULL on error.
- *
- * The MT is allowed to not match the registered mt but must not
- * contain more bits than registered. In most causes this match
- * the registered MT.
- *
- * The window must match the window used then streams got registered.
- *
- * The list of streams must not match a single registration.
- * but all streams must be registered with at least the bits used in mt
- * set at registration.
- *
- * The old result is taken so this function does not need to always
- * allocate new memory. If the given result is as big as needed to store
- * the new result it is overwritten or freed and re-allocated if it is
- * too small.
- * If you do not have a old result set pass NULL.
- *
- * If you no longer need the result and will not call this function again
- * you must free the result with roar_ltm_freeres().
- */
-struct roar_ltm_result * roar_ltm_get(struct roar_connection * con, int mt, int window, int * streams, size_t slen, struct roar_ltm_result * oldresult);
-
-/* This function frees the result.
- * This may be defined as macro. Never call the function
- * this references as directly if this is a macro.
- */
-#define roar_ltm_freeres(x) roar_mm_free((x))
-
-/* Get number of streams which are included in a result.
- * returns -1 on error.
- */
-int roar_ltm_get_numstreams(struct roar_ltm_result * res);
-
-/* Get the mt included in the given result.
- * returns -1 on error.
- */
-int roar_ltm_get_mt(struct roar_ltm_result * res);
-
-/* Get the window included in the given result.
- * returns -1 on error.
- */
-int roar_ltm_get_window(struct roar_ltm_result * res);
-
-/* Get the number of channels a stream in result has.
- * Takes the result and the index of the stream in the result.
- * The stream index is the index of the stream in the stream list
- * you provided to roar_ltm_get(). This is not the stream id.
- *
- * returns -1 on error.
- *
- * You must use this function to get the number of channels for a stream
- * and not any value you got on some other way.
- * This is because this function returns the value in the very moment in witch the
- * result set was collected in the server.
- */
-int roar_ltm_get_numchans(struct roar_ltm_result * res, size_t streamidx);
-
-/* Extract a single value from the result.
- * Takes
- * - the result,
- * - the mt for which you ask,
- * - the index of the stream in the result and
- * - The channel you request a value for.
- *
- * returns -1 on error.
- *
- * The mt parameter must not have more than one bit set.
- *
- * The stream index is the index of the stream in the stream list
- * you provided to roar_ltm_get(). This is not the stream id.
- *
- * The channel is the channel number you ask data for.
- * it must not be bigger than one less what roar_ltm_get_numchans() returned.
- * (channels are counted from zero to N-1, not from 1 to N)
- */
-int64_t roar_ltm_extract(struct roar_ltm_result * res, int mt, size_t streamidx, int channel);
-
-#endif
-
-//ll
Index: include/libroar/memmgr.h
===================================================================
--- include/libroar/memmgr.h	(revision 6052)
+++ 	(revision )
@@ -1,173 +1,0 @@
-//memmgr.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARMEMMGR_H_
-#define _LIBROARMEMMGR_H_
-
-#include "libroar.h"
-
-#ifndef ROAR_USE_MEMMGR
-#if !defined(ROAR_HAVE_MALLOC) || !defined(ROAR_HAVE_CALLOC) || !defined(ROAR_HAVE_REALLOC) || !defined(ROAR_HAVE_FREE)
-#define ROAR_USE_MEMMGR
-#endif
-#endif
-
-#ifdef ROAR_USE_MEMMGR
-// those functions are currently not implemeted:
-
-int     roar_mm_reset(void);
-
-ssize_t roar_mm_sizeof(void * buf);
-
-void * roar_mm_calloc(size_t nmemb, size_t size);
-void * roar_mm_malloc(size_t size);
-int    roar_mm_free(void *ptr);
-void * roar_mm_realloc(void *ptr, size_t size);
-
-/*
- * TODO: we need some functions to control the pre-alloc
- *       of memory.
- */
-
-#else
-#define roar_mm_reset()             (0)
-#define roar_mm_sizeof(ptr)         ((ssize_t)-1)
-#define roar_mm_calloc(nmemb, size) calloc((nmemb), (size))
-#define roar_mm_malloc(size)        malloc((size))
-#define roar_mm_free(ptr)           free((ptr))
-#define roar_mm_realloc(ptr, size)  realloc((ptr), (size))
-#endif
-
-// dummy function doing the same as roar_mm_free() but return void.
-// this should only be used in case a function pointer of this type is required.
-void roar_mm_free_retvoid(void *ptr);
-
-// dummy function doing the same as roar_mm_free() but does not return any error
-// or alter global error states.
-void roar_mm_free_noerror(void *ptr);
-
-// memory locking:
-
-#if defined(ROAR_HAVE_MLOCK) && defined(__linux__)
-#define roar_mm_mlock(addr, len) mlock((addr), (len))
-#elif defined(ROAR_TARGET_MICROCONTROLLER)
-#define roar_mm_mlock(addr, len) 0
-#else
-int roar_mm_mlock(const void *addr, size_t len);
-#endif
-
-#if defined(ROAR_HAVE_MUNLOCK) && defined(__linux__)
-#define roar_mm_munlock(addr, len) munlock((addr), (len))
-#elif defined(ROAR_TARGET_MICROCONTROLLER)
-#define roar_mm_munlock(addr, len) 0
-#else
-int roar_mm_munlock(const void *addr, size_t len);
-#endif
-
-#if defined(ROAR_HAVE_MLOCKALL)
-#define roar_mm_mlockall(flags) mlockall((flags))
-#elif defined(ROAR_TARGET_MICROCONTROLLER)
-#define roar_mm_mlockall(flags) 0
-#else
-#define roar_mm_mlockall(flags) (-1)
-#endif
-
-#if defined(ROAR_HAVE_MUNLOCKALL)
-#define roar_mm_munlockall() munlockall()
-#elif defined(ROAR_TARGET_MICROCONTROLLER)
-#define roar_mm_munlockall() 0
-#else
-#define roar_mm_munlockall() (-1)
-#endif
-
-// for compatibility with old versions:
-#define ROAR_MLOCK _ROAR_MLOCK
-
-// aux functions:
-void * roar_mm_memdup(const void * s, size_t len);
-
-// string functions:
-#ifndef ROAR_HAVE_STRLEN
-ssize_t roar_mm_strlen(const char *s);
-#else
-#define roar_mm_strlen(str) strlen((str))
-#endif
-
-ssize_t roar_mm_strnlen(const char *s, size_t maxlen);
-
-#if defined(ROAR_USE_MEMMGR) || !defined(ROAR_HAVE_STRDUP)
-char * roar_mm_strdup(const char *s);
-#else
-#define roar_mm_strdup(str)         strdup((str))
-#endif
-
-char * roar_mm_strdup2(const char *s, const char *def);
-
-#if defined(ROAR_USE_MEMMGR) || !defined(ROAR_HAVE_STRNDUP)
-char *roar_mm_strndup(const char *s, size_t n);
-#else
-#define roar_mm_strndup(str, size)         strdup((str), (size))
-#endif
-
-#ifndef ROAR_HAVE_STRLCPY
-ssize_t roar_mm_strlcpy(char *dst, const char *src, size_t size);
-#else
-#define roar_mm_strlcpy(dst,src,size) strlcpy((dst),(src),(size))
-#endif
-
-#define roar_mm_strscpy(dst,src) roar_mm_strlcpy((dst),(src),sizeof((dst)))
-
-#ifndef ROAR_HAVE_STRLCAT
-ssize_t roar_mm_strlcat(char *dst, const char *src, size_t size);
-#else
-#define roar_mm_strlcat(dst,src,size) strlcat((dst),(src),(size))
-#endif
-
-#define roar_mm_strscat(dst,src) roar_mm_strlcat((dst),(src),sizeof((dst)))
-
-#ifndef ROAR_HAVE_STRTOK_R
-char * roar_mm_strtok_r(char *str, const char *delim, char **saveptr);
-#else
-#define roar_mm_strtok_r(str,delim,saveptr) strtok_r((str),(delim),(saveptr))
-#endif
-
-
-// Selector parsing.
-int roar_mm_strselcmp(const char *s1, const char *s2);
-ssize_t roar_mm_strseltok(const char *s1, char *s2, char ** tok, size_t toks);
-
-#endif
-
-//ll
Index: include/libroar/meta.h
===================================================================
--- include/libroar/meta.h	(revision 6052)
+++ 	(revision )
@@ -1,58 +1,0 @@
-//meta.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARMETA_H_
-#define _LIBROARMETA_H_
-
-#include "libroar.h"
-
-int roar_stream_meta_set (struct roar_connection * con, struct roar_stream * s, int mode, struct roar_meta * meta);
-int roar_stream_meta_get (struct roar_connection * con, struct roar_stream * s, struct roar_meta * meta);
-
-int roar_stream_meta_list (struct roar_connection * con, struct roar_stream * s, int * types, size_t len);
-
-int roar_meta_free (struct roar_meta * meta);
-
-const char * roar_meta_strtype(const int type);
-int    roar_meta_inttype(const char * type);
-
-const char * roar_meta_strgenre(const int genre);
-int    roar_meta_intgenre(const char * genre);
-
-int    roar_meta_parse_audioinfo(struct roar_audio_info * info, const char * str);
-
-#endif
-
-//ll
Index: include/libroar/nnode.h
===================================================================
--- include/libroar/nnode.h	(revision 6052)
+++ 	(revision )
@@ -1,71 +1,0 @@
-//nnode.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARNNODE_H_
-#define _LIBROARNNODE_H_
-
-#include "libroar.h"
-
-struct roar_nnode {
- int socktype;
- union {
-  unsigned char inet4[4];
-  unsigned char inet6[16];
-  struct {
-   int area;
-   int node;
-  } decnet;
- } addr;
-};
-
-int roar_nnode_new        (struct roar_nnode * nnode, int socktype);
-int roar_nnode_new_from_af(struct roar_nnode * nnode, int af);
-int roar_nnode_new_from_sockaddr(struct roar_nnode * nnode, struct sockaddr * addr, socklen_t len);
-int roar_nnode_new_from_fh(struct roar_nnode * nnode, int fh, int remote);
-
-int roar_nnode_free       (struct roar_nnode * nnode);
-
-int roar_nnode_get_socktype (struct roar_nnode * nnode);
-
-int roar_nnode_to_str     (struct roar_nnode * nnode, char * str, size_t len);
-
-int roar_nnode_from_blob  (struct roar_nnode * nnode, void * blob, size_t * len);
-int roar_nnode_to_blob    (struct roar_nnode * nnode, void * blob, size_t * len);
-
-int roar_nnode_cmp        (struct roar_nnode * n0, struct roar_nnode * n1);
-
-#endif
-
-//ll
Index: include/libroar/notify.h
===================================================================
--- include/libroar/notify.h	(revision 6052)
+++ 	(revision )
@@ -1,89 +1,0 @@
-//notify.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARNOTIFY_H_
-#define _LIBROARNOTIFY_H_
-
-#include "libroar.h"
-
-#define ROAR_EVENT_FLAG_NONE        ROAR_EVENT_NETFLAG_NONE
-#define ROAR_EVENT_FLAG_NETTRANS    ROAR_EVENT_NETFLAG_DATA
-#define ROAR_EVENT_FLAG_PROXYEVENT  ROAR_EVENT_NETFLAG_PROXYEVENT
-
-struct roar_event {
- uint32_t flags;
- uint32_t event;
- uint32_t event_proxy;
- int emitter;
- int target;
- int target_type;
- int arg0;
- int arg1;
- void * arg2;
- ssize_t arg2_len;
-};
-
-struct roar_subscriber;
-
-struct roar_notify_core;
-
-#define ROAR_EVENT_GET_TYPE(x) ((x) == NULL ? ROAR_NOTIFY_SPECIAL : ((x)->flags & ROAR_EVENT_FLAG_PROXYEVENT ? (x)->event_proxy : (x)->event))
-
-struct roar_notify_core * roar_notify_core_new(ssize_t lists);
-int roar_notify_core_ref(struct roar_notify_core * core);
-int roar_notify_core_unref(struct roar_notify_core * core);
-#define roar_notify_core_free(x) roar_notify_core_unref((x))
-
-int roar_notify_core_new_global(ssize_t lists);
-
-struct roar_notify_core * roar_notify_core_swap_global(struct roar_notify_core * core);
-
-int roar_notify_core_register_proxy(struct roar_notify_core * core, void (*cb)(struct roar_notify_core * core, struct roar_event * event, void * userdata), void * userdata);
-
-struct roar_subscriber * roar_notify_core_subscribe(struct roar_notify_core * core, struct roar_event * event, void (*cb)(struct roar_notify_core * core, struct roar_event * event, void * userdata), void * userdata);
-int roar_notify_core_unsubscribe(struct roar_notify_core * core, struct roar_subscriber * subscriber);
-
-int roar_notify_core_emit(struct roar_notify_core * core, struct roar_event * event);
-
-int roar_notify_core_emit_simple(uint32_t event, int emitter, int target, int target_type, int arg0, int arg1, void * arg2, ssize_t arg2_len);
-
-#define roar_notify_core_emit_snoargs(event,emitter,target,target_type) roar_notify_core_emit_simple((event),(emitter),(target),(target_type),-1,-1,NULL,0)
-
-int roar_event_to_blob(struct roar_event * event, void * blob, size_t * len);
-int roar_event_from_blob(struct roar_event * event, void * blob, size_t * len);
-
-#endif
-
-//ll
Index: include/libroar/notify_proxy.h
===================================================================
--- include/libroar/notify_proxy.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//notify_proxy.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARNOTIFY_PROXY_H_
-#define _LIBROARNOTIFY_PROXY_H_
-
-#include "libroar.h"
-
-void roar_notify_proxy_std(struct roar_notify_core * core, struct roar_event * event, void * userdata);
-
-#endif
-
-//ll
Index: include/libroar/passwordapi.h
===================================================================
--- include/libroar/passwordapi.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//passwordapi.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARPASSWORDAPI_H_
-#define _LIBROARPASSWORDAPI_H_
-
-#include "libroar.h"
-
-ssize_t roar_passwd_simple_ask_pw (char ** pw, char * prompt, const char * cachetoken);
-
-#endif
-
-//ll
Index: include/libroar/pinentry.h
===================================================================
--- include/libroar/pinentry.h	(revision 6052)
+++ 	(revision )
@@ -1,70 +1,0 @@
-//pinentry.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAR_PINENTRY_H_
-#define _LIBROAR_PINENTRY_H_
-
-#include "libroar.h"
-
-//pinentry.h
-
-struct roar_pinentry {
- int opened;
- pid_t pid;
- int in;
- int out;
- FILE * fin;
-};
-
-int roar_pinentry_open (struct roar_pinentry * pe, int flags, const char * display, const char * tty, const char * term);
-int roar_pinentry_simple_open(struct roar_pinentry * pe);
-int roar_pinentry_close(struct roar_pinentry * pe);
-
-int roar_pinentry_send (struct roar_pinentry * pe, char *  cmd,  char *  args);
-int roar_pinentry_recv (struct roar_pinentry * pe, char ** line, char ** opts);
-int roar_pinentry_req  (struct roar_pinentry * pe, char *  cmd,  char *  args, char ** line, char ** opts);
-
-int roar_pinentry_set_desc (struct roar_pinentry * pe, char * desc);
-int roar_pinentry_set_prompt(struct roar_pinentry * pe, char * prompt);
-int roar_pinentry_set_yes  (struct roar_pinentry * pe, char * yes);
-int roar_pinentry_set_no   (struct roar_pinentry * pe, char * no);
-int roar_pinentry_set      (struct roar_pinentry * pe, char * obj, char * text);
-
-int roar_pinentry_getpin   (struct roar_pinentry * pe, char ** pw, char * desc, char * prompt);
-int roar_pinentry_confirm  (struct roar_pinentry * pe, char *  desc, char * yes, char * no);
-
-#endif
-
-//ll
Index: include/libroar/plugincontainer.h
===================================================================
--- include/libroar/plugincontainer.h	(revision 6052)
+++ 	(revision )
@@ -1,189 +1,0 @@
-//plugincontainer.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARPLUGINCONTAINER_H_
-#define _LIBROARPLUGINCONTAINER_H_
-
-#include "libroar.h"
-
-struct roar_plugincontainer;
-
-struct roar_plugincontainer_callbacks {
- /* prefree() is called before the container is freed.
-  */
- int (*prefree)(struct roar_plugincontainer * cont, void ** userdata);
-
- /* freeuserdata() is called when the userdata needs to be freed.
-  * This is the case then the container is freed.
-  * It is not called when the current userdata is NULL.
-  * If not set or userdata is still non-NULL after this call the userdata
-  * is freed using roar_mm_free().
-  */
- int (*freeuserdata)(struct roar_plugincontainer * cont, void ** userdata);
-
- /* freecontext() is called when the context needs to be freed.
-  * It is not called when the current context is NULL.
-  * If not set or context is still non-NULL after this call the context
-  * is freed using roar_mm_free().
-  */
- int (*freecontext)(struct roar_plugincontainer * cont, void ** context);
-
- /* preload() and postload() are called before and after a plugin is loaded.
-  */
- int (*preload) (struct roar_plugincontainer * cont, void ** context,
-                 const char * name, int flags, struct roar_dl_librarypara * para);
- int (*postload)(struct roar_plugincontainer * cont, void ** context, struct roar_dl_lhandle * lhandle,
-                 const char * name, int flags, struct roar_dl_librarypara * para);
-
- /* preunload() and postunload() are called before and after a plugin is unloaded.
-  * Those functions are also called if the plugin was loaded but ra_init was not yet done or failed.
-  */
- int (*preunload) (struct roar_plugincontainer * cont, void ** context, struct roar_dl_lhandle * lhandle);
- int (*postunload)(struct roar_plugincontainer * cont, void ** context);
-
- /* prera_init() and postra_init() are called before and after a plugin is ra_init-ed.
-  * This is also true if the plugin is ra_init-ed while being loaded.
-  * Note the limits of roar_plugincontainer_ra_init() if this is used
-  * with roar_plugincontainer_ra_init().
-  * postra_init() is also called in case the ra_init failed.
-  */
- int (*prera_init) (struct roar_plugincontainer * cont, void ** context, struct roar_dl_lhandle * lhandle,
-                    struct roar_dl_librarypara * para);
- int (*postra_init)(struct roar_plugincontainer * cont, void ** context, struct roar_dl_lhandle * lhandle,
-                    struct roar_dl_librarypara * para);
-};
-
-struct roar_plugincontainer_plugininfo {
- /* The name of the plugin.
-  */
- const char * libname;
- /* The roardl's library handle.
-  */
- struct roar_dl_lhandle * handle;
- /* The number of librarys/plugins depending on this plugin.
-  */
- size_t rdepends;
- /* A pointer to the current user context.
-  */
- void ** context;
-};
-
-/* Create a new plugin container.
- * Takes a default parameter set.
- */
-struct roar_plugincontainer * roar_plugincontainer_new(struct roar_dl_librarypara * default_para);
-
-/* Create a new plugin container.
- * Takes host application's appname and abiversion.
- */
-struct roar_plugincontainer * roar_plugincontainer_new_simple(const char * appname, const char * abiversion);
-
-// Increment the refrence counter.
-int roar_plugincontainer_ref(struct roar_plugincontainer * cont);
-/* Decrement the refrence counter.
- * Unloads all plugins and frees all resources when there are no refreneces left.
- */
-int roar_plugincontainer_unref(struct roar_plugincontainer * cont);
-
-/* Set Autoappsched.
- * If set the INIT and FREE appsched events are send automatically.
- */
-int roar_plugincontainer_set_autoappsched(struct roar_plugincontainer * cont, int val);
-
-/* Set callbacks.
- */
-int roar_plugincontainer_set_callbacks(struct roar_plugincontainer * cont,
-                                       const struct roar_plugincontainer_callbacks * callbacks);
-
-/* Set container's userdata.
- */
-int roar_plugincontainer_set_userdata(struct roar_plugincontainer * cont, void * userdata);
-
-/* Get container's userdata.
- */
-void * roar_plugincontainer_get_userdata(struct roar_plugincontainer * cont);
-
-/* Get a lhandle by name of the loaded plugin.
- */
-struct roar_dl_lhandle * roar_plugincontainer_get_lhandle_by_name (struct roar_plugincontainer * cont,
-                                                                   const char * name);
-
-/* Get infos about current state of plugin.
- */
-struct roar_plugincontainer_plugininfo roar_plugincontainer_get_info_by_name (struct roar_plugincontainer * cont,
-                                                                              const char * name);
-
-// plugin loading and unloading:
-
-// Load a plugin by name.
-int                      roar_plugincontainer_load            (struct roar_plugincontainer * cont,
-                                                               const char * name,
-                                                               struct roar_dl_librarypara * para);
-
-/* Load a plugin by name with extra options.
- * This is for advanced applications only.
- * NOTE: Using this handle after the plugin has been unloaded from the
- *       container results in undefind behavior.
- */
-struct roar_dl_lhandle * roar_plugincontainer_load_lhandle    (struct roar_plugincontainer * cont,
-                                                               const char * name,
-                                                               int flags,
-                                                               int ra_init,
-                                                               struct roar_dl_librarypara * para);
-/* Unload a plugin by name.
- * NOTE: The name here is from the plugin and may not match the name you load
- *       the plugin with.
- */
-int                      roar_plugincontainer_unload          (struct roar_plugincontainer * cont,
-                                                               const char * name);
-/* Load a plugin by roardl handle.
- * This is for advanced applications only.
- */
-int                      roar_plugincontainer_unload_lhandle  (struct roar_plugincontainer * cont,
-                                                               struct roar_dl_lhandle * lhandle);
-/* Post ra_init plugins not yet inited.
- * NOTE: This uses the default para,
- *       not the one given with roar_plugincontainer_load_lhandle().
- * This is for advanced applications only.
- */
-int                      roar_plugincontainer_ra_init         (struct roar_plugincontainer * cont);
-
-// appsched:
-// Trigger an application schedule event on all plugins.
-int                      roar_plugincontainer_appsched_trigger(struct roar_plugincontainer * cont, enum roar_dl_appsched_trigger trigger);
-
-#endif
-
-//ll
Index: include/libroar/random.h
===================================================================
--- include/libroar/random.h	(revision 6052)
+++ 	(revision )
@@ -1,63 +1,0 @@
-//random.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARRANDOM_H_
-#define _LIBROARRANDOM_H_
-
-#include "libroar.h"
-
-#define ROAR_RANDOM_NONE         0
-#define ROAR_RANDOM_VERY_WEAK    1
-#define ROAR_RANDOM_WEAK         2
-#define ROAR_RANDOM_NORMAL       3
-#define ROAR_RANDOM_STRONG       4
-#define ROAR_RANDOM_VERY_STRONG  5
-
-#define ROAR_RANDOM_NONCE        ROAR_RANDOM_VERY_WEAK
-
-int roar_random_gen_nonce(void * buffer, size_t len);
-
-int roar_random_salt_nonce (void * salt, size_t len);
-
-uint16_t roar_random_uint16(void);
-uint32_t roar_random_uint32(void);
-
-int roar_random_gen(void * buffer, size_t len, int quality);
-
-void * roar_random_genbuf(size_t len, int quality, int locked);
-
-#endif
-
-//ll
Index: include/libroar/roardl.h
===================================================================
--- include/libroar/roardl.h	(revision 6052)
+++ 	(revision )
@@ -1,481 +1,0 @@
-//roardl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARROARDL_H_
-#define _LIBROARROARDL_H_
-
-#include "libroar.h"
-
-#define ROAR_DL_FLAG_DEFAULTS          -1
-#define ROAR_DL_FLAG_PLUGIN            -2
-#define ROAR_DL_FLAG_NONE               0x0000
-#define ROAR_DL_FLAG_STATIC             0x0001 /* plugins are linked statically -lfoo */
-#define ROAR_DL_FLAG_LAZY               0x0002
-#define ROAR_DL_FLAG_PLUGINPATH         0x0004 /* Use plugin search path */
-
-#define ROAR_DL_HANDLE_DEFAULT          ((struct roar_dl_lhandle*)(void*)0)
-#define ROAR_DL_HANDLE_NEXT             ((struct roar_dl_lhandle*)(void*)1)
-#define ROAR_DL_HANDLE_LIBROAR          ((struct roar_dl_lhandle*)(void*)2)
-#define ROAR_DL_HANDLE_APPLICATION      ((struct roar_dl_lhandle*)(void*)3)
-#define ROAR_DL_HANDLE_LIB              ((struct roar_dl_lhandle*)(void*)4)
-
-#define LIBROAR_DL_APPNAME              "libroar " ROAR_VSTR_ROARAUDIO
-#define LIBROAR_DL_ABIVERSION           "1.0beta9"
-
-#define ROAR_DL_FN_DSTR                 0 /* VIO and DSTR drivers */
-#define ROAR_DL_FN_CDRIVER              1 /* Client drivers, libroareio */
-#define ROAR_DL_FN_TRANSCODER           2 /* Transcoder, libroardsp */
-#define ROAR_DL_FN_DRIVER               3 /* Driver, roard? */
-#define ROAR_DL_FN_SOURCE               4 /* Sources, roard? */
-#define ROAR_DL_FN_FILTER               5 /* Filter, libroardsp, libroarlight */
-#define ROAR_DL_FN_FF                   6 /* file format??? */
-#define ROAR_DL_FN_AUTH                 7 /* Auth */
-#define ROAR_DL_FN_BRIDGE               8 /* Bridges, roard? */
-#define ROAR_DL_FN_ROARDSCHED           9 /* legacy, roard: Like appsched, but roard specific, old */
-#define ROAR_DL_FN_APPSCHED            10 /* legacy: AppSched, old interface */
-#define ROAR_DL_FN_PROTO               11 /* CPI, roard: Protocols */
-#define ROAR_DL_FN_NOTIFY              12 /* ??? */
-#define ROAR_DL_FN_INIT                13 /* global plugin instance init. should be avoided */
-#define ROAR_DL_FN_REGFN               14 /* FN Registrations */
-#define ROAR_DL_FN_APPLICATION         15 /* Application specific stuff */
-#define ROAR_DL_FN_SERVICE             16 /* CSI: Services */
-//#define ROAR_DL_FN_               9
-#define ROAR_DL_FN_MAX                 24
-
-#define ROAR_DL_LIBPARA_VERSION         1
-#define ROAR_DL_LIBNAME_VERSION         0
-#define ROAR_DL_LIBINST_VERSION         1
-#define ROAR_DL_LIBDEP_VERSION          0
-
-#define ROAR_DL_PLUGIN(lib) struct roar_dl_libraryinst *                                          \
-                             _##lib##_roaraudio_library_init(struct roar_dl_librarypara * para);  \
-                            struct roar_dl_libraryinst *                                          \
-                             _roaraudio_library_init(struct roar_dl_librarypara * para) {         \
-                              return _##lib##_roaraudio_library_init(para);                       \
-                            }                                                                     \
-                            struct roar_dl_libraryinst *                                          \
-                             _##lib##_roaraudio_library_init(struct roar_dl_librarypara * para)   \
-
-#define ROAR_DL_PLUGIN_START(xlib) ROAR_DL_PLUGIN(xlib) {                                         \
-                                     static int _inited = 0;                                      \
-                                     static struct roar_dl_libraryinst lib;                       \
-                                     static struct roar_dl_libraryname libname;                   \
-                                     (void)para;                                                  \
-                                     if ( _inited )                                               \
-                                      return &lib;                                                \
-                                     if ( para != NULL &&                                         \
-                                          (para->version != ROAR_DL_LIBPARA_VERSION ||            \
-                                           para->len < sizeof(struct roar_dl_librarypara)) ) {    \
-                                      /* we should set ROAR_ERROR_NSVERSION here but can not */   \
-                                      /* because that would require the plugin to be linked */    \
-                                      /* aginst libroar */                                        \
-                                      return NULL;                                                \
-                                     }                                                            \
-                                     memset(&lib, 0, sizeof(lib));                                \
-                                     lib.version = ROAR_DL_LIBINST_VERSION;                       \
-                                     lib.len     = sizeof(lib);                                   \
-                                     memset(&libname, 0, sizeof(libname));                        \
-                                     libname.version = ROAR_DL_LIBNAME_VERSION;                   \
-                                     libname.len     = sizeof(libname);                           \
-                                     libname.name = #xlib;                                        \
-                                     lib.libname  = &libname;                                     \
-                                     do
-
-#define ROAR_DL_PLUGIN_END          while(0);                                                     \
-                                    _inited = 1;                                                  \
-                                    return &lib;                                                  \
-                                   }
-
-// general stuff:
-#define ROAR_DL_PLUGIN_ABORT_LOADING(err) roar_err_set((err)); return NULL
-#define ROAR_DL_PLUGIN_CHECK_VERSIONS(app,abi) (((lib.host_appname = (app))    != NULL) | \
-                                                ((lib.host_abiversion = (abi)) != NULL) )
-// should we keep this macro at all? Is it helpfull at all?
-// if a plugin can handle multiple hosts it needs to call roar_dl_para_check_version() itself anyway.
-#define ROAR_DL_PLUGIN_CHECK_VERSIONS_NOW(app,abi) if ( roar_dl_para_check_version(para, (app), (abi)) == -1 ) return NULL
-
-// register stuff:
-#define ROAR_DL_PLUGIN_REG(fn, funcptr) (lib.func[(fn)] = (funcptr))
-#define ROAR_DL_PLUGIN_REG_UNLOAD(func) (lib.unload = (func))
-#define ROAR_DL_PLUGIN_REG_APPSCHED(sched) (lib.appsched = (sched))
-#define ROAR_DL_PLUGIN_REG_GLOBAL_DATA(ptr,init) lib.global_data_len = sizeof((init)); \
-                                                 lib.global_data_init = &(init);       \
-                                                 lib.global_data_pointer = (void*)&(ptr)
-#define ROAR_DL_PLUGIN_REG_LIBDEP(deps) (((lib.libdep = (deps)) == NULL) ? \
-                                           (ssize_t)-1 : \
-                                           (ssize_t)(lib.libdep_len = sizeof((deps))/sizeof(struct roar_dl_librarydep)))
-
-// register objects using FN:
-#define ROAR_DL_PLUGIN_REG_FN(subtype,obj,version)  roar_dl_register_fn(NULL, -1, (subtype), &(obj), sizeof((obj)), (version), ROAR_DL_FNREG_OPT_NONE)
-#define ROAR_DL_PLUGIN_REG_FNFUNC(fn) ROAR_DL_PLUGIN_REG((fn), _roaraudio_library_ ## fn)
-
-// Do a FN reg callback registration:
-#define ROAR_DL_RFNREG(lhandle,obj)  roar_dl_register_fn((lhandle), ROAR_DL_FN_REGFN, ROAR_DL_FNREG_SUBTYPE, &(obj), sizeof((obj)), ROAR_DL_FNREG_VERSION, ROAR_DL_FNREG_OPT_NONE)
-
-// meta data stuff:
-#define ROAR_DL_PLUGIN_META_PRODUCT(x)      (libname.libname     = (x))
-#define ROAR_DL_PLUGIN_META_PRODUCT_NV(name,vendor)      ROAR_DL_PLUGIN_META_PRODUCT(name " <" vendor ">")
-#define ROAR_DL_PLUGIN_META_PRODUCT_NIV_REAL(name,id,vendor)  ROAR_DL_PLUGIN_META_PRODUCT(name " <" #id "/" vendor ">")
-#define ROAR_DL_PLUGIN_META_PRODUCT_NIV(name,id,vendor)  ROAR_DL_PLUGIN_META_PRODUCT_NIV_REAL(name,id,vendor)
-#define ROAR_DL_PLUGIN_META_VERSION(x)      (libname.libversion  = (x))
-#define ROAR_DL_PLUGIN_META_ABI(x)          (libname.abiversion  = (x))
-#define ROAR_DL_PLUGIN_META_DESC(x)         (libname.description = (x))
-#define ROAR_DL_PLUGIN_META_CONTACT(x)      (libname.contact = (x))
-#define ROAR_DL_PLUGIN_META_CONTACT_FL(first,last)        ROAR_DL_PLUGIN_META_CONTACT(first " " last)
-#define ROAR_DL_PLUGIN_META_CONTACT_FLE(first,last,email) ROAR_DL_PLUGIN_META_CONTACT(first " " last " <" email ">")
-#define ROAR_DL_PLUGIN_META_CONTACT_FLNE(first,last,nick,email) ROAR_DL_PLUGIN_META_CONTACT(first " \"" nick "\" " last " <" email ">")
-#define ROAR_DL_PLUGIN_META_AUTHORS(x)      (libname.authors = (x))
-#define ROAR_DL_PLUGIN_META_LICENSE(x)      (libname.license = (x))
-#define ROAR_DL_PLUGIN_META_LICENSE_TAG(x)  ROAR_DL_PLUGIN_META_LICENSE(ROAR_LICENSE_ ## x)
-
-enum roar_dl_loadercmd {
- ROAR_DL_LOADER_NOOP = 0,
- ROAR_DL_LOADER_PRELOAD,
- ROAR_DL_LOADER_LOAD,
- ROAR_DL_LOADER_POSTLOAD,
- ROAR_DL_LOADER_PREUNLOAD,
- ROAR_DL_LOADER_UNLOAD,
- ROAR_DL_LOADER_POSTUNLOAD
-};
-
-struct roar_plugincontainer;
-
-struct roar_dl_librarypara {
- int version;               // version of this struct type (must be ROAR_DL_LIBPARA_VERSION)
- size_t len;                // Length of this struct type (must be sizeof(struct roar_dl_librarypara)
-
- size_t refc;               // Reference counter.
-
- size_t argc;               // number of elements in argv
- struct roar_keyval * argv; // Parameter for the plugin
- void * args_store;         // Storage area for argv's data.
-                            // If not NULL this and argv will be freed.
-                            // If NULL argv will be left untouched.
-
- void * binargv;            // A pointer with binary data arguments.
-                            // This can be used to pass any non-string data to
-                            // the plugin. Normally this is NULL or the pointer
-                            // to a struct with members of whatever is needed.
-
- const char * appname;      // application name in common format:
-                            // Product/Version <VendorID/VendorName> (comments)
-                            // Version and comment are optional and should be avoided.
-                            // When no vendor ID is registered use <VendorName>.
-                            // The VendorName MUST NOT contain a slash and SHOULD
-                            // be as unique as possible.
-                            // Examples: roard <0/RoarAudio>, MyAPP <myapp.org>,
-                            //           AnAPP <Musterman GbR>
- const char * abiversion;   // The ABI version. For libraries this should be the SONAME.
-                            // For applications this should be the version of the release
-                            // which introduced the current ABI.
-                            // Examples: libroar2, 0.5.1
- struct roar_notify_core * notifycore;
- struct roar_plugincontainer * container;
- int (*loader)(struct roar_dl_librarypara * lhandle, void * loader_userdata, enum roar_dl_loadercmd cmd, void * argp);
- void * loader_userdata;
-};
-
-struct roar_dl_libraryname {
- int      version;
- size_t   len;
- const char * name;        //Format: shortname
- const char * libname;     //This is the same as appname in struct roar_dl_librarypara.
-                           //Format: Product <VendorID/VendorName> (comments)
- const char * libversion;  //This is the pure version number of the library.
- const char * abiversion;  //This is the same as abiversion in struct roar_dl_librarypara.
-                           //Format: Version
- const char * description; //Free form.
- const char * contact;     //Format: first ["']nick["'] last (comment) <email>/OpenPGPkey/Phone/Room
- const char * authors;     //Other authors as free form.
- const char * license;     //Format: LicenseName-Version (options)
-                           //Examples: GPL-3.0, LGPL-2.1, LGPL-3.0 (or later).
-};
-
-struct roar_dl_librarydep {
- int      version;
- size_t   len;
- uint32_t flags;
- const char * name;
- const char * libname;
- const char * abiversion;
-};
-
-#define ROAR_DL_DEP(__flags,__name,__libname,__abiversion) \
-                                                   {.version    = ROAR_DL_LIBDEP_VERSION,            \
-                                                    .len        = sizeof(struct roar_dl_librarydep), \
-                                                    .flags      = __flags,                           \
-                                                    .name       = __name,                            \
-                                                    .libname    = __libname,                         \
-                                                    .abiversion = __abiversion}
-
-struct roar_dl_libraryinst {
- int      version;
- size_t   len;
- int    (*unload)(struct roar_dl_librarypara * para, struct roar_dl_libraryinst * lib);
- int    (*func[ROAR_DL_FN_MAX])(struct roar_dl_librarypara * para, struct roar_dl_libraryinst * lib);
- struct roar_dl_libraryname * libname;
- size_t  global_data_len;
- void *  global_data_init;
- void ** global_data_pointer;
- struct roar_dl_librarydep * libdep;
- size_t libdep_len;
- struct roar_dl_appsched * appsched;
- const char * host_appname;
- const char * host_abiversion;
-};
-
-struct roar_dl_appsched {
- int (*init)  (struct roar_dl_librarypara * para);
- int (*free)  (struct roar_dl_librarypara * para);
- int (*update)(struct roar_dl_librarypara * para);
- int (*tick)  (struct roar_dl_librarypara * para);
- int (*wait)  (struct roar_dl_librarypara * para);
-};
-
-enum roar_dl_appsched_trigger {
- ROAR_DL_APPSCHED_INIT = 1,
-#define ROAR_DL_APPSCHED_INIT ROAR_DL_APPSCHED_INIT
- ROAR_DL_APPSCHED_FREE,
-#define ROAR_DL_APPSCHED_FREE ROAR_DL_APPSCHED_FREE
- ROAR_DL_APPSCHED_UPDATE,
-#define ROAR_DL_APPSCHED_UPDATE ROAR_DL_APPSCHED_UPDATE
- ROAR_DL_APPSCHED_TICK,
-#define ROAR_DL_APPSCHED_TICK ROAR_DL_APPSCHED_TICK
- ROAR_DL_APPSCHED_WAIT,
-#define ROAR_DL_APPSCHED_WAIT ROAR_DL_APPSCHED_WAIT
- ROAR_DL_APPSCHED_ABOUT,
-#define ROAR_DL_APPSCHED_ABOUT ROAR_DL_APPSCHED_ABOUT
- ROAR_DL_APPSCHED_HELP,
-#define ROAR_DL_APPSCHED_HELP ROAR_DL_APPSCHED_HELP
- ROAR_DL_APPSCHED_PREFERENCES
-#define ROAR_DL_APPSCHED_PREFERENCES ROAR_DL_APPSCHED_PREFERENCES
-};
-
-// parameter functions:
-struct roar_dl_librarypara * roar_dl_para_new(const char * args, void * binargv,
-                                              const char * appname, const char * abiversion);
-int roar_dl_para_ref                    (struct roar_dl_librarypara * para);
-int roar_dl_para_unref                  (struct roar_dl_librarypara * para);
-int roar_dl_para_check_version          (struct roar_dl_librarypara * para,
-                                         const char * appname, const char * abiversion);
-
-// 'core' dynamic loader functions.
-struct roar_dl_lhandle * roar_dl_open   (const char * filename, int flags,
-                                         int ra_init, struct roar_dl_librarypara * para);
-int                      roar_dl_ref    (struct roar_dl_lhandle * lhandle);
-int                      roar_dl_unref  (struct roar_dl_lhandle * lhandle);
-#define roar_dl_close(x) roar_dl_unref((x))
-
-void                   * roar_dl_getsym (struct roar_dl_lhandle * lhandle, const char * sym, int type);
-
-int                      roar_dl_ra_init(struct roar_dl_lhandle * lhandle,
-                                         const char * prefix,
-                                         struct roar_dl_librarypara * para);
-
-const char *             roar_dl_errstr (struct roar_dl_lhandle * lhandle);
-
-// getting meta data:
-struct roar_dl_librarypara       * roar_dl_getpara(struct roar_dl_lhandle * lhandle);
-const struct roar_dl_libraryname * roar_dl_getlibname(struct roar_dl_lhandle * lhandle);
-
-// context switching:
-// _restore() is to switch from main to library context. _store() is to store library context
-// and switch back to main context.
-int                      roar_dl_context_restore(struct roar_dl_lhandle * lhandle);
-int                      roar_dl_context_store(struct roar_dl_lhandle * lhandle);
-
-// appsched:
-int                      roar_dl_appsched_trigger(struct roar_dl_lhandle * lhandle, enum roar_dl_appsched_trigger trigger);
-
-// FN Registration:
-
-// Actions objects can emit:
-enum roar_dl_fnreg_action {
- ROAR_DL_FNREG   = 1, // The object is being registered
- ROAR_DL_FNUNREG = 2  // The object is being unregistered
-};
-
-// Callback for registering/unregistering objects:
-struct roar_dl_fnreg {
- int fn;          // Filter: The FN of the registering object or -1 for any.
- int subtype;     // Filter: The subtype of the registering object or -1 for any.
- int version;     // Filter: The version of the registering object or -1 for any.
- int (*callback)( // Callback to call on register/unregister.
-   enum roar_dl_fnreg_action action, // The action happening
-   int fn,                           // The FN of the object
-   int subtype,                      // The subtype of the object
-   const void * object,              // Pointer to the object
-   size_t objectlen,                 // Length of the object
-   int version,                      // Version of the object
-   int options,                      // Object Options.
-   void * userdata,                  // User data for the callback.
-   struct roar_dl_lhandle * lhandle  // The registering handle.
-                                     // This is valid until the object is unregistered.
-                                     // Only roar_dl_context_restore(), roar_dl_context_store()
-                                     // and roar_dl_getpara() may be used on this object.
-                                     // Result of all other functions is undefined.
- );
- void * userdata; // The user data pointer passed to the callback.
-};
-
-// Parameters for FNREG registration:
-#define ROAR_DL_FNREG_SUBTYPE  0
-#define ROAR_DL_FNREG_VERSION  0
-#define ROAR_DL_FNREG_SIZE     sizeof(struct roar_dl_fnreg)
-
-
-// Filter Infrastructure (FN_FILTER):
-// Parameters for FNREG registration: 
-#define ROAR_DL_FILTER_SUBTYPE_DSP   0 /* libroardsp */
-#define ROAR_DL_FILTER_SUBTYPE_SLFI  1 /* libroarlight */
-// ROAR_DL_FILTER_{VERSION,SIZE}_* are defined in corresponding headers.
-
-
-// Common protocol interface (CPI):
-struct roar_dl_proto {
- const int proto;
- const char * description;
- const int flags;
- int (*set_proto)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
- int (*unset_proto)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
- int (*handle)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
- int (*flush)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
- int (*flushed)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
- int (*status)(int client, struct roar_vio_calls * vio, struct roar_buffer ** obuffer, void ** userdata, const struct roar_keyval * protopara, ssize_t protoparalen, struct roar_dl_librarypara * pluginpara);
-};
-
-#define ROAR_DL_PROTO_FLAGS_NONE         0
-
-#define ROAR_DL_PROTO_STATUS_RX_READY    0x0001
-#define ROAR_DL_PROTO_STATUS_TX_READY    0x0002
-#define ROAR_DL_PROTO_STATUS_WAIT_NOTIFY 0x0004
-
-// Parameters for FNREG registration:
-#define ROAR_DL_PROTO_SUBTYPE  1 /* 0 = roard */
-#define ROAR_DL_PROTO_VERSION  0
-#define ROAR_DL_PROTO_SIZE     sizeof(struct roar_dl_proto)
-
-
-// Common Service Interface (CSI):
-struct roar_dl_service {
- // Name and ABI version of the application:
- // if appname is NULL this is a /universal/ service.
- // Such services MUST use APIs defined by the RoarAudio Project.
- // If a random Vendor needs a API universal to own applications
- // it should define a virtual application name for this.
- const char * appname;
- const char * appabi;
- // Name and ABI/API version of service:
- const char * servicename;
- const char * serviceabi;
- // Description:
- const char * description;
- // Flags (see below for defined flags):
- const int    flags;
- // Userdata:
- // This is some kind of constant data.
- // It can bed used by the functions below for internal stuff.
- const void * userdata;
- // Functions:
- // get_api returns a pointer to a struct with the API.
- // The api is specific to [appname, appabi, servicename, serviceabi].
- const void * (*get_api)(const struct roar_dl_service * service, struct roar_dl_librarypara * para);
-};
-
-#define ROAR_DL_SERVICE_FLAGS_NONE         0x0000
-
-#define ROAR_DL_SERVICE_SUBTYPE  0
-#define ROAR_DL_SERVICE_VERSION  0
-#define ROAR_DL_SERVICE_SIZE     sizeof(struct roar_dl_service)
-
-#define ROAR_DL_PLUGIN_REG_SERVICES(obj) \
-static int _roaraudio_library_ROAR_DL_FN_SERVICE(struct roar_dl_librarypara * para, struct roar_dl_libraryinst * lib) { \
- size_t i; \
- (void)para, (void)lib; \
- for (i = 0; i < (sizeof((obj))/sizeof(*(obj))); i++) { \
-  ROAR_DL_PLUGIN_REG_FN(ROAR_DL_SERVICE_SUBTYPE, (obj)[i], ROAR_DL_SERVICE_VERSION); \
- } \
- return 0; \
-}
-#define ROAR_DL_PLUGIN_REG_SERVICES_GET_API(name,obj) \
-static const void * name(const struct roar_dl_service * service, struct roar_dl_librarypara * para) { \
- (void)service, (void)para; \
- return &(obj); \
-}
-
-struct roar_dl_service_api {
- const void * api;
- struct roar_dl_lhandle * lhandle;
- const struct roar_dl_service * service;
-};
-
-#define libroar_dl_service_apitype(type) \
-union { \
- struct roar_dl_service_api apiinterface; \
- const struct type * api; \
-}
-
-int libroar_dl_service_get_api_real(struct roar_dl_librarypara * para, const char * appname, const char * appabi, const char * servicename, const char * serviceabi, int universal, struct roar_dl_service_api * api, int retry);
-#define libroar_dl_service_get_api(para,appname,appabi,servicename,serviceabi,universal,api) libroar_dl_service_get_api_real((para),(appname),(appabi),(servicename),(serviceabi),(universal),(struct roar_dl_service_api *)(api), 1)
-#define roar_dl_service_get_api(para,servicename,serviceabi,api) libroar_dl_service_get_api((para), (para) == NULL ? NULL : ((struct roar_dl_librarypara *)(para))->appname, (para) == NULL ? NULL : ((struct roar_dl_librarypara *)(para))->abiversion, (servicename), (serviceabi), 1, (api))
-
-int libroar_dl_service_free_api_real(struct roar_dl_service_api * api);
-#define libroar_dl_service_free_api(api) libroar_dl_service_free_api_real((struct roar_dl_service_api *)&(api))
-
-#define libroar_dl_service_run_func(obj,name,type,...) ((type[3]){(type)roar_dl_context_restore((obj).apiinterface.lhandle), ((obj).api->name(__VA_ARGS__)), (type)roar_dl_context_store((obj).apiinterface.lhandle)})[1]
-#define libroar_dl_service_run_func_void(obj,name,...) do { roar_dl_context_restore((obj).apiinterface.lhandle); (obj).api->name(__VA_ARGS__); roar_dl_context_store((obj).apiinterface.lhandle); } while (0)
-#define libroar_dl_service_check_func(obj,name) ((obj).api->name != NULL)
-
-// Reg FN:
-
-// Options:
-#define ROAR_DL_FNREG_OPT_NONE 0   /* no options */
-
-// Register an FN.
-int                      roar_dl_register_fn(struct roar_dl_lhandle * lhandle, int fn, int subtype, const void * object, size_t objectlen, int version, int options);
-
-// Unregister an FN.
-int                      roar_dl_unregister_fn2(struct roar_dl_lhandle * lhandle, int fn, int subtype, const void * object, size_t objectlen, int version, int options);
-
-// Unregister FN for the given plugin.
-// This should not be called directly and is called internally when needed.
-int                      roar_dl_unregister_fn(struct roar_dl_lhandle * lhandle);
-
-// asking for a object:
-int                      roar_dl_query_fn(struct roar_dl_lhandle ** lhandle, int fn, int subtype, const void ** object, size_t * objectlen, int version, int * options, ssize_t index);
-
-#endif
-
-//ll
Index: include/libroar/roarfeatures.h
===================================================================
--- include/libroar/roarfeatures.h	(revision 6052)
+++ 	(revision )
@@ -1,76 +1,0 @@
-//roarfeatures.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARFEATURES_H_
-#define _LIBROARFEATURES_H_
-
-#include "libroar.h"
-
-// libroar1 features:
-#define ROAR_FT_FUNC_SET_FLAGS2
-#define ROAR_FT_FUNC_LIST_FILTERED
-#define ROAR_FT_FUNC_WAIT
-#define ROAR_FT_FUNC_VS_CTL
-#define ROAR_FT_FUNC_SET_VOL2
-#define ROAR_FT_FUNC_CONNECT2
-#define ROAR_FT_FUNC_SIMPLE_CONNECT2
-#define ROAR_FT_FUNC_PANIC
-#define ROAR_FT_FUNC_RESET
-#define ROAR_FT_FUNC_CLOCK_GETTIME
-#define ROAR_FT_FUNC_BUFFER_MOVEINTOQUEUE
-#define ROAR_FT_FUNC_CTL_C2M2
-#define ROAR_FT_FUNC_CTL_M2C2
-#define ROAR_FT_FUNC_GET_PATH
-#define ROAR_FT_FUNC_MM_STRDUP2
-#define ROAR_FT_FEATURE_VS
-#define ROAR_FT_FEATURE_VS_FILE
-#define ROAR_FT_FEATURE_VS_BUFFERED
-#define ROAR_FT_FEATURE_CRC24
-#define ROAR_FT_FEATURE_HASH_TIGER
-#define ROAR_FT_FEATURE_CAPS_STANDARDS
-#define ROAR_FT_FEATURE_SERVER_INFO_IT_SERVER
-#define ROAR_FT_FEATURE_HASH_API
-#define ROAR_FT_FEATURE_RANDOM_NONCE
-#define ROAR_FT_FEATURE_UUID         /* see #230 */
-#define ROAR_FT_FEATURE_COMMON_PROTO /* see #257 */
-#define ROAR_FT_FEATURE_SELECTOR_HANDLING /* see #285 */
-#define ROAR_FT_FEATURE_WATCHDOG /* see #291 */
-
-// libroar2 features:
-#define ROAR_FT_SONAME_LIBROAR2
-
-#endif
-
-//ll
Index: include/libroar/roarfloat.h
===================================================================
--- include/libroar/roarfloat.h	(revision 6052)
+++ 	(revision )
@@ -1,64 +1,0 @@
-//roarfloat.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARROARFLOAT_H_
-#define _LIBROARROARFLOAT_H_
-
-#include "libroar.h"
-
-typedef uint32_t roarfloat32;
-
-#define ROAR_UFLOAT32_MAX  65535
-
-#define ROAR_UFLOAT32_ZERO ROAR_HOST2NET32(0x00000000);
-#define ROAR_UFLOAT32_PINF ROAR_HOST2NET32(0x00000001);
-#define ROAR_UFLOAT32_NINF ROAR_HOST2NET32(0x0000FFFF);
-#define ROAR_UFLOAT32_PNAN ROAR_HOST2NET32(0x00007FFF);
-#define ROAR_UFLOAT32_NNAN ROAR_HOST2NET32(0x00008000);
-
-roarfloat32 roar_ufloat32_build(const uint16_t mul, const uint16_t scale);
-uint16_t roar_ufloat32_scale(const roarfloat32 f);
-uint16_t roar_ufloat32_mul(const roarfloat32 f);
-
-roarfloat32 roar_ufloat32_from_float(const float       f);
-float       roar_ufloat32_to_float  (const roarfloat32 f);
-
-int roar_float32_iszero(const roarfloat32 f);
-int roar_float32_isinf(const roarfloat32 f);
-int roar_float32_isnan(const roarfloat32 f);
-
-#endif
-
-//ll
Index: include/libroar/roarslp.h
===================================================================
--- include/libroar/roarslp.h	(revision 6052)
+++ 	(revision )
@@ -1,88 +1,0 @@
-//roarslp.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARSLP_H_
-#define _LIBROARSLP_H_
-
-#include "libroar.h"
-
-#define ROAR_SLP_MAX_MATCHES       8
-#define ROAR_SLP_MAX_URL_LEN       256
-#define ROAR_SLP_URL_TYPE_ROAR     "service:mixer.fellig:roar"
-#define ROAR_SLP_URL_TYPE_ROAR_LEN 25
-#define ROAR_SLP_URL_TYPE_ESD      "service:mixer.fellig:esd"
-#define ROAR_SLP_URL_TYPE_ESD_LEN  24
-#define ROAR_SLP_URL_TYPE          ROAR_SLP_URL_TYPE_ROAR
-#define ROAR_SLP_URL_TYPE_LEN      ROAR_SLP_URL_TYPE_ROAR_LEN
-
-#ifndef ROAR_HAVE_LIBSLP
-#define SLPHandle  void *
-#define SLPError   int
-#define SLPBoolean int
-#define SLP_FALSE  0
-#define SLP_TRUE   1
-#endif
-
-struct roar_slp_search {
- char dummy[8];
-};
-
-struct roar_slp_match {
- char   url[ROAR_SLP_MAX_URL_LEN];
- time_t tod; // Time Of Dead (found+TTL)
-};
-
-struct roar_slp_cookie {
- SLPError                 callbackerr;
- struct roar_slp_search * search;
- struct roar_slp_match    match[ROAR_SLP_MAX_MATCHES];
- int                      matchcount;
-};
-
-SLPBoolean roar_slp_url_callback(SLPHandle        hslp,
-                                 const char     * srvurl,
-                                 unsigned short   lifetime,
-                                 SLPError         errcode,
-                                 void           * cookie);
-
-int roar_slp_search          (struct roar_slp_cookie * cookie, char * type);
-int roar_slp_cookie_init     (struct roar_slp_cookie * cookie, struct roar_slp_search * search);
-
-char * roar_slp_find_roard   (int nocache);
-int    roar_slp_find_roard_r (char * addr, size_t len, int nocache);
-
-#endif
-
-//ll
Index: include/libroar/roartime.h
===================================================================
--- include/libroar/roartime.h	(revision 6052)
+++ 	(revision )
@@ -1,57 +1,0 @@
-//time.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARTIME_H_
-#define _LIBROARTIME_H_
-
-#include "libroar.h"
-
-struct roar_time {
- int64_t  t_sec;   // secund part of system time
- uint64_t t_ssec;  // sub secs in 2^-64sec units.
- uint64_t c_freq;  // clock freq in nHz. (use zero for unknown/undefined)
- uint64_t c_drift; // clock drift in 2^-64sec per sec. (use zero for unknown/undefined)
-};
-
-int roar_time_to_msg(struct roar_message * mes,  struct roar_time    * time);
-int roar_time_from_msg(struct roar_time  * time, struct roar_message * mes);
-
-int roar_get_time  (struct roar_connection * con, struct roar_time * time);
-
-int roar_clock_gettime(struct roar_time * rt, int clock);
-
-#endif
-
-//ll
Index: include/libroar/roarx11.h
===================================================================
--- include/libroar/roarx11.h	(revision 6052)
+++ 	(revision )
@@ -1,84 +1,0 @@
-//roarx11.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARX11_H_
-#define _LIBROARX11_H_
-
-#include "libroar.h"
-
-#ifdef ROAR_HAVE_LIBX11
-#define _ROAR_X11_DISPLAY Display
-#define _ROAR_X11_WINDOW  Window
-#else
-#define _ROAR_X11_DISPLAY void
-#define _ROAR_X11_WINDOW  uint_least32_t
-#endif
-
-struct roar_x11_connection {
-#ifdef ROAR_HAVE_LIBX11
- int close;
- Display * display;
-#else
- char dummy[8];
-#endif
-};
-
-#define ROAR_X11_MAX_WIN_PER_INFO 4
-
-struct roar_display_info_x11 {
- int type;
- int socktype;
- char * host;
- int display;
- int screen;
- size_t wins;
- _ROAR_X11_WINDOW window[ROAR_X11_MAX_WIN_PER_INFO];
-};
-
-struct roar_x11_connection * roar_x11_connect(char * display);
-struct roar_x11_connection * roar_x11_connect_display(_ROAR_X11_DISPLAY * display);
-int    roar_x11_disconnect(struct roar_x11_connection * con);
-
-#define roar_x11_get_display(con) ((con) == NULL ? NULL : (con)->display)
-
-int    roar_x11_flush(struct roar_x11_connection * con);
-
-int    roar_x11_set_prop(struct roar_x11_connection * con, const char * key, const char * val);
-int    roar_x11_delete_prop(struct roar_x11_connection * con, const char * key);
-char * roar_x11_get_prop(struct roar_x11_connection * con, const char * key);
-
-#endif
-
-//ll
Index: include/libroar/scheduler.h
===================================================================
--- include/libroar/scheduler.h	(revision 6052)
+++ 	(revision )
@@ -1,111 +1,0 @@
-//scheduler.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARSCHEDULER_H_
-#define _LIBROARSCHEDULER_H_
-
-#include "libroar.h"
-
-enum roar_scheduler_type {
- ROAR_SCHEDULER_NONE = 0,
- ROAR_SCHEDULER_VIO,
- ROAR_SCHEDULER_TIMEOUT,
- ROAR_SCHEDULER_PLUGIN,
- ROAR_SCHEDULER_PLUGINCONTAINER,
- ROAR_SCHEDULER_CPI_LISTEN,
- ROAR_SCHEDULER_CPI_CLIENT,
- ROAR_SCHEDULER_CPI_SERVICE, // listen for CPI registrations.
- // for future use.
- ROAR_SCHEDULER_CONNECTION,
- ROAR_SCHEDULER_VSS
-};
-
-enum roar_scheduler_strategy {
- ROAR_SCHEDULER_STRATEGY_DEFAULT = -1,
- ROAR_SCHEDULER_STRATEGY_SELECT  =  1,
- ROAR_SCHEDULER_STRATEGY_WAIT,
- ROAR_SCHEDULER_STRATEGY_SELECTORWAIT,
- ROAR_SCHEDULER_STRATEGY_WAITORSELECT,
-};
-
-#define ROAR_SCHEDULER_FLAG_DEFAULT -1
-#define ROAR_SCHEDULER_FLAG_NONE    0x0000
-#define ROAR_SCHEDULER_FLAG_FREE    0x0001
-#define ROAR_SCHEDULER_FLAG_STUB    0x0002
-#define ROAR_SCHEDULER_FLAG_KEEP_RUNNING 0x0004 /* keep _run() running in case of no work */
-
-struct roar_scheduler_source {
- enum roar_scheduler_type type;
- int flags;
- struct roar_dl_lhandle * lhandle;
- struct roar_vio_calls * vio;
- int (*cb)(struct roar_scheduler_source * source, void * userdata, int eventsa);
- void * userdata;
- union {
-  void * vp; // dummy.
-  int eventsq;
-  struct roar_vio_selecttv timeout;
-  struct roar_plugincontainer * container;
-  struct {
-   int proto;
-   const struct roar_dl_proto * impl;
-   int client;
-   struct roar_buffer *obuffer;
-   void * userdata;
-   const struct roar_keyval * protopara;
-   ssize_t protoparalen;
-  } cpi;
-  struct roar_connection * con;
-  roar_vs_t * vss;
- } handle;
-};
-
-struct roar_scheduler;
-
-struct roar_scheduler * roar_scheduler_new(int flags, enum roar_scheduler_strategy strategy);
-int                     roar_scheduler_ref(struct roar_scheduler * sched);
-int                     roar_scheduler_unref(struct roar_scheduler * sched);
-
-int                     roar_scheduler_iterate(struct roar_scheduler * sched);
-int                     roar_scheduler_run(struct roar_scheduler * sched);
-
-int                     roar_scheduler_source_add(struct roar_scheduler * sched,
-                                                  struct roar_scheduler_source * source);
-int                     roar_scheduler_source_del(struct roar_scheduler * sched,
-                                                  struct roar_scheduler_source * source);
-
-#endif
-
-//ll
Index: include/libroar/serverinfo.h
===================================================================
--- include/libroar/serverinfo.h	(revision 6052)
+++ 	(revision )
@@ -1,69 +1,0 @@
-//serverinfo.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARSERVERINFO_H_
-#define _LIBROARSERVERINFO_H_
-
-#include "libroar.h"
-
-struct roar_server_info {
- const char * version;
- const char * location;
- const char * description;
- const char * contact;
- const char * serial;
- const char * address;
- const char * uiurl;
- const char * hostid;
- const char * license;
- const char * build;
- struct {
-  const char * sysname;
-  const char * release;
-  const char * nodename;
-  const char * machine;
- } un;
-};
-
-struct roar_server_info * roar_server_info(struct roar_connection * con);
-struct roar_server_info * roar_library_info(void);
-int roar_server_info_free(struct roar_server_info * info);
-
-int roar_server_info_to_mes(struct roar_message * mes, struct roar_server_info * info, void ** data);
-struct roar_server_info * roar_server_info_from_mes(struct roar_message * mes, void * data);
-
-#endif
-
-//ll
Index: include/libroar/services.h
===================================================================
--- include/libroar/services.h	(revision 6052)
+++ 	(revision )
@@ -1,292 +1,0 @@
-//services.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARSERVICES_H_
-#define _LIBROARSERVICES_H_
-
-#include "libroar.h"
-
-enum roar_service_num {
- // Error value in case any function returns this type.
- // roar_error must be set on return.
- ROAR_SERVICE_NUM_ERROR   = -1,
-#define ROAR_SERVICE_NUM_ERROR ROAR_SERVICE_NUM_ERROR
- // reserved for future use.
- ROAR_SERVICE_NUM_DEFAULT =  0,
-//#define ROAR_SERVICE_NUM_DEFAULT ROAR_SERVICE_NUM_DEFAULT
- // current number of objects.
- ROAR_SERVICE_NUM_CURRENT =  1,
-#define ROAR_SERVICE_NUM_CURRENT ROAR_SERVICE_NUM_CURRENT
- // minumum number of objects. Optional.
- ROAR_SERVICE_NUM_MIN,
-#define ROAR_SERVICE_NUM_MIN ROAR_SERVICE_NUM_MIN
- // maximum number of objects. Optional.
- ROAR_SERVICE_NUM_MAX,
-#define ROAR_SERVICE_NUM_MAX ROAR_SERVICE_NUM_MAX
- // average number of objects. Optional.
- ROAR_SERVICE_NUM_AVG,
-#define ROAR_SERVICE_NUM_AVG ROAR_SERVICE_NUM_AVG
- // Hint for buffer size used to list(). list() can still return 'buffer to short'.
- ROAR_SERVICE_NUM_BUFFER,
-#define ROAR_SERVICE_NUM_BUFFER ROAR_SERVICE_NUM_BUFFER
-};
-
-// clients:
-#define ROAR_SERVICE_CLIENT_NAME "client"
-#define ROAR_SERVICE_CLIENT_ABI  "1.0beta9-pr1"
-struct roar_client;
-struct roar_service_client {
- // get list of client IDs.
- // buffer is passed as ids, buffer size (in elements) is passed as len.
- // returns the number of elements stored in ids or -1 on error.
- ssize_t (*list)(int * ids, size_t len);
- // get the number of clients. See also comments above on what.
- ssize_t (*num)(enum roar_service_num what);
- // get a client by ID. The object returned is a copy and must not be motified.
- int (*get)(int id, struct roar_client * client);
- // kick a client by ID. The reason for the kick is stored in error and msg.
- // if msg is NULL it defaults to roar_error2str(error).
- int (*kick)(int id, int error, const char * msg);
- // return status of client as returned by CPI's status() callback.
- int (*status)(int id);
-
- // optional functions follow:
-
- // set PID, UID and/or GID for client.
- // if any ID is -1 the old value is not touched if clear is false.
- // if clear is true IDs passed as -1 are reset to 'not set'.
- // if altering IDs changes the permissions of a given client is up to the
- // provider.
- int (*set_ids)(int id, int clear, int pid, int uid, int gid);
- // set the name of the client.
- // the name is copied within this call so the bufer holding it can be freed.
- int (*set_name)(int id, const char * name);
- // this will change the protocol of the client.
- int (*set_proto)(int id, int proto);
- // this execes the stream.
- // the stream must be owned by the client.
- // if stream is -1 the client is execed.
- // This will result in the client be completly reset to a state
- // as directly after accept(). This must be followed by a call to set_proto().
- int (*exec)(int id, int stream);
-};
-
-// streams:
-struct roar_stream_info;
-struct roar_stream_rpg;
-struct roar_service_stream {
- // get list of stream IDs.
- // buffer is passed as ids, buffer size (in elements) is passed as len.
- // returns the number of elements stored in ids or -1 on error.
- ssize_t (*list)(int * ids, size_t len);
- // get the number of streams. See also comments above on what.
- ssize_t (*num)(enum roar_service_num what);
- // get a stream by ID. The object returned is a copy and must not be motified.
- int (*get)(int id, struct roar_stream * s, struct roar_stream_info * info);
- // kick a stream by ID. The reason for the kick is stored in error and msg.
- // if msg is NULL it defaults to roar_error2str(error).
- int (*kick)(int id, int error, const char * msg);
-
- // optional functions follow:
-
- // create a new stream.
- // if parent is set to -1 a normal stream is created.
- // if it is set to the ID of an existing stream it is created as child/virtual stream.
- // if mixer is set to -1 the default mixer is used.
- int (*new)(const struct roar_audio_info * info, int dir, int parent, int mixer);
- // get the ID of the client owning the stream.
- int (*get_client)(int id);
- // set the owner of the stream.
- // if the stream is already owned by a client it is moved if possible.
- int (*set_client)(int id, int client);
- // set role of stream.
- // if role is passed as -1 the role is cleared.
- int (*set_role)(int id, int role);
- // alter stream flags.
- int (*set_flag)(int id, uint32_t flags, int action);
- // get name of stream.
- // the buffer returned in *name must be freed using roar_mm_free().
- int (*get_name)(int id, char ** name);
- // set name of stream.
- // stream name will be copied so the buffer can be freed after this call.
- // passing NULL will unset the stream name.
- int (*set_name)(int id, const char * name);
- // set volume and rpg settings.
- // If mixer or rpg is NULL the corresponding setting is not touched.
- // if both are NULL this does nothing.
- int (*set_volume)(int id, const struct roar_mixer_settings * mixer, const struct roar_stream_rpg * rpg);
-};
-
-// about:
-#define ROAR_SERVICE_ABOUT_NAME "about"
-#define ROAR_SERVICE_ABOUT_ABI  "1.0beta9"
-struct roar_service_about {
- int (*show)(const struct roar_dl_libraryname * libname);
-};
-
-// help:
-#define ROAR_SERVICE_HELP_NAME "help"
-#define ROAR_SERVICE_HELP_ABI  "1.0beta9"
-struct roar_service_help {
- int (*show)(const struct roar_dl_libraryname * libname, const char * topic);
-};
-
-// prefs:
-// procctl:
-#define ROAR_SERVICE_PROCCTL_ERROR     ((uint_least32_t)0xFFFFFFFFUL)
-#define ROAR_SERVICE_PROCCTL_NONE      ((uint_least32_t)0x00000000UL)
-#define ROAR_SERVICE_PROCCTL_ALL       ((uint_least32_t)0x7FFFFFFFUL)
-#define ROAR_SERVICE_PROCCTL_CONFIG    ((uint_least32_t)0x00000001UL)
-#define ROAR_SERVICE_PROCCTL_LOGFILE   ((uint_least32_t)0x00000002UL)
-#define ROAR_SERVICE_PROCCTL_PIDFILE   ((uint_least32_t)0x00000004UL)
-
-struct roar_service_procctl {
- // terminate the process.
- // rv is the return POSIX return code.
- // a value of zero means no error.
- // a value of -1 means the provider should decide the value
- // based on the other parameters.
- // a value smaller than -1 is not allowed.
- // all other values indicate some kind of error.
- // error and msg give a closer information why the process is terminated.
- // those can be be used in case rv is set to -1. they can also be printed
- // or logged by the the provider for later inspection.
- int (*exit)(int rv, int error, const char * msg);
-
- // optional functions follow:
-
- // restart the process.
- int (*restart)(void);
- // daemonize the process.
- // the process is moved into background, detaching from the console.
- int (*daemonize)(void);
- // reload config or other parts. See above.
- int (*reload)(uint_least32_t what);
- // reopen logfiles or other parts. See above.
- int (*reopen)(uint_least32_t what);
-};
-
-// queue:
-struct roar_service_queue {
- ssize_t (*list)(int * ids, size_t len);
- ssize_t (*num)(enum roar_service_num what);
- int (*get_name)(int id, char ** name);
- // status?
- int (*play)(int id);
- int (*stop)(int id);
- int (*pause)(int id, int how);
- int (*next)(int id);
- int (*prev)(int id);
-};
-
-// GPIO/Sensors:
-#define ROAR_SERVICE_GPIO_NAME "gpio"
-#define ROAR_SERVICE_GPIO_ABI  "1.0beta10-pr0"
-
-#define ROAR_SERVICE_GPIO_FINPUT    ((uint_least32_t)0x00000001UL)
-#define ROAR_SERVICE_GPIO_FOUTPUT   ((uint_least32_t)0x00000002UL)
-#define ROAR_SERVICE_GPIO_FPULLDOWN ((uint_least32_t)0x00000004UL)
-#define ROAR_SERVICE_GPIO_FPULLUP   ((uint_least32_t)0x00000008UL)
-#define ROAR_SERVICE_GPIO_FCACHED   ((uint_least32_t)0x00000010UL)
-
-enum roar_service_gpio_type {
- ROAR_SERVICE_GPIO_TERROR = -1,
- ROAR_SERVICE_GPIO_TUNKNOWN = 0,
- ROAR_SERVICE_GPIO_TINT,
- ROAR_SERVICE_GPIO_TENUM,
- ROAR_SERVICE_GPIO_TBOOL,
- ROAR_SERVICE_GPIO_TTRISTATE,
- ROAR_SERVICE_GPIO_TFLOAT
-};
-
-enum roar_service_gpio_state {
- ROAR_SERVICE_GPIO_SERROR = -1,
- ROAR_SERVICE_GPIO_SUNKNOWN = 0,
- ROAR_SERVICE_GPIO_SFREE,
- ROAR_SERVICE_GPIO_SUNINITED,
- ROAR_SERVICE_GPIO_SREADY,
- ROAR_SERVICE_GPIO_SBUSY,
- ROAR_SERVICE_GPIO_SDISCONNECTED,
- ROAR_SERVICE_GPIO_SDISABLED,
- ROAR_SERVICE_GPIO_SINERROR
-};
-
-struct roar_service_gpio_port {
- int id;
- const char * name;
- uint_least32_t mode;
- const char * unit;
- enum roar_service_gpio_type type;
- enum roar_service_gpio_state state;
- int irange_min;
- int irange_max;
- double frange_min;
- double frange_max;
-};
-
-struct roar_service_gpio {
- // get list of gpio IDs.
- // buffer is passed as ids, buffer size (in elements) is passed as len.
- // returns the number of elements stored in ids or -1 on error.
- ssize_t (*list)(int * ids, size_t len);
- // get the number of gpios. See also comments above on what.
- ssize_t (*num)(enum roar_service_num what);
- // get a gpio by ID. The object returned is a copy and must not be motified or freed.
- int (*get)(int id, struct roar_service_gpio_port * port);
-
- // Sets up ports.
- // the controler should set mode and state of port to given target mode and state.
- // If id is given as -1 this is about the controler. mode MUST NOT contain any
- // flags beside ROAR_SERVICE_GPIO_FCACHED. If ROAR_SERVICE_GPIO_FCACHED
- // is set it is applied all ports.
- int (*setup)(int id, uint_least32_t mode, enum roar_service_gpio_state state);
-
- // get value of port (input or output) as int or float.
- int (*get_int)(int id);
- double (*get_float)(int id);
-
- // set value of output (as int or float).
- int (*set_int)(int id, int val);
- int (*set_float)(int id, double val);
-
- // convert the value val as returned by the port to the base unit of the port.
- // if rev is set converst from the base unit to the value as used by the port.
- int (*convert_int)(int id, int val, int rev);
- double (*convert_float)(int id, double val, int rev);
-};
-
-#endif
-
-//ll
Index: include/libroar/simple.h
===================================================================
--- include/libroar/simple.h	(revision 6052)
+++ include/libroar/simple.h	(revision 0)
@@ -1,36 +1,3 @@
-//simple.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+//libroar.h:
 
 #ifndef _LIBROARSIMPLE_H_
@@ -39,12 +6,16 @@
 #include "libroar.h"
 
-int roar_simple_connect (struct roar_connection * con, const char * server, const char * name);
-int roar_simple_connect2(struct roar_connection * con, const char * server, const char * name, int flags, uint_least32_t timeout);
+int roar_simple_connect (struct roar_connection * con, char * server, char * name);
 
-int roar_simple_new_stream_attachexeced_obj (struct roar_connection * con, struct roar_stream * s, uint32_t rate, uint32_t channels, uint32_t bits, uint32_t codec, int dir, int mixer);
+int roar_simple_stream  (int rate, int channels, int bits, int codec, char * server, int dir, char * name);
 
-int roar_simple_play_file(const char * file, const char * server, const char * name);
+int roar_simple_play    (int rate, int channels, int bits, int codec, char * server, char * name);
+int roar_simple_monitor (int rate, int channels, int bits, int codec, char * server, char * name);
+int roar_simple_record  (int rate, int channels, int bits, int codec, char * server, char * name);
+int roar_simple_filter  (int rate, int channels, int bits, int codec, char * server, char * name);
 
-int roar_simple_connect_virtual(struct roar_connection * con, struct roar_stream * s, int parent, int dir);
+int roar_simple_close(int fh);
+
+int roar_simple_get_standby (int fh);
 
 #endif
Index: include/libroar/socket.h
===================================================================
--- include/libroar/socket.h	(revision 6052)
+++ include/libroar/socket.h	(revision 0)
@@ -1,36 +1,3 @@
-//socket.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+//libroar.h:
 
 #ifndef _LIBROARSOCKET_H_
@@ -39,7 +6,8 @@
 #include "libroar.h"
 
-#define ROAR_SOCKET_MODE_NONE    0
-#define ROAR_SOCKET_MODE_LISTEN  1
-#define ROAR_SOCKET_MODE_CONNECT 2
+#define ROAR_SOCKET_TYPE_NONE 0
+#define ROAR_SOCKET_TYPE_UNKNOWN ROAR_SOCKET_TYPE_NONE
+#define ROAR_SOCKET_TYPE_INET 1
+#define ROAR_SOCKET_TYPE_UNIX 2
 
 #define ROAR_SOCKET_QUEUE_LEN 8
@@ -48,21 +16,12 @@
 #define ROAR_SOCKET_NONBLOCK  2
 
-#define ROAR_SOCKET_MAX_HOSTNAMELEN 64
+int roar_socket_listen  (int type, char * host, int port);
+int roar_socket_connect (char * host, int port);
 
-int roar_socket_listen  (int type, const char * host, int port);
-int roar_socket_connect (int type, const char * host, int port);
-
-int roar_socket_new        (int type);
-
-int roar_socket_open       (int mode, int type, const char * host, int port);
-
-const char * roar_socket_get_local_nodename(void);
+int roar_socket_new_tcp (void);
+int roar_socket_new_unix (void);
+int roar_socket_open (int mode, int type, char * host, int port);
 
 int roar_socket_nonblock(int fh, int state);
-
-int roar_socket_dup_udp_local_end (int fh);
-
-int roar_socket_send_fh (int sock, int fh, char * mes, size_t   len);
-int roar_socket_recv_fh (int sock,         char * mes, size_t * len);
 
 #endif
Index: include/libroar/sshaskpass.h
===================================================================
--- include/libroar/sshaskpass.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//sshaskpass.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAR_SSHASKPASS_H_
-#define _LIBROAR_SSHASKPASS_H_
-
-#include "libroar.h"
-
-int roar_sshaskpass_getpass   (char ** pw, char * desc);
-
-#endif
-
-//ll
Index: include/libroar/stack.h
===================================================================
--- include/libroar/stack.h	(revision 6052)
+++ 	(revision )
@@ -1,70 +1,0 @@
-//stack.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARSTACK_H_
-#define _LIBROARSTACK_H_
-
-#include "libroar.h"
-
-#define ROAR_STACK_SIZE 32
-
-#define ROAR_STACK_FLAG_NONE       0x00
-#define ROAR_STACK_FLAG_FREE_SELF  0x01
-#define ROAR_STACK_FLAG_FREE_DATA  0x02
-
-struct roar_stack {
- int next;
- int flags;
-
- void (*free)(void*);
-
- void * slot[ROAR_STACK_SIZE];
-};
-
-int roar_stack_new(struct roar_stack * stack);
-struct roar_stack * roar_stack_newalloc(void);
-
-int roar_stack_free(struct roar_stack * stack);
-
-int roar_stack_set_free(struct roar_stack * stack, void (*func)(void*));
-int roar_stack_set_flag(struct roar_stack * stack, int flag, int reset);
-
-int roar_stack_push    (struct roar_stack * stack, void *  ptr);
-int roar_stack_pop     (struct roar_stack * stack, void ** ptr);
-int roar_stack_get_cur (struct roar_stack * stack, void ** ptr);
-
-#endif
-
-//ll
Index: include/libroar/stream.h
===================================================================
--- include/libroar/stream.h	(revision 6052)
+++ include/libroar/stream.h	(revision 0)
@@ -1,36 +1,3 @@
-//stream.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+//libroarstream.h:
 
 #ifndef _LIBROARSTREAM_H_
@@ -39,101 +6,22 @@
 #include "roaraudio.h"
 
-#define _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL
+#define roar_dir2str(x)   ((x) == ROAR_DIR_PLAY   ? "play"   : (x) == ROAR_DIR_MONITOR ? "monitor" : \
+                           (x) == ROAR_DIR_FILTER ? "filter" : (x) == ROAR_DIR_RECORD  ? "record"  : \
+                           (x) == ROAR_DIR_OUTPUT ? "output" : "unknown")
 
-const char * roar_dir2str (const int dir) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-int    roar_str2dir (const char * name) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL _LIBROAR_ATTR_PURE;
+#define roar_codec2str(x) ((x) == ROAR_CODEC_PCM_S_LE  ? "pcm_s_le"  : (x) == ROAR_CODEC_PCM_S_BE ? "pcm_s_be" : \
+                           (x) == ROAR_CODEC_PCM_S_PDP ? "pcm_s_pdp" : "unknown" )
 
-struct roar_stream_info {
- int block_size;
- int pre_underruns;
- int post_underruns;
- uint32_t codec;
- uint32_t flags;
- char * driver;
- uint_least32_t delay;
- int state;
- int mixer;
- int role;
-};
+int roar_stream_connect (struct roar_connection * con, struct roar_stream * s, int dir);
 
-struct roar_stream_rpg {
- int        mode;
- uint16_t   mul;
- uint16_t   div;
-};
+int roar_stream_new     (struct roar_stream * s, unsigned int rate, unsigned int channels, unsigned int bits, unsigned int codec);
 
-int roar_stream_connect (struct roar_connection * con, struct roar_stream * s, int dir, int mixer) _LIBROAR_STREAM_STDATTRS;
+int roar_stream_exec    (struct roar_connection * con, struct roar_stream * s);
 
-int roar_stream_new     (struct roar_stream * s, unsigned int rate, unsigned int channels, unsigned int bits, unsigned int codec) _LIBROAR_ATTR_NONNULL_ALL;
-
-int roar_stream_new_by_info (struct roar_stream * s, const struct roar_audio_info * info) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_rel_id(struct roar_stream * s, int id) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_stream_get_rel_id(struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_new_by_id(struct roar_stream * s, int id) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_stream_new_empty(struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_id (struct roar_stream * s, int id) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_stream_get_id (struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_fh (struct roar_stream * s, int fh) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_stream_get_fh (struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_dir (struct roar_stream * s, int dir) _LIBROAR_ATTR_NONNULL_ALL;
-int roar_stream_get_dir (struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_exec    (struct roar_connection * con, struct roar_stream * s) _LIBROAR_STREAM_STDATTRS;
-int roar_stream_connect_to (struct roar_connection * con, struct roar_stream * s, int type, char * host, int port);
-int roar_stream_connect_to_ask (struct roar_connection * con, struct roar_stream * s, int type, char * host, int port);
-int roar_stream_connect_to_advanced (struct roar_connection * con, struct roar_stream * s,
-                                     int version, int ask_only, uint_least32_t flags,
-                                     int socket_type, ssize_t socket_len, const void * socketaddr,
-                                     int transport_protocol, ssize_t tranport_len, const void * transportsetup,
-                                     uint16_t clientsetup_flags, struct roar_client * clientsetup);
-int roar_stream_passfh  (struct roar_connection * con, struct roar_stream * s, int fh) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_attach_simple (struct roar_connection * con, struct roar_stream * s, int client) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_get_info (struct roar_connection * con, struct roar_stream * s, struct roar_stream_info * info) _LIBROAR_STREAM_STDATTRS;
-int roar_stream_get_name (struct roar_connection * con, struct roar_stream * s, char * name, size_t len) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_get_chanmap (struct roar_connection * con, struct roar_stream * s, char * map, size_t * len) _LIBROAR_STREAM_STDATTRS;
-int roar_stream_set_chanmap (struct roar_connection * con, struct roar_stream * s, char * map, size_t   len) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_flags  (struct roar_connection * con, struct roar_stream * s, uint32_t flags, int action) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_set_role  (struct roar_connection * con, struct roar_stream * s, int role) _LIBROAR_STREAM_STDATTRS;
-
-int roar_stream_get_rpg   (struct roar_connection * con, struct roar_stream * s, struct roar_stream_rpg * rpg) _LIBROAR_STREAM_STDATTRS;
-int roar_stream_set_rpg   (struct roar_connection * con, struct roar_stream * s, const struct roar_stream_rpg * rpg) _LIBROAR_STREAM_STDATTRS;
+int roar_stream_add_data (struct roar_connection * con, struct roar_stream * s, char * data, size_t len);
 
 int roar_stream_s2m     (struct roar_stream * s, struct roar_message * m);
 int roar_stream_m2s     (struct roar_stream * s, struct roar_message * m);
 
-int32_t      roar_str2codec (const char   * codec) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-const char * roar_codec2str (const uint32_t codec) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int32_t      roar_mime2codec (const char   * mime) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-const char * roar_codec2mime (const uint32_t codec) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int32_t roar_str2rate(const char * rate) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-int32_t roar_str2bits(const char * bits) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-int32_t roar_str2channels(const char * channels) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-
-const char * roar_streamstate2str(int streamstate) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-int    roar_str2role  (const char * role) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-const char * roar_role2str  (const int    role) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-const char * roar_rpgmode2str(const int rpgmode) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_PURE;
-
-ssize_t roar_info2samplesize (struct roar_audio_info * info) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-ssize_t roar_info2framesize  (struct roar_audio_info * info) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-ssize_t roar_info2bitspersec (struct roar_audio_info * info) _LIBROAR_STREAM_STDATTRS _LIBROAR_ATTR_PURE;
-
-int     roar_profile2info    (struct roar_audio_info * info, const char * profile) _LIBROAR_STREAM_STDATTRS;
-ssize_t roar_profiles_list   (const char ** list, size_t len, size_t offset) _LIBROAR_STREAM_STDATTRS;
-
 #endif
 
Index: include/libroar/trap.h
===================================================================
--- include/libroar/trap.h	(revision 6052)
+++ 	(revision )
@@ -1,73 +1,0 @@
-//trap.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARTRAP_H_
-#define _LIBROARTRAP_H_
-
-#include "libroar.h"
-
-#ifdef ROAR_SUPPORT_TRAP
-#define roar_strap(group,name) roar_strap_impl((group),(name), __LINE__, __FILE__, ROAR_DBG_PREFIX)
-#else
-#define roar_strap(group,name)
-#endif
-
-#define ROAR_TRAP_GROUP_LIBROAR 1
-#define ROAR_TRAP_GROUP_ROARD   2
-#define ROAR_TRAP_GROUP_APP     3
-#define ROAR_TRAP_GROUP_LIB     4
-#define ROAR_TRAP_GROUP_NETWORK 5
-#define ROAR_TRAP_GROUP_PROTO   6
-
-#define ROAR_TRAP_GROUP_USER_MIN 1025
-
-enum roar_trap_policy {
- ROAR_TRAP_IGNORE = 0,
- ROAR_TRAP_WARN,
- ROAR_TRAP_ABORT,
- ROAR_TRAP_KILL,
- ROAR_TRAP_STOP,
- ROAR_TRAP_DIE
-};
-
-unsigned int roar_trap_register_group(const char * name);
-const char * roar_trap_get_groupname(const unsigned int group);
-unsigned int roar_trap_get_groupid(const char * name);
-
-void roar_strap_impl(const unsigned int group, const char * name, unsigned int line, const char * file, const char * prefix);
-
-#endif
-
-//ll
Index: include/libroar/uuid.h
===================================================================
--- include/libroar/uuid.h	(revision 6052)
+++ 	(revision )
@@ -1,71 +1,0 @@
-//uuid.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARUUID_H_
-#define _LIBROARUUID_H_
-
-#include "libroar.h"
-
-typedef unsigned char roar_uuid_t[16];
-
-enum roar_uuid_type {
- ROAR_UUID_TYPE_NULL         = 0,
- ROAR_UUID_TYPE_TIME         = 1,
- ROAR_UUID_TYPE_DCE_SECURITY = 2,
- ROAR_UUID_TYPE_MD5          = 3,
- ROAR_UUID_TYPE_RANDOM       = 4,
- ROAR_UUID_TYPE_SHA1         = 5
-};
-
-// compare two UUIDs: return 1 if they are the same, 0 if they are not and -1 in case of error.
-int roar_uuid_eq(const roar_uuid_t a, const roar_uuid_t b);
-
-int roar_uuid2str(char * str, const roar_uuid_t uuid, ssize_t len);
-int roar_str2uuid(roar_uuid_t uuid, const char * str);
-
-// returns UUIDs for common namespaces.
-const roar_uuid_t * roar_uuid_get_ns_real(const char * ns);
-#define roar_uuid_get_ns(ns) (*roar_uuid_get_ns_real((ns)))
-
-int roar_uuid_gen(roar_uuid_t uuid, enum roar_uuid_type type, const roar_uuid_t ns, const void * argp, ssize_t arglen);
-#define roar_uuid_gen_null(uuid) roar_uuid_gen((uuid), ROAR_UUID_TYPE_NULL, NULL, NULL, -1)
-#define roar_uuid_gen_time(uuid) roar_uuid_gen((uuid), ROAR_UUID_TYPE_TIME, NULL, NULL, -1)
-#define roar_uuid_gen_random(uuid) roar_uuid_gen((uuid), ROAR_UUID_TYPE_RANDOM, NULL, NULL, -1)
-#define roar_uuid_gen_fromstr(uuid,str,ns) roar_uuid_gen((uuid), ROAR_UUID_TYPE_SHA1, roar_uuid_get_ns((ns)), (str), roar_mm_strlen((str)))
-#define roar_uuid_clear(uuid) roar_uuid_gen_null((uuid))
-
-#endif
-
-//ll
Index: include/libroar/vio.h
===================================================================
--- include/libroar/vio.h	(revision 6052)
+++ 	(revision )
@@ -1,149 +1,0 @@
-//vio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_H_
-#define _LIBROARVIO_H_
-
-#include "libroar.h"
-
-// some defines:
-#define ROAR_VIOF_EXEC      O_EXEC
-#define ROAR_VIOF_READ      O_RDONLY
-#define ROAR_VIOF_WRITE     O_WRONLY
-#define ROAR_VIOF_READWRITE O_RDWR
-#define ROAR_VIOF_SEARCH    O_SEARCH
-#define ROAR_VIOF_LISTEN    (-"") /* compiler error as long as there is no O_LISTEN */
-
-#define ROAR_VIOF_CREAT     O_CREAT
-#define ROAR_VIOF_TRUNC     O_TRUNC
-#define ROAR_VIOF_APPEND    O_APPEND
-
-#ifndef ROAR_TARGET_WIN32
-#define ROAR_VIOF_NONBLOCK  O_NONBLOCK
-#else
-#define ROAR_VIOF_NONBLOCK  0
-#endif
-
-#define ROAR_VIO_FLAGS_NONE        0x00000000UL
-#define ROAR_VIO_FLAGS_FREESELF    0x00000001UL /* Free the VIO object */
-
-struct roar_connection;
-
-// sys io:
-
-typedef int32_t       roar_vio_ctl_t;
-typedef int_least64_t roar_off_t;
-
-struct roar_vio_calls {
- size_t           refc;
- uint32_t         flags;
- void            *inst;
- ssize_t        (*read    )(struct roar_vio_calls * vio, void *buf, size_t count);
- ssize_t        (*write   )(struct roar_vio_calls * vio, void *buf, size_t count);
- roar_off_t     (*lseek   )(struct roar_vio_calls * vio, roar_off_t offset, int whence);
- int            (*sync    )(struct roar_vio_calls * vio);
- int            (*ctl     )(struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
- int            (*close   )(struct roar_vio_calls * vio);
-};
-
-int roar_vio_clear_calls (struct roar_vio_calls * calls);
-
-ssize_t roar_vio_read    (struct roar_vio_calls * vio, void *buf, size_t count) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-ssize_t roar_vio_write   (struct roar_vio_calls * vio, void *buf, size_t count) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-roar_off_t   roar_vio_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_nonblock(struct roar_vio_calls * vio, int state) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_sync    (struct roar_vio_calls * vio) _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1);
-
-#define roar_vio_close(x) roar_vio_unref((x))
-int     roar_vio_ref     (struct roar_vio_calls * vio) _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_unref   (struct roar_vio_calls * vio) _LIBROAR_ATTR_NONNULL_ALL;
-
-// special commands:
-int     roar_vio_accept  (struct roar_vio_calls * calls, struct roar_vio_calls * dst) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_shutdown(struct roar_vio_calls * vio,   int how) _LIBROAR_ATTR_NONNULL_ALL;
-
-// converters:
-int     roar_vio_open_fh       (struct roar_vio_calls * calls, int fh) _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_open_fh_socket(struct roar_vio_calls * calls, int fh) _LIBROAR_ATTR_NONNULL_ALL;
-
-int     roar_vio_open_socket   (struct roar_vio_calls * calls, const char * host, int port) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_open_socket_listen(struct roar_vio_calls * calls, int type, const char * host, int port) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-
-int     roar_vio_simple_stream (struct roar_vio_calls * calls,
-                                uint32_t rate, uint32_t channels, uint32_t bits, uint32_t codec,
-                                const char * server, int dir, const char * name, int mixer);
-
-int     roar_vio_simple_new_stream_obj (struct roar_vio_calls * calls,
-                                        struct roar_connection * con,
-                                        struct roar_stream * s,
-                                        uint32_t rate, uint32_t channels, uint32_t bits, uint32_t codec,
-                                        int dir, int mixer);
-
-// possible VIOs:
-
-// basic
-ssize_t roar_vio_basic_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_basic_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_basic_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_basic_sync    (struct roar_vio_calls * vio);
-int     roar_vio_basic_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_basic_close   (struct roar_vio_calls * vio);
-
-// null
-// this is a read and write in one!
-ssize_t roar_vio_null_rw    (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_null_sync  (struct roar_vio_calls * vio);
-
-// pass
-
-int     roar_vio_open_pass    (struct roar_vio_calls * calls, struct roar_vio_calls * dst);
-ssize_t roar_vio_pass_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_pass_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_pass_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_pass_sync    (struct roar_vio_calls * vio);
-int     roar_vio_pass_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_pass_close   (struct roar_vio_calls * vio);
-
-// re-read/write
-
-int     roar_vio_open_re (struct roar_vio_calls * calls, struct roar_vio_calls * dst);
-ssize_t roar_vio_re_read (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_re_write(struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_re_lseek(struct roar_vio_calls * vio, roar_off_t offset, int whence);
-
-#endif
-
-//ll
Index: include/libroar/vio_bio.h
===================================================================
--- include/libroar/vio_bio.h	(revision 6052)
+++ 	(revision )
@@ -1,46 +1,0 @@
-//vio_bio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_BIO_H_
-#define _LIBROARVIO_BIO_H_
-
-#include "libroar.h"
-
-int     roar_vio_open_bio      (struct roar_vio_calls * calls, void * bio);
-void *  roar_vio_to_bio        (struct roar_vio_calls * calls);
-
-#endif
-
-//ll
Index: include/libroar/vio_buffer.h
===================================================================
--- include/libroar/vio_buffer.h	(revision 6052)
+++ 	(revision )
@@ -1,67 +1,0 @@
-//vio_buffer.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_BUFFER_H_
-#define _LIBROARVIO_BUFFER_H_
-
-#include "libroar.h"
-
-struct roar_vio_buffer_offset {
- int is_old;
- size_t offset;
-};
-
-struct roar_vio_buffer {
- struct roar_vio_calls * backend;
- struct roar_buffer * buf_old, * buf_cur;
- size_t len_old, len_cur;
- ssize_t min_bufsize;
- struct roar_vio_buffer_offset offset;
- struct roar_vio_calls re_vio;
- int use_re;
- size_t abspos;
-};
-
-int     roar_vio_open_buffer    (struct roar_vio_calls * calls, struct roar_vio_calls * dst, ssize_t minsize, int use_re);
-ssize_t roar_vio_buffer_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_buffer_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_buffer_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_buffer_sync    (struct roar_vio_calls * vio);
-int     roar_vio_buffer_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_buffer_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_buffer_store.h
===================================================================
--- include/libroar/vio_buffer_store.h	(revision 6052)
+++ 	(revision )
@@ -1,55 +1,0 @@
-//vio_buffer_store.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_BUFFER_STORE_H_
-#define _LIBROARVIO_BUFFER_STORE_H_
-
-#include "libroar.h"
-
-struct roar_vio_buffer_store {
- struct roar_buffer * in, * out;
-};
-
-int     roar_vio_open_buffer_store    (struct roar_vio_calls * calls, struct roar_vio_buffer_store ** inst);
-ssize_t roar_vio_buffer_store_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_buffer_store_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_buffer_store_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_buffer_store_sync    (struct roar_vio_calls * vio);
-int     roar_vio_buffer_store_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_buffer_store_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_cmd.h
===================================================================
--- include/libroar/vio_cmd.h	(revision 6052)
+++ 	(revision )
@@ -1,112 +1,0 @@
-//vio_cmd.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_CMD_H_
-#define _LIBROARVIO_CMD_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_CMD_OPTS_NONE      0x00
-#define ROAR_VIO_CMD_OPTS_NONBLOCK  0x01
-#define ROAR_VIO_CMD_OPTS_ON_DEMAND 0x02
-
-#define ROAR_VIO_CMD_BUFSIZE        1024
-
-#define ROAR_VIO_CMD_STATE_NONE     0
-#define ROAR_VIO_CMD_STATE_OPEN     1
-#define ROAR_VIO_CMD_STATE_CLOSING  2
-#define ROAR_VIO_CMD_STATE_CLOSED   3
-
-
-// for OpenPGP interface:
-#define ROAR_VIO_PGP_OPTS_NONE      0x00
-#define ROAR_VIO_PGP_OPTS_ASCII     0x01
-#define ROAR_VIO_PGP_OPTS_SIGN      0x02
-#define ROAR_VIO_PGP_OPTS_TEXTMODE  0x04
-
-
-struct roar_vio_cmd_child {
- int opened;
- pid_t pid;
- int in;
- int out;
- char * cmd;
-};
-
-struct roar_vio_cmd_state {
- struct roar_vio_calls * next;
- int options;
-
- int state;
-
- struct roar_vio_cmd_child reader;
- struct roar_vio_cmd_child writer;
-};
-
-struct roar_vio_2popen_state {
- int options;
- int state;
-
- struct roar_vio_cmd_child child;
-};
-
-int roar_vio_open_cmd(struct roar_vio_calls * calls, struct roar_vio_calls * dst,
-                      char * reader, char * writer, int options);
-int roar_vio_cmd_close(struct roar_vio_calls * vio);
-int roar_vio_cmd_fork(struct roar_vio_cmd_child * child);
-int roar_vio_cmd_wait(struct roar_vio_cmd_child * child);
-
-int roar_vio_open_2popen(struct roar_vio_calls * calls, char * command, int options);
-int roar_vio_2popen_close(struct roar_vio_calls * vio);
-// possible VIOs:
-
-// cmd:
-ssize_t roar_vio_cmd_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_cmd_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_cmd_sync    (struct roar_vio_calls * vio);
-int     roar_vio_cmd_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-
-// MISC:
-int roar_vio_open_gzip(struct roar_vio_calls * calls, struct roar_vio_calls * dst, int level);
-
-int roar_vio_open_gpg(struct roar_vio_calls * calls, struct roar_vio_calls * dst, char * pw, int wronly, char * opts, int options);
-int roar_vio_open_pgp_decrypt(struct roar_vio_calls * calls, struct roar_vio_calls * dst, char * pw);
-int roar_vio_open_pgp_store(struct roar_vio_calls * calls, struct roar_vio_calls * dst, int options);
-int roar_vio_open_pgp_encrypt_sym(struct roar_vio_calls * calls, struct roar_vio_calls * dst, char * pw, int options);
-int roar_vio_open_pgp_encrypt_pub(struct roar_vio_calls * calls, struct roar_vio_calls * dst, char * pw, int options, char * recipient);
-
-#endif
-
-//ll
Index: include/libroar/vio_ctl.h
===================================================================
--- include/libroar/vio_ctl.h	(revision 6052)
+++ 	(revision )
@@ -1,223 +1,0 @@
-//vio_ctl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_CTL_H_
-#define _LIBROARVIO_CTL_H_
-
-#include "libroar.h"
-
-// CTLs:
-/*
- * 0xAAAABBBB
- * AAAA:
- *   0x0001 -> Basic stream calls
- *   0x0002 -> Driver calls
- *
- * BBBB:
- *   0x0XXX -> Client
- *   0x1XXX -> Server
- */
-
-#define ROAR_VIO_CTL_GET                  0x1UL
-#define ROAR_VIO_CTL_SET                  0x2UL
-
-#define ROAR_VIO_CTL_CLIENT            0x0000UL
-#define ROAR_VIO_CTL_SERVER            0x1000UL
-
-#define ROAR_VIO_CTL_GENERIC     (0x0000UL<<16)
-#define ROAR_VIO_CTL_STREAM      (0x0001UL<<16)
-#define ROAR_VIO_CTL_DRIVER      (0x0002UL<<16)
-
-// basic calls:
-#define ROAR_VIO_CTL_GET_NEXT            (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0100)
-#define ROAR_VIO_CTL_SET_NEXT            (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0100)
-#define ROAR_VIO_CTL_GET_FH              (ROAR_VIO_CTL_GENERIC|0x0110)
-#define ROAR_VIO_CTL_GET_READ_FH         (ROAR_VIO_CTL_GENERIC|0x0111)
-#define ROAR_VIO_CTL_GET_WRITE_FH        (ROAR_VIO_CTL_GENERIC|0x0112)
-#define ROAR_VIO_CTL_GET_SELECT_FH       (ROAR_VIO_CTL_GENERIC|0x0113)
-#define ROAR_VIO_CTL_GET_SELECT_READ_FH  (ROAR_VIO_CTL_GENERIC|0x0114)
-#define ROAR_VIO_CTL_GET_SELECT_WRITE_FH (ROAR_VIO_CTL_GENERIC|0x0115)
-#define ROAR_VIO_CTL_SELECT              (ROAR_VIO_CTL_GENERIC|0x0120)
-#define ROAR_VIO_CTL_GET_UMMAP           (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0130) /* Use mmap(), int as bool */
-#define ROAR_VIO_CTL_SET_UMMAP           (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0130) /* ** */
-#define ROAR_VIO_CTL_GET_SHUTDOWN        (ROAR_VIO_CTL_GENERIC|0x0140) /* shutdown(), need specs */
-#define ROAR_VIO_CTL_SET_NOSYNC          (ROAR_VIO_CTL_GENERIC|0x0150) /* delete call of vio sync() from object */
-#define ROAR_VIO_CTL_GET_NAME            (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0160) /* get name of VIO */
-#define ROAR_VIO_CTL_ACCEPT              (ROAR_VIO_CTL_GENERIC|0x0170) /* accept(), vio* */
-#define ROAR_VIO_CTL_SHUTDOWN            (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0174) /* shutdown(), int */
-#define ROAR_VIO_CTL_SYSIO_IOCTL         (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0180) /* ioctl(), */
-                                                                                        /* struct roar_vio_sysio_ioctl* */
-#define ROAR_VIO_CTL_FSTAT               (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0184) /* fstat() */
-#define ROAR_VIO_CTL_GET_SOCKNAME        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0188) /* getsockname() */
-#define ROAR_VIO_CTL_GET_PEERNAME        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x018C) /* getpeername() */
-
-// NOTE: The following two blocks have some discontinuity in the used IDs:
-// 0x0190 was used by both ROAR_VIO_CTL_[GS]ET_SYSIO_SOCKOPT and ROAR_VIO_CTL_[GS]ET_MIMETYPE.
-// we fixed this by changeing IDs for both and add new consts for the conflicting IDs.
-// roar_vio_ctl() will print a warning if they are used.
-#define ROAR_VIO_CTL_CONFLICTING_ID_0    (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0190)
-#define ROAR_VIO_CTL_CONFLICTING_ID_1    (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0190)
-
-#define ROAR_VIO_CTL_GET_SYSIO_SOCKOPT   (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0198) /* getsockopt() */
-#define ROAR_VIO_CTL_SET_SYSIO_SOCKOPT   (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0198) /* setsockopt() */
-
-// more about network based protocols:
-#define ROAR_VIO_CTL_GET_MIMETYPE        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x019C)
-#define ROAR_VIO_CTL_SET_MIMETYPE        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x019C)
-#define ROAR_VIO_CTL_GET_USERPASS        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0194)
-#define ROAR_VIO_CTL_SET_USERPASS        (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0194)
-
-// Implement roar_vio_nonblock()...
-#define ROAR_VIO_CTL_NONBLOCK            (ROAR_VIO_CTL_GENERIC|0x01A0) /* roar_vio_nonblock(), int */
-
-// get or set data format used for read and write calls, see below
-#define ROAR_VIO_CTL_GET_DATA_FORMAT   (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_GET|0x0170)
-#define ROAR_VIO_CTL_SET_DATA_FORMAT   (ROAR_VIO_CTL_GENERIC|ROAR_VIO_CTL_SET|0x0170)
-
-// stream:
-#define ROAR_VIO_CTL_SET_STREAM    (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_SET) /* normal streams */
-#define ROAR_VIO_CTL_GET_STREAM    (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_GET)
-#define ROAR_VIO_CTL_SET_DMXSCHAN  (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_SET|0x10) /* simple DMX Channel */
-#define ROAR_VIO_CTL_GET_DMXSCHAN  (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_GET|0x10)
-#define ROAR_VIO_CTL_SET_DMXUNIV   (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_SET|0x20) /* DMX Universe */
-#define ROAR_VIO_CTL_GET_DMXUNIV   (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_CLIENT|ROAR_VIO_CTL_GET|0x20)
-
-#define ROAR_VIO_CTL_SET_SSTREAM   (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_SERVER|ROAR_VIO_CTL_SET) /* server streams */
-#define ROAR_VIO_CTL_GET_SSTREAM   (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_SERVER|ROAR_VIO_CTL_GET)
-#define ROAR_VIO_CTL_SET_SSTREAMID (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_SERVER|ROAR_VIO_CTL_SET|0x10) /* server streams */
-#define ROAR_VIO_CTL_GET_SSTREAMID (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_SERVER|ROAR_VIO_CTL_GET|0x10)
-
-#define ROAR_VIO_CTL_SET_AUINFO    (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_SET|0x2000) /* set a struct roar_audio_info */
-#define ROAR_VIO_CTL_GET_AUINFO    (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_GET|0x2000) /* get a struct roar_audio_info */
-
-#define ROAR_VIO_CTL_GET_DELAY     (ROAR_VIO_CTL_STREAM|ROAR_VIO_CTL_GET|0x010) /* return in bytes as the vio interface */
-                                              /* does not know anything about streams */
-
-#define ROAR_VIO_CTL_GET_DBLOCKS   (ROAR_VIO_CTL_DRIVER|0x0001) /* get Driver Blocks */
-#define ROAR_VIO_CTL_SET_DBLOCKS   (ROAR_VIO_CTL_DRIVER|0x0002) /* set Driver Blocks */
-#define ROAR_VIO_CTL_GET_DBLKSIZE  (ROAR_VIO_CTL_DRIVER|0x0003) /* get Driver Blocks size (in byte) */
-#define ROAR_VIO_CTL_SET_DBLKSIZE  (ROAR_VIO_CTL_DRIVER|0x0004) /* set Driver Blocks size (in byte) */
-#define ROAR_VIO_CTL_GET_VOLUME    (ROAR_VIO_CTL_DRIVER|ROAR_VIO_CTL_GET|0x10)
-#define ROAR_VIO_CTL_SET_VOLUME    (ROAR_VIO_CTL_DRIVER|ROAR_VIO_CTL_SET|0x10)
-#define ROAR_VIO_CTL_GET_RECORD    (ROAR_VIO_CTL_DRIVER|ROAR_VIO_CTL_GET|0x20) /* int */
-#define ROAR_VIO_CTL_SET_RECORD    (ROAR_VIO_CTL_DRIVER|ROAR_VIO_CTL_SET|0x20) /* int */
-
-// consts for ROAR_VIO_CTL_SHUTDOWN:
-#define ROAR_VIO_SHUTDOWN_READ        0x1
-#define ROAR_VIO_SHUTDOWN_WRITE       0x2
-#define ROAR_VIO_SHUTDOWN_LISTEN      0x4 /* like close() on listen sock but allow padding requests */
-                                          /* to be accept()ed                                       */
-#define ROAR_VIO_SHUTDOWN_RW       (ROAR_VIO_SHUTDOWN_READ|ROAR_VIO_SHUTDOWN_WRITE)
-
-// Data format used for read/write():
-
-// _D_ata _F_ormat _T_ypes:
-// generic types:
-#define ROAR_VIO_DFT_UNKNOWN           -1
-#define ROAR_VIO_DFT_NULL          0x0000
-#define ROAR_VIO_DFT_RAW           0x0001 /* raw bytes, default */
-#define ROAR_VIO_DFT_PACKET        0x0002 /* a packet of some kind including headers */
-#define ROAR_VIO_DFT_UNFRAMED      0x0003 /* a packet of some kind excluding headers */
-
-// RoarAudio types:
-#define ROAR_VIO_DFT_RA_MESSAGE    0x0101
-#define ROAR_VIO_DFT_RA_BUFFER     0x0102
-
-// extern types:
-#define ROAR_VIO_DFT_OGG_PAGE      0x0201
-#define ROAR_VIO_DFT_OGG_PACKET    0x0202
-
-struct roar_vio_dataformat {
- unsigned int type;
-};
-
-struct roar_vio_sysio_ioctl {
- long long int   cmd;
- void          * argp;
-};
-
-struct roar_vio_sysio_sockopt {
- int         level;
- int         optname;
- void      * optval;
- socklen_t   optlen;
-};
-
-#if 0
-          struct stat {
-              dev_t     st_dev;     /* ID of device containing file */
-              ino_t     st_ino;     /* inode number */
-            X mode_t    st_mode;    /* protection */
-            X nlink_t   st_nlink;   /* number of hard links */
-            X uid_t     st_uid;     /* user ID of owner */
-            X gid_t     st_gid;     /* group ID of owner */
-              dev_t     st_rdev;    /* device ID (if special file) */
-            X off_t     st_size;    /* total size, in bytes */
-            X blksize_t st_blksize; /* blocksize for filesystem I/O */
-            X blkcnt_t  st_blocks;  /* number of blocks allocated */
-              time_t    st_atime;   /* time of last access */
-              time_t    st_mtime;   /* time of last modification */
-              time_t    st_ctime;   /* time of last status change */
-          };
-#endif
-
-struct roar_vio_stat {
- mode_t mode;
- size_t linkc;
- uid_t  uid;
- gid_t  gid;
- size_t size;
- size_t blksize;
- size_t blocks;
-};
-
-// struct for userpass:
-struct roar_userpass {
- int subtype;
- char * user;
- char * pass;
-};
-
-// for ROAR_VIO_CTL_GET_SOCKNAME and ROAR_VIO_CTL_GET_PEERNAME
-struct roar_sockname {
- int flags;
- int type;
- char * addr;
- int port;
-};
-
-#endif
-
-//ll
Index: include/libroar/vio_dstr.h
===================================================================
--- include/libroar/vio_dstr.h	(revision 6052)
+++ 	(revision )
@@ -1,227 +1,0 @@
-//vio_dstr.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_DSTR_H_
-#define _LIBROARVIO_DSTR_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_DEF_TYPE_EOL            -1 
-#define ROAR_VIO_DEF_TYPE_NONE            0
-#define ROAR_VIO_DEF_TYPE_FILE            1
-#define ROAR_VIO_DEF_TYPE_SOCKET          2
-#define ROAR_VIO_DEF_TYPE_FH              3
-#define ROAR_VIO_DEF_TYPE_SOCKETFH        4
-
-#define ROAR_VIO_DSTR_OBJGT_INTERNAL      0x0000
-#define ROAR_VIO_DSTR_OBJGT_GEN           0x0100
-#define ROAR_VIO_DSTR_OBJGT_SOCKET        0x0200
-#define ROAR_VIO_DSTR_OBJGT_PROXY         0x0300
-#define ROAR_VIO_DSTR_OBJGT_COMP          0x0400 /* compression */
-#define ROAR_VIO_DSTR_OBJGT_CRYPT         0x0500
-#define ROAR_VIO_DSTR_OBJGT_PROTO         0x0600 /* protocolls like HTTP and Gopher */
-#define ROAR_VIO_DSTR_OBJGT_CONTENT       0x0700 /* things changeing the content of the data */
-#define ROAR_VIO_DSTR_OBJGT_MUX           0x0800 /* muxers and demuxers */
-#define ROAR_VIO_DSTR_OBJGT_SPECAL        0xff00
-
-#define ROAR_VIO_DSTR_OBJT_EOL           -1
-#define ROAR_VIO_DSTR_OBJT_NONE           0
-#define ROAR_VIO_DSTR_OBJT_INTERNAL       1
-
-#define ROAR_VIO_DSTR_OBJT_FILE           (0x01|ROAR_VIO_DSTR_OBJGT_GEN)
-#define ROAR_VIO_DSTR_OBJT_FH             (0x02|ROAR_VIO_DSTR_OBJGT_GEN)
-#define ROAR_VIO_DSTR_OBJT_FD             ROAR_VIO_DSTR_OBJT_FH
-#define ROAR_VIO_DSTR_OBJT_SOCKETFH       (0x03|ROAR_VIO_DSTR_OBJGT_GEN)
-/* some space to add memory FHs and the like */
-#define ROAR_VIO_DSTR_OBJT_PASS           (0x10|ROAR_VIO_DSTR_OBJGT_GEN)
-#define ROAR_VIO_DSTR_OBJT_RE             (0x11|ROAR_VIO_DSTR_OBJGT_GEN)
-#define ROAR_VIO_DSTR_OBJT_JUMBO          (0x12|ROAR_VIO_DSTR_OBJGT_GEN)
-#define ROAR_VIO_DSTR_OBJT_EXEC           (0x20|ROAR_VIO_DSTR_OBJGT_GEN)
-/* special devices */
-#define ROAR_VIO_DSTR_OBJT_NULL           (0x30|ROAR_VIO_DSTR_OBJGT_GEN) /* /dev/null */
-#define ROAR_VIO_DSTR_OBJT_ZERO           (0x31|ROAR_VIO_DSTR_OBJGT_GEN) /* /dev/zero */
-#define ROAR_VIO_DSTR_OBJT_FULL           (0x32|ROAR_VIO_DSTR_OBJGT_GEN) /* /dev/full */
-
-#define ROAR_VIO_DSTR_OBJT_SOCKET         (0x01|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_UNIX           (0x02|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_DECNET         (0x10|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_TCP            (0x21|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_UDP            (0x22|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_TCP6           (0x31|ROAR_VIO_DSTR_OBJGT_SOCKET)
-#define ROAR_VIO_DSTR_OBJT_UDP6           (0x32|ROAR_VIO_DSTR_OBJGT_SOCKET)
-
-#define ROAR_VIO_DSTR_OBJT_SOCKS          (0x10|ROAR_VIO_DSTR_OBJGT_PROXY)
-#define ROAR_VIO_DSTR_OBJT_SOCKS4         (0x14|ROAR_VIO_DSTR_OBJGT_PROXY)
-#define ROAR_VIO_DSTR_OBJT_SOCKS4A        (0x1a|ROAR_VIO_DSTR_OBJGT_PROXY)
-#define ROAR_VIO_DSTR_OBJT_SOCKS4D        (0x1d|ROAR_VIO_DSTR_OBJGT_PROXY)
-#define ROAR_VIO_DSTR_OBJT_SOCKS5         (0x15|ROAR_VIO_DSTR_OBJGT_PROXY)
-#define ROAR_VIO_DSTR_OBJT_SSH            (0x21|ROAR_VIO_DSTR_OBJGT_PROXY)
-//#define ROAR_VIO_DSTR_OBJT_HTTP           (0x31|ROAR_VIO_DSTR_OBJGT_PROXY)
-
-//#define ROAR_VIO_DSTR_OBJT_HTTP           (0x10|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_HTTP09         (0x11|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_HTTP10         (0x12|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_HTTP11         (0x13|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_HTTP           ROAR_VIO_DSTR_OBJT_HTTP11
-#define ROAR_VIO_DSTR_OBJT_GOPHER         (0x21|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_GOPHER_PLUS    (0x22|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_ICY            (0x31|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_RTP2           (0x42|ROAR_VIO_DSTR_OBJGT_PROTO)
-#define ROAR_VIO_DSTR_OBJT_RTP            ROAR_VIO_DSTR_OBJT_RTP2
-
-/*
-#define ROAR_VIO_DSTR_OBJGT_CRYPT         0x0500
-*/
-
-#define ROAR_VIO_DSTR_OBJT_GZIP           (0x10|ROAR_VIO_DSTR_OBJGT_COMP)
-#define ROAR_VIO_DSTR_OBJT_ZLIB           (0x11|ROAR_VIO_DSTR_OBJGT_COMP)
-#define ROAR_VIO_DSTR_OBJT_BZIP2          (0x22|ROAR_VIO_DSTR_OBJGT_COMP)
-
-#define ROAR_VIO_DSTR_OBJT_PGP            (0x10|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_PGP_ENC        (0x11|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_PGP_STORE      (0x12|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_SSL1           (0x21|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_SSL2           (0x22|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_SSL3           (0x23|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_TLS            (0x2a|ROAR_VIO_DSTR_OBJGT_CRYPT)
-#define ROAR_VIO_DSTR_OBJT_SSLTLS         ROAR_VIO_DSTR_OBJT_TLS
-/* Random numbers, 0x30+ROAR_RANDOM_* */
-#define ROAR_VIO_DSTR_OBJT_NRANDOM        (0x31|ROAR_VIO_DSTR_OBJGT_CRYPT) /* nonce */
-#define ROAR_VIO_DSTR_OBJT_URANDOM        (0x33|ROAR_VIO_DSTR_OBJGT_CRYPT) /* like urandom */
-#define ROAR_VIO_DSTR_OBJT_SRANDOM        (0x34|ROAR_VIO_DSTR_OBJGT_CRYPT) /* strong random */
-
-#define ROAR_VIO_DSTR_OBJT_TRANSCODE      (0x10|ROAR_VIO_DSTR_OBJGT_CONTENT)
-
-#define ROAR_VIO_DSTR_OBJT_RAUM           (0x11|ROAR_VIO_DSTR_OBJGT_MUX)
-#define ROAR_VIO_DSTR_OBJT_OGG            (0x12|ROAR_VIO_DSTR_OBJGT_MUX)
-#define ROAR_VIO_DSTR_OBJT_TAR            (0x13|ROAR_VIO_DSTR_OBJGT_MUX)
-
-#define ROAR_VIO_DSTR_OBJT_MAGIC          (0x01|ROAR_VIO_DSTR_OBJGT_SPECAL)
-#define ROAR_VIO_DSTR_OBJT_TANTALOS       (0x02|ROAR_VIO_DSTR_OBJGT_SPECAL)
-
-
-struct roar_vio_defaults {
- int type;
-
- mode_t o_mode;
- int    o_flags;
-
- union {
-  const char *  file;
-  int           fh;
-  struct {
-          int               domain;
-          int               type;
-          const char      * host;
-          union {
-                 struct sockaddr     sa;
-#ifdef ROAR_HAVE_IPV4
-                 struct sockaddr_in  in;
-#endif
-#ifdef ROAR_HAVE_UNIX
-                 struct sockaddr_un  un;
-#endif
-#ifdef ROAR_HAVE_LIBDNET
-                 struct sockaddr_dn  dn;
-#endif
-#ifdef ROAR_HAVE_IPV6
-                 struct sockaddr_in6 in6;
-#endif
-#ifdef ROAR_HAVE_IPX
-                 struct sockaddr_ipx ipx;
-#endif
-                } sa;
-          socklen_t         len;
-         } socket;
- } d;
-};
-
-#define ROAR_VIO_DSTR_MAX_OBJ_PER_CHAIN 16
-
-struct roar_vio_dstr_chain {
- int    type;
- char * opts;
- char * dst;
- int    need_vio;
- struct roar_vio_defaults * def;
- struct roar_vio_calls    * vio;
- struct roar_vio_defaults   store_def;
-};
-
-struct roar_vio_dstr_pathelement {
- const char * dstr;
- int          flags;
-};
-
- // PEF = Path Element Flag
-#define ROAR_VIO_DSTR_PEF_NONE           0x0000
-#define ROAR_VIO_DSTR_PEF_IS_DIR         0x0001
-#define ROAR_VIO_DSTR_PEF_ALLOW_MULTI    0x0100
-#define ROAR_VIO_DSTR_PEF_ALLOW_PARENT   0x0200
-#define ROAR_VIO_DSTR_PEF_ALLOW_ABSOLUTE 0x0400
-#define ROAR_VIO_DSTR_PEF_ALLOW_ALL      (ROAR_VIO_DSTR_PEF_ALLOW_MULTI|ROAR_VIO_DSTR_PEF_ALLOW_PARENT|ROAR_VIO_DSTR_PEF_ALLOW_ABSOLUTE)
-
-int           roar_vio_dstr_get_type(const char * str);
-const char *  roar_vio_dstr_get_name(const int type);
-
-int     roar_vio_dstr_register_type(int   type,
-                                    char *name,
-                                    int (*setdef) (struct roar_vio_dstr_chain * cur,
-                                                   struct roar_vio_dstr_chain * next),
-                                    int (*openvio)(struct roar_vio_calls      * calls,
-                                                   struct roar_vio_calls      * dst,
-                                                   struct roar_vio_dstr_chain * cur,
-                                                   struct roar_vio_dstr_chain * next));
-
-int     roar_vio_dstr_init_defaults (struct roar_vio_defaults * def, int type, int o_flags, mode_t o_mode);
-int     roar_vio_dstr_init_defaults_c (struct roar_vio_defaults * def, int type, struct roar_vio_defaults * odef, int o_flags);
-
-int     roar_vio_open_default (struct roar_vio_calls * calls, struct roar_vio_defaults * def, char * opts);
-
-int     roar_vio_open_dstr_simple(struct roar_vio_calls * calls, const char * dstr, int o_flags);
-struct roar_vio_calls * roar_vio_open_dstr_simple_new(const char * dstr, int o_flags);
-
-int     roar_vio_open_dstr    (struct roar_vio_calls * calls, const char * dstr, struct roar_vio_defaults * def, int dnum);
-int     roar_vio_open_dstr_vio(struct roar_vio_calls * calls, const char * dstr, struct roar_vio_defaults * def, int dnum, struct roar_vio_calls * vio);
-
-int     roar_vio_dstr_parse_opts(struct roar_vio_dstr_chain * chain);
-int     roar_vio_dstr_set_defaults(struct roar_vio_dstr_chain * chain, int len, struct roar_vio_defaults * def, int dnum);
-int     roar_vio_dstr_build_chain(struct roar_vio_dstr_chain * chain, struct roar_vio_calls * calls, struct roar_vio_calls * vio);
-
-char *  roar_vio_dstr_cat(char * buffer, ssize_t bufferlen, const struct roar_vio_dstr_pathelement * elements, size_t elementslen);
-
-#endif
-
-//ll
Index: include/libroar/vio_jumbo.h
===================================================================
--- include/libroar/vio_jumbo.h	(revision 6052)
+++ 	(revision )
@@ -1,58 +1,0 @@
-//vio_jumbo.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_JUMBO_H_
-#define _LIBROARVIO_JUMBO_H_
-
-#include "libroar.h"
-
-struct roar_vio_jumbo {
- struct roar_buffer    * buffer;
- struct roar_vio_calls * backend;
- size_t                  pos;
-};
-
-int     roar_vio_open_jumbo    (struct roar_vio_calls * calls, struct roar_vio_calls * vio, size_t buffersize);
-
-ssize_t roar_vio_jumbo_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_jumbo_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_jumbo_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_jumbo_sync    (struct roar_vio_calls * vio);
-int     roar_vio_jumbo_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_jumbo_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_magic.h
===================================================================
--- include/libroar/vio_magic.h	(revision 6052)
+++ 	(revision )
@@ -1,51 +1,0 @@
-//vio_magic.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_MAGIC_H_
-#define _LIBROARVIO_MAGIC_H_
-
-#include "libroar.h"
-
-#if 0
-struct roar_vio_magic {
- struct roar_buffer * inp;
- struct roar_stack    vios;
-};
-
-int     roar_vio_open_magic    (struct roar_vio_calls * calls, struct roar_vio_calls * dst, int * codec);
-#endif
-#endif
-
-//ll
Index: include/libroar/vio_misc.h
===================================================================
--- include/libroar/vio_misc.h	(revision 6052)
+++ 	(revision )
@@ -1,53 +1,0 @@
-//vio_misc.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_MISC_H_
-#define _LIBROARVIO_MISC_H_
-
-#include "libroar.h"
-
-struct roar_vio_misc {
- const char * name;
- const int    support_nonblocking;
- ssize_t (*read )(void * buf, size_t len, struct roar_vio_calls * vio, struct roar_vio_misc * callbacks);
- ssize_t (*write)(void * buf, size_t len, struct roar_vio_calls * vio, struct roar_vio_misc * callbacks);
-};
-
-int     roar_vio_open_misc        (struct roar_vio_calls * calls, const struct roar_vio_misc * callbacks);
-int     roar_vio_open_misc_by_name(struct roar_vio_calls * calls, const char * name);
-
-#endif
-
-//ll
Index: include/libroar/vio_ops.h
===================================================================
--- include/libroar/vio_ops.h	(revision 6052)
+++ 	(revision )
@@ -1,61 +1,0 @@
-//vio_ops.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_OPS_H_
-#define _LIBROARVIO_OPS_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_TEE_MAX_SLOTS 32
-
-struct roar_vio_tee {
- int next;
- struct roar_vio_calls * slots[ROAR_VIO_TEE_MAX_SLOTS];
-};
-
-struct roar_split {
- struct roar_vio_calls * reader;
- struct roar_vio_calls * writer;
-};
-
-ssize_t roar_vio_copy_data   (struct roar_vio_calls * out, struct roar_vio_calls * in) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-
-int roar_vio_open_tee (struct roar_vio_calls * calls);
-
-int roar_vio_open_split (struct roar_vio_calls * calls, struct roar_vio_calls * reader, struct roar_vio_calls * writer);
-
-#endif
-
-//ll
Index: include/libroar/vio_pipe.h
===================================================================
--- include/libroar/vio_pipe.h	(revision 6052)
+++ 	(revision )
@@ -1,75 +1,0 @@
-//vio_pipe.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_PIPE_H_
-#define _LIBROARVIO_PIPE_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_PIPE_TYPE_AUTO        -1
-#define ROAR_VIO_PIPE_TYPE_AUTO_FORK    ROAR_VIO_PIPE_TYPE_AUTO
-#define ROAR_VIO_PIPE_TYPE_AUTO_NOFORK  ROAR_VIO_PIPE_TYPE_AUTO
-#define ROAR_VIO_PIPE_TYPE_NONE         0
-#define ROAR_VIO_PIPE_TYPE_BUFFER       1
-#define ROAR_VIO_PIPE_TYPE_PIPE         2
-#define ROAR_VIO_PIPE_TYPE_SOCKET       3
-
-#define ROAR_VIO_PIPE_S(self,stream)   ((self->s0) == (stream) ? 0 : 1)
-#define ROAR_VIO_PIPE_SR(self,stream)  ((self->s0) == (stream) ? 1 : 0)
-#define ROAR_VIO_PIPE_SF(self,stream)  ROAR_VIO_PIPE_S(self,stream)
-
-struct roar_vio_pipe {
- int refcount;
- int type;
- int flags;
- union {
-  struct roar_buffer * b[2];
-  int                  p[4];
- } b;
- struct roar_vio_calls * s0;
-};
-
-int roar_vio_open_pipe (struct roar_vio_calls * s0, struct roar_vio_calls * s1, int type, int flags);
-int roar_vio_pipe_init (struct roar_vio_calls * s,  struct roar_vio_pipe * self, int flags);
-
-ssize_t roar_vio_pipe_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_pipe_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_pipe_sync    (struct roar_vio_calls * vio);
-int     roar_vio_pipe_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_pipe_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_proto.h
===================================================================
--- include/libroar/vio_proto.h	(revision 6052)
+++ 	(revision )
@@ -1,77 +1,0 @@
-//vio_proto.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_PROTO_H_
-#define _LIBROARVIO_PROTO_H_
-
-#include "libroar.h"
-
-struct roar_vio_defaults;
-
-#define ROAR_VIO_PROTO_P_NONE      0
-#define ROAR_VIO_PROTO_P_HTTP      1
-#define ROAR_VIO_PROTO_P_GOPHER    2
-#define ROAR_VIO_PROTO_P_ICY       3
-
-struct roar_vio_proto {
- struct roar_vio_calls * next;
- struct {
-  struct roar_buffer * buffer;
- } reader, writer;
- struct {
-  size_t metaint;
-  size_t leftint;
-  struct roar_buffer * mdbuf;
- } metadata;
- char * content_type;
- int proto;
-};
-
-int roar_vio_proto_init_def  (struct roar_vio_defaults * def, char * dstr, int proto, struct roar_vio_defaults * odef);
-
-int roar_vio_open_proto      (struct roar_vio_calls * calls, struct roar_vio_calls * dst,
-                              const char * dstr, int proto, struct roar_vio_defaults * odef);
-
-ssize_t roar_vio_proto_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_proto_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_proto_sync    (struct roar_vio_calls * vio);
-int     roar_vio_proto_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_proto_close   (struct roar_vio_calls * vio);
-
-int roar_vio_open_proto_http   (struct roar_vio_calls * calls, struct roar_vio_calls * dst, const char * host, const char * file, struct roar_userpass * up);
-int roar_vio_open_proto_gopher (struct roar_vio_calls * calls, struct roar_vio_calls * dst, const char * host, const char * file);
-#endif
-
-//ll
Index: include/libroar/vio_proxy.h
===================================================================
--- include/libroar/vio_proxy.h	(revision 6052)
+++ 	(revision )
@@ -1,74 +1,0 @@
-//vio_proxy.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_PROXY_H_
-#define _LIBROARVIO_PROXY_H_
-
-#include "libroar.h"
-
-enum roar_vio_proxy_type {
- ROAR_VIO_PROXY_INVALID = -1,
- ROAR_VIO_PROXY_NONE    = 0,
-#define ROAR_VIO_PROXY_NONE ROAR_VIO_PROXY_NONE
- ROAR_VIO_PROXY_SOCKS   = 1, /* unknown version */
-#define ROAR_VIO_PROXY_SOCKS ROAR_VIO_PROXY_SOCKS
- ROAR_VIO_PROXY_SOCKS4  = 2,
-#define ROAR_VIO_PROXY_SOCKS4 ROAR_VIO_PROXY_SOCKS4
- ROAR_VIO_PROXY_SOCKS4a = 3,
-#define ROAR_VIO_PROXY_SOCKS4a ROAR_VIO_PROXY_SOCKS4a
- ROAR_VIO_PROXY_SOCKS4d = 4,
-#define ROAR_VIO_PROXY_SOCKS4d ROAR_VIO_PROXY_SOCKS4d
- ROAR_VIO_PROXY_SOCKS5  = 5,
-#define ROAR_VIO_PROXY_SOCKS5 ROAR_VIO_PROXY_SOCKS5
- ROAR_VIO_PROXY_HTTP    = 6,
-#define ROAR_VIO_PROXY_HTTP ROAR_VIO_PROXY_HTTP
- ROAR_VIO_PROXY_SSH     = 7
-#define ROAR_VIO_PROXY_SSH ROAR_VIO_PROXY_SSH
-};
-
-int roar_vio_proxy_init_def(struct roar_vio_defaults * def,
-                            char * dstr, enum roar_vio_proxy_type type,
-                            struct roar_vio_defaults * odef);
-int roar_vio_open_proxy    (struct roar_vio_calls * calls, struct roar_vio_calls * dst,
-                            enum roar_vio_proxy_type type, struct roar_vio_defaults * odef);
-
-// DSTR interface:
-struct roar_vio_dstr_chain;
-int roar_vio_proxy_setdef(struct roar_vio_dstr_chain * cur,   struct roar_vio_dstr_chain * next);
-int roar_vio_proxy_openvio(struct roar_vio_calls * calls, struct roar_vio_calls * dst, struct roar_vio_dstr_chain * cur, struct roar_vio_dstr_chain * next);
-
-#endif
-
-//ll
Index: include/libroar/vio_rtp.h
===================================================================
--- include/libroar/vio_rtp.h	(revision 6052)
+++ 	(revision )
@@ -1,130 +1,0 @@
-//vio_rtp.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_RTP_H_
-#define _LIBROARVIO_RTP_H_
-
-#include "libroar.h"
-
-#define ROAR_RTP_FLAG_PADDING    0x02
-#define ROAR_RTP_FLAG_EXTENSION  0x03
-#define ROAR_RTP_FLAG_MARKER     0x08
-
-/*
-RFC 3551                    RTP A/V Profile                    July 2003
-
-
-               PT   encoding    media type  clock rate   channels
-                    name                    (Hz)
-               ___________________________________________________
-               0    PCMU        A            8,000       1
-               1    reserved    A
-               2    reserved    A
-               3    GSM         A            8,000       1
-               4    G723        A            8,000       1
-               5    DVI4        A            8,000       1
-               6    DVI4        A           16,000       1
-               7    LPC         A            8,000       1
-               8    PCMA        A            8,000       1
-               9    G722        A            8,000       1
-               10   L16         A           44,100       2
-               11   L16         A           44,100       1
-               12   QCELP       A            8,000       1
-               13   CN          A            8,000       1
-               14   MPA         A           90,000       (see text)
-               15   G728        A            8,000       1
-               16   DVI4        A           11,025       1
-               17   DVI4        A           22,050       1
-               18   G729        A            8,000       1
-               19   reserved    A
-               20   unassigned  A
-               21   unassigned  A
-               22   unassigned  A
-               23   unassigned  A
-               dyn  G726-40     A            8,000       1
-               dyn  G726-32     A            8,000       1
-               dyn  G726-24     A            8,000       1
-               dyn  G726-16     A            8,000       1
-               dyn  G729D       A            8,000       1
-               dyn  G729E       A            8,000       1
-               dyn  GSM-EFR     A            8,000       1
-               dyn  L8          A            var.        var.
-               dyn  RED         A                        (see text)
-               dyn  VDVI        A            var.        1
-
-               Table 4: Payload types (PT) for audio encodings
- */
-
-#define ROAR_RTP_PT_A_PCMU         0 /* mu-Law */
-#define ROAR_RTP_PT_A_PCMA         8 /* A-Law  */
-#define ROAR_RTP_PT_A_L16_441_2   10
-#define ROAR_RTP_PT_A_L16_441_1   11
-#define ROAR_RTP_PT_UNKNOWN      127 /* non standard asignment */
-
-struct roar_rtp_header {
- int version;
- int flags;
- int csrc_count;
- int payload_type;
- uint16_t seq_num;
- uint32_t ts;
- uint32_t ssrc;
- uint32_t csrc[16];
-};
-
-struct roar_rtp_inst {
- struct roar_vio_calls * vio;
- struct roar_rtp_header header;
- struct roar_buffer    * io;
- struct roar_audio_info  info;
- size_t                  mtu;
- int                     bpf; // byte per frame
-
- // read speific things
- struct roar_buffer    * rx_decoded; // buffer to hold allready decoded data
-};
-
-int roar_vio_open_rtp        (struct roar_vio_calls * calls, struct roar_vio_calls * dst,
-                              char * dstr, struct roar_vio_defaults * odef);
-
-ssize_t roar_vio_rtp_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_rtp_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_rtp_sync    (struct roar_vio_calls * vio);
-int     roar_vio_rtp_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_rtp_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_select.h
===================================================================
--- include/libroar/vio_select.h	(revision 6052)
+++ 	(revision )
@@ -1,85 +1,0 @@
-//vio_select.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_SELECT_H_
-#define _LIBROARVIO_SELECT_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_SELECT_NONE          0x0000
-#define ROAR_VIO_SELECT_READ          0x0001
-#define ROAR_VIO_SELECT_WRITE         0x0002
-#define ROAR_VIO_SELECT_EXCEPT        0x0004
-#define ROAR_VIO_SELECT_NO_RETEST     0x4000 /* uppermostt bit set */
-
-#define ROAR_VIO_SELECT_ACTION_NONE   0x00
-#define ROAR_VIO_SELECT_ACTION_SELECT 0x01
-#define ROAR_VIO_SELECT_ACTION_POLL   0x02
-#define ROAR_VIO_SELECT_ACTION_VIOS   0x04 /* VIO Select */
-
-#define ROAR_VIO_SELECT_SETVIO(d,v,q) ((d)->vio = (v)); ((d)->fh = -1); ((d)->eventsq = (q))
-#define ROAR_VIO_SELECT_SETSYSIO(d,f,q) ((d)->vio = NULL); ((d)->fh = (f)); ((d)->eventsq = (q))
-
-struct roar_vio_select_internal {
- int action;
- int fh[3];
-};
-
-struct roar_vio_select {
- struct roar_vio_calls * vio;
- int fh;
- int eventsq;
- int eventsa;
- union {
-  int    si;
-  void * vp;
- } ud;
- struct roar_vio_select_internal internal;
-};
-
-struct roar_vio_selectctl {
- int strategy;
-};
-
-struct roar_vio_selecttv {
- int64_t sec;
- int32_t nsec;
-};
-
-ssize_t roar_vio_select(struct roar_vio_select * vios, size_t len, struct roar_vio_selecttv * rtv, struct roar_vio_selectctl * ctl);
-
-#endif
-
-//ll
Index: include/libroar/vio_socket.h
===================================================================
--- include/libroar/vio_socket.h	(revision 6052)
+++ 	(revision )
@@ -1,69 +1,0 @@
-//vio_socket.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_SOCKET_H_
-#define _LIBROARVIO_SOCKET_H_
-
-#include "libroar.h"
-
-struct roar_vio_defaults;
-
-int     roar_vio_open_def_socket          (struct roar_vio_calls * calls, struct roar_vio_defaults * def, char * opts);
-
-int     roar_vio_socket_init_socket_def   (struct roar_vio_defaults * def, int domain, int type);
-
-int     roar_vio_socket_init_dstr_def     (struct roar_vio_defaults * def, char * dstr, int hint, int type, struct roar_vio_defaults * odef);
-
-int     roar_vio_socket_conv_def          (struct roar_vio_defaults * def, int domain);
-
-int     roar_vio_socket_get_port          (char * service, int domain, int type);
-
-int     roar_vio_socket_init_unix_def     (struct roar_vio_defaults * def, const char * path);
-
-int     roar_vio_socket_init_decnetnode_def(struct roar_vio_defaults * def);
-int     roar_vio_socket_init_decnet_def   (struct roar_vio_defaults * def, const char * node, int object, char * objname);
-
-int     roar_vio_socket_init_inet4host_def(struct roar_vio_defaults * def);
-int     roar_vio_socket_init_inet4_def    (struct roar_vio_defaults * def, const char * host, int port, int type);
-int     roar_vio_socket_init_tcp4_def     (struct roar_vio_defaults * def, const char * host, int port);
-int     roar_vio_socket_init_udp4_def     (struct roar_vio_defaults * def, const char * host, int port);
-int     roar_vio_socket_init_inet6host_def(struct roar_vio_defaults * def);
-int     roar_vio_socket_init_inet6_def    (struct roar_vio_defaults * def, const char * host, int port, int type);
-int     roar_vio_socket_init_tcp6_def     (struct roar_vio_defaults * def, const char * host, int port);
-int     roar_vio_socket_init_udp6_def     (struct roar_vio_defaults * def, const char * host, int port);
-
-#endif
-
-//ll
Index: include/libroar/vio_stack.h
===================================================================
--- include/libroar/vio_stack.h	(revision 6052)
+++ 	(revision )
@@ -1,66 +1,0 @@
-//vio_stack.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_STACK_H_
-#define _LIBROARVIO_STACK_H_
-
-#include "libroar.h"
-
-#define ROAR_VIO_STACK_MAX 32
-
-struct roar_vio_stack {
- int next;
-
- void (*free)(void*);
-
- struct roar_vio_calls * cur;
-
- struct roar_vio_calls * calls[ROAR_VIO_STACK_MAX];
-};
-
-int     roar_vio_open_stack    (struct roar_vio_calls * calls);
-int     roar_vio_open_stack2   (struct roar_vio_calls * calls, void (*func)(void*));
-int     roar_vio_stack_add     (struct roar_vio_calls * calls, struct roar_vio_calls * vio);
-
-ssize_t roar_vio_stack_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_stack_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_stack_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_stack_sync    (struct roar_vio_calls * vio);
-int     roar_vio_stack_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_stack_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_stdio.h
===================================================================
--- include/libroar/vio_stdio.h	(revision 6052)
+++ 	(revision )
@@ -1,68 +1,0 @@
-//vio_stdio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_STDIO_H_
-#define _LIBROARVIO_STDIO_H_
-
-#include "libroar.h"
-
-int     roar_vio_open_stdio    (struct roar_vio_calls * calls, FILE * dst);
-
-FILE *  roar_vio_to_stdio      (struct roar_vio_calls * calls, int flags);
-#if defined(ROAR_HAVE_FOPENCOOKIE) || defined(ROAR_HAVE_FUNOPEN)
-int roar_vio_to_stdio_close (void *__cookie);
-#endif
-#if defined(ROAR_HAVE_FOPENCOOKIE)
-ssize_t roar_vio_to_stdio_read (void *__cookie, char *__buf, size_t __nbytes);
-ssize_t roar_vio_to_stdio_write (void *__cookie, __const char *__buf, size_t __n);
-int roar_vio_to_stdio_lseek (void *__cookie, _IO_off64_t *__pos, int __w);
-#elif defined(ROAR_HAVE_FUNOPEN)
-int roar_vio_to_stdio_read(void *__cookie, char *__buf, int __nbytes);
-int roar_vio_to_stdio_write(void *__cookie, const char *__buf, int __n);
-fpos_t roar_vio_to_stdio_lseek(void *__cookie, fpos_t __pos, int __w);
-#endif
-
-
-// stdio
-ssize_t roar_vio_stdio_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_stdio_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-roar_off_t   roar_vio_stdio_lseek   (struct roar_vio_calls * vio, roar_off_t offset, int whence);
-int     roar_vio_stdio_sync    (struct roar_vio_calls * vio);
-int     roar_vio_stdio_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_stdio_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroar/vio_stdvios.h
===================================================================
--- include/libroar/vio_stdvios.h	(revision 6052)
+++ 	(revision )
@@ -1,54 +1,0 @@
-//vio_stdvios.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_STDVIOS_H_
-#define _LIBROARVIO_STDVIOS_H_
-
-#include "libroar.h"
-
-#ifndef ROAR_TARGET_WIN32
-extern struct roar_vio_calls * roar_stdin;
-extern struct roar_vio_calls * roar_stdout;
-extern struct roar_vio_calls * roar_stderr;
-#else
-struct roar_vio_calls ** libroar_stdvio_win32workaround(int fh);
-#define roar_stdin  (*libroar_stdvio_win32workaround(0))
-#define roar_stdout (*libroar_stdvio_win32workaround(1))
-#define roar_stderr (*libroar_stdvio_win32workaround(2))
-#endif
-
-#endif
-
-//ll
Index: include/libroar/vio_string.h
===================================================================
--- include/libroar/vio_string.h	(revision 6052)
+++ 	(revision )
@@ -1,52 +1,0 @@
-//vio_string.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_STRING_H_
-#define _LIBROARVIO_STRING_H_
-
-#include "libroar.h"
-
-// some alias functions:
-#define roar_vio_puts(vio,s) roar_vio_write((vio), (s), roar_mm_strlen((s)))
-//#define roar_vio_putc(vio,c) roar_vio_write((vio), &(c), 1)
-int     roar_vio_putc    (struct roar_vio_calls * vio, char c) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-int     roar_vio_getc    (struct roar_vio_calls * vio) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-char *  roar_vio_fgets   (struct roar_vio_calls * vio, char * s, size_t size) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL_ALL;
-
-int     roar_vio_printf  (struct roar_vio_calls * vio, const char *format, ...) _LIBROAR_ATTR_NONNULL(1, 2) _LIBROAR_ATTR_PRINTF(2, 3);
-
-#endif
-
-//ll
Index: include/libroar/vio_tantalos.h
===================================================================
--- include/libroar/vio_tantalos.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//vio_tantalos.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARTANTALOS_H_
-#define _LIBROARTANTALOS_H_
-
-#include "libroar.h"
-
-#define ROAR_SLP_URL_TYPE_DOWNLOAD_HTTP     "service:download.fellig:http"
-#define ROAR_SLP_URL_TYPE_DOWNLOAD_HTTP_LEN 28
-
-int     roar_vio_open_tantalos    (struct roar_vio_calls * calls, struct roar_vio_calls * dst,
-                                   char * key, struct roar_vio_defaults * odef);
-
-#endif
-
-//ll
Index: include/libroar/vio_winsock.h
===================================================================
--- include/libroar/vio_winsock.h	(revision 6052)
+++ 	(revision )
@@ -1,51 +1,0 @@
-//vio_winsock.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_WINSOCK_H_
-#define _LIBROARVIO_WINSOCK_H_
-
-#include "libroar.h"
-
-#ifdef ROAR_TARGET_WIN32
-ssize_t roar_vio_winsock_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_winsock_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_winsock_sync    (struct roar_vio_calls * vio);
-int     roar_vio_winsock_ctl     (struct roar_vio_calls * vio, roar_vio_ctl_t cmd, void * data);
-int     roar_vio_winsock_close   (struct roar_vio_calls * vio);
-#endif
-
-#endif
-
-//ll
Index: include/libroar/vio_zlib.h
===================================================================
--- include/libroar/vio_zlib.h	(revision 6052)
+++ 	(revision )
@@ -1,45 +1,0 @@
-//vio_gzip.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVIO_GZIP_H_
-#define _LIBROARVIO_GZIP_H_
-
-#include "libroar.h"
-
-int roar_vio_open_zlib(struct roar_vio_calls * calls, struct roar_vio_calls * dst, int level, int gzip);
-
-#endif
-
-//ll
Index: include/libroar/vs.h
===================================================================
--- include/libroar/vs.h	(revision 6052)
+++ 	(revision )
@@ -1,352 +1,0 @@
-//vs.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illegal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARVS_H_
-#define _LIBROARVS_H_
-
-#include "libroar.h"
-
-#define _LIBROAR_VS_STDATTRS _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1)
-
-struct roar_vs;
-
-typedef struct roar_vs roar_vs_t;
-typedef signed long int roar_mus_t;
-
-/* return readable string describing the problem */
-const char * roar_vs_strerr(int error) _LIBROAR_ATTR_PURE _LIBROAR_ATTR_USE_RESULT;
-
-/* create a new VS object from normal RoarAudio connection object
- * The connection must not be closed caller before roar_vs_close() is called.
- * The connection is not closed by roar_vs_close().
- */
-roar_vs_t * roar_vs_new_from_con(struct roar_connection * con, int * error) _LIBROAR_VS_STDATTRS;
-
-/* create a new VS object with a new connection */
-roar_vs_t * roar_vs_new(const char * server, const char * name, int * error) _LIBROAR_ATTR_USE_RESULT;
-
-/* start a the stream in the VS object */
-int roar_vs_stream(roar_vs_t * vss, const struct roar_audio_info * info, int dir, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* connect to server and start stream in once
- * this is basically roar_vs_new() and roar_vs_stream() in one function.
- */
-roar_vs_t * roar_vs_new_simple(const char * server, const char * name, int rate, int channels, int codec, int bits, int dir, int * error) _LIBROAR_ATTR_USE_RESULT;
-
-/* create a VS object for playback.
- * This is roar_vs_new_simple() with direction set to 'playback' (wave form data)
- */
-#define roar_vs_new_playback(s,n,r,c,e,b,error) roar_vs_new_simple((s), (n), (r), (c), (e), (b), ROAR_DIR_PLAY, (error))
-
-
-/* Attach a open file.
- */
-
-int roar_vs_file(roar_vs_t * vss, struct roar_vio_calls * vio, int closefile, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* Open a file and attach it.
- */
-int roar_vs_file_simple(roar_vs_t * vss, const char * filename, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* Connects to a server to just play a file.
- */
-roar_vs_t * roar_vs_new_from_file(const char * server, const char * name, const char * filename, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(3);
-
-/* Switch to buffered mode.
- * After swiching to buffered mode you can use the buffered
- * mode functions. You must use roar_vs_iterate() to send data
- * from local buffer to server.
- * This is currently not thread safe but you may implement it in
- * diffrent thread if you do the locking yourself.
- * Takes the size for the used buffers as argument.
- * Buffer size should be a value of 2^n. Typical values are 2048 and 4096.
- */
-int roar_vs_buffer(roar_vs_t * vss, size_t buffer, int * error) _LIBROAR_VS_STDATTRS;
-
-
-/* Boolean TRUE for VS functions */
-#define ROAR_VS_TRUE     1
-/* Boolean FALSE for VS functions */
-#define ROAR_VS_FALSE    0
-/* Boolean TOGGLE for VS functions */
-#define ROAR_VS_TOGGLE  -1
-/* Boolean value used to ask for a value, do not change the value only ask for current value */
-#define ROAR_VS_ASK     -2
-
-/* close and free the VS object
- * This does all needed cleanup.
- * If server connection was made by VS it is closed, too.
- * If server connection was provided by caller it is untouched.
- */
-int roar_vs_close(roar_vs_t * vss, int killit, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* write data to a stream
- * This function writes some data to the stream.
- * return is number of bytes written or -1 on error.
- * return value can be zero to indicate no data can be written but no error.
- * this may be the case with non-blocking streams.
- * returned value can be less then requested value. indicates a short write.
- * you should wait some (short!) time (for example one main loop iteration) and try again.
- */
-ssize_t roar_vs_write(roar_vs_t * vss, const void * buf, size_t len, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* read data from a stream
- * This function reads some data from the stream.
- * return is number of bytes read or -1 on error.
- * return value can be zero to indicate no data can be read but no error.
- * this may be the case with non-blocking streams.
- * returned value can be less then requested value. indicates a short read.
- * you should wait some (short!) time (for example one main loop iteration) and try again.
- */
-ssize_t roar_vs_read (roar_vs_t * vss,       void * buf, size_t len, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* wait value for waiting */
-#define ROAR_VS_WAIT    1
-/* wait value for no waiting */
-#define ROAR_VS_NOWAIT  0
-/* Trigger action but do not wait for it to complet */
-#define ROAR_VS_ASYNC  -1
-
-/* sync a stream with the server (flush buffers)
- * Returns 0 on no error and -1 on error.
- */
-int     roar_vs_sync (roar_vs_t * vss, int wait, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* set blocking mode of stream
- * returns old blocking state
- */
-int     roar_vs_blocking (roar_vs_t * vss, int val, int * error) _LIBROAR_VS_STDATTRS;
-
-/* do not supply backend offset */
-#define ROAR_VS_BACKEND_NONE    -1
-/* use first found primary stream of same mixer as offset source */
-#define ROAR_VS_BACKEND_FIRST   -2
-/* use mean of primary streams of same mixer as offset source */
-#define ROAR_VS_BACKEND_MEAN    -3
-/* default backend, now handled at runtime, old value was hard coded to _FIRST */
-#define ROAR_VS_BACKEND_DEFAULT -4
-
-/* get server's position of stream
- * returns server's position of the stream or -1 on error.
- * The returned server position is the position in samples
- * plus a offset provided by the selected backend
- */
-ssize_t roar_vs_position(roar_vs_t * vss, int backend, int * error) _LIBROAR_VS_STDATTRS;
-
-/* get latency between playback and local write counter
- * This function may fail because the used codec uses
- * non-fixed bitrate.
- * if this function fails it returns zero and sets error or
- * clear error to ROAR_ERROR_NONE.
- * If non-zero is returned error is untouched.
- * return value is in mu-sec (units of 10^-6s).
- * Note that the returned value may be negative (the server being
- * ahead of us). This is normal in case we read a stream.
- */
-roar_mus_t roar_vs_latency(roar_vs_t * vss, int backend, int wait, int * error) _LIBROAR_VS_STDATTRS;
-
-/* set pause flag
- * The pause flag should be set whenever the user presses the pause button or similar.
- * The stream may be come blocking after the pause flag has been set.
- * returns old pause setting (useful with ROAR_VS_TOGGLE)
- */
-int     roar_vs_pause(roar_vs_t * vss, int val, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* set the mute flag of the stream
- * The pause flag should be set whenever the user mutes the stream in some way.
- * This flag is used so the volume is not changed and can be restored by the server
- * while unmuting.
- * It is very recommended to use this flag and not just set the volume to zero
- * returns old mute setting (useful with ROAR_VS_TOGGLE)
- */
-int     roar_vs_mute (roar_vs_t * vss, int val, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* set volume of stream (all channels to the same value)
- * volume c is float from 0 ('muted', see above) to 1 (full volume).
- * Returns 0 on no error and -1 on error.
- */
-int     roar_vs_volume_mono   (roar_vs_t * vss, float c, int * error) _LIBROAR_ATTR_NONNULL(1);
-/* set volume of stream (like volume + balance, stereo mode)
- * volume l and r are floats from 0 ('muted', see above) to 1 (full volume).
- * Returns 0 on no error and -1 on error.
- */
-int     roar_vs_volume_stereo (roar_vs_t * vss, float l, float r, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* get volume from stream (like volume + balance, stereo mode)
- * volume pointers l and r are floats from 0 ('muted', see above) to 1 (full volume).
- * Returns 0 on no error and -1 on error.
- * NOTE: if you want a 'mono' volume (like roar_vs_volume_mono() takes)
- * you can just use: c = (*l + *r)/2
- */
-int     roar_vs_volume_get    (roar_vs_t * vss, float * l, float * r, int * error) _LIBROAR_ATTR_USE_RESULT _LIBROAR_ATTR_NONNULL(1, 2, 3);
-
-/* set an array of meta data for the stream
- * This sets an array of meta data stored in kv of length len for
- * the stream.
- * This should be called before streaming is started using read or write functions
- * but may be called at any time (for example to updata meta data).
- * Returns 0 on no error and -1 on error.
- * Example:
- * struct roar_keyval kv = {.key = "TITLE", .value = "Some title"};
- * ret = roar_vs_meta(vss, &kv, 1, &err);
- */
-int     roar_vs_meta          (roar_vs_t * vss, struct roar_keyval * kv, size_t len, int * error) _LIBROAR_ATTR_NONNULL(1, 2);
-
-/* sets the stream role
- * see ../roaraudio/stream.h for possible roles
- * Returns 0 on no error and -1 on error.
- */
-int     roar_vs_role          (roar_vs_t * vss, int role, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* Run a single iteration.
- * This will try to read data from source, write it to the stream
- * and flush the buffer in buffered mode.
- * Returns -1 on error, 0 on EOF and positive true value on no error.
- */
-int     roar_vs_iterate       (roar_vs_t * vss, int wait, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-/* Iterate until EOF or error.
- * Very simple main loop.
- * Returns 0 on no error and -1 on error.
- */
-int     roar_vs_run           (roar_vs_t * vss, int * error) _LIBROAR_ATTR_NONNULL(1);
-
-ssize_t roar_vs_get_avail_read(roar_vs_t * vss, int * error) _LIBROAR_VS_STDATTRS;
-ssize_t roar_vs_get_avail_write(roar_vs_t * vss, int * error) _LIBROAR_VS_STDATTRS;
-
-/* If in buffered mode drop all data from internal buffer.
- * This drops all data in current ringbuffers. You can
- * select if data is only droped in write or read buffer.
- * This may be usefull in case of seeking and such
- * but should be avoided as it may break the bitstream.
- */
-int     roar_vs_reset_buffer(roar_vs_t * vss, int writering, int readring, int * error) _LIBROAR_VS_STDATTRS _LIBROAR_ATTR_DEPRECATED;
-
-/* Misc controls.
- * Use of this should be avoided by application.
- */
-
-enum roar_vs_ctlcmd {
- ROAR_VS_CMD_NOOP      = 0,
-#define ROAR_VS_CMD_NOOP ROAR_VS_CMD_NOOP
- ROAR_VS_CMD_SET_MIXER,
-#define ROAR_VS_CMD_SET_MIXER ROAR_VS_CMD_SET_MIXER
- ROAR_VS_CMD_GET_MIXER,
-#define ROAR_VS_CMD_GET_MIXER ROAR_VS_CMD_GET_MIXER
- ROAR_VS_CMD_SET_FIRST_PRIM,
-#define ROAR_VS_CMD_SET_FIRST_PRIM ROAR_VS_CMD_SET_FIRST_PRIM
- ROAR_VS_CMD_GET_FIRST_PRIM,
-#define ROAR_VS_CMD_GET_FIRST_PRIM ROAR_VS_CMD_GET_FIRST_PRIM
-
- // Latency control:
- ROAR_VS_CMD_SET_LATC_P,
-#define ROAR_VS_CMD_SET_LATC_P ROAR_VS_CMD_SET_LATC_P
- ROAR_VS_CMD_GET_LATC_P,
-#define ROAR_VS_CMD_GET_LATC_P ROAR_VS_CMD_GET_LATC_P
- ROAR_VS_CMD_SET_LATC_TARGET,
-#define ROAR_VS_CMD_SET_LATC_TARGET ROAR_VS_CMD_SET_LATC_TARGET
- ROAR_VS_CMD_GET_LATC_TARGET,
-#define ROAR_VS_CMD_GET_LATC_TARGET ROAR_VS_CMD_GET_LATC_TARGET
- ROAR_VS_CMD_SET_LATC_WINDOW,
-#define ROAR_VS_CMD_SET_LATC_WINDOW ROAR_VS_CMD_SET_LATC_WINDOW
- ROAR_VS_CMD_GET_LATC_WINDOW,
-#define ROAR_VS_CMD_GET_LATC_WINDOW ROAR_VS_CMD_GET_LATC_WINDOW
- ROAR_VS_CMD_SET_LATC_MINLAG,
-#define ROAR_VS_CMD_SET_LATC_MINLAG ROAR_VS_CMD_SET_LATC_MINLAG
- ROAR_VS_CMD_GET_LATC_MINLAG,
-#define ROAR_VS_CMD_GET_LATC_MINLAG ROAR_VS_CMD_GET_LATC_MINLAG
-
- // Volume:
- ROAR_VS_CMD_SET_FREE_VOLUME,
-#define ROAR_VS_CMD_SET_FREE_VOLUME ROAR_VS_CMD_SET_FREE_VOLUME
- ROAR_VS_CMD_GET_FREE_VOLUME,
-#define ROAR_VS_CMD_GET_FREE_VOLUME ROAR_VS_CMD_GET_FREE_VOLUME
-
- // auto pause flag, needed for sync streams:
- ROAR_VS_CMD_SET_DEFAULT_PAUSED,
-#define ROAR_VS_CMD_SET_DEFAULT_PAUSED ROAR_VS_CMD_SET_DEFAULT_PAUSED
- ROAR_VS_CMD_GET_DEFAULT_PAUSED,
-#define ROAR_VS_CMD_GET_DEFAULT_PAUSED ROAR_VS_CMD_GET_DEFAULT_PAUSED
-
- // Async operation:
- ROAR_VS_CMD_SET_ASYNC,
-#define ROAR_VS_CMD_SET_ASYNC ROAR_VS_CMD_SET_ASYNC
- ROAR_VS_CMD_GET_ASYNC,
-#define ROAR_VS_CMD_GET_ASYNC ROAR_VS_CMD_GET_ASYNC
- ROAR_VS_CMD_LOCK_ASYNC,
-#define ROAR_VS_CMD_LOCK_ASYNC ROAR_VS_CMD_LOCK_ASYNC
- ROAR_VS_CMD_UNLOCK_ASYNC,
-#define ROAR_VS_CMD_UNLOCK_ASYNC ROAR_VS_CMD_UNLOCK_ASYNC
-};
-
-typedef enum roar_vs_ctlcmd roar_vs_ctlcmd;
-
-#define ROAR_VS_ASYNCLEVEL_NONE   0
-#define ROAR_VS_ASYNCLEVEL_ENABLE 1
-#define ROAR_VS_ASYNCLEVEL_AUTO   2
-
-int     roar_vs_ctl           (roar_vs_t * vss, roar_vs_ctlcmd cmd, void * argp, int * error) _LIBROAR_VS_STDATTRS;
-
-
-/* Get used connection object
- * This may be useful if you want to use functions from the main API.
- * Returns used connection object or NULL on error.
- */
-struct roar_connection * roar_vs_connection_obj(roar_vs_t * vss, int * error) _LIBROAR_VS_STDATTRS;
-
-/* Get used stream object
- * This may be useful if you want to use functions from the main API.
- * Returns used stream object or NULL on error.
- */
-struct roar_stream     * roar_vs_stream_obj    (roar_vs_t * vss, int * error) _LIBROAR_VS_STDATTRS;
-
-/* Get used VIO object
- * This may be useful if you want to use functions from the main API.
- * For example this can be used in non-blocking mode
- * to test if we can read or write. To test that use roar_vio_select().
- * Returns used VIO object or NULL on error.
- */
-struct roar_vio_calls  * roar_vs_vio_obj       (roar_vs_t * vss, int * error) _LIBROAR_VS_STDATTRS;
-
-/* send NOOP command to server
- * This can be used to ping the server.
- * This is of no use normally.
- * Returns 0 on no error and -1 on error.
- */
-#define roar_vs_noop(v, error) roar_noop(roar_vs_connection_obj((v), (error)))
-
-#endif
-
-//ll
Index: include/libroar/watchdog.h
===================================================================
--- include/libroar/watchdog.h	(revision 6052)
+++ 	(revision )
@@ -1,79 +1,0 @@
-//watchdog.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2012-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARWATCHDOG_H_
-#define _LIBROARWATCHDOG_H_
-
-#include "libroar.h"
-
-enum roar_watchdog_event {
- ROAR_WATCHDOG_START = 0,
- ROAR_WATCHDOG_STOP,
- ROAR_WATCHDOG_TRIGGER,
- ROAR_WATCHDOG_TICK,
- ROAR_WATCHDOG_TIMEOUT,
- ROAR_WATCHDOG_DOUBLETIMEOUT,
-};
-
-#define ROAR_WATCHDOG_CONF_DEFAULTS          -1
-#define ROAR_WATCHDOG_CONF_RESTART           -2
-#define ROAR_WATCHDOG_CONF_STOPPABLE         0x0001
-#define ROAR_WATCHDOG_CONF_CLOCK_INTERNAL    0x0000
-#define ROAR_WATCHDOG_CONF_CLOCK_EXTERNAL    0x0010
-#define ROAR_WATCHDOG_CONF_CLOCK_ROUND_DOWN  0x0000
-#define ROAR_WATCHDOG_CONF_CLOCK_ROUND_UP    0x0020
-#define ROAR_WATCHDOG_CONF_EVENTS_ONLY_MAJOR 0x0000
-#define ROAR_WATCHDOG_CONF_EVENTS_ALSO_MINOR 0x0100
-
-// start the watchdog.
-// timeout is in ms.
-int roar_watchdog_start(int config, int_least32_t timeout, int (*callback)(enum roar_watchdog_event event));
-
-// Get timeout for watchdog.
-// This may be diffrent from the requested time.
-int_least32_t roar_watchdog_gettime(void);
-
-// stop it, if stopping is enabled.
-int roar_watchdog_stop(void);
-
-// Trigger the watchdog to show that we are still alive.
-int roar_watchdog_trigger(void);
-
-// Trigger the watchdog clock. This is only used if configured to run with external clock source.
-int roar_watchdog_tick(void);
-
-#endif
-
-//ll
Index: include/libroardsp/amp.h
===================================================================
--- include/libroardsp/amp.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//amp.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_AMP_H_
-#define _LIBROARDSP_AMP_H_
-
-#include "libroardsp.h"
-
-int roar_amp_pcm       (void * output, int bits, void * input, size_t samples, int channels, struct roar_mixer_settings * set);
-int roar_amp_pcm_8bit  (int8_t  * output, int8_t  * input, size_t samples, int channels, struct roar_mixer_settings * set);
-int roar_amp_pcm_16bit (int16_t * output, int16_t * input, size_t samples, int channels, struct roar_mixer_settings * set);
-int roar_amp_pcm_32bit (int32_t * output, int32_t * input, size_t samples, int channels, struct roar_mixer_settings * set);
-
-
-#endif
-
-//ll
Index: include/libroardsp/channels.h
===================================================================
--- include/libroardsp/channels.h	(revision 6052)
+++ 	(revision )
@@ -1,150 +1,0 @@
-//channels.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_CHANNELS_H_
-#define _LIBROARDSP_CHANNELS_H_
-
-#include "libroardsp.h"
-
-/* Channel map:
- * Standard marix:
- *
- *       # Left       | Center       | Right       #
- * ======#============#==============#=============#
- * Front # FRONT_LEFT | FRONT_CENTER | FRONT_RIGHT #
- *       # LEFT       | CENTER/MONO  | RIGHT       #
- * ------#------------+--------------+-------------#
- * Side  # SIDE_LEFT  | SIDE_CENTER$ | SIDE_RIGH   #
- * ------#------------+--------------+-------------#
- * Back  # BACK_LEFT  | BACK_CENTER  | BACK_RIGHT  #
- * ======#============#==============#=============#
- * $ = Side Center has null-vector possion and because of this
- *     arg(Pos) is undefined. This means that the channel does
- *     not have a defined phase and therefor can not exist.
- *     we include it just to have the matrix complet.
- * 
- *
- * Low Frequency Effects:
- *
- *  LFE is location independ.
- *
- *
- * Mid-Side (MS):
- *
- * Mid   = Left + Right
- * Side  = Left - Right
- * Left  = (Mid + Side) / 2
- * Right = (Mid - Side) / 2
- *
- */
-
-#define ROARDSP_CHAN_EOL                 -1
-#define ROARDSP_CHAN_NONE                 0
-#define ROARDSP_CHAN_FRONT_LEFT           1
-#define ROARDSP_CHAN_FRONT_RIGHT          2
-#define ROARDSP_CHAN_SIDE_LEFT            3
-#define ROARDSP_CHAN_SIDE_RIGHT           4
-#define ROARDSP_CHAN_BACK_LEFT            5
-#define ROARDSP_CHAN_BACK_RIGHT           6
-#define ROARDSP_CHAN_FRONT_CENTER         7
-#define ROARDSP_CHAN_SIDE_CENTER          8
-#define ROARDSP_CHAN_BACK_CENTER          9
-
-#define ROARDSP_CHAN_LEFT                 ROARDSP_CHAN_FRONT_LEFT
-#define ROARDSP_CHAN_RIGHT                ROARDSP_CHAN_FRONT_RIGHT
-#define ROARDSP_CHAN_CENTER               ROARDSP_CHAN_FRONT_CENTER
-#define ROARDSP_CHAN_MONO                 ROARDSP_CHAN_CENTER
-
-#define ROARDSP_CHAN_MS_MID               10
-#define ROARDSP_CHAN_MS_SIDE              11
-
-#define ROARDSP_CHAN_LFE                  12
-
-// MIDI Channels:
-#define ROARDSP_CHAN_MIDI0                64
-#define ROARDSP_CHAN_MIDI1                65
-#define ROARDSP_CHAN_MIDI2                66
-#define ROARDSP_CHAN_MIDI3                67
-#define ROARDSP_CHAN_MIDI4                68
-#define ROARDSP_CHAN_MIDI5                69
-#define ROARDSP_CHAN_MIDI6                70
-#define ROARDSP_CHAN_MIDI7                71
-#define ROARDSP_CHAN_MIDI8                72
-#define ROARDSP_CHAN_MIDI9                73
-#define ROARDSP_CHAN_MIDI10               74
-#define ROARDSP_CHAN_MIDI11               75
-#define ROARDSP_CHAN_MIDI12               76
-#define ROARDSP_CHAN_MIDI13               77
-#define ROARDSP_CHAN_MIDI14               78
-#define ROARDSP_CHAN_MIDI15               79
-
-#define ROARDSP_CHANLIST_MAP_ROARAUDIO    0
-#define ROARDSP_CHANLIST_MAP_VORBIS       1
-#define ROARDSP_CHANLIST_MAP_FLAC         2
-#define ROARDSP_CHANLIST_MAP_RIFF_WAVE    3
-#define ROARDSP_CHANLIST_MAP_OSS          4
-#define ROARDSP_CHANLIST_MAP_ALSA         5
-#define ROARDSP_CHANLIST_MAP_ESD          6
-#define ROARDSP_CHANLIST_MAP_MIDI         7
-
-#define ROARDSP_CHANMAP_IN                0
-#define ROARDSP_CHANMAP_OUT               1
-#define ROARDSP_CHANMAP_MAP               2
-#define ROARDSP_CHANMAP_INVMAP            3
-
-struct roardsp_chanmap {
- char in [ROAR_MAX_CHANNELS];
- char out[ROAR_MAX_CHANNELS];
- char map[ROAR_MAX_CHANNELS];
-};
-
-char * roardsp_chan2str (int chan);
-int    roardsp_str2chan(char * str);
-
-int    roardsp_chanlist2str(char * list, size_t len, char * str, size_t strlen);
-
-int    roardsp_chanlist_init(char * list, int channels, int map);
-
-int roardsp_chanmap_calc(struct roardsp_chanmap * map, int what, int err_on_none);
-
-int roardsp_chanmap_mappcm8 (char    * out, char    * in, size_t len, size_t chans, struct roardsp_chanmap * map);
-int roardsp_chanmap_mappcm16(int16_t * out, int16_t * in, size_t len, size_t chans, struct roardsp_chanmap * map);
-int roardsp_chanmap_mappcm24(void    * out, void    * in, size_t len, size_t chans, struct roardsp_chanmap * map);
-int roardsp_chanmap_mappcm32(int32_t * out, int32_t * in, size_t len, size_t chans, struct roardsp_chanmap * map);
-int roardsp_chanmap_mappcm  (void    * out, void    * in, size_t len, size_t chans, struct roardsp_chanmap * map, int bits);
-
-#endif
-
-//ll
Index: include/libroardsp/codecs.h
===================================================================
--- include/libroardsp/codecs.h	(revision 6052)
+++ 	(revision )
@@ -1,52 +1,0 @@
-//codecs.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_CODECS_H_
-#define _LIBROARDSP_CODECS_H_
-
-#include "libroardsp.h"
-
-int roardsp_conv_alaw2pcm16 (int16_t * out, char * in, size_t len);
-int roardsp_conv_pcm162alaw (char * out, int16_t * in, size_t len);
-
-int roardsp_conv_autlaw2pcm32 (int32_t * out, int16_t * in, size_t len);
-int roardsp_conv_pcm322autlaw (int16_t * out, int32_t * in, size_t len);
-
-int roardsp_conv_mulaw2pcm16 (int16_t * out, char * in, size_t len);
-int roardsp_conv_pcm162mulaw (char * out, int16_t * in, size_t len);
-
-#endif
-
-//ll
Index: include/libroardsp/convert.h
===================================================================
--- include/libroardsp/convert.h	(revision 6052)
+++ include/libroardsp/convert.h	(revision 0)
@@ -1,124 +1,28 @@
 //convert.h:
 
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
+#ifndef _CONVERT_H_
+#define _CONVERT_H_
 
-#ifndef _LIBROARDSP_CONVERT_H_
-#define _LIBROARDSP_CONVERT_H_
-
-#include "libroardsp.h"
+#include "libroar.h"
 
 int roar_conv_bits       (void * out, void * in, int samples, int from, int to);
 
-                                                                 // implemnted?
-int roar_conv_bits_8to16  (void * out, void * in, int samples);  // yes
-int roar_conv_bits_8to24  (void * out, void * in, int samples);
-int roar_conv_bits_8to32  (void * out, void * in, int samples);  // yes
-int roar_conv_bits_16to8  (void * out, void * in, int samples);  // yes
-int roar_conv_bits_16to24 (void * out, void * in, int samples);
-int roar_conv_bits_16to32 (void * out, void * in, int samples);  // yes
-int roar_conv_bits_24to8  (void * out, void * in, int samples);
-int roar_conv_bits_24to16 (void * out, void * in, int samples);
-int roar_conv_bits_24to32 (void * out, void * in, int samples);  // yes
-int roar_conv_bits_32to8  (void * out, void * in, int samples);  // yes
-int roar_conv_bits_32to16 (void * out, void * in, int samples);  // yes
-int roar_conv_bits_32to24 (void * out, void * in, int samples);
+int roar_conv_bits_8to16 (void * out, void * in, int samples);
+int roar_conv_bits_16to8 (void * out, void * in, int samples);
 
 int roar_conv_chans (void * out, void * in, int samples, int from, int to, int bits);
 
-                                                                           // implmented?  working Needed?
-int roar_conv_chans_1ton8  (void * out, void * in, int samples, int to);   // yes          ?       yes
-int roar_conv_chans_1ton16 (void * out, void * in, int samples, int to);   // yes          yes     yes
-int roar_conv_chans_1ton32 (void * out, void * in, int samples, int to);   // yes          ?       yes
-int roar_conv_chans_1to28  (void * out, void * in, int samples);           // yes          yes     no
-int roar_conv_chans_1to216 (void * out, void * in, int samples);           // yes          yes     no
+int roar_conv_chans_1ton8  (void * out, void * in, int samples, int to);
+int roar_conv_chans_1ton16 (void * out, void * in, int samples, int to);
 
-int roar_conv_chans_nto18  (void * out, void * in, int samples, int from); // yes          yes?    yes
-int roar_conv_chans_nto116 (void * out, void * in, int samples, int from); // yes          yes?    yes
-int roar_conv_chans_nto132 (void * out, void * in, int samples, int from); // yes          ?       yes
+int roar_conv_rate    (void * out, void * in, int samples, int from, int to, int bits, int channels);
+int roar_conv_rate_8  (void * out, void * in, int samples, int from, int to, int channels);
+int roar_conv_rate_16 (void * out, void * in, int samples, int from, int to, int channels);
 
-int roar_conv_chans_2to18  (void * out, void * in, int samples);           // yes          yes     no
-int roar_conv_chans_2to116 (void * out, void * in, int samples);           // yes          yes     no
-int roar_conv_chans_2to38  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_2to316 (void * out, void * in, int samples);           // yes          yes     yes
-int roar_conv_chans_2to48  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_2to416 (void * out, void * in, int samples);           // yes          yes     yes
-int roar_conv_chans_2to58  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_2to516 (void * out, void * in, int samples);           // yes          yes     yes
-int roar_conv_chans_2to68  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_2to616 (void * out, void * in, int samples);           // yes          yes     yes
+int raor_conv_codec (void * out, void * in, int samples, int from, int to, int bits);
 
-// FIXME: in this block we need to add a lot funcs more
-int roar_conv_chans_3to28  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_3to216 (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_4to28  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_4to216 (void * out, void * in, int samples);           // yes          ?       yes
-int roar_conv_chans_5to28  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_5to216 (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_6to28  (void * out, void * in, int samples);           // no           ?       yes
-int roar_conv_chans_6to216 (void * out, void * in, int samples);           // no           ?       yes
-
-int roar_conv_rate       (void * out, void * in, int samples, int from, int to, int bits, int channels);
-int roar_conv_rate_8     (void * out, void * in, int samples, int from, int to, int channels);
-int roar_conv_rate_16    (void * out, void * in, int samples, int from, int to, int channels);
-int roar_conv_rate_161zoh(void * out, void * in, int samples, int from, int to);
-int roar_conv_rate_162zoh(void * out, void * in, int samples, int from, int to);
-int roar_conv_rate_16nzoh(void * out, void * in, int samples, int from, int to, int channels);
-int roar_conv_rate_SRC   (void * out, void * in, int samples, int from, int to, int bits, int channels);
-
-int roar_conv_rate2      (void * out, void * in, int outsamples, int samples, int bits, int channels);
-
-int roar_conv_codec (void * out, void * in, int samples, int from, int to, int bits);
-
-int roar_conv_signedness  (void * out, void * in, int samples, int from, int to, int bits);
-int roar_conv_codec_s2u8  (void * out, void * in, int samples);
-int roar_conv_codec_s2u16 (void * out, void * in, int samples);
-int roar_conv_codec_s2u32 (void * out, void * in, int samples);
-int roar_conv_codec_u2s8  (void * out, void * in, int samples);
-int roar_conv_codec_u2s16 (void * out, void * in, int samples);
-int roar_conv_codec_u2s32 (void * out, void * in, int samples);
-
-int roar_conv_endian      (void * out, void * in, int samples, int from, int to, int bits);
-
-                                                                // implemnted?
-int roar_conv_endian_16   (void * out, void * in, int samples); // yes
-int roar_conv_endian_24   (void * out, void * in, int samples); // yes
-int roar_conv_endian_32   (void * out, void * in, int samples); // yes
+int roar_conv_codec_s2u8 (void * out, void * in, int samples);
 
 int roar_conv       (void * out, void * in, int samples, struct roar_audio_info * from, struct roar_audio_info * to);
-int roar_conv2(void * out, void * in, size_t inlen, struct roar_audio_info * from, struct roar_audio_info * to, size_t bufsize);
-
-int roar_conv_poly4_16  (int16_t * out, int16_t * in, size_t olen, size_t ilen);
-int roar_conv_poly4_16s (int16_t * out, int16_t * in, size_t olen, size_t ilen, float step);
 
 #endif
Index: include/libroardsp/dtmf.h
===================================================================
--- include/libroardsp/dtmf.h	(revision 6052)
+++ 	(revision )
@@ -1,60 +1,0 @@
-//dtmf.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2012-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_DTMF_H_
-#define _LIBROARDSP_DTMF_H_
-
-#include "libroardsp.h"
-
-#define ROAR_DTMF_OPTIONS_NONE 0
-
-#define ROAR_DTMF_CHAR_DTMF(x) (((x) & 0x00FF) + 0x0000)
-#define ROAR_DTMF_CHAR_ROAR(x) (((x) & 0x00FF) + 0x0100)
-#define ROAR_DTMF_CHAR_BYTE(x) (((x) & 0x00FF) + 0x0200)
-
-#define ROAR_DTMF_CHAR_BREAK   ((uint16_t)0)
-#define ROAR_DTMF_CHAR_NOOP    ROAR_DTMF_CHAR_ROAR(0)
-#define ROAR_DTMF_CHAR_ESCAPE  ROAR_DTMF_CHAR_ROAR(27)
-
-ssize_t roar_dtmf_mus2samples(const int_least32_t t, const uint32_t rate);
-
-int roar_dtmf_break(int16_t * samples, const size_t len, const uint32_t rate, const int options);
-int roar_dtmf_tone (int16_t * samples, const size_t len, const uint32_t rate, const int options, const uint16_t c);
-
-uint16_t roar_dtmf_freqs2char(const int options, float f0, float f1);
-
-#endif
-
-//ll
Index: include/libroardsp/fader.h
===================================================================
--- include/libroardsp/fader.h	(revision 6052)
+++ 	(revision )
@@ -1,64 +1,0 @@
-//fader.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_FADER_H_
-#define _LIBROARDSP_FADER_H_
-
-#include "libroardsp.h"
-
-#define ROAR_FADER_MAX_COEFF 4
-
-struct roar_fader_state {
- int     rate;
- ssize_t pcmoffset;
- ssize_t start;
- ssize_t stop;
- float   poly[ROAR_FADER_MAX_COEFF];
- int     coeff;
-};
-
-int roar_fader_init         (struct roar_fader_state * state, const float * poly, int coeff);
-int roar_fader_set_rate     (struct roar_fader_state * state, int rate);
-int roar_fader_set_startstop(struct roar_fader_state * state, ssize_t start, ssize_t stop);
-
-int roar_fader_has_started  (struct roar_fader_state * state);
-int roar_fader_has_ended    (struct roar_fader_state * state);
-
-int roar_fader_calcpcm_i16n(struct roar_fader_state * state, int16_t * data, size_t frames, int channels);
-int roar_fader_calcpcm_i161(struct roar_fader_state * state, int16_t * data, size_t frames);
-
-#endif
-
-//ll
Index: include/libroardsp/filter.h
===================================================================
--- include/libroardsp/filter.h	(revision 6052)
+++ 	(revision )
@@ -1,140 +1,0 @@
-//filter.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_FILTER_H_
-#define _LIBROARDSP_FILTER_H_
-
-#include "libroardsp.h"
-
-                                        /* implemented? */
-#define ROARDSP_FILTER_NONE            0
-#define ROARDSP_FILTER_AMP             1 /* yes */
-#define ROARDSP_FILTER_LOWP            2 /* yes */
-#define ROARDSP_FILTER_HIGHP           3 /* yes */
-#define ROARDSP_FILTER_MODULATE        4
-#define ROARDSP_FILTER_QUANTIFY        5 /* yes */
-#define ROARDSP_FILTER_CLIP            6 /* yes */
-#define ROARDSP_FILTER_ADD             7 /* yes */
-#define ROARDSP_FILTER_DOWNMIX         8 /* yes */
-#define ROARDSP_FILTER_DCBLOCK         9
-#define ROARDSP_FILTER_SWAP           10 /* yes */
-#define ROARDSP_FILTER_SPEEX_PREP     11 /* yes */
-#define ROARDSP_FILTER_AGC            12
-#define ROARDSP_FILTER_NOISEGATE      13
-#define ROARDSP_FILTER_RESPONSE_CURVE 14
-#define ROARDSP_FILTER_GOERTZEL       15
-
-// filter CTLs:
-
-#define ROARDSP_FCTL_FREQ             1 /* float   */
-#define ROARDSP_FCTL_TIME             2
-#define ROARDSP_FCTL_MUL              3 /* int32_t */
-#define ROARDSP_FCTL_DIV              4 /* int32_t */
-#define ROARDSP_FCTL_N                5 /* int32_t */
-#define ROARDSP_FCTL_LIMIT            6 /* int32_t */
-#define ROARDSP_FCTL_PHASE            7
-#define ROARDSP_FCTL_Q                8 /* int32_t */
-#define ROARDSP_FCTL_MODE             9 /* int32_t */
-#define ROARDSP_FCTL_PACKET_SIZE     10 /* size_t  */
-
-// consts for filter flags:
-#define ROARDSP_FFLAG_NONE            0x0000
-#define ROARDSP_FFLAG_FREE            0x0001
-
-// consts for filter(chain) reset:
-#define ROARDSP_RESET_NONE            0
-#define ROARDSP_RESET_FULL            1
-#define ROARDSP_RESET_STATE           2
-
-// filter specific constants:
-#define ROARDSP_DOWNMIX_LEFT          1
-#define ROARDSP_DOWNMIX_RIGHT         2
-#define ROARDSP_DOWNMIX_ARITHMETIC    3
-#define ROARDSP_DOWNMIX_RMS           4
-#define ROARDSP_DOWNMIX_ARITHMETIC_INVERSE    5
-
-#define ROARDSP_DCBLOCK_NUMBLOCKS     100
-
-
-#define ROARDSP_SPEEX_PREP_ON          0x0001
-#define ROARDSP_SPEEX_PREP_OFF         0x0002
-#define ROARDSP_SPEEX_PREP_MASK        (ROARDSP_SPEEX_PREP_ON|ROARDSP_SPEEX_PREP_OFF)
-
-// Config Bit Vector
-#define ROARDSP_SPEEX_PREP_CBV(opt,sw) ((sw)<<((opt)*2))
-#define ROARDSP_SPEEX_PREP_CTB(opt,val) (((val) & ROARDSP_SPEEX_PREP_CBV((opt),ROARDSP_SPEEX_PREP_MASK)) >> ((opt)*2))
-
-#define ROARDSP_SPEEX_PREP_DENOISE     0
-#define ROARDSP_SPEEX_PREP_AGC         1
-#define ROARDSP_SPEEX_PREP_VAD         2
-
-#define ROARDSP_SPEEX_PREP_DENOISE_ON  ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_DENOISE, ROARDSP_SPEEX_PREP_ON)
-#define ROARDSP_SPEEX_PREP_DENOISE_OFF ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_DENOISE, ROARDSP_SPEEX_PREP_OFF)
-#define ROARDSP_SPEEX_PREP_AGC_ON      ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_AGC, ROARDSP_SPEEX_PREP_ON)
-#define ROARDSP_SPEEX_PREP_AGC_OFF     ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_AGC, ROARDSP_SPEEX_PREP_OFF)
-#define ROARDSP_SPEEX_PREP_VAD_ON      ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_VAD, ROARDSP_SPEEX_PREP_ON)
-#define ROARDSP_SPEEX_PREP_VAD_OFF     ROARDSP_SPEEX_PREP_CBV(ROARDSP_SPEEX_PREP_VAD, ROARDSP_SPEEX_PREP_OFF)
-
-
-// types:
-
-struct roardsp_filter {
- int    channels;
- int    bits;
- int    rate;
- void * inst;
- uint_least16_t flags;
- int (*calc  )(struct roardsp_filter * filter, void * data, size_t samples);
- int (*uninit)(struct roardsp_filter * filter);
- int (*ctl   )(struct roardsp_filter * filter, int cmd, void * data);
- int (*reset )(struct roardsp_filter * filter, int what);
-};
-
-
-// funcs:
-int          roardsp_filter_str2id(const char * str);
-const char * roardsp_filter_id2str(const int id);
-int    roardsp_filter_new   (struct roardsp_filter ** filter, struct roar_stream * stream, int id);
-#define roardsp_filter_free(x) roardsp_filter_uninit((x))
-int    roardsp_filter_init  (struct roardsp_filter *  filter, struct roar_stream * stream, int id);
-int    roardsp_filter_uninit(struct roardsp_filter *  filter);
-int    roardsp_filter_calc  (struct roardsp_filter *  filter, void * data, size_t len);
-int    roardsp_filter_ctl   (struct roardsp_filter *  filter, int cmd, void * data);
-int    roardsp_filter_reset (struct roardsp_filter *  filter, int what);
-
-
-#endif
-
-//ll
Index: include/libroardsp/filterchain.h
===================================================================
--- include/libroardsp/filterchain.h	(revision 6052)
+++ 	(revision )
@@ -1,59 +1,0 @@
-//filterchain.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_FILTERCHAIN_H_
-#define _LIBROARDSP_FILTERCHAIN_H_
-
-#include "libroardsp.h"
-
-#define ROARDSP_MAX_FILTERS_PER_CHAIN 8
-
-// types:
-struct roardsp_filterchain {
- int filters;
- struct roardsp_filter * filter[ROARDSP_MAX_FILTERS_PER_CHAIN];
-};
-
-// funcs:
-int roardsp_fchain_init  (struct roardsp_filterchain * chain);
-int roardsp_fchain_uninit(struct roardsp_filterchain * chain);
-int roardsp_fchain_add   (struct roardsp_filterchain * chain, struct roardsp_filter * filter);
-int roardsp_fchain_calc  (struct roardsp_filterchain * chain, void * data, size_t len);
-int roardsp_fchain_reset (struct roardsp_filterchain * chain, int what);
-int roardsp_fchain_num   (struct roardsp_filterchain * chain);
-
-#endif
-
-//ll
Index: include/libroardsp/filters.h
===================================================================
--- include/libroardsp/filters.h	(revision 6052)
+++ 	(revision )
@@ -1,212 +1,0 @@
-//filters.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_FILTERS_H_
-#define _LIBROARDSP_FILTERS_H_
-
-#include "libroardsp.h"
-
-#ifdef ROAR_HAVE_LIBM
-struct roardsp_lowp {
- uint32_t freq; // in mHz (0Hz..4MHz)
- uint16_t a, b;
- int32_t  old[ROAR_MAX_CHANNELS];
-};
-
-struct roardsp_highp {
- uint32_t freq; // in mHz (0Hz..4MHz)
- int32_t  a, b, c;
- int32_t  oldout[ROAR_MAX_CHANNELS];
- int32_t  oldin[ROAR_MAX_CHANNELS];
-};
-#endif
-
-struct roardsp_amp {
- int32_t  mul;
- int32_t  div;
-};
-
-struct roardsp_dcblock {
- int cur;
- int32_t dc[ROARDSP_DCBLOCK_NUMBLOCKS];
-};
-
-enum roardsp_clip_mode {
- ROARDSP_CLIP_MODE_LIMIT = 0,
- ROARDSP_CLIP_MODE_ZERO  = 1,
- ROARDSP_CLIP_MODE_WARP  = 2,
- ROARDSP_CLIP_MODE_NOISE = 3
-};
-
-struct roardsp_clip {
- enum roardsp_clip_mode mode;
- int32_t limit;
-};
-
-struct roardsp_swap {
- int map[ROAR_MAX_CHANNELS];
-};
-
-struct roardsp_agc {
- struct roardsp_filter * amp;
- uint32_t target_amp;
-};
-
-struct roardsp_speex_prep {
-#ifdef _SPEEX_TYPES_H
- SpeexPreprocessState *preprocess;
- int frame_size;
-#else
- char dummy[8];
-#endif
-};
-
-enum roardsp_responsecurve_mode {
- ROARDSP_RESPONSECURVE_MODE_PASS = 0, /* pass:           o = i                   */
- ROARDSP_RESPONSECURVE_MODE_LIN  = 1, /* linear:         o = -(1-i)^(N+1) + 1    */
- ROARDSP_RESPONSECURVE_MODE_ILIN = 2, /* inverse linear: o = i**(N+1)            */
- ROARDSP_RESPONSECURVE_MODE_SIN  = 3, /* sin:            o = sin(pi/2 * i)^N     */
- ROARDSP_RESPONSECURVE_MODE_ISIN = 4, /* inverse sin:    o = 1-sin((1-i)*pi/2)^N */
- ROARDSP_RESPONSECURVE_MODE_COS  = 5, /* cos:            o = 0.5-cos(i*pi)/2     */
- ROARDSP_RESPONSECURVE_MODE_ICOS = 6, /* inverse cos:    o = 2*i-0.5+cos(i*pi)/2 */
-};
-
-struct roardsp_responsecurve {
- enum roardsp_responsecurve_mode mode_pos, mode_neg;
- int32_t N;
-};
-
-// filter:
-
-#ifdef ROAR_HAVE_LIBM
-int roardsp_lowp_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_lowp_uninit(struct roardsp_filter * filter);
-int roardsp_lowp_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_lowp_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_lowp_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_lowp_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_lowp_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_highp_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_highp_uninit(struct roardsp_filter * filter);
-int roardsp_highp_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_highp_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_highp_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_highp_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_highp_reset (struct roardsp_filter * filter, int what);
-#endif
-
-int roardsp_amp_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_amp_uninit(struct roardsp_filter * filter);
-int roardsp_amp_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_amp_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_amp_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_amp_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_amp_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_add_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_add_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_add_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_add_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_quantify_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_quantify_uninit(struct roardsp_filter * filter);
-int roardsp_quantify_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_quantify_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_quantify_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_quantify_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_quantify_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_clip_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_clip_uninit(struct roardsp_filter * filter);
-int roardsp_clip_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_clip_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_clip_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_clip_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_clip_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_downmix_init   (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_downmix_calc162(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_downmix_ctl    (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_downmix_reset  (struct roardsp_filter * filter, int what);
-
-int roardsp_dcblock_init   (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_dcblock_uninit (struct roardsp_filter * filter);
-int roardsp_dcblock_calc16 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_dcblock_reset  (struct roardsp_filter * filter, int what);
-
-int roardsp_swap_init   (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_swap_uninit (struct roardsp_filter * filter);
-int roardsp_swap_calc322(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_swap_calc162(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_swap_calc82 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_swap_ctl    (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_swap_reset  (struct roardsp_filter * filter, int what);
-
-int roardsp_agc_init   (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_agc_uninit (struct roardsp_filter * filter);
-int roardsp_agc_ctl    (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_agc_reset  (struct roardsp_filter * filter, int what);
-
-#ifdef _SPEEX_TYPES_H
-#define ROAR_HAVE_SPEEX_FILTER
-int roardsp_speex_prep_init   (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_speex_prep_uninit (struct roardsp_filter * filter);
-int roardsp_speex_prep_calc161(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_speex_prep_ctl    (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_speex_prep_reset  (struct roardsp_filter * filter, int what);
-#endif
-
-#ifdef ROAR_HAVE_LIBM
-int roardsp_responsecurve_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_responsecurve_uninit(struct roardsp_filter * filter);
-int roardsp_responsecurve_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_responsecurve_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_responsecurve_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_responsecurve_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_responsecurve_reset (struct roardsp_filter * filter, int what);
-
-int roardsp_goertzel_init  (struct roardsp_filter * filter, struct roar_stream * stream, int id);
-int roardsp_goertzel_uninit(struct roardsp_filter * filter);
-int roardsp_goertzel_calc32(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_goertzel_calc16(struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_goertzel_calc8 (struct roardsp_filter * filter, void * data, size_t samples);
-int roardsp_goertzel_ctl   (struct roardsp_filter * filter, int cmd, void * data);
-int roardsp_goertzel_reset (struct roardsp_filter * filter, int what);
-#endif
-
-#endif
-
-//ll
Index: include/libroardsp/float.h
===================================================================
--- include/libroardsp/float.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//float.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_FLOAT_H_
-#define _LIBROARDSP_FLOAT_H_
-
-#include "libroardsp.h"
-
-int roar_conv_int32_float(float   * dst, const int32_t * src, size_t len);
-int roar_conv_float_int32(int32_t * dst, const float   * src, size_t len);
-
-int roar_conv_int32_float_deint(float   ** dst, const int32_t * src, size_t len, size_t channels);
-int roar_conv_float_int32_enint(int32_t  * dst, const float   ** src, size_t len, size_t channels);
-
-#endif
-
-//ll
Index: include/libroardsp/interleave.h
===================================================================
--- include/libroardsp/interleave.h	(revision 6052)
+++ 	(revision )
@@ -1,63 +1,0 @@
-//interleave.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_INTERLEAVE_H_
-#define _LIBROARDSP_INTERLEAVE_H_
-
-#include "libroardsp.h"
-
-#define ROAR_INTERLEAVE_CTL_GET                   0x00
-#define ROAR_INTERLEAVE_CTL_SET                   0x01
-
-#define ROAR_INTERLEAVE_CTL_SET_MAX_BUFFER        (ROAR_INTERLEAVE_CTL_SET|0x10)
-
-#define ROAR_INTERLEAVE_MAX_CHANNELS              16
-
-struct roar_interleave {
- size_t channels;
- size_t bits;
-};
-
-int roar_interl_init  (struct roar_interleave * state, size_t channels, size_t bits);
-int roar_interl_uninit(struct roar_interleave * state);
-
-int roar_interl_ctl   (struct roar_interleave * state, int cmd, void * data);
-
-int roar_interl_encode_ext(struct roar_interleave * state, void ** in, void  * out, size_t len);
-int roar_interl_decode_ext(struct roar_interleave * state, void  * in, void ** out, size_t len);
-
-#endif
-
-//ll
Index: include/libroardsp/libroardsp.h
===================================================================
--- include/libroardsp/libroardsp.h	(revision 6052)
+++ 	(revision )
@@ -1,79 +1,0 @@
-//libroardsp.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroardsp a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroardsp is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef _LIBROARDSP_H_
-#define _LIBROARDSP_H_
-
-#include <roaraudio.h>
-
-__BEGIN_DECLS
-
-// enable Speex preprocessing and better type handling if speex > 1.1.8
-#ifdef ROAR_HAVE_LIBSPEEX
-#include <speex/speex.h>
-#ifdef _SPEEX_TYPES_H
-#include <speex/speex_preprocess.h>
-#endif
-#endif
-
-#include "channels.h"
-#include "interleave.h"
-#include "midi.h"
-#include "synth.h"
-#include "poly.h"
-#include "fader.h"
-#include "mixer.h"
-#include "amp.h"
-#include "resampler_poly3.h"
-#include "convert.h"
-#include "midside.h"
-#include "point.h"
-#include "remove.h"
-#include "rms.h"
-#include "float.h"
-#include "filter.h"
-#include "filterchain.h"
-#include "filters.h"
-#include "codecs.h"
-#include "dtmf.h"
-#include "transcode.h"
-#include "vio_transcode.h"
-
-#ifdef ROAR_HAVE_LIBCELT
-#include "transcode_celt.h"
-#endif
-#ifdef ROAR_HAVE_LIBSPEEX
-#include "transcode_speex.h"
-#endif
-
-#ifdef ROAR_HAVE_LIBSAMPLERATE
-#include <samplerate.h>
-#endif
-
-__END_DECLS
-
-#endif
-
-//ll
Index: include/libroardsp/midi.h
===================================================================
--- include/libroardsp/midi.h	(revision 6052)
+++ 	(revision )
@@ -1,96 +1,0 @@
-//midi.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroardsp a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroardsp is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef _LIBROARMIDI_H_
-#define _LIBROARMIDI_H_
-
-#include "libroardsp.h"
-
-#ifdef ROAR_HAVE_LIBM
-#include <math.h>
-#endif
-
-#define ROAR_MIDI_NOTE_NONE -1
-
-#define ROAR_MIDI_NOTE_C  26162
-#define ROAR_MIDI_NOTE_Cs 27718
-#define ROAR_MIDI_NOTE_D  29366
-#define ROAR_MIDI_NOTE_Ds 31112
-#define ROAR_MIDI_NOTE_E  32962
-#define ROAR_MIDI_NOTE_F  34922
-#define ROAR_MIDI_NOTE_Fs 36999
-#define ROAR_MIDI_NOTE_G  39199
-#define ROAR_MIDI_NOTE_Gs 41530
-#define ROAR_MIDI_NOTE_A  44000
-#define ROAR_MIDI_NOTE_As 46616
-#define ROAR_MIDI_NOTE_B  49388
-
-#define ROAR_MIDI_MAX_NOTENAME_LEN (1+8)
-
-#define ROAR_MIDI_TYPE_SINE 1
-
-struct roar_midi_len {
- int mul;
- int div;
-};
-
-struct roar_note_octave {
- uint16_t       note;
- char           name[ROAR_MIDI_MAX_NOTENAME_LEN+1];
- int            octave;
- float          freq;
- struct roar_midi_len len;
-};
-
-
-struct roar_midi_basic_state {
- struct roar_midi_len    len;
- struct roar_note_octave note;
-};
-
-char         * roar_midi_note2name   (uint16_t note);
-uint16_t       roar_midi_name2note   (char * note);
-uint16_t       roar_midi_midi2note   (unsigned char midiid);
-float          roar_midi_note2freq   (uint16_t note);
-
-//int            roar_midi_free_no     (struct roar_note_octave * note);
-
-int            roar_midi_note_from_midiid(struct roar_note_octave * note, unsigned char midiid);
-
-int            roar_midi_find_octave (char * note);
-int            roar_midi_add_octave  (struct roar_note_octave * note);
-int            roar_midi_notefill    (struct roar_note_octave * note);
-
-int            roar_midi_gen_tone    (struct roar_note_octave * note, int16_t * samples, float t, int rate, int channels, int type, void * opts);
-
-
-int roar_midi_play_note  (struct roar_stream * stream, struct roar_note_octave * note, float len);
-
-int roar_midi_basic_init (struct roar_midi_basic_state * state);
-int roar_midi_basic_play (struct roar_stream * stream, struct roar_midi_basic_state * state, char * notes);
-
-#endif
-
-//ll
Index: include/libroardsp/midside.h
===================================================================
--- include/libroardsp/midside.h	(revision 6052)
+++ 	(revision )
@@ -1,51 +1,0 @@
-//midside.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_MIDSIDE_H_
-#define _LIBROARDSP_MIDSIDE_H_
-
-#include "libroardsp.h"
-
-                                                                 // implemnted?
-int roar_conv_s2ms_8      (void * out, void * in, int samples);
-int roar_conv_s2ms_16     (void * out, void * in, int samples);
-int roar_conv_s2ms_32     (void * out, void * in, int samples);
-int roar_conv_ms2s_8      (void * out, void * in, int samples);
-int roar_conv_ms2s_16     (void * out, void * in, int samples);
-int roar_conv_ms2s_32     (void * out, void * in, int samples);
-
-#endif
-
-//ll
Index: include/libroardsp/mixer.h
===================================================================
--- include/libroardsp/mixer.h	(revision 6052)
+++ 	(revision )
@@ -1,48 +1,0 @@
-//mixer.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_MIXER_H_
-#define _LIBROARDSP_MIXER_H_
-
-#include "libroardsp.h"
-
-int roar_mix_pcm       (void    * output, int bits, void ** input, int samples);
-int roar_mix_pcm_8bit  (int8_t  * output, int8_t  ** input, int samples);
-int roar_mix_pcm_16bit (int16_t * output, int16_t ** input, int samples);
-int roar_mix_pcm_32bit (int32_t * output, int32_t ** input, int samples);
-
-#endif
-
-//ll
Index: include/libroardsp/point.h
===================================================================
--- include/libroardsp/point.h	(revision 6052)
+++ 	(revision )
@@ -1,52 +1,0 @@
-//point.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_POINT_H_
-#define _LIBROARDSP_POINT_H_
-
-#include "libroardsp.h"
-
-struct roar_point {
- int32_t x, y, z;
-};
-
-#define roar_point_init(p)  ((p)->x = (p)->y = (p)->z = 0)
-#define roar_point_zeroz(p) ((p)->z                   = 0)
-#define roar_point_to2d(p)  roar_point_zeroz(p)
-#define roar_point_to3d(p)  roar_point_zeroz(p)
-
-#endif
-
-//ll
Index: include/libroardsp/poly.h
===================================================================
--- include/libroardsp/poly.h	(revision 6052)
+++ 	(revision )
@@ -1,60 +1,0 @@
-//poly.h:
-
-// was math.h
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARMATH_H_
-#define _LIBROARMATH_H_
-
-#include "libroardsp.h"
-
-int roar_math_mkpoly (float * poly, float * data, int len);
-
-int roar_math_mkpoly_2x2 (float * poly, float * data);
-int roar_math_mkpoly_3x3 (float * poly, float * data);
-int roar_math_mkpoly_4x4 (float * poly, float * data);
-int roar_math_mkpoly_5x5 (float * poly, float * data);
-
-float roar_math_cvpoly     (float * poly, float t, int len);
-float roar_math_cvpoly_4x4 (float * poly, float t);
-
-int roar_math_diffpoly(float * poly, int len);
-int roar_math_intpoly(float * poly, int len, float c);
-
-float roar_math_numintpoly(float * poly, int len, float st, float et);
-
-#endif
-
-//ll
Index: include/libroardsp/remove.h
===================================================================
--- include/libroardsp/remove.h	(revision 6052)
+++ 	(revision )
@@ -1,59 +1,0 @@
-//remove.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_REMOVE_H_
-#define _LIBROARDSP_REMOVE_H_
-
-#include "libroardsp.h"
-
-struct roar_remove_state {
- uint16_t a, b;
- uint16_t  old;
-};
-
-int roar_remove_init (struct roar_remove_state * state);
-int roar_remove      (void    * inout, void    * subs, int samples, int bits, struct roar_remove_state * state);
-int roar_remove_8    (int8_t  * inout, int8_t  * subs, int samples, struct roar_remove_state * state);
-int roar_remove_16   (int16_t * inout, int16_t * subs, int samples, struct roar_remove_state * state);
-int roar_remove_32   (int32_t * inout, int32_t * subs, int samples, struct roar_remove_state * state);
-
-int roar_remove_so   (void    * subout, void    * in, int samples, int bits, struct roar_remove_state * state);
-int roar_remove_so8  (int8_t  * subout, int8_t  * in, int samples, struct roar_remove_state * state);
-int roar_remove_so16 (int16_t * subout, int16_t * in, int samples, struct roar_remove_state * state);
-int roar_remove_so32 (int32_t * subout, int32_t * in, int samples, struct roar_remove_state * state);
-
-#endif
-
-//ll
Index: include/libroardsp/resampler_poly3.h
===================================================================
--- include/libroardsp/resampler_poly3.h	(revision 6052)
+++ 	(revision )
@@ -1,50 +1,0 @@
-//resampler_poly3.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *      Copyright (C) Hans-Kristian 'maister' Arntzen - 2010
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_RESAMPLER_POLY3_H_
-#define _LIBROARDSP_RESAMPLER_POLY3_H_
-
-#include "libroardsp.h"
-
-// ilen and olen are in samples, not frames.
-
-int roar_conv_poly3_8  (int8_t * out,  int8_t * in,  size_t olen, size_t ilen, int channels);
-int roar_conv_poly3_16 (int16_t * out, int16_t * in, size_t olen, size_t ilen, int channels);
-int roar_conv_poly3_32 (int32_t * out, int32_t * in, size_t olen, size_t ilen, int channels);
-
-#endif
-
-//ll
Index: include/libroardsp/rms.h
===================================================================
--- include/libroardsp/rms.h	(revision 6052)
+++ 	(revision )
@@ -1,57 +1,0 @@
-//rms.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_RMS_H_
-#define _LIBROARDSP_RMS_H_
-
-#include "libroardsp.h"
-
-int64_t roar_rms2_1_8  (int8_t  * data, size_t samples);
-int64_t roar_rms2_1_16 (int16_t * data, size_t samples);
-int64_t roar_rms2_1_32 (int32_t * data, size_t samples);
-
-int roar_rms2_1_8_2    (int8_t  * data, size_t samples, int64_t * rms);
-int roar_rms2_1_16_2   (int16_t * data, size_t samples, int64_t * rms);
-int roar_rms2_1_32_2   (int32_t * data, size_t samples, int64_t * rms);
-
-int roar_rms2_1_8_n    (int8_t  * data, size_t samples, int64_t * rms, size_t n);
-int roar_rms2_1_16_n   (int16_t * data, size_t samples, int64_t * rms, size_t n);
-int roar_rms2_1_32_n   (int32_t * data, size_t samples, int64_t * rms, size_t n);
-
-int roar_rms2_1_b_n    (void    * data, size_t samples, int64_t * rms, size_t n, size_t bits);
-
-#endif
-
-//ll
Index: include/libroardsp/synth.h
===================================================================
--- include/libroardsp/synth.h	(revision 6052)
+++ 	(revision )
@@ -1,90 +1,0 @@
-//synth.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_SYNTH_H_
-#define _LIBROARDSP_SYNTH_H_
-
-#include "libroardsp.h"
-
-#define ROAR_SYNTH_FUNC_TYPE(name)   float (*name)(float t, struct roar_synth_state * state)
-#define ROAR_SYNTH_FUNC_CAST(name) ((float (*    )(float t, struct roar_synth_state * state)) name)
-
-// SYNF -> Synthesis Function
-#define ROAR_SYNTH_SYNF_RECT ROAR_SYNTH_FUNC_CAST(roar_synth_synf_rect)
-#define ROAR_SYNTH_SYNF_SAW  ROAR_SYNTH_FUNC_CAST(roar_synth_synf_saw)
-#define ROAR_SYNTH_SYNF_TRI  ROAR_SYNTH_FUNC_CAST(roar_synth_synf_tri)
-#define ROAR_SYNTH_SYNF_TRAP ROAR_SYNTH_FUNC_CAST(roar_synth_synf_trap)
-
-// those use sin*()
-#ifdef ROAR_HAVE_LIBM
-#define ROAR_SYNTH_SYNF_SIN  ROAR_SYNTH_FUNC_CAST(sinf)
-#define ROAR_SYNTH_SYNF_S2S  ROAR_SYNTH_FUNC_CAST(roar_synth_synf_s2s)
-#endif
-
-#ifdef ROAR_HAVE_LIBM
-#define ROAR_SYNTH_SYNF_DEFAULT ROAR_SYNTH_SYNF_SIN
-#else
-#define ROAR_SYNTH_SYNF_DEFAULT ROAR_SYNTH_SYNF_TRAP
-#endif
-
-struct roar_synth_state {
- int rate;
- struct roar_note_octave * note;
- ROAR_SYNTH_FUNC_TYPE(func);
- size_t pcmoffset;
- float volume;
-};
-
-int roar_synth_init(struct roar_synth_state * state, struct roar_note_octave * note, int rate);
-int roar_synth_set_offset(struct roar_synth_state * state, size_t offset);
-int roar_synth_set_func  (struct roar_synth_state * state, ROAR_SYNTH_FUNC_TYPE(func));
-int roar_synth_set_volume(struct roar_synth_state * state, float volume);
-
-int roar_synth_pcmout_i16n(struct roar_synth_state * state, int16_t * out, size_t frames, int channels);
-int roar_synth_pcmout_i161(struct roar_synth_state * state, int16_t * out, size_t frames);
-
-// some basic SYNFs:
-float roar_synth_synf_rect (float t, struct roar_synth_state * state);
-float roar_synth_synf_saw  (float t, struct roar_synth_state * state);
-float roar_synth_synf_tri  (float t, struct roar_synth_state * state);
-float roar_synth_synf_trap (float t, struct roar_synth_state * state);
-
-#ifdef ROAR_HAVE_LIBM
-float roar_synth_synf_s2s  (float t, struct roar_synth_state * state);
-#endif
-
-#endif
-
-//ll
Index: include/libroardsp/transcode.h
===================================================================
--- include/libroardsp/transcode.h	(revision 6052)
+++ 	(revision )
@@ -1,122 +1,0 @@
-//transcode.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_TRANSCODE_H_
-#define _LIBROARDSP_TRANSCODE_H_
-
-#include "libroardsp.h"
-
-#define ROAR_XCODER_STAGE_NONE        0
-#define ROAR_XCODER_STAGE_INITED      0
-#define ROAR_XCODER_STAGE_WAIT        1
-#define ROAR_XCODER_STAGE_MAGIC       2
-#define ROAR_XCODER_STAGE_OPENING     3
-#define ROAR_XCODER_STAGE_OPENED      4
-#define ROAR_XCODER_STAGE_CLOSING     5
-#define ROAR_XCODER_STAGE_CLOSED      6
-
-#define ROAR_BIXCODER_FLAGS_NONE      0x0000
-#define ROAR_BIXCODER_FLAGS_ENCODE    0x0001
-#define ROAR_BIXCODER_FLAGS_DECODE    0x0002
-
-struct roar_xcoder;
-
-struct roar_xcoder_entry {
- int codec;
- int (*init)(struct roar_xcoder * state);
- int (*uninit)(struct roar_xcoder * state);
- int (*packet_size)(struct roar_xcoder * state, int samples);
- int (*encode)(struct roar_xcoder * state, void * buf, size_t len);
- int (*decode)(struct roar_xcoder * state, void * buf, size_t len);
- int (*proc_header)(struct roar_xcoder * state);
-};
-
-struct roar_xcoder {
- void * inst;
- struct roar_xcoder_entry * entry;
- struct roar_vio_calls * backend;
- int encode;
- int flags;
- int stage;
- ssize_t packet_len;
- struct roar_buffer * iobuffer;
- struct {
-  struct roar_audio_info coded;
-  struct roar_audio_info pcm;
- } info;
-};
-
-struct roar_bixcoder {
- struct roar_xcoder encoder, decoder;
- int flags;
-};
-
-struct roar_transcoder {
- struct roar_xcoder encoder, decoder;
-};
-
-int roar_xcoder_init(struct roar_xcoder * state, int encoder, struct roar_audio_info * info, struct roar_vio_calls * vio);
-int roar_xcoder_set_backend(struct roar_xcoder * state, struct roar_vio_calls * vio);
-int roar_xcoder_packet_size(struct roar_xcoder * state, int samples);
-int roar_xcoder_close      (struct roar_xcoder * state);
-int roar_xcoder_proc_header(struct roar_xcoder * state);
-int roar_xcoder_proc_packet(struct roar_xcoder * state, void * buf, size_t len);
-int roar_xcoder_proc       (struct roar_xcoder * state, void * buf, size_t len);
-
-int roar_bixcoder_init(struct roar_bixcoder * state, struct roar_audio_info * info, struct roar_vio_calls * vio);
-int roar_bixcoder_packet_size (struct roar_bixcoder * state, int samples);
-int roar_bixcoder_close       (struct roar_bixcoder * state);
-int roar_bixcoder_read_header (struct roar_bixcoder * state);
-int roar_bixcoder_read_packet (struct roar_bixcoder * state, void * buf, size_t len);
-int roar_bixcoder_read        (struct roar_bixcoder * state, void * buf, size_t len);
-int roar_bixcoder_write_header(struct roar_bixcoder * state);
-int roar_bixcoder_write_packet(struct roar_bixcoder * state, void * buf, size_t len);
-int roar_bixcoder_write       (struct roar_bixcoder * state, void * buf, size_t len);
-
-// dummy functions used by some de/encoders:
-int roar_xcoder_dummy_inituninit(struct roar_xcoder * state);
-int roar_xcoder_dummy_packet_size_any(struct roar_xcoder * state, int samples);
-int roar_xcoder_dummy_proc_header(struct roar_xcoder * state);
-
-// prototypes for some simple xcoders:
-int roar_xcoder_alaw_encode(struct roar_xcoder * state, void * buf, size_t len);
-int roar_xcoder_alaw_decode(struct roar_xcoder * state, void * buf, size_t len);
-
-int roar_xcoder_mulaw_encode(struct roar_xcoder * state, void * buf, size_t len);
-int roar_xcoder_mulaw_decode(struct roar_xcoder * state, void * buf, size_t len);
-
-#endif
-
-//ll
Index: include/libroardsp/transcode_celt.h
===================================================================
--- include/libroardsp/transcode_celt.h	(revision 6052)
+++ 	(revision )
@@ -1,61 +1,0 @@
-//transcode_celt.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_TRANSCODE_CELT_H_
-#define _LIBROARDSP_TRANSCODE_CELT_H_
-
-#include "libroardsp.h"
-
-#include <celt/celt.h>
-#include <celt/celt_header.h>
-
-struct roar_xcoder_celt {
- CELTMode * mode;
- CELTEncoder * encoder;
- CELTDecoder * decoder;
- int frame_size;
- void * iobuffer;
- size_t bufferlen;
-};
-
-int roar_xcoder_celt_init       (struct roar_xcoder * state);
-int roar_xcoder_celt_uninit     (struct roar_xcoder * state);
-int roar_xcoder_celt_packet_size(struct roar_xcoder * state, int samples);
-int roar_xcoder_celt_encode     (struct roar_xcoder * state, void * buf, size_t len);
-int roar_xcoder_celt_decode     (struct roar_xcoder * state, void * buf, size_t len);
-
-#endif
-
-//ll
Index: include/libroardsp/transcode_speex.h
===================================================================
--- include/libroardsp/transcode_speex.h	(revision 6052)
+++ 	(revision )
@@ -1,66 +1,0 @@
-//transcode_speex.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_TRANSCODE_SPEEX_H_
-#define _LIBROARDSP_TRANSCODE_SPEEX_H_
-
-#include "libroardsp.h"
-
-#include <speex/speex.h>
-#include <speex/speex_stereo.h>
-#include <speex/speex_callbacks.h>
-
-struct roar_xcoder_speex {
- SpeexBits   bits;
- SpeexStereoState stereo_state;
- void      * xcoder;
- uint16_t    mode;
- int         stereo;
- int frame_size;
- char       cc[ROAR_SPEEX_MAX_CC+2]; /* buffer for read() and write() + 2 byte for pkg length */
- struct roar_libroar_config_codec * codec_config;
- int    max_cc;
-};
-
-int roar_xcoder_speex_init       (struct roar_xcoder * state);
-int roar_xcoder_speex_uninit     (struct roar_xcoder * state);
-int roar_xcoder_speex_packet_size(struct roar_xcoder * state, int samples);
-int roar_xcoder_speex_proc_header(struct roar_xcoder * state);
-int roar_xcoder_speex_encode     (struct roar_xcoder * state, void * buf, size_t len);
-int roar_xcoder_speex_decode     (struct roar_xcoder * state, void * buf, size_t len);
-
-#endif
-
-//ll
Index: include/libroardsp/vio_transcode.h
===================================================================
--- include/libroardsp/vio_transcode.h	(revision 6052)
+++ 	(revision )
@@ -1,54 +1,0 @@
-//vio_transcode.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARDSP_VIO_TRANSCODE_H_
-#define _LIBROARDSP_VIO_TRANSCODE_H_
-
-#include "libroardsp.h"
-
-int     roar_vio_open_xcode    (struct roar_vio_calls * calls, int encoder, struct roar_audio_info * info, struct roar_vio_calls * dst);
-ssize_t roar_vio_xcode_proc    (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_xcode_sync    (struct roar_vio_calls * vio);
-int     roar_vio_xcode_close   (struct roar_vio_calls * vio);
-
-int     roar_vio_open_bixcode    (struct roar_vio_calls * calls, struct roar_audio_info * info, struct roar_vio_calls * dst);
-ssize_t roar_vio_bixcode_read    (struct roar_vio_calls * vio, void *buf, size_t count);
-ssize_t roar_vio_bixcode_write   (struct roar_vio_calls * vio, void *buf, size_t count);
-int     roar_vio_bixcode_sync    (struct roar_vio_calls * vio);
-int     roar_vio_bixcode_close   (struct roar_vio_calls * vio);
-
-#endif
-
-//ll
Index: include/libroareio/driver.h
===================================================================
--- include/libroareio/driver.h	(revision 6052)
+++ 	(revision )
@@ -1,58 +1,0 @@
-//driver.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAREIO_DRIVER_H_
-#define _LIBROAREIO_DRIVER_H_
-
-#include <roaraudio.h>
-
-struct roar_cdriver {
- const char * name;
- int  (*open)(struct roar_vio_calls * calls, const char * name, const char * dev, struct roar_audio_info * info, int dir);
-};
-
-int roar_cdriver_open(struct roar_vio_calls * calls, const char * name, const char * dev, struct roar_audio_info * info, int dir);
-
-int roar_cdriver_open2(struct roar_vio_calls * calls, const char * name, const char * dev, struct roar_audio_info * info, int dir, struct roar_keyval * para, ssize_t paralen);
-
-ssize_t roar_cdriver_list   (const char ** list, size_t len, size_t offset) _LIBROAR_STREAM_STDATTRS;
-
-// driver prototypes:
-int roar_cdriver_oss (struct roar_vio_calls * calls, const char * name, const char * dev, struct roar_audio_info * info, int dir);
-int roar_cdriver_roar(struct roar_vio_calls * calls, const char * name, const char * dev, struct roar_audio_info * info, int dir);
-
-#endif
-
-//ll
Index: include/libroareio/ff_ssdp.h
===================================================================
--- include/libroareio/ff_ssdp.h	(revision 6052)
+++ 	(revision )
@@ -1,88 +1,0 @@
-//ff_ssdp.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroareio a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAREIO_FF_SSDP_H_
-#define _LIBROAREIO_FF_SSDP_H_
-
-#include "libroareio.h"
-
-/*
-> NOTIFY * HTTP/1.1
-> SERVER: Linux/2.6.15.2 UPnP/1.0 Mediaserver/1.0
-> CACHE-CONTROL: max-age=1800
-> LOCATION: http://192.168.0.10:8080/description.xml
-> NTS: ssdp:alive
-> NT: urn:schemas-upnp-org:service:ConnectionManager:1
-> USN: uuid:550e8400-e29b-11d4-a716-446655440000::urn:schemas-upnp-org:service:ConnectionManager:1
-> HOST: 239.255.255.250:1900
-*/
-
-#define ROAR_FF_SSDP_M_NOTIFY    1
-#define ROAR_FF_SSDP_M_M_SEARCH  2
-
-#define ROAR_FF_SSDP_MS_NOTIFY   "NOTIFY"
-#define ROAR_FF_SSDP_MS_M_SEARCH "M-SEARCH"
-
-#define ROAR_FF_SSDP_A_ALIVE     1
-#define ROAR_FF_SSDP_A_BYEBYE    2
-#define ROAR_FF_SSDP_A_REG       ROAR_FF_SSDP_A_ALIVE
-#define ROAR_FF_SSDP_A_UNREG     ROAR_FF_SSDP_A_BYEBYE
-
-#define ROAR_FF_SSDP_AS_ALIVE    "ssdp:alive"
-#define ROAR_FF_SSDP_AS_BYEBYE   "ssdp:byebye"
-
-#define ROAR_FF_SSDP_HOST_UPNP   "239.255.255.250:1900"
-
-struct roar_ff_ssdp {
- int    method;
- char * server;
- int    max_age;
- char * location;
- int    nst;
- char * nt;
- char * usn;
- int    usn_nt_suffix;
- char * host;
-};
-
-void roar_ff_ssdp_init (struct roar_ff_ssdp * c);
-void roar_ff_ssdp_free (struct roar_ff_ssdp * c);
-
-int  roar_ff_ssdp_write(struct roar_vio_calls * vio, struct roar_ff_ssdp * c);
-int  roar_ff_ssdp_read (struct roar_vio_calls * vio, struct roar_ff_ssdp * c);
-
-#endif
-
-//ll
Index: include/libroareio/httpd.h
===================================================================
--- include/libroareio/httpd.h	(revision 6052)
+++ 	(revision )
@@ -1,102 +1,0 @@
-//httpd.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroareio a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAREIO_HTTPD_H_
-#define _LIBROAREIO_HTTPD_H_
-
-#include "libroareio.h"
-
-#define _ROAR_EIO_HTTPD_VERSION(major,minor) (((major)<<8)|(minor))
-#define _ROAR_EIO_HTTPD_VERSION_MAJOR(x)     ((x)>>8)
-#define _ROAR_EIO_HTTPD_VERSION_MINOR(x)     ((x)&0xFF)
-
-#define ROAR_HTTPD_VERSION_HTTP09    _ROAR_EIO_HTTPD_VERSION(0,9)
-#define ROAR_HTTPD_VERSION_HTTP10    _ROAR_EIO_HTTPD_VERSION(1,0)
-#define ROAR_HTTPD_VERSION_HTTP11    _ROAR_EIO_HTTPD_VERSION(1,1)
-
-#define ROAR_HTTPD_METHOD_NONE       0
-#define ROAR_HTTPD_METHOD_GET        1
-#define ROAR_HTTPD_METHOD_POST       2
-#define ROAR_HTTPD_METHOD_PUT        3
-#define ROAR_HTTPD_METHOD_HEAD       4
-#define ROAR_HTTPD_METHOD_DELETE     5
-#define ROAR_HTTPD_METHOD_TRACE      6
-#define ROAR_HTTPD_METHOD_OPTIONS    7
-#define ROAR_HTTPD_METHOD_CONNECT    8
-//#define ROAR_HTTPD_METHOD_       9
-
-#define ROAR_HTTPD_STATUS_OK         200
-#define ROAR_HTTPD_STATUS_NOT_FOUND  404
-#define ROAR_HTTPD_STATUS_INTSERVERR 500
-#define ROAR_HTTPD_STATUS_NOT_IMPL   501
-#define ROAR_HTTPD_STATUS_VERNOTSUP  505
-
-#define ROAR_HTTPD_STATE_REQ           1
-#define ROAR_HTTPD_STATE_EOH           2
-#define ROAR_HTTPD_STATE_RESP          3
-
-struct roar_httpd_request {
- int method;
- char * resource;
- char * query_string;
- int version;
- struct roar_keyval * header;
-};
-
-struct roar_httpd_response {
- int version;
- int status;
- struct roar_vio_calls * file;
- struct roar_keyval    * header;
-};
-
-struct roar_httpd {
- int state;
- struct roar_httpd_request  request;
- struct roar_httpd_response response;
- int (*cb_eoh)(struct roar_httpd * httpd);
- struct roar_vio_calls * client;
- struct roar_vio_calls   viostore[1];
- struct roar_buffer * header;
- struct roar_buffer * iobuffer;
-};
-
-struct roar_httpd * roar_http_new(struct roar_vio_calls * client, int (*cb_eoh)(struct roar_httpd * httpd));
-int                 roar_http_free(struct roar_httpd * httpd);
-int                 roar_http_update(struct roar_httpd * httpd);
-
-#endif
-
-//ll
Index: include/libroareio/libroareio.h
===================================================================
--- include/libroareio/libroareio.h	(revision 6052)
+++ 	(revision )
@@ -1,46 +1,0 @@
-//libroareio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroareio a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROAREIO_H_
-#define _LIBROAREIO_H_
-
-#include <roaraudio.h>
-#include "driver.h"
-#include "ff_ssdp.h"
-#include "httpd.h"
-
-#endif
-
-//ll
Index: include/libroaresd/libroaresd.h
===================================================================
--- include/libroaresd/libroaresd.h	(revision 6052)
+++ include/libroaresd/libroaresd.h	(revision 0)
@@ -1,40 +1,3 @@
 //libroaresd.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from EsounD.
- *  They are mostly copyrighted by Eric B. Mitchell (aka 'Ricdude)
- *  <ericmit@ix.netcom.com>. For more information see AUTHORS.esd.
- *
- *  This file is part of libroaresd a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this libroar
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
 
 #ifndef _LIBROARESD_H_
@@ -43,11 +6,6 @@
 #include <roaraudio.h>
 #include <esd.h>
-
-#ifdef ROAR_HAVE_H_SYS_TIME
+#include <time.h>
 #include <sys/time.h>
-#endif
-#ifdef ROAR_HAVE_H_TIME
-#include <time.h>
-#endif
 
 #define ROAR_BC2ESD(b,c) (((b) == 8 ? ESD_BITS8 : ESD_BITS16) | ((c) == 1 ? ESD_MONO : ESD_STEREO))
Index: include/libroarlight/colors.h
===================================================================
--- include/libroarlight/colors.h	(revision 6052)
+++ 	(revision )
@@ -1,123 +1,0 @@
-//colors.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLIGHT_COLORS_H_
-#define _LIBROARLIGHT_COLORS_H_
-
-#include "libroarlight.h"
-
-#define ROAR_COLOR_TYPE_NONE           0x00000000
-#define ROAR_COLOR_TYPE_GRAY           0x00000001 /* ???         */
-#define ROAR_COLOR_TYPE_ALPHA          0x00000002 /* Alpha       */
-#define ROAR_COLOR_TYPE_DOUBLE         0x00000004 /* use 16 bit per channel */
-#define ROAR_COLOR_TYPE_A              ROAR_COLOR_TYPE_ALPHA
-#define ROAR_COLOR_TYPE_K              0x00000010 /* black (Key) */
-#define ROAR_COLOR_TYPE_R              0x00000020 /* red         */
-#define ROAR_COLOR_TYPE_G              0x00000040 /* green       */
-#define ROAR_COLOR_TYPE_B              0x00000080 /* blue or ??? */
-#define ROAR_COLOR_TYPE_H              0x00000100
-#define ROAR_COLOR_TYPE_S              0x00000200
-#define ROAR_COLOR_TYPE_V              0x00000400
-//#define ROAR_COLOR_TYPE_B              0x00000800
-#define ROAR_COLOR_TYPE_L              0x00001000
-#define ROAR_COLOR_TYPE_I              0x00002000
-#define ROAR_COLOR_TYPE_C              0x00004000 /* Cyan          */
-#define ROAR_COLOR_TYPE_M              0x00008000 /* Magenta       */
-#define ROAR_COLOR_TYPE_Y              0x00010000 /* Yellow or ??? */
-#define ROAR_COLOR_TYPE_U              0x00020000
-//#define ROAR_COLOR_TYPE_              0x0100
-
-#define ROAR_COLORSYSTEM_NONE          (ROAR_COLOR_TYPE_NONE)
-#define ROAR_COLORSYSTEM_GRAY          (ROAR_COLOR_TYPE_K)
-#define ROAR_COLORSYSTEM_RGB           (ROAR_COLOR_TYPE_R|ROAR_COLOR_TYPE_G|ROAR_COLOR_TYPE_B)
-#define ROAR_COLORSYSTEM_RGBA          (ROAR_COLOR_TYPE_R|ROAR_COLOR_TYPE_G|ROAR_COLOR_TYPE_B|ROAR_COLOR_TYPE_ALPHA)
-#define ROAR_COLORSYSTEM_YUV           (ROAR_COLOR_TYPE_Y|ROAR_COLOR_TYPE_U|ROAR_COLOR_TYPE_V)
-#define ROAR_COLORSYSTEM_HSV           (ROAR_COLOR_TYPE_H|ROAR_COLOR_TYPE_S|ROAR_COLOR_TYPE_V)
-#define ROAR_COLORSYSTEM_HSL           (ROAR_COLOR_TYPE_H|ROAR_COLOR_TYPE_S|ROAR_COLOR_TYPE_L)
-#define ROAR_COLORSYSTEM_HSB           (ROAR_COLOR_TYPE_H|ROAR_COLOR_TYPE_S|ROAR_COLOR_TYPE_B)
-#define ROAR_COLORSYSTEM_HSI           (ROAR_COLOR_TYPE_H|ROAR_COLOR_TYPE_S|ROAR_COLOR_TYPE_I)
-#define ROAR_COLORSYSTEM_CMYK          (ROAR_COLOR_TYPE_C|ROAR_COLOR_TYPE_M|ROAR_COLOR_TYPE_Y|ROAR_COLOR_TYPE_K)
-
-struct roar_color_gray {
- unsigned char k;
-};
-
-struct roar_color_rgb {
- unsigned char r, g, b;
-};
-
-struct roar_color_rgba {
- unsigned char r, g, b, a;
-};
-
-struct roar_color_yuv {
- unsigned char y, u, v;
-};
-
-struct roar_color_cmyk {
- unsigned char c, m, y, k;
-};
-
-struct roar_color {
- uint32_t system;
- union {
-  struct roar_color_gray   gray;
-  struct roar_color_rgb    rgb;
-  struct roar_color_rgba   rgba;
-  struct roar_color_yuv    yuv;
-  struct roar_color_cmyk   cmyk;
- } color;
-};
-
-//#define roar_color_new_rgb(color,r,g,b) (color)->system = ROAR_COLORSYSTEM_RGB; (color)->color.rgb.r = (r); (color)->color.rgb.b = (g); (color)->color.rgb.b = (b)
-
-int roar_color_new        (struct roar_color * c);
-int roar_color_new_gray   (struct roar_color * c, unsigned char k);
-int roar_color_new_rgb    (struct roar_color * c, unsigned char r, unsigned char g, unsigned char b);
-
-int roar_color_copy       (struct roar_color * dst, struct roar_color * src);
-int roar_color_conv       (struct roar_color * c, uint32_t system);
-
-int roar_color_conv_gray  (struct roar_color * c, uint32_t system);
-int roar_color_conv_rgb   (struct roar_color * c, uint32_t system);
-
-int roar_color_to_string  (struct roar_color * c, char * str, size_t len);
-
-int roar_color_to_blob    (struct roar_color * c, char * blob, size_t len);
-int roar_color_from_blob  (struct roar_color * c, char * blob, size_t len);
-
-#endif
-
-//ll
Index: include/libroarlight/laser.h
===================================================================
--- include/libroarlight/laser.h	(revision 6052)
+++ 	(revision )
@@ -1,54 +1,0 @@
-//laser.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLIGHT_LASER_H_
-#define _LIBROARLIGHT_LASER_H_
-
-#include "libroarlight.h"
-
-struct roar_laser_point {
- struct roar_point point;
- struct roar_color color;
-};
-
-struct roar_laser_frame {
- uint_least32_t            pps;
- size_t                    points;
- struct roar_laser_point * data;
-};
-
-#endif
-
-//ll
Index: include/libroarlight/libroarlight.h
===================================================================
--- include/libroarlight/libroarlight.h	(revision 6052)
+++ 	(revision )
@@ -1,50 +1,0 @@
-//libroarlight.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLIGHT_H_
-#define _LIBROARLIGHT_H_
-
-#include <roaraudio.h>
-#include <libroardsp/libroardsp.h>
-
-#include "colors.h"
-#include "roardmx.h"
-#include "pwm.h"
-#include "laser.h"
-#include "slfi.h"
-
-#endif
-
-//ll
Index: include/libroarlight/pwm.h
===================================================================
--- include/libroarlight/pwm.h	(revision 6052)
+++ 	(revision )
@@ -1,54 +1,0 @@
-//pwm.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLIGHT_PWM_H_
-#define _LIBROARLIGHT_PWM_H_
-
-#include "libroarlight.h"
-
-struct roar_lpwm_state {
- int bits;
- int fill;
- int value;
- uint64_t s;
-};
-
-int roar_light_pwm_new (struct roar_lpwm_state * state, int bits );
-int roar_light_pwm_set (struct roar_lpwm_state * state, int value);
-int roar_light_pwm_send(struct roar_lpwm_state * state, struct roar_vio_calls * vio, size_t len);
-
-#endif
-
-//ll
Index: include/libroarlight/roardmx.h
===================================================================
--- include/libroarlight/roardmx.h	(revision 6052)
+++ 	(revision )
@@ -1,226 +1,0 @@
-//roardmx.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARLIGHT_ROARDMX_H_
-#define _LIBROARLIGHT_ROARDMX_H_
-
-#include "libroarlight.h"
-
-#define ROAR_ROARDMX_VERSION        0x00
-
-#define ROAR_ROARDMX_MASK_FLAGS     0xF0
-#define ROAR_ROARDMX_MASK_TYPE      0x0F
-
-#define ROAR_ROARDMX_DATA_LENGTH    ((1<<(sizeof(char)*8))-1) /* 255 */
-
-// we have a offset of one nibble, see ROAR_ROARDMX_MASK_FLAGS
-#define ROAR_ROARDMX_FLAG_PACKED    0x10
-
-#define ROAR_ROARDMX_TYPE_SSET      0x00 /* simple set */
-#define ROAR_ROARDMX_TYPE_IPO1      0x01 /* linear interploation */
-#define ROAR_ROARDMX_TYPE_IPOLIN    ROAR_ROARDMX_TYPE_IPO1
-#define ROAR_ROARDMX_TYPE_IPO4      0x02 /* poly5 interpolation (a*t^4 + b*t^3 + c*t^2 + d*t + e) */
-#define ROAR_ROARDMX_TYPE_INC8S     0x03 /* signed 8 bit increment */
-#define ROAR_ROARDMX_TYPE_RANGESET  0x04 /* like simple set but set ranges of channels */
-#define ROAR_ROARDMX_TYPE_EVENT     0x0E /* used to transmit simple events like step, blackout and stuff */
-#define ROAR_ROARDMX_TYPE_CONTROL   0x0F /* Used to transmit other control information like codec version */
-
-// Events:
-// event types (ETYPE) will be bit or-ed with event.
-#define ROAR_ROARDMX_MASK_EVENT     0x3F
-#define ROAR_ROARDMX_MASK_ETYPE     0xC0
-
-#define ROAR_ROARDMX_ETYPE_BEAT     0x00 /* event happens NOW */
-#define ROAR_ROARDMX_ETYPE_OFF      0x40 /* event ended */
-#define ROAR_ROARDMX_ETYPE_ON       0x80 /* event started */
-#define ROAR_ROARDMX_ETYPE_HOLD     0xC0 /* event is still running, used as keep-alive */
-
-// events: must be in range 0x00 to 0x3F.
-#define ROAR_ROARDMX_EVENT_NONE     0x00 /* can be used as keep-alive or padding */
-#define ROAR_ROARDMX_EVENT_STEP     0x01
-#define ROAR_ROARDMX_EVENT_TAP      0x02
-#define ROAR_ROARDMX_EVENT_BEAT     0x03 /* audio signal generated beat */
-#define ROAR_ROARDMX_EVENT_BLACKOUT 0x04 /* set all light channels to zero */
-#define ROAR_ROARDMX_EVENT_FULLON   0x05 /* set all light channels to full intensity */
-#define ROAR_ROARDMX_EVENT_FLASH    0x06 /* like fullon but can also use strobe. */
-#define ROAR_ROARDMX_EVENT_STROBE   0x07 /* triggers all strobes */
-#define ROAR_ROARDMX_EVENT_STROBEREADY 0x08 /* strobe is ready */
-#define ROAR_ROARDMX_EVENT_STROBELOAD  0x09 /* strobe is loading */
-#define ROAR_ROARDMX_EVENT_FOG      0x0A /* triggers all fog machines */
-#define ROAR_ROARDMX_EVENT_FOGREADY 0x0B /* Fog machine is ready */
-#define ROAR_ROARDMX_EVENT_FOGHEAT  0x0C /* Fog machine is heating up */
-/* hole */
-#define ROAR_ROARDMX_EVENT_NOTIFY0  0x10 /* Notify e.g. IRC highlight, ringing phone, ... */
-#define ROAR_ROARDMX_EVENT_NOTIFY1  0x11
-#define ROAR_ROARDMX_EVENT_NOTIFY2  0x12
-#define ROAR_ROARDMX_EVENT_NOTIFY3  0x13
-/* hole */
-#define ROAR_ROARDMX_EVENT_USER0    0x30 /* User defined event #0  */
-#define ROAR_ROARDMX_EVENT_USER1    0x31 /* User defined event #1  */
-#define ROAR_ROARDMX_EVENT_USER2    0x32 /* User defined event #2  */
-#define ROAR_ROARDMX_EVENT_USER3    0x33 /* User defined event #3  */
-#define ROAR_ROARDMX_EVENT_USER4    0x34 /* User defined event #4  */
-#define ROAR_ROARDMX_EVENT_USER5    0x35 /* User defined event #5  */
-#define ROAR_ROARDMX_EVENT_USER6    0x36 /* User defined event #6  */
-#define ROAR_ROARDMX_EVENT_USER7    0x37 /* User defined event #7  */
-#define ROAR_ROARDMX_EVENT_USER8    0x38 /* User defined event #8  */
-#define ROAR_ROARDMX_EVENT_USER9    0x39 /* User defined event #9  */
-#define ROAR_ROARDMX_EVENT_USER10   0x3A /* User defined event #10 */
-#define ROAR_ROARDMX_EVENT_USER11   0x3B /* User defined event #11 */
-#define ROAR_ROARDMX_EVENT_USER12   0x3C /* User defined event #12 */
-#define ROAR_ROARDMX_EVENT_USER13   0x3D /* User defined event #13 */
-#define ROAR_ROARDMX_EVENT_USER14   0x3E /* User defined event #14 */
-#define ROAR_ROARDMX_EVENT_USER15   0x3F /* User defined event #15 */
-
-/* subcommands for ROAR_ROARDMX_TYPE_CONTROL: */
-#define ROAR_ROARDMX_CTL_VERSION    0x00 /* Version of Codec */
-#define ROAR_ROARDMX_CTL_SYNC       0x01 /* Sync state */
-
-/* Flags for ROAR_ROARDMX_CTL_SYNC: */
-#define ROAR_ROARDMX_SYNC_DIRTY     0x01 /* global state is not sync, some more data needs to be send first */
-#define ROAR_ROARDMX_SYNC_CLEAN     0x02 /* global state is sync */
-#define ROAR_ROARDMX_SYNC_SOF       0x03 /* start of frame */
-#define ROAR_ROARDMX_SYNC_EOF       0x04 /* end of frame */
-#define ROAR_ROARDMX_SYNC_CLOCK     0x80 /* clock tick */
-
-// Data format on the wire:
-/*
- * All packets consist of a header and a body.
- * The header has the size of 3 Bytes:
- * 0) version. Must be ROAR_ROARDMX_VERSION.
- * 1) packet type and flags.
- * 2) length of body in bytes.
- *
- * the type-flags byte consists of the packet type in the lower nibble and
- * the flags in the upper nibble.
- *
- * the header is followd by a body of zero to 255 bytes length.
- * the content of the body depends on the used type of packet.
- *
- * SSET: (simple set) Sets channels to values.
- *  The body consists of {channel, value}-pairs.
- *  Every entry is 3 byte: hi byte of channel, low byte of channel, value.
- *
- * IPO1: not implemented.
- * IPO4: not implemented.
- * INC8S: not implemented.
- * RANGESET: Sets ranges of channels.
- *  The body consists of {start, stop, value}-trippels.
- *  Every entry is 5 byte: hi byte of start channel, low byte of start channel,
- *  hi byte of end channel, low byte of end channel and value.
- *
- * EVENT: transmit simple yet abstract events.
- * The body is an array of bytes. Each byte represents one event.
- * Each event has the upper two bits set to the meta type of the event
- * (beat, on, off, hold) and the lower 6 bits to the type of te event.
- *
- * CONTROL: transmit other control information.
- * The body consists of a version byte followed by a command byte.
- * The version byte is always zero by this standard.
- * The command byte is one of ROAR_ROARDMX_CTL_*
- * The rest of body depends on both the version and command byte.
- * For command=VERSION packets the rest of the body is a single byte with the value
- * of zero as of this standard.
- * For command=SYNC packets the rest of the body is a single byte which is a bitarray
- * for flags defined above as ROAR_ROARDMX_SYNC_*.
- */
-
-struct roar_roardmx_message {
- unsigned char version;
- unsigned char flags;
- unsigned char type;
- size_t        length;
- unsigned char data[3 /* header */ + ROAR_ROARDMX_DATA_LENGTH /* data */];
-};
-
-// database access:
-int roar_roardmx_str2event(const char * event);
-const char * roar_roardmx_event2str(const int event);
-
-// generic things:
-int roar_roardmx_message_new (struct roar_roardmx_message * mes);
-
-// low level:
-//int roar_roardmx_message_set_flag(struct roar_roardmx_message * mes, unsigned char   flag);
-//int roar_roardmx_message_set_len (struct roar_roardmx_message * mes, size_t          type);
-//int roar_roardmx_message_get_data(struct roar_roardmx_message * mes, unsigned char ** data);
-
-// medium level:
-int roar_roardmx_message_set_type(struct roar_roardmx_message * mes, unsigned char   type);
-int roar_roardmx_message_get_flag(struct roar_roardmx_message * mes, unsigned char * flag);
-int roar_roardmx_message_get_type(struct roar_roardmx_message * mes, unsigned char * type);
-int roar_roardmx_message_get_len (struct roar_roardmx_message * mes, size_t        * length);
-
-
-// IO:
-int roar_roardmx_message_send(struct roar_roardmx_message * mes, struct roar_vio_calls * vio);
-int roar_roardmx_message_recv(struct roar_roardmx_message * mes, struct roar_vio_calls * vio);
-
-// Data/high level:
-// * *:
-int roar_roardmx_message_numchannels(struct roar_roardmx_message * mes); // also works for rangesets
-int roar_roardmx_message_add_chanval(struct roar_roardmx_message * mes, uint16_t   channel, unsigned char   val);
-int roar_roardmx_message_get_chanval(struct roar_roardmx_message * mes, uint16_t * channel, unsigned char * val, int index);
-
-// * SSET:
-int roar_roardmx_message_new_sset   (struct roar_roardmx_message * mes);
-
-// * IPO1:
-// Not yet supported.
-// * IPO4:
-// Not yet supported.
-// * INC8S:
-// Not yet supported.
-// * RANGESET:
-int roar_roardmx_message_new_rangeset(struct roar_roardmx_message * mes);
-int roar_roardmx_message_add_rangeval(struct roar_roardmx_message * mes, uint16_t   start, uint16_t   end, unsigned char   val);
-int roar_roardmx_message_get_rangeval(struct roar_roardmx_message * mes, uint16_t * start, uint16_t * end, unsigned char * val, int index);
-
-// * EVENT:
-int roar_roardmx_message_new_event(struct roar_roardmx_message * mes);
-int roar_roardmx_message_add_events(struct roar_roardmx_message * mes, const uint8_t * events, size_t len);
-#define roar_roardmx_message_add_event(mes,event) roar_roardmx_message_add_events((mes), &(uint8_t){(event)}, 1)
-int roar_roardmx_message_get_events(struct roar_roardmx_message * mes, const uint8_t ** events, size_t * len);
-
-// * CONTROL:
-int roar_roardmx_message_new_version(struct roar_roardmx_message * mes, uint8_t version);
-int roar_roardmx_message_new_sync(struct roar_roardmx_message * mes, uint8_t flags);
-int roar_roardmx_message_get_subcommand(struct roar_roardmx_message * mes);
-int roar_roardmx_message_get_ctl_version(struct roar_roardmx_message * mes);
-int roar_roardmx_message_get_ctl_flags(struct roar_roardmx_message * mes);
-
-#endif
-
-//ll
Index: include/libroarlight/slfi.h
===================================================================
--- include/libroarlight/slfi.h	(revision 6052)
+++ 	(revision )
@@ -1,102 +1,0 @@
-//slfi.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-// SLFI = Simple Light Filter Infrastructure
-
-#ifndef _LIBROARLIGHT_SLFI_H_
-#define _LIBROARLIGHT_SLFI_H_
-
-#include "libroarlight.h"
-
-enum roar_slfi_command {
- ROAR_SLFI_CMD_NONE = 0x00000000U,
- ROAR_SLFI_CMD_PUSH = 0x00000001U, /* push a new filter into the container */
- ROAR_SLFI_CMD_MAX  = 0xFFFFFFFFU
-};
-
-#define ROAR_SLFI_FLAG_NONE        0x00000000U  /* no flags */
-#define ROAR_SLFI_FLAG_ON_UPDATE   0x00000001U  /* update() only needs to be run if there is an actual update */
-
-struct roar_slfi_inst;
-
-struct roar_slfi_filter {
- const char * name;
- const char * description;
- const uint32_t flags;
- // init
- int (*init)(struct roar_slfi_inst * inst, const struct roar_keyval * para, ssize_t paralen);
- // uninit
- int (*uninit)(struct roar_slfi_inst * inst);
- // update
- int (*update)(struct roar_slfi_inst * inst, uint8_t * universe, ssize_t size_of_universe, int32_t usecspassed, const uint8_t * event, size_t eventlen);
- // ctl
- int (*ctl)(struct roar_slfi_inst * inst, enum roar_slfi_command command, void * argp);
-};
-
-#define ROAR_DL_FILTER_VERSION_SLFI   0
-#define ROAR_DL_FILTER_SIZE_SLFI      sizeof(struct roar_slfi_filter)
-
-#define ROAR_DL_PLUGIN_REG_SLFI(obj) \
-static int _roaraudio_library_ROAR_DL_FN_FILTER(struct roar_dl_librarypara * para, struct roar_dl_libraryinst * lib) { \
- size_t i; \
- (void)para, (void)lib; \
- for (i = 0; i < (sizeof((obj))/sizeof(*(obj))); i++) { \
-  ROAR_DL_PLUGIN_REG_FN(ROAR_DL_FILTER_SUBTYPE_SLFI, (obj)[i], ROAR_DL_FILTER_VERSION_SLFI); \
- } \
- return 0; \
-}
-
-struct roar_slfi_inst {
- size_t refc;
- const struct roar_slfi_filter * impl;
- uint32_t flags; // same as flags on *impl. just runtime updateable.
- void * userdata;
- struct roar_dl_lhandle * lhandle; // used in case we autoload this as plugin.
- int (*cb_event_add)(struct roar_slfi_inst * inst, void * userdata, uint8_t event);
- void * cb_event_add_userdata;
-};
-
-struct roar_slfi_inst * roar_slfi_new(const char * name, int autoload, const struct roar_keyval * para, ssize_t paralen);
-int roar_slfi_ref(struct roar_slfi_inst * inst);
-int roar_slfi_unref(struct roar_slfi_inst * inst);
-int roar_slfi_update(struct roar_slfi_inst * inst, uint8_t * universe, ssize_t size_of_universe, int32_t usecspassed, const uint8_t * event, size_t eventlen);
-int roar_slfi_ctl(struct roar_slfi_inst * inst, enum roar_slfi_command command, void * argp);
-
-int roar_slfi_event_add(struct roar_slfi_inst * inst, uint8_t event); // does not perform any context switching.
-int roar_slfi_cb_set_event_add(struct roar_slfi_inst * inst, int (*cb)(struct roar_slfi_inst * inst, void * userdata, uint8_t event), void * userdata);
-
-#endif
-
-//ll
Index: include/libroarmidi/libroarmidi.h
===================================================================
--- include/libroarmidi/libroarmidi.h	(revision 6052)
+++ 	(revision )
@@ -1,43 +1,0 @@
-//libroarmidi.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARMIDI_H_
-#define _LIBROARMIDI_H_
-
-#include <roaraudio.h>
-
-#endif
-
-//ll
Index: include/libroarpulse/libroarpulse.h
===================================================================
--- include/libroarpulse/libroarpulse.h	(revision 6052)
+++ 	(revision )
@@ -1,73 +1,0 @@
-//libroarpulse.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from libpulse*. They are mostly copyrighted by:
- *  Lennart Poettering <poettering@users.sourceforge.net> and
- *  Pierre Ossman <drzeus@drzeus.cx>
- *
- *  This file is part of libroarpulse a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this libroar
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARPULSE_H_
-#define _LIBROARPULSE_H_
-
-#include <roaraudio.h>
-#include <pulse/pulseaudio.h>
-#include <pulse/simple.h>
-
-#include <libroarpulse/simple.h>
-
-#define ROAR_PA_DEFAULT_SINK   "RoarAudio_default_sink"
-#define ROAR_PA_DEFAULT_SOURCE "RoarAudio_default_source"
-
-// POSIX does not clearly specify what happens on NULL
-#define ROAR_STRDUP(x) ((x) == NULL ? NULL : strdup((x)))
-
-int roar_codec_pulse2roar (int codec);
-
-int roar_pa_sspec2auinfo (struct roar_audio_info * info, const pa_sample_spec * ss);
-int roar_pa_auinfo2sspec (pa_sample_spec * ss, const struct roar_audio_info * info);
-
-const char * roar_pa_find_server (const char * server);
-
-int roar_pa_raerror2paerror(int error);
-
-struct roar_connection * roar_pa_context_get_con(pa_context * c);
-pa_mainloop_api * roar_pa_context_get_api(pa_context * c);
-
-pa_operation *roar_pa_operation_new(pa_operation_state_t initstate);
-
-#define roar_pa_op_new_done() roar_pa_operation_new(PA_OPERATION_DONE)
-
-#endif
-
-//ll
Index: include/libroarpulse/simple.h
===================================================================
--- include/libroarpulse/simple.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//simple.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from libpulse*. They are mostly copyrighted by:
- *  Lennart Poettering <poettering@users.sourceforge.net> and
- *  Pierre Ossman <drzeus@drzeus.cx>
- *
- *  This file is part of libroarpulse a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this libroar
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _LIBROARPULSE_SIMPLE_H_
-#define _LIBROARPULSE_SIMPLE_H_
-
-#include <libroarpulse/libroarpulse.h>
-
-// this file is currently not needed.
-
-#endif
-
-//ll
Index: include/libroarrsound/libroarrsound.h
===================================================================
--- include/libroarrsound/libroarrsound.h	(revision 6052)
+++ 	(revision )
@@ -1,52 +1,0 @@
-//libroarrsound.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from RSound.
- *  They are copyrighted by Hans-Kristian 'maister' Arntzen.
- *
- *  This file is part of libroarrsound a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- */
-
-#ifndef _LIBROARRSOUND_H_
-#define _LIBROARRSOUND_H_
-
-#include <roaraudio.h>
-#include <rsound.h>
-
-#define LIBROARRSOUND_FLAGS_NONE        0x00
-#define LIBROARRSOUND_FLAGS_CONNECTED   0x01
-#define LIBROARRSOUND_FLAGS_STREAMING   0x02
-
-struct libroarrsound {
- rsound_t rsound;
- int    flags;
- struct roar_connection con;
- struct roar_stream     stream;
- struct roar_vio_calls  vio;
-};
-
-#endif
-
-//ll
Index: include/libroarsndio/libroarsndio.h
===================================================================
--- include/libroarsndio/libroarsndio.h	(revision 6052)
+++ 	(revision )
@@ -1,102 +1,0 @@
-//libroarsndio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from OpenBSD's sndio.
- *  See 'Copyright for sndio' below for more information on
- *  code fragments taken from OpenBSD's sndio.
- *
- * --- Copyright for sndio ---
- * Copyright (c) 2008 Alexandre Ratchov <alex@caoua.org>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- * --- End of Copyright for sndio ---
- *
- *  This file is part of libroaresd a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- */
-
-#ifndef _LIBROARSNDIO_H_
-#define _LIBROARSNDIO_H_
-
-#include <roaraudio.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined(ROAR_HAVE_LIBSNDIO) && !defined(_ROAR_EMUL_LIBSNDIO) && !defined(ROAR_USE_OWN_SNDIO_HDL)
-#include <sndio.h>
-#else
-#define sio_hdl roar_sio_hdl
-#define mio_hdl roar_sio_hdl
-#include "sndiosym.h"
-#endif
-
-#if !defined(ROAR_HAVE_LIBSNDIO) || defined(ROAR_USE_OWN_SNDIO_HDL)
-#ifdef sio_hdl
-#undef sio_hdl
-#endif
-#define sio_hdl roar_sio_hdl
-
-#ifdef mio_hdl
-#undef mio_hdl
-#endif
-#define mio_hdl roar_sio_hdl
-#endif
-
-struct roar_sio_hdl {
- char                   * device;
-// int              fh;
- int                      stream_opened;
- int                      dir;
- int                      nonblock;
- int                      ioerror;
- struct roar_vio_calls    svio;
- struct roar_connection   con;
- struct roar_stream       stream;
- struct roar_audio_info   info;
- struct sio_par           para;
- void                   (*on_move)(void * arg, int delta);
- void                   * on_move_arg;
- void                   (*on_vol )(void * arg, unsigned vol);
- void                   * on_vol_arg;
-};
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-//ll
Index: include/libroarsndio/sndiosym.h
===================================================================
--- include/libroarsndio/sndiosym.h	(revision 6081)
+++ 	(revision )
@@ -1,176 +1,0 @@
-//sndiosym.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *  The code (may) include prototypes and comments (and maybe
- *  other code fragements) from OpenBSD's sndio.
- *  See 'Copyright for sndio' below for more information on
- *  code fragments taken from OpenBSD's sndio.
- *
- * --- Copyright for sndio ---
- * Copyright (c) 2008 Alexandre Ratchov <alex@caoua.org>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- * --- End of Copyright for sndio ---
- *
- *  This file is part of libroaresd a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- */
-
-#ifndef _LIBROARSNDIO_SNDIOSYM_H_
-#define _LIBROARSNDIO_SNDIOSYM_H_
-
-#include <roaraudio.h>
-
-#ifdef ROAR_HAVE_H_POLL
-#include <poll.h>
-#else
-struct pollfd;
-#endif
-
-#define SIO_DEVANY      "default"
-#define MIO_PORTANY     "default"
-
-#define SIO_PLAY        1
-#define SIO_REC         2
-#define MIO_OUT		4
-#define MIO_IN		8
-
-#define SIO_IGNORE      0       /* pause during xrun */
-#define SIO_SYNC        1       /* resync after xrun */
-#define SIO_ERROR       2       /* terminate on xrun */
-#define SIO_XSTRINGS    {"ignore", "sync", "error"}
-
-#define SIO_NENC        8
-#define SIO_NCHAN       8
-#define SIO_NRATE       16
-#define SIO_NCONF       4
-
-#define SIO_ENCMAX	10
-
-#if BYTE_ORDER == BIG_ENDIAN && !defined(ROAR_TARGET_WIN32)
-#define SIO_LE_NATIVE   0
-#else
-#if BYTE_ORDER == LITTLE_ENDIAN
-#define SIO_LE_NATIVE   1
-#else
-#error Byte Order of this system is not supported within the sndio interface.
-#endif
-#endif
-
-#define SIO_BPS(bits) (((bits) <= 8) ? 1 : (((bits) <= 16) ? 2 : 4))
-
-#define SIO_SUN_PATH	NULL
-#define SIO_AUCAT_PATH	NULL
-
-#define SIO_MAXVOL 127
-
-
-struct sio_par {
- unsigned bits;          /* bits per sample */
- unsigned bps;           /* bytes per sample */
- unsigned sig;           /* 1 = signed, 0 = unsigned */
- unsigned le;            /* 1 = LE, 0 = BE byte order */
- unsigned msb;           /* 1 = MSB, 0 = LSB aligned */
- unsigned rchan;         /* number channels for recording */
- unsigned pchan;         /* number channels for playback */
- unsigned rate;          /* frames per second */
- unsigned bufsz;         /* end-to-end buffer size (read-only) */
- unsigned xrun;          /* what to do on overrun/underrun */
- unsigned round;         /* optimal buffer size divisor */
- unsigned appbufsz;      /* minimum buffer size without xruns */
- int __pad[3];           /* for future use */
- unsigned int __magic;   /* for internal/debug purposes only */
-};
-
-struct sio_cap {
- struct sio_enc {                /* allowed encodings */
-  unsigned bits;                 /* bits per sample */
-  unsigned bps;                  /* bytes per sample */
-  unsigned sig;                  /* 1 = signed, 0 = unsigned */
-  unsigned le;                   /* 1 = LE, 0 = BE byte order */
-  unsigned msb;                  /* 1 = MSB, 0 = LSB aligned */
- } enc[SIO_NENC];
- unsigned rchan[SIO_NCHAN];      /* allowed rchans */
- unsigned pchan[SIO_NCHAN];      /* allowed pchans */
- unsigned rate[SIO_NRATE];       /* allowed rates */
- int __pad[7];                   /* for future use */
- unsigned nconf;                 /* num. of confs[] */
- struct sio_conf {
-  unsigned enc;                  /* bitmask of enc[] indexes */
-  unsigned rchan;                /* bitmask of rchan[] indexes */
-  unsigned pchan;                /* bitmask of pchan[] indexes */
-  unsigned rate;                 /* bitmask of rate[] indexes */
- } confs[SIO_NCONF];
-};
-
-struct sio_hdl * sio_open(const char * name, unsigned mode, int nbio_flag);
-void   sio_close  (struct sio_hdl * hdl);
-
-void   sio_initpar(struct sio_par * par);
-int    sio_setpar (struct sio_hdl * hdl, struct sio_par * par);
-int    sio_getpar (struct sio_hdl * hdl, struct sio_par * par);
-
-int    sio_getcap (struct sio_hdl * hdl, struct sio_cap * cap);
-
-int    sio_start  (struct sio_hdl * hdl);
-int    sio_stop   (struct sio_hdl * hdl);
-
-size_t sio_read   (struct sio_hdl * hdl,       void * addr, size_t nbytes);
-size_t sio_write  (struct sio_hdl * hdl, const void * addr, size_t nbytes);
-
-void   sio_onmove (struct sio_hdl * hdl, void (*cb)(void * arg, int delta), void * arg);
-
-int    sio_nfds   (struct sio_hdl * hdl);
-
-int    sio_pollfd (struct sio_hdl * hdl, struct pollfd * pfd, int events);
-
-int    sio_revents(struct sio_hdl * hdl, struct pollfd * pfd);
-
-int    sio_eof    (struct sio_hdl * hdl);
-
-int    sio_setvol (struct sio_hdl * hdl, unsigned vol);
-void   sio_onvol  (struct sio_hdl * hdl, void (*cb)(void * arg, unsigned vol), void * arg);
-
-// MIDI:
-struct mio_hdl * mio_open   (const char * name, unsigned mode, int nbio_flag);
-void             mio_close  (struct mio_hdl * hdl);
-size_t           mio_write  (struct mio_hdl * hdl, const void * addr, size_t nbytes);
-size_t           mio_read   (struct mio_hdl * hdl, void * addr, size_t nbytes);
-int              mio_nfds   (struct mio_hdl * hdl);
-int              mio_pollfd (struct mio_hdl * hdl, struct pollfd * pfd, int events);
-int              mio_revents(struct mio_hdl * hdl, struct pollfd * pfd);
-int              mio_eof    (struct mio_hdl * hdl);
-
-#endif
-
-//ll
Index: include/libroaryiff/libroaryiff.h
===================================================================
--- include/libroaryiff/libroaryiff.h	(revision 6052)
+++ 	(revision )
@@ -1,44 +1,0 @@
-//libroaryiff.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of libroaryiff a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroaryiff is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef _LIBROARYIFF_H_
-#define _LIBROARYIFF_H_
-
-#include <roaraudio.h>
-
-#include <Y2/Y.h>           /* Basic Y types and constants. */
-#include <Y2/Ylib.h>        /* YLib functions and structs. */
-
-#include <unistd.h>
-#include <string.h>
-#include <stdlib.h>
-
-// YID 0 is error like -1 on libroar!
-#define ROARYIFF_YID2ROAR(x) ((x)-1)
-#define ROARYIFF_ROAR2YID(x) ((x)+1)
-
-#endif
-
-//ll
Index: include/roaraudio.h
===================================================================
--- include/roaraudio.h	(revision 6067)
+++ include/roaraudio.h	(revision 0)
@@ -1,91 +1,27 @@
 //roaraudio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
 
 #ifndef _ROARAUDIO_H_
 #define _ROARAUDIO_H_
 
-#define  _ROAR_MKVERSION(a,b,c) (((uint32_t)(a) << 16) + ((uint32_t)(b) << 8) + (uint32_t)(c))
-
-#include <roaraudio/config.h>
-#include <roaraudio/compilerhacks.h>
-#include <roaraudio/targethacks.h>
-#include <roaraudio/muconthacks.h>
-#include <roaraudio/win32hacks.h> // we include this at the beginning of the file
-                                  // so we can define well known standard types known to everyone
-                                  // and everywhere but win32 here
-
-#define ROAR_VERSION _ROAR_MKVERSION(ROAR_VERSION_MAJOR, ROAR_VERSION_MINOR, ROAR_VERSION_REV)
-
-#if defined(DEBUG) && !defined(ROAR_SUPPORT_TRAP)
-#define ROAR_SUPPORT_TRAP
-#endif
-
-// consts we need to set depending on the OS and features:
-#if defined(ROAR_NEED_GNU_SOURCE) && !defined(_GNU_SOURCE)
-#define _GNU_SOURCE
-#endif
-
-#if defined(ROAR_NEED_BSD_VISIBLE) && !defined(__BSD_VISIBLE)
-#define __BSD_VISIBLE 1
-#endif
-
-#ifdef ROAR_HAVE_H_STDINT
-#include <stdint.h>
-#endif
-
 #include <stdlib.h>
-
-#ifdef ROAR_HAVE_H_UNISTD
 #include <unistd.h>
-#endif
-
 #include <stdio.h>
 #include <string.h>
 #include <errno.h>
+#include <sys/types.h>
+#include <limits.h>
 
-#ifdef ROAR_HAVE_H_SYS_TYPES
-#include <sys/types.h>
-#endif
+#include <arpa/inet.h>
 
-#ifdef ROAR_HAVE_H_SYS_SOCKET
 #include <sys/socket.h>
-#endif
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <sys/un.h>
 
-#include <limits.h>
-#if !defined(ROAR_TARGET_WIN32) && !defined(ROAR_TARGET_MICROCONTROLLER)
-#include <sys/mman.h>
-#endif
+#include <netdb.h>
 
-#ifdef ROAR_HAVE_H_SYS_STAT
-#include <sys/stat.h>
-#endif
+#include <roaraudio/config.h>
 
 // NOTE: we need this macro in some of our header files.
-// TODO: This is oubslute, we will remove it soon.
 #if INT_MAX >= 32767
 #define roar_intm16  int
@@ -96,143 +32,18 @@
 #endif
 
-// this is to avoid warning messages on platforms
-// where sizeof(void*) == 8 and szeof(int) == 4
-#ifdef __LP64__
-#define ROAR_INSTINT long int
-#else
-#define ROAR_INSTINT int
-#endif
-
-#ifndef __BEGIN_DECLS
-#ifdef __cplusplus
-# define __BEGIN_DECLS extern "C" {
-# define __END_DECLS }
-#else
-# define __BEGIN_DECLS
-# define __END_DECLS
-#endif
-#endif
-
-__BEGIN_DECLS
-
-#include <roaraudio/license.h>
-#include <roaraudio/vendors.h>
 #include <roaraudio/proto.h>
-#include <roaraudio/caps.h>
-#include <roaraudio/error.h>
 #include <roaraudio/audio.h>
 #include <roaraudio/stream.h>
 #include <roaraudio/client.h>
 #include <roaraudio/sample.h>
-#include <roaraudio/beep.h>
-#include <roaraudio/meta.h>
-#include <roaraudio/genre.h>
-#include <roaraudio/acl.h>
-#include <roaraudio/misc.h>
-#include <roaraudio/byteorder.h>
-#include <roaraudio/socket.h>
-#include <roaraudio/ltm.h>
-#include <roaraudio/notify.h>
 
 #include <libroar/libroar.h>
 
-// Some settings for roard:
-#ifndef ROAR_ROARD_BITS
-#define ROAR_ROARD_BITS 32
-#endif
+#define ROAR_DEFAULT_PORT        16002
+#define ROAR_DEFAULT_HOST        "localhost"
 
-// Some glocal network defaults:
-#ifndef ROAR_NET_INET4_LOCALHOST
-#define ROAR_NET_INET4_LOCALHOST "localhost"
-#endif
-#ifndef ROAR_NET_INET4_ANYHOST
-#define ROAR_NET_INET4_ANYHOST   "0.0.0.0"
-#endif
-
-#ifndef ROAR_NET_INET6_LOCALHOST
-#define ROAR_NET_INET6_LOCALHOST "ipv6-localhost"
-#endif
-#ifndef ROAR_NET_INET6_ANYHOST
-#define ROAR_NET_INET6_ANYHOST   "::"
-#endif
-
-// IP:
-#define ROAR_DEFAULT_PORT        16002
-
-// IPv4
-#define ROAR_DEFAULT_INET4_PORT  ROAR_DEFAULT_PORT
-#define ROAR_DEFAULT_INET4_HOST  ROAR_NET_INET4_LOCALHOST
-// aliases:
-#define ROAR_DEFAULT_HOST        ROAR_DEFAULT_INET4_HOST
-#define ROAR_DEFAULT_HOSTPORT    ROAR_DEFAULT_HOST ":16002"
-
-// IPv6:
-#define ROAR_DEFAULT_INET6_PORT  ROAR_DEFAULT_PORT
-#define ROAR_DEFAULT_INET6_HOST  ROAR_NET_INET6_LOCALHOST
-
-// UNIX Domain Sockets
 #define ROAR_DEFAULT_SOCK_GLOBAL "/tmp/roar"
 #define ROAR_DEFAULT_SOCK_USER   ".roar"
 
-// DECnet
-#define ROAR_DEFAULT_OBJECT      "roar"
-#define ROAR_DEFAULT_NUM         0
-#define ROAR_DEFAULT_LISTEN_OBJECT "::" ROAR_DEFAULT_OBJECT
-
-// now handled by configure:
-//#define ROAR_DEFAULT_SOCKGRP     "audio"
-
-
-// defines for emulations:
-// ESD:
-#define ROAR_DEFAULT_ESD_GSOCK   "/tmp/.esd/socket"
-#define ROAR_DEFAULT_ESD_PORT    16001
-// RSound:
-#define ROAR_DEFAULT_RSOUND_GSOCK  "/tmp/rsound"
-#define ROAR_DEFAULT_RSOUND_PORT   12345
-#define ROAR_DEFAULT_RSOUND_OBJECT "::rsound"
-// PulseAudio:
-#define ROAR_DEFAULT_PA_PORT     4712
-// RPlay:
-#define ROAR_DEFAULT_RPLAY_PORT  5556
-// Gopher:
-#define ROAR_DEFAULT_GOPHER_PORT 70
-// WWW/HTTP:
-#define ROAR_DEFAULT_HTTP_PORT   80
-
-#if defined(ROAR_HAVE_LIBWSOCK32) && defined(ROAR_HAVE_LIBWS2_32)
-#define ROAR_LIBS_WIN32          " -lwsock32 -lws2_32"
-#else
-#define ROAR_LIBS_WIN32          ""
-#endif
-
-#ifdef ROAR_HAVE_LIBSOCKET
-#define ROAR_LIBS_LIBSOCKET      " -lsocket"
-#else
-#define ROAR_LIBS_LIBSOCKET      ""
-#endif
-
-#ifdef ROAR_HAVE_LIBSENDFILE
-#define ROAR_LIBS_LIBSENDFILE    " -lsendfile"
-#else
-#define ROAR_LIBS_LIBSENDFILE    ""
-#endif
-
-#define ROAR_LIBS_NET_LIBS       ROAR_LIBS_LIBSOCKET ROAR_LIBS_WIN32
-
-#define ROAR_LIBS                "-lroar"       ROAR_LIBS_LIBSENDFILE ROAR_LIBS_NET_LIBS
-#define ROAR_LIBS_DSP            "-lroardsp "   ROAR_LIBS
-#define ROAR_LIBS_MIDI           "-lroarmidi "  ROAR_LIBS_DSP
-#define ROAR_LIBS_LIGHT          "-lroarlight " ROAR_LIBS
-#define ROAR_LIBS_EIO            "-lroareio "   ROAR_LIBS
-#define ROAR_CFLAGS              ""
-
-// comp libs:
-#define ROAR_LIBS_C_ESD          "-lroaresd "   ROAR_LIBS
-#define ROAR_LIBS_C_ARTSC        "-lroarartsc " ROAR_LIBS
-#define ROAR_LIBS_C_PULSE        "-lroarpulse " ROAR_LIBS
-#define ROAR_LIBS_C_PULSE_SIMPLE "-lroarpulse-simple " ROAR_LIBS_C_PULSE
-#define ROAR_LIBS_C_SNDIO        "-lroarsndio " ROAR_LIBS
-#define ROAR_LIBS_C_YIFF         "-lroaryiff "  ROAR_LIBS
 
 //some basic macros:
@@ -243,47 +54,19 @@
 #define ROAR_DEBUG_OUTFH stderr
 
-#ifndef ROAR_DBG_PREFIX
+#ifdef ROAR_DBG_PREFIX
+#undef ROAR_DBG_PREFIX
+#endif
 #define ROAR_DBG_PREFIX "roaraudio"
-#endif
 
 #define ROAR_DBG_FULLPREFIX "(" ROAR_DBG_PREFIX ": " __FILE__ ":%i): "
 
-// some default info levels:
-#define ROAR_DBG_INFO_NONE             0
-#define ROAR_DBG_INFO_NOTICE           1
-#define ROAR_DBG_INFO_INFO             2
-#define ROAR_DBG_INFO_VERBOSE          3
-
-#if !defined(__GNUC__)
- #define ROAR_DBG(format, ...)
- #define ROAR_ERR(format, ...)
- #define ROAR_WARN(format, ...)
- #define ROAR_INFO(format, level, ...)
-#elif __GNUC__ < 3
- #define ROAR_DBG(format, args...)
- #define ROAR_ERR(format, args...)
- #define ROAR_WARN(format, args...)
- #define ROAR_INFO(format, level, args...)
-#else
-
 #ifdef DEBUG
- #define ROAR_DBG(format, args...)  roar_debug_msg(ROAR_DEBUG_TYPE_DEBUG, __LINE__, __FILE__, ROAR_DBG_PREFIX, format, ## args)
+ #define ROAR_DBG(format, args...)  fprintf(ROAR_DEBUG_OUTFH, ROAR_DBG_FULLPREFIX "DEBUG: " format "\n", __LINE__, ## args)
 #else
  #define ROAR_DBG(format, args...)
 #endif
 
-#define ROAR_ERR(format, args...)  roar_debug_msg(ROAR_DEBUG_TYPE_ERROR, __LINE__, __FILE__, ROAR_DBG_PREFIX, format, ## args)
-#define ROAR_WARN(format, args...) roar_debug_msg(ROAR_DEBUG_TYPE_WARNING, __LINE__, __FILE__, ROAR_DBG_PREFIX, format, ## args)
+#define ROAR_ERR(format, args...)   fprintf(ROAR_DEBUG_OUTFH, ROAR_DBG_FULLPREFIX "Error: " format "\n", __LINE__, ## args)
 
-// INFO function:
-#ifdef DEBUG
- #define ROAR_INFO(format, level, args...) roar_debug_msg(ROAR_DEBUG_TYPE_INFO, __LINE__, __FILE__, ROAR_DBG_PREFIX, format, ## args)
-#elif defined(ROAR_DBG_INFOVAR)
- #define ROAR_INFO(format, level, args...) if ( (ROAR_DBG_INFOVAR) >= (level) ) roar_debug_msg(ROAR_DEBUG_TYPE_INFO, __LINE__, __FILE__, ROAR_DBG_PREFIX, format, ## args)
-#else
- #define ROAR_INFO(format, level, args...)
-#endif
-
-#endif
 
 #ifdef ROAR_HAVE_SAFE_OVERFLOW
@@ -293,11 +76,22 @@
 #endif
 
-#ifdef ROAR_HAVE_STRCASESTR
-#define _roar_strcasestr(a,b) strcasestr((a), (b))
+
+
+#if BYTE_ORDER == BIG_ENDIAN
+
+#define ROAR_NET2HOST32(x) (x)
+#define ROAR_HOST2NET32(x) (x)
+#define ROAR_NET2HOST16(x) (x)
+#define ROAR_HOST2NET16(x) (x)
+
+//#elif BYTE_ORDER == LITTLE_ENDIAN
 #else
-#define _roar_strcasestr(a,b) NULL
+
+#define ROAR_NET2HOST32(x) ntohl((x))
+#define ROAR_HOST2NET32(x) htonl((x))
+#define ROAR_NET2HOST16(x) ntohs((x))
+#define ROAR_HOST2NET16(x) htons((x))
+
 #endif
-
-__END_DECLS
 
 #endif
Index: include/roaraudio/.cvsignore
===================================================================
--- include/roaraudio/.cvsignore	(revision 357)
+++ 	(revision )
@@ -1,1 +1,0 @@
-config.h*
Index: include/roaraudio/acl.h
===================================================================
--- include/roaraudio/acl.h	(revision 6052)
+++ 	(revision )
@@ -1,90 +1,0 @@
-//acl.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_ACL_H_
-#define _ROARAUDIO_ACL_H_
-
-// basic rule constants
-#define ROAR_ACL_DENY      0
-#define ROAR_ACL_REJECT    ROAR_ACL_DENY
-#define ROAR_ACL_ALLOW     1
-#define ROAR_ACL_ALLOW_OWN 2
-
-struct roar_acl_target {
- int connect;
- int stream;
- int connect_to;
- int exit;
- int standby;
- int kick;
- int list;
- int meta;
- int volume;
- int get_client;
- int get_stream;
- int beep;
-};
-
-#define ROAR_ACL_CHK(r,w,o) (( ((r)->w) == ROAR_ACL_ALLOW || (((r)->w) == ROAR_ACL_ALLOW_OWN && (o)) ) ? 1 : 0)
-
-#define ROAR_ACL_CMP_NOT     0x10
-#define ROAR_ACL_CMP_EQ      0x01
-
-#define ROAR_ACL_TYPE_ID     1
-#define ROAR_ACL_TYPE_INT    1
-#define ROAR_ACL_TYPE_VOID   1
-
-struct roar_acl_cmp {
- int op;
- int type;
- union {
-  id_t   id;
-  int    i;
-  void * p;
- } data;
- int datalen;
-};
-
-// A rule.
-// All entrys may be NULL to indicate not to compare them.
-// The only option is addr_use_inet_port which is used to disable checking of
-// the remote IP.
-struct roar_acl_rule {
- pid_t           * pid;
- uid_t           * uid;
- gid_t           * gid;
- char            * username;
- int             * cookie;
- struct sockaddr * addr;
- socklen_t         addrlen;
- int               addr_use_inet_port;
-};
-
-#endif
-
-//ll
Index: include/roaraudio/audio.h
===================================================================
--- include/roaraudio/audio.h	(revision 6052)
+++ include/roaraudio/audio.h	(revision 0)
@@ -1,156 +1,17 @@
 //audio.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
 
 #ifndef _ROARAUDIO_AUDIO_H_
 #define _ROARAUDIO_AUDIO_H_
 
-// TODO: move this block to a more logical location.
 #define ROAR_CODEC_PCM_LE  ROAR_CODEC_PCM_S_LE
 #define ROAR_CODEC_PCM_BE  ROAR_CODEC_PCM_S_BE
 #define ROAR_CODEC_PCM_PDP ROAR_CODEC_PCM_S_PDP
 
-
 /*
  Bits:
  76543210
- |||||||\---\ byte-
- ||||||\----/ order
- |||||\-----> unsigned?
- ||||\------> PCM(0) or MIDI(1)?
- |||\-------> PCM/MIDI(0) or hi-level codecs(1)
- ||\--------> MISC(0) or RIFF/WAVE like(1)
- |\---------> first set(0) or second set(1)
- \----------> (0)
-
- BB = Byte order / MSB/LSB
-
- -- First Set:
-
- MIDI 0x08:
- 76543210
-      000 0x08 -> MIDI File
-
- hi-level 0x10:
-  76543210
-      0000 0x10 -> Ogg Vorbis
-      0001 0x11 -> Native FLAC
-      0010 0x12 -> Ogg Speex
-      0011 0x13 -> Reserved for CELT
-      0100 0x14 -> Ogg FLAC
-      0101 0x15 -> Ogg General
-      0110 0x16 -> Ogg CELT
-      0111 0x17 -> Ogg
-      [...]
-      **** 0x1a -> ROAR CELT
-      **** 0x1b -> ROAR SPEEX
-      **** 0x1c -> RAUM
-      **** 0x1d -> RAUM Vorbis
-      **** 0x1e -> RAUM FLAC
-
- RIFF/WAVE like 0x20:
-  76543210
-      0000 0x20 -> RIFF/WAVE
-
- LOG Codecs 0x30:
-  76543210
-      00BB 0x30 -> A-Law (base)
-      01BB 0x34 -> mu-Law (base)
-
- -- Second Set:
-
- Bits:
- 76543210
- |||||||\---\ byte-
- ||||||\----/ order
- |||||\-----> unsigned? (or other flags)
- ||||\------> META: text(0) or binary(1)
- |||\-------> META(0)/CONTAINER(1)
- ||\--------> Specal codecs(0)
- |\---------> second set(1)
- \----------> (0)
-
- Meta Codecs 0x40:
-  76543210
-      0000 0x40 -> Meta Text: Vorbis Comment Like
-      [...]
-      0100 0x44 -> Meta Text: RoarAudio Like
-      [...]
-      11BB 0x4c -> Meta Binary: RoarAudio Like
-
- Container 0x50:
-  76543210
-      0000 0x50 -> Null container: pass
-      0001 0x51 -> Gzip
-      0010 0x52 -> Bzip2
-      0011 0x53 -> OpenPGP bin
-      0100 0x54 -> OpenPGP asc
-      0101 0x55 -> TAR
-
- Bits:
- 76543210
- |||||||\---\ byte-
- ||||||\----/ order
- |||||\-----> unsigned? (or other flags)
- ||||\------> (0)
- |||\-------> MIDI(0)/Light(1)
- ||\--------> MIDI and Light(1)
- |\---------> second set(1)
- \----------> (0)
-
- MIDI 0x60:
-  76543210
-      0000 -> MIDI
-
- Light 0x70:
-  76543210
-      0000 -> DMX512
-      0001 -> RoarDMX
-
- Bits:
- 76543210
- |||||||\---\ byte-
- ||||||\----/ order
- |||||\-----> unsigned? (or other flags)
- ||||\------> ID
- |||\-------> RDTCS(0) / User/Vendor Specific(1)
- ||\--------> first subset(0)
- |\---------> first set(0)
- \----------> (1)
-
- RDTCS 0x80:
-  76543210
-      0000 -> RDS
-
- User  0x90:
-  76543210
-      0000 -> USER0
-      [...]
-      1111 -> USER15
-
+      ||\---\ byte-
+      |\----/ order
+      \-----> unsigned?
 */
 
@@ -159,15 +20,8 @@
 
 #define ROAR_CODEC_UNSIGNED    (1 << 2)
-#define ROAR_CODEC_LE          0x01
-#define ROAR_CODEC_BE          0x02
-#define ROAR_CODEC_PDP         0x03
 
-#define ROAR_CODEC_MSB         0x00
-#define ROAR_CODEC_LSB         0x01
-
-#define ROAR_CODEC_PCM       0x00
-#define ROAR_CODEC_PCM_S_LE  (ROAR_CODEC_PCM | ROAR_CODEC_LE )
-#define ROAR_CODEC_PCM_S_BE  (ROAR_CODEC_PCM | ROAR_CODEC_BE )
-#define ROAR_CODEC_PCM_S_PDP (ROAR_CODEC_PCM | ROAR_CODEC_PDP)
+#define ROAR_CODEC_PCM_S_LE  0x01
+#define ROAR_CODEC_PCM_S_BE  0x02
+#define ROAR_CODEC_PCM_S_PDP 0x03
 
 #define ROAR_CODEC_PCM_U_LE  (ROAR_CODEC_PCM_S_LE  | ROAR_CODEC_UNSIGNED)
@@ -175,129 +29,20 @@
 #define ROAR_CODEC_PCM_U_PDP (ROAR_CODEC_PCM_S_PDP | ROAR_CODEC_UNSIGNED)
 
-#define ROAR_CODEC_MIDI_FILE    0x08
-
-#define ROAR_CODEC_OGG_VORBIS   0x10
-#define ROAR_CODEC_FLAC         0x11 /* native FLAC without Ogg container */
-#define ROAR_CODEC_OGG_SPEEX    0x12
-/* #define ROAR_CODEC_CELT/OGG_CELT 0x13 Reserved for CELT */
-#define ROAR_CODEC_OGG_FLAC     0x14
-#define ROAR_CODEC_OGG_GENERAL  0x15
-#define ROAR_CODEC_OGG_CELT     0x16
-#define ROAR_CODEC_OGG          0x17
-#define ROAR_CODEC_OGG_OPUS     0x18
-
-#define ROAR_CODEC_ROAR_OPUS    0x19
-#define ROAR_CODEC_ROAR_CELT    0x1a
-#define ROAR_CODEC_ROAR_SPEEX   0x1b
-
-#define ROAR_CODEC_RAUM         0x1c
-#define ROAR_CODEC_RAUM_VORBIS  0x1d
-#define ROAR_CODEC_RAUM_FLAC    0x1e
-
-#define ROAR_CODEC_RIFF_WAVE    0x20
-#define ROAR_CODEC_RIFX         (ROAR_CODEC_RIFF_WAVE | ROAR_CODEC_BE)
-#define ROAR_CODEC_AU           0x24
-#define ROAR_CODEC_AIFF         0x28
-
-#define ROAR_CODEC_ALAW         0x30
-#define ROAR_CODEC_AUTLAW_LE    (ROAR_CODEC_ALAW|ROAR_CODEC_LE)
-#define ROAR_CODEC_AUTLAW_BE    (ROAR_CODEC_ALAW|ROAR_CODEC_BE)
-#define ROAR_CODEC_AUTLAW       ROAR_CODEC_AUTLAW_BE
-#define ROAR_CODEC_MULAW        0x34
-#define ROAR_CODEC_MUUTLAW_LE   (ROAR_CODEC_MULAW|ROAR_CODEC_LE)
-#define ROAR_CODEC_MUUTLAW_BE   (ROAR_CODEC_MULAW|ROAR_CODEC_BE)
-#define ROAR_CODEC_MUUTLAW      ROAR_CODEC_MUUTLAW_BE
-#define ROAR_CODEC_GSM          0x38
-#define ROAR_CODEC_GSM49        0x39
-#define ROAR_CODEC_BRR          0x3c /* SPC-700 Bit Rate Reduction of              */
-                                     /* Super Nintendo Entertainment System (SNES) */
-
-// Meta Codecs:
-#define ROAR_CODEC_META_VCLT    0x40 /* VCLT = Vorbis Comment Like Text */
-#define ROAR_CODEC_META_RALT    0x44 /* RALT = RoarAudio Like Text      */
-#define ROAR_CODEC_META_RALB    0x4c /* RALB = RoarAudio Like Binary    */
-                                     /* if no byte order is given then you
-                                        should assume BE as it is network
-                                        byte order                     */
-#define ROAR_CODEC_META_RALB_LE  (ROAR_CODEC_META_RALB | ROAR_CODEC_LE )
-#define ROAR_CODEC_META_RALB_BE  (ROAR_CODEC_META_RALB | ROAR_CODEC_BE )
-#define ROAR_CODEC_META_RALB_PDP (ROAR_CODEC_META_RALB | ROAR_CODEC_PDP)
-
-// Container Codecs:
-/*
- Container 0x50:
-  76543210
-      0000 0x50 -> Null container: pass
-      0001 0x51 -> Gzip
-      0010 0x52 -> Bzip2
-      0011 0x53 -> OpenPGP bin
-      0100 0x54 -> OpenPGP asc
-      0101 0x55 -> TAR
-*/
-#define ROAR_CODEC_CONT_NULL    0x50
-#define ROAR_CODEC_CONT_BASE    ROAR_CODEC_CONT_NULL
-#define ROAR_CODEC_CONT_GZIP    0x51
-#define ROAR_CODEC_CONT_BZIP2   0x52
-#define ROAR_CODEC_CONT_OPGPBIN 0x53
-#define ROAR_CODEC_CONT_OPGPASC 0x54
-#define ROAR_CODEC_CONT_TAR     0x55
-
-
-// MIDI:
-#define ROAR_CODEC_MIDI         0x60
-#define ROAR_CODEC_ROARMIDI     0x64
-
-// Light Control:
-#define ROAR_CODEC_DMX512       0x70
-#define ROAR_CODEC_ROARDMX      0x71
-
-// RDTCS:
-#define ROAR_CODEC_RDS          0x80
-
-// User specific:
-#define ROAR_CODEC_USER0        0x90
-#define ROAR_CODEC_USER1        0x91
-#define ROAR_CODEC_USER2        0x92
-#define ROAR_CODEC_USER3        0x93
-#define ROAR_CODEC_USER4        0x94
-#define ROAR_CODEC_USER5        0x95
-#define ROAR_CODEC_USER6        0x96
-#define ROAR_CODEC_USER7        0x97
-#define ROAR_CODEC_USER8        0x98
-#define ROAR_CODEC_USER9        0x99
-#define ROAR_CODEC_USER10       0x9a
-#define ROAR_CODEC_USER11       0x9b
-#define ROAR_CODEC_USER12       0x9c
-#define ROAR_CODEC_USER13       0x9d
-#define ROAR_CODEC_USER14       0x9e
-#define ROAR_CODEC_USER15       0x9f
-
 #if BYTE_ORDER == BIG_ENDIAN
 
-#define ROAR_CODEC_NATIVE_ENDIAN ROAR_CODEC_BE
-
-#define ROAR_CODEC_PCM_S   ROAR_CODEC_PCM_S_BE
-#define ROAR_CODEC_PCM_U   ROAR_CODEC_PCM_U_BE
+#define ROAR_CODEC_DEFAULT ROAR_CODEC_PCM_BE
 #define ROAR_BE2DEF(x) (x)
 
 #elif BYTE_ORDER == LITTLE_ENDIAN
 
-#define ROAR_CODEC_NATIVE_ENDIAN ROAR_CODEC_LE
-
-#define ROAR_CODEC_PCM_S   ROAR_CODEC_PCM_S_LE
-#define ROAR_CODEC_PCM_U   ROAR_CODEC_PCM_U_LE
+#define ROAR_CODEC_DEFAULT ROAR_CODEC_PCM_LE
 #define ROAR_LE2DEF(x) (x)
 
 #else
 
-#define ROAR_CODEC_NATIVE_ENDIAN ROAR_CODEC_PDP
-
-#define ROAR_CODEC_PCM_S   ROAR_CODEC_PCM_S_PDP
-#define ROAR_CODEC_PCM_U   ROAR_CODEC_PCM_U_PDP
+#define ROAR_CODEC_DEFAULT ROAR_CODEC_PCM_PDP
 #define ROAR_PDP2DEF(x) (x)
 
 #endif
-
-#define ROAR_CODEC_DEFAULT ROAR_CODEC_PCM_S
 
 
@@ -306,62 +51,20 @@
 #define ROAR_BITS_MAX             32
 
-#ifndef ROAR_BITS_DEFAULT
 #define ROAR_BITS_DEFAULT         16
-#endif
-#ifndef ROAR_CHANNELS_DEFAULT
 #define ROAR_CHANNELS_DEFAULT      2
-#endif
-#ifndef ROAR_RATE_DEFAULT
 #define ROAR_RATE_DEFAULT      44100
-#endif
-
-#define ROAR_MIDI_TICKS_PER_BEAT  96
-#define ROAR_MIDI_BITS             8
-#define ROAR_MIDI_CHANNELS_DEFAULT 16
-
-#define ROAR_MAX_CHANNELS         64
-
-#define ROAR_SET_VOL_ALL           1
-#define ROAR_SET_VOL_ONE           2
-#define ROAR_SET_VOL_MS            3
-#define ROAR_SET_VOL_UNMAPPED      4
-
-
-#define ROAR_SPEEX_MAX_CC          256
-#define ROAR_SPEEX_MAGIC           "RoarSpeex"
-#define ROAR_SPEEX_MAGIC_LEN       9
-#define ROAR_SPEEX_MODE_NB         1
-#define ROAR_SPEEX_MODE_WB         2
-#define ROAR_SPEEX_MODE_UWB        3
-
-#define ROAR_CELT_MAGIC_0          "RoarCELT0"
-#define ROAR_CELT_MAGIC_1          "RoarCELT1"
-#define ROAR_CELT_MAGIC_LEN        9
-
-#ifdef ROAR_HAVE_CELT_VERSION_0_7_1
-#define ROAR_CELT_MAGIC            ROAR_CELT_MAGIC_1
-#else
-#define ROAR_CELT_MAGIC            ROAR_CELT_MAGIC_0
-#endif
-
-#define ROAR_AUDIO_INFO_TYPE    uint32_t
-#define ROAR_AUDIO_INFO_INVALID ((ROAR_AUDIO_INFO_TYPE)-1)
 
 struct roar_audio_info {
- ROAR_AUDIO_INFO_TYPE rate;
- ROAR_AUDIO_INFO_TYPE bits;
- ROAR_AUDIO_INFO_TYPE channels;
- ROAR_AUDIO_INFO_TYPE codec;
+ unsigned int rate;
+ unsigned int bits;
+ unsigned int channels;
+ unsigned int codec;
 };
 
 struct roar_mixer_settings {
- //unsigned      channels;
- uint16_t   scale;
- uint16_t   rpg_mul; // rpg = ReplayGain
- uint16_t   rpg_div;
- uint16_t   mixer[ROAR_MAX_CHANNELS];
+ unsigned      channels;
+ roar_intm16   scale;
+ roar_intm16 * mixer;
 };
-
-#define ROAR_MIXER(x) ((struct roar_mixer_settings *)x)
 
 #endif
Index: include/roaraudio/beep.h
===================================================================
--- include/roaraudio/beep.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//beep.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_BEEP_H_
-#define _ROARAUDIO_BEEP_H_
-
-#define ROAR_BEEP_MAX_VOL  65535
-#define ROAR_BEEP_MAX_TIME 65535 /* ms */
-#define ROAR_BEEP_MAX_FREQ 65535 /* Hz */
-#define ROAR_BEEP_MAX_POS  32767
-
-#define ROAR_BEEP_DEFAULT_VOL  (ROAR_BEEP_MAX_VOL/4)
-#define ROAR_BEEP_DEFAULT_TIME 256 /* ms */
-#define ROAR_BEEP_DEFAULT_FREQ 440 /* Hz */
-#define ROAR_BEEP_DEFAULT_TYPE ROAR_BEEP_TYPE_DEFAULT
-
-#define ROAR_BEEP_TYPE_DEFAULT            0
-#define ROAR_BEEP_TYPE_CBELL              1
-#define ROAR_BEEP_TYPE_XBELL              2
-#define ROAR_BEEP_TYPE_ERROR              3
-
-#endif
-
-//ll
Index: include/roaraudio/byteorder.h
===================================================================
--- include/roaraudio/byteorder.h	(revision 6052)
+++ 	(revision )
@@ -1,94 +1,0 @@
-//byteorder.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_BYTEORDER_H_
-#define _ROARAUDIO_BYTEORDER_H_
-
-#define _ROAR_MOVE_BYTE(x,p,n) ( \
-                                ((uint_least64_t)( \
-                                 ((uint_least64_t)((uint_least64_t)(x) & ((uint_least64_t)0xFFUL << (8*(p))))) >> (8*(p)) \
-                                )) << ((n)-8*((p)+1)) \
-                               )
-
-#if BYTE_ORDER == BIG_ENDIAN && !defined(ROAR_TARGET_WIN32)
-
-#define ROAR_NET2HOST64(x) (x)
-#define ROAR_HOST2NET64(x) (x)
-#define ROAR_NET2HOST32(x) (x)
-#define ROAR_HOST2NET32(x) (x)
-#define ROAR_NET2HOST16(x) (x)
-#define ROAR_HOST2NET16(x) (x)
-
-#define ROAR_BE2HOST64(x) (x)
-#define ROAR_HOST2BE64(x) (x)
-#define ROAR_BE2HOST32(x) (x)
-#define ROAR_HOST2BE32(x) (x)
-#define ROAR_BE2HOST16(x) (x)
-#define ROAR_HOST2BE16(x) (x)
-
-#define ROAR_LE2HOST32(x) ROAR_HOST2LE32(x)
-#define ROAR_HOST2LE32(x) (_ROAR_MOVE_BYTE((x), 0, 32) | _ROAR_MOVE_BYTE((x), 1, 32) | \
-                           _ROAR_MOVE_BYTE((x), 2, 32) | _ROAR_MOVE_BYTE((x), 3, 32) )
-#define ROAR_LE2HOST16(x) ROAR_HOST2LE16(x)
-#define ROAR_HOST2LE16(x) (_ROAR_MOVE_BYTE((x), 0, 16) | _ROAR_MOVE_BYTE((x), 1, 16) )
-
-//#elif BYTE_ORDER == LITTLE_ENDIAN
-#else
-#if BYTE_ORDER == LITTLE_ENDIAN
-#define ROAR_NET2HOST64(x) ROAR_HOST2NET64(x)
-#define ROAR_HOST2NET64(x) ((uint_least64_t) \
-                            (_ROAR_MOVE_BYTE((x), 0, 64) | _ROAR_MOVE_BYTE((x), 1, 64) | \
-                             _ROAR_MOVE_BYTE((x), 2, 64) | _ROAR_MOVE_BYTE((x), 3, 64) | \
-                             _ROAR_MOVE_BYTE((x), 4, 64) | _ROAR_MOVE_BYTE((x), 5, 64) | \
-                             _ROAR_MOVE_BYTE((x), 6, 64) | _ROAR_MOVE_BYTE((x), 7, 64) ) )
-#else
-/* PDP byte order */
-#endif
-
-#define ROAR_NET2HOST32(x) ntohl((x))
-#define ROAR_HOST2NET32(x) htonl((x))
-#define ROAR_NET2HOST16(x) ntohs((x))
-#define ROAR_HOST2NET16(x) htons((x))
-
-#define ROAR_BE2HOST32(x) ntohl(x)
-#define ROAR_HOST2BE32(x) htonl(x)
-#define ROAR_BE2HOST16(x) ntohs(x)
-#define ROAR_HOST2BE16(x) htons(x)
-
-#define ROAR_LE2HOST64(x) (x)
-#define ROAR_HOST2LE64(x) (x)
-#define ROAR_LE2HOST32(x) (x)
-#define ROAR_HOST2LE32(x) (x)
-#define ROAR_LE2HOST16(x) (x)
-#define ROAR_HOST2LE16(x) (x)
-
-#endif
-
-#endif
-
-//ll
Index: include/roaraudio/caps.h
===================================================================
--- include/roaraudio/caps.h	(revision 6052)
+++ 	(revision )
@@ -1,61 +1,0 @@
-//caps.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_CAPS_H_
-#define _ROARAUDIO_CAPS_H_
-
-// cap flags:
-#define ROAR_CF_REQUEST          0x0001
-
-// cap types:
-#define ROAR_CT_CAPS             0
-#define ROAR_CT_STANDARDS        1
-
-// standard vendors:
-#define ROAR_STDV_ROARAUDIO      ((uint32_t)0)
-#define ROAR_STDV_PROTO          ((uint32_t)1)
-#define ROAR_STDV_RFC            ((uint32_t)2)
-
-// data macros for standards:
-#define ROAR_STD_MASK_VENDOR     ((uint32_t)0xFF000000)
-#define ROAR_STD_MASK_STD        ((uint32_t)0x00FFFF00)
-#define ROAR_STD_MASK_VERSION    ((uint32_t)0x000000FF)
-
-#define ROAR_STD_MAKE(vendor,standard,version) ((((uint32_t)(vendor)   & 0x00FF) << 24) | \
-                                                (((uint32_t)(standard) & 0xFFFF) <<  8) | \
-                                                 ((uint32_t)(version)  & 0x00FF)        )
-
-#define ROAR_STD_MAKE_RFC(rfc) ROAR_STD_MAKE(ROAR_STDV_RFC, (rfc), 0)
-
-#define ROAR_STD_VENDOR(x)  (((x) & ROAR_STD_MASK_VENDOR) >> 24)
-#define ROAR_STD_STD(x)     (((x) & ROAR_STD_MASK_STD)    >>  8)
-#define ROAR_STD_VERSION(x) ( (x) & ROAR_STD_MASK_VERSION      )
-
-#endif
-
-//ll
Index: include/roaraudio/client.h
===================================================================
--- include/roaraudio/client.h	(revision 6071)
+++ include/roaraudio/client.h	(revision 0)
@@ -1,29 +1,3 @@
-//client.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
+//stream.h:
 
 #ifndef _ROARAUDIO_CLIENT_H_
@@ -33,96 +7,15 @@
 
 #define ROAR_CLIENTS_MAX 64
-#define ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT 12
+#define ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT 4
 
-#define ROAR_PROTO_NONE             0
-#define ROAR_PROTO_ROARAUDIO        1
-#define ROAR_PROTO_ESOUND           2
-#define ROAR_PROTO_AUTO             3 /* auto detect */
-#define ROAR_PROTO_HTTP             4
-#define ROAR_PROTO_GOPHER           5
-#define ROAR_PROTO_ICY              7 /* Nullsoft ICY */
-#define ROAR_PROTO_SIMPLE           8 /* PulseAudio Simple */
-#define ROAR_PROTO_RSOUND           9
-#define ROAR_PROTO_RPLAY           10
-#define ROAR_PROTO_IRC             11 /* ID just for fun */
-#define ROAR_PROTO_DCC             12
-#define ROAR_PROTO_ECHO            13 /* for testing and stuff */
-#define ROAR_PROTO_DISCARD         14 /* RFC 863 */
-#define ROAR_PROTO_WHOIS           15
-#define ROAR_PROTO_FINGER          16
-#define ROAR_PROTO_QUOTE           17 /* RFC 865: Quote of the Day Protocol */
-#define ROAR_PROTO_DAYTIME         18
-#define ROAR_PROTO_GAME            19 /* a game, may be any game */
-#define ROAR_PROTO_TELNET          20
-#define ROAR_PROTO_DHCP            21
-#define ROAR_PROTO_SSH             22
-#define ROAR_PROTO_TIME            23 /* Time protocol, RFC 868 */
-#define ROAR_PROTO_RLOGIN          24
-#define ROAR_PROTO_RPLD            25 /* RoarAudio Playlist Daemon Protocol */
-#define ROAR_PROTO_MPD             26 /* Music Player Daemon */
-#define ROAR_PROTO_RTP             27 /* Real-time Transport Protocol */
-#define ROAR_PROTO_RTCP            28 /* RealTime Control Protocol */
-#define ROAR_PROTO_RTSP            29 /* Real-Time Streaming Protocol */
-#define ROAR_PROTO_SIP             30 /* Session Initiation Protocol */
-
-/* Dynamic defined protocols.
- * Those IDs MUST NOT be used on wire, stored on disk or
- * leave the process any other way.
- */
-#define ROAR_PROTO_DYNAMIC0       208
-#define ROAR_PROTO_DYNAMIC1       209
-#define ROAR_PROTO_DYNAMIC2       210
-#define ROAR_PROTO_DYNAMIC3       211
-#define ROAR_PROTO_DYNAMIC4       212
-#define ROAR_PROTO_DYNAMIC5       213
-#define ROAR_PROTO_DYNAMIC6       214
-#define ROAR_PROTO_DYNAMIC7       215
-#define ROAR_PROTO_DYNAMIC8       216
-#define ROAR_PROTO_DYNAMIC9       217
-#define ROAR_PROTO_DYNAMIC10      218
-#define ROAR_PROTO_DYNAMIC11      219
-#define ROAR_PROTO_DYNAMIC12      220
-#define ROAR_PROTO_DYNAMIC13      221
-#define ROAR_PROTO_DYNAMIC14      222
-#define ROAR_PROTO_DYNAMIC15      223
-
-/* User defined protocols.
- * IDs may be used on wire or stored on disk if meaning of them
- * was agreed on before. This could e.g. be done using the CAPS command.
- */
-#define ROAR_PROTO_USER0          224
-#define ROAR_PROTO_USER1          225
-#define ROAR_PROTO_USER2          226
-#define ROAR_PROTO_USER3          227
-#define ROAR_PROTO_USER4          228
-#define ROAR_PROTO_USER5          229
-#define ROAR_PROTO_USER6          230
-#define ROAR_PROTO_USER7          231
-#define ROAR_PROTO_USER8          232
-#define ROAR_PROTO_USER9          233
-#define ROAR_PROTO_USER10         234
-#define ROAR_PROTO_USER11         235
-#define ROAR_PROTO_USER12         236
-#define ROAR_PROTO_USER13         237
-#define ROAR_PROTO_USER14         238
-#define ROAR_PROTO_USER15         239
-
-
-#define ROAR_BYTEORDER_UNKNOWN      0x00
-#define ROAR_BYTEORDER_LE           ROAR_CODEC_LE
-#define ROAR_BYTEORDER_BE           ROAR_CODEC_BE
-#define ROAR_BYTEORDER_PDP          ROAR_CODEC_PDP
-#define ROAR_BYTEORDER_NETWORK      ROAR_BYTEORDER_BE
-
-#if BYTE_ORDER == BIG_ENDIAN
-#define ROAR_BYTEORDER_NATIVE       ROAR_CODEC_BE
-#elif BYTE_ORDER == LITTLE_ENDIAN
-#define ROAR_BYTEORDER_NATIVE       ROAR_CODEC_LE
-#else
-#define ROAR_BYTEORDER_NATIVE       ROAR_CODEC_PDP
-#endif
-
-#define ROAR_CLIENTPASS_FLAG_NONE    0x0000
-#define ROAR_CLIENTPASS_FLAG_LISTEN  0x0001
+struct roar_client {
+ int fh; /* controll connection */
+// int last_stream; /* id of the last stream created */
+ char name[ROAR_BUFFER_NAME];
+ int pid;
+ char host[ROAR_BUFFER_NAME];
+ int execed;
+ int streams[ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT];
+};
 
 #endif
Index: include/roaraudio/compilerhacks.h
===================================================================
--- include/roaraudio/compilerhacks.h	(revision 6052)
+++ 	(revision )
@@ -1,93 +1,0 @@
-//compilerhacks.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_COMPILERHACKS_H_
-#define _ROARAUDIO_COMPILERHACKS_H_
-
-// just informative macros:
-#define _LIBROAR_GOOD_CAST
-#define _LIBROAR_BAD_CAST
-
-#if defined(__GNUC__) && __GNUC__ >= 4
-#define _LIBROAR_ATTR_DEPRECATED        __attribute__((deprecated))
-#define _LIBROAR_ATTR_PURE              __attribute__ ((pure))
-#define _LIBROAR_ATTR_USE_RESULT        __attribute__ ((warn_unused_result))
-#define _LIBROAR_ATTR_PRINTF(str,args)  __attribute__ ((format (printf, str, args)))
-
-// gcc does not only add a warning on NULL argument for the following
-// but also asumes they are never NULL (but allows them to be NULL)
-// and breaks our check this way.
-#if 0
-#define _LIBROAR_ATTR_NONNULL(x, index...) __attribute__((nonnull ( x, ##index )))
-#define _LIBROAR_ATTR_NONNULL_ALL       __attribute__((nonnull))
-#endif
-#endif
-
-// add more defintions for other compilers here.
-
-
-
-#ifndef _LIBROAR_ATTR_DEPRECATED
-#define _LIBROAR_ATTR_DEPRECATED
-#endif
-#ifndef _LIBROAR_ATTR_NONNULL
-#define _LIBROAR_ATTR_NONNULL(index...)
-#endif
-#ifndef _LIBROAR_ATTR_NONNULL_ALL
-#define _LIBROAR_ATTR_NONNULL_ALL
-#endif
-#ifndef _LIBROAR_ATTR_PURE
-#define _LIBROAR_ATTR_PURE
-#endif
-#ifndef _LIBROAR_ATTR_USE_RESULT
-#define _LIBROAR_ATTR_USE_RESULT
-#endif
-#ifndef _LIBROAR_ATTR_PRINTF
-#define _LIBROAR_ATTR_PRINTF(str,args)
-#endif
-
-#ifndef _LIBROAR_IGNORE_RET
-#define _LIBROAR_IGNORE_RET(x) ((void)((x)+1))
-#endif
-
-#ifndef _LIBROAR_NOATTR_TO_STATIC
-#define _LIBROAR_ATTR_TO_STATIC _LIBROAR_ATTR_DEPRECATED
-#else
-#define _LIBROAR_ATTR_TO_STATIC
-#endif
-
-#ifdef _LIBROAR_NOATTR_WARNINGS
-#undef _LIBROAR_ATTR_DEPRECATED
-#define _LIBROAR_ATTR_DEPRECATED
-#undef _LIBROAR_ATTR_USE_RESULT
-#define _LIBROAR_ATTR_USE_RESULT
-#endif
-
-#endif
-
-//ll
Index: include/roaraudio/config.h.OLD
===================================================================
--- include/roaraudio/config.h.OLD	(revision 323)
+++ include/roaraudio/config.h.OLD	(revision 0)
@@ -6,14 +6,5 @@
 #define ROAR_HAVE_ESD
 #define ROAR_HAVE_LIBAO
-#define ROAR_HAVE_LIBVORBIS
-#define ROAR_HAVE_LIBVORBISFILE
-
-#define ROAR_HAVE_LIBCELT
-
 #define ROAR_HAVE_SAFE_OVERFLOW
-
-#define ROAR_HAVE_LINUX_SENDFILE
-
-#define ROAR_HAVE_MLOCK
 
 #endif
Index: include/roaraudio/error.h
===================================================================
--- include/roaraudio/error.h	(revision 6052)
+++ 	(revision )
@@ -1,136 +1,0 @@
-//error.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_ERROR_H_
-#define _ROARAUDIO_ERROR_H_
-
-#define ROAR_ERROR_UNKNOWN     -1 /* Unknown (maybe no) error */
-#define ROAR_ERROR_NONE         0 /* No error */
-#define ROAR_ERROR_PERM         1 /* Operation not permitted */
-#define ROAR_ERROR_NOENT        2 /* No such file or directory */
-#define ROAR_ERROR_BADMSG       3 /* Bad message */
-#define ROAR_ERROR_BUSY         4 /* Device or resource busy */
-#define ROAR_ERROR_CONNREFUSED  5 /* Connection refused */
-#define ROAR_ERROR_NOSYS        6 /* Function not implemented */
-#define ROAR_ERROR_NOTSUP       7 /* Operation not supported */
-#define ROAR_ERROR_PIPE         8 /* Broken pipe */
-#define ROAR_ERROR_PROTO        9 /* Protocol error */
-#define ROAR_ERROR_RANGE       10 /* Result too large/general out of range */
-#define ROAR_ERROR_MSGSIZE     11 /* Message too long */
-#define ROAR_ERROR_NOMEM       12 /* Not enough space */
-#define ROAR_ERROR_INVAL       13 /* Invalid argument */
-#define ROAR_ERROR_ALREADY     14 /* Connection already in progress */
-#define ROAR_ERROR_BADRQC      15 /* Invalid request code */
-#define ROAR_ERROR_DOM         16 /* Mathematics argument out of domain of function */
-#define ROAR_ERROR_EXIST       17 /* File or object exists */
-#define ROAR_ERROR_FAULT       18 /* Bad address */
-#define ROAR_ERROR_IO          19 /* I/O-Error */
-#define ROAR_ERROR_KEYEXPIRED  20 /* Key has expired */
-#define ROAR_ERROR_KEYREJECTED 21 /* Key was rejected by service */
-#define ROAR_ERROR_LOOP        22 /* Too many recursions */
-#define ROAR_ERROR_MFILE       23 /* Too many open files or objects */
-#define ROAR_ERROR_NAMETOOLONG 24 /* File or object name too long */
-#define ROAR_ERROR_NODATA      25 /* No message is available on the read queue */
-#define ROAR_ERROR_NODEV       26 /* No such device */
-#define ROAR_ERROR_NODRV       27 /* No such driver */
-#define ROAR_ERROR_NOSPC       38 /* No space left on device */
-#define ROAR_ERROR_TYPEMM      39 /* Type missmatch. Object of diffrent type required */
-#define ROAR_ERROR_NORSYS      40 /* Feature not implemented by remote end */
-#define ROAR_ERROR_NOTCONN     41 /* Socket or object not connected */
-#define ROAR_ERROR_PROTONOSUP  42 /* Protocol not supported */
-#define ROAR_ERROR_RIO         43 /* Remote I/O Error */
-#define ROAR_ERROR_RO          45 /* File or object is read only */
-#define ROAR_ERROR_TIMEDOUT    46 /* Connection timed out */
-#define ROAR_ERROR_AGAIN       47 /* Resource temporarily unavailable */
-#define ROAR_ERROR_NOISE       48 /* Line too noisy */
-#define ROAR_ERROR_LINKDOWN    49 /* Physical or logical link down */
-#define ROAR_ERROR_INTERRUPTED 50 /* Operation was interruped */
-#define ROAR_ERROR_CAUSALITY   51 /* Causality error */
-#define ROAR_ERROR_QUOTA       52 /* Quota exceeded */
-#define ROAR_ERROR_BADLIB      53 /* Accessing a corrupted shared library */
-#define ROAR_ERROR_NOMEDIUM    54 /* No medium found */
-#define ROAR_ERROR_NOTUNIQ     55 /* Name not unique */
-#define ROAR_ERROR_ILLSEQ      56 /* Illegal byte sequence */
-#define ROAR_ERROR_ADDRINUSE   57 /* Address in use */
-#define ROAR_ERROR_HOLE        58 /* Hole in data */
-#define ROAR_ERROR_BADVERSION  59 /* Bad version */
-#define ROAR_ERROR_NSVERSION   60 /* Not supported version */
-#define ROAR_ERROR_BADMAGIC    61 /* Bad magic number */
-#define ROAR_ERROR_LOSTSYNC    62 /* Lost synchronization */
-#define ROAR_ERROR_BADSEEK     63 /* Can not seek to destination position */
-#define ROAR_ERROR_NOSEEK      64 /* Seeking not supported on resource */
-#define ROAR_ERROR_BADCKSUM    65 /* Data integrity error */
-#define ROAR_ERROR_NOHORSE     66 /* Mount failed */
-#define ROAR_ERROR_CHERNOBYL   67 /* Fatal device error */
-#define ROAR_ERROR_NOHUG       68 /* Device needs love */
-#define ROAR_ERROR_TEXTBUSY    69 /* Text file busy */
-#define ROAR_ERROR_NOTEMPTY    70 /* Directory not empty */
-#define ROAR_ERROR_NODEUNREACH 71 /* Node is unreachable */
-#define ROAR_ERROR_IDREMOVED   72 /* Identifier removed */
-#define ROAR_ERROR_INPROGRESS  73 /* Operation in progress */
-#define ROAR_ERROR_NOCHILD     74 /* No child processes/object */
-#define ROAR_ERROR_NETUNREACH  75 /* Network unreachable */
-#define ROAR_ERROR_CANCELED    76 /* Operation canceled */
-#define ROAR_ERROR_ISDIR       77 /* Is a directory */
-#define ROAR_ERROR_NOTDIR      78 /* Not a directory */
-#define ROAR_ERROR_BADEXEC     79 /* Executable file format error */
-#define ROAR_ERROR_ISCONN      80 /* Socket/Object is connected */
-#define ROAR_ERROR_DEADLOCK    81 /* Resource deadlock would occur */
-#define ROAR_ERROR_CONNRST     82 /* Connection reset */
-#define ROAR_ERROR_BADFH       83 /* Bad file handle */
-#define ROAR_ERROR_NOTSOCK     84 /* Not a socket */
-#define ROAR_ERROR_TOOMANYARGS 85 /* Argument list too long */
-#define ROAR_ERROR_TOOLARGE    86 /* File/Object too large */
-#define ROAR_ERROR_DESTADDRREQ 87 /* Destination address required */
-#define ROAR_ERROR_AFNOTSUP    88 /* Address family not supported */
-#define ROAR_ERROR_NOPOWER     89 /* Operation can not be completed because we are low on power */
-#define ROAR_ERROR_USER        90 /* Error in front of screen */
-#define ROAR_ERROR_NFILE       91 /* Too many files/objects open in system */
-#define ROAR_ERROR_STALE       92 /* Stale file handle or object */
-#define ROAR_ERROR_XDEVLINK    93 /* Cross-device link */
-#define ROAR_ERROR_MLINK       94 /* Too many links to file or object */
-#define ROAR_ERROR_NONET       95 /* Not connected to any network */
-#define ROAR_ERROR_CONNRSTNET  96 /* Connection reset by network */
-#define ROAR_ERROR_CONNABORTED 97 /* Connection aborted */
-#define ROAR_ERROR_BADHOST     98 /* Bad host software or hardware */
-#define ROAR_ERROR_SWITCHPROTO 99 /* Switch protocol */
-#define ROAR_ERROR_MOVEDPERM  100 /* Moved Permanently */
-#define ROAR_ERROR_MOVEDTEMP  101 /* Moved Temporary */
-#define ROAR_ERROR_USEPROXY   102 /* Use Proxy server */
-#define ROAR_ERROR_SEEOTHER   103 /* See other resource */
-#define ROAR_ERROR_GONE       104 /* Resource gone */
-#define ROAR_ERROR_BADLICENSE 105 /* Bad License */
-#define ROAR_ERROR_NEEDPAYMENT 106 /* Payment Required */
-#define ROAR_ERROR_NSTYPE     107 /* Type or Format not supported */
-#define ROAR_ERROR_CENSORED   108 /* Access denied because of censorship */
-#define ROAR_ERROR_BADSTATE   109 /* Object is in bad/wrong state */
-#define ROAR_ERROR_DISABLED   110 /* This has been disabled by the administrator */
-
-#endif
-
-//ll
Index: include/roaraudio/genre.h
===================================================================
--- include/roaraudio/genre.h	(revision 6052)
+++ 	(revision )
@@ -1,196 +1,0 @@
-//genre.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_GENRE_H_
-#define _ROARAUDIO_GENRE_H_
-
-// Meta genres:
-#define ROAR_META_GENRE_META_NONE              0x0000
-#define ROAR_META_GENRE_META_OTHER             0x0001
-#define ROAR_META_GENRE_META_MUSIC             0x0002
-#define ROAR_META_GENRE_META_MODERATION        0x0003
-#define ROAR_META_GENRE_META_TEXT              0x0004
-#define ROAR_META_GENRE_META_COMMERCIAL        0x0005
-
-// EU:
-#define ROAR_META_GENRE_RDS_EU_NONE            0x0020
-#define ROAR_META_GENRE_RDS_EU_NEWS            0x0021
-#define ROAR_META_GENRE_RDS_EU_CURRENT_AFFAIRS 0x0022
-#define ROAR_META_GENRE_RDS_EU_INFORMATION     0x0023
-#define ROAR_META_GENRE_RDS_EU_SPORT           0x0024
-#define ROAR_META_GENRE_RDS_EU_EDUCATION       0x0025
-#define ROAR_META_GENRE_RDS_EU_DRAMA           0x0026
-#define ROAR_META_GENRE_RDS_EU_CULTURE         0x0027
-#define ROAR_META_GENRE_RDS_EU_SCIENCE         0x0028
-#define ROAR_META_GENRE_RDS_EU_VARIED          0x0029
-#define ROAR_META_GENRE_RDS_EU_POP_MUSIC       0x002a
-#define ROAR_META_GENRE_RDS_EU_ROCK_MUSIC      0x002b
-#define ROAR_META_GENRE_RDS_EU_EASY_LISTENING  0x002c
-#define ROAR_META_GENRE_RDS_EU_LIGHT_CLASSICAL 0x002d
-#define ROAR_META_GENRE_RDS_EU_SERIOUS_CLASSICAL 0x002e
-#define ROAR_META_GENRE_RDS_EU_OTHER_MUSIC     0x002f
-#define ROAR_META_GENRE_RDS_EU_WEATHER         0x0030
-#define ROAR_META_GENRE_RDS_EU_FINANCE         0x0031
-#define ROAR_META_GENRE_RDS_EU_CHILDREN_S_PROGRAMMES 0x0032
-#define ROAR_META_GENRE_RDS_EU_SOCIAL_AFFAIRS  0x0033
-#define ROAR_META_GENRE_RDS_EU_RELIGION        0x0034
-#define ROAR_META_GENRE_RDS_EU_PHONE_IN        0x0035
-#define ROAR_META_GENRE_RDS_EU_TRAVEL          0x0036
-#define ROAR_META_GENRE_RDS_EU_LEISURE         0x0037
-#define ROAR_META_GENRE_RDS_EU_JAZZ_MUSIC      0x0038
-#define ROAR_META_GENRE_RDS_EU_COUNTRY_MUSIC   0x0039
-#define ROAR_META_GENRE_RDS_EU_NATIONAL_MUSIC  0x003a
-#define ROAR_META_GENRE_RDS_EU_OLDIES_MUSIC    0x003b
-#define ROAR_META_GENRE_RDS_EU_FOLK_MUSIC      0x003c
-#define ROAR_META_GENRE_RDS_EU_DOCUMENTARY     0x003d
-#define ROAR_META_GENRE_RDS_EU_ALARM_TEST      0x003e
-#define ROAR_META_GENRE_RDS_EU_ALARM           0x003f
-#define ROAR_META_GENRE_RDS_EU_EMERGENCY_TEST  ROAR_META_GENRE_RDS_EU_ALARM_TEST
-#define ROAR_META_GENRE_RDS_EU_EMERGENCY       ROAR_META_GENRE_RDS_EU_ALARM
-
-// North America:
-#define ROAR_META_GENRE_RDS_NA_NONE            0x0040
-#define ROAR_META_GENRE_RDS_NA_NEWS            0x0041
-#define ROAR_META_GENRE_RDS_NA_INFORMATION     0x0042
-#define ROAR_META_GENRE_RDS_NA_SPORTS          0x0043
-#define ROAR_META_GENRE_RDS_NA_TALK            0x0044
-#define ROAR_META_GENRE_RDS_NA_ROCK            0x0045
-#define ROAR_META_GENRE_RDS_NA_CLASSIC_ROCK    0x0046
-#define ROAR_META_GENRE_RDS_NA_ADULT_HITS      0x0047
-#define ROAR_META_GENRE_RDS_NA_SOFT_ROCK       0x0048
-#define ROAR_META_GENRE_RDS_NA_TOP_40          0x0049
-#define ROAR_META_GENRE_RDS_NA_COUNTRY         0x004a
-#define ROAR_META_GENRE_RDS_NA_OLDIES          0x004b
-#define ROAR_META_GENRE_RDS_NA_SOFT            0x004c
-#define ROAR_META_GENRE_RDS_NA_NOSTALGIA       0x004d
-#define ROAR_META_GENRE_RDS_NA_JAZZ            0x004e
-#define ROAR_META_GENRE_RDS_NA_CLASSICAL       0x004f
-#define ROAR_META_GENRE_RDS_NA_RHYTHM_AND_BLUES 0x0050
-#define ROAR_META_GENRE_RDS_NA_SOFT_RHYTHM_AND_BLUES 0x0051
-#define ROAR_META_GENRE_RDS_NA_LANGUAGE        0x0052
-#define ROAR_META_GENRE_RDS_NA_RELIGIOUS_MUSIC 0x0053
-#define ROAR_META_GENRE_RDS_NA_RELIGIOUS_TALK  0x0054
-#define ROAR_META_GENRE_RDS_NA_PERSONALITY     0x0055
-#define ROAR_META_GENRE_RDS_NA_PUBLIC          0x0056
-#define ROAR_META_GENRE_RDS_NA_COLLEGE         0x0057
-#define ROAR_META_GENRE_RDS_NA_UNASSIGNED_0    0x0058
-#define ROAR_META_GENRE_RDS_NA_UNASSIGNED_1    0x0059
-#define ROAR_META_GENRE_RDS_NA_UNASSIGNED_2    0x005a
-#define ROAR_META_GENRE_RDS_NA_UNASSIGNED_3    0x005b
-#define ROAR_META_GENRE_RDS_NA_UNASSIGNED_4    0x005c
-#define ROAR_META_GENRE_RDS_NA_WEATHER         0x005d
-#define ROAR_META_GENRE_RDS_NA_EMERGENCY_TEST  0x005e
-#define ROAR_META_GENRE_RDS_NA_EMERGENCY       0x005f
-#define ROAR_META_GENRE_RDS_NA_ALARM_TEST      ROAR_META_GENRE_RDS_NA_EMERGENCY_TEST
-#define ROAR_META_GENRE_RDS_NA_ALARM           ROAR_META_GENRE_RDS_NA_EMERGENCY
-
-// ID3, standard + winamp ext:
-#define ROAR_META_GENRE_ID3_BLUES              0x0100
-#define ROAR_META_GENRE_ID3_CLASSIC_ROCK       0x0101
-#define ROAR_META_GENRE_ID3_COUNTRY            0x0102
-#define ROAR_META_GENRE_ID3_DANCE              0x0103
-#define ROAR_META_GENRE_ID3_DISCO              0x0104
-#define ROAR_META_GENRE_ID3_FUNK               0x0105
-#define ROAR_META_GENRE_ID3_GRUNGE             0x0106
-#define ROAR_META_GENRE_ID3_HIP_HOP            0x0107
-#define ROAR_META_GENRE_ID3_JAZZ               0x0108
-#define ROAR_META_GENRE_ID3_METAL              0x0109
-#define ROAR_META_GENRE_ID3_NEW_AGE            0x010a
-#define ROAR_META_GENRE_ID3_OLDIES             0x010b
-#define ROAR_META_GENRE_ID3_OTHER              0x010c
-#define ROAR_META_GENRE_ID3_POP                0x010d
-#define ROAR_META_GENRE_ID3_R_AND_B            0x010e
-#define ROAR_META_GENRE_ID3_RAP                0x010f
-#define ROAR_META_GENRE_ID3_REGGAE             0x0110
-#define ROAR_META_GENRE_ID3_ROCK               0x0111
-#define ROAR_META_GENRE_ID3_TECHNO             0x0112
-#define ROAR_META_GENRE_ID3_INDUSTRIAL         0x0113
-#define ROAR_META_GENRE_ID3_ALTERNATIVE        0x0114
-#define ROAR_META_GENRE_ID3_SKA                0x0115
-#define ROAR_META_GENRE_ID3_DEATH_METAL        0x0116
-#define ROAR_META_GENRE_ID3_PRANKS             0x0117
-#define ROAR_META_GENRE_ID3_SOUNDTRACK         0x0118
-#define ROAR_META_GENRE_ID3_EURO_TECHNO        0x0119
-#define ROAR_META_GENRE_ID3_AMBIENT            0x011a
-#define ROAR_META_GENRE_ID3_TRIP_HOP           0x011b
-#define ROAR_META_GENRE_ID3_VOCAL              0x011c
-#define ROAR_META_GENRE_ID3_JAZZ_FUNK          0x011d
-#define ROAR_META_GENRE_ID3_FUSION             0x011e
-#define ROAR_META_GENRE_ID3_TRANCE             0x011f
-#define ROAR_META_GENRE_ID3_CLASSICAL          0x0120
-#define ROAR_META_GENRE_ID3_INSTRUMENTAL       0x0121
-#define ROAR_META_GENRE_ID3_ACID               0x0122
-#define ROAR_META_GENRE_ID3_HOUSE              0x0123
-#define ROAR_META_GENRE_ID3_GAME               0x0124
-#define ROAR_META_GENRE_ID3_SOUND_CLIP         0x0125
-#define ROAR_META_GENRE_ID3_GOSPEL             0x0126
-#define ROAR_META_GENRE_ID3_NOISE              0x0127
-#define ROAR_META_GENRE_ID3_ALTERNROCK         0x0128
-#define ROAR_META_GENRE_ID3_BASS               0x0129
-#define ROAR_META_GENRE_ID3_SOUL               0x012a
-#define ROAR_META_GENRE_ID3_PUNK               0x012b
-#define ROAR_META_GENRE_ID3_SPACE              0x012c
-#define ROAR_META_GENRE_ID3_MEDITATIVE         0x012d
-#define ROAR_META_GENRE_ID3_INSTRUMENTAL_POP   0x012e
-#define ROAR_META_GENRE_ID3_INSTRUMENTAL_ROCK  0x012f
-#define ROAR_META_GENRE_ID3_ETHNIC             0x0130
-#define ROAR_META_GENRE_ID3_GOTHIC             0x0131
-#define ROAR_META_GENRE_ID3_DARKWAVE           0x0132
-#define ROAR_META_GENRE_ID3_TECHNO_INDUSTRIAL  0x0133
-#define ROAR_META_GENRE_ID3_ELECTRONIC         0x0134
-#define ROAR_META_GENRE_ID3_POP_FOLK           0x0135
-#define ROAR_META_GENRE_ID3_EURODANCE          0x0136
-#define ROAR_META_GENRE_ID3_DREAM              0x0137
-#define ROAR_META_GENRE_ID3_SOUTHERN_ROCK      0x0138
-#define ROAR_META_GENRE_ID3_COMEDY             0x0139
-#define ROAR_META_GENRE_ID3_CULT               0x013a
-#define ROAR_META_GENRE_ID3_GANGSTA            0x013b
-#define ROAR_META_GENRE_ID3_TOP_40             0x013c
-#define ROAR_META_GENRE_ID3_CHRISTIAN_RAP      0x013d
-#define ROAR_META_GENRE_ID3_POP_FUNK           0x013e
-#define ROAR_META_GENRE_ID3_JUNGLE             0x013f
-#define ROAR_META_GENRE_ID3_NATIVE_AMERICAN    0x0140
-#define ROAR_META_GENRE_ID3_CABARET            0x0141
-#define ROAR_META_GENRE_ID3_NEW_WAVE           0x0142
-#define ROAR_META_GENRE_ID3_PSYCHADELIC        0x0143
-#define ROAR_META_GENRE_ID3_RAVE               0x0144
-#define ROAR_META_GENRE_ID3_SHOWTUNES          0x0145
-#define ROAR_META_GENRE_ID3_TRAILER            0x0146
-#define ROAR_META_GENRE_ID3_LO_FI              0x0147
-#define ROAR_META_GENRE_ID3_TRIBAL             0x0148
-#define ROAR_META_GENRE_ID3_ACID_PUNK          0x0149
-#define ROAR_META_GENRE_ID3_ACID_JAZZ          0x014a
-#define ROAR_META_GENRE_ID3_POLKA              0x014b
-#define ROAR_META_GENRE_ID3_RETRO              0x014c
-#define ROAR_META_GENRE_ID3_MUSICAL            0x014d
-#define ROAR_META_GENRE_ID3_ROCK_AND_ROLL      0x014e
-#define ROAR_META_GENRE_ID3_HARD_ROCK          0x014f
-
-#endif
-
-//ll
Index: include/roaraudio/license.h
===================================================================
--- include/roaraudio/license.h	(revision 6052)
+++ 	(revision )
@@ -1,42 +1,0 @@
-//license.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_LICENSE_H_
-#define _ROARAUDIO_LICENSE_H_
-
-#define ROAR_LICENSE_UNDEF            NULL
-#define ROAR_LICENSE_PUBLIC_DOMAIN    "public domain"
-#define ROAR_LICENSE_PD               ROAR_LICENSE_PUBLIC_DOMAIN
-#define ROAR_LICENSE_GPLv3_0          "GPL-3.0"
-#define ROAR_LICENSE_GPLv3_0_OL       "GPL-3.0 (or later)"
-#define ROAR_LICENSE_LGPLv3_0         "LGPL-3.0"
-#define ROAR_LICENSE_LGPLv3_0_OL      "LGPL-3.0 (or later)"
-
-#endif
-
-//ll
Index: include/roaraudio/ltm.h
===================================================================
--- include/roaraudio/ltm.h	(revision 6052)
+++ 	(revision )
@@ -1,64 +1,0 @@
-//ltm.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_LTM_H_
-#define _ROARAUDIO_LTM_H_
-
-// monitoring targets:
-/* Vars used below:
- * t = time
- * w = window size
- * l = history size
- * S(t) = signal at time t
- * H{g}(n) = history of type g element n
- */
-#define ROAR_LTM_MT_NONE        0x0000 /* const for init of lists */
-#define ROAR_LTM_MT_INACT       0x0001 /* input activit */
-#define ROAR_LTM_MT_OUTACT      0x0002 /* output activity */
-#define ROAR_LTM_MT_ACT         0x0004 /* any (in+out+other) activity */
-#define ROAR_LTM_MT_AVG         0x0008 /* signal avg: SUM{t-w->t}(S(t))/w */
-#define ROAR_LTM_MT_PEAK        0x0010 /* signal min and max values: MIN(S(t-w..t)), MAX(S(t-w..t)) */
-#define ROAR_LTM_MT_RMS         0x0020 /* signal RMS^2: SUM{t-w->t}(S(t)^2) */
-#define ROAR_LTM_MT_RMSPEAK     0x0040 /* signal RMS^2 min and max: MIN(H{RMS}(0..l)), MAX(H{RMS}(0..l)) */
-#define ROAR_LTM_MT_HISTORY     0x0080 /* request to hold a history */
-
-#define ROAR_LTM_MTBITS         16     /* number of bits for MTs */
-
-// pre-defined windows:
-#define ROAR_LTM_WIN_WORKBLOCK  0      /* The last block which the server worked on */
-                                       /* This block does not have any sub-block historys (H()) */
-
-// command sub-sub-types:
-#define ROAR_LTM_SST_NOOP       0
-#define ROAR_LTM_SST_REGISTER   1
-#define ROAR_LTM_SST_UNREGISTER 2
-#define ROAR_LTM_SST_GET_RAW    3
-
-#endif
-
-//ll
Index: include/roaraudio/meta.h
===================================================================
--- include/roaraudio/meta.h	(revision 6052)
+++ include/roaraudio/meta.h	(revision 0)
@@ -1,98 +1,28 @@
 //meta.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
 
 #ifndef _ROARAUDIO_META_H_
 #define _ROARAUDIO_META_H_
 
-#define ROAR_META_TYPE_NONE           0
-#define ROAR_META_TYPE_TITLE          1
-#define ROAR_META_TYPE_ALBUM          2
-#define ROAR_META_TYPE_AUTHOR         3
-#define ROAR_META_TYPE_AUTOR          ROAR_META_TYPE_AUTHOR
-#define ROAR_META_TYPE_ARTIST         ROAR_META_TYPE_AUTHOR
-#define ROAR_META_TYPE_VERSION        4
-#define ROAR_META_TYPE_DATE           5
-#define ROAR_META_TYPE_LICENSE        6
-#define ROAR_META_TYPE_TRACKNUMBER    7
-#define ROAR_META_TYPE_ORGANIZATION   8
-#define ROAR_META_TYPE_DESCRIPTION    9
-#define ROAR_META_TYPE_GENRE          10
-#define ROAR_META_TYPE_LOCATION       11
-#define ROAR_META_TYPE_CONTACT        12
-#define ROAR_META_TYPE_STREAMURL      13
-#define ROAR_META_TYPE_HOMEPAGE       14
-#define ROAR_META_TYPE_THUMBNAIL      15
-#define ROAR_META_TYPE_LENGTH         16
-#define ROAR_META_TYPE_COMMENT        17
-#define ROAR_META_TYPE_OTHER          18
-#define ROAR_META_TYPE_FILENAME       19
-#define ROAR_META_TYPE_FILEURL        20
-#define ROAR_META_TYPE_SERVER         21
-#define ROAR_META_TYPE_DURATION       22
-#define ROAR_META_TYPE_WWW            ROAR_META_TYPE_HOMEPAGE
-#define ROAR_META_TYPE_WOAF           23 /* ID3: Official audio file webpage */
-#define ROAR_META_TYPE_ENCODER        24
-#define ROAR_META_TYPE_ENCODEDBY      ROAR_META_TYPE_ENCODER
-#define ROAR_META_TYPE_YEAR           25
-#define ROAR_META_TYPE_DISCID         26
-#define ROAR_META_TYPE_RPG_TRACK_PEAK 27
-#define ROAR_META_TYPE_RPG_TRACK_GAIN 28
-#define ROAR_META_TYPE_RPG_ALBUM_PEAK 29
-#define ROAR_META_TYPE_RPG_ALBUM_GAIN 30
-#define ROAR_META_TYPE_HASH           31
-#define ROAR_META_TYPE_SIGNALINFO     32
-#define ROAR_META_TYPE_AUDIOINFO      ROAR_META_TYPE_SIGNALINFO
-#define ROAR_META_TYPE_OFFSET         33
-#define ROAR_META_TYPE_PERFORMER      34
-#define ROAR_META_TYPE_COPYRIGHT      35
-#define ROAR_META_TYPE_LIKENESS       36
-#define ROAR_META_TYPE_COMPOSER       37
-#define ROAR_META_TYPE_RIGHTS         38
-#define ROAR_META_TYPE_ISRC           39
-#define ROAR_META_TYPE_LANGUAGE       40
-#define ROAR_META_TYPE_GTIN           41
-#define ROAR_META_TYPE_ISBN           ROAR_META_TYPE_GTIN
-#define ROAR_META_TYPE_EAN            ROAR_META_TYPE_GTIN
-#define ROAR_META_TYPE_PUBLISHER      42
-#define ROAR_META_TYPE_DISCNUMBER     43
-#define ROAR_META_TYPE_SOURCEMEDIA    44
-#define ROAR_META_TYPE_LABEL          45
-#define ROAR_META_TYPE_LABELNO        46
+#define ROAR_META_TYPE_NONE          0
+#define ROAR_META_TYPE_TITLE         1
+#define ROAR_META_TYPE_ALBUM         2
+#define ROAR_META_TYPE_AUTOR         3
+#define ROAR_META_TYPE_ARTIST        ROAR_META_TYPE_AUTOR
+#define ROAR_META_TYPE_VERSION       4
+#define ROAR_META_TYPE_DATE          5
+#define ROAR_META_TYPE_LICENSE       6
+#define ROAR_META_TYPE_TRACKNUMBER   7
+#define ROAR_META_TYPE_ORGANIZATION  8
+#define ROAR_META_TYPE_DESCRIPTION   9
+#define ROAR_META_TYPE_GENRE         10
+#define ROAR_META_TYPE_LOCATION      11
+#define ROAR_META_TYPE_CONTACT       12
+#define ROAR_META_TYPE_STREAMURL     13
+#define ROAR_META_TYPE_HOMEPAGE      14
+#define ROAR_META_TYPE_THUMBNAIL     15
+#define ROAR_META_TYPE_LENGTH        16
 
 
-#define ROAR_META_MODE_SET           0
-#define ROAR_META_MODE_ADD           1
-#define ROAR_META_MODE_DELETE        2
-#define ROAR_META_MODE_CLEAR         3
-#define ROAR_META_MODE_FINALIZE      4
-
 #define ROAR_META_MAX_NAMELEN 32
-
-#define ROAR_META_MAX_PER_STREAM 16
 
 struct roar_meta {
Index: include/roaraudio/misc.h
===================================================================
--- include/roaraudio/misc.h	(revision 6052)
+++ 	(revision )
@@ -1,49 +1,0 @@
-//misc.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_MISC_H_
-#define _ROARAUDIO_MISC_H_
-
-// light:
-#define ROAR_LIGHT_BITS       8
-
-// complex:
-#define ROAR_COMPLEX_RATE     0
-#define ROAR_COMPLEX_BITS     0
-#define ROAR_COMPLEX_CHANNELS 0
-#define ROAR_COMPLEX_CODEC    ROAR_CODEC_RAUM
-
-// complex:
-#define ROAR_RDTCS_RATE       0
-#define ROAR_RDTCS_BITS       0
-#define ROAR_RDTCS_CHANNELS   0
-#define ROAR_RDTCS_CODEC      ROAR_CODEC_RDS
-
-#endif
-
-//ll
Index: include/roaraudio/muconthacks.h
===================================================================
--- include/roaraudio/muconthacks.h	(revision 6052)
+++ 	(revision )
@@ -1,72 +1,0 @@
-//muconthacks.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_MUCONTHACKS_H_
-#define _ROARAUDIO_MUCONTHACKS_H_
-
-#ifdef ROAR_TARGET_MICROCONTROLLER
-
-#define SHUT_RD   0
-#define SHUT_WR   1
-#define SHUT_RDWR 2
-
-#define SOCK_STREAM     1
-#define SOCK_DGRAM      2
-#define SOCK_RAW        3
-#define SOCK_RDM        4
-#define SOCK_SEQPACKET  5
-
-#define O_RDONLY       0x01
-#define O_WRONLY       0x02
-#define O_RDWR         (O_RDONLY|O_WRONLY)
-#define O_NONBLOCK     0x04
-#define O_CREAT        0x08
-#define O_TRUNC        0x10
-
-#define EAGAIN         11
-#define ENOSYS         38
-
-struct sockaddr {
- sa_family_t sa_family;
-};
-
-int    bind    (int sockfd, const struct sockaddr *my_addr,   socklen_t addrlen);
-int    connect (int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);
-char * strerror(int errnum);
-
-// some dummy funcs:
-#define getpid()    2
-#define getuid()    0
-#define getgid()    0
-#define getenv(x)   NULL
-
-#endif
-
-#endif
-
-//ll
Index: include/roaraudio/notify.h
===================================================================
--- include/roaraudio/notify.h	(revision 6052)
+++ 	(revision )
@@ -1,163 +1,0 @@
-//notify.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_NOTIFY_H_
-#define _ROARAUDIO_NOTIFY_H_
-
-#define ROAR_EVENT_NETFLAG_NONE        0x00000000
-#define ROAR_EVENT_NETFLAG_DATA        0x00000001
-#define ROAR_EVENT_NETFLAG_PROXYEVENT  0x00000002
-
-#define ROAR_NOTIFY_SPECIAL       (uint32_t)0xffffffff
-
-// protocol cmds:
-#define ROAR_NOTIFY_OFFSET_CMD    (uint32_t)0x00000000
-#define ROAR_NOTIFY_MASK_CMD      (uint32_t)0x000000ff
-
-// event groups (AKA meta events):
-#define ROAR_NOTIFY_OFFSET_EGRP   (uint32_t)0x00010000
-#define ROAR_NOTIFY_MASK_EGRP     (uint32_t)0x0000ffff
-
-// object event:
-#define ROAR_NOTIFY_OFFSET_OE     (uint32_t)0x00020000
-#define ROAR_NOTIFY_MASK_OE       (uint32_t)0x0000ffff
-
-// data events:
-#define ROAR_NOTIFY_OFFSET_DATA   (uint32_t)0x00030000
-#define ROAR_NOTIFY_MASK_DATA     (uint32_t)0x0000ffff
-
-// user defined events:
-#define ROAR_NOTIFY_OFFSET_USER   (uint32_t)0x40000000
-#define ROAR_NOTIFY_MASK_USER     (uint32_t)0x3fffffff
-
-#define ROAR_NOTIFY_X2EVENT(x,offset,mask) ((x) == (uint32_t)-1 ? ROAR_NOTIFY_SPECIAL : (((x) & (mask))+(offset)))
-#define ROAR_NOTIFY_EVENT2X(x,offset,mask) (ROAR_NOTIFY_IS_X((x),(offset),(mask)) != 1 ? (uint32_t)-1 : ((x) - (offset)))
-#define ROAR_NOTIFY_IS_X(x,offset,mask)    ((x) == ROAR_NOTIFY_SPECIAL ? -1 : (((x) | (mask)) - (mask)) == (offset) ? 1 : 0)
-
-#define ROAR_NOTIFY_CMD2EVENT(x)  ROAR_NOTIFY_X2EVENT((x), ROAR_NOTIFY_OFFSET_CMD,  ROAR_NOTIFY_MASK_CMD)
-#define ROAR_NOTIFY_EVENT2CMD(x)  ROAR_NOTIFY_EVENT2X((x), ROAR_NOTIFY_OFFSET_CMD,  ROAR_NOTIFY_MASK_CMD)
-#define ROAR_NOTIFY_IS_CMD(x)     ROAR_NOTIFY_IS_X((x),    ROAR_NOTIFY_OFFSET_CMD,  ROAR_NOTIFY_MASK_CMD)
-
-#define ROAR_NOTIFY_EGRP2EVENT(x) ROAR_NOTIFY_X2EVENT((x), ROAR_NOTIFY_OFFSET_EGRP, ROAR_NOTIFY_MASK_EGRP)
-#define ROAR_NOTIFY_EVENT2EGRP(x) ROAR_NOTIFY_EVENT2X((x), ROAR_NOTIFY_OFFSET_EGRP, ROAR_NOTIFY_MASK_EGRP)
-#define ROAR_NOTIFY_IS_EGRP(x)    ROAR_NOTIFY_IS_X((x),    ROAR_NOTIFY_OFFSET_EGRP, ROAR_NOTIFY_MASK_EGRP)
-
-#define ROAR_NOTIFY_OE2EVENT(x)   ROAR_NOTIFY_X2EVENT((x), ROAR_NOTIFY_OFFSET_OE, ROAR_NOTIFY_MASK_OE)
-#define ROAR_NOTIFY_EVENT2OE(x)   ROAR_NOTIFY_EVENT2X((x), ROAR_NOTIFY_OFFSET_OE, ROAR_NOTIFY_MASK_OE)
-#define ROAR_NOTIFY_IS_OE(x)      ROAR_NOTIFY_IS_X((x),    ROAR_NOTIFY_OFFSET_OE, ROAR_NOTIFY_MASK_OE)
-
-#define ROAR_NOTIFY_DATA2EVENT(x) ROAR_NOTIFY_X2EVENT((x), ROAR_NOTIFY_OFFSET_DATA, ROAR_NOTIFY_MASK_DATA)
-#define ROAR_NOTIFY_EVENT2DATA(x) ROAR_NOTIFY_EVENT2X((x), ROAR_NOTIFY_OFFSET_DATA, ROAR_NOTIFY_MASK_DATA)
-#define ROAR_NOTIFY_IS_DATA(x)    ROAR_NOTIFY_IS_X((x),    ROAR_NOTIFY_OFFSET_DATA, ROAR_NOTIFY_MASK_DATA)
-
-#define ROAR_NOTIFY_USER2EVENT(x) ROAR_NOTIFY_X2EVENT((x), ROAR_NOTIFY_OFFSET_USER, ROAR_NOTIFY_MASK_USER)
-#define ROAR_NOTIFY_EVENT2USER(x) ROAR_NOTIFY_EVENT2X((x), ROAR_NOTIFY_OFFSET_USER, ROAR_NOTIFY_MASK_USER)
-#define ROAR_NOTIFY_IS_USER(x)    ROAR_NOTIFY_IS_X((x),    ROAR_NOTIFY_OFFSET_USER, ROAR_NOTIFY_MASK_USER)
-
-// EGRP:
-#define ROAR_NOTIFY_EGRP_GROUP_BASICS     0x0000
-#define ROAR_NOTIFY_EGRP_GROUP_CLIENTS    (ROAR_OT_CLIENT << 8)
-#define ROAR_NOTIFY_EGRP_GROUP_STREAMS    (ROAR_OT_STREAM << 8)
-#define ROAR_NOTIFY_EGRP_GROUP_SOURCES    (ROAR_OT_SOURCE << 8)
-#define ROAR_NOTIFY_EGRP_GROUP_SAMPLES    (ROAR_OT_SAMPLE << 8)
-
-#define ROAR_EGRP_ANY_EVENT               ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   0)
-#define ROAR_EGRP_OBJECT_NEW              ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   1)
-#define ROAR_EGRP_OBJECT_DELETE           ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   2)
-#define ROAR_EGRP_OBJECT_REF              ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   3)
-#define ROAR_EGRP_OBJECT_UNREF            ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   4)
-#define ROAR_EGRP_ERROR                   ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_BASICS +   5)
-
-#define ROAR_EGRP_ANY_CLIENT_EVENT        ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_CLIENTS +   0)
-
-#define ROAR_EGRP_ANY_STREAM_EVENT        ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_STREAMS +   0)
-
-#define ROAR_EGRP_ANY_SOURCE_EVENT        ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_SOURCES +   0)
-
-#define ROAR_EGRP_ANY_SAMPLE_EVENT        ROAR_NOTIFY_EGRP2EVENT(ROAR_NOTIFY_EGRP_GROUP_SAMPLES +   0)
-
-// OE:
-#define ROAR_NOTIFY_OE_GROUP_BASICS       0x0000
-#define ROAR_NOTIFY_OE_GROUP_CLIENTS      (ROAR_OT_CLIENT << 8)
-#define ROAR_NOTIFY_OE_GROUP_STREAMS      (ROAR_OT_STREAM << 8)
-#define ROAR_NOTIFY_OE_GROUP_SOURCES      (ROAR_OT_SOURCE << 8)
-#define ROAR_NOTIFY_OE_GROUP_SAMPLES      (ROAR_OT_SAMPLE << 8)
-
-#define ROAR_OE_BASICS_CHANGE_STATE       ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_BASICS  +   0)
-#define ROAR_OE_BASICS_CHANGE_FLAGS       ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_BASICS  +   5)
-#define ROAR_OE_BASICS_NEW                ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_BASICS  +   6)
-#define ROAR_OE_BASICS_DELETE             ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_BASICS  +   7)
-
-#define ROAR_OE_CLIENT_CONNECT            ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_CLIENTS +   0)
-#define ROAR_OE_CLIENT_DISCONNECT         ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_CLIENTS +   1)
-#define ROAR_OE_CLIENT_MSG                ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_CLIENTS +   3)
-
-//#define ROAR_OE_STREAM_CHANGE_STATE       ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   0)
-#define ROAR_OE_STREAM_EXEC               ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   1)
-#define ROAR_OE_STREAM_EOF                ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   2)
-#define ROAR_OE_STREAM_CON_STREAM         ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   3)
-#define ROAR_OE_STREAM_PASSFH             ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   4)
-//#define ROAR_OE_STREAM_CHANGE_FLAGS       ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   5)
-#define ROAR_OE_STREAM_CHANGE_VOLUME      ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   6)
-#define ROAR_OE_STREAM_XRUN               ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   7)
-#define ROAR_OE_STREAM_META_UPDATE        ROAR_NOTIFY_OE2EVENT(ROAR_NOTIFY_OE_GROUP_STREAMS +   8)
-
-#define ROAR_XRUN_NONE                    0
-#define ROAR_XRUN_UNDER_PRE               1
-#define ROAR_XRUN_UNDER_POST              2
-#define ROAR_XRUN_OVER_PRE                3
-#define ROAR_XRUN_OVER_POST               4
-
-// Data:
-#define ROAR_DATA_EVENT2DIR(ev)          (((ev) & 0xFF00) >> 8)
-#define ROAR_DATA_EVENT2EVENT(ev)        (((ev) & 0x00FF))
-#define ROAR_DATA_GROUP(dir)             ((dir) << 8)
-#define ROAR_DATA_GROUP_WAVEFORM         ROAR_DATA_GROUP(ROAR_DIR_PLAY)
-#define ROAR_DATA_GROUP_MIDI             ROAR_DATA_GROUP(ROAR_DIR_MIDI_IN)
-#define ROAR_DATA_GROUP_LIGHT            ROAR_DATA_GROUP(ROAR_DIR_LIGHT_IN)
-#define ROAR_DATA_GROUP_RAW              ROAR_DATA_GROUP(ROAR_DIR_RAW_IN)
-#define ROAR_DATA_GROUP_COMPLEX          ROAR_DATA_GROUP(ROAR_DIR_COMPLEX_IN)
-#define ROAR_DATA_GROUP_RDTCS            ROAR_DATA_GROUP(ROAR_DIR_RDTCS_IN)
-
-#define ROAR_DATA_DMX512_GROUP_CHANNEL   (ROAR_DATA_GROUP_LIGHT + 0x00)
-#define ROAR_DATA_DMX512_GROUP_EVENT     (ROAR_DATA_GROUP_LIGHT + 0x10)
-
-// should we really send channel updates? Latency? ...?
-// Emmiter: client ID, target: mixer or other stream, target_type: STREAM,
-// arg0: channel, arg1: new value
-// *: -1/NULL
-#define ROAR_DATA_DMX512_CHANNEL_UPDATE   ROAR_NOTIFY_DATA2EVENT(ROAR_DATA_DMX512_GROUP_CHANNEL + 1)
-
-// Emmiter: client ID, target: mixer or other stream, target_type: STREAM,
-// arg0: event type (ROAR_ROARDMX_EVENT_*)
-// *: -1/NULL
-#define ROAR_DATA_DMX512_EVENT            ROAR_NOTIFY_DATA2EVENT(ROAR_DATA_DMX512_GROUP_EVENT + 1)
-
-#endif
-
-//ll
Index: include/roaraudio/proto.h
===================================================================
--- include/roaraudio/proto.h	(revision 6052)
+++ include/roaraudio/proto.h	(revision 0)
@@ -1,29 +1,3 @@
-//proto.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
+//porto.h:
 
 #ifndef _ROARAUDIO_PORTO_H_
@@ -50,60 +24,16 @@
 //#define ROAR_CMD_
 
-#define ROAR_CMD_EXIT          13 /* make the server quit */
-#define ROAR_CMD_LIST_STREAMS  14 /* list all streams (not only playback streams like esd does) */
-#define ROAR_CMD_LIST_CLIENTS  15 /* list all clients */
+#define ROAR_CMD_EXIT          13
+#define ROAR_CMD_LIST_STREAMS  14
+#define ROAR_CMD_LIST_CLIENTS  15
 
-#define ROAR_CMD_GET_CLIENT    16 /* get infos about a client */
-#define ROAR_CMD_GET_STREAM    17 /* get infos about a stream */
+#define ROAR_CMD_GET_CLIENT    16
+#define ROAR_CMD_GET_STREAM    17
 
-#define ROAR_CMD_KICK          18 /* kick a client, stream, sample or source */
+#define ROAR_CMD_KICK          18
 
-#define ROAR_CMD_SET_VOL       19 /* change volume */
-#define ROAR_CMD_GET_VOL       20 /* get volume */
 
-#define ROAR_CMD_CON_STREAM    21 /* let the server connect to something to get data for a new stream */
-
-#define ROAR_CMD_GET_META      22 /* get meta data of streamed data */
-#define ROAR_CMD_LIST_META     23 /* get list of meta data of streamed data */
-
-#define ROAR_CMD_BEEP          24 /* send an beep */
-
-#define ROAR_AUTHCTL           25
-#define ROAR_ACLCTL            26
-
-#define ROAR_CMD_GET_STREAM_PARA   27 /* Get addition stream parameters like blocksizes */
-#define ROAR_CMD_SET_STREAM_PARA   28 /* set special stream parameter */
-
-#define ROAR_CMD_ATTACH        29 /* attach a OUTPUT or source */
-#define ROAR_CMD_DETACH        ROAR_CMD_KICK /* just to have an alias */
-
-#define ROAR_CMD_PASSFH        30 /* send an fh via UNIX Domain Socket to the roard */
-
-#define ROAR_CMD_GETTIMEOFDAY  31 /* get time of day from server */
-
-#define ROAR_CMD_WHOAMI        32 /* returns the ID of the current client */
-
-#define ROAR_CMD_DEVCTL        33 /* send control messages to devices */
-#define ROAR_CMD_CAPS          34 /* send caps */
-#define ROAR_CMD_WAIT          35 /* wait for an event */
-#define ROAR_CMD_NOTIFY        36 /* asyncronus notify of events */
-#define ROAR_CMD_SEEK          37 /* seek in stream */
-#define ROAR_CMD_CLIENTCTL     38 /* like stream ctl, just for client connections */
-#define ROAR_CMD_LOOKUP        39 /* lookup??? */
-#define ROAR_CMD_CONCTL        40 /* change parameter for current connection */
-
-#define ROAR_CMD_SHIFT_DATA    41 /* get some data from the stream */
-
-// Reserved for RAUM project:
-#define ROAR_CMD_RAUM_SEEKTABLE 201 /* contains a seektable */
-#define ROAR_CMD_RAUM_PICTURE   202 /* contains a picture block */
-#define ROAR_CMD_RAUM_SYNC      203 /* used for raw-seeking, contains a magic pattern */
-// End of reserved block
-
-#define ROAR_CMD_EPERM        252 /* error: permition denided */
-#define ROAR_CMD_OK_STOP      253 /* used internaly in the serveer: */
-                                  // ROAR_CMD_OK but do not queue the client again within the block
-#define ROAR_CMD_OK           254 /* return value OK */
-#define ROAR_CMD_ERROR        255 /* return value ERROR */
+#define ROAR_CMD_OK           254
+#define ROAR_CMD_ERROR        255
 
 
@@ -112,120 +42,8 @@
 
 // object types...
-#define ROAR_OT_CLIENT    1
-#define ROAR_OT_STREAM    2
-#define ROAR_OT_SOURCE    3
-#define ROAR_OT_SAMPLE    4
-#define ROAR_OT_OUTPUT    5
-#define ROAR_OT_MIXER     6
-#define ROAR_OT_BRIDGE    7
-#define ROAR_OT_LISTEN    8
-#define ROAR_OT_ACTION    9
-#define ROAR_OT_MSGQUEUE 10
-#define ROAR_OT_MSGBUS   11
-
-// filter:
-#define ROAR_CTL_FILTER_ANY   0
-#define ROAR_CTL_FILTER_DIR   1
-
-#define ROAR_CTL_CMP_ANY      ROAR_CTL_FILTER_ANY
-#define ROAR_CTL_CMP_EQ       1
-#define ROAR_CTL_CMP_NE       2
-
-// auth types...
-#define ROAR_AUTH_T_AUTO               -1
-#define ROAR_AUTH_T_NONE                0 /* do not auth */
-#define ROAR_AUTH_T_COOKIE              1 /* use cookie */
-#define ROAR_AUTH_T_TRUST               2 /* trust: used for UNIX Domain sockets, */
-                                          /* same uid = trusted, diffrent uid = public */
-#define ROAR_AUTH_T_PASSWORD            3 /* use password */
-#define ROAR_AUTH_T_SYSUSER             4 /* use local/NIS/PAM userdatabase */
-#define ROAR_AUTH_T_OPENPGP_SIGN        5
-#define ROAR_AUTH_T_OPENPGP_ENCRYPT     6
-#define ROAR_AUTH_T_OPENPGP_AUTH        7
-#define ROAR_AUTH_T_KERBEROS            8
-#define ROAR_AUTH_T_RHOST               9
-#define ROAR_AUTH_T_XAUTH              10
-#define ROAR_AUTH_T_IDENT              11
-
-
-// attach types...
-#define ROAR_ATTACH_SIMPLE  1 /* move a stream from one to another client (attach the stream to it) */
-#define ROAR_ATTACH_SOURCE  2 /* attach a new source to the server */
-#define ROAR_ATTACH_OUTPUT  3 /* attach a new output stream to the server */
-#define ROAR_ATTACH_MIXER   4 /* attach a new hwmixer stream to the server */
-#define ROAR_ATTACH_BRIDGE  5 /* attach a new bridge stream to the server */
-
-// modes for ROAR_CMD_?ET_STREAM_PARA...
-#define ROAR_STREAM_PARA_INFO       1
-#define ROAR_STREAM_PARA_FLAGS      2
-#define ROAR_STREAM_PARA_NAME       3
-#define ROAR_STREAM_PARA_CHANMAP    4
-#define ROAR_STREAM_PARA_ROLE       5
-#define ROAR_STREAM_PARA_HASHTABLE  6
-#define ROAR_STREAM_PARA_WININFO    7
-#define ROAR_STREAM_PARA_PROPTABLE  8
-#define ROAR_STREAM_PARA_LTM        9
-#define ROAR_STREAM_PARA_USAGE     10 /* used by RAUM */
-#define ROAR_STREAM_PARA_RADIO     11 /* used by RDTCS */
-#define ROAR_STREAM_PARA_RPG       12
-
-// modes for ROAR_STREAM_PARA_RPG:
-#define ROAR_RPGMODE_DEFAULT       -1
-#define ROAR_RPGMODE_NONE           0
-#define ROAR_RPGMODE_USER           1
-#define ROAR_RPGMODE_ALBUM          2
-#define ROAR_RPGMODE_TRACK          3
-#define ROAR_RPGMODE_ALBUMTRACK     4
-#define ROAR_RPGMODE_TRACKALBUM     5
-
-// Message flags:
-#define ROAR_MF_NONE                0x00000000 /* No flags set              | Versions: *ALL* */
-#define ROAR_MF_SID                 0x00000001 /* Stream ID                 | Versions: 1   */
-#define ROAR_MF_SPOS                0x00000002 /* Stream Possition          | Versions: 1   */
-#define ROAR_MF_DL                  0x00000004 /* Data Length               | Versions: 1   */
-#define ROAR_MF_LSID                0x00000008 /* Long Stream ID            | Versions: 1   */
-#define ROAR_MF_LSPOS               0x00000010 /* Long Stream Possition     | Versions: 1,2 */
-#define ROAR_MF_LDL                 0x00000020 /* Long Data Length          | Versions: 1   */
-#define ROAR_MF_ED                  0x00000040 /* Error Detection           | Versions: 1,2 */
-#define ROAR_MF_MF                  0x00000080 /* Meta Framing              | Versions: 1   */
-#define ROAR_MF_UNIID               0x00000100 /* Stream ID is Universal ID | Versions: 2   */
-#define ROAR_MF_ANNOUNCE            0x00000200 /* This is an announcement   | Versions: 2   */
-#define ROAR_MF_CLOUD               0x00000400 /* To cloud                  | Versions: 2   */
-
-// Types for SERVER_INFO:
-#define ROAR_IT_SERVER              1
-#define ROAR_IT_COUNTERS            2
-//#define ROAR_IT_LISTEN 3
-
-// Types for ROAR_IT_SERVER (Information Type Server Type = ITST)
-#define ROAR_ITST_VERSION           0
-#define ROAR_ITST_LOCATION          1
-#define ROAR_ITST_DESCRIPTION       2
-#define ROAR_ITST_CONTACT           3
-#define ROAR_ITST_UN_SYSNAME        4
-#define ROAR_ITST_UN_NODENAME       5
-#define ROAR_ITST_UN_RELEASE        6
-#define ROAR_ITST_UN_MACHINE        7
-#define ROAR_ITST_SERIAL            8
-#define ROAR_ITST_ADDRESS           9
-#define ROAR_ITST_UIURL             10
-#define ROAR_ITST_HOSTID            11
-#define ROAR_ITST_LICENSE           12
-#define ROAR_ITST_BUILD             13
-
-// IDs for diffrent clocks:
-#define ROAR_CLOCK_DEFAULT          -2
-#define ROAR_CLOCK_UNKNOWN          -1
-#define ROAR_CLOCK_REALTIME          1
-#define ROAR_CLOCK_MONOTONIC         2
-#define ROAR_CLOCK_UPTIME            3
-
-// old: do not use.
-struct roar_timeofday {
- int64_t  t_sec;   // secund part of system time
- uint64_t t_nsec;  // nano-secund part of system time // we use a int64 here so all types are int64...
- uint64_t c_nhz;   // system hi res timer freq in nHz
- uint64_t d_nsps;  // clock drift in nano secs per sec
-};
+#define ROAR_OT_CLIENT 1
+#define ROAR_OT_STREAM 2
+#define ROAR_OT_SOURCE 3
+#define ROAR_OT_SAMPLE 4
 
 #endif
Index: include/roaraudio/proto_gopher.h
===================================================================
--- include/roaraudio/proto_gopher.h	(revision 6052)
+++ 	(revision )
@@ -1,75 +1,0 @@
-//proto_gopher.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_PROTO_GOPHER_H_
-#define _ROARAUDIO_PROTO_GOPHER_H_
-
-#define ROAR_GOPHER_FLAGS_NONE       0x0000
-#define ROAR_GOPHER_FLAGS_PLUS       0x0001
-
-// offical:
-#define ROAR_GOPHER_TYPE_FILE        '0'
-#define ROAR_GOPHER_TYPE_DIR         '1'
-#define ROAR_GOPHER_TYPE_CSO_PB      '2' /* Item is a CSO phone-book server */
-#define ROAR_GOPHER_TYPE_ERROR       '3'
-#define ROAR_GOPHER_TYPE_BINHEXED    '4' /* Item is a BinHexed Macintosh file. */
-#define ROAR_GOPHER_TYPE_DOSBIN      '5' /* Item is DOS binary archive of some sort. */
-#define ROAR_GOPHER_TYPE_UUENCODED   '6' /* Item is a UNIX uuencoded file. */
-#define ROAR_GOPHER_TYPE_SEARCH      '7' /* Item is an Index-Search server. */
-#define ROAR_GOPHER_TYPE_TELNET      '8'
-#define ROAR_GOPHER_TYPE_BIN         '9' /* Item is a binary file! */
-#define ROAR_GOPHER_TYPE_REDUNDANT   '+' /* Item is a redundant server */
-#define ROAR_GOPHER_TYPE_TN3270      'T' /* Item points to a text-based tn3270 session. */
-#define ROAR_GOPHER_TYPE_GIF         'g' /* Item is a GIF format graphics file. */
-#define ROAR_GOPHER_TYPE_IMAGE       'I' /* Item is some kind of image file.  Client decides how to display. */
-#define ROAR_GOPHER_TYPE_INFO        'i' /* text in menus */
-
-// inoffical:
-#define ROAR_GOPHER_TYPE_SOUND       's'
-#define ROAR_GOPHER_TYPE_MOVIE       ';'
-#define ROAR_GOPHER_TYPE_MIME        'M'
-#define ROAR_GOPHER_TYPE_HTML        'h'
-
-struct roar_gopher_menu_item {
- int flags;
- char type;
- const char * name;
- const char * selector;
- const char * host;
- unsigned int port;
-};
-
-struct roar_gopher_menu {
- int flags;
- struct roar_gopher_menu_item * items;
- size_t items_len;
-};
-
-#endif
-
-//ll
Index: include/roaraudio/sample.h
===================================================================
--- include/roaraudio/sample.h	(revision 6052)
+++ include/roaraudio/sample.h	(revision 0)
@@ -1,37 +1,11 @@
-//sample.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
+//stream.h:
 
 #ifndef _ROARAUDIO_SAMPLE_H_
 #define _ROARAUDIO_SAMPLE_H_
 
-// we do not need any roar_audio_info struct because it IS in servers native format
 struct roar_sample {
- char                 name[ROAR_BUFFER_NAME];
- struct roar_buffer * data;
+ size_t len;
+ void * data;
+ struct roar_audio_info info;
 };
 
Index: include/roaraudio/socket.h
===================================================================
--- include/roaraudio/socket.h	(revision 6052)
+++ 	(revision )
@@ -1,55 +1,0 @@
-//socket.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_SOCKET_H_
-#define _ROARAUDIO_SOCKET_H_
-
-#define ROAR_SOCKET_TYPE_NONE             0
-#define ROAR_SOCKET_TYPE_UNKNOWN          ROAR_SOCKET_TYPE_NONE
-#define ROAR_SOCKET_TYPE_INET             1
-#define ROAR_SOCKET_TYPE_TCP              ROAR_SOCKET_TYPE_INET
-#define ROAR_SOCKET_TYPE_UNIX             2
-#define ROAR_SOCKET_TYPE_FORK             3
-#define ROAR_SOCKET_TYPE_PIPE             ROAR_SOCKET_TYPE_FORK
-#define ROAR_SOCKET_TYPE_FILE             4
-#define ROAR_SOCKET_TYPE_UDP              5
-#define ROAR_SOCKET_TYPE_GENSTR           6 /* generic stream: TCP or UNIX */
-#define ROAR_SOCKET_TYPE_DECNET           7 /* DECnet */
-#define ROAR_SOCKET_TYPE_TCP6             8
-#define ROAR_SOCKET_TYPE_UDP6             9
-#define ROAR_SOCKET_TYPE_INET6            ROAR_SOCKET_TYPE_TCP6
-#define ROAR_SOCKET_TYPE_IPXSPX           10
-#define ROAR_SOCKET_TYPE_IPX              11
-#define ROAR_SOCKET_TYPE_LAT_SERVICE      12
-#define ROAR_SOCKET_TYPE_LAT_REVERSE_PORT 13
-
-#define ROAR_SOCKET_TYPE_MAX              13
-
-#endif
-
-//ll
Index: include/roaraudio/stream.h
===================================================================
--- include/roaraudio/stream.h	(revision 6052)
+++ include/roaraudio/stream.h	(revision 0)
@@ -1,29 +1,3 @@
 //stream.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
 
 #ifndef _ROARAUDIO_STREAM_H_
@@ -32,107 +6,13 @@
 #define ROAR_DIR_DEFAULT ROAR_DIR_PLAY
 
-#define ROAR_DIR_PLAY        1
-#define ROAR_DIR_RECORD      2
-#define ROAR_DIR_MONITOR     3
-#define ROAR_DIR_FILTER      4
+#define ROAR_DIR_PLAY     1
+#define ROAR_DIR_RECORD   2
+#define ROAR_DIR_MONITOR  3
+#define ROAR_DIR_FILTER   4
 
-#define ROAR_DIR_OUTPUT      5
+#define ROAR_DIR_OUTPUT   5
 
-#define ROAR_DIR_MIXING      6
+//#define ROAR_DIR_MIXING   6
 //#define ROAR_DIR_INTERNAL 7
-
-#define ROAR_DIR_META        8
-#define ROAR_DIR_BIDIR       9
-
-#define ROAR_DIR_THRU       10
-
-#define ROAR_DIR_BRIDGE     11
-
-// MIDI:
-#define ROAR_DIR_MIDI_IN    12
-#define ROAR_DIR_MIDI_OUT   13
-
-// Light Control:
-#define ROAR_DIR_LIGHT_IN   14
-#define ROAR_DIR_LIGHT_OUT  15
-
-// Raw Data:
-#define ROAR_DIR_RAW_IN     16
-#define ROAR_DIR_RAW_OUT    17
-
-// Complex (multi-content container):
-#define ROAR_DIR_COMPLEX_IN  18
-#define ROAR_DIR_COMPLEX_OUT 19
-
-// Radio Data and Transmitter Control System:
-#define ROAR_DIR_RDTCS_IN    20
-#define ROAR_DIR_RDTCS_OUT   21
-
-// RECORD+PLAY:
-#define ROAR_DIR_RECPLAY     22
-
-// Max DIR +1:
-#define ROAR_DIR_DIRIDS      23
-
-// Stream flags:
-#define ROAR_FLAG_NONE           0x0000
-#define ROAR_FLAG_PRIMARY        0x0001
-#define ROAR_FLAG_OUTPUT         0x0002
-#define ROAR_FLAG_DRIVER         ROAR_FLAG_OUTPUT
-#define ROAR_FLAG_SOURCE         0x0004
-#define ROAR_FLAG_SYNC           0x0008
-#define ROAR_FLAG_META           0x0010
-#define ROAR_FLAG_AUTOCONF       0x0020
-#define ROAR_FLAG_CLEANMETA      0x0040
-#define ROAR_FLAG_HWMIXER        0x0080
-#define ROAR_FLAG_PAUSE          0x0100
-#define ROAR_FLAG_MUTE           0x0200
-#define ROAR_FLAG_MMAP           0x0400
-#define ROAR_FLAG_ANTIECHO       0x0800
-#define ROAR_FLAG_VIRTUAL        0x1000
-#define ROAR_FLAG_RECSOURCE      0x2000
-#define ROAR_FLAG_PASSMIXER      0x4000
-#define ROAR_FLAG_PRETHRU        0x8000
-// next are the exteded flags (> 16 bits)
-//#define ROAR_FLAG_SYNC           0x08
-#define ROAR_FLAG_IMMUTABLE      0x00010000
-#define ROAR_FLAG_ENHANCE        0x00020000
-#define ROAR_FLAG_SINGLESINK     0x00040000
-
-#define ROAR_SET_FLAG            0
-#define ROAR_RESET_FLAG          1
-#define ROAR_TOGGLE_FLAG         2
-#define ROAR_NOOP_FLAG           3
-#define ROAR_PROTECT_FLAG        0x8000
-#define ROAR_SET_FLAG_PROTECT    (ROAR_SET_FLAG|ROAR_PROTECT_FLAG)
-#define ROAR_RESET_FLAG_PROTECT  (ROAR_RESET_FLAG|ROAR_PROTECT_FLAG)
-
-// Stream states:
-#define ROAR_STREAMSTATE_UNKNOWN   -1
-#define ROAR_STREAMSTATE_NULL       0
-#define ROAR_STREAMSTATE_UNUSED     ROAR_STREAMSTATE_NULL
-#define ROAR_STREAMSTATE_INITING    1
-#define ROAR_STREAMSTATE_NEW        2
-#define ROAR_STREAMSTATE_OLD        3
-#define ROAR_STREAMSTATE_CLOSING    4
-
-// Stream roles:
-// PA currently defines: video, music, game, event, phone, animation, production, a11y
-// RA includes         : YES    YES    YES   YES    YES    NO         NO          NO
-
-#define ROAR_ROLE_UNKNOWN          -1
-#define ROAR_ROLE_NONE              0
-#define ROAR_ROLE_MUSIC             1
-#define ROAR_ROLE_VIDEO             2
-#define ROAR_ROLE_GAME              3
-#define ROAR_ROLE_EVENT             4
-#define ROAR_ROLE_BEEP              5
-#define ROAR_ROLE_PHONE             6
-#define ROAR_ROLE_BACKGROUND_MUSIC  7
-#define ROAR_ROLE_VOICE             8
-#define ROAR_ROLE_INSTRUMENT        9
-#define ROAR_ROLE_RHYTHM           10
-#define ROAR_ROLE_CLICK            11
-#define ROAR_ROLE_MIXED            12
 
 
@@ -144,5 +24,4 @@
 #define ROAR_STREAMS_MAX  64
 
-
 struct roar_stream {
  int id;
@@ -153,7 +32,12 @@
 
  uint32_t pos;
- uint32_t pos_rel_id; // TODO: why is this not int?
+ uint32_t pos_rel_id;
 
  struct roar_audio_info info;
+
+ int    datalen;
+ char * database;
+ int    offset;
+ char * dataoff;
 };
 
Index: include/roaraudio/targethacks.h
===================================================================
--- include/roaraudio/targethacks.h	(revision 6067)
+++ 	(revision )
@@ -1,94 +1,0 @@
-//targethacks.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_TARGETHACKS_H_
-#define _ROARAUDIO_TARGETHACKS_H_
-
-#ifndef ROAR_HAVE_T_ID_T
-#define id_t      int
-#endif
-
-#ifndef ROAR_HAVE_T_PID_T
-#define pid_t     int
-#endif
-
-#ifndef ROAR_HAVE_T_UID_T
-#define uid_t     int
-#endif
-
-#ifndef ROAR_HAVE_T_GID_T
-#define gid_t     int
-#endif
-
-#ifndef ROAR_HAVE_T_SOCKLEN_T
-#define socklen_t int
-#endif
-
-#ifndef ROAR_HAVE_T_MODE_T
-#define mode_t    unsigned int
-#endif
-
-#ifndef ROAR_HAVE_T_OFF_T
-#define off_t     int
-#endif
-
-/*
-#define size_t    unsigned int
-*/
-#ifndef ROAR_HAVE_T_SSIZE_T
-#define ssize_t   signed   int
-#endif
-
-#ifndef ROAR_HAVE_T_TIME_T
-#define time_t    int64_t
-#endif
-
-#ifndef ROAR_HAVE_T_SA_FAMILY_T
-#define sa_family_t char
-#endif
-
-#ifndef ROAR_HAVE_CONST_M_PI_2
-#define M_PI_2 1.57079632679 /* pi/2 */
-#endif
-
-// funny printf() hacks:
-#ifdef ROAR_TARGET_WIN32
-#define LIBROAR__longlong long
-#define LIBROAR__ll       "l"
-#else
-#define LIBROAR__longlong long long
-#define LIBROAR__ll       "ll"
-#endif
-
-#if defined(ROAR_OS_NETBSD) && defined(ROAR_HAVE_FUNOPEN)
-#undef ROAR_HAVE_FUNOPEN
-#endif
-
-#endif
-
-//ll
Index: include/roaraudio/typedefs.h
===================================================================
--- include/roaraudio/typedefs.h	(revision 6052)
+++ 	(revision )
@@ -1,80 +1,0 @@
-//typedefs.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of libroar a part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  libroar is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE for everyone want's to change something and send patches:
- *  read README and HACKING! There a addition information on
- *  the license of this document you need to read before you send
- *  any patches.
- *
- *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
- *  or libpulse*:
- *  The libs libroaresd, libroararts and libroarpulse link this lib
- *  and are therefore GPL. Because of this it may be illigal to use
- *  them with any software that uses libesd, libartsc or libpulse*.
- */
-
-#ifndef _ROARAUDIO_TYPEDEFS_H_
-#define _ROARAUDIO_TYPEDEFS_H_
-
-#include <roaraudio.h>
-
-// IO:
-typedef struct roar_vio_calls        VIO;
-
-// Network:
-typedef struct roar_nnode            NNode;
-
-// Buffers, Ram, GP-Structs:
-typedef struct roar_keyval           KeyVal;
-typedef struct roar_buffer         * RoarBuffer;
-typedef void                       * RoarMem; // for use with roar_mm_*()
-
-// Audio:
-typedef struct roar_audio_info       AudioInfo;
-typedef struct roar_mixer_settings   RoarMixer;
-
-// Meta Data:
-typedef struct roar_meta             RoarMeta;
-
-// Protocol:
-typedef struct roar_connection       RoarConnection;
-typedef struct roar_message          RoarMsg;
-typedef struct roar_beep             RoarBeep;
-
-// Objects:
-typedef struct roar_client           RoarClient;
-typedef struct roar_stream           RoarStream;
-
-// RoarDL:
-typedef struct roar_dl_lhandle       LHandle;
-
-// ID types:
-typedef int                          RoarSID;
-typedef int                          RoarCID;
-
-// Protocol:
-typedef int                          RoarCMD;
-
-#endif
-
-//ll
Index: include/roaraudio/units.h
===================================================================
--- include/roaraudio/units.h	(revision 6052)
+++ 	(revision )
@@ -1,115 +1,0 @@
-//units.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_UNITS_H_
-#define _ROARAUDIO_UNITS_H_
-
-/* suffix: */
-#define _MICRO  (1/1000000)
-#define _MILI   (1/1000)
-#define _ONE    1
-#define _KILO   1000
-#define _MEGA   ((int_least32_t)_KILO*(int_least32_t)_KILO)
-#define _GIGA   ((int_least32_t)_KILO*_MEGA)
-#define _TERA   ((int_least32_t)_KILO*_GIGA)
-
-
-/* Time: */
-#ifndef _SEC
-#if defined(_UNITS_T_BASE_MSEC)
-#define _SEC_TYPE int_least32_t
-#define _SEC  (_SEC_TYPE)1000
-#elif defined(_UNITS_T_BASE_USEC)
-#define _SEC_TYPE int_least32_t
-#define _SEC  (_SEC_TYPE)1000000
-//#elif defined(_UNITS_T_BASE_SEC)
-#else
-#define _SEC  1
-#define _SEC_TYPE int
-#endif
-#endif
-
-#ifndef _SEC_TYPE
-#define _SEC_TYPE int_least32_t
-#endif
-
-#define _MIN  ((_SEC_TYPE)60*_SEC)
-#define _HOUR ((_SEC_TYPE)60*_MIN)
-
-#define _MSEC (_SEC*_MILI)
-#define _USEC (_SEC*_MICRO)
-
-
-/* distance */
-#ifndef _METER
-#if defined(_UNITS_D_BASE_MMETER)
-#define _METER_TYPE int
-#define _METER 1000
-#elif defined(_UNITS_D_BASE_UMETER)
-#define _METER_TYPE int_least32_t
-#define _METER (_METER_TYPE)1000000
-//#elif defined(_UNITS_D_BASE_METER)
-#else
-#define _METER_TYPE int
-#define _METER 1
-#endif
-#endif
-
-#ifndef _METER_TYPE
-#define _METER_TYPE int_least32_t
-#endif
-
-#define _AE    ((int_least64_t)149597870691LL     *_METER)
-#define _LJ    (9460730472580800LL *_METER)
-#define _PC    (30856804413117847LL*_METER) /* TODO: FIXME: get a more corret value */
-
-
-/* speed */
-#define _MPS                   ((double)_METER/_SEC)
-#define _KMPH                  (_KILO*_METER/_HOUR)
-#define _SPEED_OF_SOUND_AIR    (343. *_MPS)
-#define _SPEED_OF_SOUND_WATER  (1407.*_MPS)
-#define _SPEED_OF_SOUND        _SPEED_OF_SOUND_AIR
-#define _SPEED_OF_LIGHT_VACUUM (299792458LL*_MPS)
-#define _SPEED_OF_LIGHT        _SPEED_OF_LIGHT_VACUUM
-
-
-/* Bits -> Bytes: */
-#define _BIT2BYTE(x) (((int)((x)/8)) + ((x) % 8 ? 1 : 0))
-#define _BYTE2BIT(x) ((x)*8)
-
-#define _8BIT  _BIT2BYTE(8)
-#define _16BIT _BIT2BYTE(16)
-#define _24BIT _BIT2BYTE(24)
-#define _32BIT _BIT2BYTE(32)
-#define _64BIT _BIT2BYTE(64)
-
-
-#endif
-
-//ll
Index: include/roaraudio/vendors.h
===================================================================
--- include/roaraudio/vendors.h	(revision 6052)
+++ 	(revision )
@@ -1,41 +1,0 @@
-//vendors.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2011-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_VENDORS_H_
-#define _ROARAUDIO_VENDORS_H_
-
-#define ROAR_VID_ROARAUDIO      0
-#define ROAR_VNAME_ROARAUDIO    "RoarAudio"
-#define ROAR_VSTR_ROARAUDIO     "<0/" ROAR_VNAME_ROARAUDIO ">"
-#define ROAR_VID_BASICDEV       1
-#define ROAR_VNAME_BASICDEV     "BasicDevice"
-#define ROAR_VSTR_BASICDEV      "<1/" ROAR_VNAME_BASICDEV ">"
-
-#endif
-
-//ll
Index: include/roaraudio/win32hacks.h
===================================================================
--- include/roaraudio/win32hacks.h	(revision 6052)
+++ 	(revision )
@@ -1,68 +1,0 @@
-//win32hacks.h:
-
-/*
- *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2015
- *
- *  This file is part of RoarAudio,
- *  a cross-platform sound system for both, home and professional use.
- *  See README for details.
- *
- *  This file is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU Lesser General Public License version 3
- *  as published by the Free Software Foundation.
- *
- *  RoarAudio is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public License
- *  along with this software; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
- *  Boston, MA 02110-1301, USA.
- *
- *  NOTE: Even though this file is LGPLed it (may) include GPLed files
- *  so the license of this file is/may therefore downgraded to GPL.
- *  See HACKING for details.
- */
-
-#ifndef _ROARAUDIO_WIN32HACKS_H_
-#define _ROARAUDIO_WIN32HACKS_H_
-
-#ifdef ROAR_TARGET_WIN32
-
-#include <windows.h>
-
-#define SHUT_RD   SD_RECEIVE
-#define SHUT_WR   SD_SEND
-#define SHUT_RDWR SD_BOTH
-
-#ifndef LITTLE_ENDIAN
-#define LITTLE_ENDIAN 1234
-#endif
-#ifndef BIG_ENDIAN
-#define BIG_ENDIAN    4321
-#endif
-#ifndef PDP_ENDIAN
-#define PDP_ENDIAN    3412
-#endif
-
-#ifndef BYTE_ORDER
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
-
-#if !defined(ROAR_HAVE_BSDSOCKETS) && !defined(ROAR_HAVE_IPV4)
-#define ROAR_HAVE_IPV4
-#endif
-
-#define ROAR_NETWORK_READ(x,y,z)  recv((x), (y), (z), 0)
-#define ROAR_NETWORK_WRITE(x,y,z) send((x), (y), (z), 0)
-#else
-#define ROAR_NETWORK_READ(x,y,z)  read((x), (y), (z))
-#define ROAR_NETWORK_WRITE(x,y,z) write((x), (y), (z))
-#endif
-
-#endif
-
-//ll
