aboutsummaryrefslogtreecommitdiff
path: root/help-send.pd
diff options
context:
space:
mode:
authorKjetil S. Matheussen <ksvalast@users.sourceforge.net>2004-01-08 14:55:24 +0000
committerKjetil S. Matheussen <ksvalast@users.sourceforge.net>2004-01-08 14:55:24 +0000
commit44bc5a27d53124ba82becd4181fc381053c56fdb (patch)
tree4695439f8508017260cad061ad6505d5a7200d4c /help-send.pd
First commit of k_vst~, k_guile and k_cextsvn2git-root
svn path=/trunk/externals/k_cext/; revision=1253
Diffstat (limited to 'help-send.pd')
-rw-r--r--help-send.pd28
1 files changed, 28 insertions, 0 deletions
diff --git a/help-send.pd b/help-send.pd
new file mode 100644
index 0000000..fa14d40
--- /dev/null
+++ b/help-send.pd
@@ -0,0 +1,28 @@
+#N canvas 488 163 708 409 10;
+#X floatatom 96 329 5 0 0;
+#X floatatom 39 199 5 0 0;
+#X floatatom 149 207 5 0 0;
+#X text 28 15 The SEND macro is just as efficient;
+#X text 30 29 as the send object \, and is defined like this:;
+#X obj 42 248 send a_sym;
+#X obj 141 235 k_cext 1 0 \; SEND("a_sym" \, I(0)) \;;
+#X obj 96 297 r a_sym;
+#X floatatom 161 331 5 0 0;
+#X obj 161 299 r a_sym2;
+#X floatatom 384 235 5 0 0;
+#X text 379 202 Warning \, the following code will not do;
+#X msg 321 182 print;
+#X text 379 215 as one might expect:;
+#X obj 382 261 k_cext 1 0 \; char *syms[2]=BEGIN "a_sym" \, "a_sym2"
+END \; static int s=0 \; IF s==0 THEN DO \; . s=1 \; ELSE \; . s=0
+\; SEND(syms[s] \, s+5) \;;
+#X text 32 59 #define SEND(symname \, val) do BEGIN static t_symbol
+*k_cext_internal_symbol=NULL SC if(k_cext_internal_symbol==NULL) k_cext_internal_symbol=gensym(symname)
+SC if(k_cext_internal_symbol->s_thing) pd_float(k_cext_internal_symbol->s_thing
+\, val) SC END while(0);
+#X connect 1 0 5 0;
+#X connect 2 0 6 0;
+#X connect 7 0 0 0;
+#X connect 9 0 8 0;
+#X connect 10 0 14 0;
+#X connect 12 0 14 0;