--- /dev/null
+/* $Id$
+
+This file is part of gldbg
+Copyright © 2010 Mikko Rasa, Mikkosoft Productions
+Distributed under the GPL
+*/
+
+#include "arraysize.h"
+
+int typesize(GLenum type)
+{
+ switch(type)
+ {
+ case GL_BYTE: return sizeof(GLbyte);
+ case GL_SHORT: return sizeof(GLshort);
+ case GL_INT: return sizeof(GLint);
+ case GL_UNSIGNED_BYTE: return sizeof(GLubyte);
+ case GL_UNSIGNED_SHORT: return sizeof(GLushort);
+ case GL_UNSIGNED_INT: return sizeof(GLuint);
+ case GL_FLOAT: return sizeof(GLfloat);
+ // Short and byte packed types are broken
+ default: return 1;
+ }
+}
+
+int formatsize(GLenum format)
+{
+ switch(format)
+ {
+ case GL_STENCIL_INDEX: return 1;
+ case GL_DEPTH_COMPONENT: return 1;
+ case GL_ALPHA: return 1;
+ case GL_RGB: return 3;
+ case GL_RGBA: return 4;
+ case GL_LUMINANCE: return 1;
+ case GL_LUMINANCE_ALPHA: return 2;
+ default: return 1;
+ }
+}
+
+int paramsize(GLenum pname)
+{
+ switch(pname)
+ {
+ // Texture
+ case GL_TEXTURE_WRAP_S: return 1;
+ case GL_TEXTURE_WRAP_T: return 1;
+ case GL_TEXTURE_MIN_FILTER: return 1;
+ case GL_TEXTURE_MAG_FILTER: return 1;
+ default: return 1;
+ }
+}
+
+int buffersize(GLenum buffer)
+{
+ return 1;
+}