Leaked source code of windows server 2003
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.
 
 
 
 
 
 

93 lines
2.1 KiB

//
// DRVDBG.H
// Display Driver (NT-only right now) Debug Macros
//
// Copyright(c) Microsoft 1997-
//
#ifndef _H_DRVDBG
#define _H_DRVDBG
#ifdef ASSERT
#undef ASSERT
#endif // ASSERT
#define CCH_DEBUG_MAX 256
// Standard Zones
#define ZONE_INIT 0x0001
#define ZONE_TRACE 0x0002
#define ZONE_FUNCTION 0x0004
#define ZONE_MASK 0x0007
#define ZONE_OAHEAPCHECK 0x0008
#ifndef DEBUG
#define DebugEntry(x)
#define DebugExitVOID(x)
#define DebugExitDWORD(x, dw)
#define DebugExitBOOL(x, f)
#define DebugExitPVOID(x, ptr)
#define TRACE_OUT(x)
#define WARNING_OUT(x)
#define ASSERT(x)
#else
void DbgZPrintFn(LPSTR szFn);
void DbgZPrintFnExitDWORD(LPSTR szFn, DWORD dwResult);
void DbgZPrintFnExitPVOID(LPSTR szFn, PVOID ptr);
#define DebugEntry(szFn) DbgZPrintFn("ENTER "#szFn)
#define DebugExitVOID(szFn) DbgZPrintFn("LEAVE "#szFn)
#define DebugExitDWORD(szFn, dwResult) DbgZPrintFnExitDWORD("LEAVE "#szFn, dwResult)
#define DebugExitBOOL(szFn, fResult) DbgZPrintFnExitDWORD("LEAVE "#szFn, fResult)
#define DebugExitPVOID(szFn, dwResult) DbgZPrintFnExitPVOID("LEAVE "#szFn, dwResult)
void _cdecl DbgZPrintTrace(LPSTR pszFormat, ...);
void _cdecl DbgZPrintWarning(LPSTR pszFormat, ...);
#define TRACE_OUT(szMsg) DbgZPrintTrace szMsg
#define WARNING_OUT(szMsg) DbgZPrintWarning szMsg
#define ERROR_OUT(szMsg) DbgZPrintError szMsg
extern char g_szAssertionFailure[];
#define ASSERT(exp) if (!(exp)) ERROR_OUT((g_szAssertionFailure))
#endif // !DEBUG
//
// For driver start up tracing in retail as well
//
#if defined(DEBUG) || defined(INIT_TRACE)
void _cdecl DbgZPrintInit(LPSTR pszFormat, ...);
void _cdecl DbgZPrintError(LPSTR pszFormat, ...);
#define INIT_OUT(szMsg) DbgZPrintInit szMsg
#define ERROR_OUT(szMsg) DbgZPrintError szMsg
#else
#define INIT_OUT(x)
#define ERROR_OUT(x)
#endif // DEBUG or INIT_TRACE
#endif // _H_DRVDBG