00001 00002 //written by Luke Lenhart, 2007 00003 //See /docs/License.txt for details on how this code may be used. 00004 00005 #pragma once 00006 00007 #include "Setup.h" 00008 #include <string> 00009 00010 namespace MPMA 00011 { 00012 00013 // -- symbol/stack tracing functions -- 00014 00017 #ifdef DEBUG_CALLSTACK_ENABLED 00018 std::string GetCallStack(); 00019 #else 00020 inline std::string GetCallStack() { return std::string(); } 00021 #endif 00022 00023 00024 // -- misc -- 00025 00027 #ifdef WIN32 00028 #define BREAKPOINT __asm int 3; 00029 #else 00030 #define BREAKPOINT asm ("int $3;"); 00031 #endif 00032 00033 00034 } //namespace MPMA 00035