mesa: Add API definitions for ARB_texture_view
Stub in glTextureView API call to go with the glTextureView API xml definition. Includes dispatch test for glTextureView Signed-off-by: Courtney Goeltzenleuchter <courtney@LunarG.com> Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:

committed by
Brian Paul

parent
7a73c6acb0
commit
d77d2af20a
23
src/mapi/glapi/gen/ARB_texture_view.xml
Normal file
23
src/mapi/glapi/gen/ARB_texture_view.xml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
|
||||||
|
|
||||||
|
<!-- Note: no GLX protocol info yet. -->
|
||||||
|
|
||||||
|
<OpenGLAPI>
|
||||||
|
|
||||||
|
<category name="GL_ARB_texture_view" number="124">
|
||||||
|
|
||||||
|
<function name="TextureView" offset="assign">
|
||||||
|
<param name="texture" type="GLuint"/>
|
||||||
|
<param name="target" type="GLenum"/>
|
||||||
|
<param name="origtexture" type="GLuint"/>
|
||||||
|
<param name="internalformat" type="GLenum"/>
|
||||||
|
<param name="minlevel" type="GLuint"/>
|
||||||
|
<param name="numlevels" type="GLuint"/>
|
||||||
|
<param name="minlayer" type="GLuint"/>
|
||||||
|
<param name="numlayers" type="GLuint"/>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
</category>
|
||||||
|
|
||||||
|
</OpenGLAPI>
|
@@ -125,6 +125,7 @@ API_XML = \
|
|||||||
ARB_texture_rg.xml \
|
ARB_texture_rg.xml \
|
||||||
ARB_texture_storage_multisample.xml \
|
ARB_texture_storage_multisample.xml \
|
||||||
ARB_texture_storage.xml \
|
ARB_texture_storage.xml \
|
||||||
|
ARB_texture_view.xml \
|
||||||
ARB_vertex_array_object.xml \
|
ARB_vertex_array_object.xml \
|
||||||
ARB_vertex_attrib_binding.xml \
|
ARB_vertex_attrib_binding.xml \
|
||||||
AMD_draw_buffers_blend.xml \
|
AMD_draw_buffers_blend.xml \
|
||||||
|
@@ -8460,8 +8460,10 @@
|
|||||||
|
|
||||||
</category>
|
</category>
|
||||||
|
|
||||||
<!-- ARB extensions #120...#124 -->
|
|
||||||
|
|
||||||
|
<!-- ARB extensions #120...#123 -->
|
||||||
|
|
||||||
|
<xi:include href="ARB_texture_view.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
<xi:include href="ARB_vertex_attrib_binding.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
<xi:include href="ARB_vertex_attrib_binding.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
|
||||||
<!-- ARB extension #126 -->
|
<!-- ARB extension #126 -->
|
||||||
|
@@ -102,6 +102,7 @@ header = """/**
|
|||||||
#include "main/texstate.h"
|
#include "main/texstate.h"
|
||||||
#include "main/texstorage.h"
|
#include "main/texstorage.h"
|
||||||
#include "main/texturebarrier.h"
|
#include "main/texturebarrier.h"
|
||||||
|
#include "main/textureview.h"
|
||||||
#include "main/transformfeedback.h"
|
#include "main/transformfeedback.h"
|
||||||
#include "main/mtypes.h"
|
#include "main/mtypes.h"
|
||||||
#include "main/varray.h"
|
#include "main/varray.h"
|
||||||
|
@@ -103,6 +103,7 @@ MAIN_FILES = \
|
|||||||
$(SRCDIR)main/texstate.c \
|
$(SRCDIR)main/texstate.c \
|
||||||
$(SRCDIR)main/texstorage.c \
|
$(SRCDIR)main/texstorage.c \
|
||||||
$(SRCDIR)main/texstore.c \
|
$(SRCDIR)main/texstore.c \
|
||||||
|
$(SRCDIR)main/textureview.c \
|
||||||
$(SRCDIR)main/texturebarrier.c \
|
$(SRCDIR)main/texturebarrier.c \
|
||||||
$(SRCDIR)main/transformfeedback.c \
|
$(SRCDIR)main/transformfeedback.c \
|
||||||
$(SRCDIR)main/uniforms.c \
|
$(SRCDIR)main/uniforms.c \
|
||||||
|
@@ -133,6 +133,7 @@ main_sources = [
|
|||||||
'main/texstorage.c',
|
'main/texstorage.c',
|
||||||
'main/texstore.c',
|
'main/texstore.c',
|
||||||
'main/texturebarrier.c',
|
'main/texturebarrier.c',
|
||||||
|
'main/textureview.c',
|
||||||
'main/transformfeedback.c',
|
'main/transformfeedback.c',
|
||||||
'main/uniform_query.cpp',
|
'main/uniform_query.cpp',
|
||||||
'main/uniforms.c',
|
'main/uniforms.c',
|
||||||
|
@@ -853,7 +853,7 @@ const struct function gl_core_functions_possible[] = {
|
|||||||
// { "glDispatchCompute", 43, -1 }, // XXX: Add to xml
|
// { "glDispatchCompute", 43, -1 }, // XXX: Add to xml
|
||||||
// { "glDispatchComputeIndirect", 43, -1 }, // XXX: Add to xml
|
// { "glDispatchComputeIndirect", 43, -1 }, // XXX: Add to xml
|
||||||
// { "glCopyImageSubData", 43, -1 }, // XXX: Add to xml
|
// { "glCopyImageSubData", 43, -1 }, // XXX: Add to xml
|
||||||
// { "glTextureView", 43, -1 }, // XXX: Add to xml
|
{ "glTextureView", 43, -1 },
|
||||||
{ "glBindVertexBuffer", 43, -1 },
|
{ "glBindVertexBuffer", 43, -1 },
|
||||||
{ "glVertexAttribFormat", 43, -1 },
|
{ "glVertexAttribFormat", 43, -1 },
|
||||||
{ "glVertexAttribIFormat", 43, -1 },
|
{ "glVertexAttribIFormat", 43, -1 },
|
||||||
|
65
src/mesa/main/textureview.c
Normal file
65
src/mesa/main/textureview.c
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
/*
|
||||||
|
* Mesa 3-D graphics library
|
||||||
|
*
|
||||||
|
* Copyright (C) 2013 LunarG, Inc.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
|
* to deal in the Software without restriction, including without limitation
|
||||||
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
* DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Authors:
|
||||||
|
* Courtney Goeltzenleuchter <courtney@lunarg.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \file textureview.c
|
||||||
|
* GL_ARB_texture_view functions
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "glheader.h"
|
||||||
|
#include "context.h"
|
||||||
|
#include "enums.h"
|
||||||
|
#include "imports.h"
|
||||||
|
#include "macros.h"
|
||||||
|
#include "teximage.h"
|
||||||
|
#include "texobj.h"
|
||||||
|
#include "texstorage.h"
|
||||||
|
#include "textureview.h"
|
||||||
|
#include "mtypes.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* glTextureView (ARB_texture_view)
|
||||||
|
* If an error is found, record it with _mesa_error()
|
||||||
|
* \return none.
|
||||||
|
*/
|
||||||
|
void GLAPIENTRY
|
||||||
|
_mesa_TextureView(GLuint texture, GLenum target, GLuint origtexture,
|
||||||
|
GLenum internalformat,
|
||||||
|
GLuint minlevel, GLuint numlevels,
|
||||||
|
GLuint minlayer, GLuint numlayers)
|
||||||
|
{
|
||||||
|
GET_CURRENT_CONTEXT(ctx);
|
||||||
|
|
||||||
|
if (MESA_VERBOSE & (VERBOSE_API | VERBOSE_TEXTURE))
|
||||||
|
_mesa_debug(ctx, "glTextureView (unfinished) %d %s %d %s %d %d %d %d\n",
|
||||||
|
texture, _mesa_lookup_enum_by_nr(target), origtexture,
|
||||||
|
_mesa_lookup_enum_by_nr(internalformat),
|
||||||
|
minlevel, numlevels, minlayer, numlayers);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
39
src/mesa/main/textureview.h
Normal file
39
src/mesa/main/textureview.h
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
* Mesa 3-D graphics library
|
||||||
|
*
|
||||||
|
* Copyright (C) 2012-2013 LunarG, Inc.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
|
* to deal in the Software without restriction, including without limitation
|
||||||
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
* DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Authors:
|
||||||
|
* Courtney Goeltzenleuchter <courtney@lunarg.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef TEXTUREVIEW_H
|
||||||
|
#define TEXTUREVIEW_H
|
||||||
|
|
||||||
|
|
||||||
|
extern void GLAPIENTRY
|
||||||
|
_mesa_TextureView(GLuint texture, GLenum target, GLuint origtexture,
|
||||||
|
GLenum internalformat,
|
||||||
|
GLuint minlevel, GLuint numlevels,
|
||||||
|
GLuint minlayer, GLuint numlayers);
|
||||||
|
|
||||||
|
#endif /* TEXTUREVIEW_H */
|
Reference in New Issue
Block a user