aboutsummaryrefslogtreecommitdiff
path: root/dep/include/g3dlite/G3D/debug.h
diff options
context:
space:
mode:
Diffstat (limited to 'dep/include/g3dlite/G3D/debug.h')
-rw-r--r--dep/include/g3dlite/G3D/debug.h66
1 files changed, 60 insertions, 6 deletions
diff --git a/dep/include/g3dlite/G3D/debug.h b/dep/include/g3dlite/G3D/debug.h
index 408dd3ea146..a7697fe9c01 100644
--- a/dep/include/g3dlite/G3D/debug.h
+++ b/dep/include/g3dlite/G3D/debug.h
@@ -1,12 +1,66 @@
+/**
+ @file debug.h
-#ifndef G3D_LITE_DEBUG_H
-#define G3D_LITE_DEBUG_H
+ @maintainer Morgan McGuire, http://graphics.cs.williams.edu
-#define debugStatement(x)
-#define debugAssert(x)
-#define debugAssertM(x, y)
-#define alwaysAssertM(x, y)
+ @created 2001-08-26
+ @edited 2006-02-16
+ Copyright 2000-2006, Morgan McGuire.
+ All rights reserved.
+*/
+
+#ifndef G3D_DEBUG_H
+#define G3D_DEBUG_H
+
+#include "G3D/platform.h"
+#ifdef _MSC_VER
+ #include <crtdbg.h>
+#endif
+
+#include "G3D/debugPrintf.h"
+#include "G3D/debugAssert.h"
+
+namespace G3D {
+
+#ifdef _MSC_VER
+ // Turn off 64-bit warnings
+# pragma warning(push)
+# pragma warning( disable : 4312)
+# pragma warning( disable : 4267)
+# pragma warning( disable : 4311)
#endif
+/**
+ Useful for debugging purposes.
+ */
+inline bool isValidHeapPointer(const void* x) {
+ #ifdef _MSC_VER
+ return
+ (x != (void*)0xcccccccc) && (x != (void*)0xdeadbeef) && (x != (void*)0xfeeefeee);
+ #else
+ return x != NULL;
+ #endif
+}
+
+/**
+ Returns true if the pointer is likely to be
+ a valid pointer (instead of an arbitrary number).
+ Useful for debugging purposes.
+ */
+inline bool isValidPointer(const void* x) {
+ #ifdef _MSC_VER
+ return x != ((void*)0xcccccccc) && (x != (void*)0xdeadbeef) && (x != (void*)0xfeeefeee);
+ #else
+ return x != NULL;
+ #endif
+}
+
+#ifdef _MSC_VER
+# pragma warning(pop)
+#endif
+
+}
+
+#endif