Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
cExceptionAssert.h
Go to the documentation of this file.
1 //
4 //
5 
6 #ifndef _INC_cExceptionAssert_H
7 #define _INC_cExceptionAssert_H
8 #ifndef NO_PRAGMA_ONCE
9 #pragma once
10 #endif
11 
12 #include "cException.h"
13 
14 namespace Gray
15 {
17  {
20  protected:
21  const LOGCHAR_t* const m_pExp;
22  const cDebugSourceLine m_Src; // DEBUGSOURCELINE __FILE__ __LINE__
23  public:
24  cExceptionAssert(const LOGCHAR_t* pExp, LOGLEV_TYPE eSeverity, const cDebugSourceLine& src);
25  virtual ~cExceptionAssert() THROW_DEF;
26  virtual BOOL GetErrorMessage(GChar_t* lpszError, UINT nMaxError, UINT* pnHelpContext) override;
27  static void GRAYCALL Throw(const LOGCHAR_t* pExp, const cDebugSourceLine& src);
28  };
29 };
30 
31 #endif
#define GRAYCORE_LINK
Definition: GrayCore.h:47
#define GRAYCALL
declare calling convention for static functions so everyone knows the arg passing scheme....
Definition: GrayCore.h:36
#define THROW_DEF
Definition: HResult.h:25
Definition: cExceptionAssert.h:17
const LOGCHAR_t *const m_pExp
Definition: cExceptionAssert.h:21
const cDebugSourceLine m_Src
Definition: cExceptionAssert.h:22
Definition: cException.h:83
< The main namespace for all Core functions.
Definition: GrayCore.cpp:14
LOGLEV_TYPE
Definition: cLogLevel.h:22
char GChar_t
My version of TCHAR, _TCHAR.
Definition: StrConst.h:26
char LOGCHAR_t
always just use UTF8 for logs, don't bother with UNICODE.
Definition: cLogLevel.h:17
Definition: cDebugAssert.h:29