diff options
author | Max Horn | 2009-03-01 21:47:57 +0000 |
---|---|---|
committer | Max Horn | 2009-03-01 21:47:57 +0000 |
commit | 81943a9f8ccec40fbed7326556dcd4c0b4e869a7 (patch) | |
tree | c1673553acbb852a8f59b67792fc1fe2fba11e1b | |
parent | 00db87563ae01ef60a86c4da6c7b376e74f10a8b (diff) | |
download | scummvm-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.cpp | 17 | ||||
-rw-r--r-- | common/debug.h | 12 |
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 |