aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2009-03-01 21:47:57 +0000
committerMax Horn2009-03-01 21:47:57 +0000
commit81943a9f8ccec40fbed7326556dcd4c0b4e869a7 (patch)
treec1673553acbb852a8f59b67792fc1fe2fba11e1b
parent00db87563ae01ef60a86c4da6c7b376e74f10a8b (diff)
downloadscummvm-rg350-81943a9f8ccec40fbed7326556dcd4c0b4e869a7.tar.gz
scummvm-rg350-81943a9f8ccec40fbed7326556dcd4c0b4e869a7.tar.bz2
scummvm-rg350-81943a9f8ccec40fbed7326556dcd4c0b4e869a7.zip
COMMON: added a debugC variant which only takes a debug channel mask
svn-id: r39054
-rw-r--r--common/debug.cpp17
-rw-r--r--common/debug.h12
2 files changed, 26 insertions, 3 deletions
diff --git a/common/debug.cpp b/common/debug.cpp
index 1a1ea437df..1aa5809b00 100644
--- a/common/debug.cpp
+++ b/common/debug.cpp
@@ -214,12 +214,25 @@ void debugN(int level, const char *s, ...) {
va_end(va);
}
-void debugC(int level, uint32 engine_level, const char *s, ...) {
+void debugC(int level, uint32 debugChannels, const char *s, ...) {
va_list va;
// FIXME: Seems gDebugLevel 11 has a special meaning? Document that!
if (gDebugLevel != 11)
- if (level > gDebugLevel || !(Common::gDebugLevelsEnabled & engine_level))
+ if (level > gDebugLevel || !(Common::gDebugLevelsEnabled & debugChannels))
+ return;
+
+ va_start(va, s);
+ debugHelper(s, va);
+ va_end(va);
+}
+
+void debugC(uint32 debugChannels, const char *s, ...) {
+ va_list va;
+
+ // FIXME: Seems gDebugLevel 11 has a special meaning? Document that!
+ if (gDebugLevel != 11)
+ if (!(Common::gDebugLevelsEnabled & debugChannels))
return;
va_start(va, s);
diff --git a/common/debug.h b/common/debug.h
index 8cdecd749e..21b7fbb0f2 100644
--- a/common/debug.h
+++ b/common/debug.h
@@ -105,6 +105,7 @@ inline void debug(const char *s, ...) {}
inline void debug(int level, const char *s, ...) {}
inline void debugN(int level, const char *s, ...) {}
inline void debugC(int level, uint32 engine_level, const char *s, ...) {}
+inline void debugC(uint32 engine_level, const char *s, ...) {}
#else
@@ -141,7 +142,16 @@ void debugN(int level, const char *s, ...) GCC_PRINTF(2, 3);
*
* @see enableDebugChannel
*/
-void debugC(int level, uint32 engine_level, const char *s, ...) GCC_PRINTF(3, 4);
+void debugC(int level, uint32 debugChannels, const char *s, ...) GCC_PRINTF(3, 4);
+
+/**
+ * Print a debug message to the text console (stderr), but only if
+ * the specified special debug level is active.
+ * Automatically appends a newline.
+ *
+ * @see enableDebugChannel
+ */
+void debugC(uint32 debugChannels, const char *s, ...) GCC_PRINTF(2, 3);
#endif