summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/build_gles2_cmd_buffer.py
diff options
context:
space:
mode:
authorgman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 02:41:58 +0000
committergman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 02:41:58 +0000
commit7488d96ce5234f2e7435017c99a90d54aad7f99d (patch)
tree53588f3ad6c1154ae59f66e675ac2a9d9de91151 /gpu/command_buffer/build_gles2_cmd_buffer.py
parent9ecd399719439f11461912ee56a9d51763239a26 (diff)
downloadchromium_src-7488d96ce5234f2e7435017c99a90d54aad7f99d.zip
chromium_src-7488d96ce5234f2e7435017c99a90d54aad7f99d.tar.gz
chromium_src-7488d96ce5234f2e7435017c99a90d54aad7f99d.tar.bz2
Adds support for OpenGL ES 2.0 extensions
this one specifically adds support for GL_EXT_texture_compression_dxt1 and GL_OES_texture_npot and GL_EXT_texture_format_BGRA8888 TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/2827051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52598 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/build_gles2_cmd_buffer.py')
-rwxr-xr-xgpu/command_buffer/build_gles2_cmd_buffer.py40
1 files changed, 28 insertions, 12 deletions
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py
index 4eee3aa..ef4a004 100755
--- a/gpu/command_buffer/build_gles2_cmd_buffer.py
+++ b/gpu/command_buffer/build_gles2_cmd_buffer.py
@@ -138,7 +138,7 @@ GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenumFaceType face, GLuint mask);
GL_APICALL void GL_APIENTRY glStencilOp (GLenumStencilOp fail, GLenumStencilOp zfail, GLenumStencilOp zpass);
GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenumFaceType face, GLenumStencilOp fail, GLenumStencilOp zfail, GLenumStencilOp zpass);
-GL_APICALL void GL_APIENTRY glTexImage2D (GLenumTextureTarget target, GLint level, GLintTextureFormat internalformat, GLsizei width, GLsizei height, GLintTextureBorder border, GLenumTextureFormat format, GLenumPixelType type, const void* pixels);
+GL_APICALL void GL_APIENTRY glTexImage2D (GLenumTextureTarget target, GLint level, GLintTextureInternalFormat internalformat, GLsizei width, GLsizei height, GLintTextureBorder border, GLenumTextureFormat format, GLenumPixelType type, const void* pixels);
GL_APICALL void GL_APIENTRY glTexParameterf (GLenumTextureBindTarget target, GLenumTextureParameter pname, GLfloat param);
GL_APICALL void GL_APIENTRY glTexParameterfv (GLenumTextureBindTarget target, GLenumTextureParameter pname, const GLfloat* params);
GL_APICALL void GL_APIENTRY glTexParameteri (GLenumTextureBindTarget target, GLenumTextureParameter pname, GLint param);
@@ -429,10 +429,7 @@ _ENUM_LISTS = {
},
'CompressedTextureFormat': {
'type': 'GLenum',
- # TODO(gman): Refactor validation code so these can be added at runtime
'valid': [
- 'GL_COMPRESSED_RGB_S3TC_DXT1_EXT',
- 'GL_COMPRESSED_RGBA_S3TC_DXT1_EXT',
],
},
'GLState': {
@@ -915,6 +912,20 @@ _ENUM_LISTS = {
'GL_BGR',
],
},
+ 'TextureInternalFormat': {
+ 'type': 'GLenum',
+ 'valid': [
+ 'GL_ALPHA',
+ 'GL_LUMINANCE',
+ 'GL_LUMINANCE_ALPHA',
+ 'GL_RGB',
+ 'GL_RGBA',
+ ],
+ 'invalid': [
+ 'GL_BGRA',
+ 'GL_BGR',
+ ],
+ },
'VertexAttribType': {
'type': 'GLenum',
'valid': [
@@ -4991,12 +5002,13 @@ class GLGenerator(object):
file = CHeaderWriter(filename)
enums = sorted(_ENUM_LISTS.keys())
for enum in enums:
- file.Write("static %s valid_%s_table[] = {\n" %
- (_ENUM_LISTS[enum]['type'], ToUnderscore(enum)))
- for value in _ENUM_LISTS[enum]['valid']:
- file.Write(" %s,\n" % value)
- file.Write("};\n")
- file.Write("\n")
+ if len(_ENUM_LISTS[enum]['valid']) > 0:
+ file.Write("static %s valid_%s_table[] = {\n" %
+ (_ENUM_LISTS[enum]['type'], ToUnderscore(enum)))
+ for value in _ENUM_LISTS[enum]['valid']:
+ file.Write(" %s,\n" % value)
+ file.Write("};\n")
+ file.Write("\n")
file.Write("Validators::Validators()\n")
pre = ': '
post = ','
@@ -5005,8 +5017,12 @@ class GLGenerator(object):
count += 1
if count == len(enums):
post = ' {'
- code = """ %(pre)s%(name)s(
- valid_%(name)s_table, arraysize(valid_%(name)s_table))%(post)s
+ if len(_ENUM_LISTS[enum]['valid']) > 0:
+ code = """ %(pre)s%(name)s(
+ valid_%(name)s_table, arraysize(valid_%(name)s_table))%(post)s
+"""
+ else:
+ code = """ %(pre)s%(name)s()%(post)s
"""
file.Write(code % {
'name': ToUnderscore(enum),