aboutsummaryrefslogtreecommitdiff
path: root/iemnet.c
diff options
context:
space:
mode:
authorIOhannes m zmölnig <zmoelnig@users.sourceforge.net>2010-03-26 14:32:03 +0000
committerIOhannes m zmölnig <zmoelnig@users.sourceforge.net>2010-03-26 14:32:03 +0000
commit73df569a2b83a21324834acfa1e661843ecd18dc (patch)
tree55b88619c01d5c13fe06e126e53fc3f1059ab7b9 /iemnet.c
parent6e6a97f7b2df2d79ece47696265a7af792efa638 (diff)
convenience functions
these probably should go into a separate file svn path=/trunk/externals/iem/iemnet/; revision=13275
Diffstat (limited to 'iemnet.c')
-rw-r--r--iemnet.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/iemnet.c b/iemnet.c
index e5cb9be..e0d98b5 100644
--- a/iemnet.c
+++ b/iemnet.c
@@ -524,7 +524,6 @@ static void*iemnet__receiver_readthread(void*arg) {
if(receiver->clock)clock_delay(receiver->clock, 0);
}
-
if(result>=0)
if(receiver->clock)clock_delay(receiver->clock, 0);
@@ -605,6 +604,29 @@ void iemnet__receiver_destroy(t_iemnet_receiver*rec) {
+void iemnet__addrout(t_outlet*status_outlet, t_outlet*address_outlet,
+ long address, unsigned short port) {
+
+ static t_atom addr[5];
+ static int firsttime=1;
+
+ if(firsttime) {
+ int i=0;
+ for(i=0; i<5; i++)SETFLOAT(addr+i, 0);
+ firsttime=0;
+ }
+
+ addr[0].a_w.w_float = (address & 0xFF000000)>>24;
+ addr[1].a_w.w_float = (address & 0x0FF0000)>>16;
+ addr[2].a_w.w_float = (address & 0x0FF00)>>8;
+ addr[3].a_w.w_float = (address & 0x0FF);
+ addr[4].a_w.w_float = port;
+
+ if(status_outlet )outlet_anything(status_outlet , gensym("address"), 5, addr);
+ if(address_outlet)outlet_list (address_outlet, gensym("list" ), 5, addr);
+}
+
+