source: roaraudio/roarclients/pipetest.c @ 1304:4c024e764410

Last change on this file since 1304:4c024e764410 was 1304:4c024e764410, checked in by phi, 15 years ago

added pipe impl. working for sockets at least and a simple test prog

File size: 1.5 KB
Line 
1//pipetest.c:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008
5 *
6 *  This file is part of roarclients 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, 675 Mass Ave, Cambridge, MA 02139, USA.
22 *
23 */
24
25#include <roaraudio.h>
26
27#define BUF_MAX 1024
28
29int main (void) {
30 char buf[BUF_MAX];
31 size_t len;
32 struct roar_vio_calls s0, s1;
33 struct roar_vio_calls * me;
34
35 if ( roar_vio_open_pipe(&s0, &s1, ROAR_VIO_PIPE_TYPE_AUTO, O_RDWR) == -1 ) {
36  fprintf(stderr, "Error: can not create pipe\n");
37 }
38
39 switch (fork()) {
40  case 0:
41    me = &s0;
42    roar_vio_close(&s1);
43   break;
44  default:
45    me = &s1;
46    roar_vio_close(&s0);
47 }
48
49 snprintf(buf, BUF_MAX, "Hello from pid %i\n", getpid());
50 roar_vio_write(me, buf, strlen(buf));
51
52 buf[0] = 0;
53
54 roar_vio_read(me, buf, BUF_MAX);
55 printf("This is pid %i: %s", getpid(), buf);
56
57 roar_vio_close(me);
58
59 return 0;
60}
61
62//ll
Note: See TracBrowser for help on using the repository browser.