source: roaraudio/roard/include/client.h @ 3517:1a3218a3fc5b

Last change on this file since 3517:1a3218a3fc5b was 3517:1a3218a3fc5b, checked in by phi, 14 years ago

updated license headers, FSF moved office

File size: 2.4 KB
Line 
1//client.h:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008
5 *
6 *  This file is part of roard 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 *  RoarAudio 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 */
25
26#ifndef _CLIENT_H_
27#define _CLIENT_H_
28
29/*
30 Defined in <roaraudio/client.h>
31
32
33#define ROAR_BUFFER_NAME 80
34
35#define ROAR_CLIENTS_MAX 64
36#define ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT 4
37
38struct roar_client {
39 int fh; /-* controll connection *-/
40// int last_stream; /-* id of the last stream created *-/
41 char name[ROAR_BUFFER_NAME];
42 int pid;
43 char host[ROAR_BUFFER_NAME];
44 int execed;
45 int streams[ROAR_CLIENTS_MAX_STREAMS_PER_CLIENT];
46} * g_clients[ROAR_CLIENTS_MAX];
47*/
48
49struct roar_client * g_clients[ROAR_CLIENTS_MAX];
50
51
52// basic functions
53
54int clients_init      (void);
55int clients_free      (void);
56int clients_new       (void);
57int clients_delete    (int id);
58int clients_set_fh    (int id, int    fh);
59int clients_set_pid   (int id, int    pid);
60int clients_set_uid   (int id, int    uid);
61int clients_set_gid   (int id, int    gid);
62int clients_set_name  (int id, char * name);
63int clients_set_proto (int id, int    proto);
64int clients_get       (int id, struct roar_client ** client);
65int clients_get_fh    (int id);
66
67// network functions
68int clients_check_all  (void);
69int clients_check      (int id);
70int clients_send_mon   (struct roar_audio_info * sa, uint32_t pos);
71int clients_send_filter(struct roar_audio_info * sa, uint32_t pos);
72
73// stream functions
74
75
76int client_stream_exec   (int client, int stream);
77int client_stream_set_fh (int client, int stream, int fh);
78int client_stream_add    (int client, int stream);
79int client_stream_delete (int client, int stream);
80int client_stream_move   (int client, int stream);
81
82#endif
83
84//ll
Note: See TracBrowser for help on using the repository browser.