From 0e5dc72cdfa280063486c87d24b9f12ef0eadf5f Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Thu, 15 Jun 2006 19:23:18 +0000 Subject: wrote replacement for maxlib's [fifo] but it handles floats, symbols, and symbolic atoms all together. Should be possible to make it handle lists too svn path=/trunk/abstractions/purepd/; revision=5249 --- fifo-help.pd | 25 +++++++++++++++++++++++++ fifo.pd | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 fifo-help.pd create mode 100644 fifo.pd diff --git a/fifo-help.pd b/fifo-help.pd new file mode 100644 index 0000000..3c948fd --- /dev/null +++ b/fifo-help.pd @@ -0,0 +1,25 @@ +#N canvas 281 463 454 304 10; +#X msg 29 108 bang; +#X obj 81 261 print; +#X floatatom 134 263 5 0 0 0 - - -; +#X msg 106 166 1; +#X msg 166 166 3; +#X obj 115 207 fifo 5; +#X msg 136 166 two; +#X msg 196 166 four; +#X msg 238 166 5; +#X msg 268 166 six; +#X text 26 25 A First-In-First-Out ringbuffer for floats and symbols. +The argument and cold inlet specify out many elements to store in the +fifo.; +#X text 65 108 bang to output oldest element; +#X text 64 142 floats \, symbols \, and symbolic atoms are stored; +#X connect 0 0 5 0; +#X connect 3 0 5 0; +#X connect 4 0 5 0; +#X connect 5 0 2 0; +#X connect 5 0 1 0; +#X connect 6 0 5 0; +#X connect 7 0 5 0; +#X connect 8 0 5 0; +#X connect 9 0 5 0; diff --git a/fifo.pd b/fifo.pd new file mode 100644 index 0000000..c345566 --- /dev/null +++ b/fifo.pd @@ -0,0 +1,36 @@ +#N canvas 467 131 544 480 10; +#X obj 32 29 inlet; +#X obj 253 30 inlet; +#X obj 285 52 loadbang; +#X obj 97 183 list append; +#X obj 97 204 list split; +#X obj 32 71 route bang; +#X obj 33 150 list; +#X obj 32 268 trigger anything anything; +#X obj 202 288 list-abs/list-len; +#X obj 202 309 - 1; +#X obj 33 334 list split; +#X obj 253 82 purepd/float_argument \$1 1; +#X obj 64 370 route bang; +#X text 158 371 filter out the blank lists/bangs; +#X obj 130 428 outlet; +#X obj 56 129 list; +#X connect 0 0 5 0; +#X connect 1 0 11 0; +#X connect 2 0 11 0; +#X connect 3 0 4 0; +#X connect 4 0 15 0; +#X connect 4 2 15 0; +#X connect 5 0 6 0; +#X connect 5 1 3 0; +#X connect 6 0 7 0; +#X connect 7 0 10 0; +#X connect 7 1 8 0; +#X connect 8 0 9 0; +#X connect 9 0 10 1; +#X connect 10 0 15 0; +#X connect 10 1 12 0; +#X connect 11 0 4 1; +#X connect 12 1 14 0; +#X connect 15 0 6 1; +#X connect 15 0 3 1; -- cgit v1.2.1