32 #if !defined(__RELFILE__) 33 #define __RELFILE__ __FILE__ 122 #define DISABLED_LEVEL 0x0 123 #define ERR_LEVEL 0x1 124 #define FIXME_LEVEL 0x2 125 #define WARN_LEVEL 0x4 126 #define TRACE_LEVEL 0x8 128 #define MAX_LEVEL ERR_LEVEL | FIXME_LEVEL | WARN_LEVEL | TRACE_LEVEL 130 #define DBG_GET_PPI ((PPROCESSINFO)PsGetCurrentProcessWin32Process()) 131 #define DBG_DEFAULT_CHANNEL(x) static int DbgDefaultChannel = DbgCh##x; 133 #define DBG_ENABLE_CHANNEL(ppi,ch,level) ((ppi)->DbgChannelLevel[ch] |= level) 134 #define DBG_DISABLE_CHANNEL(ppi,ch,level) ((ppi)->DbgChannelLevel[ch] &= ~level) 135 #define DBG_IS_CHANNEL_ENABLED(ppi,ch,level) (((ppi)->DbgChannelLevel[ch] & level) == level) 137 #define DBG_PRINT(ppi,ch,level,fmt, ...) \ 139 if ((level == ERR_LEVEL) || (ppi && DBG_IS_CHANNEL_ENABLED(ppi,ch,level))) \ 140 DbgPrint("(%s:%d) " fmt, __RELFILE__, __LINE__, ##__VA_ARGS__); \ 143 #define ERR(fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgDefaultChannel, ERR_LEVEL,"err: " fmt, ##__VA_ARGS__) 144 #define FIXME(fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgDefaultChannel, FIXME_LEVEL,"fixme: " fmt, ##__VA_ARGS__) 145 #define WARN(fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgDefaultChannel, WARN_LEVEL,"warn: " fmt, ##__VA_ARGS__) 146 #define TRACE(fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgDefaultChannel, TRACE_LEVEL,"trace: " fmt, ##__VA_ARGS__) 148 #define ERR_CH(ch,fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgCh##ch, ERR_LEVEL, "err: " fmt, ##__VA_ARGS__) 149 #define FIXME_CH(ch,fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgCh##ch, FIXME_LEVEL, "fixme: " fmt, ##__VA_ARGS__) 150 #define WARN_CH(ch,fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgCh##ch, WARN_LEVEL, "warn: " fmt, ##__VA_ARGS__) 151 #define TRACE_CH(ch,fmt, ...) DBG_PRINT(DBG_GET_PPI, DbgCh##ch, TRACE_LEVEL, "trace: " fmt, ##__VA_ARGS__) 153 #define ERR_PPI(ppi,ch,fmt, ...) DBG_PRINT(ppi, DbgCh##ch, ERR_LEVEL,"err: " fmt, ##__VA_ARGS__) 154 #define FIXME_PPI(ppi,ch,fmt, ...) DBG_PRINT(ppi, DbgCh##ch, FIXME_LEVEL,"fixme: " fmt, ##__VA_ARGS__) 155 #define WARN_PPI(ppi,ch,fmt, ...) DBG_PRINT(ppi, DbgCh##ch, WARN_LEVEL,"warn: " fmt, ##__VA_ARGS__) 156 #define TRACE_PPI(ppi,ch,fmt, ...) DBG_PRINT(ppi, DbgCh##ch, TRACE_LEVEL,"trace: " fmt, ##__VA_ARGS__) 158 #define STUB DbgPrint("WARNING: %s at %s:%d is UNIMPLEMENTED!\n",__FUNCTION__,__RELFILE__,__LINE__); 162 #define DBG_DEFAULT_CHANNEL(x) 164 #define DBG_ENABLE_CHANNEL(ppi,ch,level) 165 #define DBG_DISABLE_CHANNEL(ppi,ch,level) 166 #define DBG_IS_CHANNEL_ENABLED(ppi,ch,level) 168 #define DBG_PRINT(ppi,ch,level) 170 #define ERR(fmt, ...) 171 #define FIXME(fmt, ...) 172 #define WARN(fmt, ...) 173 #define TRACE(fmt, ...) 175 #define ERR_CH(ch,fmt, ...) 176 #define FIXME_CH(ch,fmt, ...) 177 #define WARN_CH(ch,fmt, ...) 178 #define TRACE_CH(ch,fmt, ...) 180 #define ERR_PPI(ppi,ch,fmt, ...) 181 #define FIXME_PPI(ppi,ch,fmt, ...) 182 #define WARN_PPI(ppi,ch,fmt, ...) 183 #define TRACE_PPI(ppi,ch,fmt, ...)
BOOL DbgInitDebugChannels()