]> git.tdb.fi Git - gldbg.git/blob - flavors/gles2/source/arraysize.c
076347f1ec9b433ab50ba553a78bd8cf5c76edde
[gldbg.git] / flavors / gles2 / source / arraysize.c
1 /* $Id$
2
3 This file is part of gldbg
4 Copyright © 2010  Mikko Rasa, Mikkosoft Productions
5 Distributed under the GPL
6 */
7
8 #include "arraysize.h"
9
10 int typesize(GLenum type)
11 {
12         switch(type)
13         {
14         case GL_BYTE: return sizeof(GLbyte);
15         case GL_SHORT: return sizeof(GLshort);
16         case GL_INT: return sizeof(GLint);
17         case GL_UNSIGNED_BYTE: return sizeof(GLubyte);
18         case GL_UNSIGNED_SHORT: return sizeof(GLushort);
19         case GL_UNSIGNED_INT: return sizeof(GLuint);
20         case GL_FLOAT: return sizeof(GLfloat);
21         // Short and byte packed types are broken
22         default: return 1;
23         }
24 }
25
26 int formatsize(GLenum format)
27 {
28         switch(format)
29         {
30         case GL_STENCIL_INDEX: return 1;
31         case GL_DEPTH_COMPONENT: return 1;
32         case GL_ALPHA: return 1;
33         case GL_RGB: return 3;
34         case GL_RGBA: return 4;
35         case GL_LUMINANCE: return 1;
36         case GL_LUMINANCE_ALPHA: return 2;
37         default: return 1;
38         }
39 }
40
41 int paramsize(GLenum pname)
42 {
43         switch(pname)
44         {
45         // Texture
46         case GL_TEXTURE_WRAP_S: return 1;
47         case GL_TEXTURE_WRAP_T: return 1;
48         case GL_TEXTURE_MIN_FILTER: return 1;
49         case GL_TEXTURE_MAG_FILTER: return 1;
50         default: return 1;
51         }
52 }
53
54 int buffersize(GLenum buffer)
55 {
56         return 1;
57 }