Split Caps into Caps, Extensions and TextureFormatCaps.
Context now holds it's own Caps, Extensions and TextureFormat caps so that it
can modify them based on client version or work-arounds.
BUG=angle:658
Change-Id: Id71b6c89b7aa36e1f3dc42b0e4720eaed1851fb9
Reviewed-on: https://chromium-review.googlesource.com/206480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libGLESv2/validationES.cpp b/src/libGLESv2/validationES.cpp
index cc6f91c..2324a4b 100644
--- a/src/libGLESv2/validationES.cpp
+++ b/src/libGLESv2/validationES.cpp
@@ -112,7 +112,7 @@
case GL_PIXEL_PACK_BUFFER:
case GL_PIXEL_UNPACK_BUFFER:
- return context->getCaps().extensions.pixelBufferObject;
+ return context->getExtensions().pixelBufferObject;
case GL_COPY_READ_BUFFER:
case GL_COPY_WRITE_BUFFER:
@@ -175,7 +175,7 @@
return false;
}
- if (!context->getCaps().extensions.textureNPOT &&
+ if (!context->getExtensions().textureNPOT &&
(level != 0 && (!gl::isPow2(width) || !gl::isPow2(height) || !gl::isPow2(depth))))
{
return false;
@@ -297,8 +297,7 @@
return gl::error(GL_INVALID_VALUE, false);
}
- const gl::Caps &caps = context->getCaps();
- if (!gl::IsValidInternalFormat(internalformat, caps.extensions, context->getClientVersion()))
+ if (!gl::IsValidInternalFormat(internalformat, context->getExtensions(), context->getClientVersion()))
{
return gl::error(GL_INVALID_ENUM, false);
}
@@ -318,7 +317,7 @@
return gl::error(GL_INVALID_OPERATION, false);
}
- const TextureCaps &formatCaps = caps.textureCaps.get(internalformat);
+ const TextureCaps &formatCaps = context->getTextureCaps().get(internalformat);
if (!formatCaps.colorRendering && !formatCaps.depthRendering && !formatCaps.stencilRendering)
{
return gl::error(GL_INVALID_ENUM, false);
@@ -741,7 +740,7 @@
break;
case GL_TEXTURE_MAX_ANISOTROPY_EXT:
- if (!context->getCaps().extensions.textureFilterAnisotropic)
+ if (!context->getExtensions().textureFilterAnisotropic)
{
return gl::error(GL_INVALID_ENUM, false);
}
@@ -1286,7 +1285,7 @@
return gl::error(GL_INVALID_VALUE, false);
}
- if (!IsValidInternalFormat(internalformat, context->getCaps().extensions, context->getClientVersion()))
+ if (!IsValidInternalFormat(internalformat, context->getExtensions(), context->getClientVersion()))
{
return gl::error(GL_INVALID_ENUM, false);
}
@@ -1400,7 +1399,7 @@
case GL_UNSIGNED_SHORT:
break;
case GL_UNSIGNED_INT:
- if (!context->getCaps().extensions.elementIndexUint)
+ if (!context->getExtensions().elementIndexUint)
{
return gl::error(GL_INVALID_ENUM, false);
}