Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

47 lines
1.2 KiB

/*
* Some simple debugging macros that look and behave a lot like their
* namesakes in MFC. These macros should work in both C and C++ and
* do something useful with almost any Win32 compiler.
*
* George V. Reilly <[email protected]> <[email protected]>
*/
#ifndef __DEBUG_H__
#define __DEBUG_H__
#if DBG
#include <crtdbg.h>
#include <windows.h>
# define SC_TRACE Trace
# define SC_TRACE0(psz) Trace(L"%s", psz)
# define SC_TRACE1(psz, p1) Trace(psz, p1)
# define SC_TRACE2(psz, p1, p2) Trace(psz, p1, p2)
# define SC_TRACE3(psz, p1, p2, p3) Trace(psz, p1, p2, p3)
# define SC_ASSERT(bCond) if(bCond == false) Assert(__FILE__, __LINE__, #bCond)
#else /* !DBG */
/* These macros should all compile away to nothing */
# define SC_TRACE
# define SC_TRACE0(psz)
# define SC_TRACE1(psz, p1)
# define SC_TRACE2(psz, p1, p2)
# define SC_TRACE3(psz, p1, p2, p3)
# define SC_ASSERT(bCond)
#endif /* !DBG*/
#if DBG
/* in debug version, writes trace messages to debug stream */
void __cdecl
Trace(
LPCWSTR pszFormat,
...);
void __cdecl
Assert(
LPCSTR pszFile,
DWORD dwLine,
LPCSTR pszCond);
#endif /* DBG */
#endif /* __DEBUG_H__ */