From 5a7cd508e415bfd1e81e52c1c6a27115a83ef1c1 Mon Sep 17 00:00:00 2001 From: Martin Peach Date: Tue, 13 Jan 2009 14:03:33 +0000 Subject: This is Roman Haefeli's tcpsocketserver for FUDI and OSC. Untested! svn path=/trunk/externals/mrpeach/; revision=10527 --- osc/tcpsocket.FUDI.pd | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 osc/tcpsocket.FUDI.pd (limited to 'osc/tcpsocket.FUDI.pd') diff --git a/osc/tcpsocket.FUDI.pd b/osc/tcpsocket.FUDI.pd new file mode 100644 index 0000000..0ced636 --- /dev/null +++ b/osc/tcpsocket.FUDI.pd @@ -0,0 +1,132 @@ +#N canvas 585 75 446 533 10; +#X obj 50 49 == \$2; +#X obj 7 28 route in socket; +#X obj 7 76 spigot; +#N canvas 622 183 512 335 reset 0; +#X obj 23 41 route \$2; +#X obj 23 63 route reset; +#X obj 23 83 t b b; +#X msg 55 170 done; +#X obj 23 113 outlet; +#X text 161 33 this is used to:; +#X text 87 114 a) reset the sockethandler on a new connection; +#X text 88 129 (for instance \, if the previous connection was quitted +in the middle of a packet).; +#X text 55 213 b) check for the socketserver \, if a sockethandler +on specified socket already exists.; +#X obj 55 191 s \$1.TCPSOCKET; +#X obj 23 19 r \$1.TCPSOCKET; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 2 1 3 0; +#X connect 3 0 9 0; +#X connect 10 0 0 0; +#X restore 46 102 pd reset; +#X obj 105 279 route socket ip; +#X obj 41 367 list append; +#X obj 58 323 list append; +#X obj 7 299 t a b b b; +#X obj 7 414 list prepend out; +#X obj 41 391 list prepend socket.out; +#X obj 58 345 list prepend ip.out; +#X obj 7 442 list trim; +#X text 16 220 the lower part makes [tcpsocketserver] behave like [tcpserver] +; +#X obj -2 136 cnv 15 450 70 empty empty empty 20 12 0 14 -204786 -66577 +0; +#N canvas 385 67 454 323 FUDI 0; +#X obj 23 6 inlet; +#X obj 23 284 outlet; +#N canvas 389 242 220 273 serialize 0; +#X obj 5 72 t a a; +#X obj 37 94 list prepend 0; +#X obj 37 115 s \$0.inbuffer; +#X obj 5 135 list length; +#X obj 5 179 until; +#X obj 5 156 t a b; +#X obj 5 202 f; +#X obj 50 205 + 1; +#X msg 49 179 0; +#X obj 5 228 tabread \$0.inbuffer; +#X obj 5 50 inlet; +#X obj 5 250 outlet; +#X obj 5 12 table \$0.inbuffer 1024; +#X connect 0 0 3 0; +#X connect 0 1 1 0; +#X connect 1 0 2 0; +#X connect 3 0 5 0; +#X connect 4 0 6 0; +#X connect 5 0 4 0; +#X connect 5 1 8 0; +#X connect 6 0 7 0; +#X connect 6 0 9 0; +#X connect 7 0 6 1; +#X connect 8 0 6 1; +#X connect 9 0 11 0; +#X connect 10 0 0 0; +#X restore 23 30 pd serialize; +#X obj 23 109 t a a; +#X obj 97 181 list prepend; +#X obj 195 180 t a; +#X obj 23 211 list append; +#X obj 23 234 t a b; +#X obj 160 56 inlet; +#X text 210 56 reset; +#X obj 23 53 sel 10 13; +#X msg 23 76 32; +#X obj 23 133 sel 59; +#X text 83 134 asci: semicolon is used as a delimiter; +#X obj 160 152 b; +#X obj 23 257 list append 10; +#X connect 0 0 2 0; +#X connect 2 0 10 0; +#X connect 3 0 12 0; +#X connect 3 1 4 0; +#X connect 4 0 5 0; +#X connect 4 0 6 1; +#X connect 5 0 4 1; +#X connect 6 0 7 0; +#X connect 7 0 15 0; +#X connect 7 1 6 1; +#X connect 7 1 4 1; +#X connect 8 0 14 0; +#X connect 10 0 11 0; +#X connect 10 1 11 0; +#X connect 10 2 3 0; +#X connect 11 0 3 0; +#X connect 12 0 6 0; +#X connect 14 0 4 1; +#X connect 14 0 6 1; +#X connect 15 0 1 0; +#X restore 7 161 pd FUDI; +#X text 70 162 <- PUT HERE THE PROTOCOL SPECIFIC DELIMITER CODE; +#X text 15 197 -------------------------------------------------------- +; +#X text 12 129 -------------------------------------------------------- +; +#X obj 7 6 r \$1.TCPSOCKET; +#X obj 7 465 s \$1.TCPSOCKET; +#X obj 105 255 r \$1.TCPSOCKET; +#X text 200 454 Author: Roman Haefeli; +#X text 201 474 Version: 2009-01-11; +#X text 50 74 <- only pass stream of own socket; +#X connect 0 0 2 1; +#X connect 1 0 2 0; +#X connect 1 1 0 0; +#X connect 2 0 14 0; +#X connect 3 0 14 1; +#X connect 4 0 5 1; +#X connect 4 1 6 1; +#X connect 5 0 9 0; +#X connect 6 0 10 0; +#X connect 7 0 8 0; +#X connect 7 2 5 0; +#X connect 7 3 6 0; +#X connect 8 0 11 0; +#X connect 9 0 11 0; +#X connect 10 0 11 0; +#X connect 11 0 19 0; +#X connect 14 0 7 0; +#X connect 18 0 1 0; +#X connect 20 0 4 0; -- cgit v1.2.1