From 44f29524444a96d9e40a76f48750f17e2fdc2974 Mon Sep 17 00:00:00 2001 From: mescalinum Date: Sun, 2 Oct 2011 16:42:06 +0000 Subject: reorganize tree following template structure svn path=/trunk/externals/loaders/tclpd/; revision=15443 --- dynroute.tcl | 57 --------------------------------------------------------- 1 file changed, 57 deletions(-) delete mode 100644 dynroute.tcl (limited to 'dynroute.tcl') diff --git a/dynroute.tcl b/dynroute.tcl deleted file mode 100644 index 2309ac7..0000000 --- a/dynroute.tcl +++ /dev/null @@ -1,57 +0,0 @@ -package require Tclpd 0.2.1 -package require TclpdLib 0.17 - -# dynroute: dynamically route messages based on first element -# non-matching arguments are sent to last inlet -# constructor: specify the number of outlets (default: 1) -# send commands to the right inlet -# available commands: -# add route selector to output number -# remove remove previously created routing -# clear - -pd::class dynroute { - constructor { - pd::add_inlet $self list - - set @num_outlets [pd::arg 0 int] - if {$@num_outlets < 0} {set @num_outlets 2} - - for {set i 0} {$i < $@num_outlets} {incr i} { - pd::add_outlet $self list - } - - set @routing {} - } - - 0_list { - set sel [pd::arg 0 any] - set out [expr {$@num_outlets-1}] - catch {set out [dict get $@routing $sel]} - pd::outlet $self $out list $args - } - - 1_add { - set sel [pd::arg 0 any] - set out [pd::arg 1 int] - if {$out < 0 || $out >= $@num_outlets} { - pd::post "error: add: outlet number out of range" - return - } - dict set @routing $sel $out - } - - 1_remove { - set sel [pd::arg 0 any] - set out [pd::arg 1 int] - if {$out < 0 || $out >= $@num_outlets} { - pd::post "error: add: outlet number out of range" - return - } - catch {dict unset @routing $sel $out} - } - - 1_clear { - set @routing {} - } -} -- cgit v1.2.1