PeriDyno 1.0.0
Loading...
Searching...
No Matches
GraphicsObject.cpp
Go to the documentation of this file.
1#include "Object.h"
2
3#include <string>
4#include <iostream>
5
6#include <glad/glad.h>
7
8std::string base_name(const std::string& path)
9{
10 return path.substr(path.find_last_of("/\\") + 1);
11}
12
13namespace dyno
14{
15
16 GLenum glCheckError_(const char* file, int line)
17 {
18 GLenum errorCode;
19 while ((errorCode = glGetError()) != GL_NO_ERROR)
20 {
21 std::string error;
22 switch (errorCode)
23 {
24 case GL_INVALID_ENUM: error = "INVALID_ENUM"; break;
25 case GL_INVALID_VALUE: error = "INVALID_VALUE"; break;
26 case GL_INVALID_OPERATION: error = "INVALID_OPERATION"; break;
27 case GL_STACK_OVERFLOW: error = "STACK_OVERFLOW"; break;
28 case GL_STACK_UNDERFLOW: error = "STACK_UNDERFLOW"; break;
29 case GL_OUT_OF_MEMORY: error = "OUT_OF_MEMORY"; break;
30 case GL_INVALID_FRAMEBUFFER_OPERATION: error = "INVALID_FRAMEBUFFER_OPERATION"; break;
31 }
32
33 std::cerr << "GL Error: " << error << ": " << base_name(file) << ", " << line << std::endl;
34 }
35 return errorCode;
36 }
37}
38
std::string base_name(const std::string &path)
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25
GLenum glCheckError_(const char *file, int line)