Go to the documentation of this file.
24 #ifndef __MYGUI_DIAGNOSTIC_H__
25 #define __MYGUI_DIAGNOSTIC_H__
33 #if MYGUI_COMPILER == MYGUI_COMPILER_MSVC
37 #define MYGUI_LOG_SECTION "Core"
38 #define MYGUI_LOG_FILENAME "MyGUI.log"
39 #define MYGUI_LOG(level, text) MYGUI_LOGGING(MYGUI_LOG_SECTION, level, text)
41 #define MYGUI_BASE_EXCEPT(desc, src) throw MyGUI::Exception(desc, src, __FILE__, __LINE__);
44 #if MYGUI_COMPILER == MYGUI_COMPILER_MSVC
45 #define MYGUI_DBG_BREAK _CrtDbgBreak();
47 #define MYGUI_DBG_BREAK
50 #define MYGUI_EXCEPT(dest) \
52 MYGUI_LOG(Critical, dest); \
54 std::ostringstream stream; \
55 stream << dest << "\n"; \
56 MYGUI_BASE_EXCEPT(stream.str().c_str(), "MyGUI"); \
59 #define MYGUI_ASSERT(exp, dest) \
63 MYGUI_LOG(Critical, dest); \
65 std::ostringstream stream; \
66 stream << dest << "\n"; \
67 MYGUI_BASE_EXCEPT(stream.str().c_str(), "MyGUI"); \
71 #define MYGUI_ASSERT_RANGE(index, size, owner) MYGUI_ASSERT(index < size, owner << " : index number " << index << " out of range [" << size << "]");
72 #define MYGUI_ASSERT_RANGE_AND_NONE(index, size, owner) MYGUI_ASSERT(index < size || index == ITEM_NONE, owner << " : index number " << index << " out of range [" << size << "]");
73 #define MYGUI_ASSERT_RANGE_INSERT(index, size, owner) MYGUI_ASSERT((index <= size) || (index == MyGUI::ITEM_NONE), owner << " : insert index number " << index << " out of range [" << size << "] or not ITEM_NONE");
75 #if MYGUI_DEBUG_MODE == 1
76 #define MYGUI_REGISTER_VALUE(map, value) \
78 MYGUI_LOG(Info, "Register value : '" << #value << "' = " << (int)value); \
79 map[#value] = value; \
81 #define MYGUI_DEBUG_ASSERT(exp, dest) MYGUI_ASSERT(exp, dest)
83 #define MYGUI_REGISTER_VALUE(map, value) map[#value] = value;
84 #define MYGUI_DEBUG_ASSERT(exp, dest) ((void)0)
89 #if MYGUI_COMPILER == MYGUI_COMPILER_MSVC
90 #if MYGUI_COMP_VER == 1310 // VC++ 7.1
91 #define MYGUI_OBSOLETE_START(text)
92 #define MYGUI_OBSOLETE_END
94 #define MYGUI_OBSOLETE_START(text) __declspec(deprecated(text))
95 #define MYGUI_OBSOLETE_END
98 #elif MYGUI_COMPILER == MYGUI_COMPILER_GNUC
99 #if MYGUI_PLATFORM == MYGUI_PLATFORM_LINUX && MYGUI_COMP_VER == 412
100 #define MYGUI_OBSOLETE_START(text)
101 #define MYGUI_OBSOLETE_END
103 #define MYGUI_OBSOLETE_START(text)
104 #define MYGUI_OBSOLETE_END __attribute__((deprecated))
108 #define MYGUI_OBSOLETE_START(text)
109 #define MYGUI_OBSOLETE_END
113 #define MYGUI_OBSOLETE(text) MYGUI_OBSOLETE_START(text)MYGUI_OBSOLETE_END
115 #endif // __MYGUI_DIAGNOSTIC_H__