mesa/main: Extend _mesa_base_format_has_channel to accept new pnames
The new pnames accepted by the function are: - INTERNALFORMAT_RED_SIZE - INTERNALFORMAT_GREEN_SIZE - INTERNALFORMAT_BLUE_SIZE - INTERNALFORMAT_ALPHA_SIZE - INTERNALFORMAT_DEPTH_SIZE - INTERNALFORMAT_STENCIL_SIZE - INTERNALFORMAT_RED_TYPE - INTERNALFORMAT_GREEN_TYPE - INTERNALFORMAT_BLUE_TYPE - INTERNALFORMAT_ALPHA_TYPE - INTERNALFORMAT_DEPTH_TYPE - INTERNALFORMAT_STENCIL_TYPE It will be used by the ARB_internalformat_query2 implementation to implement those pnames. Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:

committed by
Eduardo Lima Mitev

parent
f1c789fa00
commit
4a8dae6247
@@ -1430,6 +1430,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
case GL_TEXTURE_RED_TYPE:
|
case GL_TEXTURE_RED_TYPE:
|
||||||
case GL_RENDERBUFFER_RED_SIZE_EXT:
|
case GL_RENDERBUFFER_RED_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_RED_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_RED_TYPE:
|
||||||
if (base_format == GL_RED ||
|
if (base_format == GL_RED ||
|
||||||
base_format == GL_RG ||
|
base_format == GL_RG ||
|
||||||
base_format == GL_RGB ||
|
base_format == GL_RGB ||
|
||||||
@@ -1441,6 +1443,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
case GL_TEXTURE_GREEN_TYPE:
|
case GL_TEXTURE_GREEN_TYPE:
|
||||||
case GL_RENDERBUFFER_GREEN_SIZE_EXT:
|
case GL_RENDERBUFFER_GREEN_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_GREEN_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_GREEN_TYPE:
|
||||||
if (base_format == GL_RG ||
|
if (base_format == GL_RG ||
|
||||||
base_format == GL_RGB ||
|
base_format == GL_RGB ||
|
||||||
base_format == GL_RGBA) {
|
base_format == GL_RGBA) {
|
||||||
@@ -1451,6 +1455,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
case GL_TEXTURE_BLUE_TYPE:
|
case GL_TEXTURE_BLUE_TYPE:
|
||||||
case GL_RENDERBUFFER_BLUE_SIZE_EXT:
|
case GL_RENDERBUFFER_BLUE_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_BLUE_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_BLUE_TYPE:
|
||||||
if (base_format == GL_RGB ||
|
if (base_format == GL_RGB ||
|
||||||
base_format == GL_RGBA) {
|
base_format == GL_RGBA) {
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
@@ -1460,6 +1466,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
case GL_TEXTURE_ALPHA_TYPE:
|
case GL_TEXTURE_ALPHA_TYPE:
|
||||||
case GL_RENDERBUFFER_ALPHA_SIZE_EXT:
|
case GL_RENDERBUFFER_ALPHA_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_ALPHA_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_ALPHA_TYPE:
|
||||||
if (base_format == GL_RGBA ||
|
if (base_format == GL_RGBA ||
|
||||||
base_format == GL_ALPHA ||
|
base_format == GL_ALPHA ||
|
||||||
base_format == GL_LUMINANCE_ALPHA) {
|
base_format == GL_LUMINANCE_ALPHA) {
|
||||||
@@ -1483,6 +1491,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
case GL_TEXTURE_DEPTH_TYPE:
|
case GL_TEXTURE_DEPTH_TYPE:
|
||||||
case GL_RENDERBUFFER_DEPTH_SIZE_EXT:
|
case GL_RENDERBUFFER_DEPTH_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_DEPTH_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_DEPTH_TYPE:
|
||||||
if (base_format == GL_DEPTH_STENCIL ||
|
if (base_format == GL_DEPTH_STENCIL ||
|
||||||
base_format == GL_DEPTH_COMPONENT) {
|
base_format == GL_DEPTH_COMPONENT) {
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
@@ -1490,6 +1500,8 @@ _mesa_base_format_has_channel(GLenum base_format, GLenum pname)
|
|||||||
return GL_FALSE;
|
return GL_FALSE;
|
||||||
case GL_RENDERBUFFER_STENCIL_SIZE_EXT:
|
case GL_RENDERBUFFER_STENCIL_SIZE_EXT:
|
||||||
case GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:
|
case GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_STENCIL_SIZE:
|
||||||
|
case GL_INTERNALFORMAT_STENCIL_TYPE:
|
||||||
if (base_format == GL_DEPTH_STENCIL ||
|
if (base_format == GL_DEPTH_STENCIL ||
|
||||||
base_format == GL_STENCIL_INDEX) {
|
base_format == GL_STENCIL_INDEX) {
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
|
Reference in New Issue
Block a user