diff options
Diffstat (limited to 'dep/include/g3dlite/G3D/debug.h')
-rw-r--r-- | dep/include/g3dlite/G3D/debug.h | 66 |
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 |