diff options
author | Guenter Geiger <ggeiger@users.sourceforge.net> | 2003-03-05 21:14:24 +0000 |
---|---|---|
committer | Guenter Geiger <ggeiger@users.sourceforge.net> | 2003-03-05 21:14:24 +0000 |
commit | 03c3eedf6c0804cb5aacdc06c0c38ea7141e37de (patch) | |
tree | a73295857abf945bdb7f758a60984b34eb72ea15 | |
parent | 79b09d4808230fe4e8201b66e523cc07f1567169 (diff) |
small cleanup changes, multichannel for streamout started (how to do it in streamin ??)
svn path=/trunk/externals/ggee/; revision=454
-rwxr-xr-x | signal/streamin~.c | 6 | ||||
-rwxr-xr-x | signal/streamin~.pd | 88 | ||||
-rwxr-xr-x | signal/streamout~.c | 68 | ||||
-rwxr-xr-x | signal/streamout~.pd | 235 |
4 files changed, 287 insertions, 110 deletions
diff --git a/signal/streamin~.c b/signal/streamin~.c index 824543e..437de67 100755 --- a/signal/streamin~.c +++ b/signal/streamin~.c @@ -1,5 +1,5 @@ -/* Written by Guenter Geiger <geiger@debian.org> (C) 1999 */
+/* Written by Guenter Geiger <geiger@xdv.org> (C) 1999 */
#include <m_pd.h>
#include "stream.h"
@@ -30,7 +30,7 @@ #ifdef unix
#define NONBLOCKED
#endif
-#define INBUFSIZE 8192
+
#define MAXFRAMES 128
#define MAXFRAMESIZE 256
#define AVERAGENUM 10
@@ -349,7 +349,7 @@ static void streamin_print(t_streamin* x) for (i=0;i<AVERAGENUM;i++)
avg += x->average[i];
post("last size = %d, avg size = %d, %d underflows",
- QUEUESIZE,avg,x->underflow);
+ QUEUESIZE,avg/AVERAGENUM,x->underflow);
}
diff --git a/signal/streamin~.pd b/signal/streamin~.pd index e248f27..f583714 100755 --- a/signal/streamin~.pd +++ b/signal/streamin~.pd @@ -1,41 +1,47 @@ -#N canvas 248 65 623 459 12;
-#X obj 49 95 print~;
-#X msg 49 67 bang;
-#X obj 27 24 streamin~ 3000;
-#X obj 132 210 streamout~;
-#X msg 132 108 disconnect;
-#X obj 372 72 osc~;
-#X obj 372 47 sig~ 220;
-#X floatatom 372 20 0 0 0;
-#X msg 285 162 format float;
-#X msg 284 184 format 16bit;
-#X text 14 432 (C) 1999 Guenter Geiger;
-#X msg 286 204 format 8bit;
-#X floatatom 132 235 0 0 0;
-#X text 21 295 The streamin~ object just takes the portnumber it is
-listening to as it's argument.;
-#X text 23 334 For help on the streamout object \, see the streamout.pd
-patch.;
-#X obj 27 159 dac~;
-#X obj 355 115 *~ 0.1;
-#X floatatom 418 88 0 0 0;
-#X floatatom 149 159 0 0 0;
-#X msg 285 252 connect gige 3001;
-#X msg 132 86 connect localhost 3000;
-#X connect 1 0 0 0;
-#X connect 2 0 0 0;
-#X connect 2 0 15 0;
-#X connect 2 0 15 1;
-#X connect 3 0 12 0;
-#X connect 4 0 3 0;
-#X connect 5 0 16 0;
-#X connect 6 0 5 0;
-#X connect 7 0 6 0;
-#X connect 8 0 3 0;
-#X connect 9 0 3 0;
-#X connect 11 0 3 0;
-#X connect 16 0 3 0;
-#X connect 17 0 16 1;
-#X connect 18 0 3 0;
-#X connect 19 0 3 0;
-#X connect 20 0 3 0;
+#N canvas 248 65 623 459 12; +#X obj 45 133 print~; +#X msg 45 105 bang; +#X obj 23 62 streamin~ 3000; +#X obj 132 210 streamout~; +#X msg 132 108 disconnect; +#X obj 371 87 osc~; +#X obj 371 65 sig~ 220; +#X floatatom 371 42 0 0 0 0 - - -; +#X msg 285 162 format float; +#X msg 284 184 format 16bit; +#X text 14 432 (C) 1999 Guenter Geiger; +#X msg 286 204 format 8bit; +#X floatatom 132 235 0 0 0 0 - - -; +#X text 21 295 The streamin~ object just takes the portnumber it is +listening to as it's argument.; +#X text 23 334 For help on the streamout object \, see the streamout.pd +patch.; +#X obj 23 197 dac~; +#X obj 355 115 *~ 0.1; +#X floatatom 418 88 0 0 0 0 - - -; +#X floatatom 149 159 0 0 0 0 - - -; +#X msg 285 252 connect gige 3001; +#X msg 132 86 connect localhost 3000; +#X msg 23 8 reset 4; +#X msg 40 32 print; +#X text 96 8 reset \, using n frames (default = 128); +#X text 96 32 print queue info; +#X connect 1 0 0 0; +#X connect 2 0 0 0; +#X connect 2 0 15 0; +#X connect 2 0 15 1; +#X connect 3 0 12 0; +#X connect 4 0 3 0; +#X connect 5 0 16 0; +#X connect 6 0 5 0; +#X connect 7 0 6 0; +#X connect 8 0 3 0; +#X connect 9 0 3 0; +#X connect 11 0 3 0; +#X connect 16 0 3 0; +#X connect 17 0 16 1; +#X connect 18 0 3 0; +#X connect 19 0 3 0; +#X connect 20 0 3 0; +#X connect 21 0 2 0; +#X connect 22 0 2 0; diff --git a/signal/streamout~.c b/signal/streamout~.c index f691860..16150b7 100755 --- a/signal/streamout~.c +++ b/signal/streamout~.c @@ -72,11 +72,9 @@ typedef struct _streamout static void streamout_tempbuf(t_streamout *x,int size) {
if (x->cbuf && x->tbufsize) freebytes(x->cbuf,x->tbufsize);
- x->tbufsize=size;
+ x->tbufsize=size*sizeof(float)*x->x_tag.channels;
if (!x->cbuf)
- x->cbuf = getbytes(size*sizeof(short));
- else
- x->cbuf = resizebytes(x->cbuf,x->nsamples*sizeof(short),size*sizeof(short));
+ x->cbuf = getbytes(x->tbufsize);
x->nsamples = size;
}
@@ -156,11 +154,19 @@ static void streamout_connect(t_streamout *x, t_symbol *hostname, t_floatarg fpo static t_int *streamout_perform(t_int *w)
{
t_streamout* x = (t_streamout*) (w[1]);
- t_float *in = (t_float *)(w[2]);
+ t_float *in[4];
char* bp;
- int n = (int)(w[3]);
- int length = n*SF_SIZEOF(x->x_tag.format);
+ int n;
+ int length;
int sent = 0;
+ int i;
+ int chans = x->x_tag.channels;
+
+
+ for (i=0;i<chans;i++)
+ in[i] = (t_float *)(w[2+i]);
+ n = (int)(w[2+i]);
+ length = n*SF_SIZEOF(x->x_tag.format)*chans;
if (n != x->nsamples)
streamout_tempbuf(x,n);
@@ -168,20 +174,30 @@ static t_int *streamout_perform(t_int *w) x->x_tag.framesize=length;
x->x_tag.count++;
/* format the buffer */
- bp = (char*)in;
+
switch (x->x_tag.format) {
+ case SF_FLOAT: {
+ float* cibuf =(float*) x->cbuf;
+ bp = (char*) x->cbuf;
+ for (i=0;i<chans;i++)
+ while (n--)
+ *cibuf++ = *(in[i]++);
+ break;
+ }
case SF_16BIT: {
short* cibuf =(short*) x->cbuf;
bp = (char*) x->cbuf;
- while (n--)
- *cibuf++ = (short) 32767.0 * *in++;
+ for (i=0;i<chans;i++)
+ while (n--)
+ *cibuf++ = (short) 32767.0 * *in[i]++;
break;
}
case SF_8BIT: {
unsigned char* cbuf = (char*) x->cbuf;
bp = (char*) x->cbuf;
- while (n--)
- *cbuf++ = (unsigned char)(128. * (1.0 + *in++));
+ for (i=0;i<chans;i++)
+ while (n--)
+ *cbuf++ = (unsigned char)(127. * (1.0 + *in[i]++));
break;
}
default:
@@ -224,14 +240,30 @@ static t_int *streamout_perform(t_int *w) }
}
}
- return (w+4);
+ return (w+3+chans);
}
static void streamout_dsp(t_streamout *x, t_signal **sp)
{
- dsp_add(streamout_perform, 3, x, sp[0]->s_vec, sp[0]->s_n);
+ switch (x->x_tag.channels) {
+ case 1:
+ dsp_add(streamout_perform, 3, x,sp[0]->s_vec, sp[0]->s_n);
+ post("one channel mode");
+ break;
+ case 2:
+ dsp_add(streamout_perform, 4, x,sp[0]->s_vec, sp[1]->s_vec,sp[0]->s_n);
+ post("two channel mode");
+ break;
+ case 4:
+ dsp_add(streamout_perform, 6, x,sp[0]->s_vec, sp[1]->s_vec,
+ sp[2]->s_vec,sp[3]->s_vec,sp[0]->s_n);
+ post("four channel mode");
+ break;
+ default:
+ post("streamout: %d channels not supported",x->x_tag.channels);
+ }
}
@@ -276,11 +308,13 @@ static void streamout_float(t_streamout* x,t_float arg) -static void *streamout_new(t_symbol* prot)
+static void *streamout_new(t_symbol* prot,float channels)
{
t_streamout *x = (t_streamout *)pd_new(streamout_class);
outlet_new(&x->x_obj, &s_float);
+ if (channels == 0) channels = 1;
+
x->hostname = gensym("localhost");
x->portno = 3000;
x->x_fd = -1;
@@ -291,7 +325,7 @@ static void *streamout_new(t_symbol* prot) x->x_protocol = SOCK_DGRAM;
x->x_tag.format = SF_FLOAT;
- x->x_tag.channels = 1;
+ x->x_tag.channels = channels;
x->x_tag.version = 1;
x->cbuf = NULL;
streamout_tempbuf(x,64);
@@ -310,7 +344,7 @@ static void streamout_free(t_streamout* x) void streamout_tilde_setup(void)
{
streamout_class = class_new(gensym("streamout~"), (t_newmethod) streamout_new, (t_method) streamout_free,
- sizeof(t_streamout), 0, A_DEFSYM, 0);
+ sizeof(t_streamout), 0, A_DEFSYM,A_DEFFLOAT, 0);
class_addmethod(streamout_class, (t_method) streamout_connect,
gensym("connect"), A_SYMBOL, A_DEFFLOAT, 0);
class_addmethod(streamout_class, (t_method) streamout_disconnect,
diff --git a/signal/streamout~.pd b/signal/streamout~.pd index 56b2ece..ff1868c 100755 --- a/signal/streamout~.pd +++ b/signal/streamout~.pd @@ -1,49 +1,186 @@ -#N canvas 45 154 820 483 12;
-#X floatatom 227 194 0 0 0;
-#X msg 46 32 disconnect;
-#X obj 368 72 osc~;
-#X floatatom 368 20 0 0 0;
-#X obj 368 44 sig~ 220;
-#X text 13 239 The format message sets the transmission format;
-#X text 11 419 Hopefully we will sometimes have a version where we can compress it for transmission over the "real" net.;
-#X text 14 462 (C) 1999 Guenter Geiger;
-#X obj 455 21 streamin~ 3001;
-#X obj 448 78 dac~;
-#X msg 156 68 connect tritonus 3000;
-#X msg 20 113 format float;
-#X msg 20 144 format 16bit;
-#X text 13 256 format float: send float numbers;
-#X text 12 275 format 16bit: send 16 bit integers;
-#X msg 20 176 format 8bit;
-#X text 380 246 host:;
-#X text 13 219 format:;
-#X obj 227 162 streamout~ localhost 3000;
-#X text 379 193 connect:;
-#X text 378 210 connect sets the host and portnumber and immediatly tries to connect .;
-#X text 380 263 Set the host name and connect to the host \, if a connection was active.;
-#X msg 250 100 1;
-#X msg 284 100 0;
-#X text 379 298 disconnect (0);
-#X text 378 315 disconnect and 0 disconnect the object;
-#X text 379 335 1:;
-#X text 376 352 if the number 1 is sent to streamout \, the object connects to the stored host and portnumber. Default is localhost \, port number 3000;
-#X obj 366 107 *~ 0.01;
-#X msg 179 12 connect gige 15001;
-#X msg 156 37 connect localhost 3001;
-#X text 12 292 format 8bit: send 8 bit integers;
-#X connect 1 0 18 0;
-#X connect 2 0 28 0;
-#X connect 3 0 4 0;
-#X connect 4 0 2 0;
-#X connect 8 0 9 0;
-#X connect 8 0 9 1;
-#X connect 10 0 18 0;
-#X connect 11 0 18 0;
-#X connect 12 0 18 0;
-#X connect 15 0 18 0;
-#X connect 18 0 0 0;
-#X connect 22 0 18 0;
-#X connect 23 0 18 0;
-#X connect 28 0 18 0;
-#X connect 29 0 18 0;
-#X connect 30 0 18 0;
+#N canvas 45 154 991 483 12; +#X floatatom 227 194 0 0 0 0 - - -; +#X msg 46 32 disconnect; +#X obj 369 71 osc~; +#X floatatom 368 20 0 0 0 0 - - -; +#X obj 368 44 sig~ 220; +#X text 9 224 The format message sets the transmission format; +#X text 14 462 (C) 1999 Guenter Geiger; +#X obj 455 21 streamin~ 3001; +#X obj 448 78 dac~; +#X msg 156 68 connect tritonus 3000; +#X msg 20 113 format float; +#X msg 20 144 format 16bit; +#X text 9 241 format float: send float numbers; +#X text 8 260 format 16bit: send 16 bit integers; +#X msg 20 176 format 8bit; +#X text 445 259 host:; +#X text 9 206 format:; +#X text 444 206 connect:; +#X text 443 223 connect sets the host and portnumber and immediatly +tries to connect .; +#X text 445 276 Set the host name and connect to the host \, if a connection +was active.; +#X msg 250 100 1; +#X msg 284 100 0; +#X text 444 311 disconnect (0); +#X text 443 328 disconnect and 0 disconnect the object; +#X text 444 348 1:; +#X text 441 365 if the number 1 is sent to streamout \, the object +connects to the stored host and portnumber. Default is localhost \, +port number 3000; +#X msg 179 12 connect gige 15001; +#X msg 156 37 connect localhost 3001; +#X text 8 277 format 8bit: send 8 bit integers; +#X obj 227 162 streamout~; +#N canvas 0 0 450 300 graph1 0; +#X array array1 900 float 1; +#A 0 0.0890625 0.0875 0.0859375 0.084375 0.0828125 0.08125 0.0796875 +0.0773438 0.0757812 0.0734375 0.0710938 0.0695313 0.0671875 0.0648438 +0.0625 0.0601563 0.0578125 0.0546875 0.0523438 0.05 0.046875 0.0445313 +0.0414063 0.0390625 0.0359375 0.0328125 0.0296875 0.0273438 0.0242188 +0.0210938 0.0179687 0.0148437 0.0117188 0.00859375 0.00546875 0.00234375 +-0.00078125 -0.00390625 -0.00703125 -0.0101563 -0.0132813 -0.0164063 +-0.01875 -0.021875 -0.025 -0.028125 -0.03125 -0.034375 -0.0367188 -0.0398437 +-0.0429688 -0.0453125 -0.0484375 -0.0507812 -0.0539063 -0.05625 -0.0585938 +-0.0617188 -0.0640625 -0.0664062 -0.06875 -0.0710938 -0.0726563 -0.075 +-0.0773438 -0.0789063 -0.08125 -0.0828125 -0.084375 -0.0859375 -0.0875 +-0.0890625 -0.090625 -0.0921875 -0.0929688 -0.0945313 -0.0953125 -0.0960938 +-0.096875 -0.0976562 -0.0984375 -0.0992187 -0.0992187 -0.1 -0.1 -0.1 +-0.1 -0.1 -0.1 -0.1 -0.1 -0.0992187 -0.0984375 -0.0984375 -0.0976562 +-0.096875 -0.0960938 -0.0945313 -0.09375 -0.0929688 -0.0914062 -0.0898438 +-0.0882813 -0.0875 -0.0851563 -0.0835937 -0.0820312 -0.0804688 -0.078125 +-0.0765625 -0.0742188 -0.071875 -0.0703125 -0.0679687 -0.065625 -0.0632813 +-0.0601563 -0.0578125 -0.0554687 -0.0523438 -0.05 -0.0476562 -0.0445313 +-0.0414063 -0.0390625 -0.0359375 -0.0328125 -0.0296875 -0.0273438 -0.0242188 +-0.0210938 -0.0179687 -0.0148437 -0.0117188 -0.00859375 -0.00546875 +-0.00234375 0.00078125 0.00390625 0.00703125 0.0101563 0.0132813 0.0164063 +0.01875 0.021875 0.025 0.028125 0.03125 0.034375 0.0367188 0.0398437 +0.0429688 0.0453125 0.0484375 0.0507812 0.053125 0.05625 0.0585938 +0.0609375 0.0632813 0.065625 0.0679687 0.0703125 0.071875 0.0742188 +0.0765625 0.078125 0.0796875 0.0820312 0.0835937 0.0851563 0.0867188 +0.0882813 0.0890625 0.090625 0.0914062 0.0929688 0.09375 0.0945313 +0.0953125 0.0960938 0.096875 0.096875 0.0976562 0.0976562 0.0976562 +0.0976562 0.0976562 0.0976562 0.0976562 0.0976562 0.096875 0.096875 +0.0960938 0.0953125 0.0945313 0.09375 0.0929688 0.0914062 0.090625 +0.0890625 0.0882813 0.0867188 0.0851563 0.0835937 0.0820312 0.0804688 +0.078125 0.0765625 0.0742188 0.0726563 0.0703125 0.0679687 0.065625 +0.0632813 0.0609375 0.0585938 0.05625 0.0539063 0.0507812 0.0484375 +0.0453125 0.0429688 0.0398437 0.0375 0.034375 0.03125 0.028125 0.0257812 +0.0226563 0.0195312 0.0164063 0.0132813 0.0101563 0.00703125 0.00390625 +0.00078125 -0.00234375 -0.00546875 -0.00859375 -0.0117188 -0.0148437 +-0.0179687 -0.0210938 -0.0234375 -0.0265625 -0.0296875 -0.0328125 -0.0359375 +-0.0382813 -0.0414063 -0.0445313 -0.046875 -0.05 -0.0523438 -0.0554687 +-0.0578125 -0.0601563 -0.0625 -0.0648438 -0.0671875 -0.0695313 -0.071875 +-0.0742188 -0.0765625 -0.078125 -0.0804688 -0.0820312 -0.0835937 -0.0851563 +-0.0867188 -0.0882813 -0.0898438 -0.0914062 -0.0921875 -0.09375 -0.0945313 +-0.0960938 -0.096875 -0.0976562 -0.0984375 -0.0984375 -0.0992187 -0.1 +-0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.0992187 -0.0992187 -0.0984375 +-0.0976562 -0.096875 -0.0960938 -0.0953125 -0.0945313 -0.0929688 -0.0921875 +-0.090625 -0.0890625 -0.0875 -0.0859375 -0.084375 -0.0828125 -0.08125 +-0.0789063 -0.0773438 -0.075 -0.0734375 -0.0710938 -0.06875 -0.0664062 +-0.0640625 -0.0617188 -0.059375 -0.05625 -0.0539063 -0.0515625 -0.0484375 +-0.0460938 -0.0429688 -0.0398437 -0.0375 -0.034375 -0.03125 -0.028125 +-0.0257812 -0.0226563 -0.0195312 -0.0164063 -0.0132813 -0.0101563 -0.00703125 +-0.00390625 -0.00078125 0.00234375 0.00546875 0.00859375 0.0117188 +0.0148437 0.0179687 0.0210938 0.0234375 0.0265625 0.0296875 0.0328125 +0.0359375 0.0382813 0.0414063 0.04375 0.046875 0.0492188 0.0523438 +0.0546875 0.0570313 0.0601563 0.0625 0.0648438 0.0671875 0.06875 0.0710938 +0.0734375 0.075 0.0773438 0.0789063 0.08125 0.0828125 0.084375 0.0859375 +0.0875 0.0882813 0.0898438 0.0914062 0.0921875 0.0929688 0.09375 0.0953125 +0.0953125 0.0960938 0.096875 0.0976562 0.0976562 0.0976562 0.0976562 +0.0976562 0.0976562 0.0976562 0.0976562 0.096875 0.096875 0.0960938 +0.0953125 0.0953125 0.09375 0.0929688 0.0921875 0.0914062 0.0898438 +0.0882813 0.0875 0.0859375 0.084375 0.0828125 0.08125 0.0789063 0.0773438 +0.075 0.0734375 0.0710938 0.06875 0.0671875 0.0648438 0.0625 0.0601563 +0.0570313 0.0546875 0.0523438 0.0492188 0.046875 0.04375 0.0414063 +0.0382813 0.0359375 0.0328125 0.0296875 0.0265625 0.0234375 0.0210938 +0.0179687 0.0148437 0.0117188 0.00859375 0.00546875 0.00234375 -0.00078125 +-0.00390625 -0.00703125 -0.0101563 -0.0132813 -0.0164063 -0.0195312 +-0.0226563 -0.0257812 -0.028125 -0.03125 -0.034375 -0.0375 -0.0398437 +-0.0429688 -0.0460938 -0.0484375 -0.0515625 -0.0539063 -0.05625 -0.059375 +-0.0617188 -0.0640625 -0.0664062 -0.06875 -0.0710938 -0.0734375 -0.075 +-0.0773438 -0.0789063 -0.08125 -0.0828125 -0.084375 -0.0859375 -0.0875 +-0.0890625 -0.090625 -0.0921875 -0.0929688 -0.0945313 -0.0953125 -0.0960938 +-0.096875 -0.0976562 -0.0984375 -0.0992187 -0.0992187 -0.1 -0.1 -0.1 +-0.1 -0.1 -0.1 -0.1 -0.1 -0.0992187 -0.0984375 -0.0984375 -0.0976562 +-0.096875 -0.0960938 -0.0945313 -0.09375 -0.0921875 -0.0914062 -0.0898438 +-0.0882813 -0.0867188 -0.0851563 -0.0835937 -0.0820312 -0.0796875 -0.078125 +-0.0757812 -0.0742188 -0.071875 -0.0695313 -0.0671875 -0.0648438 -0.0625 +-0.0601563 -0.0578125 -0.0554687 -0.0523438 -0.05 -0.046875 -0.0445313 +-0.0414063 -0.0382813 -0.0359375 -0.0328125 -0.0296875 -0.0265625 -0.0234375 +-0.0210938 -0.0179687 -0.0148437 -0.0117188 -0.00859375 -0.00546875 +-0.00234375 0.00078125 0.00390625 0.00703125 0.0101563 0.0132813 0.0164063 +0.0195312 0.0226563 0.0257812 0.028125 0.03125 0.034375 0.0375 0.0398437 +0.0429688 0.0453125 0.0484375 0.0507812 0.0539063 0.05625 0.0585938 +0.0609375 0.0632813 0.065625 0.0679687 0.0703125 0.0726563 0.0742188 +0.0765625 0.078125 0.0804688 0.0820312 0.0835937 0.0851563 0.0867188 +0.0882813 0.0890625 0.090625 0.0914062 0.0929688 0.09375 0.0945313 +0.0953125 0.0960938 0.096875 0.096875 0.0976562 0.0976562 0.0976562 +0.0976562 0.0976562 0.0976562 0.0976562 0.0976562 0.096875 0.096875 +0.0960938 0.0953125 0.0945313 0.09375 0.0929688 0.0914062 0.090625 +0.0890625 0.0882813 0.0867188 0.0851563 0.0835937 0.0820312 0.0796875 +0.078125 0.0765625 0.0742188 0.071875 0.0703125 0.0679687 0.065625 +0.0632813 0.0609375 0.0585938 0.05625 0.053125 0.0507812 0.0484375 +0.0453125 0.0421875 0.0398437 0.0367188 0.034375 0.03125 0.028125 0.025 +0.021875 0.01875 0.0164063 0.0132813 0.0101563 0.00703125 0.00390625 +0.00078125 -0.00234375 -0.00546875 -0.00859375 -0.0117188 -0.0148437 +-0.0179687 -0.0210938 -0.0242188 -0.0273438 -0.0304688 -0.0328125 -0.0359375 +-0.0390625 -0.0414063 -0.0445313 -0.0476562 -0.05 -0.053125 -0.0554687 +-0.0578125 -0.0601563 -0.0632813 -0.065625 -0.0679687 -0.0703125 -0.071875 +-0.0742188 -0.0765625 -0.078125 -0.0804688 -0.0820312 -0.0835937 -0.0859375 +-0.0875 -0.0882813 -0.0898438 -0.0914062 -0.0929688 -0.09375 -0.0945313 +-0.0960938 -0.096875 -0.0976562 -0.0984375 -0.0984375 -0.0992187 -0.1 +-0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.0992187 -0.0992187 -0.0984375 +-0.0976562 -0.096875 -0.0960938 -0.0953125 -0.0945313 -0.0929688 -0.0921875 +-0.090625 -0.0890625 -0.0875 -0.0859375 -0.084375 -0.0828125 -0.08125 +-0.0789063 -0.0773438 -0.075 -0.0726563 -0.0710938 -0.06875 -0.0664062 +-0.0640625 -0.0617188 -0.0585938 -0.05625 -0.0539063 -0.0507812 -0.0484375 +-0.0453125 -0.0429688 -0.0398437 -0.0367188 -0.034375 -0.03125 -0.028125 +-0.025 -0.021875 -0.01875 -0.015625 -0.0132813 -0.0101563 -0.00703125 +-0.00390625 -0.00078125 0.00234375 0.00546875 0.00859375 0.0117188 +0.0148437 0.0179687 0.0210938 0.0242188 0.0273438 0.0296875 0.0328125 +0.0359375 0.0390625 0.0414063 0.0445313 0.046875 0.05 0.0523438 0.0546875 +0.0578125 0.0601563 0.0625 0.0648438 0.0671875 0.0695313 0.0710938 +0.0734375 0.0757812 0.0773438 0.0796875 0.08125 0.0828125 0.084375 +0.0859375 0.0875 0.0890625 0.0898438 0.0914062 0.0921875 0.0929688 +0.0945313 0.0953125 0.0960938 0.0960938 0.096875 0.0976562 0.0976562 +0.0976562 0.0976562 0.0976562 0.0976562 0.0976562 0.0976562 0.096875 +0.096875 0.0960938 0.0953125 0.0945313 0.09375 0.0929688 0.0921875 +0.090625 0.0898438 0.0882813 0.0875 0.0859375 0.084375 0.0828125 0.0804688 +0.0789063 0.0773438 0.075 0.0734375 0.0710938 0.06875 0.0664062 0.0640625 +0.0617188 0.059375 0.0570313 0.0546875 0.0515625 0.0492188 0.046875 +0.04375 0.0414063 0.0382813 0.0351562 0.0320312 0.0296875 0.0265625 +0.0234375 0.0203125 0.0171875 0.0140625 0.0109375 0.0078125 0.00546875 +0.00234375 -0.00078125 -0.00390625 -0.00703125 -0.0101563 -0.0132813 +-0.0164063 -0.0195312 -0.0226563 -0.0257812 -0.0289063 -0.0320312 -0.034375 +-0.0375 -0.040625 -0.0429688 -0.0460938 -0.0492188 -0.0515625 -0.0539063 +-0.0570313 -0.059375 -0.0617188 -0.0640625 -0.0664062 -0.06875 -0.0710938 +-0.0734375 -0.0757812 -0.0773438 -0.0796875 -0.08125 -0.0828125 -0.0851563 +-0.0867188 -0.0882813 -0.0890625 -0.090625 -0.0921875 -0.0929688 -0.0945313 +-0.0953125 -0.0960938 -0.096875 -0.0976562 -0.0984375 -0.0992187 -0.0992187 +-0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.0992187 -0.0984375 -0.0984375 +-0.0976562 -0.096875 -0.0953125 -0.0945313; +#X coords 0 1 899 -1 200 140 1; +#X restore 689 52 graph; +#X obj 460 140 tabwrite~ array1; +#X msg 541 79 bang; +#X obj 458 47 *~ 0.1; +#X connect 1 0 29 0; +#X connect 2 0 29 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 7 0 33 0; +#X connect 9 0 29 0; +#X connect 10 0 29 0; +#X connect 11 0 29 0; +#X connect 14 0 29 0; +#X connect 20 0 29 0; +#X connect 21 0 29 0; +#X connect 26 0 29 0; +#X connect 27 0 29 0; +#X connect 29 0 0 0; +#X connect 32 0 31 0; +#X connect 33 0 8 0; +#X connect 33 0 8 1; +#X connect 33 0 31 0; |