From 5e3956d358dcdcd8ca176b639eb350e641ce3a5d Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Mon, 21 Jan 2008 20:28:53 +0000 Subject: [PATCH] Moved translation of ogl error codes from GLU to Util, to prepare for glu to be moved to lwjgl_utils --- src/java/org/lwjgl/opengl/Util.java | 36 ++++++++++++++++++++++++-- src/java/org/lwjgl/opengl/glu/GLU.java | 21 ++------------- 2 files changed, 36 insertions(+), 21 deletions(-) diff --git a/src/java/org/lwjgl/opengl/Util.java b/src/java/org/lwjgl/opengl/Util.java index 113ef45b..8b30dfc3 100644 --- a/src/java/org/lwjgl/opengl/Util.java +++ b/src/java/org/lwjgl/opengl/Util.java @@ -43,11 +43,43 @@ public final class Util { /** No c'tor */ private Util() { } - - public static void checkGLError() { + + /** + * Throws OpenGLException if GL11.glGetError() returns anything else than GL11.GL_NO_ERROR + * + */ + public static void checkGLError() throws OpenGLException { int err = GL11.glGetError(); if ( err != GL11.GL_NO_ERROR ) { throw new OpenGLException(err); } } + + /** + * Translate a GL error code to a String describing the error + */ + public static String translateGLErrorString(int error_code) { + switch (error_code) { + case GL11.GL_NO_ERROR: + return "No error"; + case GL11.GL_INVALID_ENUM: + return "Invalid enum"; + case GL11.GL_INVALID_VALUE: + return "Invalid value"; + case GL11.GL_INVALID_OPERATION: + return "Invalid operation"; + case GL11.GL_STACK_OVERFLOW: + return "Stack overflow"; + case GL11.GL_STACK_UNDERFLOW: + return "Stack underflow"; + case GL11.GL_OUT_OF_MEMORY: + return "Out of memory"; + case ARBImaging.GL_TABLE_TOO_LARGE: + return "Table too large"; + case EXTFramebufferObject.GL_INVALID_FRAMEBUFFER_OPERATION_EXT: + return "Invalid framebuffer operation"; + default: + return null; + } + } } diff --git a/src/java/org/lwjgl/opengl/glu/GLU.java b/src/java/org/lwjgl/opengl/glu/GLU.java index 8f59d5bc..70a88803 100644 --- a/src/java/org/lwjgl/opengl/glu/GLU.java +++ b/src/java/org/lwjgl/opengl/glu/GLU.java @@ -36,6 +36,7 @@ import java.nio.ByteBuffer; import org.lwjgl.opengl.ARBImaging; import org.lwjgl.opengl.EXTFramebufferObject; import org.lwjgl.opengl.GL11; +import org.lwjgl.opengl.Util; /** * GLU.java @@ -411,24 +412,6 @@ public class GLU { public static String gluErrorString(int error_code) { switch (error_code) { - case GL11.GL_NO_ERROR: - return "No error"; - case GL11.GL_INVALID_ENUM: - return "Invalid enum"; - case GL11.GL_INVALID_VALUE: - return "Invalid value"; - case GL11.GL_INVALID_OPERATION: - return "Invalid operation"; - case GL11.GL_STACK_OVERFLOW: - return "Stack overflow"; - case GL11.GL_STACK_UNDERFLOW: - return "Stack underflow"; - case GL11.GL_OUT_OF_MEMORY: - return "Out of memory"; - case ARBImaging.GL_TABLE_TOO_LARGE: - return "Table too large"; - case EXTFramebufferObject.GL_INVALID_FRAMEBUFFER_OPERATION_EXT: - return "Invalid framebuffer operation"; case GLU.GLU_INVALID_ENUM: return "Invalid enum (glu)"; case GLU.GLU_INVALID_VALUE: @@ -436,7 +419,7 @@ public class GLU { case GLU.GLU_OUT_OF_MEMORY: return "Out of memory (glu)"; default: - return null; + return Util.translateGLErrorString(error_code); } } }