diff options
author | Miguel Costa <miguel.costa@qt.io> | 2018-06-26 16:56:45 +0200 |
---|---|---|
committer | Andre de la Rocha <andre.rocha@qt.io> | 2018-10-13 21:36:35 +0000 |
commit | 0a7aebadfbb3534284546aa3ca8612314c08f136 (patch) | |
tree | e94ee33ae3bb9b96fc3047c6455d47ac4920bfbf /src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp | |
parent | 656e89f875ad2008ca16cc673b687a22daa294c9 (diff) |
Update ANGLE to chromium/3280
Change-Id: I0802c0d7486f772d361f87a544d6c5af937f4ca1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp')
-rw-r--r-- | src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp b/src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp new file mode 100644 index 0000000000..149f79f458 --- /dev/null +++ b/src/3rdparty/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp @@ -0,0 +1,171 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by gen_copy_conversion_table.py using data from es3_copy_conversion_formats.json. +// +// Copyright 2017 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// format_map: +// Determining the sized internal format from a (format,type) pair. +// Also check es3 format combinations for validity. + +#include "angle_gl.h" +#include "common/debug.h" + +namespace gl +{ + +bool ValidES3CopyConversion(GLenum textureFormat, GLenum framebufferFormat) +{ + switch (textureFormat) + { + case GL_ALPHA: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_BGRA_EXT: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + return true; + default: + break; + } + break; + + case GL_LUMINANCE: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RED: + case GL_RG: + case GL_RGB: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_LUMINANCE_ALPHA: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_RED: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RED: + case GL_RG: + case GL_RGB: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_RED_INTEGER: + switch (framebufferFormat) + { + case GL_RED_INTEGER: + case GL_RGBA_INTEGER: + case GL_RGB_INTEGER: + case GL_RG_INTEGER: + return true; + default: + break; + } + break; + + case GL_RG: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RG: + case GL_RGB: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_RGB: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RGB: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_RGBA: + switch (framebufferFormat) + { + case GL_BGRA_EXT: + case GL_RGBA: + return true; + default: + break; + } + break; + + case GL_RGBA_INTEGER: + switch (framebufferFormat) + { + case GL_RGBA_INTEGER: + return true; + default: + break; + } + break; + + case GL_RGB_INTEGER: + switch (framebufferFormat) + { + case GL_RGBA_INTEGER: + case GL_RGB_INTEGER: + return true; + default: + break; + } + break; + + case GL_RG_INTEGER: + switch (framebufferFormat) + { + case GL_RGBA_INTEGER: + case GL_RGB_INTEGER: + case GL_RG_INTEGER: + return true; + default: + break; + } + break; + + default: + break; + } + + return false; +} + +} // namespace gl |