Toggle navigation
ivorium
iv_components
Example project
GitHub
Main Page
Modules
Classes
Files
File List
File Members
ivorium_graphics
OpenGL
GlError.cpp
Go to the documentation of this file.
1
#include "
GlError.hpp
"
2
3
#include "
gl.h
"
4
#include <
ivorium_core/ivorium_core.hpp
>
5
#include <ivorium_config.hpp>
6
7
namespace
iv
8
{
9
10
void
GlError_Check
(
Context
const
* logger,
SrcInfo
const
& src_info )
11
{
12
GLenum err = glGetError();
13
if
( err != GL_NO_ERROR )
14
{
15
char
const
* str =
nullptr
;
16
switch
( err )
17
{
18
case
GL_INVALID_ENUM: str =
"GL_INVALID_ENUM"
;
break
;
19
case
GL_INVALID_VALUE: str =
"GL_INVALID_VALUE"
;
break
;
20
case
GL_INVALID_OPERATION: str =
"GL_INVALID_OPERATION"
;
break
;
21
case
GL_OUT_OF_MEMORY: str =
"GL_OUT_OF_MEMORY"
;
break
;
22
case
GL_INVALID_FRAMEBUFFER_OPERATION: str =
"GL_INVALID_FRAMEBUFFER_OPERATION"
;
break
;
23
/*
24
#if IV_GLPLATFORM_GLFM
25
case GL_STACK_OVERFLOW: str = "GL_STACK_OVERFLOW"; break;
26
case GL_STACK_UNDERFLOW: str = "GL_STACK_UNDERFLOW"; break;
27
case GL_CONTEXT_LOST: str = "GL_CONTEXT_LOST"; break;
28
#endif*/
29
}
30
31
if
( str )
32
logger->
log
( src_info,
iv::Defs::Log::Warning
,
"OpenGL error: "
, str,
"."
);
33
else
34
logger->
log
( src_info,
iv::Defs::Log::Warning
,
"Unknown OpenGL error: "
, err,
"."
);
35
}
36
}
37
38
}