*** empty log message ***
[chuck-blob.git] / v2 / test / event_osc_flood.ck
blobb85a2aa4798bd4cc25783df242bc0b46f70ef42e
1 // the patch 
2 // launch with opensound_demo_send.ck
3 sndbuf buf => dac;
5 //create our OSC receiver
6 OSC_Recv orec;
7 6449 => orec.port;  //use port 6449
8 orec.listen(); //start listening ( launches thread ) 
10 function void receiver() { 
11         //create an address in the receiver 
12         //and store it in a new variable.\
13         orec.event("/bang/me,if") @=> OSC_Addr rate_addr; 
14         while ( true ) { 
16                 rate_addr => now; //wait for Events to arrive.
18                 //grab the next message from the queue. 
19                 while ( rate_addr.nextMesg() != 0 ) { 
20                         rate_addr.getInt() => int hi;
21                         rate_addr.getFloat() => float span;
22                         <<<hi>>>;
23                         //fake your own death
24                         if ( std.rand2f(0.0, 1.0) < 0.07 ) { 
25                                 <<<"stall">>>;
26                                 0.5::second => now;
27                         }
28                 }
29         }       
32 function void sender( float span ) { 
33         OSC_Send xmit;
34         xmit.setHost( "localhost", 6449 );
35         0 => int i;
36         while ( true ) { 
37                 xmit.startMesg( "/bang/me", ",if" );
38                 xmit.addInt(i);
39                 xmit.addFloat(span);
40                 i++;
41                 span::ms => now;
42         }
47 // start our listening shred
48 spork ~ receiver();
49 spork ~ sender(10);
50 // time loop
51 while( true )
53         1::second => now;