X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fdebug.h;h=ba2e8704ebd1cc7c892dcec67618c6009f75035a;hb=a1e9732407494edb9cef3ada45cc2781a34ed60c;hp=69a215a42395352f0c2ab3f682aad346afdb80f7;hpb=6d0ea26c2d62c3774ff384cf1bfc2a3372b49a3b;p=dragonfireclient.git diff --git a/src/debug.h b/src/debug.h index 69a215a42..ba2e8704e 100644 --- a/src/debug.h +++ b/src/debug.h @@ -20,23 +20,24 @@ with this program; if not, write to the Free Software Foundation, Inc., #ifndef DEBUG_HEADER #define DEBUG_HEADER -#include -#include -#include #include -#include "irrlichttypes.h" -#include -#include "threads.h" +#include #include "gettime.h" -#include "exceptions.h" -#ifdef _WIN32 +#if (defined(WIN32) || defined(_WIN32_WCE)) #define WIN32_LEAN_AND_MEAN + #ifndef _WIN32_WINNT + #define _WIN32_WINNT 0x0501 + #endif #include #ifdef _MSC_VER #include #endif + #define __NORETURN __declspec(noreturn) + #define __FUNCTION_NAME __FUNCTION__ #else + #define __NORETURN __attribute__ ((__noreturn__)) + #define __FUNCTION_NAME __PRETTY_FUNCTION__ #endif // Whether to catch all std::exceptions. @@ -54,65 +55,9 @@ with this program; if not, write to the Free Software Foundation, Inc., #define DTIME (getTimestamp()+": ") -#define DEBUGSTREAM_COUNT 2 - -extern FILE *g_debugstreams[DEBUGSTREAM_COUNT]; - extern void debugstreams_init(bool disable_stderr, const char *filename); extern void debugstreams_deinit(); -#define DEBUGPRINT(...)\ -{\ - for(int i=0; i +#undef assert + /* Assert */ @@ -150,25 +102,11 @@ __NORETURN extern void assert_fail( #define DEBUG_STACK_SIZE 50 #define DEBUG_STACK_TEXT_SIZE 300 -struct DebugStack -{ - DebugStack(threadid_t id); - void print(FILE *file, bool everything); - void print(std::ostream &os, bool everything); - - threadid_t threadid; - char stack[DEBUG_STACK_SIZE][DEBUG_STACK_TEXT_SIZE]; - int stack_i; // Points to the lowest empty position - int stack_max_i; // Highest i that was seen -}; - -extern core::map g_debug_stacks; -extern JMutex g_debug_stacks_mutex; - extern void debug_stacks_init(); extern void debug_stacks_print_to(std::ostream &os); extern void debug_stacks_print(); +struct DebugStack; class DebugStacker { public: @@ -189,57 +127,6 @@ class DebugStacker DEBUG_STACK_TEXT_SIZE, __VA_ARGS__);\ DebugStacker __debug_stacker(__buf); -/* - Packet counter -*/ - -class PacketCounter -{ -public: - PacketCounter() - { - } - - void add(u16 command) - { - core::map::Node *n = m_packets.find(command); - if(n == NULL) - { - m_packets[command] = 1; - } - else - { - n->setValue(n->getValue()+1); - } - } - - void clear() - { - for(core::map::Iterator - i = m_packets.getIterator(); - i.atEnd() == false; i++) - { - i.getNode()->setValue(0); - } - } - - void print(std::ostream &o) - { - for(core::map::Iterator - i = m_packets.getIterator(); - i.atEnd() == false; i++) - { - o<<"cmd "<getKey() - <<" count "<getValue() - < m_packets; -}; - /* These should be put into every thread */ @@ -255,14 +142,6 @@ class PacketCounter #ifdef _WIN32 // Windows #ifdef _MSC_VER // MSVC void se_trans_func(unsigned int, EXCEPTION_POINTERS*); - -class FatalSystemException : public BaseException -{ -public: - FatalSystemException(const char *s): - BaseException(s) - {} -}; #define BEGIN_DEBUG_EXCEPTION_HANDLER \ BEGIN_PORTABLE_DEBUG_EXCEPTION_HANDLER\ _set_se_translator(se_trans_func);