aboutsummaryrefslogtreecommitdiff
path: root/osc/tcpsocket.OSC.pd
blob: 1b838e373205bb6b56431aeed921f3ef4d219d2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
#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 40 102 pd reset;
#X obj 104 280 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;
#X text 70 162 <- PUT HERE THE PROTOCOL SPECIFIC DELIMITER CODE;
#X text 15 197 --------------------------------------------------------
;
#X text 13 129 --------------------------------------------------------
;
#X obj 7 6 r \$1.TCPSOCKET;
#X obj 7 465 s \$1.TCPSOCKET;
#X obj 104 256 r \$1.TCPSOCKET;
#X text 200 454 Author: Roman Haefeli;
#X text 55 75 <- only pass stream of own socket;
#N canvas 395 78 268 176 OSC 0;
#X obj 27 18 inlet;
#X obj 27 156 outlet;
#X obj 144 23 inlet;
#X text 194 23 reset;
#N canvas 820 354 408 355 parse_frameheader 0;
#X obj 14 10 inlet;
#X obj 14 304 outlet;
#X obj 322 178 outlet;
#X obj 134 228 list prepend;
#X obj 230 228 t a;
#X obj 14 43 list prepend 0;
#X obj 14 123 f;
#X obj 14 144 + 1;
#X obj 14 166 sel 4;
#X obj 14 99 t b a;
#X obj 14 69 route 0 1;
#X text 97 64 0 = frame header;
#X text 97 80 1 = frame content;
#X obj 14 187 t b b;
#X obj 109 22 r \$0.route;
#X obj 46 230 s \$0.route;
#X msg 46 208 1;
#X obj 14 261 list append;
#X obj 243 18 inlet;
#X obj 243 44 b;
#X msg 272 45 0;
#X obj 272 65 s \$0.route;
#N canvas 504 266 169 262 MSB_2SB_3SB_LSB->float 0;
#X obj 7 10 inlet;
#X obj 7 214 outlet;
#X obj 7 33 unpack f f f f;
#X obj 70 74 << 8;
#X obj 38 118 << 16;
#X obj 7 165 << 24;
#X obj 70 98 +;
#X obj 38 139 +;
#X obj 7 190 +;
#X connect 0 0 2 0;
#X connect 2 0 5 0;
#X connect 2 1 4 0;
#X connect 2 2 3 0;
#X connect 2 3 6 1;
#X connect 3 0 6 0;
#X connect 4 0 7 0;
#X connect 5 0 8 0;
#X connect 6 0 7 1;
#X connect 7 0 8 1;
#X connect 8 0 1 0;
#X restore 14 282 pd MSB_2SB_3SB_LSB->float;
#X text 288 19 new packet;
#X text 23 327 frame length;
#X text 322 201 data stream;
#X connect 0 0 5 0;
#X connect 3 0 4 0;
#X connect 3 0 17 1;
#X connect 4 0 3 1;
#X connect 5 0 10 0;
#X connect 6 0 7 0;
#X connect 7 0 6 1;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 6 0;
#X connect 9 1 3 0;
#X connect 10 0 9 0;
#X connect 10 1 2 0;
#X connect 13 0 17 0;
#X connect 13 1 16 0;
#X connect 14 0 5 1;
#X connect 16 0 15 0;
#X connect 17 0 22 0;
#X connect 18 0 19 0;
#X connect 18 0 20 0;
#X connect 19 0 3 1;
#X connect 20 0 21 0;
#X connect 20 0 6 1;
#X connect 22 0 1 0;
#X restore 27 77 pd parse_frameheader;
#N canvas 748 498 450 300 form_packet 0;
#X obj 68 23 inlet;
#X text 106 24 length;
#X obj 194 22 inlet;
#X text 244 23 stream;
#X obj 120 190 list prepend;
#X obj 216 190 t a;
#X obj 14 123 f;
#X obj 14 144 + 1;
#X obj 14 99 t b a;
#X obj 14 187 t b b;
#X obj 46 213 list append;
#X obj 14 166 sel 0;
#X obj 46 253 outlet;
#X text 100 254 OSC packet;
#X text 261 262 EOP;
#X obj 210 261 outlet;
#X obj 68 88 t b a;
#X msg 68 111 0;
#X connect 0 0 16 0;
#X connect 2 0 8 0;
#X connect 4 0 5 0;
#X connect 4 0 10 1;
#X connect 5 0 4 1;
#X connect 6 0 7 0;
#X connect 7 0 6 1;
#X connect 7 0 11 0;
#X connect 8 0 6 0;
#X connect 8 1 4 0;
#X connect 9 0 15 0;
#X connect 9 1 10 0;
#X connect 10 0 12 0;
#X connect 11 0 9 0;
#X connect 16 0 17 0;
#X connect 16 0 4 1;
#X connect 16 1 11 1;
#X connect 17 0 6 1;
#X restore 27 129 pd form_packet;
#X obj 169 85 b;
#X obj 144 50 b;
#N canvas 389 242 191 341 serialize 0;
#X obj 5 100 t a a;
#X obj 37 122 list prepend 0;
#X obj 37 143 s \$0.inbuffer;
#X obj 5 174 list length;
#X obj 5 218 until;
#X obj 5 195 t a b;
#X obj 5 241 f;
#X obj 50 244 + 1;
#X msg 49 218 0;
#X obj 5 267 tabread \$0.inbuffer;
#X obj 5 50 inlet;
#X obj 5 289 outlet;
#N canvas 294 258 396 232 list_serialize_raw 0;
#X obj 13 73 until;
#X obj 13 97 list append;
#X obj 13 47 t b a;
#X obj 13 23 inlet;
#X obj 13 169 outlet;
#X obj 156 122 b;
#X text 12 190 cut incoming list into pieces of a maximum of the buffersize.
;
#X obj 13 121 list split 65536;
#X connect 0 0 1 0;
#X connect 1 0 7 0;
#X connect 2 0 0 0;
#X connect 2 1 1 1;
#X connect 3 0 2 0;
#X connect 5 0 0 1;
#X connect 7 0 4 0;
#X connect 7 1 1 1;
#X connect 7 2 5 0;
#X connect 7 2 4 0;
#X restore 5 74 pd list_serialize_raw;
#X obj 5 12 table \$0.inbuffer 65536;
#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 12 0;
#X connect 12 0 0 0;
#X restore 27 45 pd serialize;
#X connect 0 0 8 0;
#X connect 2 0 7 0;
#X connect 4 0 5 0;
#X connect 4 1 5 1;
#X connect 5 0 1 0;
#X connect 5 1 6 0;
#X connect 6 0 4 1;
#X connect 7 0 4 1;
#X connect 8 0 4 0;
#X restore 7 161 pd OSC;
#X text 201 474 Version: 2009-02-02;
#X connect 0 0 2 1;
#X connect 1 0 2 0;
#X connect 1 1 0 0;
#X connect 2 0 22 0;
#X connect 3 0 22 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 18 0;
#X connect 17 0 1 0;
#X connect 19 0 4 0;
#X connect 22 0 7 0;