summaryrefslogtreecommitdiff
path: root/utils/valvelib/debug.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /utils/valvelib/debug.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'utils/valvelib/debug.h')
-rw-r--r--utils/valvelib/debug.h63
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_)