diff options
Diffstat (limited to 'utils/valvelib/debug.h')
| -rw-r--r-- | utils/valvelib/debug.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/utils/valvelib/debug.h b/utils/valvelib/debug.h new file mode 100644 index 0000000..5a3de22 --- /dev/null +++ b/utils/valvelib/debug.h @@ -0,0 +1,63 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +// +//=============================================================================// +#if !defined(AFX_DEBUG_H__D402C9F7_EF9A_4182_B9BE_F92F1ABB99EF__INCLUDED_) +#define AFX_DEBUG_H__D402C9F7_EF9A_4182_B9BE_F92F1ABB99EF__INCLUDED_ + +///////////////////////////////////////////////////////////////////////////// +// Diagnostic support + +#ifdef _PSEUDO_DEBUG + +#undef TRACE +#undef VERIFY +#undef ASSERT +#undef THIS_FILE +#undef TRACE0 +#undef TRACE1 +#undef TRACE2 +#undef TRACE3 + + +// Note: file names are still ANSI strings (filenames rarely need UNICODE) +BOOL AssertFailedLine(LPCSTR lpszFileName, int nLine); + +void Trace(PRINTF_FORMAT_STRING LPCTSTR lpszFormat, ...); + +// by default, debug break is asm int 3, or a call to DebugBreak, or nothing +#if defined(_M_IX86) +#define CustomDebugBreak() _asm { int 3 } +#else +#define CustomDebugBreak() DebugBreak() +#endif + +#define TRACE ::Trace +#define THIS_FILE __FILE__ +#define ASSERT(f) \ + do \ + { \ + if (!(f) && AssertFailedLine(THIS_FILE, __LINE__)) \ + CustomDebugBreak(); \ + } while (0) \ + +#define VERIFY(f) ASSERT(f) + +// The following trace macros are provided for backward compatiblity +// (they also take a fixed number of parameters which provides +// some amount of extra error checking) +#define TRACE0(sz) ::Trace(_T(sz)) +#define TRACE1(sz, p1) ::Trace(_T(sz), p1) +#define TRACE2(sz, p1, p2) ::Trace(_T(sz), p1, p2) +#define TRACE3(sz, p1, p2, p3) ::Trace(_T(sz), p1, p2, p3) + +#endif // !_PSEUDO_DEBUG + + +//{{AFX_INSERT_LOCATION}} +// Microsoft Visual C++ will insert additional declarations immediately before the previous line. + +#endif // !defined(AFX_DEBUG_H__D402C9F7_EF9A_4182_B9BE_F92F1ABB99EF__INCLUDED_) |