BRE12
DebugUtils.h
1 #pragma once
2 
3 #include <cassert>
4 #include <comdef.h>
5 #include <string>
6 
7 #include <Utils\StringUtils.h>
8 
9 #define BRE_ASSERT(condition) assert(condition)
10 
11 #if defined(DEBUG) || defined(_DEBUG)
12 #define BRE_ASSERT_MSG(condition, msg) \
13 { \
14  if ((condition) == false) { \
15  MessageBox(0, msg, 0, 0); \
16  abort(); \
17  } \
18 }
19 #else
20 #define BRE_ASSERT_MSG(condition, msg) (assert(condition))
21 #endif
22 
23 #ifndef BRE_CHECK_HR
24 #define BRE_CHECK_HR(x) \
25 { \
26  const HRESULT __hr__ = (x); \
27  if (FAILED(__hr__)) { \
28  _com_error err(__hr__); \
29  const std::wstring errorMessage = err.ErrorMessage(); \
30  MessageBox(0, errorMessage.c_str(), 0, 0); \
31  abort(); \
32  } \
33 }
34 #endif