Changeset 795:3820239da022 in roaraudio for libroaryiff
- Timestamp:
- 09/17/08 03:53:04 (16 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libroaryiff/events.c
r793 r795 25 25 #include <libroaryiff.h> 26 26 27 // RoarAudio isn't event based, so we need to trick a lot here 28 29 int YGetNextEvent (YConnection *con, YEvent *event, Boolean block) { 30 struct roar_connection rcon; 31 struct roar_stream s; 32 struct roar_message m; 33 34 if ( con == NULL || event == NULL ) 35 return -1; 36 37 rcon.fh = con->fd; 38 39 if ( con->prev_generated_yid != YIDNULL ) { 40 if ( roar_get_stream(&rcon, &s, ROARYIFF_YID2ROAR(con->prev_generated_yid)) == -1 ) { 41 // ok, we know something happened. 42 // next we try to seend a noop to see of the server is still alive 43 m.cmd = ROAR_CMD_NOOP; 44 m.datalen = 0; 45 46 if ( roar_req(&rcon, &m, NULL) == -1 ) { 47 // the server died 48 event->type = YDisconnect; 49 return 1; 50 } else { 51 // the stream died 52 event->type = YSoundObjectKill; 53 event->kill.yid = con->prev_generated_yid; 54 return 1; 55 } 56 } 57 // else { nothing interesting happened } 58 } 59 60 return 0; 61 } 62 27 63 //ll
Note: See TracChangeset
for help on using the changeset viewer.