aboutsummaryrefslogtreecommitdiff
path: root/ds-abs
diff options
context:
space:
mode:
authorLuke Iannini <lukeiannini@users.sourceforge.net>2009-04-30 10:58:10 +0000
committerLuke Iannini <lukeiannini@users.sourceforge.net>2009-04-30 10:58:10 +0000
commit952e8c6b3b042993edcf42dd250dcea80fe41430 (patch)
tree766786d8cefa79c9d0dfc363d7a178110993aad0 /ds-abs
parent9ceb7eff8993995df8cb4accdddff824763d55c5 (diff)
added ds-sort-array
svn path=/trunk/abstractions/sfruit/; revision=11204
Diffstat (limited to 'ds-abs')
-rw-r--r--ds-abs/ds-sort-array-help.pd36
-rw-r--r--ds-abs/ds-sort-array.pd79
2 files changed, 115 insertions, 0 deletions
diff --git a/ds-abs/ds-sort-array-help.pd b/ds-abs/ds-sort-array-help.pd
new file mode 100644
index 0000000..7cd6d7c
--- /dev/null
+++ b/ds-abs/ds-sort-array-help.pd
@@ -0,0 +1,36 @@
+#N canvas 1267 733 517 343 10;
+#X obj 230 205 bng 15 250 50 0 empty empty sort_is_done 17 7 0 10 -262144
+-1 -1;
+#X obj 95 257 set \$0-element x y z;
+#X obj 248 79 ds-dump-array \$0-mything array1;
+#X obj 248 114 get \$0-element x y z;
+#X obj 248 137 pack f f f;
+#X obj 249 26 ds-first pd-\$0-data \$0-mything;
+#X msg 15 100 direction -1;
+#X msg 25 120 direction 1;
+#X text 96 99 reverse;
+#X text 100 119 normal;
+#X obj 177 123 hradio 15 1 0 3 empty empty sort_index 0 -8 0 10 -262144
+-1 -1 0;
+#X obj 431 124 t b;
+#X text 456 123 do sort;
+#X obj 95 187 ds-sort-array;
+#X obj 212 227 element \$0-mything array1;
+#X obj 248 50 t p p;
+#X connect 2 0 3 0;
+#X connect 2 1 11 0;
+#X connect 3 0 4 0;
+#X connect 3 1 4 1;
+#X connect 3 2 4 2;
+#X connect 4 0 13 2;
+#X connect 5 0 15 0;
+#X connect 6 0 13 0;
+#X connect 7 0 13 0;
+#X connect 10 0 13 1;
+#X connect 11 0 13 0;
+#X connect 13 0 1 0;
+#X connect 13 1 14 0;
+#X connect 13 2 0 0;
+#X connect 14 0 1 3;
+#X connect 15 0 2 0;
+#X connect 15 1 14 1;
diff --git a/ds-abs/ds-sort-array.pd b/ds-abs/ds-sort-array.pd
new file mode 100644
index 0000000..44a6bcf
--- /dev/null
+++ b/ds-abs/ds-sort-array.pd
@@ -0,0 +1,79 @@
+#N canvas 6 348 683 800 10;
+#X obj 167 498 list split;
+#X obj 167 400 list-drip;
+#X text 169 372 outputs indices;
+#X obj 167 427 t b a;
+#X obj 167 471 list;
+#X obj 167 304 list-extend;
+#X obj 248 304 list-extend;
+#X obj 146 334 list;
+#X obj 167 244 t a a;
+#X obj 266 265 r \$0-reset_sort;
+#X obj 239 563 r \$0-reset_sort;
+#X obj 194 601 f;
+#X obj 220 601 + 1;
+#X msg 209 563 0;
+#X obj 167 563 t a b;
+#X obj 167 275 list-idx 0;
+#X obj 146 230 t b;
+#X obj 182 342 r \$0-sort_direction;
+#X obj 146 358 sort;
+#X obj 398 695 outlet sort_finished;
+#X obj 164 694 outlet data-list;
+#X obj 354 106 inlet sortable-lists;
+#X text 234 643 template arrayname;
+#X obj 224 106 inlet sort_by_index;
+#X obj 381 154 list length;
+#X obj 354 129 t a a;
+#X obj 381 181 s \$0-number_of_fields;
+#X obj 250 471 r \$0-number_of_fields;
+#X text 380 200 sortable lists must all be the same length;
+#X obj 224 471 *;
+#X obj 167 527 list split;
+#X obj 239 528 r \$0-number_of_fields;
+#X obj 276 400 s \$0-reset_sort;
+#X obj 238 400 t b b;
+#X obj 146 145 route bang;
+#X obj 203 168 route direction;
+#X obj 203 192 s \$0-sort_direction;
+#X obj 146 107 inlet sort;
+#X obj 287 694 outlet element;
+#X connect 0 1 30 0;
+#X connect 1 0 3 0;
+#X connect 1 1 33 0;
+#X connect 3 0 4 0;
+#X connect 3 1 29 0;
+#X connect 4 0 0 0;
+#X connect 5 0 7 1;
+#X connect 6 0 4 1;
+#X connect 7 0 18 0;
+#X connect 8 0 15 0;
+#X connect 8 1 6 0;
+#X connect 9 0 5 1;
+#X connect 9 0 6 1;
+#X connect 10 0 13 0;
+#X connect 11 0 12 0;
+#X connect 11 0 38 0;
+#X connect 12 0 11 1;
+#X connect 13 0 11 1;
+#X connect 14 0 20 0;
+#X connect 14 1 11 0;
+#X connect 15 0 5 0;
+#X connect 16 0 7 0;
+#X connect 17 0 18 1;
+#X connect 18 1 1 0;
+#X connect 21 0 25 0;
+#X connect 23 0 15 1;
+#X connect 24 0 26 0;
+#X connect 25 0 8 0;
+#X connect 25 1 24 0;
+#X connect 27 0 29 1;
+#X connect 29 0 0 1;
+#X connect 30 0 14 0;
+#X connect 31 0 30 1;
+#X connect 33 0 19 0;
+#X connect 33 1 32 0;
+#X connect 34 0 16 0;
+#X connect 34 1 35 0;
+#X connect 35 0 36 0;
+#X connect 37 0 34 0;