00001
00002
00003
00004
00005
00006
00007
00008
00014 #ifndef _FU_DEBUG_H_
00015 #define _FU_DEBUG_H_
00016
00026 class FCOLLADA_EXPORT FUDebug
00027 {
00028 private:
00031 FUDebug();
00032 virtual ~FUDebug();
00033
00037 static void DebugOut(uint8 level, const char* message, ...);
00038 #ifdef UNICODE
00039 static void DebugOut(uint8 level, const fchar* message, ...);
00040 #endif // UNICODE
00041
00046 static void DebugOutV(uint8 level, const char* message, va_list& vars);
00047 #ifdef UNICODE
00048 static void DebugOutV(uint8 level, const fchar* message, va_list& vars);
00049 #endif // UNICODE
00050
00057 static void DebugOutV(uint8 level, const char* filename, uint32 line, const char* message, va_list& vars);
00058 #ifdef UNICODE
00059 static void DebugOutV(uint8 level, const char* filename, uint32 line, const fchar* message, va_list& vars);
00060 #endif // UNICODE
00061
00062 public:
00068 static void DebugOut(uint8 level, uint32 line, const char* filename, const char* message, ...);
00069 #ifdef UNICODE
00070 static void DebugOut(uint8 level, uint32 line, const char* filename, const fchar* message, ...);
00071 #endif // UNICODE
00072 };
00073
00077 #define DEBUG_OUT(...) FUDebug::DebugOut(FUError::DEBUG_LEVEL, __LINE__, __FILE__, __VA_ARGS__);
00078
00079 #define WARNING_OUT(...) FUDebug::DebugOut(FUError::WARNING_LEVEL, __LINE__, __FILE__, __VA_ARGS__);
00080
00081 #define ERROR_OUT(...) FUDebug::DebugOut(FUError::ERROR_LEVEL, __LINE__, __FILE__, __VA_ARGS__);
00082
00083 #endif // _FU_DEBUG_H_