Added gluErrorString

This commit is contained in:
Elias Naur 2004-03-21 08:13:07 +00:00
parent eeb01b8da5
commit 09e51d6bed
3 changed files with 41 additions and 1 deletions

View File

@ -49,6 +49,10 @@ import java.nio.ShortBuffer;
*/
public final class GL12 {
/* Error codes */
public static final int GL_TABLE_TOO_LARGE = 0x8031;
/* Enums */
public static final int GL_PACK_SKIP_IMAGES = 0x806B;
public static final int GL_PACK_IMAGE_HEIGHT = 0x806C;
public static final int GL_UNPACK_SKIP_IMAGES = 0x806D;

View File

@ -32,6 +32,8 @@
package org.lwjgl.opengl;
import org.lwjgl.opengl.glu.GLU;
/**
* $Id$
*
@ -47,7 +49,12 @@ public class OpenGLException extends RuntimeException {
* Constructor for OpenGLException.
*/
public OpenGLException(int gl_error_code) {
super("GL error code: " + gl_error_code);
this(createErrorMessage(gl_error_code));
}
private final static String createErrorMessage(int gl_error_code) {
String error_string = GLU.gluErrorString(gl_error_code);
return error_string + " (" + gl_error_code + ")";
}
/**

View File

@ -5,6 +5,7 @@ import java.nio.FloatBuffer;
import java.nio.IntBuffer;
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12;
/**
* GLU.java
@ -200,4 +201,32 @@ public class GLU implements GLUConstants {
return MipMap.gluScaleImage(format, widthIn, heightIn, typeIn, dataIn, widthOut, heightOut, typeOut, dataOut);
}
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 GL12.GL_TABLE_TOO_LARGE:
return "Table too large";
case GLU.GLU_INVALID_ENUM:
return "Invalid enum (glu)";
case GLU.GLU_INVALID_VALUE:
return "Invalid value (glu)";
case GLU.GLU_OUT_OF_MEMORY:
return "Out of memory (glu)";
default:
return null;
}
}
}