UniShader  1.0.0a
Interface for GPGPU and working with shader programs
 All Classes Functions Typedefs Enumerations Enumerator
D:/Visual Studio 2010/Projects/Unishader project/Unishader/include/UniShader/OpenGL.h
00001 #pragma once
00002 #ifndef OPEN_GL_H
00003 #define OPEN_GL_H
00004 
00005 #include <UniShader/Config.h>
00006 #include <UniShader/Utility.h>
00007 
00008 #include <GL/glew.h>
00009 #include <iostream>
00010 #include <string>
00011 
00012 std::string& getGLExtensions();
00013 void ensureGlewInit();
00014 
00015 inline void clearGLErrors(){
00016         while(glGetError() != GL_NO_ERROR){
00017         }
00018 }
00019 
00020 inline bool printGLError(std::string file, unsigned int line){
00021         unsigned int glErr;
00022         bool error = false;
00023         while( (glErr = glGetError()) != GL_NO_ERROR){
00024                 std::cerr << "glError: " << glErr << " file: " << file << " @ " << line << "> " << gluErrorString(glErr) << std::endl; 
00025                 error = true;
00026         }
00027         return error;
00028 }
00029 
00030 #define printGLError() printGLError(__FILE__, __LINE__)
00031 
00032 #endif