VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Error.h
Go to the documentation of this file.
1 //
2 // Error.h
3 // VolViz
4 //
5 // Created by Stefan Reinhold on 07.06.16.
6 //
7 //
8 
9 #ifndef VolViz_Error_h
10 #define VolViz_Error_h
11 
12 #include "GLdefs.h"
13 
14 #include <cassert>
15 
16 #ifndef NDEBUG
17 inline void assertGL(char const *txt) noexcept {
18  auto const err = glGetError();
19  switch (err) {
20  case GL_NO_ERROR:
21  break;
22  case GL_INVALID_ENUM:
23  assert(false && "Error INVALID_ENUM:" && txt);
24  case GL_INVALID_VALUE:
25  assert(false && "Error GL_INVALID_VALUE:" && txt);
27  assert(false && "Error GL_INVALID_OPERATION:" && txt);
28  case GL_OUT_OF_MEMORY:
29  assert(false && "Error GL_OUT_OF_MEMORY:" && txt);
31  assert(false && "Error GL_INVALID_FRAMEBUFFER_OPERATION:" && txt);
32  default:
33  assert(false && "Unknown error: " && txt);
34  }
35 }
36 #else
37 #define assertGL(txt)
38 #endif
39 
40 #endif // VolViz_Error_h
void assertGL(char const *txt) noexcept
Definition: Error.h:17
#define GL_INVALID_FRAMEBUFFER_OPERATION
Definition: glad.h:1285
#define GL_INVALID_OPERATION
Definition: glad.h:782
#define GL_OUT_OF_MEMORY
Definition: glad.h:783
#define GL_INVALID_VALUE
Definition: glad.h:781
#define glGetError
Definition: glad.h:2192
#define GL_NO_ERROR
Definition: glad.h:779
#define GL_INVALID_ENUM
Definition: glad.h:780