aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIOhannes m zmölnig <zmoelnig@users.sourceforge.net>2012-05-22 10:39:19 +0000
committerIOhannes m zmölnig <zmoelnig@users.sourceforge.net>2012-05-22 10:39:19 +0000
commit80c700ac600409feb22393b060371c9353bf010f (patch)
tree6529c2f4eb1676fb0080d9a396ead09a8adc6aca
parentfca77cf2daecc54a469b40b50450173a27bf9fbc (diff)
advanced debugging
svn path=/trunk/externals/iem/iemnet/; revision=16142
-rw-r--r--iemnet.c11
-rw-r--r--iemnet.h10
2 files changed, 14 insertions, 7 deletions
diff --git a/iemnet.c b/iemnet.c
index d15d73f..048c2a2 100644
--- a/iemnet.c
+++ b/iemnet.c
@@ -133,9 +133,16 @@ void udpsend_setup(void);
void udpserver_setup(void);
#endif
-int debuglevel=0;
+int iemnet_debuglevel_=0;
void iemnet_debuglevel(void*x, t_float f) {
- debuglevel=(int)f;
+#ifdef IEMNET_HAVE_DEBUG
+ iemnet_debuglevel_=(int)f;
+ post("iemnet: setting debuglevel to %d",iemnet_debuglevel_);
+#else
+ static int firsttime=1;
+ if(firsttime)post("iemnet compiled without debug!");
+ firsttime=0;
+#endif
}
diff --git a/iemnet.h b/iemnet.h
index 6fb90c2..4aab051 100644
--- a/iemnet.h
+++ b/iemnet.h
@@ -236,21 +236,21 @@ int iemnet__register(const char*name);
* \brief debug output
* \note this will only take effect if DEBUG is not undefined
*/
+#ifdef IEMNET_HAVE_DEBUG
+# undef IEMNET_HAVE_DEBUG
+#endif
#ifdef DEBUG
# define IEMNET_HAVE_DEBUG 1
#endif
-#ifdef IEMNET_HAVE_DEBUG
-# undef IEMNET_HAVE_DEBUG
-#endif
-extern int debuglevel;
+extern int iemnet_debuglevel_;
void iemnet_debuglevel(void*,t_float);
#define DEBUGMETHOD(c) class_addmethod(c, (t_method)iemnet_debuglevel, gensym("debug"), A_FLOAT, 0)
#ifdef DEBUG
# undef DEBUG
-# define DEBUG if(debuglevel&DEBUGLEVEL)startpost("[%s:%d]", __FUNCTION__, __LINE__); if(debuglevel&DEBUGLEVEL)post
+# define DEBUG if(iemnet_debuglevel_&DEBUGLEVEL)startpost("[%s:%d#%d]", __FUNCTION__, __LINE__, iemnet_debuglevel_), post
#else
static void debug_dummy(const char *format, ...) {;}
# define DEBUG debug_dummy