00001
00004
00005
00006
00007
00008 #ifndef _cel_debug_h_
00009 #define _cel_debug_h_
00010
00011 #include "cel_printf.h"
00012
00025 #if _CEL_DEBUG_
00026 #define CEL_ASSERT(cond) ::Celartem::Debug::assertion_failed(cond, #cond, __FILE__, __LINE__, __FUNCTION__)
00027 #else
00028 #define CEL_ASSERT(cond)
00029 #endif // _CEL_DEBUG_
00030
00031 namespace Celartem
00032 {
00036 struct Debug
00037 {
00043 static void assertion_failed(
00044 bool f, const char *description,
00045 const char *filename, long line, const char *funcname);
00046
00052 static void set_dbgenv();
00053
00063 static void writeLog(const char* message);
00064 };
00065 }
00066
00074 #define CEL_ANONYMOUS_NS _Cel_Internal_NS_
00075 #define USING_CEL_ANONYMOUS_NS using namespace CEL_ANONYMOUS_NS;
00076
00077 #endif // _cel_debug_h_