source: roaraudio/include/libroar/libroar.h @ 3632:2c8f006d9a0c

Last change on this file since 3632:2c8f006d9a0c was 3632:2c8f006d9a0c, checked in by phi, 14 years ago

added some display structures

File size: 3.9 KB
Line 
1//libroar.h:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008, 2009, 2010
5 *
6 *  This file is part of libroar a part of RoarAudio,
7 *  a cross-platform sound system for both, home and professional use.
8 *  See README for details.
9 *
10 *  This file is free software; you can redistribute it and/or modify
11 *  it under the terms of the GNU General Public License version 3
12 *  as published by the Free Software Foundation.
13 *
14 *  libroar is distributed in the hope that it will be useful,
15 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
16 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 *  GNU General Public License for more details.
18 *
19 *  You should have received a copy of the GNU General Public License
20 *  along with this software; see the file COPYING.  If not, write to
21 *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
22 *  Boston, MA 02110-1301, USA.
23 *
24 *  NOTE for everyone want's to change something and send patches:
25 *  read README and HACKING! There a addition information on
26 *  the license of this document you need to read before you send
27 *  any patches.
28 *
29 *  NOTE for uses of non-GPL (LGPL,...) software using libesd, libartsc
30 *  or libpulse*:
31 *  The libs libroaresd, libroararts and libroarpulse link this lib
32 *  and are therefore GPL. Because of this it may be illigal to use
33 *  them with any software that uses libesd, libartsc or libpulse*.
34 */
35
36#ifndef _LIBROAR_H_
37#define _LIBROAR_H_
38
39#define ROAR_DBG_PREFIX  "libroar"
40
41#include <roaraudio.h>
42
43#include <stdarg.h>
44
45#ifdef ROAR_HAVE_WAIT
46#include <sys/wait.h>
47#endif
48
49#ifdef ROAR_HAVE_H_FCNTL
50#include <fcntl.h>
51#endif
52
53#ifdef ROAR_HAVE_H_SIGNAL
54#include <signal.h>
55#endif
56
57#ifdef ROAR_HAVE_SYSLOG
58#include <syslog.h>
59#endif
60
61#ifdef ROAR_HAVE_BSDSOCKETS
62
63#ifndef ROAR_TARGET_WIN32
64#include <sys/socket.h>
65#ifdef ROAR_HAVE_IPV4
66#include <netinet/in_systm.h>
67#include <netinet/in.h>
68#include <netinet/ip.h>
69#endif
70#include <sys/uio.h>
71#endif
72#ifdef ROAR_HAVE_LIBDNET
73#include <netdnet/dn.h>
74#include <netdnet/dnetdb.h>
75#endif
76#ifdef ROAR_HAVE_IPX
77#include <netipx/ipx.h>
78#endif
79
80#endif /* ROAR_HAVE_BSDSOCKETS */
81
82#ifdef ROAR_HAVE_LIBSSL
83#include <openssl/bio.h>
84#include <openssl/evp.h>
85#endif
86
87#ifdef ROAR_HAVE_LIBSLP
88#include <slp.h>
89#ifdef ROAR_HAVE_H_SYS_TIME
90#include <sys/time.h>
91#endif
92#ifdef ROAR_HAVE_H_TIME
93#include <time.h>
94#endif
95#endif
96
97#if defined(ROAR_HAVE_LIBDL)
98#include <dlfcn.h>
99#endif
100
101#ifdef ROAR_HAVE_LIBX11
102#include <X11/Xlib.h>
103#include <X11/Xatom.h>
104#endif
105
106#include "error.h"
107#include "config.h"
108#include "keyval.h"
109#include "roardl.h"
110#include "debug.h"
111#include "memmgr.h"
112#include "stack.h"
113#include "buffer.h"
114#include "nnode.h"
115#include "vio_ctl.h"
116#include "vio.h"
117#include "vio_cmd.h"
118#include "vio_ops.h"
119#include "vio_string.h"
120#include "vio_magic.h"
121#include "vio_bio.h"
122#include "vio_stdio.h"
123#include "vio_stack.h"
124#include "vio_jumbo.h"
125#include "vio_pipe.h"
126#include "vio_socket.h"
127#include "vio_winsock.h"
128#include "vio_proto.h"
129#include "vio_rtp.h"
130#include "vio_select.h"
131// dstr needs to have access to all other VIOs, so it must be included last
132#include "vio_dstr.h"
133#include "vio_tantalos.h"
134#include "client.h"
135#include "basic.h"
136#include "stream.h"
137#include "simple.h"
138#include "cdrom.h"
139#include "auth.h"
140#include "socket.h"
141#include "ctl.h"
142#include "meta.h"
143#include "file.h"
144#include "acl.h"
145#include "pinentry.h"
146#include "sshaskpass.h"
147#include "roarslp.h"
148#include "display.h"
149#include "roarx11.h"
150#include "beep.h"
151
152// some basic macros:
153#define ROAR_MAX2(a,b) ((a) > (b) ? (a) : (b))
154#define ROAR_MIN2(a,b) ((a) < (b) ? (a) : (b))
155
156#define ROAR_MAX3(a,b,c) ROAR_MAX2(ROAR_MAX2(a,b),c)
157#define ROAR_MIN3(a,b,c) ROAR_MIN2(ROAR_MIN2(a,b),c)
158
159#define ROAR_MAX4(a,b,c,d) ROAR_MAX2(ROAR_MAX2(a,b),ROAR_MAX2(c,d))
160#define ROAR_MIN4(a,b,c,d) ROAR_MIN2(ROAR_MIN2(a,b),ROAR_MIN2(c,d))
161
162#define ROAR_MAX ROAR_MAX2
163#define ROAR_MIN ROAR_MIN2
164
165#endif
166
167//ll
Note: See TracBrowser for help on using the repository browser.