From 6129f96ce81d32b7884b3ada7c895a86c280f95a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= Date: Thu, 1 Apr 2010 07:21:24 +0000 Subject: exporting symbols; using objName svn path=/trunk/externals/iem/iemnet/; revision=13330 --- iemnet.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'iemnet.c') diff --git a/iemnet.c b/iemnet.c index bd8a15c..42513f5 100644 --- a/iemnet.c +++ b/iemnet.c @@ -51,9 +51,48 @@ void iemnet__streamout(t_outlet*outlet, int argc, t_atom*argv) { outlet_list(outlet, gensym("list"), 1, argv); argv++; } +} + +typedef struct _names { + t_symbol*name; + struct _names*next; +} t_iemnet_names; +static t_iemnet_names*namelist=0; +static int iemnet__nametaken(const char*namestring) { + t_symbol*name=gensym(namestring); + t_iemnet_names*curname=namelist; + t_iemnet_names*lastname=curname; + while(curname) { + if(name==(curname->name)) { + return 1; + } + lastname=curname; + curname=curname->next; + } + + // new name! + curname=(t_iemnet_names*)getbytes(sizeof(t_iemnet_names)); + curname->name=name; + curname->next=0; + + if(lastname) + lastname->next=curname; + else + namelist=curname; + return 0; } +int iemnet__register(const char*name) { + if(iemnet__nametaken(name))return 0; + post("iemnet: networking with Pd :: %s", name); + post(" (c) 2010 IOhannes m zmoelnig, IEM"); + post(" based on mrpeach/net, based on maxlib"); + return 1; +} + + + #ifdef _MSC_VER void tcpclient_setup(void); -- cgit v1.2.1