-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmemo.pd
423 lines (423 loc) · 11.9 KB
/
memo.pd
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
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
#N canvas 1083 195 908 692 10;
#X obj 62 350 list split 1;
#X obj 62 388 list;
#X obj 89 571 text set \$1;
#X obj 62 369 t b f;
#X text 174 321 RECEBE DADOS DOS [param];
#X text 167 572 ESCREVE NA MEMÓRIA;
#X obj 385 301 until;
#X obj 385 339 f;
#X obj 420 339 + 1;
#X msg 400 320 0;
#X obj 385 396 route bang;
#X obj 385 358 t f f;
#X obj 385 282 text size \$1;
#X obj 368 517 list;
#X obj 385 377 text get \$1;
#X obj 405 499 list prepend;
#X obj 474 518 list;
#X obj 43 205 inlet MEMO_LIST;
#X obj 368 634 outlet MEMO_LIST;
#X obj 405 424 t l l;
#X obj 474 442 list length;
#X obj 405 480 list prepend;
#X obj 405 461 list prepend;
#X obj 62 407 list split 1;
#X obj 62 445 list;
#X obj 62 464 list split 1;
#X text 147 531 LOOP SE FOR MEMO_LIST;
#X obj 75 512 list;
#X obj 62 483 t b l;
#X obj 75 531 route bang;
#X obj 388 234 r \$1_dump;
#X text 410 546 LISTA COM ÍNDICE / NÚM. ÍTENS / ÍTENS DE CADA LINHA DO [text], f 61;
#X obj 368 546 t l l;
#X obj 395 575 s \$1_memoList;
#X text 485 575 ENVIA MEMO_LIST DA INSTÂNCIA;
#X obj 82 321 r \$1_memo_set;
#X obj 63 234 r \$1_memo_load;
#X text 160 234 RECEBE LISTA DO [memounpack];
#X obj 519 205 loadbang;
#X obj 43 263 t b l b;
#X obj 82 282 s \$0_reset;
#X text 155 282 REINICIA MEMÓRIA LOCAL;
#X obj 519 243 s \$1_bang;
#X text 517 267 RECEBE VALOR DOS [param] SE MEMÓRIA FOR RECRIADA, f 24;
#X obj 519 224 del 10;
#X obj 520 615 r \$0-fileName;
#X obj 520 634 outlet ACTIVE_FILE;
#X text 517 317 DEFINE MEMÓRIA E GERENCIA ESCRITA/LEITURA DE ARQUIVO;
#X obj 682 205 inlet EXTERNAL_CONTROL;
#N canvas 151 424 794 176 EXTERNAL_CONTROL 0;
#X obj 47 27 inlet;
#X obj 47 114 s \$0-dump;
#X obj 191 114 s \$0-edit;
#X obj 260 114 s \$0-write;
#X obj 260 95 route bang;
#X obj 325 95 symbol;
#X obj 424 95 route bang;
#X obj 489 95 symbol;
#X obj 424 114 s \$0-read;
#X obj 489 114 s \$0-readFile;
#X obj 325 114 s \$0-writeFile;
#X obj 116 114 s \$1_reset;
#X obj 582 114 s \$1_load;
#X obj 47 76 route dump reset edit write read load get;
#X obj 652 114 s \$0_get;
#X obj 392 27 r \$3_slew;
#X obj 392 46 s \$1_slew;
#X text 458 27 REPASSA SLEW DO CONTEXTO PARA OS MEMOS;
#X connect 0 0 13 0;
#X connect 4 0 3 0;
#X connect 4 1 5 0;
#X connect 5 0 10 0;
#X connect 6 0 8 0;
#X connect 6 1 7 0;
#X connect 7 0 9 0;
#X connect 13 0 1 0;
#X connect 13 1 11 0;
#X connect 13 2 2 0;
#X connect 13 3 4 0;
#X connect 13 4 6 0;
#X connect 13 5 12 0;
#X connect 13 6 14 0;
#X connect 15 0 16 0;
#X restore 682 234 pd EXTERNAL_CONTROL;
#X obj 368 205 r \$0-dump;
#X text 146 350 ÍNDICE;
#X text 146 408 NÚMERO DE ELEMENTOS;
#X text 146 464 ELEMENTOS;
#X text 146 631 CARREGA PARÂMETROS DEPOIS DE DESEMPACOTAR MEMÓRIA, f 25;
#N canvas 5 61 452 328 MEMO_REFRESH 0;
#X obj 48 40 inlet BANG;
#X text 85 138 NÚMERO DE ELEMENTOS NA MEMÓRIA;
#X obj 48 157 until;
#X obj 48 195 f;
#X obj 69 195 + 1;
#X obj 48 109 t b b;
#X obj 48 214 t f f;
#X msg 63 176 0;
#X obj 48 243 s \$1_refresh;
#X obj 48 138 f \$2;
#X obj 108 90 r \$1_load;
#X text 175 90 MÉTODO PARA ATUALIZAÇÃO REMOTA PELO NOME DO [memo], f 30;
#X text 140 40 ** ATUALIZA ORDENADAMENTE OS VALORES NOS [param] A PARTIR DA MEMÒRIA ATUAL, f 40;
#X text 133 243 ENVIA SEQUÊNCIA DE ÍNDICES DA MEMÓRIA PARA ATUALIZAR ORDENADAMENTE OS [param], f 42;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 9 0;
#X connect 5 1 7 0;
#X connect 6 0 8 0;
#X connect 6 1 4 0;
#X connect 7 0 3 1;
#X connect 9 0 2 0;
#X connect 10 0 5 0;
#X restore 43 634 pd MEMO_REFRESH;
#X obj 62 426 t b f f;
#N canvas 957 173 432 214 PARENT_CONTEXT 0;
#X obj 49 49 loadbang;
#X obj 49 68 list append \$1;
#X obj 160 30 r \$3-memo_flush;
#X obj 49 106 s \$3-memo_list;
#X msg 49 87 symbol \$1;
#X text 47 130 ENVIA NOME DA MEMÓRIA LOCAL PARA [memopack] NO CONTEXTO SUPERIOR \, DECLARADO NO \$3, f 43;
#X obj 160 49 t b b;
#X obj 187 88 outlet BANG;
#X text 275 88 BANG SINALIZANDO COLETA DE DADOS, f 16;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 2 0 6 0;
#X connect 4 0 3 0;
#X connect 6 0 1 0;
#X connect 6 1 7 0;
#X restore 519 399 pd PARENT_CONTEXT;
#X text 517 377 GERENCIA COMUNICAÇÃO COM CONTEXTO SUPERIOR;
#X obj 42 59 cnv 15 425 105 empty empty empty 20 12 0 14 #dcdcdc #404040 0;
#X obj 42 30 cnv 15 425 28 empty empty empty 20 12 0 14 #e0c4fc #404040 0;
#X text 49 35 ABSTRAÇÃO [memo], f 67;
#X text 49 85 ARGUMENTOS: [memo $MEMO $NUM $CONTEXT], f 67;
#X text 69 105 $MEMO = NOME DA MEMÓRIA (symbol), f 64;
#X text 69 135 $CONTEXT (OPCIONAL) = CONTEXTO SUPERIOR DE AGRUPAMENTO (symbol), f 64;
#X text 49 65 DECLARA MEMÓRIA DE UM CONJUNTO DE PARÂMETROS [param], f 67;
#X text 69 120 $NUM = NÚMERO DE PARÂMETROS GERENCIADOS (float), f 64;
#N canvas 783 180 1300 640 DEFINE_EDIT_READ_WRITE_GET 0;
#X obj 44 329 cnv 15 98 28 empty empty empty 20 12 0 14 #e0c4fc #404040 0;
#X msg 49 95 click;
#X text 89 95 EDITAR;
#X obj 49 57 r \$0-edit;
#X msg 364 191 write \$1;
#X msg 214 191 read \$1;
#X obj 364 172 t s s;
#X obj 180 172 t b b s s;
#X obj 318 477 abs;
#X obj 318 496 until;
#X obj 506 457 t b b;
#X obj 506 552 sel 1;
#X obj 548 570 t b;
#X text 567 448 SE FOR MAIOR QUE NÚMERO DE SLOTS \, ENTRA EM LOOP APAGANDO AS LINHAS EXCEDENTES, f 33;
#X text 316 539 SE FOR MENOR QUE NÚMERO DE SLOTS \, INSERE LINHAS VAZIAS NO FIM DO [text] ATÉ IGUALAR SLOTS, f 27;
#X obj 318 439 moses 9;
#X obj 318 458 - 8;
#X obj 506 533 > 8;
#X obj 875 143 loadbang;
#X obj 875 162 f \$2;
#X obj 875 181 sel 0;
#X obj 902 200 until;
#X msg 894 114 clear;
#X obj 875 76 r \$1_reset;
#X text 948 56 REINICIA MEMÓRIA;
#X text 156 334 DEFINE MEMÓRIA COM 1o ARGUMENTO, f 18;
#X text 922 164 DIMENSIONA MEMÓRIA COM 2o ARGUMENTO, f 18;
#X obj 875 57 r \$0_reset;
#X obj 49 334 text define \$1;
#X obj 318 334 text size \$1;
#X obj 357 363 loadbang;
#X obj 357 382 f \$2;
#X obj 357 401 t f f f f;
#X obj 357 420 + 1;
#X obj 533 476 f 8;
#X text 403 334 VERIFICA TAMANHO DA MEMÓRIA ABERTA;
#X obj 533 495 text delete \$1;
#X obj 506 514 text size \$1;
#X obj 180 220 s \$1_load;
#X msg 952 113 symbol;
#X obj 875 95 t b b b;
#X obj 952 132 s \$0-fileName;
#X obj 318 515 text set \$1 1e+09;
#X obj 902 219 text set \$1 1e+09;
#X text 178 243 ATUALIZA OS [param];
#X obj 130 402 s \$1_load;
#X text 128 426 RECARREGA PARÂMETROS QUANDO ALTERA MEMÓRIA MANUALMENTE, f 21;
#X obj 130 383 route updated;
#X text 393 382 INICIALIZA COM 2o ARGUMENTO;
#X text 178 24 ** DECLARA [text] \, GERENCIA EDIÇÃO MANUAL E ESCRITA/LEITURA EM ARQUIVO, f 70;
#X obj 950 76 r \$3_reset;
#X obj 1095 57 r \$0_get;
#X obj 1095 76 r \$1_get;
#X obj 1095 95 i;
#X obj 1095 114 text get \$1;
#X obj 1095 133 route bang;
#X text 1166 56 OBTÉM MEMÓRIA REMOTAMENTE PELO ÍNDICE, f 13;
#X obj 1152 152 s \$1_out;
#X obj 180 115 symbol;
#X obj 180 134 openpanel;
#X obj 468 190 file splitname;
#X obj 468 209 list split 1;
#X text 571 286 ARMAZENA ÚLTIMA PASTA NAVEGADA;
#X obj 180 153 symbol;
#X obj 558 95 pdcontrol;
#X msg 558 76 dir 99;
#X obj 558 57 loadbang;
#N canvas 23 61 520 543 LONG_NAME_CUT 0;
#X obj 47 100 list fromsymbol;
#X obj 47 32 inlet;
#X obj 47 475 outlet FILENAME;
#X obj 104 147 list length;
#X obj 47 129 t l l;
#X obj 47 295 spigot;
#X obj 147 295 spigot;
#X obj 239 399 t l;
#X obj 168 399 list append;
#X obj 147 418 list;
#X obj 147 314 t b l b l b;
#X obj 104 259 <= 22;
#X obj 204 259 > 22;
#X obj 194 380 list split 7;
#X obj 168 342 list split 9;
#X text 180 148 TESTA POR NÚMERO DE CARACTERES;
#X obj 47 436 list tosymbol;
#X text 135 437 CONVERTE LISTA DE CARACTERES ASCII EM SYMBOL;
#X obj 104 166 t l l l;
#X obj 179 211 sel 0;
#X obj 206 230 t f f f;
#X text 301 254 CASO MAIS CARACTERES DO QUE PONTO DE CORTE \, SEPARA EM INICIO...FIM DO NOME, f 27;
#X msg 178 361 46 46 46;
#X text 236 359 ... (ASCII);
#X text 213 192 LIMITE;
#X obj 179 192 f 18;
#X obj 263 259 - 5;
#X obj 237 314 - 9;
#X obj 179 173 r \$0-lb;
#X text 149 100 CONVERTE SYMBOL EM LISTA DE CARACTERES ASCII;
#X obj 47 71 symbol;
#X connect 0 0 4 0;
#X connect 1 0 30 0;
#X connect 3 0 18 0;
#X connect 4 0 6 0;
#X connect 4 0 5 0;
#X connect 4 1 3 0;
#X connect 5 0 16 0;
#X connect 6 0 10 0;
#X connect 7 0 8 1;
#X connect 8 0 7 0;
#X connect 8 0 9 1;
#X connect 9 0 16 0;
#X connect 10 0 9 0;
#X connect 10 1 14 0;
#X connect 10 2 22 0;
#X connect 10 3 13 0;
#X connect 10 4 8 1;
#X connect 11 0 5 1;
#X connect 12 0 6 1;
#X connect 13 1 8 0;
#X connect 14 0 8 0;
#X connect 16 0 2 0;
#X connect 18 0 11 0;
#X connect 18 1 12 0;
#X connect 18 2 26 0;
#X connect 19 1 20 0;
#X connect 20 0 11 1;
#X connect 20 1 12 1;
#X connect 20 2 27 0;
#X connect 22 0 8 0;
#X connect 25 0 19 0;
#X connect 26 0 13 1;
#X connect 27 0 14 1;
#X connect 28 0 25 0;
#X connect 30 0 0 0;
#X restore 502 238 pd LONG_NAME_CUT;
#X text 610 238 CORTA NOMES MUITO GRANDES PARA EXIBIÇÃO;
#X obj 502 257 s \$0-fileName;
#X obj 180 57 r \$0-read;
#X obj 249 57 r \$0-readFile;
#X obj 180 76 bang;
#X obj 439 97 r \$0-lastFolder;
#X obj 558 124 s \$0-lastFolder;
#X obj 468 286 s \$0-lastFolder;
#X text 625 66 OBTÉM CAMINHO DO NÍVEL MAIS ALTO ONDE A ABSTRAÇÃO FOI INSTANCIADA E INICIALIZA PASTA ATIVA, f 32;
#X obj 364 57 r \$0-write;
#X obj 439 57 r \$0-writeFile;
#X obj 364 115 symbol;
#X obj 364 153 symbol;
#X obj 364 76 bang;
#X obj 364 134 savepanel;
#X connect 1 0 28 0;
#X connect 3 0 1 0;
#X connect 4 0 28 0;
#X connect 5 0 28 0;
#X connect 6 0 4 0;
#X connect 6 1 60 0;
#X connect 7 0 38 0;
#X connect 7 1 29 0;
#X connect 7 2 5 0;
#X connect 7 3 60 0;
#X connect 8 0 9 0;
#X connect 9 0 42 0;
#X connect 10 0 37 0;
#X connect 10 1 34 0;
#X connect 11 0 12 0;
#X connect 12 0 10 0;
#X connect 15 0 16 0;
#X connect 15 1 10 0;
#X connect 16 0 8 0;
#X connect 17 0 11 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 1 21 0;
#X connect 21 0 43 0;
#X connect 22 0 28 0;
#X connect 23 0 40 0;
#X connect 27 0 40 0;
#X connect 28 1 47 0;
#X connect 29 0 15 0;
#X connect 30 0 31 0;
#X connect 31 0 32 0;
#X connect 32 0 33 0;
#X connect 32 1 16 1;
#X connect 32 2 17 1;
#X connect 32 3 34 1;
#X connect 33 0 15 1;
#X connect 34 0 36 0;
#X connect 37 0 17 0;
#X connect 39 0 41 0;
#X connect 40 0 19 0;
#X connect 40 1 22 0;
#X connect 40 2 39 0;
#X connect 47 0 45 0;
#X connect 50 0 40 0;
#X connect 51 0 53 0;
#X connect 52 0 53 0;
#X connect 53 0 54 0;
#X connect 54 0 55 0;
#X connect 55 1 57 0;
#X connect 58 0 59 0;
#X connect 59 0 63 0;
#X connect 60 0 61 0;
#X connect 61 0 75 0;
#X connect 61 1 67 0;
#X connect 63 0 7 0;
#X connect 64 0 74 0;
#X connect 65 0 64 0;
#X connect 66 0 65 0;
#X connect 67 0 69 0;
#X connect 70 0 72 0;
#X connect 71 0 63 0;
#X connect 72 0 58 0;
#X connect 73 0 58 1;
#X connect 73 0 79 1;
#X connect 77 0 81 0;
#X connect 78 0 80 0;
#X connect 79 0 82 0;
#X connect 80 0 6 0;
#X connect 81 0 79 0;
#X connect 82 0 80 0;
#X restore 519 340 pd DEFINE_EDIT_READ_WRITE_GET;
#X obj 368 263 t b b b b;
#X obj 693 634 outlet BANG;
#X text 691 585 BANG SINALIZANDO COLETA DE DADOS \, PARA ATUALIZAR TABELAS ARMAZENADAS EM [param], f 29;
#X connect 0 0 3 0;
#X connect 0 1 1 1;
#X connect 1 0 23 0;
#X connect 3 0 1 0;
#X connect 3 1 2 1;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 0 11 0;
#X connect 8 0 7 1;
#X connect 9 0 7 1;
#X connect 10 1 19 0;
#X connect 11 0 14 0;
#X connect 11 1 21 1;
#X connect 12 0 6 0;
#X connect 13 0 32 0;
#X connect 14 0 10 0;
#X connect 15 0 16 0;
#X connect 15 0 13 1;
#X connect 16 0 15 1;
#X connect 17 0 39 0;
#X connect 19 0 22 0;
#X connect 19 1 20 0;
#X connect 20 0 22 1;
#X connect 21 0 15 0;
#X connect 22 0 21 0;
#X connect 23 0 56 0;
#X connect 23 1 24 1;
#X connect 24 0 25 0;
#X connect 25 0 28 0;
#X connect 25 1 27 1;
#X connect 27 0 29 0;
#X connect 28 0 27 0;
#X connect 28 1 2 0;
#X connect 29 1 0 0;
#X connect 30 0 68 0;
#X connect 32 0 18 0;
#X connect 32 1 33 0;
#X connect 35 0 0 0;
#X connect 36 0 39 0;
#X connect 38 0 44 0;
#X connect 39 0 55 0;
#X connect 39 1 0 0;
#X connect 39 2 40 0;
#X connect 44 0 42 0;
#X connect 45 0 46 0;
#X connect 48 0 49 0;
#X connect 50 0 68 0;
#X connect 56 0 24 0;
#X connect 56 1 25 1;
#X connect 57 0 69 0;
#X connect 68 0 13 0;
#X connect 68 1 12 0;
#X connect 68 2 9 0;
#X connect 68 3 15 1;