diff options
author | Chris Forbes <[email protected]> | 2013-02-16 22:02:00 +1300 |
---|---|---|
committer | Chris Forbes <[email protected]> | 2013-03-31 22:19:28 +1300 |
commit | 719974b54c292a507b5600bcfe1f259c2938e963 (patch) | |
tree | 160f62e38af6f388d9203cc618f7b25a55e58fcf | |
parent | 788b0f85357e10c883cb65d0544a039412366129 (diff) |
glapi: add definition of ARB_texture_storage_multisample
Adds XML for the extension, dispatch_sanity enabling, and the two new
entrypoints. These are both implemented by calling the shared
teximagemultisample() with immutable=GL_TRUE.
Signed-off-by: Chris Forbes <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
-rw-r--r-- | src/mapi/glapi/gen/ARB_texture_storage_multisample.xml | 31 | ||||
-rw-r--r-- | src/mapi/glapi/gen/gl_API.xml | 4 | ||||
-rw-r--r-- | src/mesa/main/tests/dispatch_sanity.cpp | 4 | ||||
-rw-r--r-- | src/mesa/main/teximage.c | 20 | ||||
-rw-r--r-- | src/mesa/main/teximage.h | 11 |
5 files changed, 68 insertions, 2 deletions
diff --git a/src/mapi/glapi/gen/ARB_texture_storage_multisample.xml b/src/mapi/glapi/gen/ARB_texture_storage_multisample.xml new file mode 100644 index 00000000000..ebd896526f9 --- /dev/null +++ b/src/mapi/glapi/gen/ARB_texture_storage_multisample.xml @@ -0,0 +1,31 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + +<OpenGLAPI> + +<category name="GL_ARB_texture_storage_multisample" number="141"> + + <function name="TexStorage2DMultisample" offset="assign"> + <param name="target" type="GLenum"/> + <param name="samples" type="GLsizei"/> + <param name="internalformat" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="fixedsamplelocations" type="GLboolean"/> + </function> + + <function name="TexStorage3DMultisample" offset="assign"> + <param name="target" type="GLenum"/> + <param name="samples" type="GLsizei"/> + <param name="internalformat" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="depth" type="GLsizei"/> + <param name="fixedsamplelocations" type="GLboolean"/> + </function> + +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index 75957dc7dbd..df9592477c2 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -8321,6 +8321,10 @@ <xi:include href="ARB_texture_buffer_range.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<!-- 140. GL_ARB_texture_query_levels --> + +<xi:include href="ARB_texture_storage_multisample.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + <!-- Non-ARB extensions sorted by extension number. --> <category name="GL_EXT_blend_color" number="2"> diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index 3431dedc105..ffd83fe54ed 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -895,8 +895,8 @@ const struct function gl_core_functions_possible[] = { // { "glShaderStorageBlockBinding", 43, -1 }, // XXX: Add to xml { "glTexBufferRange", 43, -1 }, // { "glTextureBufferRangeEXT", 43, -1 }, // XXX: Add to xml -// { "glTexStorage2DMultisample", 43, -1 }, // XXX: Add to xml -// { "glTexStorage3DMultisample", 43, -1 }, // XXX: Add to xml + { "glTexStorage2DMultisample", 43, -1 }, + { "glTexStorage3DMultisample", 43, -1 }, // { "glTextureStorage2DMultisampleEXT", 43, -1 }, // XXX: Add to xml // { "glTextureStorage3DMultisampleEXT", 43, -1 }, // XXX: Add to xml diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index d7de69b9e99..68e42a71f66 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -4346,3 +4346,23 @@ _mesa_TexImage3DMultisample(GLenum target, GLsizei samples, teximagemultisample(3, target, samples, internalformat, width, height, depth, fixedsamplelocations, GL_FALSE); } + + +void GLAPIENTRY +_mesa_TexStorage2DMultisample(GLenum target, GLsizei samples, + GLint internalformat, GLsizei width, + GLsizei height, GLboolean fixedsamplelocations) +{ + teximagemultisample(2, target, samples, internalformat, + width, height, 1, fixedsamplelocations, GL_TRUE); +} + +void GLAPIENTRY +_mesa_TexStorage3DMultisample(GLenum target, GLsizei samples, + GLint internalformat, GLsizei width, + GLsizei height, GLsizei depth, + GLboolean fixedsamplelocations) +{ + teximagemultisample(3, target, samples, internalformat, + width, height, depth, fixedsamplelocations, GL_TRUE); +} diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h index 744c47a8af6..cedd9338355 100644 --- a/src/mesa/main/teximage.h +++ b/src/mesa/main/teximage.h @@ -305,6 +305,17 @@ _mesa_TexImage3DMultisample(GLenum target, GLsizei samples, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); +extern void GLAPIENTRY +_mesa_TexStorage2DMultisample(GLenum target, GLsizei samples, + GLint internalformat, GLsizei width, + GLsizei height, GLboolean fixedsamplelocations); + +extern void GLAPIENTRY +_mesa_TexStorage3DMultisample(GLenum target, GLsizei samples, + GLint internalformat, GLsizei width, + GLsizei height, GLsizei depth, + GLboolean fixedsamplelocations); + /*@}*/ #ifdef __cplusplus |