40 #ifndef INCLUDED_DISTI_ASSERT_H
41 #define INCLUDED_DISTI_ASSERT_H
51 DISTI_EXPORT
void swap( DistiException& first, DistiException& second );
58 DISTI_EXPORT DistiException(
const DistiException& other);
59 DISTI_EXPORT DistiException& operator=(DistiException other);
60 #ifdef DISTI_HAS_RVAL_REFS
61 DISTI_EXPORT DistiException(DistiException&& other);
63 virtual DISTI_EXPORT ~DistiException();
64 virtual DISTI_EXPORT
const char *what()
const;
65 friend DISTI_EXPORT
void swap( DistiException& first, DistiException& second );
109 #if defined(GLS_DEBUG)
110 #define DistiAssert(exp) (void)( (exp) || (::disti::DistiAssertDebug(#exp, __FILE__, __LINE__),0) )
112 #define DistiAssert(exp) (void)( (exp) || (::disti::DistiAssertRelease(#exp, __FILE__, __LINE__),0) )
115 #define GLS_UNUSED(exp) do { (void)sizeof(exp); } while(0)
131 #if defined(GLS_DEBUG) || !defined(NDEBUG)
132 # define GLS_ASSERT(exp) do { (void)( (exp) || (::disti::GlsAssert(#exp, __FILE__, __LINE__),0) ); } while(0)
134 # define GLS_ASSERT(exp) GLS_UNUSED(exp)
148 #define GLS_VERIFY(exp) (void)( (exp) || (::disti::GlsVerify(#exp, __FILE__, __LINE__),0) )
153 DISTI_EXPORT
void DistiAssertDebug(
const char *expression,
const char *filename,
unsigned int lineNumber);
157 DISTI_EXPORT
void DistiAssertRelease(
const char *expression,
const char *filename,
unsigned int lineNumber);
160 DISTI_EXPORT
void GlsVerify(
const char *expression,
const char *filename,
unsigned int lineNumber);
163 DISTI_EXPORT
void GlsAssert(
const char *expression,
const char *filename,
unsigned int lineNumber);
T * ValidatePointer(const T *const p)
Definition: disti_assert.h:167
void DistiAssertDebug(const char *expression, const char *filename, unsigned int lineNumber)
void(* DistiAssertHandler)(const char *errMessage)
Definition: disti_assert.h:72
A file for all GL Studio files to include.
Definition: disti_assert.h:54
void DistiAssertRelease(const char *expression, const char *filename, unsigned int lineNumber)
void GlsVerify(const char *expression, const char *filename, unsigned int lineNumber)
Macros and helper code to determine what subset of C++11/14/17 is available.
void GlsAssert(const char *expression, const char *filename, unsigned int lineNumber)
Definition: bmpimage.h:46